New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 2715 for trunk/NEMOGCM/EXTERNAL/AGRIF/LIB/fortran.c – NEMO

Ignore:
Timestamp:
2011-03-30T17:58:35+02:00 (13 years ago)
Author:
rblod
Message:

First attempt to put dynamic allocation on the trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/EXTERNAL/AGRIF/LIB/fortran.c

    r2528 r2715  
    1 #ifndef lint 
    2 static char yysccsid[] = "@(#)yaccpar  1.9 (Berkeley) 02/21/93"; 
    3 #endif 
    4 #define YYBYACC 1 
    5 #define YYMAJOR 1 
    6 #define YYMINOR 9 
    7 #define yyclearin (yychar=(-1)) 
    8 #define yyerrok (yyerrflag=0) 
    9 #define YYRECOVERING (yyerrflag!=0) 
     1/* A Bison parser, made by GNU Bison 2.3.  */ 
     2 
     3/* Skeleton implementation for Bison's Yacc-like parsers in C 
     4 
     5   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 
     6   Free Software Foundation, Inc. 
     7 
     8   This program is free software; you can redistribute it and/or modify 
     9   it under the terms of the GNU General Public License as published by 
     10   the Free Software Foundation; either version 2, or (at your option) 
     11   any later version. 
     12 
     13   This program is distributed in the hope that it will be useful, 
     14   but WITHOUT ANY WARRANTY; without even the implied warranty of 
     15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
     16   GNU General Public License for more details. 
     17 
     18   You should have received a copy of the GNU General Public License 
     19   along with this program; if not, write to the Free Software 
     20   Foundation, Inc., 51 Franklin Street, Fifth Floor, 
     21   Boston, MA 02110-1301, USA.  */ 
     22 
     23/* As a special exception, you may create a larger work that contains 
     24   part or all of the Bison parser skeleton and distribute that work 
     25   under terms of your choice, so long as that work isn't itself a 
     26   parser generator using the skeleton or a modified version thereof 
     27   as a parser skeleton.  Alternatively, if you modify or redistribute 
     28   the parser skeleton itself, you may (at your option) remove this 
     29   special exception, which will cause the skeleton and the resulting 
     30   Bison output files to be licensed under the GNU General Public 
     31   License without this special exception. 
     32 
     33   This special exception was added by the Free Software Foundation in 
     34   version 2.2 of Bison.  */ 
     35 
     36/* C LALR(1) parser skeleton written by Richard Stallman, by 
     37   simplifying the original so-called "semantic" parser.  */ 
     38 
     39/* All symbols defined below should begin with yy or YY, to avoid 
     40   infringing on user name space.  This should be done even for local 
     41   variables, as they might otherwise be expanded by user macros. 
     42   There are some unavoidable exceptions within include files to 
     43   define necessary library symbols; they are noted "INFRINGES ON 
     44   USER NAME SPACE" below.  */ 
     45 
     46/* Identify Bison output.  */ 
     47#define YYBISON 1 
     48 
     49/* Bison version.  */ 
     50#define YYBISON_VERSION "2.3" 
     51 
     52/* Skeleton name.  */ 
     53#define YYSKELETON_NAME "yacc.c" 
     54 
     55/* Pure parsers.  */ 
     56#define YYPURE 0 
     57 
     58/* Using locations.  */ 
     59#define YYLSP_NEEDED 0 
     60 
     61/* Substitute the variable and function names.  */ 
    1062#define yyparse fortranparse 
    1163#define yylex fortranlex 
    1264#define yyerror fortranerror 
    13 #define yychar fortranchar 
    14 #define yyval fortranval 
    1565#define yylval fortranlval 
     66#define yychar  fortranchar 
    1667#define yydebug fortrandebug 
    1768#define yynerrs fortrannerrs 
    18 #define yyerrflag fortranerrflag 
    19 #define yyss fortranss 
    20 #define yyssp fortranssp 
    21 #define yyvs fortranvs 
    22 #define yyvsp fortranvsp 
    23 #define yylhs fortranlhs 
    24 #define yylen fortranlen 
    25 #define yydefred fortrandefred 
    26 #define yydgoto fortrandgoto 
    27 #define yysindex fortransindex 
    28 #define yyrindex fortranrindex 
    29 #define yygindex fortrangindex 
    30 #define yytable fortrantable 
    31 #define yycheck fortrancheck 
    32 #define yyname fortranname 
    33 #define yyrule fortranrule 
    34 #define YYPREFIX "fortran" 
     69 
     70 
     71/* Tokens.  */ 
     72#ifndef YYTOKENTYPE 
     73# define YYTOKENTYPE 
     74   /* Put the tokens into the symbol table, so that GDB and other debuggers 
     75      know about them.  */ 
     76   enum yytokentype { 
     77     TOK_BINARY_OP = 258, 
     78     TOK_NEQV = 259, 
     79     TOK_EQV = 260, 
     80     TOK_XOR = 261, 
     81     TOK_OR = 262, 
     82     TOK_AND = 263, 
     83     TOK_NOT = 264, 
     84     TOK_NE = 265, 
     85     TOK_EQ = 266, 
     86     TOK_GE = 267, 
     87     TOK_LE = 268, 
     88     TOK_GT = 269, 
     89     TOK_LT = 270, 
     90     TOK_UNARY_OP = 271, 
     91     TOK_DSLASH = 272, 
     92     TOK_SLASH = 273, 
     93     TOK_DASTER = 274, 
     94     TOK_SEP = 275, 
     95     TOK_SEMICOLON = 276, 
     96     TOK_NEXTLINE = 277, 
     97     TOK_PARAMETER = 278, 
     98     TOK_RESULT = 279, 
     99     TOK_ONLY = 280, 
     100     TOK_INCLUDE = 281, 
     101     TOK_SUBROUTINE = 282, 
     102     TOK_PROGRAM = 283, 
     103     TOK_FUNCTION = 284, 
     104     TOK_OMP = 285, 
     105     TOK_DOLLAR = 286, 
     106     TOK_FORMAT = 287, 
     107     TOK_MAX = 288, 
     108     TOK_TANH = 289, 
     109     TOK_WHERE = 290, 
     110     TOK_ELSEWHERE = 291, 
     111     TOK_ENDWHERE = 292, 
     112     TOK_MAXVAL = 293, 
     113     TOK_TRIM = 294, 
     114     TOK_SUM = 295, 
     115     TOK_SQRT = 296, 
     116     TOK_CASE = 297, 
     117     TOK_SELECTCASE = 298, 
     118     TOK_FILE = 299, 
     119     TOK_END = 300, 
     120     TOK_ERR = 301, 
     121     TOK_DONOTTREAT = 302, 
     122     TOK_ENDDONOTTREAT = 303, 
     123     TOK_EXIST = 304, 
     124     TOK_MIN = 305, 
     125     TOK_FLOAT = 306, 
     126     TOK_EXP = 307, 
     127     TOK_COS = 308, 
     128     TOK_COSH = 309, 
     129     TOK_ACOS = 310, 
     130     TOK_NINT = 311, 
     131     TOK_CYCLE = 312, 
     132     TOK_SIN = 313, 
     133     TOK_SINH = 314, 
     134     TOK_ASIN = 315, 
     135     TOK_EQUIVALENCE = 316, 
     136     TOK_BACKSPACE = 317, 
     137     TOK_LOG = 318, 
     138     TOK_TAN = 319, 
     139     TOK_ATAN = 320, 
     140     TOK_RECURSIVE = 321, 
     141     TOK_ABS = 322, 
     142     TOK_MOD = 323, 
     143     TOK_SIGN = 324, 
     144     TOK_MINLOC = 325, 
     145     TOK_MAXLOC = 326, 
     146     TOK_EXIT = 327, 
     147     TOK_MINVAL = 328, 
     148     TOK_PUBLIC = 329, 
     149     TOK_PRIVATE = 330, 
     150     TOK_ALLOCATABLE = 331, 
     151     TOK_RETURN = 332, 
     152     TOK_THEN = 333, 
     153     TOK_ELSEIF = 334, 
     154     TOK_ELSE = 335, 
     155     TOK_ENDIF = 336, 
     156     TOK_PRINT = 337, 
     157     TOK_PLAINGOTO = 338, 
     158     TOK_CONSTRUCTID = 339, 
     159     TOK_LOGICALIF = 340, 
     160     TOK_PLAINDO = 341, 
     161     TOK_CONTAINS = 342, 
     162     TOK_ENDDO = 343, 
     163     TOK_MODULE = 344, 
     164     TOK_ENDMODULE = 345, 
     165     TOK_DOWHILE = 346, 
     166     TOK_ALLOCATE = 347, 
     167     TOK_OPEN = 348, 
     168     TOK_CLOSE = 349, 
     169     TOK_INQUIRE = 350, 
     170     TOK_WRITE = 351, 
     171     TOK_READ = 352, 
     172     TOK_REWIND = 353, 
     173     TOK_DEALLOCATE = 354, 
     174     TOK_NULLIFY = 355, 
     175     TOK_FIN = 356, 
     176     TOK_DEBUT = 357, 
     177     TOK_DIMENSION = 358, 
     178     TOK_ENDSELECT = 359, 
     179     TOK_EXTERNAL = 360, 
     180     TOK_INTENT = 361, 
     181     TOK_INTRINSIC = 362, 
     182     TOK_NAMELIST = 363, 
     183     TOK_CASEDEFAULT = 364, 
     184     TOK_OPTIONAL = 365, 
     185     TOK_POINTER = 366, 
     186     TOK_CONTINUE = 367, 
     187     TOK_SAVE = 368, 
     188     TOK_TARGET = 369, 
     189     TOK_QUOTE = 370, 
     190     TOK_IMPLICIT = 371, 
     191     TOK_NONE = 372, 
     192     TOK_CALL = 373, 
     193     TOK_STAT = 374, 
     194     TOK_POINT_TO = 375, 
     195     TOK_COMMON = 376, 
     196     TOK_GLOBAL = 377, 
     197     TOK_INTERFACE = 378, 
     198     TOK_ENDINTERFACE = 379, 
     199     TOK_LEFTAB = 380, 
     200     TOK_RIGHTAB = 381, 
     201     TOK_PAUSE = 382, 
     202     TOK_PROCEDURE = 383, 
     203     TOK_STOP = 384, 
     204     TOK_NAMEEQ = 385, 
     205     TOK_REAL8 = 386, 
     206     TOK_OUT = 387, 
     207     TOK_INOUT = 388, 
     208     TOK_IN = 389, 
     209     TOK_USE = 390, 
     210     TOK_TRUE = 391, 
     211     TOK_FALSE = 392, 
     212     TOK_LABEL = 393, 
     213     TOK_TYPE = 394, 
     214     TOK_TYPEPAR = 395, 
     215     TOK_ENDTYPE = 396, 
     216     TOK_REAL = 397, 
     217     TOK_INTEGER = 398, 
     218     TOK_LOGICAL = 399, 
     219     TOK_DOUBLEPRECISION = 400, 
     220     TOK_DOUBLEREAL = 401, 
     221     TOK_ENDSUBROUTINE = 402, 
     222     TOK_ENDFUNCTION = 403, 
     223     TOK_ENDPROGRAM = 404, 
     224     TOK_ENDUNIT = 405, 
     225     TOK_CHARACTER = 406, 
     226     TOK_CHAR_CONSTANT = 407, 
     227     TOK_CHAR_CUT = 408, 
     228     TOK_DATA = 409, 
     229     TOK_CHAR_INT = 410, 
     230     TOK_CHAR_MESSAGE = 411, 
     231     TOK_CSTREAL = 412, 
     232     TOK_CSTREALDP = 413, 
     233     TOK_CSTREALQP = 414, 
     234     TOK_SFREAL = 415, 
     235     TOK_COMPLEX = 416, 
     236     TOK_DOUBLECOMPLEX = 417, 
     237     TOK_NAME = 418, 
     238     TOK_NAME_CHAR = 419, 
     239     TOK_PROBTYPE = 420, 
     240     TOK_INTERPTYPE = 421, 
     241     TOK_VARTYPE = 422, 
     242     TOK_BC = 423, 
     243     TOK_OP = 424, 
     244     TOK_CSTINT = 425, 
     245     TOK_COMMENT = 426, 
     246     TOK_FILENAME = 427 
     247   }; 
     248#endif 
     249/* Tokens.  */ 
     250#define TOK_BINARY_OP 258 
     251#define TOK_NEQV 259 
     252#define TOK_EQV 260 
     253#define TOK_XOR 261 
     254#define TOK_OR 262 
     255#define TOK_AND 263 
     256#define TOK_NOT 264 
     257#define TOK_NE 265 
     258#define TOK_EQ 266 
     259#define TOK_GE 267 
     260#define TOK_LE 268 
     261#define TOK_GT 269 
     262#define TOK_LT 270 
     263#define TOK_UNARY_OP 271 
     264#define TOK_DSLASH 272 
     265#define TOK_SLASH 273 
     266#define TOK_DASTER 274 
     267#define TOK_SEP 275 
     268#define TOK_SEMICOLON 276 
     269#define TOK_NEXTLINE 277 
     270#define TOK_PARAMETER 278 
     271#define TOK_RESULT 279 
     272#define TOK_ONLY 280 
     273#define TOK_INCLUDE 281 
     274#define TOK_SUBROUTINE 282 
     275#define TOK_PROGRAM 283 
     276#define TOK_FUNCTION 284 
     277#define TOK_OMP 285 
     278#define TOK_DOLLAR 286 
     279#define TOK_FORMAT 287 
     280#define TOK_MAX 288 
     281#define TOK_TANH 289 
     282#define TOK_WHERE 290 
     283#define TOK_ELSEWHERE 291 
     284#define TOK_ENDWHERE 292 
     285#define TOK_MAXVAL 293 
     286#define TOK_TRIM 294 
     287#define TOK_SUM 295 
     288#define TOK_SQRT 296 
     289#define TOK_CASE 297 
     290#define TOK_SELECTCASE 298 
     291#define TOK_FILE 299 
     292#define TOK_END 300 
     293#define TOK_ERR 301 
     294#define TOK_DONOTTREAT 302 
     295#define TOK_ENDDONOTTREAT 303 
     296#define TOK_EXIST 304 
     297#define TOK_MIN 305 
     298#define TOK_FLOAT 306 
     299#define TOK_EXP 307 
     300#define TOK_COS 308 
     301#define TOK_COSH 309 
     302#define TOK_ACOS 310 
     303#define TOK_NINT 311 
     304#define TOK_CYCLE 312 
     305#define TOK_SIN 313 
     306#define TOK_SINH 314 
     307#define TOK_ASIN 315 
     308#define TOK_EQUIVALENCE 316 
     309#define TOK_BACKSPACE 317 
     310#define TOK_LOG 318 
     311#define TOK_TAN 319 
     312#define TOK_ATAN 320 
     313#define TOK_RECURSIVE 321 
     314#define TOK_ABS 322 
     315#define TOK_MOD 323 
     316#define TOK_SIGN 324 
     317#define TOK_MINLOC 325 
     318#define TOK_MAXLOC 326 
     319#define TOK_EXIT 327 
     320#define TOK_MINVAL 328 
     321#define TOK_PUBLIC 329 
     322#define TOK_PRIVATE 330 
     323#define TOK_ALLOCATABLE 331 
     324#define TOK_RETURN 332 
     325#define TOK_THEN 333 
     326#define TOK_ELSEIF 334 
     327#define TOK_ELSE 335 
     328#define TOK_ENDIF 336 
     329#define TOK_PRINT 337 
     330#define TOK_PLAINGOTO 338 
     331#define TOK_CONSTRUCTID 339 
     332#define TOK_LOGICALIF 340 
     333#define TOK_PLAINDO 341 
     334#define TOK_CONTAINS 342 
     335#define TOK_ENDDO 343 
     336#define TOK_MODULE 344 
     337#define TOK_ENDMODULE 345 
     338#define TOK_DOWHILE 346 
     339#define TOK_ALLOCATE 347 
     340#define TOK_OPEN 348 
     341#define TOK_CLOSE 349 
     342#define TOK_INQUIRE 350 
     343#define TOK_WRITE 351 
     344#define TOK_READ 352 
     345#define TOK_REWIND 353 
     346#define TOK_DEALLOCATE 354 
     347#define TOK_NULLIFY 355 
     348#define TOK_FIN 356 
     349#define TOK_DEBUT 357 
     350#define TOK_DIMENSION 358 
     351#define TOK_ENDSELECT 359 
     352#define TOK_EXTERNAL 360 
     353#define TOK_INTENT 361 
     354#define TOK_INTRINSIC 362 
     355#define TOK_NAMELIST 363 
     356#define TOK_CASEDEFAULT 364 
     357#define TOK_OPTIONAL 365 
     358#define TOK_POINTER 366 
     359#define TOK_CONTINUE 367 
     360#define TOK_SAVE 368 
     361#define TOK_TARGET 369 
     362#define TOK_QUOTE 370 
     363#define TOK_IMPLICIT 371 
     364#define TOK_NONE 372 
     365#define TOK_CALL 373 
     366#define TOK_STAT 374 
     367#define TOK_POINT_TO 375 
     368#define TOK_COMMON 376 
     369#define TOK_GLOBAL 377 
     370#define TOK_INTERFACE 378 
     371#define TOK_ENDINTERFACE 379 
     372#define TOK_LEFTAB 380 
     373#define TOK_RIGHTAB 381 
     374#define TOK_PAUSE 382 
     375#define TOK_PROCEDURE 383 
     376#define TOK_STOP 384 
     377#define TOK_NAMEEQ 385 
     378#define TOK_REAL8 386 
     379#define TOK_OUT 387 
     380#define TOK_INOUT 388 
     381#define TOK_IN 389 
     382#define TOK_USE 390 
     383#define TOK_TRUE 391 
     384#define TOK_FALSE 392 
     385#define TOK_LABEL 393 
     386#define TOK_TYPE 394 
     387#define TOK_TYPEPAR 395 
     388#define TOK_ENDTYPE 396 
     389#define TOK_REAL 397 
     390#define TOK_INTEGER 398 
     391#define TOK_LOGICAL 399 
     392#define TOK_DOUBLEPRECISION 400 
     393#define TOK_DOUBLEREAL 401 
     394#define TOK_ENDSUBROUTINE 402 
     395#define TOK_ENDFUNCTION 403 
     396#define TOK_ENDPROGRAM 404 
     397#define TOK_ENDUNIT 405 
     398#define TOK_CHARACTER 406 
     399#define TOK_CHAR_CONSTANT 407 
     400#define TOK_CHAR_CUT 408 
     401#define TOK_DATA 409 
     402#define TOK_CHAR_INT 410 
     403#define TOK_CHAR_MESSAGE 411 
     404#define TOK_CSTREAL 412 
     405#define TOK_CSTREALDP 413 
     406#define TOK_CSTREALQP 414 
     407#define TOK_SFREAL 415 
     408#define TOK_COMPLEX 416 
     409#define TOK_DOUBLECOMPLEX 417 
     410#define TOK_NAME 418 
     411#define TOK_NAME_CHAR 419 
     412#define TOK_PROBTYPE 420 
     413#define TOK_INTERPTYPE 421 
     414#define TOK_VARTYPE 422 
     415#define TOK_BC 423 
     416#define TOK_OP 424 
     417#define TOK_CSTINT 425 
     418#define TOK_COMMENT 426 
     419#define TOK_FILENAME 427 
     420 
     421 
     422 
     423 
     424/* Copy the first part of user declarations.  */ 
    35425#line 36 "fortran.y" 
     426 
     427#define YYMAXDEPTH 1000 
    36428#include <stdlib.h> 
    37429#include <stdio.h> 
     
    53445int removeline=0; 
    54446listvar *test; 
    55 #line 57 "fortran.y" 
    56 typedef union { 
     447 
     448 
     449/* Enabling traces.  */ 
     450#ifndef YYDEBUG 
     451# define YYDEBUG 1 
     452#endif 
     453 
     454/* Enabling verbose error messages.  */ 
     455#ifdef YYERROR_VERBOSE 
     456# undef YYERROR_VERBOSE 
     457# define YYERROR_VERBOSE 1 
     458#else 
     459# define YYERROR_VERBOSE 0 
     460#endif 
     461 
     462/* Enabling the token table.  */ 
     463#ifndef YYTOKEN_TABLE 
     464# define YYTOKEN_TABLE 0 
     465#endif 
     466 
     467#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 
     468typedef union YYSTYPE 
     469#line 59 "fortran.y" 
     470{ 
    57471       char      nac[LONG_C]; 
    58472       char      na[LONGNOM]; 
     
    64478       typedim   dim1; 
    65479       variable *v; 
    66        } YYSTYPE; 
    67 #line 68 "y.tab.c" 
    68 #define TOK_BINARY_OP 257 
    69 #define TOK_EQV 258 
    70 #define TOK_NEQV 259 
    71 #define TOK_OR 260 
    72 #define TOK_XOR 261 
    73 #define TOK_AND 262 
    74 #define TOK_NOT 263 
    75 #define TOK_LT 264 
    76 #define TOK_GT 265 
    77 #define TOK_LE 266 
    78 #define TOK_GE 267 
    79 #define TOK_EQ 268 
    80 #define TOK_NE 269 
    81 #define TOK_UNARY_OP 270 
    82 #define TOK_DSLASH 271 
    83 #define TOK_SLASH 272 
    84 #define TOK_DASTER 273 
    85 #define TOK_SEP 274 
    86 #define TOK_SEMICOLON 275 
    87 #define TOK_NEXTLINE 276 
    88 #define TOK_PARAMETER 277 
    89 #define TOK_RESULT 278 
    90 #define TOK_ONLY 279 
    91 #define TOK_INCLUDE 280 
    92 #define TOK_SUBROUTINE 281 
    93 #define TOK_PROGRAM 282 
    94 #define TOK_FUNCTION 283 
    95 #define TOK_OMP 284 
    96 #define TOK_DOLLAR 285 
    97 #define TOK_FORMAT 286 
    98 #define TOK_MAX 287 
    99 #define TOK_TANH 288 
    100 #define TOK_WHERE 289 
    101 #define TOK_ELSEWHERE 290 
    102 #define TOK_ENDWHERE 291 
    103 #define TOK_MAXVAL 292 
    104 #define TOK_TRIM 293 
    105 #define TOK_SUM 294 
    106 #define TOK_SQRT 295 
    107 #define TOK_CASE 296 
    108 #define TOK_SELECTCASE 297 
    109 #define TOK_FILE 298 
    110 #define TOK_END 299 
    111 #define TOK_ERR 300 
    112 #define TOK_DONOTTREAT 301 
    113 #define TOK_ENDDONOTTREAT 302 
    114 #define TOK_EXIST 303 
    115 #define TOK_MIN 304 
    116 #define TOK_FLOAT 305 
    117 #define TOK_EXP 306 
    118 #define TOK_COS 307 
    119 #define TOK_COSH 308 
    120 #define TOK_ACOS 309 
    121 #define TOK_NINT 310 
    122 #define TOK_CYCLE 311 
    123 #define TOK_SIN 312 
    124 #define TOK_SINH 313 
    125 #define TOK_ASIN 314 
    126 #define TOK_EQUIVALENCE 315 
    127 #define TOK_BACKSPACE 316 
    128 #define TOK_LOG 317 
    129 #define TOK_TAN 318 
    130 #define TOK_ATAN 319 
    131 #define TOK_RECURSIVE 320 
    132 #define TOK_ABS 321 
    133 #define TOK_MOD 322 
    134 #define TOK_SIGN 323 
    135 #define TOK_MINLOC 324 
    136 #define TOK_MAXLOC 325 
    137 #define TOK_EXIT 326 
    138 #define TOK_MINVAL 327 
    139 #define TOK_PUBLIC 328 
    140 #define TOK_PRIVATE 329 
    141 #define TOK_ALLOCATABLE 330 
    142 #define TOK_RETURN 331 
    143 #define TOK_THEN 332 
    144 #define TOK_ELSEIF 333 
    145 #define TOK_ELSE 334 
    146 #define TOK_ENDIF 335 
    147 #define TOK_PRINT 336 
    148 #define TOK_PLAINGOTO 337 
    149 #define TOK_CONSTRUCTID 338 
    150 #define TOK_LOGICALIF 339 
    151 #define TOK_PLAINDO 340 
    152 #define TOK_CONTAINS 341 
    153 #define TOK_ENDDO 342 
    154 #define TOK_MODULE 343 
    155 #define TOK_ENDMODULE 344 
    156 #define TOK_DOWHILE 345 
    157 #define TOK_ALLOCATE 346 
    158 #define TOK_OPEN 347 
    159 #define TOK_CLOSE 348 
    160 #define TOK_INQUIRE 349 
    161 #define TOK_WRITE 350 
    162 #define TOK_READ 351 
    163 #define TOK_REWIND 352 
    164 #define TOK_DEALLOCATE 353 
    165 #define TOK_NULLIFY 354 
    166 #define TOK_FIN 355 
    167 #define TOK_DEBUT 356 
    168 #define TOK_DIMENSION 357 
    169 #define TOK_ENDSELECT 358 
    170 #define TOK_EXTERNAL 359 
    171 #define TOK_INTENT 360 
    172 #define TOK_INTRINSIC 361 
    173 #define TOK_NAMELIST 362 
    174 #define TOK_CASEDEFAULT 363 
    175 #define TOK_OPTIONAL 364 
    176 #define TOK_POINTER 365 
    177 #define TOK_CONTINUE 366 
    178 #define TOK_SAVE 367 
    179 #define TOK_TARGET 368 
    180 #define TOK_QUOTE 369 
    181 #define TOK_IMPLICIT 370 
    182 #define TOK_NONE 371 
    183 #define TOK_CALL 372 
    184 #define TOK_STAT 373 
    185 #define TOK_POINT_TO 374 
    186 #define TOK_COMMON 375 
    187 #define TOK_GLOBAL 376 
    188 #define TOK_INTERFACE 377 
    189 #define TOK_ENDINTERFACE 378 
    190 #define TOK_LEFTAB 379 
    191 #define TOK_RIGHTAB 380 
    192 #define TOK_PAUSE 381 
    193 #define TOK_PROCEDURE 382 
    194 #define TOK_STOP 383 
    195 #define TOK_NAMEEQ 384 
    196 #define TOK_REAL8 385 
    197 #define TOK_OUT 386 
    198 #define TOK_INOUT 387 
    199 #define TOK_IN 388 
    200 #define TOK_USE 389 
    201 #define TOK_TRUE 390 
    202 #define TOK_FALSE 391 
    203 #define TOK_LABEL 392 
    204 #define TOK_TYPE 393 
    205 #define TOK_TYPEPAR 394 
    206 #define TOK_ENDTYPE 395 
    207 #define TOK_REAL 396 
    208 #define TOK_INTEGER 397 
    209 #define TOK_LOGICAL 398 
    210 #define TOK_DOUBLEPRECISION 399 
    211 #define TOK_DOUBLEREAL 400 
    212 #define TOK_ENDSUBROUTINE 401 
    213 #define TOK_ENDFUNCTION 402 
    214 #define TOK_ENDPROGRAM 403 
    215 #define TOK_ENDUNIT 404 
    216 #define TOK_CHARACTER 405 
    217 #define TOK_CHAR_CONSTANT 406 
    218 #define TOK_CHAR_CUT 407 
    219 #define TOK_DATA 408 
    220 #define TOK_CHAR_INT 409 
    221 #define TOK_CHAR_MESSAGE 410 
    222 #define TOK_CSTREAL 411 
    223 #define TOK_CSTREALDP 412 
    224 #define TOK_CSTREALQP 413 
    225 #define TOK_SFREAL 414 
    226 #define TOK_COMPLEX 415 
    227 #define TOK_DOUBLECOMPLEX 416 
    228 #define TOK_NAME 417 
    229 #define TOK_NAME_CHAR 418 
    230 #define TOK_PROBTYPE 419 
    231 #define TOK_INTERPTYPE 420 
    232 #define TOK_VARTYPE 421 
    233 #define TOK_BC 422 
    234 #define TOK_OP 423 
    235 #define TOK_CSTINT 424 
    236 #define TOK_COMMENT 425 
    237 #define TOK_FILENAME 426 
    238 #define YYERRCODE 256 
    239 short fortranlhs[] = {                                        -1, 
    240     0,    0,   68,   68,   68,   68,   68,   71,   71,   76, 
    241    76,   76,   76,   76,   82,   78,   72,   72,   72,   72, 
    242    69,   70,   70,   73,   73,   83,   75,   84,   84,   77, 
    243    77,   77,   77,   77,   77,   16,   74,   80,   33,    6, 
    244     6,    6,   85,   85,   85,    5,    5,   38,   38,   79, 
    245    79,   79,   79,   79,   79,   79,   79,   79,   79,   79, 
    246    79,   79,   79,   79,   79,   79,   79,   79,   79,   79, 
    247    86,   86,  103,  103,  103,  103,  103,  103,  103,  103, 
    248   103,  103,  103,  103,  103,  103,  103,  103,  103,  103, 
    249   103,  103,  103,  103,  103,  103,   98,   98,   88,   88, 
    250    99,   99,  105,  106,  106,  104,  104,   87,   87,    2, 
    251     2,  108,   89,  100,  101,  101,  101,   58,   58,   91, 
    252    91,   91,   91,  111,  112,  112,  110,  110,  110,   47, 
    253    47,   47,   47,   47,   32,   32,   97,  113,  113,  113, 
    254   113,  114,   96,   96,  115,    3,    3,   93,   93,   67, 
    255    67,   66,   66,   90,   90,   90,  117,  117,  118,  118, 
    256   119,   15,   15,  109,  109,    4,    4,   14,   95,  120, 
    257   120,   92,   92,  121,    1,    1,  107,   19,   19,   19, 
    258    19,  127,  126,  126,  126,  126,  128,  128,  128,  125, 
    259    25,   24,   24,   24,   24,   24,   24,  116,  116,   65, 
    260    65,  124,  124,  124,  130,  130,   34,   34,   34,   34, 
    261    37,   37,  129,  129,  122,  122,  122,  131,  131,  132, 
    262   132,  132,  132,  132,  132,  132,  132,  132,  132,  132, 
    263    30,   30,   30,  102,  102,   11,   11,   12,   12,   13, 
    264    13,   13,   13,   13,   63,   63,   62,   62,   62,   62, 
    265    61,   61,   61,   61,   61,   61,   61,   61,   61,   61, 
    266    61,   61,   61,   61,   61,   61,   61,   61,   61,   61, 
    267    61,   61,   61,   61,   61,   61,   40,   40,   39,   39, 
    268    39,   39,   39,   39,   31,   31,   64,   64,   64,   64, 
    269    64,   64,   64,   64,   64,   64,   64,   64,   64,   64, 
    270    64,   64,   64,   64,   64,   64,   64,   59,   59,   59, 
    271    59,   60,   60,   41,   41,   41,  133,   49,   49,   49, 
    272    49,   36,   48,   42,   50,   50,   52,   52,   51,   51, 
    273    53,   53,   53,   53,   53,   53,   53,   28,   27,   27, 
    274    27,   27,   27,   27,   27,   27,   26,   26,   26,   26, 
    275    55,   55,   54,   57,   57,   56,   56,  123,  123,  134, 
    276    35,   94,   94,   94,   94,  135,   17,    9,    9,   10, 
    277     7,    7,    8,    8,   81,   81,   81,   81,   81,   81, 
    278    81,   81,   81,   81,   81,   81,   81,   81,   81,   81, 
    279    81,   81,   81,   81,   81,   81,   81,   20,   23,   22, 
    280    21,  143,  143,  143,  141,  141,  141,  146,  146,  146, 
    281   145,  145,   18,   18,  148,  148,  144,  147,  149,  149, 
    282   136,  136,  136,  136,  136,  136,  136,  136,  136,  136, 
    283   136,  136,  157,  150,  150,  156,  156,  151,  151,  154, 
    284   159,  159,  160,  160,  158,  162,  161,  161,  163,  163, 
    285   155,  155,  153,  153,  153,  153,  153,  153,  171,  171, 
    286   172,  172,  172,  173,  173,  174,  174,  168,  168,  178, 
    287   178,  177,  177,  166,  166,  170,  170,  170,  170,  170, 
    288   179,  179,  181,  181,  181,  181,  181,  181,  181,  181, 
    289   165,  165,  176,  176,  167,  167,  167,  169,  180,  180, 
    290   182,  182,  182,  182,  182,  182,  182,  182,  182,  182, 
    291   182,  182,  182,  183,  183,  175,  175,  185,  185,  184, 
    292   184,  184,  184,  184,  186,  186,  186,   43,   43,   43, 
    293    44,   44,   44,   44,   44,   44,   44,   44,   45,   45, 
    294    45,   45,   45,   46,   46,  187,  187,  164,  152,  152, 
    295   137,  137,  137,  188,  188,  188,  189,  190,  190,  139, 
    296   139,  138,  138,  140,  140,  191,  191,  192,  192,  142, 
    297    29, 
     480       } 
     481/* Line 193 of yacc.c.  */ 
     482#line 483 "fortran.tab.c" 
     483   YYSTYPE; 
     484# define yystype YYSTYPE /* obsolescent; will be withdrawn */ 
     485# define YYSTYPE_IS_DECLARED 1 
     486# define YYSTYPE_IS_TRIVIAL 1 
     487#endif 
     488 
     489 
     490 
     491/* Copy the second part of user declarations.  */ 
     492 
     493 
     494/* Line 216 of yacc.c.  */ 
     495#line 496 "fortran.tab.c" 
     496 
     497#ifdef short 
     498# undef short 
     499#endif 
     500 
     501#ifdef YYTYPE_UINT8 
     502typedef YYTYPE_UINT8 yytype_uint8; 
     503#else 
     504typedef unsigned char yytype_uint8; 
     505#endif 
     506 
     507#ifdef YYTYPE_INT8 
     508typedef YYTYPE_INT8 yytype_int8; 
     509#elif (defined __STDC__ || defined __C99__FUNC__ \ 
     510     || defined __cplusplus || defined _MSC_VER) 
     511typedef signed char yytype_int8; 
     512#else 
     513typedef short int yytype_int8; 
     514#endif 
     515 
     516#ifdef YYTYPE_UINT16 
     517typedef YYTYPE_UINT16 yytype_uint16; 
     518#else 
     519typedef unsigned short int yytype_uint16; 
     520#endif 
     521 
     522#ifdef YYTYPE_INT16 
     523typedef YYTYPE_INT16 yytype_int16; 
     524#else 
     525typedef short int yytype_int16; 
     526#endif 
     527 
     528#ifndef YYSIZE_T 
     529# ifdef __SIZE_TYPE__ 
     530#  define YYSIZE_T __SIZE_TYPE__ 
     531# elif defined size_t 
     532#  define YYSIZE_T size_t 
     533# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ 
     534     || defined __cplusplus || defined _MSC_VER) 
     535#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */ 
     536#  define YYSIZE_T size_t 
     537# else 
     538#  define YYSIZE_T unsigned int 
     539# endif 
     540#endif 
     541 
     542#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 
     543 
     544#ifndef YY_ 
     545# if defined YYENABLE_NLS && YYENABLE_NLS 
     546#  if ENABLE_NLS 
     547#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */ 
     548#   define YY_(msgid) dgettext ("bison-runtime", msgid) 
     549#  endif 
     550# endif 
     551# ifndef YY_ 
     552#  define YY_(msgid) msgid 
     553# endif 
     554#endif 
     555 
     556/* Suppress unused-variable warnings by "using" E.  */ 
     557#if ! defined lint || defined __GNUC__ 
     558# define YYUSE(e) ((void) (e)) 
     559#else 
     560# define YYUSE(e) /* empty */ 
     561#endif 
     562 
     563/* Identity function, used to suppress warnings about constant conditions.  */ 
     564#ifndef lint 
     565# define YYID(n) (n) 
     566#else 
     567#if (defined __STDC__ || defined __C99__FUNC__ \ 
     568     || defined __cplusplus || defined _MSC_VER) 
     569static int 
     570YYID (int i) 
     571#else 
     572static int 
     573YYID (i) 
     574    int i; 
     575#endif 
     576{ 
     577  return i; 
     578} 
     579#endif 
     580 
     581#if ! defined yyoverflow || YYERROR_VERBOSE 
     582 
     583/* The parser invokes alloca or malloc; define the necessary symbols.  */ 
     584 
     585# ifdef YYSTACK_USE_ALLOCA 
     586#  if YYSTACK_USE_ALLOCA 
     587#   ifdef __GNUC__ 
     588#    define YYSTACK_ALLOC __builtin_alloca 
     589#   elif defined __BUILTIN_VA_ARG_INCR 
     590#    include <alloca.h> /* INFRINGES ON USER NAME SPACE */ 
     591#   elif defined _AIX 
     592#    define YYSTACK_ALLOC __alloca 
     593#   elif defined _MSC_VER 
     594#    include <malloc.h> /* INFRINGES ON USER NAME SPACE */ 
     595#    define alloca _alloca 
     596#   else 
     597#    define YYSTACK_ALLOC alloca 
     598#    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 
     599     || defined __cplusplus || defined _MSC_VER) 
     600#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 
     601#     ifndef _STDLIB_H 
     602#      define _STDLIB_H 1 
     603#     endif 
     604#    endif 
     605#   endif 
     606#  endif 
     607# endif 
     608 
     609# ifdef YYSTACK_ALLOC 
     610   /* Pacify GCC's `empty if-body' warning.  */ 
     611#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) 
     612#  ifndef YYSTACK_ALLOC_MAXIMUM 
     613    /* The OS might guarantee only one guard page at the bottom of the stack, 
     614       and a page size can be as small as 4096 bytes.  So we cannot safely 
     615       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number 
     616       to allow for a few compiler-allocated temporary stack slots.  */ 
     617#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ 
     618#  endif 
     619# else 
     620#  define YYSTACK_ALLOC YYMALLOC 
     621#  define YYSTACK_FREE YYFREE 
     622#  ifndef YYSTACK_ALLOC_MAXIMUM 
     623#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 
     624#  endif 
     625#  if (defined __cplusplus && ! defined _STDLIB_H \ 
     626       && ! ((defined YYMALLOC || defined malloc) \ 
     627        && (defined YYFREE || defined free))) 
     628#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 
     629#   ifndef _STDLIB_H 
     630#    define _STDLIB_H 1 
     631#   endif 
     632#  endif 
     633#  ifndef YYMALLOC 
     634#   define YYMALLOC malloc 
     635#   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 
     636     || defined __cplusplus || defined _MSC_VER) 
     637void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ 
     638#   endif 
     639#  endif 
     640#  ifndef YYFREE 
     641#   define YYFREE free 
     642#   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 
     643     || defined __cplusplus || defined _MSC_VER) 
     644void free (void *); /* INFRINGES ON USER NAME SPACE */ 
     645#   endif 
     646#  endif 
     647# endif 
     648#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ 
     649 
     650 
     651#if (! defined yyoverflow \ 
     652     && (! defined __cplusplus \ 
     653    || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 
     654 
     655/* A type that is properly aligned for any stack member.  */ 
     656union yyalloc 
     657{ 
     658  yytype_int16 yyss; 
     659  YYSTYPE yyvs; 
     660  }; 
     661 
     662/* The size of the maximum gap between one aligned stack and the next.  */ 
     663# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 
     664 
     665/* The size of an array large to enough to hold all stacks, each with 
     666   N elements.  */ 
     667# define YYSTACK_BYTES(N) \ 
     668     ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ 
     669      + YYSTACK_GAP_MAXIMUM) 
     670 
     671/* Copy COUNT objects from FROM to TO.  The source and destination do 
     672   not overlap.  */ 
     673# ifndef YYCOPY 
     674#  if defined __GNUC__ && 1 < __GNUC__ 
     675#   define YYCOPY(To, From, Count) \ 
     676      __builtin_memcpy (To, From, (Count) * sizeof (*(From))) 
     677#  else 
     678#   define YYCOPY(To, From, Count)     \ 
     679      do             \ 
     680   {              \ 
     681     YYSIZE_T yyi;            \ 
     682     for (yyi = 0; yyi < (Count); yyi++)  \ 
     683       (To)[yyi] = (From)[yyi];     \ 
     684   }              \ 
     685      while (YYID (0)) 
     686#  endif 
     687# endif 
     688 
     689/* Relocate STACK from its old location to the new one.  The 
     690   local variables YYSIZE and YYSTACKSIZE give the old and new number of 
     691   elements in the stack, and YYPTR gives the new location of the 
     692   stack.  Advance YYPTR to a properly aligned location for the next 
     693   stack.  */ 
     694# define YYSTACK_RELOCATE(Stack)             \ 
     695    do                           \ 
     696      {                          \ 
     697   YYSIZE_T yynewbytes;                \ 
     698   YYCOPY (&yyptr->Stack, Stack, yysize);          \ 
     699   Stack = &yyptr->Stack;                 \ 
     700   yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 
     701   yyptr += yynewbytes / sizeof (*yyptr);          \ 
     702      }                          \ 
     703    while (YYID (0)) 
     704 
     705#endif 
     706 
     707/* YYFINAL -- State number of the termination state.  */ 
     708#define YYFINAL  2 
     709/* YYLAST -- Last index in YYTABLE.  */ 
     710#define YYLAST   5878 
     711 
     712/* YYNTOKENS -- Number of terminals.  */ 
     713#define YYNTOKENS  190 
     714/* YYNNTS -- Number of nonterminals.  */ 
     715#define YYNNTS  184 
     716/* YYNRULES -- Number of rules.  */ 
     717#define YYNRULES  552 
     718/* YYNRULES -- Number of states.  */ 
     719#define YYNSTATES  978 
     720 
     721/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */ 
     722#define YYUNDEFTOK  2 
     723#define YYMAXUTOK   427 
     724 
     725#define YYTRANSLATE(YYX)                  \ 
     726  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 
     727 
     728/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */ 
     729static const yytype_uint8 yytranslate[] = 
     730{ 
     731       0,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     732     187,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     733       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     734       2,     2,     2,   183,     2,     2,     2,   189,     2,     2, 
     735     179,   180,    23,    21,     3,    22,     2,   188,     2,     2, 
     736       2,     2,     2,     2,     2,     2,     2,     2,     4,     2, 
     737     185,     5,   186,     2,     2,     2,     2,     2,     2,     2, 
     738       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     739       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     740       2,   181,     2,   182,     2,   184,     2,     2,     2,     2, 
     741       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     742       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     743       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     744       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     745       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     746       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     747       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     748       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     749       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     750       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     751       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     752       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     753       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     754       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     755       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
     756       2,     2,     2,     2,     2,     2,     1,     2,     6,     7, 
     757       8,     9,    10,    11,    12,    13,    14,    15,    16,    17, 
     758      18,    19,    20,    24,    25,    26,    27,    28,    29,    30, 
     759      31,    32,    33,    34,    35,    36,    37,    38,    39,    40, 
     760      41,    42,    43,    44,    45,    46,    47,    48,    49,    50, 
     761      51,    52,    53,    54,    55,    56,    57,    58,    59,    60, 
     762      61,    62,    63,    64,    65,    66,    67,    68,    69,    70, 
     763      71,    72,    73,    74,    75,    76,    77,    78,    79,    80, 
     764      81,    82,    83,    84,    85,    86,    87,    88,    89,    90, 
     765      91,    92,    93,    94,    95,    96,    97,    98,    99,   100, 
     766     101,   102,   103,   104,   105,   106,   107,   108,   109,   110, 
     767     111,   112,   113,   114,   115,   116,   117,   118,   119,   120, 
     768     121,   122,   123,   124,   125,   126,   127,   128,   129,   130, 
     769     131,   132,   133,   134,   135,   136,   137,   138,   139,   140, 
     770     141,   142,   143,   144,   145,   146,   147,   148,   149,   150, 
     771     151,   152,   153,   154,   155,   156,   157,   158,   159,   160, 
     772     161,   162,   163,   164,   165,   166,   167,   168,   169,   170, 
     773     171,   172,   173,   174,   175,   176,   177,   178 
    298774}; 
    299 short fortranlen[] = {                                         2, 
    300     0,    2,    2,    2,    1,    3,    3,    1,    3,    2, 
    301     2,    3,    3,    2,    2,    2,    1,    1,    1,    1, 
    302     0,    0,    2,    0,    1,    0,    0,    0,    1,    0, 
    303     4,    2,    5,    3,    2,    1,    0,    1,    1,    0, 
    304     2,    3,    0,    2,    3,    1,    3,    1,    1,    2, 
    305     4,    2,    2,    4,    2,    1,    1,    1,    1,    1, 
    306     1,    1,    1,    1,    1,    4,    3,    3,    2,    3, 
    307     0,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
     775 
     776#if YYDEBUG 
     777/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in 
     778   YYRHS.  */ 
     779static const yytype_uint16 yyprhs[] = 
     780{ 
     781       0,     0,     3,     4,     7,    10,    13,    15,    19,    23, 
     782      25,    29,    32,    35,    39,    43,    46,    49,    52,    54, 
     783      56,    58,    60,    61,    62,    65,    66,    68,    69,    70, 
     784      72,    73,    78,    81,    87,    91,    94,    96,    97,    99, 
     785     101,   102,   105,   109,   110,   113,   117,   119,   123,   125, 
     786     127,   130,   135,   138,   141,   146,   149,   151,   153,   155, 
     787     157,   159,   161,   163,   165,   167,   169,   174,   178,   182, 
     788     185,   189,   190,   192,   194,   196,   198,   200,   202,   204, 
     789     206,   208,   210,   212,   214,   216,   218,   220,   222,   224, 
     790     226,   228,   230,   232,   234,   236,   238,   240,   242,   246, 
     791     250,   256,   258,   262,   266,   269,   274,   276,   280,   281, 
     792     284,   287,   291,   293,   295,   297,   302,   309,   314,   316, 
     793     320,   323,   327,   333,   337,   339,   340,   343,   345,   350, 
     794     354,   357,   361,   365,   369,   373,   374,   376,   379,   382, 
     795     386,   392,   396,   397,   400,   403,   405,   411,   417,   420, 
     796     424,   427,   431,   433,   437,   440,   444,   450,   452,   455, 
     797     457,   461,   464,   466,   470,   471,   473,   475,   479,   483, 
     798     486,   488,   492,   495,   498,   499,   506,   514,   515,   518, 
     799     521,   525,   529,   531,   532,   535,   540,   544,   548,   553, 
     800     556,   558,   560,   562,   564,   566,   568,   570,   572,   573, 
     801     576,   578,   582,   583,   586,   590,   592,   596,   599,   603, 
     802     605,   607,   609,   611,   612,   616,   617,   620,   625,   627, 
     803     631,   633,   635,   637,   640,   642,   647,   649,   651,   653, 
     804     655,   657,   659,   661,   663,   665,   667,   668,   672,   674, 
     805     678,   680,   682,   685,   688,   692,   694,   696,   698,   702, 
     806     704,   706,   710,   714,   719,   724,   728,   733,   738,   742, 
     807     747,   752,   757,   762,   767,   772,   777,   782,   787,   792, 
     808     797,   802,   807,   811,   816,   821,   826,   831,   833,   837, 
     809     839,   841,   843,   846,   849,   852,   854,   856,   859,   862, 
     810     865,   868,   871,   874,   877,   880,   883,   886,   889,   893, 
     811     896,   900,   903,   906,   909,   912,   915,   918,   921,   922, 
     812     924,   927,   930,   933,   935,   937,   939,   941,   942,   944, 
     813     947,   952,   958,   963,   967,   971,   973,   976,   978,   982, 
     814     984,   986,   990,   996,  1001,  1005,  1008,  1011,  1013,  1015, 
     815    1017,  1019,  1021,  1023,  1025,  1027,  1030,  1033,  1035,  1038, 
     816    1040,  1042,  1043,  1045,  1051,  1052,  1054,  1056,  1058,  1059, 
     817    1063,  1064,  1070,  1073,  1078,  1085,  1092,  1094,  1096,  1098, 
     818    1102,  1106,  1108,  1112,  1116,  1118,  1120,  1126,  1132,  1137, 
     819    1139,  1142,  1145,  1148,  1151,  1153,  1156,  1162,  1164,  1166, 
     820    1169,  1175,  1177,  1180,  1184,  1189,  1191,  1193,  1195,  1197, 
     821    1199,  1201,  1203,  1205,  1209,  1213,  1217,  1220,  1223,  1224, 
     822    1230,  1238,  1239,  1242,  1244,  1246,  1247,  1249,  1251,  1253, 
     823    1255,  1258,  1260,  1262,  1264,  1270,  1276,  1279,  1282,  1285, 
     824    1288,  1290,  1291,  1296,  1303,  1305,  1309,  1312,  1315,  1318, 
     825    1319,  1323,  1324,  1326,  1329,  1331,  1333,  1337,  1339,  1342, 
     826    1344,  1346,  1349,  1352,  1355,  1359,  1362,  1364,  1365,  1367, 
     827    1370,  1373,  1374,  1377,  1381,  1385,  1389,  1393,  1395,  1399, 
     828    1401,  1403,  1407,  1409,  1411,  1413,  1416,  1421,  1426,  1429, 
     829    1432,  1434,  1436,  1438,  1440,  1442,  1444,  1446,  1448,  1450, 
     830    1454,  1456,  1458,  1462,  1466,  1470,  1474,  1477,  1481,  1484, 
     831    1487,  1490,  1493,  1497,  1499,  1501,  1503,  1507,  1508,  1510, 
     832    1513,  1518,  1521,  1524,  1530,  1531,  1533,  1536,  1538,  1540, 
     833    1542,  1546,  1550,  1554,  1558,  1562,  1566,  1568,  1570,  1572, 
     834    1576,  1582,  1588,  1594,  1600,  1608,  1610,  1619,  1622,  1624, 
     835    1626,  1630,  1632,  1634,  1636,  1641,  1643,  1647,  1648,  1653, 
     836    1655,  1659,  1663 
     837}; 
     838 
     839/* YYRHS -- A `-1'-separated list of the rules' RHS.  */ 
     840static const yytype_int16 yyrhs[] = 
     841{ 
     842     191,     0,    -1,    -1,   191,   192,    -1,   187,   198,    -1, 
     843     199,   193,    -1,   177,    -1,   197,   200,   205,    -1,     1, 
     844     205,   201,    -1,   194,    -1,   193,    27,   194,    -1,   203, 
     845     196,    -1,   212,   196,    -1,   206,   207,   196,    -1,   315, 
     846     200,   205,    -1,   195,   196,    -1,   298,     4,    -1,   198, 
     847     200,    -1,    53,    -1,    54,    -1,    36,    -1,    37,    -1, 
     848      -1,    -1,   144,   201,    -1,    -1,   177,    -1,    -1,    -1, 
     849      72,    -1,    -1,   202,    33,   204,   208,    -1,    34,   204, 
     850      -1,    35,   204,   208,    30,   209,    -1,    35,   204,   208, 
     851      -1,    95,   169,    -1,   169,    -1,    -1,    32,    -1,   158, 
     852      -1,    -1,   179,   180,    -1,   179,   210,   180,    -1,    -1, 
     853     179,   180,    -1,   179,   210,   180,    -1,   211,    -1,   210, 
     854       3,   211,    -1,   169,    -1,    23,    -1,   257,   222,    -1, 
     855     145,   213,   221,   324,    -1,   147,   324,    -1,   117,   216, 
     856      -1,   224,   179,   249,   180,    -1,   224,   249,    -1,   243, 
     857      -1,   228,    -1,   253,    -1,   239,    -1,   241,    -1,   240, 
     858      -1,   308,    -1,   251,    -1,   237,    -1,   234,    -1,    68, 
     859     179,   280,   180,    -1,   111,   221,   242,    -1,   113,   221, 
     860     215,    -1,    67,   217,    -1,   225,   226,   187,    -1,    -1, 
     861     275,    -1,    46,    -1,    40,    -1,    44,    -1,    56,    -1, 
     862      79,    -1,    45,    -1,    47,    -1,    62,    -1,    57,    -1, 
     863      58,    -1,    59,    -1,    60,    -1,    61,    -1,    64,    -1, 
     864      65,    -1,    66,    -1,    69,    -1,    70,    -1,    71,    -1, 
     865      74,    -1,    75,    -1,    76,    -1,    77,    -1,   169,    -1, 
     866     214,    -1,   215,     3,   214,    -1,   179,   220,   180,    -1, 
     867     216,     3,   179,   220,   180,    -1,   218,    -1,   217,     3, 
     868     218,    -1,   179,   219,   180,    -1,   298,   276,    -1,   219, 
     869       3,   298,   276,    -1,   280,    -1,   220,     3,   280,    -1, 
     870      -1,     4,     4,    -1,   255,   256,    -1,   223,   204,   208, 
     871      -1,    35,    -1,    29,    -1,   160,    -1,   169,    24,   227, 
     872      24,    -1,   226,   248,   169,    24,   227,    24,    -1,   231, 
     873      24,   227,    24,    -1,   232,    -1,   232,     3,   227,    -1, 
     874     229,   230,    -1,   229,   247,   230,    -1,   228,   248,   247, 
     875     248,   230,    -1,   228,     3,   230,    -1,   119,    -1,    -1, 
     876     169,   276,    -1,   169,    -1,   169,   179,   280,   180,    -1, 
     877     231,     3,   231,    -1,   233,   299,    -1,   232,    21,   232, 
     878      -1,   232,    22,   232,    -1,   232,    23,   232,    -1,   232, 
     879     188,   232,    -1,    -1,   284,    -1,   235,   236,    -1,   114, 
     880     298,    -1,   114,   247,   298,    -1,   235,   248,   247,   248, 
     881     298,    -1,   235,     3,   298,    -1,    -1,   129,   324,    -1, 
     882     130,   324,    -1,   109,    -1,   238,   248,   169,   276,   264, 
     883      -1,   239,     3,   169,   276,   264,    -1,    81,   187,    -1, 
     884      81,   221,   242,    -1,    80,   187,    -1,    80,   221,   242, 
     885      -1,   169,    -1,   242,     3,   169,    -1,   244,   245,    -1, 
     886     244,   247,   245,    -1,   243,   248,   247,   248,   245,    -1, 
     887     127,    -1,   128,   127,    -1,   246,    -1,   245,     3,   246, 
     888      -1,   169,   276,    -1,    20,    -1,    24,   169,    24,    -1, 
     889      -1,     3,    -1,   250,    -1,   249,     3,   250,    -1,   169, 
     890       5,   280,    -1,   134,   252,    -1,   169,    -1,   252,     3, 
     891     169,    -1,   122,   123,    -1,   122,   137,    -1,    -1,   271, 
     892     254,   169,   276,   264,   305,    -1,   255,     3,   254,   169, 
     893     276,   264,   305,    -1,    -1,   262,   266,    -1,   261,   259, 
     894      -1,   263,    23,   176,    -1,   258,   268,   180,    -1,   146, 
     895      -1,    -1,    23,   176,    -1,    23,   179,   260,   180,    -1, 
     896     179,   260,   180,    -1,   169,   269,   270,    -1,   169,     5, 
     897     269,   270,    -1,   269,   270,    -1,   157,    -1,   263,    -1, 
     898     149,    -1,   148,    -1,   167,    -1,   151,    -1,   168,    -1, 
     899     150,    -1,    -1,    23,   265,    -1,   280,    -1,   179,    23, 
     900     180,    -1,    -1,    23,   267,    -1,   179,   268,   180,    -1, 
     901     280,    -1,   179,    23,   180,    -1,   169,   269,    -1,   169, 
     902       5,   269,    -1,   169,    -1,   176,    -1,   280,    -1,    23, 
     903      -1,    -1,     3,   169,   269,    -1,    -1,     4,     4,    -1, 
     904       3,   272,     4,     4,    -1,   273,    -1,   272,     3,   273, 
     905      -1,    29,    -1,   275,    -1,    82,    -1,   109,   276,    -1, 
     906     111,    -1,   112,   179,   274,   180,    -1,   113,    -1,   116, 
     907      -1,   117,    -1,   119,    -1,   120,    -1,   140,    -1,   138, 
     908      -1,   139,    -1,    80,    -1,    81,    -1,    -1,   179,   277, 
     909     180,    -1,   278,    -1,   277,     3,   278,    -1,   279,    -1, 
     910       4,    -1,   280,     4,    -1,     4,   280,    -1,   280,     4, 
     911     279,    -1,    23,    -1,   280,    -1,   283,    -1,   179,   280, 
     912     180,    -1,   307,    -1,   281,    -1,    46,   282,   180,    -1, 
     913      39,   282,   180,    -1,    40,   179,   282,   180,    -1,    44, 
     914     179,   282,   180,    -1,    56,   282,   180,    -1,    79,   179, 
     915     282,   180,    -1,    45,   179,   280,   180,    -1,    47,   280, 
     916     180,    -1,   148,   179,   282,   180,    -1,    62,   179,   280, 
     917     180,    -1,    57,   179,   280,   180,    -1,    58,   179,   280, 
     918     180,    -1,    59,   179,   280,   180,    -1,    60,   179,   280, 
     919     180,    -1,    61,   179,   280,   180,    -1,    64,   179,   280, 
     920     180,    -1,    65,   179,   280,   180,    -1,    66,   179,   280, 
     921     180,    -1,    69,   179,   280,   180,    -1,    70,   179,   280, 
     922     180,    -1,    71,   179,   280,   180,    -1,    73,   280,   180, 
     923      -1,    74,   179,   282,   180,    -1,    75,   179,   282,   180, 
     924      -1,    76,   179,   282,   180,    -1,    77,   179,   282,   180, 
     925      -1,   280,    -1,   282,     3,   280,    -1,   288,    -1,   299, 
     926      -1,   293,    -1,   280,   285,    -1,   284,   280,    -1,    12, 
     927     280,    -1,    21,    -1,    22,    -1,    21,   280,    -1,    22, 
     928     280,    -1,    23,   280,    -1,    25,   280,    -1,    14,   280, 
     929      -1,     8,   280,    -1,    17,   280,    -1,   186,   280,    -1, 
     930      18,   280,    -1,   185,   280,    -1,    15,   280,    -1,   186, 
     931       5,   280,    -1,    16,   280,    -1,   185,     5,   280,    -1, 
     932      13,   280,    -1,     7,   280,    -1,     9,   280,    -1,    10, 
     933     280,    -1,    11,   280,    -1,    24,   286,    -1,     5,   287, 
     934      -1,    -1,   280,    -1,     5,   280,    -1,    24,   280,    -1, 
     935       5,   280,    -1,   280,    -1,   298,    -1,   292,    -1,   290, 
     936      -1,    -1,   291,    -1,   291,   302,    -1,   292,   179,   294, 
     937     180,    -1,   292,   179,   294,   180,   302,    -1,   298,   179, 
     938     294,   180,    -1,   288,   189,   288,    -1,   131,   360,   132, 
     939      -1,   289,    -1,   289,   295,    -1,   296,    -1,   295,     3, 
     940     296,    -1,   280,    -1,   297,    -1,   280,     4,   280,    -1, 
     941     280,     4,   280,     4,   280,    -1,     4,   280,     4,   280, 
     942      -1,     4,     4,   280,    -1,     4,   280,    -1,   280,     4, 
     943      -1,     4,    -1,   169,    -1,   142,    -1,   143,    -1,   176, 
     944      -1,   163,    -1,   164,    -1,   165,    -1,   299,   169,    -1, 
     945     300,   301,    -1,   158,    -1,   300,   158,    -1,   162,    -1, 
     946     159,    -1,    -1,   302,    -1,   179,   303,     4,   303,   180, 
     947      -1,    -1,   280,    -1,   187,    -1,   280,    -1,    -1,   306, 
     948       5,   280,    -1,    -1,   179,   283,     3,   283,   180,    -1, 
     949     309,   310,    -1,   309,   310,     3,   311,    -1,   309,   310, 
     950       3,    31,     4,   187,    -1,   309,   310,     3,    31,     4, 
     951     313,    -1,   141,    -1,   169,    -1,   312,    -1,   311,     3, 
     952     312,    -1,   169,   126,   169,    -1,   314,    -1,   313,     3, 
     953     314,    -1,   169,   126,   169,    -1,   169,    -1,   328,    -1, 
     954      98,   179,   366,   370,   180,    -1,   105,   179,   369,   370, 
     955     180,    -1,   106,   179,   371,   180,    -1,   317,    -1,   318, 
     956     324,    -1,   316,   324,    -1,   319,   324,    -1,    96,   324, 
     957      -1,   321,    -1,   372,   328,    -1,    41,   179,   280,   180, 
     958     304,    -1,    42,    -1,    43,    -1,   372,    84,    -1,    85, 
     959     179,   280,   180,    84,    -1,    86,    -1,    87,   324,    -1, 
     960      48,   320,   180,    -1,    49,   179,   280,   180,    -1,   115, 
     961      -1,   110,    -1,    93,    -1,   153,    -1,   156,    -1,   155, 
     962      -1,   154,    -1,   280,    -1,   320,     3,   280,    -1,   320, 
     963       4,   280,    -1,   326,   323,   322,    -1,   327,   280,    -1, 
     964      94,   325,    -1,    -1,   373,     5,   280,     3,   280,    -1, 
     965     373,     5,   280,     3,   280,     3,   280,    -1,    -1,   176, 
     966     248,    -1,   187,    -1,   169,    -1,    -1,   169,    -1,    92, 
     967      -1,    97,    -1,   118,    -1,   330,   332,    -1,   365,    -1, 
     968     341,    -1,   333,    -1,    98,   179,   366,   370,   180,    -1, 
     969     105,   179,   369,   370,   180,    -1,    78,   303,    -1,    83, 
     970     304,    -1,    63,   304,    -1,   340,   304,    -1,   331,    -1, 
     971      -1,   298,   329,   276,   276,    -1,   330,   189,   298,   329, 
     972     276,   276,    -1,   176,    -1,   331,     3,   176,    -1,     5, 
     973     280,    -1,   126,   280,    -1,   336,   334,    -1,    -1,   179, 
     974     335,   180,    -1,    -1,   338,    -1,   337,   169,    -1,   124, 
     975      -1,   339,    -1,   338,     3,   339,    -1,   280,    -1,    23, 
     976     364,    -1,   133,    -1,   135,    -1,   349,   345,    -1,   351, 
     977     343,    -1,   352,   345,    -1,   352,   345,   360,    -1,   104, 
     978     346,    -1,    38,    -1,    -1,   356,    -1,   345,   342,    -1, 
     979     350,   344,    -1,    -1,     3,   356,    -1,   179,   347,   180, 
     980      -1,   179,   353,   180,    -1,   179,   298,   180,    -1,   179, 
     981     176,   180,    -1,   176,    -1,   179,   283,   180,    -1,   169, 
     982      -1,   348,    -1,   347,     3,   348,    -1,   353,    -1,    23, 
     983      -1,    25,    -1,   298,   280,    -1,   298,   280,   189,   330, 
     984      -1,   298,   179,   297,   180,    -1,   298,    23,    -1,   298, 
     985      25,    -1,    99,    -1,   100,    -1,   354,    -1,    23,    -1, 
     986     103,    -1,   101,    -1,    88,    -1,   102,    -1,   354,    -1, 
     987     179,   353,   180,    -1,   288,    -1,   299,    -1,   353,   355, 
     988     353,    -1,   353,    23,   353,    -1,   353,    24,   353,    -1, 
     989     353,    25,   353,    -1,   355,   353,    -1,   353,    20,   353, 
     990      -1,    50,   280,    -1,    55,   280,    -1,    52,   280,    -1, 
     991      51,   280,    -1,   169,     5,   280,    -1,    21,    -1,    22, 
     992      -1,   358,    -1,   356,     3,   358,    -1,    -1,   288,    -1, 
     993     357,   359,    -1,   179,   356,   180,   359,    -1,   281,   359, 
     994      -1,   299,   359,    -1,   179,   356,     3,   363,   180,    -1, 
     995      -1,   285,    -1,   359,   285,    -1,   283,    -1,   362,    -1, 
     996     361,    -1,   283,     3,   280,    -1,   283,     3,   362,    -1, 
     997     362,     3,   280,    -1,   362,     3,   362,    -1,   361,     3, 
     998     280,    -1,   361,     3,   362,    -1,   283,    -1,   281,    -1, 
     999     307,    -1,   179,   280,   180,    -1,   179,   283,     3,   363, 
     1000     180,    -1,   179,   362,     3,   363,   180,    -1,   179,   361, 
     1001       3,   363,   180,    -1,   169,     5,   280,     3,   280,    -1, 
     1002     169,     5,   280,     3,   280,     3,   280,    -1,   176,    -1, 
     1003      89,   179,   280,     3,   280,   180,     3,   280,    -1,    89, 
     1004     364,    -1,   367,    -1,   330,    -1,   366,     3,   367,    -1, 
     1005     298,    -1,   292,    -1,   368,    -1,   298,   179,   295,   180, 
     1006      -1,   367,    -1,   369,     3,   367,    -1,    -1,     3,   125, 
     1007       5,   298,    -1,   298,    -1,   371,     3,   298,    -1,    91, 
     1008     280,   180,    -1,   298,    -1 
     1009}; 
     1010 
     1011/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */ 
     1012static const yytype_uint16 yyrline[] = 
     1013{ 
     1014       0,   336,   336,   337,   339,   340,   341,   342,   343,   346, 
     1015     347,   349,   350,   351,   360,   361,   363,   365,   367,   374, 
     1016     379,   380,   382,   384,   385,   387,   388,   394,   397,   398, 
     1017     401,   402,   430,   448,   481,   515,   532,   539,   541,   545, 
     1018     550,   553,   556,   561,   562,   563,   571,   582,   594,   595, 
     1019     597,   605,   613,   619,   620,   635,   648,   649,   655,   656, 
     1020     693,   706,   707,   708,   709,   710,   711,   712,   713,   714, 
     1021     715,   734,   735,   741,   742,   743,   744,   745,   746,   747, 
     1022     748,   749,   750,   751,   752,   753,   754,   755,   756,   757, 
     1023     758,   759,   760,   761,   762,   763,   764,   766,   767,   769, 
     1024     770,   772,   773,   775,   777,   778,   780,   781,   783,   784, 
     1025     786,   869,   906,   912,   917,   922,   936,   950,   965,   972, 
     1026     981,   982,   983,   984,   986,   991,   992,   997,  1001,  1006, 
     1027    1011,  1013,  1015,  1017,  1019,  1023,  1024,  1027,  1029,  1030, 
     1028    1031,  1032,  1034,  1036,  1041,  1046,  1052,  1068,  1085,  1086, 
     1029    1088,  1092,  1097,  1101,  1106,  1112,  1123,  1135,  1140,  1146, 
     1030    1151,  1155,  1165,  1174,  1184,  1185,  1187,  1191,  1196,  1219, 
     1031    1221,  1222,  1224,  1234,  1236,  1238,  1270,  1305,  1307,  1309, 
     1032    1313,  1318,  1323,  1331,  1332,  1334,  1335,  1337,  1338,  1339, 
     1033    1341,  1346,  1348,  1353,  1357,  1360,  1366,  1368,  1374,  1375, 
     1034    1377,  1378,  1380,  1381,  1382,  1384,  1385,  1387,  1388,  1397, 
     1035    1401,  1406,  1408,  1411,  1412,  1414,  1415,  1416,  1418,  1419, 
     1036    1421,  1425,  1426,  1428,  1433,  1435,  1437,  1438,  1439,  1440, 
     1037    1446,  1449,  1450,  1451,  1453,  1455,  1458,  1463,  1467,  1469, 
     1038    1473,  1478,  1482,  1487,  1492,  1500,  1501,  1503,  1504,  1506, 
     1039    1508,  1512,  1514,  1516,  1518,  1520,  1522,  1524,  1526,  1528, 
     1040    1530,  1532,  1534,  1536,  1538,  1540,  1542,  1544,  1546,  1548, 
     1041    1550,  1552,  1554,  1556,  1558,  1560,  1562,  1565,  1566,  1570, 
     1042    1571,  1573,  1575,  1577,  1579,  1582,  1583,  1585,  1587,  1589, 
     1043    1591,  1593,  1595,  1597,  1599,  1601,  1603,  1605,  1607,  1609, 
     1044    1611,  1613,  1615,  1617,  1619,  1621,  1623,  1625,  1628,  1629, 
     1045    1631,  1633,  1636,  1638,  1642,  1647,  1652,  1658,  1670,  1675, 
     1046    1677,  1680,  1684,  1694,  1700,  1703,  1704,  1707,  1708,  1711, 
     1047    1712,  1714,  1716,  1719,  1721,  1722,  1723,  1724,  1726,  1784, 
     1048    1786,  1787,  1788,  1789,  1790,  1791,  1793,  1795,  1797,  1798, 
     1049    1800,  1803,  1804,  1806,  1809,  1810,  1812,  1813,  1815,  1816, 
     1050    1825,  1827,  1830,  1850,  1884,  1904,  1955,  1963,  1966,  1970, 
     1051    1980,  1991,  1995,  2005,  2017,  2026,  2027,  2033,  2039,  2040, 
     1052    2090,  2108,  2128,  2147,  2180,  2181,  2182,  2183,  2184,  2185, 
     1053    2186,  2187,  2188,  2189,  2190,  2191,  2192,  2193,  2230,  2240, 
     1054    2249,  2258,  2267,  2268,  2269,  2271,  2272,  2273,  2275,  2276, 
     1055    2277,  2278,  2279,  2281,  2282,  2284,  2285,  2287,  2289,  2296, 
     1056    2297,  2298,  2299,  2300,  2301,  2307,  2313,  2314,  2315,  2316, 
     1057    2317,  2319,  2320,  2330,  2332,  2333,  2335,  2336,  2338,  2366, 
     1058    2367,  2369,  2370,  2372,  2402,  2404,  2405,  2408,  2422,  2425, 
     1059    2426,  2429,  2430,  2431,  2432,  2433,  2434,  2446,  2447,  2449, 
     1060    2450,  2455,  2456,  2458,  2459,  2461,  2462,  2463,  2464,  2465, 
     1061    2467,  2468,  2470,  2471,  2472,  2473,  2474,  2475,  2476,  2477, 
     1062    2479,  2480,  2482,  2483,  2486,  2487,  2488,  2491,  2494,  2495, 
     1063    2497,  2498,  2499,  2500,  2501,  2502,  2503,  2504,  2505,  2506, 
     1064    2507,  2508,  2509,  2511,  2512,  2514,  2515,  2517,  2518,  2520, 
     1065    2521,  2522,  2523,  2524,  2526,  2527,  2528,  2530,  2531,  2532, 
     1066    2534,  2536,  2538,  2540,  2542,  2544,  2546,  2547,  2549,  2551, 
     1067    2553,  2555,  2557,  2561,  2564,  2571,  2573,  2574,  2576,  2577, 
     1068    2578,  2580,  2582,  2583,  2585,  2592,  2593,  2595,  2596,  2598, 
     1069    2599,  2607,  2609 
     1070}; 
     1071#endif 
     1072 
     1073#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE 
     1074/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. 
     1075   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */ 
     1076static const char *const yytname[] = 
     1077{ 
     1078  "$end", "error", "$undefined", "','", "':'", "'='", "TOK_BINARY_OP", 
     1079  "TOK_NEQV", "TOK_EQV", "TOK_XOR", "TOK_OR", "TOK_AND", "TOK_NOT", 
     1080  "TOK_NE", "TOK_EQ", "TOK_GE", "TOK_LE", "TOK_GT", "TOK_LT", 
     1081  "TOK_UNARY_OP", "TOK_DSLASH", "'+'", "'-'", "'*'", "TOK_SLASH", 
     1082  "TOK_DASTER", "TOK_SEP", "TOK_SEMICOLON", "TOK_NEXTLINE", 
     1083  "TOK_PARAMETER", "TOK_RESULT", "TOK_ONLY", "TOK_INCLUDE", 
     1084  "TOK_SUBROUTINE", "TOK_PROGRAM", "TOK_FUNCTION", "TOK_OMP", "TOK_DOLLAR", 
     1085  "TOK_FORMAT", "TOK_MAX", "TOK_TANH", "TOK_WHERE", "TOK_ELSEWHERE", 
     1086  "TOK_ENDWHERE", "TOK_MAXVAL", "TOK_TRIM", "TOK_SUM", "TOK_SQRT", 
     1087  "TOK_CASE", "TOK_SELECTCASE", "TOK_FILE", "TOK_END", "TOK_ERR", 
     1088  "TOK_DONOTTREAT", "TOK_ENDDONOTTREAT", "TOK_EXIST", "TOK_MIN", 
     1089  "TOK_FLOAT", "TOK_EXP", "TOK_COS", "TOK_COSH", "TOK_ACOS", "TOK_NINT", 
     1090  "TOK_CYCLE", "TOK_SIN", "TOK_SINH", "TOK_ASIN", "TOK_EQUIVALENCE", 
     1091  "TOK_BACKSPACE", "TOK_LOG", "TOK_TAN", "TOK_ATAN", "TOK_RECURSIVE", 
     1092  "TOK_ABS", "TOK_MOD", "TOK_SIGN", "TOK_MINLOC", "TOK_MAXLOC", "TOK_EXIT", 
     1093  "TOK_MINVAL", "TOK_PUBLIC", "TOK_PRIVATE", "TOK_ALLOCATABLE", 
     1094  "TOK_RETURN", "TOK_THEN", "TOK_ELSEIF", "TOK_ELSE", "TOK_ENDIF", 
     1095  "TOK_PRINT", "TOK_PLAINGOTO", "TOK_CONSTRUCTID", "TOK_LOGICALIF", 
     1096  "TOK_PLAINDO", "TOK_CONTAINS", "TOK_ENDDO", "TOK_MODULE", 
     1097  "TOK_ENDMODULE", "TOK_DOWHILE", "TOK_ALLOCATE", "TOK_OPEN", "TOK_CLOSE", 
     1098  "TOK_INQUIRE", "TOK_WRITE", "TOK_READ", "TOK_REWIND", "TOK_DEALLOCATE", 
     1099  "TOK_NULLIFY", "TOK_FIN", "TOK_DEBUT", "TOK_DIMENSION", "TOK_ENDSELECT", 
     1100  "TOK_EXTERNAL", "TOK_INTENT", "TOK_INTRINSIC", "TOK_NAMELIST", 
     1101  "TOK_CASEDEFAULT", "TOK_OPTIONAL", "TOK_POINTER", "TOK_CONTINUE", 
     1102  "TOK_SAVE", "TOK_TARGET", "TOK_QUOTE", "TOK_IMPLICIT", "TOK_NONE", 
     1103  "TOK_CALL", "TOK_STAT", "TOK_POINT_TO", "TOK_COMMON", "TOK_GLOBAL", 
     1104  "TOK_INTERFACE", "TOK_ENDINTERFACE", "TOK_LEFTAB", "TOK_RIGHTAB", 
     1105  "TOK_PAUSE", "TOK_PROCEDURE", "TOK_STOP", "TOK_NAMEEQ", "TOK_REAL8", 
     1106  "TOK_OUT", "TOK_INOUT", "TOK_IN", "TOK_USE", "TOK_TRUE", "TOK_FALSE", 
     1107  "TOK_LABEL", "TOK_TYPE", "TOK_TYPEPAR", "TOK_ENDTYPE", "TOK_REAL", 
     1108  "TOK_INTEGER", "TOK_LOGICAL", "TOK_DOUBLEPRECISION", "TOK_DOUBLEREAL", 
     1109  "TOK_ENDSUBROUTINE", "TOK_ENDFUNCTION", "TOK_ENDPROGRAM", "TOK_ENDUNIT", 
     1110  "TOK_CHARACTER", "TOK_CHAR_CONSTANT", "TOK_CHAR_CUT", "TOK_DATA", 
     1111  "TOK_CHAR_INT", "TOK_CHAR_MESSAGE", "TOK_CSTREAL", "TOK_CSTREALDP", 
     1112  "TOK_CSTREALQP", "TOK_SFREAL", "TOK_COMPLEX", "TOK_DOUBLECOMPLEX", 
     1113  "TOK_NAME", "TOK_NAME_CHAR", "TOK_PROBTYPE", "TOK_INTERPTYPE", 
     1114  "TOK_VARTYPE", "TOK_BC", "TOK_OP", "TOK_CSTINT", "TOK_COMMENT", 
     1115  "TOK_FILENAME", "'('", "')'", "'['", "']'", "'!'", "'_'", "'<'", "'>'", 
     1116  "'\\n'", "'/'", "'%'", "$accept", "input", "line", "suite_line_list", 
     1117  "suite_line", "instr", "fin_line", "keyword", "position", "thislabel", 
     1118  "cmnt", "nulcurbuf", "opt_recursive", "entry", "name_routine", 
     1119  "writedeclar", "before_include", "filename", "arglist", "arglist1", 
     1120  "args", "arg", "spec", "opt_spec", "name_intrinsic", 
     1121  "use_intrinsic_list", "list_couple", "list_expr_equi", "expr_equi", 
     1122  "list_expr_equi1", "list_expr", "opt_sep", "after_type", 
     1123  "before_function", "before_parameter", "before_data", "data", 
     1124  "datavallist", "save", "before_save", "varsave", "datanamelist", 
     1125  "expr_data", "opt_signe", "namelist", "namelist_action", 
     1126  "after_namelist", "interface", "before_dimension", "dimension", 
     1127  "private", "public", "use_name_list", "common", "before_common", 
     1128  "var_common_list", "var_common", "comblock", "opt_comma", "paramlist", 
     1129  "paramitem", "module_proc_stmt", "proc_name_list", "implicit", 
     1130  "opt_retour", "dcl", "nodimsgiven", "type", "before_typepar", 
     1131  "c_selector", "c_attribute", "before_character", "typespec", "typename", 
     1132  "lengspec", "proper_lengspec", "selector", "proper_selector", 
     1133  "attribute", "clause", "opt_clause", "options", "attr_spec_list", 
     1134  "attr_spec", "intent_spec", "access_spec", "dims", "dimlist", "dim", 
     1135  "ubound", "expr", "predefinedfunction", "minmaxlist", "uexpr", "signe", 
     1136  "operation", "after_slash", "after_equal", "lhs", "beforefunctionuse", 
     1137  "array_ele_substring_func_ref", "begin_array", "structure_component", 
     1138  "vec", "funarglist", "funargs", "funarg", "triplet", "ident", 
     1139  "simple_const", "string_constant", "opt_substring", "substring", 
     1140  "optexpr", "opt_expr", "initial_value", "before_initial", 
     1141  "complex_const", "use_stat", "word_use", "module_name", "rename_list", 
     1142  "rename_name", "only_list", "only_name", "exec", "word_endsubroutine", 
     1143  "word_endunit", "word_endprogram", "word_endfunction", "caselist", 
     1144  "boucledo", "do_arg", "opt_int", "opt_name", "optname", "worddo", 
     1145  "wordwhile", "iffable", "before_dims", "ident_dims", "int_list", 
     1146  "after_ident_dims", "call", "opt_call", "opt_callarglist", "keywordcall", 
     1147  "before_call", "callarglist", "callarg", "stop", "io", "option_inlist", 
     1148  "option_read", "opt_inlist", "ioctl", "after_rewind", "ctllist", 
     1149  "ioclause", "iofctl", "infmt", "read", "write", "fexpr", "unpar_fexpr", 
     1150  "addop", "inlist", "opt_lhs", "inelt", "opt_operation", "outlist", 
     1151  "out2", "other", "dospec", "label", "goto", "allocation_list", 
     1152  "allocate_object", "array_element", "allocate_object_list", 
     1153  "opt_stat_spec", "pointer_name_list", "logif", "do_var", 0 
     1154}; 
     1155#endif 
     1156 
     1157# ifdef YYPRINT 
     1158/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to 
     1159   token YYLEX-NUM.  */ 
     1160static const yytype_uint16 yytoknum[] = 
     1161{ 
     1162       0,   256,   257,    44,    58,    61,   258,   259,   260,   261, 
     1163     262,   263,   264,   265,   266,   267,   268,   269,   270,   271, 
     1164     272,    43,    45,    42,   273,   274,   275,   276,   277,   278, 
     1165     279,   280,   281,   282,   283,   284,   285,   286,   287,   288, 
     1166     289,   290,   291,   292,   293,   294,   295,   296,   297,   298, 
     1167     299,   300,   301,   302,   303,   304,   305,   306,   307,   308, 
     1168     309,   310,   311,   312,   313,   314,   315,   316,   317,   318, 
     1169     319,   320,   321,   322,   323,   324,   325,   326,   327,   328, 
     1170     329,   330,   331,   332,   333,   334,   335,   336,   337,   338, 
     1171     339,   340,   341,   342,   343,   344,   345,   346,   347,   348, 
     1172     349,   350,   351,   352,   353,   354,   355,   356,   357,   358, 
     1173     359,   360,   361,   362,   363,   364,   365,   366,   367,   368, 
     1174     369,   370,   371,   372,   373,   374,   375,   376,   377,   378, 
     1175     379,   380,   381,   382,   383,   384,   385,   386,   387,   388, 
     1176     389,   390,   391,   392,   393,   394,   395,   396,   397,   398, 
     1177     399,   400,   401,   402,   403,   404,   405,   406,   407,   408, 
     1178     409,   410,   411,   412,   413,   414,   415,   416,   417,   418, 
     1179     419,   420,   421,   422,   423,   424,   425,   426,   427,    40, 
     1180      41,    91,    93,    33,    95,    60,    62,    10,    47,    37 
     1181}; 
     1182# endif 
     1183 
     1184/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ 
     1185static const yytype_uint16 yyr1[] = 
     1186{ 
     1187       0,   190,   191,   191,   192,   192,   192,   192,   192,   193, 
     1188     193,   194,   194,   194,   194,   194,   195,   196,   197,   197, 
     1189     197,   197,   198,   199,   199,   200,   200,   201,   202,   202, 
     1190     203,   203,   203,   203,   203,   203,   204,   205,   206,   207, 
     1191     208,   208,   208,   209,   209,   209,   210,   210,   211,   211, 
     1192     212,   212,   212,   212,   212,   212,   212,   212,   212,   212, 
     1193     212,   212,   212,   212,   212,   212,   212,   212,   212,   212, 
     1194     212,   213,   213,   214,   214,   214,   214,   214,   214,   214, 
     1195     214,   214,   214,   214,   214,   214,   214,   214,   214,   214, 
     1196     214,   214,   214,   214,   214,   214,   214,   215,   215,   216, 
     1197     216,   217,   217,   218,   219,   219,   220,   220,   221,   221, 
     1198     222,   222,   223,   224,   225,   226,   226,   226,   227,   227, 
     1199     228,   228,   228,   228,   229,   230,   230,   231,   231,   231, 
     1200     232,   232,   232,   232,   232,   233,   233,   234,   235,   235, 
     1201     235,   235,   236,   237,   237,   238,   239,   239,   240,   240, 
     1202     241,   241,   242,   242,   243,   243,   243,   244,   244,   245, 
     1203     245,   246,   247,   247,   248,   248,   249,   249,   250,   251, 
     1204     252,   252,   253,   253,   254,   255,   255,   256,   257,   257, 
     1205     257,   257,   258,   259,   259,   259,   259,   260,   260,   260, 
     1206     261,   262,   263,   263,   263,   263,   263,   263,   264,   264, 
     1207     265,   265,   266,   266,   266,   267,   267,   268,   268,   268, 
     1208     268,   269,   269,   270,   270,   271,   271,   271,   272,   272, 
     1209     273,   273,   273,   273,   273,   273,   273,   273,   273,   273, 
     1210     273,   274,   274,   274,   275,   275,   276,   276,   277,   277, 
     1211     278,   278,   278,   278,   278,   279,   279,   280,   280,   280, 
     1212     280,   281,   281,   281,   281,   281,   281,   281,   281,   281, 
     1213     281,   281,   281,   281,   281,   281,   281,   281,   281,   281, 
     1214     281,   281,   281,   281,   281,   281,   281,   282,   282,   283, 
     1215     283,   283,   283,   283,   283,   284,   284,   285,   285,   285, 
     1216     285,   285,   285,   285,   285,   285,   285,   285,   285,   285, 
     1217     285,   285,   285,   285,   285,   285,   285,   285,   286,   286, 
     1218     286,   286,   287,   287,   288,   288,   288,   289,   290,   290, 
     1219     290,   290,   291,   292,   293,   294,   294,   295,   295,   296, 
     1220     296,   297,   297,   297,   297,   297,   297,   297,   298,   299, 
     1221     299,   299,   299,   299,   299,   299,   299,   300,   300,   300, 
     1222     300,   301,   301,   302,   303,   303,   304,   304,   305,   305, 
     1223     306,   307,   308,   308,   308,   308,   309,   310,   311,   311, 
     1224     312,   313,   313,   314,   314,   315,   315,   315,   315,   315, 
     1225     315,   315,   315,   315,   315,   315,   315,   315,   315,   315, 
     1226     315,   315,   315,   315,   315,   315,   315,   315,   316,   317, 
     1227     318,   319,   320,   320,   320,   321,   321,   321,   322,   322, 
     1228     322,   323,   323,   324,   324,   325,   325,   326,   327,   328, 
     1229     328,   328,   328,   328,   328,   328,   328,   328,   328,   328, 
     1230     328,   329,   330,   330,   331,   331,   332,   332,   333,   334, 
     1231     334,   335,   335,   336,   337,   338,   338,   339,   339,   340, 
     1232     340,   341,   341,   341,   341,   341,   341,   342,   342,   343, 
     1233     343,   344,   344,   345,   345,   346,   346,   346,   346,   346, 
     1234     347,   347,   348,   348,   348,   348,   348,   348,   348,   348, 
     1235     349,   349,   350,   350,   351,   351,   351,   352,   353,   353, 
     1236     354,   354,   354,   354,   354,   354,   354,   354,   354,   354, 
     1237     354,   354,   354,   355,   355,   356,   356,   357,   357,   358, 
     1238     358,   358,   358,   358,   359,   359,   359,   360,   360,   360, 
     1239     361,   361,   361,   361,   361,   361,   361,   361,   362,   362, 
     1240     362,   362,   362,   363,   363,   364,   365,   365,   366,   366, 
     1241     366,   367,   367,   367,   368,   369,   369,   370,   370,   371, 
     1242     371,   372,   373 
     1243}; 
     1244 
     1245/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */ 
     1246static const yytype_uint8 yyr2[] = 
     1247{ 
     1248       0,     2,     0,     2,     2,     2,     1,     3,     3,     1, 
     1249       3,     2,     2,     3,     3,     2,     2,     2,     1,     1, 
     1250       1,     1,     0,     0,     2,     0,     1,     0,     0,     1, 
     1251       0,     4,     2,     5,     3,     2,     1,     0,     1,     1, 
     1252       0,     2,     3,     0,     2,     3,     1,     3,     1,     1, 
     1253       2,     4,     2,     2,     4,     2,     1,     1,     1,     1, 
     1254       1,     1,     1,     1,     1,     1,     4,     3,     3,     2, 
     1255       3,     0,     1,     1,     1,     1,     1,     1,     1,     1, 
    3081256    1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    309     1,    1,    1,    1,    1,    1,    1,    3,    3,    5, 
    310     1,    3,    3,    2,    4,    1,    3,    0,    2,    2, 
    311     3,    1,    1,    1,    4,    6,    4,    1,    3,    2, 
    312     3,    5,    3,    1,    0,    2,    1,    4,    3,    2, 
    313     3,    3,    3,    3,    0,    1,    2,    2,    3,    5, 
    314     3,    0,    2,    2,    1,    5,    5,    2,    3,    2, 
    315     3,    1,    3,    2,    3,    5,    1,    2,    1,    3, 
    316     2,    1,    3,    0,    1,    1,    3,    3,    2,    1, 
    317     3,    2,    2,    0,    6,    7,    0,    2,    2,    3, 
    318     3,    1,    0,    2,    4,    3,    3,    4,    2,    1, 
    319     1,    1,    1,    1,    1,    1,    1,    0,    2,    1, 
    320     3,    0,    2,    3,    1,    3,    2,    3,    1,    1, 
    321     1,    1,    0,    3,    0,    2,    4,    1,    3,    1, 
    322     1,    1,    2,    1,    4,    1,    1,    1,    1,    1, 
    323     1,    1,    1,    1,    1,    0,    3,    1,    3,    1, 
    324     1,    2,    2,    3,    1,    1,    1,    3,    1,    1, 
    325     3,    3,    4,    4,    3,    4,    4,    3,    4,    4, 
     1257       1,     1,     1,     1,     1,     1,     1,     1,     3,     3, 
     1258       5,     1,     3,     3,     2,     4,     1,     3,     0,     2, 
     1259       2,     3,     1,     1,     1,     4,     6,     4,     1,     3, 
     1260       2,     3,     5,     3,     1,     0,     2,     1,     4,     3, 
     1261       2,     3,     3,     3,     3,     0,     1,     2,     2,     3, 
     1262       5,     3,     0,     2,     2,     1,     5,     5,     2,     3, 
     1263       2,     3,     1,     3,     2,     3,     5,     1,     2,     1, 
     1264       3,     2,     1,     3,     0,     1,     1,     3,     3,     2, 
     1265       1,     3,     2,     2,     0,     6,     7,     0,     2,     2, 
     1266       3,     3,     1,     0,     2,     4,     3,     3,     4,     2, 
     1267       1,     1,     1,     1,     1,     1,     1,     1,     0,     2, 
     1268       1,     3,     0,     2,     3,     1,     3,     2,     3,     1, 
     1269       1,     1,     1,     0,     3,     0,     2,     4,     1,     3, 
     1270       1,     1,     1,     2,     1,     4,     1,     1,     1,     1, 
     1271       1,     1,     1,     1,     1,     1,     0,     3,     1,     3, 
     1272       1,     1,     2,     2,     3,     1,     1,     1,     3,     1, 
     1273       1,     3,     3,     4,     4,     3,     4,     4,     3,     4, 
    3261274    4,    4,    4,    4,    4,    4,    4,    4,    4,    4, 
    327     4,    3,    4,    4,    4,    4,    1,    3,    1,    1, 
    328     1,    2,    2,    2,    1,    1,    2,    2,    2,    2, 
    329     2,    2,    2,    2,    2,    2,    2,    3,    2,    3, 
    330     2,    2,    2,    2,    2,    2,    2,    0,    1,    2, 
    331     2,    2,    1,    1,    1,    1,    0,    1,    2,    4, 
    332     5,    4,    3,    3,    1,    2,    1,    3,    1,    1, 
    333     3,    5,    4,    3,    2,    2,    1,    1,    1,    1, 
    334     1,    1,    1,    1,    2,    2,    1,    2,    1,    1, 
    335     0,    1,    5,    0,    1,    1,    1,    0,    3,    0, 
    336     5,    2,    4,    6,    6,    1,    1,    1,    3,    3, 
    337     1,    3,    3,    1,    1,    5,    5,    4,    1,    2, 
    338     2,    2,    2,    1,    2,    5,    1,    1,    2,    5, 
    339     1,    2,    3,    4,    1,    1,    1,    1,    1,    1, 
    340     1,    1,    3,    3,    3,    2,    2,    0,    5,    7, 
    341     0,    2,    1,    1,    0,    1,    1,    1,    0,    1, 
    342     1,    2,    1,    1,    1,    5,    5,    2,    2,    2, 
    343     2,    1,    0,    4,    6,    1,    3,    2,    2,    2, 
    344     0,    3,    0,    1,    2,    1,    1,    3,    1,    2, 
    345     1,    1,    2,    2,    2,    3,    2,    1,    0,    2, 
    346     1,    1,    1,    0,    2,    0,    1,    2,    2,    0, 
    347     1,    0,    2,    3,    3,    3,    3,    1,    3,    1, 
     1275       4,     4,     3,     4,     4,     4,     4,     1,     3,     1, 
     1276       1,     1,     2,     2,     2,     1,     1,     2,     2,     2, 
     1277       2,     2,     2,     2,     2,     2,     2,     2,     3,     2, 
     1278       3,     2,     2,     2,     2,     2,     2,     2,     0,     1, 
     1279       2,     2,     2,     1,     1,     1,     1,     0,     1,     2, 
     1280       4,     5,     4,     3,     3,     1,     2,     1,     3,     1, 
     1281       1,     3,     5,     4,     3,     2,     2,     1,     1,     1, 
     1282       1,     1,     1,     1,     1,     2,     2,     1,     2,     1, 
     1283       1,     0,     1,     5,     0,     1,     1,     1,     0,     3, 
     1284       0,     5,     2,     4,     6,     6,     1,     1,     1,     3, 
     1285       3,     1,     3,     3,     1,     1,     5,     5,     4,     1, 
     1286       2,     2,     2,     2,     1,     2,     5,     1,     1,     2, 
     1287       5,     1,     2,     3,     4,     1,     1,     1,     1,     1, 
     1288       1,     1,     1,     3,     3,     3,     2,     2,     0,     5, 
     1289       7,     0,     2,     1,     1,     0,     1,     1,     1,     1, 
     1290       2,     1,     1,     1,     5,     5,     2,     2,     2,     2, 
     1291       1,     0,     4,     6,     1,     3,     2,     2,     2,     0, 
     1292       3,     0,     1,     2,     1,     1,     3,     1,     2,     1, 
     1293       1,     2,     2,     2,     3,     2,     1,     0,     1,     2, 
     1294       2,     0,     2,     3,     3,     3,     3,     1,     3,     1, 
    3481295    1,    3,    1,    1,    1,    2,    4,    4,    2,    2, 
    3491296    1,    1,    1,    1,    1,    1,    1,    1,    1,    3, 
     
    3521299    4,    2,    2,    5,    0,    1,    2,    1,    1,    1, 
    3531300    3,    3,    3,    3,    3,    3,    1,    1,    1,    3, 
    354     5,    5,    5,    5,    7,    1,    3,    1,    8,    2, 
    355     1,    1,    3,    1,    1,    1,    4,    1,    3,    1, 
    356     3,    0,    4,    1,    3,    0,    1,    0,    2,    3, 
    357     1, 
     1301       5,     5,     5,     5,     7,     1,     8,     2,     1,     1, 
     1302       3,     1,     1,     1,     4,     1,     3,     0,     4,     1, 
     1303       3,     3,     1 
    3581304}; 
    359 short fortrandefred[] = {                                      1, 
    360     0,   37,   19,   20,   17,   18,   27,    5,   21,    2, 
    361     0,    0,   27,   23,    3,  113,   38,    0,    0,  458, 
    362     0,  387,  388,    0,    0,    0,    0,    0,   29,    0, 
    363     0,    0,    0,    0,  391,    0,  497,    0,    0,  417, 
    364   397,    0,    0,    0,  418,    0,  491,  492,  496,  498, 
    365   495,    0,    0,    0,  145,  396,    0,    0,    0,  395, 
    366     0,  421,  124,    0,  446,  157,    0,    0,    0,  451, 
    367     0,  452,  366,    0,  182,    0,  193,  192,  197,  195, 
    368   398,  401,  400,  399,  190,  114,  194,  196,  338,  436, 
    369     0,    0,    0,    0,    0,  379,    0,    0,    0,   60, 
    370     0,    8,   21,   21,    0,    0,   21,    0,    0,    0, 
    371     0,   58,   61,   62,   63,   64,   65,    0,    0,    0, 
    372     0,    0,    0,    0,    0,  375,  384,    0,    0,    0, 
    373     0,  423,  424,  425,    0,    0,    0,    0,    0,    0, 
    374     0,   25,   37,    7,   36,   32,    0,    0,    0,  285, 
    375   286,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    376     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    377     0,    0,    0,    0,    0,    0,    0,  339,  340,    0, 
    378   347,  350,  349,  342,  343,  344,  341,    0,    0,    0, 
    379     0,    0,  249,    0,  247,    0,  281,    0,  316,  250, 
    380     0,    0,    0,  356,  430,    0,    0,    0,  101,    0, 
    381   428,    0,    0,  150,    0,  148,    0,  429,    0,  414, 
    382   413,  392,  548,    0,  550,    0,  416,  407,   35,  383, 
    383     0,  480,  478,    0,  457,    0,    0,    0,    0,  162, 
    384     0,    0,  138,    0,    0,  172,  173,  158,  143,  144, 
    385   170,    0,  234,  235,    0,   72,   52,    0,    0,    0, 
    386   112,    0,   50,    0,  174,  381,  382,  380,    0,    0, 
    387     0,  178,   15,    0,    0,    0,   10,   11,   39,   21, 
    388    37,   14,    0,    0,    0,    0,  166,  165,    0,    0, 
    389     0,    0,    0,    0,    0,    0,  120,    0,    0,  137, 
    390     0,    0,    0,    0,  159,    0,    0,  179,    0,  210, 
    391     0,  367,    0,  389,    0,    0,  433,  385,    0,    0, 
    392     0,    0,    0,    0,  422,  431,    0,    0,  440,  445, 
    393     0,  453,  514,  515,  494,    0,    0,    0,    0,    0, 
    394     0,    0,    0,    0,  454,    0,    0,    0,    0,    0, 
    395     6,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1305 
     1306/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state 
     1307   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero 
     1308   means the default is an error.  */ 
     1309static const yytype_uint16 yydefact[] = 
     1310{ 
     1311       2,     0,     1,    37,    20,    21,    18,    19,    27,     6, 
     1312      22,     3,    25,    30,    27,    24,     4,    26,    37,   113, 
     1313      38,     0,     0,   456,     0,   387,   388,     0,     0,     0, 
     1314       0,     0,    29,   354,   108,   108,     0,     0,   391,     0, 
     1315     486,     0,     0,   417,   397,   415,     0,     0,   418,     0, 
     1316     480,   481,   485,   487,   484,     0,     0,     0,   145,   396, 
     1317     108,   108,     0,   395,     0,   419,   124,     0,   444,   157, 
     1318       0,     0,     0,   449,     0,   450,   366,    71,   182,     0, 
     1319     193,   192,   197,   195,   398,   401,   400,   399,   190,   114, 
     1320     194,   196,   338,   434,     5,     9,    22,     0,    22,     0, 
     1321      22,     0,     0,    57,   125,    65,   142,    64,   164,    59, 
     1322      61,    60,    56,     0,    63,    58,   215,     0,   183,   202, 
     1323     191,   431,    62,     0,    25,     0,   379,     0,     0,   384, 
     1324     411,     0,   375,     0,   430,   423,   439,     0,     0,   422, 
     1325       0,     0,     0,   421,     0,     8,     7,    36,    32,    40, 
     1326       0,     0,   285,   286,     0,     0,     0,     0,     0,     0, 
    3961327    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3971328    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    398     0,    0,  249,    0,    0,    0,    0,    0,    0,    0, 
    399     0,    0,  348,    0,  352,  346,  345,  317,    0,  319, 
    400     0,  317,    0,    0,    0,    0,    0,    0,    0,    0, 
    401     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    402     0,  282,    0,    0,  393,    0,    0,    0,    0,    0, 
    403   109,  152,    0,    0,    0,    0,  570,    0,    0,    0, 
    404     0,    0,  551,  556,    0,    0,    0,    0,    0,  560, 
    405   564,    0,    0,   74,   75,   78,   73,   79,   76,   81, 
    406    82,   83,   84,   85,   80,   86,   87,   88,   89,   90, 
    407    91,   92,   93,   94,   95,   77,   96,    0,   97,    0, 
    408   139,    0,    0,    0,    0,    0,    0,  220,  222,    0, 
    409   224,    0,  226,  227,  228,  229,  230,  221,    0,  218, 
    410   216,  174,  110,    0,    0,  180,    0,    0,  203,    0, 
    411     0,    0,    9,   16,   12,   13,    0,    0,    0,    0, 
    412     0,  123,    0,    0,    0,   70,    0,    0,    0,  126, 
    413   121,  141,    0,    0,  161,    0,    0,  184,    0,  212, 
    414     0,    0,    0,    0,    0,  207,  181,    0,    0,    0, 
    415   412,  571,    0,  405,    0,    0,  433,  437,    0,    0, 
    416     0,    0,  447,  484,  485,    0,    0,    0,    0,  481, 
    417   499,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    418     0,  468,    0,  516,    0,    0,  469,    0,    0,    0, 
    419     0,    0,    0,  456,   49,   48,   41,    0,   46,    0, 
    420     0,    0,  252,    0,    0,    0,  251,  258,  255,    0, 
    421     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    422     0,  272,    0,    0,    0,    0,    0,    0,    0,    0, 
    423     0,    0,  324,    0,    0,    0,    0,  248,    0,    0, 
    424     0,    0,    0,    0,  307,    0,    0,    0,    0,    0, 
    425     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    426     0,    0,  306,    0,    0,    0,    0,    0,    0,    0, 
    427     0,  394,  104,    0,  103,  102,   66,    0,    0,    0, 
    428     0,    0,    0,  477,  476,  479,    0,    0,    0,  378, 
    429     0,  163,    0,   99,    0,  171,   51,    0,  223,    0, 
    430     0,    0,    0,  111,    0,    0,  204,    0,  245,    0, 
    431   238,    0,  240,  434,   31,    0,   54,  167,    0,    0, 
    432   136,    0,    0,    0,    0,    0,    0,  129,    0,    0, 
    433     0,  160,    0,    0,    0,    0,  189,  186,  208,    0, 
    434     0,    0,  368,    0,    0,    0,    0,  450,  442,    0, 
    435   489,  490,    0,    0,    0,    0,  474,  475,    0,    0, 
    436     0,  526,    0,    0,    0,    0,    0,    0,    0,    0, 
    437     0,    0,    0,   42,    0,   33,  386,    0,  253,  254, 
    438   257,  261,  262,  263,  264,  265,  260,  266,  267,  268, 
    439   269,  270,  271,  273,  274,  275,  276,  256,    0,    0, 
    440     0,  248,  532,    0,  536,    0,  534,    0,  259,    0, 
    441     0,  322,    0,  327,    0,  330,    0,    0,    0,    0, 
    442     0,    0,    0,    0,  153,  390,    0,    0,    0,  553, 
    443   376,  561,  377,  565,   98,    0,    0,    0,  147,  232, 
    444   233,  231,    0,  219,  217,    0,    0,  206,    0,    0, 
    445   237,    0,    0,  122,    0,    0,    0,    0,    0,    0, 
    446   115,  128,    0,  117,  140,  146,  185,    0,  187,    0, 
    447     0,    0,    0,    0,    0,    0,    0,  448,    0,    0, 
    448     0,  500,    0,  482,    0,    0,  527,  517,   47,   44, 
    449     0,    0,    0,    0,    0,  361,    0,    0,    0,    0, 
    450     0,  321,  105,    0,  557,    0,  100,    0,    0,  199, 
    451   225,    0,    0,  239,    0,  244,  119,    0,    0,    0, 
    452     0,    0,  188,  214,    0,  364,    0,  371,  370,  369, 
    453   426,  427,    0,  435,  488,    0,    0,    0,   45,    0, 
    454   541,  543,  542,  353,    0,    0,  328,    0,    0,  563, 
    455     0,    0,  175,    0,  116,    0,    0,    0,  524,    0, 
    456     0,    0,    0,  201,  176,    0,  373,  372,    0,    0, 
    457     0,    0,    0,    0,    0,    0, 
    458 }; 
    459 short fortrandgoto[] = {                                       1, 
    460   262,  263,   91,  286,  598,  353,  927,  928,  742,  743, 
    461   512,  710,  711,  287,  242,  146,  313,  222,   92,   93, 
    462    94,   95,   96,   97,   98,  189,  190,  191,  553,  843, 
    463   192,  722,  280,  311,  193,  194,  542,  599,  195,  356, 
    464   196,  197,  385,  386,  387,  893,  723,  198,  199,  640, 
    465   814,  815,  816,  395,  396,  205,  211,  724,  663,  645, 
    466   200,  357,  713,  422,  910,  433,  100,   10,  276,   11, 
    467   101,   12,  143,   13,   14,  102,  103,  277,  104,  105, 
    468   106,  107,    0,  108,  776,  255,  215,  245,  109,  110, 
    469   111,  112,  113,  114,  115,  116,  117,  478,  208,  118, 
    470   293,  498,  479,  483,  209,  428,  503,  264,  289,  294, 
    471   119,  297,  120,  300,  121,  839,  122,  304,  305,  252, 
    472   505,  265,  953,  272,  123,  308,  124,  544,  737,  509, 
    473   499,  500,  641,  954,  125,  126,  441,  683,  449,  452, 
    474   127,  128,  202,  129,  320,  554,  130,  228,    0,  131, 
    475   325,  132,  133,  134,  135,  136,  274,  137,  329,  561, 
    476   562,  138,  563,  225,  139,  332,  140,  345,  141,  235, 
    477     0,    0,    0,  582,  583,  346,  587,    0,  568,  347, 
    478   570,  571,  349,  584,  585,  763,    0,  443,  444,    0, 
    479     0,    0, 
    480 }; 
    481 short fortransindex[] = {                                      0, 
    482   121,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    483 27287, -307,    0,    0,    0,    0,    0, -289, -289,    0, 
    484   111,    0,    0,25188,  118, 1476,  147,  153,    0,25188, 
    485    91,  107, 1476,  163,    0,   27,    0,  -13,25188,    0, 
    486     0, -250, -178,   27,    0,  208,    0,    0,    0,    0, 
    487     0,  -14,  215,  229,    0,    0,  201,  201, -151,    0, 
    488   244,    0,    0, -237,    0,    0,  -89,   27,   27,    0, 
    489  -100,    0,    0, -101,    0,   27,    0,    0,    0,    0, 
    490     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    491   284,   35,   27,   27,   27,    0,  290,  134,  280,    0, 
    492    79,    0,    0,    0,   -5, -307,    0,  138,   -9,  387, 
    493   388,    0,    0,    0,    0,    0,    0,   42, -117,  404, 
    494   387, -110,  225, -312,   43,    0,    0, 3999,   54,25188, 
    495    41,    0,    0,    0, 1476,  420,  425,   59,  437,25721, 
    496   437,    0,    0,    0,    0,    0,  444,25188,25188,    0, 
    497     0,25188,  446,  448,  450,25188,25188,25188,  455,  456, 
    498   466,  478,  480,  486,  487,  497,  503,  504,  509,  513, 
    499 25188,  515,  524,  528,  532,  533,25241,    0,    0,  539, 
    500     0,    0,    0,    0,    0,    0,    0,25188,   18,  149, 
    501   542,25188,    0,  548,    0,  553,    0,  563,    0,    0, 
    502  8597,  115,25188,    0,    0, 8597,  190,  570,    0,25188, 
    503     0, 8597,  558,    0,  222,    0,  222,    0,25188,    0, 
    504     0,    0,    0,25188,    0,25903,    0,    0,    0,    0, 
    505   190,    0,    0,25380,    0,  190,  190,  222, 3040,    0, 
    506   224,  190,    0,25188,  609,    0,    0,    0,    0,    0, 
    507     0,  610,    0,    0,  201,    0,    0,  255, 1930,  603, 
    508     0,  651,    0, -289,    0,    0,    0,    0,  283,25428, 
    509  -312,    0,    0,  665,27287, -307,    0,    0,    0,    0, 
    510     0,    0, -289,  648,  296,  675,    0,    0,   19,  308, 
    511    19,  -12,   86,  -11,  665,  308,    0,  190,   19,    0, 
    512   313,  665,  318,  692,    0,  -10, 3093,    0,24098,    0, 
    513   703,    0,  711,    0,  717,  732,    0,    0,  387,  190, 
    514  8597,25188,25188,  190,    0,    0,  360, 4498,    0,    0, 
    515 25685,    0,    0,    0,    0,25188,25188,25188,25188,  740, 
    516 25685,  149,  553, 1423,    0,  764,  209,    0, 9398,25241, 
    517     0,    8,  535,25936, 3157,  236, 8597,25188,25188,25188, 
    518   281,26019,  461,25188,25188,25188,25188,25188,25188,25188, 
    519 25188,25188,25188,25188,25188,26043,25188,25188,25188,25188, 
    520 25188,25241,    0,  781,  451,  786,  789,    0, 8597,25188, 
    521   790,26094,    0,25188,    0,    0,    0,    0,   48,    0, 
    522   190,    0,24299,25188,25188,25188,25188,25188,25188,25188, 
    523 25188,25188,25188,25188,25188,25188,25188, 2012,25188,24438, 
    524 24486,    0,25188,25188,    0,26169,  665,  475,  147,26191, 
    525     0,    0,  791,  791,26213,27040,    0,  796,  553,  563, 
    526   793,  801,    0,    0,  798,  256,  799,  796,  797,    0, 
    527     0,  568,  791,    0,    0,    0,    0,    0,    0,    0, 
    528     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    529     0,    0,    0,    0,    0,    0,    0,  800,    0,  571, 
    530     0, 8597,  577,  802,  428,   27,  665,    0,    0,  665, 
    531     0,  807,    0,    0,    0,    0,    0,    0,  119,    0, 
    532     0,    0,    0,  444,  436,    0,24627, 8597,    0,  819, 
    533  2554,  665,    0,    0,    0,    0,  444,25188,  599,  296, 
    534   387,    0,  387,  233,25188,    0,  447,  449,  233,    0, 
    535     0,    0,  387,  665,    0,  692,  318,    0, 3093,    0, 
    536 24251,  817, 8597,  824,24675,    0,    0, -225,  190,  190, 
    537     0,    0,  806,    0, 8597, 8597,    0,    0,  445, 8597, 
    538   827,  826,    0,    0,    0, 9456, 9398,  605,  100,    0, 
    539     0, 8597, 8597, 8597, 8597,25188,  333, 1423,  538,  553, 
    540  8597,    0,  828,    0, 8597, 1423,    0, 9398, 9398, 9398, 
    541  9398, 9398,  598,    0,    0,    0,    0,  614,    0,  833, 
    542  1476,25188,    0,  618,  619,26276,    0,    0,    0,26327, 
    543 26349,26446,26468,26509,26582,26604,26626,26701,26742,26764, 
    544 26859,    0,  626,  634,  636,  638,  642,  831,  834,  835, 
    545 26881,25241,    0,25241,25241,  644,25188,    0,  822,  840, 
    546 24813,  553,  841,25188,    0, 8597, 2081, 2081, 2226, 2226, 
    547  3157,   84,   84,   84,   84,   84,   84,   90,   90,   48, 
    548 25188,25188,    0, 8597,   48,25188,   84,25188,   84, 8597, 
    549  8597,    0,    0,  190,    0,    0,    0,  468,  551,25188, 
    550 24813, -278,  845,    0,    0,    0, -278,  846,  190,    0, 
    551  3040,    0,25188,    0,25188,    0,    0,  852,    0, -170, 
    552  1930,  843,  485,    0,  665,  864,    0,25188,    0,  646, 
    553     0, 6917,    0,    0,    0, 8597,    0,    0,  318,  308, 
    554     0,  321,  550,  635,26934,  643,  870,    0,  645,  190, 
    555   852,    0,  878,24675,  817,  506,    0,    0,    0,  862, 
    556   547,  880,    0,  793,  797,25188,  665,    0,    0, 4498, 
    557     0,    0,24813,  631,  544,25685,    0,    0, 8597,    0, 
    558   656,    0, 8597, 8597, 1423, 8597,  828,  250,  598,  598, 
    559   598,   38,   -1,    0,   10,    0,    0, 8597,    0,    0, 
    560     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    561     0,    0,    0,    0,    0,    0,    0,    0,25563,25563, 
    562 25563,    0,    0, 8597,    0, 8597,    0, 8597,    0,  885, 
    563 25188,    0,24866,    0,  883,    0, 7337,  548,   84,   84, 
    564    48,   84,   84,  665,    0,    0,26997,  658,  867,    0, 
    565     0,    0,    0,    0,    0, 8597,  660,25616,    0,    0, 
    566     0,    0,  891,    0,    0,  665,  852,    0, 8597, 2554, 
    567     0,25005,  692,    0,  149,  233,  233,  233,  233,  233, 
    568     0,    0,  233,    0,    0,    0,    0,  817,    0,24675, 
    569    28,  516,  517,  894,  895,27113,  665,    0,  896,24169, 
    570   190,    0,  209,    0, 2501, 8597,    0,    0,    0,    0, 
    571   662,  879,  898,  900,  902,    0,  903,25188, 7757,24813, 
    572 25188,    0,    0,  904,    0,  190,    0,25053, 8597,    0, 
    573     0,  852,    0,    0, 8597,    0,    0,  184,  184,  906, 
    574   491,  677,    0,    0,  573,    0,  917,    0,    0,    0, 
    575     0,    0,25188,    0,    0,  801,  909, 8597,    0,25188, 
    576     0,    0,    0,    0, 8597,25188,    0, 8177,25188,    0, 
    577   927,    0,    0,  911,    0,  557,  559,27166,    0,27187, 
    578  8597,25188, 8597,    0,    0,25188,    0,    0,25188,25188, 
    579  8597, 8597, 8597,27272,25188, 8597, 
    580 }; 
    581 short fortranrindex[] = {                                      0, 
    582  5433,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    583   223,23906,    0,    0,    0,    0,    0,    0,    0,    0, 
    584     0,    0,    0,    0,    0,    0,    0,    0,    0,23602, 
    585   560,  560,    0,    0,    0,    0,    0,    0,    0,    0, 
    586     0,22995,    0,    0,    0,    0,    0,    0,    0,    0, 
    587     0,    0,    0,    0,    0,    0,  560, 3577,    0,    0, 
    588     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    589     0,    0,    0,   25,    0,    0,    0,    0,    0,    0, 
    590     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    591 18370,  579,    0,    0,    0,    0,    4,  -15,   52,    0, 
    592 23145,    0,    0,    0,    0,23906,    0,    0,    0, 5953, 
    593 13515,    0,    0,    0,    0,    0,    0,    0,18586,13666, 
    594   580,    0,   11,    0,    0,    0,    0,    0,23298,    0, 
    595     0,    0,    0,    0,    0,18739,18890,    0,    0,    0, 
    596     0,    0,    0,    0,    0,    0,16959,    0,    0,    0, 
     1329     339,   340,     0,   347,   350,   349,   342,   343,   344,   341, 
     1330       0,   402,   250,   247,     0,   279,   316,   318,   315,   281, 
     1331     314,   280,   351,   249,     0,     0,   356,   357,   428,     0, 
     1332      69,   101,     0,   355,   426,     0,   150,     0,   148,     0, 
     1333     427,     0,   414,   413,   392,   535,     0,   537,     0,   416, 
     1334     407,    35,   383,     0,   469,   467,     0,   455,     0,     0, 
     1335       0,     0,   162,     0,     0,   138,     0,    53,   172,   173, 
     1336     158,   143,   144,   170,   169,   234,   235,   108,    72,    52, 
     1337      30,    15,    25,     0,    11,    39,    22,    12,     0,     0, 
     1338      55,   166,   127,   164,     0,   125,     0,   236,   120,   125, 
     1339     165,   137,     0,   165,     0,     0,     0,   236,   154,   159, 
     1340       0,     0,     0,   112,    50,     0,   177,   174,   209,   210, 
     1341       0,     0,     0,   179,     0,     0,   178,     0,    16,   236, 
     1342     367,   362,    37,   381,   380,   382,   164,   408,   406,     0, 
     1343       0,     0,   420,     0,   441,   438,   443,   429,     0,   451, 
     1344     503,   504,   483,     0,     0,     0,     0,   338,     0,   490, 
     1345     491,   452,   457,   461,     0,   482,     0,   453,   389,     0, 
     1346       0,   431,   385,     0,    34,     0,   284,   277,     0,     0, 
    5971347    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    5981348    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1349       0,     0,     0,     0,     0,   527,   517,   249,     0,   519, 
     1350     518,     0,     0,   247,     0,     0,     0,     0,     0,     0, 
     1351       0,     0,     0,     0,     0,     0,     0,     0,     0,   308, 
     1352       0,     0,     0,   282,   283,     0,   354,   319,   317,   317, 
     1353     345,   348,   346,   352,     0,     0,   393,     0,     0,   236, 
     1354       0,     0,   109,   152,   151,   149,     0,     0,   551,     0, 
     1355     542,   431,   539,   547,   538,   543,   341,   247,   314,   541, 
     1356     545,   547,   549,     0,    67,    74,    75,    78,    73,    79, 
     1357      76,    81,    82,    83,    84,    85,    80,    86,    87,    88, 
     1358      89,    90,    91,    92,    93,    94,    95,    77,    96,    97, 
     1359      68,     0,   139,     0,   106,     0,     0,     0,    10,    17, 
     1360      40,    13,     0,     0,     0,   135,     0,    70,     0,     0, 
     1361     135,   123,   164,     0,   126,   121,   141,   164,   236,   236, 
     1362     164,   161,     0,   155,   220,   222,   236,   224,     0,   226, 
     1363     227,   228,   229,   230,     0,   218,   221,   216,    40,   174, 
     1364     110,     0,     0,   212,   207,   211,   181,   184,     0,   338, 
     1365       0,   213,     0,   203,   205,     0,   180,   236,     0,    14, 
     1366     412,   552,   405,     0,   436,   437,   431,   435,     0,   447, 
     1367       0,   442,   445,   473,   474,     0,   314,     0,   470,   472, 
     1368     488,   498,   501,   500,   499,     0,   472,   507,   514,   508, 
     1369     514,   459,   458,   514,   505,   507,   460,     0,     0,     0, 
     1370       0,     0,   496,   454,     0,     0,    49,    48,    41,     0, 
     1371      46,    43,     0,     0,   252,     0,     0,     0,   251,   258, 
     1372     255,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1373       0,     0,     0,   272,     0,     0,     0,     0,     0,     0, 
     1374     247,     0,     0,     0,   324,     0,     0,     0,   248,     0, 
     1375       0,   313,   307,   302,   292,   303,   304,   305,   301,   291, 
     1376     297,   299,   293,   295,   287,   288,   289,     0,     0,   309, 
     1377     306,   290,     0,   296,     0,   294,   323,     0,   325,     0, 
     1378       0,   403,   404,   394,     0,   103,   104,   102,    66,     0, 
     1379       0,     0,   317,     0,     0,   466,   468,   465,     0,     0, 
     1380       0,   378,     0,   163,     0,    99,     0,   171,    51,    31, 
     1381     168,    54,   167,     0,   118,     0,   136,     0,     0,   127, 
     1382     129,     0,   125,   241,   245,     0,   238,   240,   246,     0, 
     1383     198,   198,     0,   160,   223,     0,     0,     0,   111,     0, 
     1384     236,   208,     0,     0,   213,   186,     0,   189,     0,   204, 
     1385     432,     0,     0,   363,   368,     0,   236,   448,   440,     0, 
     1386       0,   478,   479,   317,   475,     0,   463,   464,   502,   464, 
     1387       0,   515,   511,   512,   507,   509,   462,   497,   493,   494, 
     1388     495,   492,   547,   547,     0,    42,     0,    33,   386,   278, 
     1389     253,   254,   257,   261,   262,   263,   264,   265,   260,   266, 
     1390     267,   268,   269,   270,   271,   273,   274,   275,   276,   256, 
     1391     248,     0,     0,     0,   520,   521,   524,   525,   522,   523, 
     1392     259,   247,   312,   310,   311,   300,   298,   354,   337,   329, 
     1393     326,   327,   330,   320,   322,   236,   153,   390,     0,     0, 
     1394       0,   540,   376,   546,   377,   550,    98,   107,     0,   115, 
     1395     135,   135,   135,   135,   135,   130,   128,   135,   117,   122, 
     1396     243,     0,   237,   242,   140,     0,   146,   147,   156,   232, 
     1397     233,   231,     0,   219,   217,   236,   198,   185,   213,   187, 
     1398       0,   206,     0,     0,     0,     0,   236,   446,   489,     0, 
     1399       0,     0,   471,   472,   507,   514,   516,   506,     0,     0, 
     1400      47,    44,     0,   338,     0,     0,     0,   361,     0,     0, 
     1401     335,   336,     0,   321,   105,     0,   544,     0,   100,   119, 
     1402     131,   132,   133,   134,     0,   239,   244,   246,     0,   199, 
     1403     200,   225,   198,   358,   188,   214,   374,   364,   365,   371, 
     1404     370,   369,     0,   433,   477,   476,     0,   510,   424,   425, 
     1405      45,     0,   530,   532,   531,   353,   334,     0,   331,   328, 
     1406       0,   548,   116,     0,   358,   175,     0,     0,     0,   409, 
     1407     513,     0,   333,     0,   536,   201,   176,     0,   373,   372, 
     1408       0,     0,   332,   359,   410,   533,     0,   534 
     1409}; 
     1410 
     1411/* YYDEFGOTO[NTERM-NUM].  */ 
     1412static const yytype_int16 yydefgoto[] = 
     1413{ 
     1414      -1,     1,    11,    94,    95,    96,   261,    12,   262,    13, 
     1415      18,    15,    97,    98,   148,    14,    99,   266,   354,   777, 
     1416     599,   600,   100,   257,   479,   480,   247,   210,   211,   428, 
     1417     483,   217,   294,   295,   101,   102,   273,   703,   103,   104, 
     1418     278,   274,   704,   705,   105,   106,   281,   107,   108,   109, 
     1419     110,   111,   434,   112,   113,   288,   289,   244,   276,   270, 
     1420     271,   114,   254,   115,   531,   296,   530,   116,   117,   303, 
     1421     540,   118,   119,   120,   856,   919,   306,   543,   300,   541, 
     1422     737,   297,   524,   525,   862,   526,   504,   715,   716,   717, 
     1423     357,   192,   358,   193,   194,   413,   660,   642,   195,   668, 
     1424     196,   197,   198,   199,   670,   820,   821,   822,   200,   201, 
     1425     202,   422,   417,   214,   208,   955,   956,   203,   122,   123, 
     1426     311,   743,   744,   928,   929,   124,   125,   126,   127,   128, 
     1427     204,   129,   552,   317,   224,   230,   130,   131,   132,   309, 
     1428     133,   134,   322,   135,   325,   560,   136,   137,   561,   562, 
     1429     138,   139,   581,   341,   586,   329,   237,   567,   568,   140, 
     1430     343,   141,   142,   344,   570,   346,   582,   583,   584,   762, 
     1431     388,   389,   390,   894,   227,   143,   443,   444,   445,   451, 
     1432     684,   453,   144,   553 
     1433}; 
     1434 
     1435/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 
     1436   STATE-NUM.  */ 
     1437#define YYPACT_NINF -702 
     1438static const yytype_int16 yypact[] = 
     1439{ 
     1440    -702,   921,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1441    -702,  -702,   -59,  5446,  -702,  -702,  -702,  -702,  -702,  -702, 
     1442    -702,   -24,   -24,  -702,    -3,  -702,  -702,  4703,     3,  2638, 
     1443      49,    56,  -702,  4703,    37,    38,  2638,   146,  -702,   -93, 
     1444    -702,  -110,  4703,  -702,  -702,    43,    48,   -93,  -702,   148, 
     1445    -702,  -702,  -702,  -702,  -702,   185,   156,   158,  -702,  -702, 
     1446     164,   164,    79,  -702,   171,  -702,  -702,   -51,  -702,  -702, 
     1447      -7,   -93,   -93,  -702,    75,  -702,  -702,    53,  -702,   -93, 
     1448    -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1449    -702,  -702,  -702,  -702,   179,  -702,  -702,   224,  -702,   130, 
     1450    -702,   -81,   186,   136,   149,  -702,   138,  -702,   360,   363, 
     1451    -702,  -702,   172,   150,  -702,  -702,   145,   -19,    16,    29, 
     1452     370,   395,  -702,   231,   -59,   -93,  -702,   -93,   -93,  -702, 
     1453     230,  4703,  -702,    27,   405,  -702,   233,   241,  2638,  -702, 
     1454     236,  2722,   236,  -702,  5702,  -702,  -702,  -702,  -702,   253, 
     1455    4703,  4703,  -702,  -702,  4703,   256,   257,   266,  4703,  4703, 
     1456    4703,   267,   271,   277,   289,   292,   298,   304,   312,   313, 
     1457     314,   315,   317,  4703,   318,   328,   329,   330,   331,  4831, 
     1458    -702,  -702,   334,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1459    4703,  2443,  -702,  -702,  4703,   244,  -702,   335,   343,  -702, 
     1460     344,   359,   228,  -702,    58,  4703,  -702,  2443,  -702,   362, 
     1461     529,  -702,  4703,  2443,  -702,   536,  -702,   372,  -702,   372, 
     1462    -702,  4703,  -702,  -702,  -702,  -702,  4703,  -702,  1425,  -702, 
     1463    -702,  -702,  -702,   362,  -702,  -702,  4959,  -702,   362,   362, 
     1464     372,  3079,  -702,   373,   362,  -702,  4703,   541,  -702,  -702, 
     1465    -702,  -702,  -702,  -702,   544,  -702,  -702,   164,  -702,  -702, 
     1466    5446,  -702,   -59,   -24,  -702,  -702,  -702,  -702,   548,   390, 
     1467     563,  -702,    60,    28,   333,   408,   159,   399,  -702,   408, 
     1468     362,  -702,   159,  -702,   410,   412,   159,   399,   571,  -702, 
     1469     413,   445,   581,  -702,  -702,   -24,   583,  -702,  3039,  -702, 
     1470     404,   147,  3935,  -702,  5087,   -19,  -702,   411,  -702,   399, 
     1471    -702,   586,  -702,  -702,  -702,  -702,   360,   362,  2443,  4703, 
     1472    4703,   362,  -702,   414,  4063,  -702,  -702,  -702,  2588,  -702, 
     1473    -702,  -702,  -702,  4703,  4703,  4703,  4703,   587,  2588,   244, 
     1474     359,  -702,  1096,   588,   403,   580,  2852,  4831,  -702,   416, 
     1475     417,  -702,  -702,    17,   567,  1446,  2556,  2443,    23,  4703, 
     1476    4703,  4703,    42,  1469,    52,  4703,  4703,  4703,  4703,  4703, 
     1477    4703,  4703,  4703,  4703,  4703,  4703,  4703,  1491,  4703,  4703, 
     1478    4703,  4703,  4703,  4831,  2443,  1512,   722,  -702,   461,   595, 
     1479     604,  4703,  1548,   607,  3423,  4703,  4703,  4703,  4703,  4703, 
     1480    4703,  4703,  4703,  4703,  4703,  4703,  4703,  4703,  4703,  3167, 
     1481    4703,  3551,  3679,  -702,    19,   362,  4703,  -702,  -702,  -702, 
     1482    -702,  -702,  -702,  -702,  4703,  4703,  -702,  1570,    65,   399, 
     1483      49,  1694,  -702,  -702,   608,   608,  1752,   791,  -702,   244, 
     1484     -54,    22,   425,   612,  -702,  -702,   436,   437,     8,    22, 
     1485    -702,   616,  -702,    70,   608,  -702,  -702,  -702,  -702,  -702, 
     1486    -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1487    -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1488     617,   597,  -702,    74,  2443,   443,   454,   -93,  -702,  -702, 
     1489     253,  -702,  4703,    76,   390,   260,  4703,  -702,   455,   457, 
     1490     260,  -702,   360,  2489,  -702,  -702,  -702,   360,   399,   399, 
     1491     360,  -702,   413,   571,  -702,  -702,   399,  -702,   449,  -702, 
     1492    -702,  -702,  -702,  -702,   356,  -702,  -702,  -702,   253,  -702, 
     1493    -702,   460,  4191,  -702,  -702,  2443,  -702,  -702,  3935,  3295, 
     1494     452,   630,  4319,  -702,  2443,   462,  -702,   399,    33,  -702, 
     1495    -702,  -702,  -702,   629,  2443,  2443,  -702,  -702,   467,  2443, 
     1496     464,   642,  -702,  -702,  -702,  2852,  3807,    78,  -702,   106, 
     1497    -702,  2443,  2443,  2443,  2443,  4703,   308,  5572,  2443,   244, 
     1498    1773,  -702,   643,  2443,  -702,  5572,  -702,  2852,  2852,  2852, 
     1499    2852,  2852,   623,  -702,   362,   362,  -702,  -702,  -702,    86, 
     1500    -702,   471,  2638,  4703,  -702,    87,    89,  1794,  -702,  -702, 
     1501    -702,  1815,  1836,  1876,  1897,  1939,  2018,  2079,  2121,  2142, 
     1502    2163,  2200,  2221,  -702,    90,    92,    93,    94,    98,  2261, 
     1503     648,   649,   650,  4831,  -702,  4831,  4831,   103,  -702,  4703, 
     1504    4703,  2443,  -702,  2460,  2460,  2481,  2481,  2556,  2577,  2577, 
     1505    2577,  2577,  2577,  2577,   119,   119,    19,  4703,  4703,  2443, 
     1506    -702,    19,  4703,  2577,  4703,  2577,   244,   652,  2783,   477, 
     1507     478,  2443,  2443,  -702,   362,  -702,  -702,  -702,  -702,   490, 
     1508     576,  4703,  2783,    -8,   481,  -702,  -702,  -702,    -8,   482, 
     1509     362,  -702,  3079,  -702,  4703,  -702,  4703,  -702,  -702,  -702, 
     1510    2443,  -702,  -702,   639,    35,   387,  -702,  2345,   640,   486, 
     1511    -702,   646,   408,  4703,  -702,   104,  -702,  -702,  1325,   362, 
     1512     651,   651,   413,  -702,  -702,   264,   445,   662,  -702,   502, 
     1513     399,  -702,   492,  4191,   630,  -702,   504,  -702,   495,  -702, 
     1514    -702,   672,   552,   677,  -702,  4703,   399,  -702,  -702,  4063, 
     1515     513,  -702,  -702,  2783,   674,  2588,  -702,  -702,  2443,   680, 
     1516     105,  -702,  2443,  2443,  5572,  2443,   643,   547,   623,   623, 
     1517     623,   396,   612,   616,    20,  -702,   141,  -702,  -702,  2443, 
     1518    -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1519    -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1520    -702,  5215,  5215,  5215,  2443,  -702,  2443,  -702,  2443,  -702, 
     1521    -702,   514,  2577,  2577,    19,  2577,  2577,  4703,  2911,  1360, 
     1522     698,  -702,  -702,   335,  -702,   399,  -702,  -702,  2403,   109, 
     1523     697,  -702,  -702,  -702,  -702,  -702,  -702,  2443,   111,  -702, 
     1524     260,   260,   260,   260,   260,   359,  -702,   260,  -702,  -702, 
     1525    2443,  2489,  -702,  4447,  -702,  5343,  -702,  -702,   571,  -702, 
     1526    -702,  -702,   523,  -702,  -702,   399,   651,  -702,   630,  -702, 
     1527    4191,  -702,   -47,   535,   538,  1171,   399,  -702,  -702,   744, 
     1528     525,   362,  -702,   403,  5613,  2443,  -702,  -702,   530,   531, 
     1529    -702,  -702,   116,   704,   532,   533,   534,  -702,   537,  4703, 
     1530    1382,  4703,  2783,  -702,  -702,   712,  -702,   362,  -702,  -702, 
     1531      10,    10,   528,   115,   695,  -702,  -702,  2443,  4575,  -702, 
     1532    2443,  -702,   651,   715,  -702,  -702,   598,  -702,   718,  -702, 
     1533    -702,  -702,  4703,  -702,  -702,   425,   543,  2443,  -702,  -702, 
     1534    -702,  4703,  -702,  -702,  -702,  -702,  2443,  4703,  1404,  -702, 
     1535    4703,  -702,  -702,   554,   715,  -702,   723,   572,   573,  1194, 
     1536    -702,  1280,  2443,  4703,  2443,  -702,  -702,  4703,  -702,  -702, 
     1537    4703,  4703,  2443,  2443,  2443,  1303,  4703,  2443 
     1538}; 
     1539 
     1540/* YYPGOTO[NTERM-NUM].  */ 
     1541static const yytype_int16 yypgoto[] = 
     1542{ 
     1543    -702,  -702,  -702,  -702,   503,  -702,     2,  -702,   740,  -702, 
     1544     -49,   756,  -702,  -702,    -1,     5,  -702,  -702,  -407,  -702, 
     1545      -5,     4,  -702,  -702,    85,  -702,  -702,  -702,   349,  -702, 
     1546      84,   -11,  -702,  -702,  -702,  -702,  -702,  -482,  -702,  -702, 
     1547    -265,   282,  -402,  -702,  -702,  -702,  -702,  -702,  -702,  -702, 
     1548    -702,  -702,   173,  -702,  -702,  -278,   270,   -39,   -21,   515, 
     1549     291,  -702,  -702,  -702,   258,  -702,  -702,  -702,  -702,  -702, 
     1550     245,  -702,  -702,  -702,  -701,  -702,  -702,  -702,   483,  -290, 
     1551    -687,  -702,  -702,    63,  -702,   709,  -282,  -702,   -58,   -61, 
     1552     -27,  -176,   -80,  -154,  -323,  -532,  -702,  -702,  -128,  -702, 
     1553    -702,  -702,  -204,  -702,   377,   121,   -92,    64,   178,   -87, 
     1554    -702,  -702,  -198,  -399,   -29,  -143,  -702,  -163,  -702,  -702, 
     1555    -702,  -702,   -56,  -702,  -139,  -702,  -702,  -702,  -702,  -702, 
     1556    -702,  -702,  -702,  -702,   -12,  -702,  -702,  -702,   676,   265, 
     1557    -232,  -702,  -702,  -702,  -702,  -702,  -702,  -702,  -702,    73, 
     1558    -702,  -702,  -702,  -702,  -702,   254,  -702,  -702,    68,  -702, 
     1559    -702,  -702,  -702,  -275,   684,  -316,  -426,  -702,  -694,  -561, 
     1560     480,   446,  -372,  -648,   272,  -702,   237,  -201,  -702,   238, 
     1561    -421,  -702,  -702,  -702 
     1562}; 
     1563 
     1564/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If 
     1565   positive, shift that token.  If negative, reduce the rule which 
     1566   number is the opposite.  If zero, do what YYDEFACT says. 
     1567   If YYTABLE_NINF, syntax error.  */ 
     1568#define YYTABLE_NINF -508 
     1569static const yytype_int16 yytable[] = 
     1570{ 
     1571     191,   442,   207,   385,   423,   511,   213,   220,   534,   207, 
     1572     501,   632,   513,   339,   505,   228,   387,   667,   711,   763, 
     1573     857,   149,   765,   146,   219,   386,   603,   547,   591,   440, 
     1574     689,   283,   319,   843,   440,   232,   393,   450,   840,   301, 
     1575     596,   215,   215,   596,   410,   603,   761,   869,   761,   240, 
     1576     241,   761,   304,   569,   340,   603,   841,   842,   843,   251, 
     1577     252,   424,   425,   576,   741,   279,   225,   259,   674,   226, 
     1578     887,   592,   248,   690,   290,   312,   222,   694,   362,   494, 
     1579     364,   755,   447,   699,   495,   282,   249,   284,   268,   774, 
     1580     603,   286,   603,   603,   223,   603,   603,   603,   269,   242, 
     1581     264,   603,   267,   243,   318,   439,   603,   851,   884,   327, 
     1582     439,   207,   902,   313,   694,   314,   315,   830,    17,   774, 
     1583     250,   728,   926,   355,   356,   418,   587,   330,   331,   588, 
     1584     589,   590,   363,   255,   256,  -315,   841,   842,   843,   275, 
     1585     927,   280,   408,   409,   410,   147,   377,   676,   291,   292, 
     1586     298,   760,   384,   320,   895,   896,  -164,   299,  -164,   766, 
     1587    -164,    92,  -164,   392,   596,   923,   578,   414,   215,   242, 
     1588     242,   385,   706,   243,   243,   283,   150,   706,   427,   242, 
     1589     293,   924,   205,   243,   387,   431,   597,   419,   687,   597, 
     1590     887,   121,  -164,   386,   436,   302,  -164,   598,   844,   437, 
     1591     339,   682,   742,   604,   411,   412,   260,   385,   305,   384, 
     1592     339,  -314,   229,   489,   579,   497,   321,   231,   339,   484, 
     1593     387,   954,   608,   844,   216,   218,   720,   721,   209,   630, 
     1594     886,   886,   610,   886,   724,   212,   936,   502,   426,   496, 
     1595     245,   340,   731,   507,   253,   675,   487,   510,    92,   734, 
     1596     691,   340,   498,   591,   695,   580,   701,   263,   756,   340, 
     1597     591,   805,   490,   807,   809,   740,   775,   780,   491,   781, 
     1598     795,   535,   796,   797,   798,   535,   591,   544,   799,   605, 
     1599     606,   152,   153,   810,   852,   885,   757,   666,   265,   906, 
     1600     750,   908,   554,   555,   528,   550,   940,   559,   624,   625, 
     1601     626,   627,   628,   844,   411,   412,   571,   572,   573,   574, 
     1602     597,   637,   767,   768,   769,   770,   771,   549,   277,   287, 
     1603     384,   891,   351,   537,   937,   221,   538,   233,   587,   330, 
     1604     331,   588,   589,   590,   607,   238,   499,   239,   611,   612, 
     1605     613,   614,   615,   616,   617,   618,   619,   620,   621,   622, 
     1606     246,   888,   889,   761,   234,   272,   629,   500,   909,   726, 
     1607     727,   235,   442,   283,   236,   914,   285,   641,   643,   644, 
     1608     645,   646,   647,   648,   649,   650,   651,   652,   653,   654, 
     1609     655,   656,   659,   661,   663,   665,   421,   429,   393,   213, 
     1610     440,   440,   435,   307,   450,   342,   347,   671,   672,   308, 
     1611     310,   578,   859,   860,   861,   886,   316,   416,   323,   578, 
     1612     326,   441,   324,   454,   448,   328,   449,   452,   898,   588, 
     1613     589,   590,   482,   587,   330,   331,   588,   589,   590,   805, 
     1614     807,   809,   353,   415,   591,   359,   360,   339,   121,   910, 
     1615     911,   912,   913,   868,   858,   361,   365,   849,   866,   579, 
     1616     366,   591,   591,   591,   591,   591,   367,   579,   506,   339, 
     1617     339,   339,   339,   339,   876,   700,   439,   439,   368,   707, 
     1618     387,   369,   387,   387,   514,   698,   718,   370,   340,   440, 
     1619     883,   712,   831,   371,   440,   811,   719,   833,   759,   722, 
     1620     580,   372,   373,   374,   375,   551,   376,   378,   580,   556, 
     1621     340,   340,   340,   340,   340,   535,   566,   379,   380,   381, 
     1622     382,   535,   535,   391,   416,   392,   566,   706,   706,   706, 
     1623     706,   706,   418,   419,   706,   255,   256,   515,   420,   180, 
     1624     181,    92,   430,   587,   330,   331,   588,   589,   590,   754, 
     1625     432,   433,   481,   904,   485,   183,   184,   486,   758,   185, 
     1626     186,   187,   188,   492,   516,   439,   517,   518,   519,   268, 
     1627     439,   520,   521,   189,   522,   523,   494,   591,   330,   331, 
     1628     588,   589,   590,   778,   512,   207,   779,   277,   503,   508, 
     1629     925,   509,   287,   922,   536,   527,   529,   546,   578,   548, 
     1630     557,   585,   575,   634,   933,   594,   595,   601,   635,   393, 
     1631    -488,  -488,  -488,  -488,  -488,  -488,   804,   636,   806,   808, 
     1632     639,   679,   384,   812,   321,   683,   685,   686,   845,   688, 
     1633     692,   693,   696,   697,   708,   903,   709,   339,   725,   730, 
     1634     813,   814,   735,   736,   745,   815,   579,   816,   387,   387, 
     1635     387,   819,   739,   225,   748,   749,   764,   811,   590,   935, 
     1636     776,   801,   802,   803,   828,   819,   817,   823,   824,   826, 
     1637     827,   832,   834,   839,   847,   496,   864,   837,   340,   484, 
     1638     848,   865,   867,   870,   855,   871,   872,   580,   873,   394, 
     1639     874,   395,   396,   397,   398,   399,   850,   400,   401,   402, 
     1640     403,   404,   405,   878,   897,   406,   407,   408,   409,   410, 
     1641    -489,   902,   907,   921,   930,   934,   535,   742,   578,   941, 
     1642     938,   939,   942,   943,   944,   950,   844,   945,   875,   952, 
     1643    -360,   958,   559,   960,   957,   633,   879,  -247,   967,  -247, 
     1644    -247,  -247,  -247,  -247,   965,  -247,  -247,  -247,  -247,  -247, 
     1645    -247,   968,   926,  -247,  -247,  -247,  -247,  -247,   901,   394, 
     1646      16,   395,   396,   397,   398,   399,   579,   400,   401,   402, 
     1647     403,   404,   405,   488,   393,   406,   407,   408,   409,   410, 
     1648     145,   892,   441,   449,   804,   806,   808,   836,   890,   677, 
     1649     838,   710,   723,   732,   493,   702,   258,   729,   545,   863, 
     1650     213,   900,   916,   915,   681,   669,   394,   580,   395,   396, 
     1651     397,   398,   399,   829,   400,   401,   402,   403,   404,   405, 
     1652     949,   966,   406,   407,   408,   409,   410,   880,   931,   969, 
     1653     352,   746,   877,   882,   718,   345,   917,   593,   920,   631, 
     1654     747,   772,     0,   773,     0,     0,     0,     0,     0,     0, 
     1655       0,     0,     0,   535,     0,     0,     0,     0,     0,     0, 
     1656       0,     0,   825,     0,     0,     0,     0,     0,     0,   411, 
     1657     412,   449,     0,   881,     0,     0,   449,     0,   835,     0, 
     1658       0,     0,   946,     0,   948,   819,     0,     0,     0,     0, 
    5991659    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    600     0,    0,    0,    0,    0,    0,    0,    0, 1107, 2724, 
    601  1277,    0,    0, 1646,    0, 2894,    0, 1816,    0,    0, 
    602   125,    0,    0,    0,    0,19043,    0,19194,    0,    0, 
    603     0,13884,    0,    0,    0,    0,    0,    0,    0,    0, 
     1660       0,   392,     0,     0,     0,     0,     0,   854,     0,     0, 
     1661       0,     0,     0,     0,     0,   959,     0,  -247,  -247,     0, 
     1662       0,     0,     0,     0,   961,     0,     0,     0,     0,     0, 
     1663     962,     2,     3,   964,   638,     0,     0,     0,     0,   411, 
     1664     412,     0,     0,   566,     0,     0,   972,     0,     0,     0, 
     1665     973,     0,     0,   974,   975,     0,     0,     0,   -23,   977, 
     1666     -23,     0,     0,   -23,   -23,   -23,   -23,     4,     5,   -23, 
     1667       0,     0,   -23,   -23,   -23,     0,     0,     0,     0,   -23, 
     1668     -23,     0,     0,     0,     6,     7,   411,   412,     0,     0, 
     1669       0,     0,     0,     0,   -23,     0,     0,     0,   -23,   -23, 
     1670       0,     0,     0,   -23,     0,     0,     0,     0,     0,   -23, 
     1671       0,   -23,   -23,     0,   -23,     0,   -23,   -23,   -23,   -23, 
     1672     -23,     0,   -23,   -23,   -23,   -23,   -23,   -23,   -23,   -23, 
     1673     -23,   -23,   -23,   -23,   -23,   -23,   -23,   -23,     0,     0, 
     1674     -23,   -23,   -23,     0,   -23,   -23,   -23,     0,   -23,   -23, 
     1675     -23,     0,     0,   -23,     0,   -23,     0,     0,   -23,   -23, 
     1676     -23,   -23,     0,     0,   -23,   -23,   -23,     0,     0,   351, 
     1677       0,     0,   -23,     0,     0,     8,   -23,   -23,   -23,   -23, 
     1678     -23,   -23,   -23,     0,   -23,   -23,   -23,   -23,   -23,     0, 
     1679       0,   -23,     0,     0,     0,   951,     0,     0,   -23,   -23, 
     1680     -23,     0,     0,     0,     0,     0,     0,   -23,     9,  -507, 
     1681       0,  -507,     0,  -507,  -507,  -507,  -507,  -507,    10,  -507, 
     1682    -507,  -507,  -507,  -507,  -507,     0,     0,  -507,  -507,  -507, 
     1683    -507,  -507,     0,     0,     0,     0,     0,     0,     0,     0, 
     1684       0,     0,     0,     0,     0,   154,   155,     0,     0,     0, 
     1685     156,   157,   158,   159,     0,     0,     0,     0,     0,     0, 
     1686       0,     0,   160,   161,   162,   163,   164,   165,   166,     0, 
     1687     167,   168,   169,     0,     0,   170,   171,   172,     0,   173, 
     1688     174,   175,   176,   177,   932,   178,   394,     0,   395,   396, 
     1689     397,   398,   399,     0,   400,   401,   402,   403,   404,   405, 
     1690       0,     0,   406,   407,   408,   409,   410,   970,     0,   394, 
     1691       0,   395,   396,   397,   398,   399,     0,   400,   401,   402, 
     1692     403,   404,   405,     0,     0,   406,   407,   408,   409,   410, 
     1693       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1694       0,     0,     0,     0,     0,     0,     0,     0,   180,   181, 
     1695       0,     0,     0,     0,   182,     0,     0,     0,     0,     0, 
     1696       0,     0,     0,     0,   183,   184,     0,     0,   185,   186, 
     1697     187,   188,     0,     0,     0,    92,     0,     0,     0,     0, 
     1698       0,     0,   189,     0,     0,   577,     0,     0,     0,     0, 
     1699       0,  -507,  -507,   971,     0,   394,     0,   395,   396,   397, 
     1700     398,   399,     0,   400,   401,   402,   403,   404,   405,     0, 
     1701       0,   406,   407,   408,   409,   410,   976,     0,   394,     0, 
     1702     395,   396,   397,   398,   399,     0,   400,   401,   402,   403, 
     1703     404,   405,     0,     0,   406,   407,   408,   409,   410,   853, 
     1704     394,     0,   395,   396,   397,   398,   399,     0,   400,   401, 
     1705     402,   403,   404,   405,     0,     0,   406,   407,   408,   409, 
     1706     410,     0,     0,     0,     0,     0,   411,   412,     0,     0, 
     1707       0,     0,     0,     0,   901,   394,     0,   395,   396,   397, 
     1708     398,   399,     0,   400,   401,   402,   403,   404,   405,   411, 
     1709     412,   406,   407,   408,   409,   410,   947,   394,     0,   395, 
     1710     396,   397,   398,   399,     0,   400,   401,   402,   403,   404, 
     1711     405,     0,     0,   406,   407,   408,   409,   410,   963,   394, 
     1712       0,   395,   396,   397,   398,   399,     0,   400,   401,   402, 
     1713     403,   404,   405,     0,     0,   406,   407,   408,   409,   410, 
     1714     394,     0,   395,   396,   397,   398,   399,     0,   400,   401, 
     1715     402,   403,   404,   405,     0,     0,   406,   407,   408,   409, 
     1716     410,   394,     0,   395,   396,   397,   398,   399,     0,   400, 
     1717     401,   402,   403,   404,   405,   411,   412,   406,   407,   408, 
     1718     409,   410,     0,     0,   394,     0,   395,   396,   397,   398, 
     1719     399,     0,   400,   401,   402,   403,   404,   405,   411,   412, 
     1720     406,   407,   408,   409,   410,     0,   394,     0,   395,   396, 
     1721     397,   398,   399,     0,   400,   401,   402,   403,   404,   405, 
     1722     411,   412,   406,   407,   408,   409,   410,  -250,     0,  -250, 
     1723    -250,  -250,  -250,  -250,     0,  -250,  -250,  -250,  -250,  -250, 
     1724    -250,     0,     0,  -250,  -250,  -250,  -250,  -250,     0,     0, 
     1725       0,     0,     0,     0,     0,   411,   412,     0,     0,     0, 
     1726       0,     0,     0,   394,     0,   395,   396,   397,   398,   399, 
     1727       0,   400,   401,   402,   403,   404,   405,   411,   412,   406, 
     1728     407,   408,   409,   410,     0,   394,     0,   395,   396,   397, 
     1729     398,   399,     0,   400,   401,   402,   403,   404,   405,   411, 
     1730     412,   406,   407,   408,   409,   410,     0,     0,     0,     0, 
     1731       0,     0,     0,     0,     0,   438,     0,     0,     0,     0, 
     1732     411,   412,     0,     0,     0,     0,     0,     0,     0,     0, 
     1733    0,    0,    0,    0,    0,    0,  602,    0,    0,    0, 
     1734       0,   411,   412,     0,     0,     0,     0,     0,     0,     0, 
     1735       0,     0,     0,     0,     0,     0,     0,     0,     0,   609, 
     1736       0,     0,     0,     0,   411,   412,     0,     0,     0,     0, 
    6041737    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1738       0,   623,     0,     0,     0,     0,   411,   412,     0,     0, 
    6051739    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    606     0,    0,    0,    0,19347,    0,    0,    0,    0,    0, 
    607     0,19498,    0,    0,   29,    0,    0,    0,    0,    0, 
    608     0,19651,    0,    0,    0,    0,    0,    0,    0,    0, 
    609     0,    0,    0,   24,  223,23906,    0,    0,    0,    0, 
    610     0,    0,    0,    0,    0,19802,    0,    0,    0,14035, 
    611     0,  954,  580,    0,  908,14035,    0,   30,    0,    0, 
    612     0,  908,    0,14191,    0,    0,    0,    0,  960,    0, 
    613     0,    0,19955,    0,    0,    0,    0,    0,20106,23449, 
    614 20259,    0,    0,    0,    0,    0,    0,  987,    0,    0, 
    615     0,    0,    0,    0,    0,    0,    0,    0,    0, 9631, 
    616     0,10472,10208, 5640,    0,20410,    0,10627,    0,23753, 
    617     0,    0,20563,    0, 6171,    0,  673,    0,    0,    0, 
     1740       0,     0,  -250,     0,     0,     0,     0,  -250,  -250,   394, 
     1741       0,   395,   396,   397,   398,   399,     0,   400,   401,   402, 
     1742     403,   404,   405,     0,     0,   406,   407,   408,   409,   410, 
     1743       0,     0,     0,     0,     0,     0,     0,     0,   638,     0, 
     1744       0,     0,     0,   411,   412,     0,     0,     0,     0,     0, 
    6181745    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1746     673,     0,     0,     0,     0,   411,   412,   394,     0,   395, 
     1747     396,   397,   398,   399,     0,   400,   401,   402,   403,   404, 
     1748     405,     0,     0,   406,   407,   408,   409,   410,   394,     0, 
     1749     395,   396,   397,   398,   399,     0,   400,   401,   402,   403, 
     1750     404,   405,     0,     0,   406,   407,   408,   409,   410,   394, 
     1751       0,   395,   396,   397,   398,   399,     0,   400,   401,   402, 
     1752     403,   404,   405,     0,     0,   406,   407,   408,   409,   410, 
     1753     394,     0,   395,   396,   397,   398,   399,     0,   400,   401, 
     1754     402,   403,   404,   405,     0,     0,   406,   407,   408,   409, 
     1755     410,   394,     0,   395,   396,   397,   398,   399,     0,   400, 
     1756     401,   402,   403,   404,   405,     0,     0,   406,   407,   408, 
     1757     409,   410,     0,     0,     0,     0,     0,     0,     0,     0, 
     1758       0,     0,     0,     0,   678,     0,     0,     0,     0,   411, 
     1759     412,   394,     0,   395,   396,   397,   398,   399,     0,   400, 
     1760     401,   402,   403,   404,   405,     0,     0,   406,   407,   408, 
     1761     409,   410,   394,     0,   395,   396,   397,   398,   399,     0, 
     1762     400,   401,   402,   403,   404,   405,     0,     0,   406,   407, 
     1763     408,   409,   410,     0,     0,     0,     0,     0,     0,     0, 
     1764       0,     0,   680,     0,     0,     0,     0,   411,   412,     0, 
     1765       0,     0,   420,     0,   394,     0,   395,   396,   397,   398, 
     1766     399,     0,   400,   401,   402,   403,   404,   405,   411,   412, 
     1767     406,   407,   408,   409,   410,     0,     0,     0,     0,     0, 
     1768       0,     0,     0,     0,   782,     0,     0,     0,     0,   411, 
     1769     412,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1770       0,     0,     0,     0,     0,   783,     0,     0,     0,     0, 
     1771     411,   412,     0,     0,     0,     0,     0,     0,     0,     0, 
     1772       0,     0,     0,     0,     0,     0,   784,     0,     0,     0, 
     1773       0,   411,   412,   394,     0,   395,   396,   397,   398,   399, 
     1774       0,   400,   401,   402,   403,   404,   405,     0,     0,   406, 
     1775     407,   408,   409,   410,     0,     0,     0,     0,     0,     0, 
     1776       0,     0,     0,     0,     0,     0,   785,     0,     0,     0, 
     1777       0,   411,   412,     0,     0,     0,     0,     0,     0,     0, 
     1778       0,     0,     0,     0,     0,     0,     0,   786,     0,     0, 
     1779       0,     0,   411,   412,   394,     0,   395,   396,   397,   398, 
     1780     399,     0,   400,   401,   402,   403,   404,   405,     0,     0, 
     1781     406,   407,   408,   409,   410,     0,     0,     0,     0,     0, 
     1782       0,     0,     0,     0,     0,     0,     0,     0,     0,   787, 
     1783       0,     0,     0,     0,   411,   412,   394,     0,   395,   396, 
     1784     397,   398,   399,     0,   400,   401,   402,   403,   404,   405, 
     1785       0,     0,   406,   407,   408,   409,   410,   394,     0,   395, 
     1786     396,   397,   398,   399,     0,   400,   401,   402,   403,   404, 
     1787     405,     0,     0,   406,   407,   408,   409,   410,   394,     0, 
     1788     395,   396,   397,   398,   399,     0,   400,   401,   402,   403, 
     1789     404,   405,     0,     0,   406,   407,   408,   409,   410,     0, 
     1790       0,     0,     0,     0,     0,     0,     0,     0,   788,     0, 
     1791       0,     0,     0,   411,   412,   394,     0,   395,   396,   397, 
     1792     398,   399,     0,   400,   401,   402,   403,   404,   405,     0, 
     1793       0,   406,   407,   408,   409,   410,   394,     0,   395,   396, 
     1794     397,   398,   399,     0,   400,   401,   402,   403,   404,   405, 
     1795       0,     0,   406,   407,   408,   409,   410,     0,     0,     0, 
     1796       0,     0,     0,     0,     0,     0,     0,     0,     0,   789, 
     1797       0,     0,     0,     0,   411,   412,   394,     0,   395,   396, 
     1798     397,   398,   399,     0,   400,   401,   402,   403,   404,   405, 
     1799       0,     0,   406,   407,   408,   409,   410,     0,     0,     0, 
    6191800    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    620     0,    0,    0, 4668,    0,17110,17263, 3263,    0,    0, 
    621 25786,    0,    0,  972,    0,    0,    0,    0, 3433,    0, 
     1801       0,   790,     0,     0,     0,     0,   411,   412,     0,     0, 
    6221802    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    623     0,    0,    0,    0,    0,    0,    0, 5271,    0,    0, 
    624     0,    0,    0,    0,    0,    0,  674,    0,    0,    0, 
    625     0,    0,20714,20867,    0,    0,    0,  165,    0,  510, 
    626   995,  679,    0,    0, 6497,  869, 9017,  526,  995,    0, 
    627     0,    0,21018,    0,    0,    0,    0,    0,    0,    0, 
     1803       0,     0,   791,     0,     0,     0,     0,   411,   412,     0, 
    6281804    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    629     0,    0,    0,    0,    0,    0,    0,21171,    0,    0, 
    630     0,  680,    0,    0,    0,    0,14404,    0,    0,  127, 
     1805       0,     0,     0,   792,     0,     0,     0,     0,   411,   412, 
     1806     394,     0,   395,   396,   397,   398,   399,     0,   400,   401, 
     1807     402,   403,   404,   405,     0,     0,   406,   407,   408,   409, 
     1808     410,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1809     793,     0,     0,     0,     0,   411,   412,     0,     0,     0, 
    6311810    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    632     0,    0,    0,21322,    0,    0,    0,   40,    0,    0, 
    633     0,   24,    0,    0,    0,    0,21322,    0,    0,    0, 
    634   580,    0,14555,  356,    0,    0,    0,    0,  356,    0, 
    635     0,    0,  580,14404,    0,14711,    0,    0,    0,    0, 
    636  5618, 1012,  708,    0,    0,    0,    0,    0,    0,    0, 
    637     0,    0,    0,    0,21475,21626,    0,    0,    0,  709, 
    638     0, 1013,    0,    0,    0,   63,    0,    0, 1014,    0, 
    639     0,12251,12465,12620,12834,    0, 1014,25857,17479, 4299, 
    640 14924,    0,21779,    0,14924, 5802,    0,    0,    0,    0, 
    641     0,    0,10891,    0,    0,    0,    0,    0,    0,21930, 
     1811       0,   794,     0,     0,     0,     0,   411,   412,   394,     0, 
     1812     395,   396,   397,   398,   399,     0,   400,   401,   402,   403, 
     1813     404,   405,     0,     0,   406,   407,   408,   409,   410,     0, 
    6421814    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1815       0,   800,     0,     0,     0,     0,   411,   412,   394,     0, 
     1816     395,   396,   397,   398,   399,     0,   400,   401,   402,   403, 
     1817     404,   405,     0,     0,   406,   407,   408,   409,   410,   397, 
     1818     398,   399,     0,   400,   401,   402,   403,   404,   405,     0, 
     1819       0,   406,   407,   408,   409,   410,     0,     0,     0,     0, 
     1820       0,     0,   399,   713,   400,   401,   402,   403,   404,   405, 
     1821       0,   151,   406,   407,   408,   409,   410,     0,     0,     0, 
     1822     152,   153,   714,     0,     0,     0,     0,     0,     0,     0, 
     1823       0,     0,     0,     0,     0,   846,     0,     0,   154,   155, 
     1824     411,   412,     0,   156,   157,   158,   159,     0,     0,     0, 
     1825       0,     0,     0,     0,     0,   160,   161,   162,   163,   164, 
     1826     165,   166,     0,   167,   168,   169,     0,     0,   170,   171, 
     1827     172,     0,   173,   174,   175,   176,   177,     0,   178,   400, 
     1828     401,   402,   403,   404,   405,     0,     0,   406,   407,   408, 
     1829     409,   410,     0,   905,     0,     0,     0,     0,   411,   412, 
     1830    -508,  -508,  -508,  -508,  -508,  -508,     0,     0,   406,   407, 
     1831     408,   409,   410,     0,     0,     0,     0,     0,     0,   330, 
     1832     331,   563,     0,   564,     0,     0,     0,     0,     0,     0, 
     1833     179,     0,     0,     0,     0,     0,     0,     0,   411,   412, 
     1834       0,   180,   181,     0,     0,     0,     0,   182,   333,   334, 
     1835     335,     0,     0,   336,     0,   411,   412,   183,   184,     0, 
     1836     151,   185,   186,   187,   188,     0,     0,     0,    92,   152, 
     1837     153,     0,     0,     0,     0,   189,   411,   412,   190,     0, 
     1838       0,     0,     0,     0,     0,     0,     0,   154,   155,     0, 
     1839       0,     0,   156,   157,   158,   159,     0,     0,     0,     0, 
     1840       0,     0,     0,     0,   160,   161,   162,   163,   164,   165, 
     1841     166,     0,   167,   168,   169,     0,     0,   170,   171,   172, 
     1842       0,   173,   174,   175,   176,   177,     0,   178,     0,     0, 
    6431843    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    644     0,    0,    0,    0,    0,    0,    0,27019,    0,    0, 
     1844     180,   181,     0,     0,     0,     0,     0,     0,     0,     0, 
     1845       0,   411,   412,   330,   331,   332,   183,   184,     0,     0, 
     1846     185,   186,   187,   188,     0,     0,     0,   337,     0,     0, 
     1847       0,     0,   411,   412,   189,     0,     0,   565,     0,   179, 
     1848       0,     0,   333,   334,   335,     0,     0,   336,     0,     0, 
     1849     180,   181,     0,     0,     0,     0,   182,   818,     0,     0, 
     1850       0,     0,     0,     0,     0,   151,   183,   184,     0,     0, 
     1851     185,   186,   187,   188,   152,   153,     0,    92,     0,     0, 
     1852       0,     0,     0,     0,   189,     0,     0,   190,     0,     0, 
     1853       0,     0,   154,   155,     0,   206,     0,   156,   157,   158, 
     1854     159,     0,     0,     0,     0,     0,     0,     0,     0,   160, 
     1855     161,   162,   163,   164,   165,   166,     0,   167,   168,   169, 
     1856       0,     0,   170,   171,   172,     0,   173,   174,   175,   176, 
     1857     177,     0,   178,     0,   180,   181,     0,     0,     0,     0, 
     1858       0,     0,     0,   330,   331,     0,     0,     0,     0,     0, 
     1859     183,   184,     0,     0,   185,   186,   187,   188,     0,     0, 
     1860       0,   337,     0,     0,     0,     0,     0,     0,   189,     0, 
     1861       0,   338,   333,   334,   335,     0,     0,   336,     0,     0, 
     1862       0,     0,     0,     0,   179,   899,     0,     0,     0,     0, 
     1863       0,     0,     0,   151,     0,   180,   181,     0,     0,     0, 
     1864       0,   182,   152,   153,     0,     0,     0,     0,     0,     0, 
     1865       0,   183,   184,     0,     0,   185,   186,   187,   188,     0, 
     1866     154,   155,    92,     0,     0,   156,   157,   158,   159,   189, 
     1867       0,     0,   190,     0,     0,     0,     0,   160,   161,   162, 
     1868     163,   164,   165,   166,     0,   167,   168,   169,     0,     0, 
     1869     170,   171,   172,     0,   173,   174,   175,   176,   177,     0, 
     1870     178,     0,     0,     0,   180,   181,     0,     0,     0,     0, 
    6451871    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    646  1021, 2185,    0,    0,    0,11727, 9782,10051, 9111, 9262, 
    647  6322, 6591, 6742, 7011, 7162, 7431, 7582, 4838, 5101, 3696, 
    648     0,    0,    0,11882, 3866,    0, 7851,    0, 8002,  164, 
    649   212,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    650  1025,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    651     0,    0,    0,    0,    0,    0,    0,17632,    0,    0, 
    652     0,    0,    0,    0,12989,    0,    0,  710,    0,    0, 
    653     0,  720,    0,    0,    0,15080,    0,    0,    0,14035, 
    654     0,    0,  795,    0,    0,    0,   16,    0,    0,    0, 
    655 17632,    0,    0,    0, 1012,    0,    0,    0,    0,    0, 
    656     0,22083,    0,  995,  995,    0,   24,    0,    0,    0, 
    657     0,    0,    0,  729,    0,    0,    0,    0,13203,  698, 
    658     0,    0,15293,15449, 5802,15662,22234,13358,11046,11309, 
    659 11464,12096,    0,    0,    0,    0,    0,  730,    0,    0, 
     1872     183,   184,     0,     0,   185,   186,   187,   188,     0,     0, 
     1873       0,   337,     0,     0,     0,     0,     0,     0,   189,     0, 
     1874       0,   565,     0,     0,     0,     0,     0,     0,     0,     0, 
     1875       0,     0,   179,     0,   532,     0,     0,     0,     0,     0, 
     1876       0,   151,     0,   180,   181,     0,     0,     0,     0,   182, 
     1877     152,   153,   533,     0,     0,     0,     0,     0,     0,   183, 
     1878     184,     0,     0,   185,   186,   187,   188,     0,   154,   155, 
     1879      92,     0,     0,   156,   157,   158,   159,   189,     0,     0, 
     1880     190,     0,     0,     0,     0,   160,   161,   162,   163,   164, 
     1881     165,   166,     0,   167,   168,   169,     0,     0,   170,   171, 
     1882     172,     0,   173,   174,   175,   176,   177,     0,   178,   455, 
     1883       0,     0,     0,   456,   457,   458,   459,     0,     0,     0, 
     1884       0,     0,     0,     0,     0,   460,   461,   462,   463,   464, 
     1885     465,   466,     0,   467,   468,   469,     0,     0,   470,   471, 
     1886     472,     0,     0,   473,   474,   475,   476,     0,   477,     0, 
    6601887    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    661     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    662     0,    0,    0,15818,    0,15974,    0,16130,    0,27293, 
    663  1028,    0,  737,    0, 1030,    0,  738, 2355, 8271, 8422, 
    664  4129, 8691, 8842,  674,    0,    0,    0,    0,    0,    0, 
    665     0,    0,    0,    0,    0,  742,    0,    0,    0,    0, 
    666     0,    0,    0,    0,    0,12989,16286,    0,  744,    0, 
    667     0,  749,16437,    0,  467,  356,  356,  356,  356,  356, 
    668     0,    0,  356,    0,    0,    0,    0, 1012,    0,    0, 
    669     0,    0,    0,    0,    0,    0,   24,    0,    0,    0, 
    670     0,    0,  750,    0,25857,14924,    0,    0,    0,    0, 
    671     0,  590,    0,    0,    0,    0,    0,    0,  751,    0, 
    672   768,    0,    0,    0,    0,    0,    0,    0,17848,    0, 
    673     0,16286,16655,    0,  720,    0,    0,   93,  146,   31, 
    674    44,    0,    0,    0,18001,    0,22387,    0,    0,    0, 
    675     0,    0,    0,    0,    0,  777,    0,16806,    0,    0, 
    676     0,    0,    0,    0,  778,    0,    0,  779,    0,    0, 
    677     0,16655,    0,    0,    0,    0,    0,22538,    0,    0, 
    678   783,    0,22691,    0,    0,    0,    0,    0,    0,    0, 
    679   788,18217,22842, 1031,    0, 1036, 
    680 }; 
    681 short fortrangindex[] = {                                      0, 
    682     0,    0,    0,  813,  303, -401,    0,  126,    0,  211, 
    683  -255,    0,  232,  565,  285,   -2,    0,  -23,    0,    0, 
    684     0,    0,    0,    0,    0,    0, -120,    7,    0,    0, 
    685  -328,    0,    0,  815, -135,    0, -305,  339, -152,  181, 
    686  -137,    0,  766,  736, -326, -686, -234, -220,    0,  718, 
    687   221,  438,  371, -189,    0,  -26, -371, -495,    0,    0, 
    688  -169,  -24,  273, -397,    0,  -98,    0,    0, 1117,    0, 
    689     0,    0,  -39,  -56, 1119,  865,    0,   53,    0,    0, 
    690     0,    0,    0,    0,    0,    0,   65,    0,    0,    0, 
    691     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    692     0, 1065,  452,  458,  716,    0,    0,    0,  -30,  627, 
    693     0, -277,    0,    0,    0, -667,    0, -281,  620,    0, 
    694   654,    0,  194,    0,    0,    0,    0,  608, -649,    0, 
    695     0,  457,    0,    0,    0, 1032,  612, -392,  613,    0, 
    696     0,    0,    0,    0,    0,    0,    0,    0,    0, -230, 
    697     0,    0,    0,    0,    0,    0,  602,    0,    0,    0, 
    698     0,    0,  412,  607,    0,  219,    0,    0,    0,    0, 
    699     0,    0,    0,    0, -408,    0,    0,    0,    0, -317, 
    700   414, 1033, -335, -688,    0, -522,    0, -226,    0,    0, 
    701     0,    0, 
    702 }; 
    703 #define YYTABLESIZE 27711 
    704 short fortrantable[] = {                                     201, 
    705   442,  206,  343,  546,  400,  212,  218,  388,  206,  450, 
    706   440,  592,  522,  569,  226,  440,  147,   99,  531,  342, 
    707   230,  536,  639,  577,  384,  234,  224,  525,  202,  539, 
    708   285,  593,  528,  729,   71,  391,  221,  926,  108,  530, 
    709   595,  383,  202,  191,  249,  250,  535,  191,  597,  595, 
    710   890,  595,  257,  740,  183,  630,  688,  394,  764,  127, 
    711   236,  191,  766,  866,  236,  243,  281,  236,  183,  266, 
    712   267,  268,  133,  133,  133,  133,  888,  324,  259,  589, 
    713   291,  447,   71,  205,  236,  869,  351,  134,  433,  299, 
    714   301,  433,  260,  439,  829,  526,  217,  205,  439,  338, 
    715   214,  322,  704,  338,  309,  321,  338,  420,  326,  421, 
    716   206,  310,  433,  894,  895,  715,  216,  142,  434,  240, 
    717   241,  238,  239,  354,  355,  417,  415,  145,  416,  288, 
    718     9,  417,  362,  246,  317,  131,  131,  131,   89,  453, 
    719   758,  589,  333,  420,  334,  421,  376,  247,  213,  420, 
    720   148,  421,  389,  240,  241,  425,  278,  203,  423,  282, 
    721   240,  241,  701,  392,  213,  402,  227,  399,  402,  761, 
    722   236,  673,  424,  271,  581,  270,  702,  767,  426,  913, 
    723   388,  762,  402,  762,  236,  430,  207,  762,  132,  132, 
    724   132,  741,  210,  343,  435,  721,  888,  384,  937,  436, 
    725   721,  314,  219,  343,  403,  433,  580,  403,  433,  389, 
    726   342,  343,  388,  427,  383,  840,  841,  842,  923,  482, 
    727   342,  403,   30,  579,  516,  859,  253,  254,  342,  628, 
    728   860,  698,   30,  592,  699,  735,  514,  438,  229,  739, 
    729   446,  592,  448,  451,  952,  508,  383,  231,  481,  755, 
    730   589,  333,  404,  334,  236,  404,  714,  592,  213,  524, 
    731   529,  504,  527,  642,  307,   89,  306,  202,  237,  404, 
    732   768,  769,  770,  771,  772,  150,  603,  151,  731,  602, 
    733   517,   99,  543,  244,  543,  248,  191,  127,  551,  240, 
    734   241,  589,  333,  183,  334,  398,  685,  555,  556,  295, 
    735   165,  165,  133,  560,  532,  803,  302,  805,  807,  590, 
    736   591,  572,  573,  574,  575,  134,  251,  261,  442,  486, 
    737   419,  607,  205,  450,  602,  389,  552,  258,  440,  440, 
    738   557,  269,  515,  338,  338,  606,  361,  273,  363,  610, 
    739   611,  612,  613,  614,  615,  616,  617,  618,  619,  620, 
    740   621,  874,  875,  275,  391,  418,  419,  631,  344,  350, 
    741   917,  418,  419,  938,  131,  887,  887,  922,  887,  212, 
    742   588,  590,  591,  760,  589,  333,    2,  334,  646,  647, 
    743   648,  649,  650,  651,  652,  653,  654,  655,  656,  657, 
    744   658,  659,  660,  664,  665,  667,  669,  236,  670,  671, 
    745   279,  202,  232,  296,    3,    4,  303,  284,  581,  233, 
    746   223,  439,  439,  538,  323,  596,  581,  132,  283,  592, 
    747   191,    5,    6,  393,  596,  433,  596,  183,  868,  343, 
    748   288,  290,  592,  592,  592,  592,  592,  853,  883,  897, 
    749   580,   71,  854,  220,  925,  108,  342,  298,  580,  847, 
    750   343,  343,  343,  343,  343,  830,  205,  579,  292,  312, 
    751   832,  440,  697,  327,  328,  579,  440,  342,  342,  342, 
    752   342,  342,  803,  805,  807,  330,  331,  319,   30,  588, 
    753   590,  591,  392,  352,  810,  358,  712,  359,  762,  360, 
    754   719,  877,  720,  716,  364,  365,  383,   30,  383,  383, 
    755   725,  609,  730,   28,  602,  366,   30,   30,  130,  130, 
    756   130,  130,    7,  130,  543,  675,  543,  367,  674,  368, 
    757   543,  590,  591,   30,   30,  369,  370,  721,  721,  721, 
    758   721,  721,  859,  857,  721,  858,  371,  860,  604,  605, 
    759   887,  754,  372,  373,  439,    8,  315,  592,  374,  439, 
    760   555,  759,  375,  555,  377,  438,  448,  623,  624,  625, 
    761   626,  627,  314,  378,  924,  397,  554,  379,  903,  554, 
    762   636,  380,  381,  521,  777,  523,  206,  778,  390,  417, 
    763   415,  398,  416,  533,  882,  589,  333,  394,  334,  401, 
    764   912,  859,  857,  856,  858,  581,  860,  420,  403,  421, 
    765   391,  855,  402,  588,  590,  591,   89,  804,  690,  806, 
    766   808,  689,  389,  429,   30,  431,  817,  694,  343,  819, 
    767   693,  934,  918,  919,  920,  921,  338,  580,  902,  338, 
    768   338,  338,  338,  338,  338,  342,  820,  821,  432,  717, 
    769   480,  822,  520,  823,  579,  757,  810,   30,  756,  338, 
    770   936,  338,  484,  485,  774,  827,  817,  773,  779,  780, 
    771   501,  602,  602,  383,  383,  383,  794,  881,  836,  602, 
    772   482,  487,  417,  415,  795,  416,  796,  602,  797,  602, 
    773   824,  602,  798,  849,  809,  602,  851,  602,  448,  850, 
    774   420,  403,  421,  448,  502,  834,  886,  475,  905,  885, 
    775   907,  900,  939,  693,  511,  773,  506,  475,  518,  543, 
    776   178,  179,  284,  277,  236,  581,  277,  236,  520,  552, 
    777   106,  876,  552,  106,  295,  560,  181,  182,  880,  534, 
    778   183,  184,  185,  186,  302,  537,  865,  475,  130,  475, 
    779   475,  475,  475,  547,  187,  135,  135,  580,  211,  449, 
    780   241,  211,  449,  241,  548,  391,  549,  475,  475,  475, 
    781   246,  135,  135,  246,  579,  135,  135,  135,  135,  486, 
    782   278,  550,  486,  278,  804,  806,  808,  337,  329,  135, 
    783   337,  329,  107,  558,  243,  107,  212,  243,  899,  242, 
    784   483,  335,  242,  483,  335,  404,  405,  406,  407,  408, 
    785   576,  409,  410,  411,  412,  413,  414,  586,  336,  418, 
    786   419,  336,  600,  909,  588,  590,  591,  487,  334,  331, 
    787   487,  334,  331,  333,  632,  712,  333,  915,  332,  634, 
    788   633,  332,  635,  637,  678,  681,  682,  324,  684,  686, 
    789   687,  695,  692,  691,  696,  543,  700,  338,  338,  338, 
    790   338,  338,  705,  338,  338,  338,  338,  338,  338,  707, 
    791   736,  338,  338,  726,  738,  727,  746,  749,  223,  750, 
    792   591,  765,  775,  945,  799,  817,  948,  800,  801,  811, 
    793   812,  818,  826,  392,  825,  831,  833,  317,  404,  405, 
    794   406,  407,  408,  838,  409,  410,  411,  412,  413,  414, 
    795   845,  846,  418,  419,  848,  314,  861,  236,  958,  525, 
    796   314,  314,  950,  314,  863,  960,  864,  236,  867,  871, 
    797   872,  961,  870,  873,  963,  896,  900,  906,  314,  314, 
    798   314,  911,  929,  741,  931,  932,  935,  971,  941,  940, 
    799   942,  972,  943,  944,  973,  974,  956,  949,  955,  959, 
    800   976,  236,  860,  475,  397,  475,  475,  475,  475,  475, 
    801   957,  475,  475,  475,  475,  475,  475,  964,  500,  475, 
    802   475,  966,  475,  967,  475,  925,  108,  475,  475,  475, 
    803   475,  475,  475,  475,  475,  475,  475,  475,  475,  475, 
    804   475,  475,  475,  475,  475,  215,  164,  127,  475,  475, 
    805   209,  475,  475,  475,  475,  475,  475,  475,  475,  475, 
    806   475,  475,  475,  475,  475,  475,  475,  475,  475,  475, 
    807   475,  475,  475,  475,  475,  475,  475,  443,  475,  354, 
    808   475,  475,  475,  475,  475,  562,  475,  475,  475,  475, 
    809   475,  475,  475,  475,  475,  475,  475,  475,  475,  475, 
    810   475,  475,  213,  444,  475,  475,  475,  483,  475,  475, 
    811   475,  325,  475,  475,  475,  317,  118,  475,  354,  475, 
    812   326,  544,  475,  475,  475,  475,  545,  891,  475,  475, 
    813   475,  914,  968,  930,  718,  510,  475,  475,  475,  475, 
    814   475,  475,  475,  475,  475,  475,  475,  519,  475,  475, 
    815   475,  475,  475,  475,  475,  475,  351,  475,  475,  475, 
    816   475,  889,  475,  475,  475,  594,  351,  629,  828,  643, 
    817   947,  475,  475,  879,  916,   15,  314,  314,  314,  314, 
    818   314,  144,  314,  314,  314,  314,  314,  314,  256,  513, 
    819   314,  314,  835,  351,  676,  965,  733,  351,  351,  351, 
    820   351,  351,  837,  351,  728,  703,  732,  844,  747,  318, 
    821   744,  878,  745,  236,  351,  748,  351,  351,  351,  884, 
    822     0,    0,  348,    0,    0,    0,    0,    0,  236,  236, 
    823     0,    0,  236,    0,  236,    0,    0,  236,  236,  236, 
    824   236,  236,  236,  236,    0,    0,  236,  236,  236,    0, 
    825     0,    0,    0,  236,  236,    0,    0,    0,  236,  236, 
    826     0,    0,    0,    0,    0,    0,    0,    0,  236,    0, 
    827     0,    0,  236,  236,    0,    0,    0,  236,    0,    0, 
    828     0,    0,    0,  236,    0,  236,  236,    0,  236,    0, 
    829   236,  236,  236,  236,  236,    0,  236,  236,  236,  236, 
    830   236,  236,  236,  236,  236,  236,  236,  236,  236,  236, 
    831   236,  236,    0,    0,  236,  236,  236,    0,  236,  236, 
    832   236,    0,  236,  236,  236,    0,  314,  236,    0,  236, 
    833     0,    0,  236,  236,  236,  236,  314,    0,  236,  236, 
    834   236,    0,    0,    0,    0,    0,  236,    0,    0,  236, 
    835   236,  236,  236,  236,  236,  236,  236,    0,  236,  236, 
    836   236,  236,  236,  314,    0,  236,    0,  314,  314,  314, 
    837   314,  314,  236,  236,  236,    0,    0,    0,    0,    0, 
    838     0,  236,  236,    0,  314,    0,  314,  314,  314,    0, 
    839     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    840     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    841     0,    0,  351,    0,  351,  351,  351,  351,  351,    0, 
    842   351,  351,  351,  351,  351,  351,    0,  351,  351,  351, 
    843     0,  351,    0,  351,    0,    0,  351,  351,  351,  351, 
    844   351,  351,  351,    0,    0,  351,  351,  351,    0,    0, 
    845     0,    0,  351,  351,    0,    0,    0,  351,  351,    0, 
    846     0,    0,    0,    0,    0,    0,    0,  351,    0,    0, 
    847     0,  351,  351,    0,    0,    0,  351,    0,    0,    0, 
    848     0,    0,  351,    0,  351,  351,    0,  351,    0,  351, 
    849   351,  351,  351,  351,    0,  351,  351,  351,  351,  351, 
    850   351,  351,  351,  351,  351,  351,  351,  351,  351,  351, 
    851   351,    0,  578,  351,  351,  351,    0,  351,  351,  351, 
    852     0,  351,  351,  351,    0,    0,  351,    0,  351,    0, 
    853     0,  351,  351,  351,  351,  204,  351,  351,  351,  351, 
    854     0,    0,    0,    0,    0,  351,    0,    0,  351,  351, 
    855   351,  351,  351,  351,  351,  351,    0,  351,  351,  351, 
    856   351,  351,    0,    0,  351,  188,    0,    0,  150,    0, 
    857   151,  351,  351,  351,    0,    0,    0,    0,    0,    0, 
    858   351,  351,  314,    0,  314,  314,  314,  314,  314,    0, 
    859   314,  314,  314,  314,  314,  314,    0,  314,  314,  314, 
    860     0,  314,    0,  314,    0,    0,  314,  314,  314,  314, 
    861   314,  314,  314,    0,    0,  314,  314,  314,    0,    0, 
    862     0,    0,  314,  314,    0,    0,    0,  314,  314,    0, 
    863     0,    0,    0,    0,    0,    0,    0,  314,    0,    0, 
    864     0,  314,  314,    0,    0,    0,  314,    0,    0,    0, 
    865     0,    0,  314,    0,  314,  314,    0,  314,    0,  314, 
    866   314,  314,  314,  314,    0,  314,  314,  314,  314,  314, 
    867   314,  314,  314,  314,  314,  314,  314,  314,  314,  314, 
    868   314,    0,    0,  314,  314,  314,    0,  314,  314,  314, 
    869     0,  314,  314,  314,    0,  318,  314,    0,  314,    0, 
    870     0,  314,  314,  314,  314,  318,  314,  314,  314,  314, 
    871     0,    0,    0,    0,    0,  314,    0,    0,  314,  314, 
    872   314,  314,  314,  314,  314,  314,    0,  314,  314,  314, 
    873   314,  314,  318,    0,  314,    0,  318,  318,  318,  318, 
    874   318,  314,  314,  314,    0,    0,    0,    0,    0,    0, 
    875   314,  314,    0,  318,    0,  318,  318,  318,    0,  152, 
    876   153,    0,    0,    0,  154,  155,  156,  157,    0,    0, 
    877     0,    0,    0,    0,    0,    0,  158,  159,  160,  161, 
    878   162,  163,  164,    0,  165,  166,  167,    0,  149,  168, 
    879   169,  170,    0,  171,  172,  173,  174,  175,    0,  176, 
    880     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    881     0,    0,  152,  153,    0,    0,    0,  154,  155,  156, 
    882   157,    0,    0,    0,    0,    0,    0,    0,    0,  158, 
    883   159,  160,  161,  162,  163,  164,    0,  165,  166,  167, 
    884     0,    0,  168,  169,  170,    0,  171,  172,  173,  174, 
    885   175,    0,  176,    0,    0,    0,    0,    0,    0,    0, 
    886     0,    0,  178,  179,    0,  315,    0,    0,  180,    0, 
    887     0,    0,    0,    0,    0,  315,    0,    0,  181,  182, 
    888     0,    0,  183,  184,  185,  186,    0,    0,    0,   89, 
    889     0,    0,    0,    0,    0,    0,  187,    0,    0,    0, 
    890     0,    0,  315,    0,  177,    0,  315,  315,  315,  315, 
    891   315,    0,    0,    0,    0,  178,  179,    0,    0,    0, 
    892     0,  180,    0,  315,    0,  315,  315,  315,    0,    0, 
    893     0,  181,  182,    0,    0,  183,  184,  185,  186,    0, 
    894     0,    0,   89,    0,    0,    0,    0,    0,    0,  187, 
    895     0,  318,    0,  318,  318,  318,  318,  318,    0,  318, 
    896   318,  318,  318,  318,  318,    0,  318,  318,  318,    0, 
    897   318,    0,  318,    0,    0,  318,  318,  318,  318,  318, 
    898   318,  318,    0,    0,  318,  318,  318,    0,    0,    0, 
    899     0,  318,  318,    0,    0,    0,  318,  318,    0,    0, 
    900     0,    0,    0,    0,    0,    0,  318,    0,    0,    0, 
    901   318,  318,    0,    0,    0,  318,    0,    0,    0,    0, 
    902     0,  318,    0,  318,  318,    0,  318,    0,  318,  318, 
    903   318,  318,  318,    0,  318,  318,  318,  318,  318,  318, 
    904   318,  318,  318,  318,  318,  318,  318,  318,  318,  318, 
    905     0,    0,  318,  318,  318,    0,  318,  318,  318,    0, 
    906   318,  318,  318,    0,    0,  318,    0,  318,    0,    0, 
    907   318,  318,  318,  318,    0,  318,  318,  318,  318,    0, 
    908     0,    0,    0,    0,  318,    0,    0,  318,  318,  318, 
    909   318,  318,  318,  318,  318,    0,  318,  318,  318,  318, 
    910   318,  188,    0,  318,  150,    0,  151,    0,    0,    0, 
    911   318,  318,  318,    0,    0,    0,    0,    0,    0,  318, 
    912   318,  315,  661,  315,  315,  315,  315,  315,    0,  315, 
    913   315,  315,  315,  315,  315,    0,  315,  315,  315,    0, 
    914   315,    0,  315,    0,    0,  315,  315,  315,  315,  315, 
    915   315,  315,    0,    0,  315,  315,  315,    0,    0,    0, 
    916     0,  315,  315,    0,    0,    0,  315,  315,    0,    0, 
    917     0,    0,  417,  415,    0,  416,  315,    0,    0,    0, 
    918   315,  315,    0,    0,    0,  315,    0,    0,    0,    0, 
    919   420,  315,  421,  315,  315,    0,  315,    0,  315,  315, 
    920   315,  315,  315,    0,  315,  315,  315,  315,  315,  315, 
    921   315,  315,  315,  315,  315,  315,  315,  315,  315,  315, 
    922     0,    0,  315,  315,  315,    0,  315,  315,  315,    0, 
    923   315,  315,  315,    0,  323,  315,    0,  315,    0,    0, 
    924   315,  315,  315,  315,  323,  315,  315,  315,  315,    0, 
    925     0,    0,    0,    0,  315,    0,  488,  315,  315,  315, 
    926   315,  315,  315,  315,  315,    0,  315,  315,  315,  315, 
    927   315,    0,    0,  315,  323,  323,  323,  323,  323,  323, 
    928   315,  315,  315,    0,    0,    0,    0,    0,    0,  315, 
    929   315,    0,  323,    0,  323,  323,  323,    0,    0,    0, 
    930     0,    0,    0,    0,    0,    0,    0,  253,  254,  489, 
    931     0,    0,    0,    0,    0,    0,    0,  417,  415,    0, 
    932   416,    0,    0,    0,  149,    0,    0,    0,    0,    0, 
    933     0,    0,    0,  662,    0,  420,  490,  421,  491,  492, 
    934   493,    0,    0,  494,  495,    0,  496,  497,  152,  153, 
    935     0,    0,    0,  154,  155,  156,  157,    0,    0,    0, 
    936     0,    0,    0,    0,    0,  158,  159,  160,  161,  162, 
    937   163,  164,    0,  165,  166,  167,    0,    0,  168,  169, 
    938   170,    0,  171,  172,  173,  174,  175,    0,  176,    0, 
    939   406,  407,  408,    0,  409,  410,  411,  412,  413,  414, 
    940     0,    0,  418,  419,  320,    0,    0,    0,    0,    0, 
    941     0,    0,    0,    0,  320,    0,    0,    0,    0,    0, 
    942     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    943     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    944   177,  320,    0,    0,    0,  320,  320,  320,  320,  320, 
    945     0,  178,  179,    0,    0,    0,    0,  180,    0,    0, 
    946     0,    0,  320,    0,  320,  320,  320,  181,  182,    0, 
    947     0,  183,  184,  185,  186,    0,    0,    0,   89,    0, 
    948     0,    0,    0,    0,    0,  187,    0,    0,    0,    0, 
    949   323,    0,  323,  323,  323,  323,  323,    0,  323,  323, 
    950   323,  323,  323,  323,    0,  323,  323,  323,    0,  323, 
    951     0,  323,    0,    0,  323,  323,  323,  323,  323,  323, 
    952   323,    0,    0,  323,  323,  323,    0,    0,    0,    0, 
    953   323,  323,    0,    0,    0,  323,  323,  408,    0,  409, 
    954   410,  411,  412,  413,  414,  323,    0,  418,  419,  323, 
    955   323,    0,    0,    0,  323,    0,    0,    0,    0,    0, 
    956   323,    0,  323,  323,    0,  323,    0,  323,  323,  323, 
    957   323,  323,    0,  323,  323,  323,  323,  323,  323,  323, 
    958   323,  323,  323,  323,  323,  323,  323,  323,  323,    0, 
    959   578,  323,  323,  323,    0,  323,  323,  323,    0,  323, 
    960   323,  323,    0,    0,  323,    0,  323,    0,    0,  323, 
    961   323,  323,  323,    0,  323,  323,  323,  323,    0,    0, 
    962     0,    0,    0,  323,    0,    0,  323,  323,  323,  323, 
    963   323,  323,  323,  323,    0,  323,  323,  323,  323,  323, 
    964     0,    0,  323,  188,    0,  709,  150,    0,  151,  323, 
    965   323,  323,    0,    0,    0,    0,    0,    0,  323,  323, 
    966   320,  708,  320,  320,  320,  320,  320,    0,  320,  320, 
    967   320,  320,  320,  320,    0,  320,  320,  320,    0,  320, 
    968     0,  320,    0,    0,  320,  320,  320,  320,  320,  320, 
    969   320,    0,    0,  320,  320,  320,    0,    0,    0,    0, 
    970   320,  320,    0,    0,    0,  320,  320,    0,    0,    0, 
    971     0,    0,    0,    0,    0,  320,    0,    0,    0,  320, 
    972   320,    0,    0,    0,  320,    0,    0,    0,    0,    0, 
    973   320,    0,  320,  320,    0,  320,    0,  320,  320,  320, 
    974   320,  320,    0,  320,  320,  320,  320,  320,  320,  320, 
    975   320,  320,  320,  320,  320,  320,  320,  320,  320,    0, 
    976     0,  320,  320,  320,    0,  320,  320,  320,    0,  320, 
    977   320,  320,    0,  280,  320,    0,  320,    0,    0,  320, 
    978   320,  320,  320,  280,  320,  320,  320,  320,    0,    0, 
    979     0,    0,    0,  320,    0,    0,  320,  320,  320,  320, 
    980   320,  320,  320,  320,    0,  320,  320,  320,  320,  320, 
    981   280,    0,  320,    0,  280,  280,  280,  280,  280,  320, 
    982   320,  320,    0,    0,    0,    0,    0,    0,  320,  320, 
    983     0,  280,    0,  280,  280,  280,    0,  152,  153,    0, 
    984     0,    0,  154,  155,  156,  157,    0,    0,    0,    0, 
    985     0,    0,    0,    0,  158,  159,  160,  161,  162,  163, 
    986   164,    0,  165,  166,  167,    0,  149,  168,  169,  170, 
    987     0,  171,  172,  173,  174,  175,    0,  176,    0,    0, 
    988     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    989   152,  153,    0,    0,    0,  154,  155,  156,  157,    0, 
    990     0,    0,    0,    0,    0,    0,    0,  158,  159,  160, 
    991   161,  162,  163,  164,    0,  165,  166,  167,    0,    0, 
    992   168,  169,  170,    0,  171,  172,  173,  174,  175,    0, 
    993   176,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    994   178,  179,    0,  279,    0,    0,  180,    0,    0,    0, 
    995     0,    0,    0,  279,    0,    0,  181,  182,    0,    0, 
    996   183,  184,  185,  186,    0,    0,    0,  892,    0,    0, 
    997     0,    0,    0,    0,  187,    0,    0,    0,    0,    0, 
    998     0,    0,  177,    0,  279,  279,  279,  279,  279,    0, 
    999     0,    0,    0,  178,  179,    0,    0,    0,    0,  180, 
    1000     0,  279,    0,  279,  279,  279,    0,    0,    0,  181, 
    1001   182,    0,    0,  183,  184,  185,  186,    0,    0,    0, 
    1002    89,    0,    0,    0,    0,    0,    0,  187,    0,  280, 
    1003     0,  280,  280,  280,  280,  280,    0,  280,  280,  280, 
    1004   280,  280,  280,    0,  280,  280,  280,    0,  280,    0, 
    1005   280,    0,    0,  280,  280,  280,  280,  280,  280,  280, 
    1006     0,    0,  280,  280,  280,    0,    0,    0,    0,  280, 
    1007   280,    0,    0,    0,  280,  280,    0,    0,    0,    0, 
    1008     0,    0,    0,    0,  280,    0,    0,    0,  280,  280, 
    1009     0,    0,    0,  280,    0,    0,    0,    0,    0,  280, 
    1010     0,  280,  280,    0,  280,    0,  280,  280,  280,  280, 
    1011   280,    0,  280,  280,  280,  280,  280,  280,  280,  280, 
    1012   280,  280,  280,  280,  280,  280,  280,  280,    0,    0, 
    1013   280,  280,  280,    0,  280,  280,  280,    0,  280,  280, 
    1014   280,    0,    0,  280,    0,  280,    0,    0,  280,  280, 
    1015   280,  280,    0,  280,  280,  280,  280,    0,    0,    0, 
    1016     0,    0,  280,    0,    0,  280,  280,  280,  280,  280, 
    1017   280,  280,  280,    0,  280,  280,  280,  280,  280,    0, 
    1018     0,  280,  188,    0,  540,  150,    0,  151,  280,  280, 
    1019     0,    0,    0,    0,    0,    0,    0,  280,  280,  279, 
    1020     0,  279,  279,  279,  279,  279,    0,  279,  279,  279, 
    1021   279,  279,  279,    0,  279,  279,  279,    0,  279,    0, 
    1022   279,    0,    0,  279,  279,  279,  279,  279,  279,  279, 
    1023     0,    0,  279,  279,  279,    0,    0,    0,    0,  279, 
    1024   279,    0,    0,    0,  279,  279,    0,    0,  417,  415, 
    1025     0,  416,    0,    0,  279,    0,    0,    0,  279,  279, 
    1026     0,    0,    0,  279,    0,    0,  420,    0,  421,  279, 
    1027     0,  279,  279,    0,  279,    0,  279,  279,  279,  279, 
    1028   279,    0,  279,  279,  279,  279,  279,  279,  279,  279, 
    1029   279,  279,  279,  279,  279,  279,  279,  279,    0,    0, 
    1030   279,  279,  279,    0,  279,  279,  279,    0,  279,  279, 
    1031   279,    0,  538,  279,    0,  279,    0,    0,  279,  279, 
    1032   279,  279,  538,  279,  279,  279,  279,    0,    0,    0, 
    1033     0,    0,  279,    0,    0,  279,  279,  279,  279,  279, 
    1034   279,  279,  279,    0,  279,  279,  279,  279,  279,    0, 
    1035     0,  279,    0,  250,  250,  250,  538,  250,  279,  279, 
    1036   279,    0,    0,    0,    0,    0,    0,  279,  279,    0, 
    1037     0,    0,  250,  250,  250,    0,    0,  454,    0,    0, 
    1038     0,  455,  456,  457,  458,    0,    0,    0,    0,    0, 
    1039     0,    0,    0,  459,  460,  461,  462,  463,  464,  465, 
    1040     0,  466,  467,  468,    0,  149,  469,  470,  471,    0, 
    1041     0,  472,  473,  474,  475,    0,  476,    0,    0,    0, 
    1042     0,    0,    0,    0,    0,    0,    0,    0,    0,  152, 
    1043   153,    0,    0,    0,  154,  155,  156,  157,    0,    0, 
    1044     0,    0,    0,    0,    0,    0,  158,  159,  160,  161, 
    1045   162,  163,  164,    0,  165,  166,  167,    0,    0,  168, 
    1046   169,  170,    0,  171,  172,  173,  174,  175,    0,  176, 
    1047   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    1048     0,    0,  283,    0,    0,    0,    0,    0,    0,    0, 
    1049     0,    0,  283,    0,    0,    0,    0,    0,    0,    0, 
    1050     0,    0,    0,    0,    0,    0,  477,    0,    0,    0, 
    1051     0,    0,    0,    0,    0,    0,    0,    0,    0,  283, 
    1052     0,  177,    0,  283,  283,  283,  283,  283,    0,    0, 
    1053     0,    0,  178,  179,    0,    0,    0,    0,  180,    0, 
    1054   283,    0,    0,  283,    0,    0,    0,    0,  181,  182, 
    1055     0,    0,  183,  184,  185,  186,    0,    0,    0,  541, 
    1056     0,    0,    0,    0,    0,    0,  187,    0,  538,    0, 
    1057   250,  250,  250,  250,  250,    0,  250,  250,  250,  250, 
    1058   250,  250,    0,    0,  250,  250,    0,  538,    0,  538, 
    1059     0,    0,  538,  538,  538,  538,  538,  538,  538,    0, 
    1060     0,  538,  538,  538,    0,    0,    0,    0,  538,  538, 
    1061     0,    0,    0,  538,  538,    0,    0,    0,    0,    0, 
    1062     0,    0,    0,  538,    0,    0,    0,  538,  538,    0, 
    1063     0,    0,  538,    0,    0,    0,    0,    0,  538,    0, 
    1064   538,  538,    0,  538,    0,  538,  538,  538,  538,  538, 
    1065     0,  538,  538,  538,  538,  538,  538,  538,  538,  538, 
    1066   538,  538,  538,  538,  538,  538,  538,    0,    0,  538, 
    1067   538,  538,    0,  538,  538,  538,    0,  538,  538,  538, 
    1068     0,    0,  538,    0,  538,    0,    0,  538,  538,  538, 
    1069   538,    0,  538,  538,  538,  538,    0,    0,    0,    0, 
    1070     0,  538,    0,    0,  538,  538,  538,  538,  538,  538, 
    1071   538,  538,    0,  538,  538,  538,  538,  538,    0,    0, 
    1072   538,    0,    0,    0,    0,    0,    0,  538,  538,  538, 
    1073     0,    0,    0,    0,    0,    0,  538,  538,  283,    0, 
    1074   283,  283,  283,  283,  283,  289,  283,  283,  283,  283, 
    1075   283,  283,    0,  283,  283,  289,    0,  283,    0,  283, 
    1076     0,    0,  283,  283,  283,  283,  283,  283,  283,    0, 
    1077     0,  283,  283,  283,    0,    0,    0,    0,  283,  283, 
    1078     0,    0,  289,  283,  283,    0,  289,  289,  289,  289, 
    1079   289,    0,    0,  283,    0,    0,    0,  283,  283,    0, 
    1080     0,    0,  283,  289,    0,    0,  289,    0,  283,    0, 
    1081   283,  283,    0,  283,    0,  283,  283,  283,  283,  283, 
    1082     0,  283,  283,  283,  283,  283,  283,  283,  283,  283, 
    1083   283,  283,  283,  283,  283,  283,  283,    0,    0,  283, 
    1084   283,  283,    0,  283,  283,  283,    0,  283,  283,  283, 
    1085     0,    0,  283,    0,  283,    0,    0,  283,  283,  283, 
    1086   283,    0,  283,  283,  283,  283,    0,    0,    0,    0, 
    1087     0,  283,    0,    0,  283,  283,  283,  283,  283,  283, 
    1088   283,  283,    0,  283,  283,  283,  283,  283,    0,    0, 
    1089   283,    0,    0,    0,    0,    0,    0,  283,  283,  283, 
    1090     0,    0,    0,    0,    0,    0,  283,  283,    0,    0, 
    1091     0,    0,    0,    0,  108,  290,    0,    0,  108,  108, 
    1092   108,  108,    0,    0,    0,  290,    0,    0,    0,    0, 
    1093   108,  108,  108,  108,  108,  108,  108,    0,  108,  108, 
    1094   108,    0,    0,  108,  108,  108,    0,    0,  108,  108, 
    1095   108,  108,  290,  108,    0,    0,  290,  290,  290,  290, 
    1096   290,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1097     0,    0,    0,  290,    0,    0,  290,    0,    0,    0, 
    1098     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1099     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1100     0,  289,    0,  289,  289,  289,  289,  289,    0,  289, 
    1101   289,  289,  289,  289,  289,    0,  289,  289,    0,    0, 
    1102   289,    0,  289,    0,    0,  289,  289,  289,  289,  289, 
    1103   289,  289,    0,    0,  289,  289,  289,    0,    0,    0, 
    1104     0,  289,  289,  108,    0,    0,  289,  289,    0,    0, 
    1105     0,    0,    0,    0,    0,    0,  289,    0,    0,    0, 
    1106   289,  289,    0,    0,    0,  289,    0,    0,    0,    0, 
    1107     0,  289,    0,  289,  289,    0,  289,    0,  289,  289, 
    1108   289,  289,  289,    0,  289,  289,  289,  289,  289,  289, 
    1109   289,  289,  289,  289,  289,  289,  289,  289,  289,  289, 
    1110     0,    0,  289,  289,  289,    0,  289,  289,  289,    0, 
    1111   289,  289,  289,    0,    0,  289,    0,  289,    0,    0, 
    1112   289,  289,  289,  289,    0,  289,  289,  289,  289,    0, 
    1113     0,    0,    0,    0,  289,    0,    0,  289,  289,  289, 
    1114   289,  289,  289,  289,  289,    0,  289,  289,  289,  289, 
    1115   289,    0,    0,  289,    0,    0,    0,    0,    0,    0, 
    1116   289,  289,  289,    0,    0,    0,    0,    0,    0,  289, 
    1117   289,  290,    0,  290,  290,  290,  290,  290,  311,  290, 
    1118   290,  290,  290,  290,  290,    0,  290,  290,  311,    0, 
    1119   290,    0,  290,    0,    0,  290,  290,  290,  290,  290, 
    1120   290,  290,    0,    0,  290,  290,  290,    0,    0,    0, 
    1121     0,  290,  290,    0,    0,  311,  290,  290,    0,  311, 
    1122   311,  311,  311,  311,    0,    0,  290,    0,    0,    0, 
    1123   290,  290,    0,    0,    0,  290,  311,    0,    0,  311, 
    1124     0,  290,    0,  290,  290,    0,  290,    0,  290,  290, 
    1125   290,  290,  290,    0,  290,  290,  290,  290,  290,  290, 
    1126   290,  290,  290,  290,  290,  290,  290,  290,  290,  290, 
    1127     0,    0,  290,  290,  290,    0,  290,  290,  290,    0, 
    1128   290,  290,  290,    0,    0,  290,    0,  290,    0,    0, 
    1129   290,  290,  290,  290,    0,  290,  290,  290,  290,    0, 
    1130     0,    0,    0,    0,  290,    0,    0,  290,  290,  290, 
    1131   290,  290,  290,  290,  290,    0,  290,  290,  290,  290, 
    1132   290,    0,    0,  290,    0,    0,    0,    0,    0,    0, 
    1133   290,  290,  290,    0,   20,    0,    0,    0,    0,  290, 
    1134   290,    0,    0,    0,    0,    0,    0,    0,  519,    0, 
    1135     0,    0,    0,    0,    0,    0,    0,    0,  519,   26, 
    1136     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1137     0,    0,    0,    0,   30,    0,    0,    0,    0,   33, 
    1138   314,    0,    0,    0,   37,   38,    0,    0,    0,  519, 
    1139   519,  519,  519,  519,  315,   47,   48,   49,   50,   51, 
    1140    52,  316,    0,    0,    0,    0,    0,    0,  519,  519, 
    1141   519,    0,    0,    0,   62,    0,    0,    0,    0,    0, 
    1142    65,    0,    0,    0,    0,    0,    0,    0,    0,   70, 
    1143     0,   72,    0,    0,  311,    0,  311,  311,  311,  311, 
    1144   311,    0,  311,  311,  311,  311,  311,  311,    0,  311, 
    1145   311,    0,    0,  311,    0,  311,    0,    0,  311,  311, 
    1146   311,  311,  311,  311,  311,   89,    0,  311,  311,  311, 
    1147     0,    0,   90,    0,  311,  311,    0,    0,    0,  311, 
    1148   311,    0,    0,    0,    0,    0,    0,    0,    0,  311, 
    1149     0,    0,    0,  311,  311,    0,    0,    0,  311,    0, 
    1150     0,    0,    0,    0,  311,    0,  311,  311,    0,  311, 
    1151     0,  311,  311,  311,  311,  311,    0,  311,  311,  311, 
    1152   311,  311,  311,  311,  311,  311,  311,  311,  311,  311, 
    1153   311,  311,  311,    0,    0,  311,  311,  311,    0,  311, 
    1154   311,  311,    0,  311,  311,  311,    0,    0,  311,    0, 
    1155   311,    0,    0,  311,  311,  311,  311,    0,  311,  311, 
    1156   311,  311,    0,    0,    0,    0,    0,  311,    0,    0, 
    1157   311,  311,  311,  311,  311,  311,  311,  311,    0,  311, 
    1158   311,  311,  311,  311,    0,    0,  311,  188,    0,  559, 
    1159   150,    0,  151,  311,  311,  311,    0,    0,    0,    0, 
    1160     0,    0,  311,  311,  519,    0,  519,  519,  519,  519, 
    1161   519,    0,  519,  519,  519,  519,  519,  519,    0,    0, 
    1162   519,  519,    0,  519,    0,  519,    0,    0,  519,  519, 
    1163   519,  519,  519,  519,  519,    0,    0,  519,  519,  519, 
    1164     0,    0,    0,    0,  519,  519,    0,    0,    0,  519, 
    1165   519,    0,    0,    0,    0,    0,    0,    0,    0,  519, 
    1166     0,    0,    0,  519,  519,    0,    0,    0,  519,    0, 
    1167     0,    0,    0,    0,  519,    0,  519,  519,    0,  519, 
    1168     0,  519,  519,  519,  519,  519,    0,  519,  519,  519, 
    1169   519,  519,  519,  519,  519,  519,  519,  519,  519,  519, 
    1170   519,  519,  519,    0,    0,  519,  519,  519,    0,  519, 
    1171   519,  519,    0,  519,  519,  519,    0,  528,  519,    0, 
    1172   519,    0,    0,  519,  519,  519,  519,  528,    0,  519, 
    1173   519,  519,    0,    0,    0,    0,    0,  519,    0,    0, 
    1174   519,  519,  519,  519,  519,  519,  519,  519,    0,  519, 
    1175   519,  519,  519,  519,    0,    0,  519,    0,    0,  247, 
    1176   247,    0,  247,  519,  519,  519,    0,    0,    0,    0, 
    1177     0,    0,  519,  519,    0,    0,    0,  247,  247,  247, 
    1178     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1179     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1180     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1181   149,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1182     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1183     0,    0,    0,    0,  152,  153,    0,    0,    0,  154, 
    1184   155,  156,  157,    0,    0,    0,    0,    0,    0,    0, 
    1185     0,  158,  159,  160,  161,  162,  163,  164,    0,  165, 
    1186   166,  167,    0,    0,  168,  169,  170,    0,  171,  172, 
    1187   173,  174,  175,    0,  176,    0,    0,    0,    0,    0, 
    1188     0,    0,    0,    0,    0,    0,    0,  287,    0,    0, 
    1189     0,    0,    0,    0,    0,    0,    0,  287,    0,    0, 
    1190     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1191     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1192     0,    0,    0,    0,  287,    0,  177,    0,  287,    0, 
    1193   287,  287,  287,    0,    0,    0,    0,  178,  179,    0, 
    1194     0,    0,    0,  180,    0,  287,    0,    0,  287,    0, 
    1195     0,    0,    0,  181,  182,    0,    0,  183,  184,  185, 
    1196   186,    0,    0,    0,   89,    0,    0,    0,    0,    0, 
    1197     0,  187,    0,  528,    0,  247,  247,  247,  247,  247, 
    1198     0,  247,  247,  247,  247,  247,  247,    0,    0,  247, 
    1199   247,    0,  528,    0,  528,    0,    0,  528,  528,  528, 
    1200   528,  528,  528,  528,    0,    0,  528,  528,  528,    0, 
    1201     0,    0,    0,  528,  528,    0,    0,    0,  528,  528, 
    1202     0,    0,    0,    0,    0,    0,    0,    0,  528,    0, 
    1203     0,    0,  528,  528,    0,    0,    0,  528,    0,    0, 
    1204     0,    0,    0,  528,    0,  528,  528,    0,  528,    0, 
    1205   528,  528,  528,  528,  528,    0,  528,  528,  528,  528, 
    1206   528,  528,  528,  528,  528,  528,  528,  528,  528,  528, 
    1207   528,  528,    0,    0,  528,  528,  528,    0,  528,  528, 
    1208   528,    0,  528,  528,  528,    0,    0,  528,    0,  528, 
    1209     0,    0,  528,  528,  528,  528,    0,  528,  528,  528, 
    1210   528,    0,    0,    0,    0,    0,  528,    0,    0,  528, 
    1211   528,  528,  528,  528,  528,  528,  528,    0,  528,  528, 
    1212   528,  528,  528,    0,    0,  528,    0,    0,    0,    0, 
    1213     0,    0,  528,  528,  528,    0,    0,    0,    0,    0, 
    1214     0,  528,  528,  287,    0,  287,  287,  287,  287,  287, 
    1215   288,  287,  287,  287,  287,  287,  287,    0,  287,    0, 
    1216   288,    0,  287,    0,  287,    0,    0,  287,  287,  287, 
    1217   287,  287,  287,  287,    0,    0,  287,  287,  287,    0, 
    1218     0,    0,    0,  287,  287,    0,    0,  288,  287,  287, 
    1219     0,  288,    0,  288,  288,  288,    0,    0,  287,    0, 
    1220     0,    0,  287,  287,    0,    0,    0,  287,  288,    0, 
    1221     0,  288,    0,  287,    0,  287,  287,    0,  287,    0, 
    1222   287,  287,  287,  287,  287,    0,  287,  287,  287,  287, 
    1223   287,  287,  287,  287,  287,  287,  287,  287,  287,  287, 
    1224   287,  287,    0,    0,  287,  287,  287,    0,  287,  287, 
    1225   287,    0,  287,  287,  287,    0,    0,  287,    0,  287, 
    1226     0,    0,  287,  287,  287,  287,    0,  287,  287,  287, 
    1227   287,    0,    0,    0,    0,    0,  287,    0,    0,  287, 
    1228   287,  287,  287,  287,  287,  287,  287,    0,  287,  287, 
    1229   287,  287,  287,    0,    0,  287,    0,    0,    0,    0, 
    1230     0,    0,  287,  287,  287,    0,    0,    0,    0,    0, 
    1231     0,  287,  287,    0,    0,    0,    0,    0,    0,    0, 
    1232   308,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1233   308,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1234     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1235     0,    0,    0,    0,    0,    0,    0,  308,    0,    0, 
    1236     0,  308,  308,    0,  308,    0,    0,    0,    0,    0, 
    1237     0,    0,    0,    0,    0,    0,    0,    0,  308,    0, 
    1238   308,    0,  308,    0,    0,    0,    0,    0,    0,    0, 
    1239     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1240     0,    0,    0,    0,    0,    0,  288,    0,  288,  288, 
    1241   288,  288,  288,    0,  288,  288,  288,  288,  288,  288, 
    1242     0,  288,    0,    0,    0,  288,    0,  288,    0,    0, 
    1243   288,  288,  288,  288,  288,  288,  288,    0,    0,  288, 
    1244   288,  288,    0,    0,    0,    0,  288,  288,    0,    0, 
    1245     0,  288,  288,    0,    0,    0,    0,    0,    0,    0, 
    1246     0,  288,    0,    0,    0,  288,  288,    0,    0,    0, 
    1247   288,    0,    0,    0,    0,    0,  288,    0,  288,  288, 
    1248     0,  288,   22,  288,  288,  288,  288,  288,    0,  288, 
    1249   288,  288,  288,  288,  288,  288,  288,  288,  288,  288, 
    1250   288,  288,  288,  288,  288,    0,    0,  288,  288,  288, 
    1251     0,  288,  288,  288,    0,  288,  288,  288,    0,    0, 
    1252   288,    0,  288,    0,    0,  288,  288,  288,  288,    0, 
    1253   288,  288,  288,  288,    0,    0,    0,    0,    0,  288, 
    1254     0,    0,  288,  288,  288,  288,  288,  288,  288,  288, 
    1255     0,  288,  288,  288,  288,  288,    0,    0,  288,    0, 
    1256     0,    0,    0,    0,    0,  288,  288,  288,    0,    0, 
    1257     0,    0,    0,    0,  288,  288,  308,    0,  308,  308, 
    1258   308,  308,  308,    0,  308,  308,  308,  308,  308,  308, 
    1259     0,  308,    0,  308,    0,  308,    0,  308,    0,    0, 
    1260   308,  308,  308,  308,  308,  308,  308,    0,    0,  308, 
    1261   308,  308,    0,    0,    0,    0,  308,  308,    0,    0, 
    1262     0,  308,  308,    0,    0,    0,    0,    0,    0,    0, 
    1263     0,  308,    0,    0,    0,  308,  308,    0,    0,    0, 
    1264   308,    0,    0,    0,    0,    0,  308,    0,  308,  308, 
    1265     0,  308,    0,  308,  308,  308,  308,  308,    0,  308, 
    1266   308,  308,  308,  308,  308,  308,  308,  308,  308,  308, 
    1267   308,  308,  308,  308,  308,    0,    0,  308,  308,  308, 
    1268     0,  308,  308,  308,    0,  308,  308,  308,    0,  466, 
    1269   308,    0,  308,    0,    0,  308,  308,  308,  308,  466, 
    1270   308,  308,  308,  308,  338,    0,    0,    0,  338,  308, 
    1271     0,  338,  308,  308,  308,  308,    0,  308,  308,  308, 
    1272     0,  308,  308,  308,  308,  308,    0,  338,  308,  338, 
    1273     0,  518,  518,  518,  518,  308,  308,    0,    0,    0, 
    1274     0,    0,    0,    0,    0,  308,    0,    0,    0,  518, 
    1275   518,  518,    0,    0,    0,    0,    0,   22,    0,   22, 
    1276     0,    0,   22,   22,   22,   22,    0,    0,   22,    0, 
    1277     0,   22,   22,   22,    0,    0,    0,    0,   22,   22, 
    1278     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1279     0,    0,    0,   22,    0,    0,    0,   22,   22,    0, 
    1280     0,    0,   22,    0,    0,    0,    0,    0,   22,    0, 
    1281    22,   22,    0,   22,    0,   22,   22,   22,   22,   22, 
    1282     0,   22,   22,   22,   22,   22,   22,   22,   22,   22, 
    1283    22,   22,   22,   22,   22,   22,   22,    0,    0,   22, 
    1284    22,   22,    0,   22,   22,   22,    0,   22,   22,   22, 
    1285     0,  518,   22,    0,   22,    0,    0,   22,   22,   22, 
    1286    22,  518,    0,   22,   22,   22,    0,    0,    0,    0, 
    1287     0,   22,    0,    0,    0,   22,   22,   22,   22,   22, 
    1288    22,   22,    0,   22,   22,   22,   22,   22,    0,    0, 
    1289    22,    0,    0,  518,  518,  518,  518,   22,   22,   22, 
    1290     0,    0,    0,    0,    0,    0,   22,    0,    0,    0, 
    1291     0,  518,  518,  518,    0,    0,    0,    0,    0,    0, 
    1292     0,    0,    0,    0,    0,  338,  338,  338,  338,  338, 
    1293     0,  338,  338,  338,  338,  338,  338,    0,    0,  338, 
    1294   338,    0,    0,    0,    0,  466,    0,  518,  518,  518, 
    1295   518,  518,    0,  518,  518,  518,  518,  518,  518,    0, 
    1296     0,  518,  518,    0,  466,    0,  466,    0,    0,  466, 
    1297   466,  466,  466,  466,  466,  466,    0,    0,  466,  466, 
    1298   466,    0,    0,    0,    0,  466,  466,    0,    0,    0, 
    1299   466,  466,    0,    0,    0,    0,    0,    0,    0,    0, 
    1300   466,    0,   56,    0,  466,  466,    0,    0,    0,  466, 
    1301     0,    0,   56,    0,    0,  466,    0,  466,  466,    0, 
    1302   466,    0,  466,  466,  466,  466,  466,    0,  466,  466, 
    1303   466,  466,  466,  466,  466,  466,  466,  466,  466,  466, 
    1304   466,  466,  466,  466,    0,    0,  466,  466,  466,    0, 
    1305   466,  466,  466,    0,  466,  466,  466,    0,    0,  466, 
    1306     0,  466,    0,    0,  466,  466,  466,  466,    0,    0, 
    1307   466,  466,  466,    0,    0,    0,    0,    0,  466,    0, 
    1308     0,  466,  466,  466,  466,    0,  466,  466,  466,    0, 
    1309   466,  466,  466,  466,  466,    0,    0,  466,    0,    0, 
    1310     0,    0,    0,    0,  466,  466,    0,  518,    0,  518, 
    1311   518,  518,  518,  518,  466,  518,  518,  518,  518,  518, 
    1312   518,    0,    0,  518,  518,    0,  518,    0,  518,    0, 
    1313     0,  518,  518,  518,  518,  518,  518,  518,    0,    0, 
    1314   518,  518,  518,    0,    0,    0,    0,  518,  518,    0, 
    1315     0,    0,  518,  518,    0,    0,    0,    0,    0,    0, 
    1316     0,    0,  518,    0,    0,    0,  518,  518,    0,    0, 
    1317     0,  518,    0,    0,    0,    0,    0,  518,    0,  518, 
    1318   518,    0,  518,    0,  518,  518,  518,  518,  518,    0, 
    1319   518,  518,  518,  518,  518,  518,  518,  518,  518,  518, 
    1320   518,  518,  518,  518,  518,  518,    0,    0,  518,  518, 
    1321   518,    0,  518,  518,  518,    0,  518,  518,  518,    0, 
    1322   284,  518,    0,  518,    0,    0,  518,  518,  518,  518, 
    1323   284,    0,  518,  518,  518,    0,    0,    0,    0,    0, 
    1324   518,    0,    0,  518,  518,  518,  518,    0,  518,  518, 
    1325   518,    0,  518,  518,  518,  518,  518,  284,   56,  518, 
    1326     0,  284,    0,    0,  284,    0,  518,  518,    0,    0, 
    1327     0,    0,    0,  164,  164,    0,  518,   56,  284,   56, 
    1328     0,  284,   56,   56,   56,   56,   56,   56,   56,    0, 
    1329     0,   56,   56,   56,    0,    0,    0,    0,   56,   56, 
    1330     0,    0,    0,   56,   56,    0,    0,    0,    0,    0, 
    1331     0,    0,    0,   56,    0,    0,    0,   56,   56,    0, 
    1332     0,    0,   56,    0,    0,    0,    0,    0,   56,    0, 
    1333    56,   56,    0,   56,    0,   56,   56,   56,   56,   56, 
    1334     0,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    1335    56,   56,   56,   56,   56,   56,   56,    0,    0,   56, 
    1336    56,   56,    0,   56,   56,   56,    0,   56,   56,   56, 
    1337     0,  305,   56,    0,   56,    0,    0,   56,   56,   56, 
    1338    56,  305,    0,   56,   56,   56,    0,    0,    0,    0, 
    1339     0,   56,    0,    0,   56,   56,   56,   56,   56,   56, 
    1340    56,   56,    0,   56,   56,   56,   56,   56,  305,    0, 
    1341    56,    0,  305,    0,    0,  305,    0,   56,   56,   56, 
    1342     0,    0,    0,    0,    0,    0,   56,   56,    0,  305, 
    1343     0,    0,  305,    0,    0,    0,    0,    0,    0,    0, 
    1344     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1345     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1346     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1347     0,    0,    0,    0,    0,    0,  284,    0,  284,  284, 
    1348   284,  284,  284,    0,    0,    0,    0,    0,    0,    0, 
    1349     0,  284,    0,    0,    0,  284,    0,  284,    0,    0, 
    1350   284,  284,  284,  284,  284,  284,  284,    0,    0,  284, 
    1351   284,  284,    0,    0,    0,    0,  284,  284,    0,    0, 
    1352     0,  284,  284,    0,    0,    0,    0,    0,    0,    0, 
    1353     0,  284,    0,    0,    0,  284,  284,    0,    0,    0, 
    1354   284,    0,    0,    0,    0,    0,  284,    0,  284,  284, 
    1355     0,  284,    0,  284,  284,  284,  284,  284,    0,  284, 
    1356   284,  284,  284,  284,  284,  284,  284,  284,  284,  284, 
    1357   284,  284,  284,  284,  284,    0,    0,  284,  284,  284, 
    1358     0,  284,  284,  284,    0,  284,  284,  284,  341,  341, 
    1359   284,  341,  284,    0,    0,  284,  284,  284,  284,    0, 
    1360   284,  284,  284,  284,    0,    0,  341,  341,  341,  284, 
    1361     0,    0,  284,  284,  284,  284,  284,  284,  284,  284, 
    1362     0,  284,  284,  284,  284,  284,    0,  305,  284,  305, 
    1363   305,  305,  305,  305,    0,  284,  284,  284,    0,    0, 
    1364   295,    0,  305,    0,  284,  284,  305,    0,  305,    0, 
    1365   295,  305,  305,  305,  305,  305,  305,  305,    0,    0, 
    1366   305,  305,  305,    0,    0,    0,    0,  305,  305,    0, 
    1367     0,    0,  305,  305,    0,    0,    0,  295,    0,    0, 
    1368     0,  295,  305,    0,  295,    0,  305,  305,    0,    0, 
    1369     0,  305,    0,    0,    0,    0,    0,  305,  295,  305, 
    1370   305,  295,  305,    0,  305,  305,  305,  305,  305,    0, 
    1371   305,  305,  305,  305,  305,  305,  305,  305,  305,  305, 
    1372   305,  305,  305,  305,  305,  305,    0,    0,  305,  305, 
    1373   305,    0,  305,  305,  305,    0,  305,  305,  305,    0, 
    1374     0,  305,    0,  305,    0,    0,  305,  305,  305,  305, 
    1375     0,  305,  305,  305,  305,    0,    0,    0,    0,    0, 
    1376   305,    0,    0,  305,  305,  305,  305,  305,  305,  305, 
    1377   305,    0,  305,  305,  305,  305,  305,    0,    0,  305, 
    1378     0,    0,    0,    0,    0,    0,  305,  305,  305,    0, 
    1379     0,  293,    0,    0,    0,  305,  305,    0,    0,    0, 
    1380     0,  293,    0,    0,  341,  341,  341,  341,  341,    0, 
    1381   341,  341,  341,  341,  341,  341,    0,    0,  341,  341, 
    1382     0,    0,    0,    0,    0,    0,    0,    0,  293,    0, 
    1383     0,    0,  293,    0,    0,  293,    0,    0,    0,    0, 
    1384     0,    0,    0,    0,    0,    0,    0,    0,    0,  293, 
    1385     0,    0,  293,    0,    0,    0,    0,    0,    0,    0, 
    1386     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1387     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1388     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1389     0,    0,    0,    0,    0,    0,  295,    0,  295,  295, 
    1390   295,  295,  295,    0,    0,    0,    0,    0,    0,    0, 
    1391     0,  295,    0,    0,    0,  295,    0,  295,    0,    0, 
    1392   295,  295,  295,  295,  295,  295,  295,    0,    0,  295, 
    1393   295,  295,    0,    0,    0,    0,  295,  295,    0,    0, 
    1394     0,  295,  295,    0,    0,    0,    0,    0,    0,    0, 
    1395     0,  295,    0,    0,    0,  295,  295,    0,    0,    0, 
    1396   295,    0,    0,  341,    0,    0,  295,    0,  295,  295, 
    1397     0,  295,    0,  295,  295,  295,  295,  295,    0,  295, 
    1398   295,  295,  295,  295,  295,  295,  295,  295,  295,  295, 
    1399   295,  295,  295,  295,  295,    0,    0,  295,  295,  295, 
    1400     0,  295,  295,  295,    0,  295,  295,  295,  417,  415, 
    1401   295,  416,  295,    0,    0,  295,  295,  295,  295,    0, 
    1402   295,  295,  295,  295,  852,    0,  420,  403,  421,  295, 
    1403     0,    0,  295,  295,  295,  295,  295,  295,  295,  295, 
    1404     0,  295,  295,  295,  295,  295,    0,  293,  295,  293, 
    1405   293,  293,  293,  293,    0,  295,  295,  295,    0,    0, 
    1406   299,    0,  293,    0,  295,  295,  293,    0,  293,    0, 
    1407   299,  293,  293,  293,  293,  293,  293,  293,    0,    0, 
    1408   293,  293,  293,    0,    0,    0,    0,  293,  293,    0, 
    1409     0,    0,  293,  293,    0,    0,    0,  299,    0,    0, 
    1410     0,  299,  293,    0,  299,    0,  293,  293,    0,    0, 
    1411     0,  293,    0,    0,    0,    0,    0,  293,  299,  293, 
    1412   293,  299,  293,    0,  293,  293,  293,  293,  293,    0, 
    1413   293,  293,  293,  293,  293,  293,  293,  293,  293,  293, 
    1414   293,  293,  293,  293,  293,  293,    0,    0,  293,  293, 
    1415   293,    0,  293,  293,  293,    0,  293,  293,  293,    0, 
    1416     0,  293,    0,  293,    0,    0,  293,  293,  293,  293, 
    1417     0,  293,  293,  293,  293,    0,    0,    0,    0,    0, 
    1418   293,    0,    0,  293,  293,  293,  293,  293,  293,  293, 
    1419   293,    0,  293,  293,  293,  293,  293,    0,    0,  293, 
    1420     0,    0,    0,    0,    0,    0,  293,  293,  293,    0, 
    1421     0,  297,    0,    0,    0,  293,  293,    0,    0,    0, 
    1422     0,  297,    0,    0,  404,  405,  406,  407,  408,    0, 
    1423   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    1424     0,    0,    0,    0,    0,    0,    0,    0,  297,    0, 
    1425     0,    0,  297,    0,    0,  297,    0,    0,    0,    0, 
    1426     0,    0,    0,    0,    0,    0,    0,    0,    0,  297, 
    1427     0,    0,  297,    0,    0,    0,    0,    0,    0,    0, 
    1428     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1429     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1430     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1431     0,    0,    0,    0,    0,    0,  299,    0,  299,  299, 
    1432   299,  299,  299,    0,    0,    0,    0,    0,    0,    0, 
    1433     0,  299,    0,    0,    0,  299,    0,  299,    0,    0, 
    1434   299,  299,  299,  299,  299,  299,  299,    0,    0,  299, 
    1435   299,  299,    0,    0,    0,    0,  299,  299,    0,    0, 
    1436     0,  299,  299,    0,    0,    0,    0,    0,    0,    0, 
    1437     0,  299,    0,    0,    0,  299,  299,    0,    0,    0, 
    1438   299,    0,    0,    0,    0,    0,  299,    0,  299,  299, 
    1439     0,  299,    0,  299,  299,  299,  299,  299,    0,  299, 
    1440   299,  299,  299,  299,  299,  299,  299,  299,  299,  299, 
    1441   299,  299,  299,  299,  299,    0,    0,  299,  299,  299, 
    1442     0,  299,  299,  299,    0,  299,  299,  299,  417,  415, 
    1443   299,  416,  299,    0,    0,  299,  299,  299,  299,    0, 
    1444   299,  299,  299,  299,  901,    0,  420,  403,  421,  299, 
    1445     0,    0,  299,  299,  299,  299,  299,  299,  299,  299, 
    1446     0,  299,  299,  299,  299,  299,    0,  297,  299,  297, 
    1447   297,  297,  297,  297,    0,  299,  299,  299,    0,    0, 
    1448   291,    0,  297,    0,  299,  299,  297,    0,  297,    0, 
    1449   291,  297,  297,  297,  297,  297,  297,  297,    0,    0, 
    1450   297,  297,  297,    0,    0,    0,    0,  297,  297,    0, 
    1451     0,    0,  297,  297,    0,    0,    0,  291,    0,    0, 
    1452     0,  291,  297,    0,  291,    0,  297,  297,    0,    0, 
    1453     0,  297,    0,    0,    0,    0,    0,  297,  291,  297, 
    1454   297,  291,  297,    0,  297,  297,  297,  297,  297,    0, 
    1455   297,  297,  297,  297,  297,  297,  297,  297,  297,  297, 
    1456   297,  297,  297,  297,  297,  297,    0,    0,  297,  297, 
    1457   297,    0,  297,  297,  297,    0,  297,  297,  297,    0, 
    1458     0,  297,    0,  297,    0,    0,  297,  297,  297,  297, 
    1459     0,  297,  297,  297,  297,    0,    0,    0,    0,    0, 
    1460   297,    0,    0,  297,  297,  297,  297,  297,  297,  297, 
    1461   297,    0,  297,  297,  297,  297,  297,    0,    0,  297, 
    1462     0,    0,    0,    0,    0,    0,  297,  297,  297,    0, 
    1463     0,  301,    0,    0,    0,  297,  297,    0,    0,    0, 
    1464     0,  301,    0,    0,  404,  405,  406,  407,  408,    0, 
    1465   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    1466     0,    0,    0,    0,    0,    0,    0,    0,  301,    0, 
    1467     0,    0,  301,    0,    0,  301,    0,    0,    0,    0, 
    1468     0,    0,    0,    0,    0,    0,    0,    0,    0,  301, 
    1469     0,    0,  301,    0,    0,    0,    0,    0,    0,    0, 
    1470     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1471     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1472     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1473     0,    0,    0,    0,    0,    0,  291,    0,  291,  291, 
    1474   291,  291,  291,    0,    0,    0,    0,    0,    0,    0, 
    1475     0,  291,    0,    0,    0,  291,    0,  291,    0,    0, 
    1476   291,  291,  291,  291,  291,  291,  291,    0,    0,  291, 
    1477   291,  291,    0,    0,    0,    0,  291,  291,    0,    0, 
    1478     0,  291,  291,    0,    0,    0,    0,    0,    0,    0, 
    1479     0,  291,    0,    0,    0,  291,  291,    0,    0,    0, 
    1480   291,    0,    0,    0,    0,    0,  291,    0,  291,  291, 
    1481     0,  291,    0,  291,  291,  291,  291,  291,    0,  291, 
    1482   291,  291,  291,  291,  291,  291,  291,  291,  291,  291, 
    1483   291,  291,  291,  291,  291,    0,    0,  291,  291,  291, 
    1484     0,  291,  291,  291,    0,  291,  291,  291,  417,  415, 
    1485   291,  416,  291,    0,    0,  291,  291,  291,  291,    0, 
    1486   291,  291,  291,  291,  946,    0,  420,  403,  421,  291, 
    1487     0,    0,  291,  291,  291,  291,  291,  291,  291,  291, 
    1488     0,  291,  291,  291,  291,  291,    0,  301,  291,  301, 
    1489   301,  301,  301,  301,    0,  291,  291,  291,    0,    0, 
    1490   296,    0,  301,    0,  291,  291,  301,    0,  301,    0, 
    1491   296,  301,  301,  301,  301,  301,  301,  301,    0,    0, 
    1492   301,  301,  301,    0,    0,    0,    0,  301,  301,    0, 
    1493     0,    0,  301,  301,    0,    0,    0,  296,    0,    0, 
    1494     0,  296,  301,    0,  296,    0,  301,  301,    0,    0, 
    1495     0,  301,    0,    0,    0,    0,    0,  301,  296,  301, 
    1496   301,  296,  301,    0,  301,  301,  301,  301,  301,    0, 
    1497   301,  301,  301,  301,  301,  301,  301,  301,  301,  301, 
    1498   301,  301,  301,  301,  301,  301,    0,    0,  301,  301, 
    1499   301,    0,  301,  301,  301,    0,  301,  301,  301,    0, 
    1500     0,  301,    0,  301,    0,    0,  301,  301,  301,  301, 
    1501     0,  301,  301,  301,  301,    0,    0,    0,    0,    0, 
    1502   301,    0,    0,  301,  301,  301,  301,  301,  301,  301, 
    1503   301,    0,  301,  301,  301,  301,  301,    0,    0,  301, 
    1504     0,    0,    0,    0,    0,    0,  301,  301,  301,    0, 
    1505     0,  294,    0,    0,    0,  301,  301,    0,    0,    0, 
    1506     0,  294,    0,    0,  404,  405,  406,  407,  408,    0, 
    1507   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    1508     0,    0,    0,    0,    0,    0,    0,    0,  294,    0, 
    1509     0,    0,  294,    0,    0,  294,    0,    0,    0,    0, 
    1510     0,    0,    0,    0,    0,    0,    0,    0,    0,  294, 
    1511     0,    0,  294,    0,    0,    0,    0,    0,    0,    0, 
    1512     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1513     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1514     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1515     0,    0,    0,    0,    0,    0,  296,    0,  296,  296, 
    1516   296,  296,  296,    0,    0,    0,    0,    0,    0,    0, 
    1517     0,  296,    0,    0,    0,  296,    0,  296,    0,    0, 
    1518   296,  296,  296,  296,  296,  296,  296,    0,    0,  296, 
    1519   296,  296,    0,    0,    0,    0,  296,  296,    0,    0, 
    1520     0,  296,  296,    0,    0,    0,    0,    0,    0,    0, 
    1521     0,  296,    0,    0,    0,  296,  296,    0,    0,    0, 
    1522   296,    0,    0,    0,    0,    0,  296,    0,  296,  296, 
    1523     0,  296,    0,  296,  296,  296,  296,  296,    0,  296, 
    1524   296,  296,  296,  296,  296,  296,  296,  296,  296,  296, 
    1525   296,  296,  296,  296,  296,    0,    0,  296,  296,  296, 
    1526     0,  296,  296,  296,    0,  296,  296,  296,  417,  415, 
    1527   296,  416,  296,    0,    0,  296,  296,  296,  296,    0, 
    1528   296,  296,  296,  296,  962,    0,  420,  403,  421,  296, 
    1529     0,    0,  296,  296,  296,  296,  296,  296,  296,  296, 
    1530     0,  296,  296,  296,  296,  296,    0,  294,  296,  294, 
    1531   294,  294,  294,  294,    0,  296,  296,  296,    0,    0, 
    1532   312,    0,  294,    0,  296,  296,  294,    0,  294,    0, 
    1533   312,  294,  294,  294,  294,  294,  294,  294,    0,    0, 
    1534   294,  294,  294,    0,    0,    0,    0,  294,  294,    0, 
    1535     0,    0,  294,  294,    0,    0,    0,  312,    0,    0, 
    1536     0,  312,  294,    0,  312,    0,  294,  294,    0,    0, 
    1537     0,  294,    0,    0,    0,    0,    0,  294,  312,  294, 
    1538   294,  312,  294,    0,  294,  294,  294,  294,  294,    0, 
    1539   294,  294,  294,  294,  294,  294,  294,  294,  294,  294, 
    1540   294,  294,  294,  294,  294,  294,    0,    0,  294,  294, 
    1541   294,    0,  294,  294,  294,    0,  294,  294,  294,    0, 
    1542     0,  294,    0,  294,    0,    0,  294,  294,  294,  294, 
    1543     0,  294,  294,  294,  294,    0,    0,    0,    0,    0, 
    1544   294,    0,    0,  294,  294,  294,  294,  294,  294,  294, 
    1545   294,    0,  294,  294,  294,  294,  294,    0,    0,  294, 
    1546     0,    0,    0,    0,    0,    0,  294,  294,  294,    0, 
    1547     0,  310,    0,    0,    0,  294,  294,    0,    0,    0, 
    1548     0,  310,    0,    0,  404,  405,  406,  407,  408,    0, 
    1549   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    1550     0,    0,    0,    0,    0,    0,    0,    0,  310,    0, 
    1551     0,    0,  310,    0,    0,  310,    0,    0,    0,    0, 
    1552     0,    0,    0,    0,    0,    0,    0,    0,    0,  310, 
    1553     0,    0,  310,    0,    0,    0,    0,    0,    0,    0, 
    1554     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1555     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1556     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1557     0,    0,    0,    0,    0,    0,  312,    0,  312,  312, 
    1558   312,  312,  312,    0,    0,    0,    0,    0,    0,    0, 
    1559     0,  312,    0,    0,    0,  312,    0,  312,    0,    0, 
    1560   312,  312,  312,  312,  312,  312,  312,    0,    0,  312, 
    1561   312,  312,    0,    0,    0,    0,  312,  312,    0,    0, 
    1562     0,  312,  312,    0,    0,    0,    0,    0,    0,    0, 
    1563     0,  312,    0,    0,    0,  312,  312,    0,    0,    0, 
    1564   312,    0,    0,    0,    0,    0,  312,    0,  312,  312, 
    1565     0,  312,    0,  312,  312,  312,  312,  312,    0,  312, 
    1566   312,  312,  312,  312,  312,  312,  312,  312,  312,  312, 
    1567   312,  312,  312,  312,  312,    0,    0,  312,  312,  312, 
    1568     0,  312,  312,  312,    0,  312,  312,  312,  417,  415, 
    1569   312,  416,  312,    0,    0,  312,  312,  312,  312,    0, 
    1570   312,  312,  312,  312,    0,    0,  420,  403,  421,  312, 
    1571     0,    0,  312,  312,  312,  312,  312,  312,  312,  312, 
    1572     0,  312,  312,  312,  312,  312,    0,  310,  312,  310, 
    1573   310,  310,  310,  310,    0,  312,  312,  312,    0,    0, 
    1574   300,    0,  310,    0,  312,  312,  310,    0,  310,    0, 
    1575   300,  310,  310,  310,  310,  310,  310,  310,    0,    0, 
    1576   310,  310,  310,    0,    0,    0,    0,  310,  310,    0, 
    1577     0,    0,  310,  310,    0,    0,    0,  300,    0,    0, 
    1578     0,  300,  310,    0,  300,    0,  310,  310,    0,    0, 
    1579     0,  310,    0,    0,    0,    0,    0,  310,  300,  310, 
    1580   310,  300,  310,    0,  310,  310,  310,  310,  310,    0, 
    1581   310,  310,  310,  310,  310,  310,  310,  310,  310,  310, 
    1582   310,  310,  310,  310,  310,  310,    0,    0,  310,  310, 
    1583   310,    0,  310,  310,  310,    0,  310,  310,  310,    0, 
    1584     0,  310,    0,  310,    0,    0,  310,  310,  310,  310, 
    1585     0,  310,  310,  310,  310,    0,    0,    0,    0,    0, 
    1586   310,    0,    0,  310,  310,  310,  310,  310,  310,  310, 
    1587   310,    0,  310,  310,  310,  310,  310,    0,    0,  310, 
    1588     0,    0,    0,    0,    0,    0,  310,  310,  310,    0, 
    1589     0,  298,    0,    0,    0,  310,  310,    0,    0,    0, 
    1590     0,  298,    0,    0,  404,  405,  406,  407,  408,    0, 
    1591   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    1592     0,    0,    0,    0,    0,    0,    0,    0,  298,    0, 
    1593     0,    0,  298,    0,    0,  298,    0,    0,    0,    0, 
    1594     0,    0,    0,    0,    0,    0,    0,    0,    0,  298, 
    1595     0,    0,  298,    0,    0,    0,    0,    0,    0,    0, 
    1596     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1597     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1598     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1599     0,    0,    0,    0,    0,    0,  300,    0,  300,  300, 
    1600   300,  300,  300,    0,    0,    0,    0,    0,    0,    0, 
    1601     0,  300,    0,    0,    0,  300,    0,  300,    0,    0, 
    1602   300,  300,  300,  300,  300,  300,  300,    0,    0,  300, 
    1603   300,  300,    0,    0,    0,    0,  300,  300,    0,    0, 
    1604     0,  300,  300,    0,    0,    0,    0,    0,    0,    0, 
    1605     0,  300,    0,    0,    0,  300,  300,    0,    0,    0, 
    1606   300,    0,    0,    0,    0,    0,  300,    0,  300,  300, 
    1607     0,  300,    0,  300,  300,  300,  300,  300,    0,  300, 
    1608   300,  300,  300,  300,  300,  300,  300,  300,  300,  300, 
    1609   300,  300,  300,  300,  300,    0,    0,  300,  300,  300, 
    1610     0,  300,  300,  300,    0,  300,  300,  300,  247,  247, 
    1611   300,  247,  300,    0,    0,  300,  300,  300,  300,    0, 
    1612   300,  300,  300,  300,    0,    0,  247,  247,  247,  300, 
    1613     0,    0,  300,  300,  300,  300,  300,  300,  300,  300, 
    1614     0,  300,  300,  300,  300,  300,    0,  298,  300,  298, 
    1615   298,  298,  298,  298,    0,  300,  300,  300,    0,    0, 
    1616   304,    0,  298,    0,  300,  300,  298,    0,  298,    0, 
    1617   304,  298,  298,  298,  298,  298,  298,  298,    0,    0, 
    1618   298,  298,  298,    0,    0,    0,    0,  298,  298,    0, 
    1619     0,    0,  298,  298,    0,    0,    0,  304,    0,    0, 
    1620     0,  304,  298,    0,  304,    0,  298,  298,    0,    0, 
    1621     0,  298,    0,    0,    0,    0,    0,  298,  304,  298, 
    1622   298,  304,  298,    0,  298,  298,  298,  298,  298,    0, 
    1623   298,  298,  298,  298,  298,  298,  298,  298,  298,  298, 
    1624   298,  298,  298,  298,  298,  298,    0,    0,  298,  298, 
    1625   298,    0,  298,  298,  298,    0,  298,  298,  298,    0, 
    1626     0,  298,    0,  298,    0,    0,  298,  298,  298,  298, 
    1627     0,  298,  298,  298,  298,    0,    0,    0,    0,    0, 
    1628   298,    0,    0,  298,  298,  298,  298,  298,  298,  298, 
    1629   298,    0,  298,  298,  298,  298,  298,    0,    0,  298, 
    1630     0,    0,    0,    0,    0,    0,  298,  298,  298,    0, 
    1631     0,  303,    0,    0,    0,  298,  298,    0,    0,    0, 
    1632     0,  303,    0,    0,  247,  247,  247,  247,  247,    0, 
    1633   247,  247,  247,  247,  247,  247,    0,    0,  247,  247, 
    1634     0,    0,    0,    0,    0,    0,    0,    0,  303,    0, 
    1635     0,    0,  303,    0,    0,  303,    0,    0,    0,    0, 
    1636     0,    0,    0,    0,    0,    0,    0,    0,    0,  303, 
    1637     0,    0,  303,    0,    0,    0,    0,    0,    0,    0, 
    1638     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1639     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1640     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1641     0,    0,    0,    0,    0,    0,  304,    0,  304,  304, 
    1642   304,  304,    0,    0,    0,    0,    0,    0,    0,    0, 
    1643     0,  304,    0,    0,    0,  304,    0,  304,    0,    0, 
    1644   304,  304,  304,  304,  304,  304,  304,    0,    0,  304, 
    1645   304,  304,    0,    0,    0,    0,  304,  304,    0,    0, 
    1646     0,  304,  304,    0,    0,    0,    0,    0,    0,    0, 
    1647     0,  304,    0,    0,    0,  304,  304,    0,    0,    0, 
    1648   304,    0,    0,    0,    0,    0,  304,  567,  304,  304, 
    1649   333,  304,  334,  304,  304,  304,  304,  304,    0,  304, 
    1650   304,  304,  304,  304,  304,  304,  304,  304,  304,  304, 
    1651   304,  304,  304,  304,  304,    0,    0,  304,  304,  304, 
    1652     0,  304,  304,  304,    0,  304,  304,  304,    0,    0, 
    1653   304,    0,  304,    0,    0,  304,  304,  304,  304,    0, 
    1654   304,  304,  304,  304,    0,  753,    0,  751,  150,  304, 
    1655   151,    0,  304,  304,  304,  304,  304,  304,  304,  304, 
    1656     0,  304,  304,  304,  304,  304,  576,  303,  304,  303, 
    1657   303,  303,  303,    0,    0,  304,  304,  304,    0,    0, 
    1658     0,    0,  303,    0,  304,  304,  303,    0,  303,    0, 
    1659     0,  303,  303,  303,  303,  303,  303,  303,    0,    0, 
    1660   303,  303,  303,    0,    0,    0,    0,  303,  303,    0, 
    1661     0,    0,  303,  303,    0,    0,    0,    0,    0,    0, 
    1662     0,    0,  303,    0,    0,    0,  303,  303,    0,    0, 
    1663     0,  303,    0,    0,    0,    0,    0,  303,    0,  303, 
    1664   303,    0,  303,    0,  303,  303,  303,  303,  303,    0, 
    1665   303,  303,  303,  303,  303,  303,  303,  303,  303,  303, 
    1666   303,  303,  303,  303,  303,  303,    0,    0,  303,  303, 
    1667   303,    0,  303,  303,  303,    0,  303,  303,  303,    0, 
    1668   338,  303,    0,  303,    0,    0,  303,  303,  303,  303, 
    1669   338,  303,  303,  303,  303,    0,    0,    0,    0,    0, 
    1670   303,    0,    0,  303,  303,  303,  303,  303,  303,  303, 
    1671   303,    0,  303,  303,  303,  303,  303,  338,    0,  303, 
    1672   338,  338,  338,  338,  338,  338,  303,  303,  303,    0, 
    1673     0,    0,    0,    0,    0,  303,  303,    0,    0,    0, 
    1674     0,    0,    0,    0,    0,  336,  337,  338,    0,    0, 
    1675   339,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1676     0,    0,    0,    0,    0,    0,    0,    0,  149,    0, 
    1677     0,    0,    0,    0,    0,    0,    0,    0,  752,    0, 
    1678     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1679     0,    0,  152,  153,    0,    0,    0,  154,  155,  156, 
    1680   157,    0,    0,    0,    0,    0,    0,    0,    0,  158, 
    1681   159,  160,  161,  162,  163,  164,    0,  165,  166,  167, 
    1682     0,    0,  168,  169,  170,    0,  171,  172,  173,  174, 
    1683   175,  292,  176,    0,    0,    0,    0,  178,  179,    0, 
    1684     0,  292,    0,    0,    0,    0,    0,    0,    0,    0, 
    1685     0,    0,    0,  181,  182,    0,    0,  183,  184,  185, 
    1686   186,    0,    0,    0,  340,    0,    0,    0,  292,    0, 
    1687     0,  187,  292,    0,    0,  292,    0,    0,    0,    0, 
    1688     0,    0,    0,    0,  177,    0,    0,    0,    0,  292, 
    1689     0,    0,  292,    0,    0,  178,  179,    0,    0,    0, 
    1690     0,  180,    0,    0,    0,    0,    0,    0,    0,    0, 
    1691     0,  181,  182,    0,    0,  183,  184,  185,  186,    0, 
    1692     0,    0,   89,    0,    0,    0,    0,    0,    0,  187, 
    1693     0,    0,    0,    0,    0,    0,  338,    0,    0,    0, 
    1694     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1695     0,  338,  338,  338,    0,  338,    0,  338,    0,    0, 
    1696   338,  338,  338,  338,  338,  338,  338,    0,    0,  338, 
    1697   338,  338,    0,    0,    0,    0,  338,  338,    0,    0, 
    1698     0,  338,  338,    0,    0,    0,    0,    0,    0,    0, 
    1699     0,  338,    0,    0,    0,  338,  338,    0,    0,    0, 
    1700   338,    0,    0,    0,    0,    0,  338,    0,  338,  338, 
    1701     0,  338,    0,  338,  338,  338,  338,  338,    0,  338, 
    1702   338,  338,  338,  338,  338,  338,  338,  338,  338,  338, 
    1703   338,  338,  338,  338,  338,    0,    0,  338,  338,  338, 
    1704     0,  338,  338,  338,    0,  338,  338,  338,    0,    0, 
    1705   338,    0,  338,    0,    0,  338,  338,  338,  338,    0, 
    1706     0,  338,  338,  338,    0,    0,    0,    0,    0,  338, 
    1707     0,    0,  338,  338,  338,  338,  338,  338,  338,  338, 
    1708     0,  338,  338,  338,  338,  338,    0,  292,  338,  292, 
    1709   292,    0,    0,    0,    0,  338,  338,  338,    0,    0, 
    1710   302,    0,  292,    0,  338,  338,  292,    0,  292,    0, 
    1711   302,  292,  292,  292,  292,  292,  292,  292,    0,    0, 
    1712   292,  292,  292,    0,    0,    0,    0,  292,  292,    0, 
    1713     0,    0,  292,  292,    0,    0,    0,  302,    0,    0, 
    1714     0,  302,  292,    0,  302,    0,  292,  292,    0,    0, 
    1715     0,  292,    0,    0,    0,    0,    0,  292,  302,  292, 
    1716   292,  302,  292,    0,  292,  292,  292,  292,  292,    0, 
    1717   292,  292,  292,  292,  292,  292,  292,  292,  292,  292, 
    1718   292,  292,  292,  292,  292,  292,    0,    0,  292,  292, 
    1719   292,    0,  292,  292,  292,    0,  292,  292,  292,    0, 
    1720     0,  292,    0,  292,    0,    0,  292,  292,  292,  292, 
    1721     0,  292,  292,  292,  292,    0,    0,    0,    0,    0, 
    1722   292,    0,    0,  292,  292,  292,  292,  292,  292,  292, 
    1723   292,    0,  292,  292,  292,  292,  292,    0,    0,  292, 
    1724     0,    0,    0,    0,    0,    0,  292,  292,  292,    0, 
    1725     0,    0,    0,    0,    0,  292,  292,  501,    0,    0, 
    1726     0,    0,    0,    0,    0,    0,    0,  501,    0,    0, 
    1727     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1728     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1729     0,    0,    0,    0,    0,    0,    0,    0,  501,  501, 
    1730   501,  501,  501,    0,    0,    0,    0,    0,    0,    0, 
     1888     179,     0,   657,     0,     0,     0,     0,     0,     0,   151, 
     1889       0,   180,   181,     0,     0,     0,     0,   182,   152,   153, 
     1890       0,   658,     0,     0,     0,     0,     0,   183,   184,     0, 
     1891       0,   185,   186,   187,   188,     0,   154,   155,    92,     0, 
     1892       0,   156,   157,   158,   159,   189,     0,     0,   190,     0, 
     1893       0,     0,     0,   160,   161,   162,   163,   164,   165,   166, 
     1894       0,   167,   168,   169,     0,     0,   170,   171,   172,     0, 
     1895     173,   174,   175,   176,   177,     0,   178,     0,   478,     0, 
    17311896    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    17321897    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    17331898    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    17341899    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1735     0,    0,    0,    0,    0,    0,  302,    0,  302,  302, 
    1736     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1737     0,  302,    0,    0,    0,  302,    0,  302,    0,    0, 
    1738   302,  302,  302,  302,  302,  302,  302,    0,    0,  302, 
    1739   302,  302,    0,    0,    0,    0,  302,  302,    0,    0, 
    1740     0,  302,  302,    0,    0,    0,    0,    0,    0,    0, 
    1741     0,  302,    0,    0,    0,  302,  302,    0,    0,    0, 
    1742   302,    0,    0,    0,    0,    0,  302,    0,  302,  302, 
    1743     0,  302,    0,  302,  302,  302,  302,  302,    0,  302, 
    1744   302,  302,  302,  302,  302,  302,  302,  302,  302,  302, 
    1745   302,  302,  302,  302,  302,    0,    0,  302,  302,  302, 
    1746     0,  302,  302,  302,    0,  302,  302,  302,    0,    0, 
    1747   302,    0,  302,    0,    0,  302,  302,  302,  302,    0, 
    1748   302,  302,  302,  302,    0,    0,    0,    0,    0,  302, 
    1749     0,    0,  302,  302,  302,  302,  302,  302,  302,  302, 
    1750     0,  302,  302,  302,  302,  302,    0,    0,  302,    0, 
    1751     0,    0,    0,  501,    0,  302,  302,  302,    0,    0, 
    1752     0,  502,    0,    0,  302,  302,    0,    0,  501,  501, 
    1753   501,  502,  501,    0,  501,    0,    0,  501,  501,  501, 
    1754   501,  501,  501,  501,    0,    0,  501,  501,  501,    0, 
    1755     0,    0,    0,  501,  501,    0,    0,    0,  501,  501, 
    1756     0,    0,  502,  502,  502,  502,  502,    0,  501,    0, 
    1757     0,    0,  501,  501,    0,    0,    0,  501,    0,    0, 
    1758     0,    0,    0,  501,    0,  501,  501,    0,  501,    0, 
    1759   501,  501,  501,  501,  501,    0,  501,  501,  501,  501, 
    1760   501,  501,  501,  501,  501,  501,  501,  501,  501,  501, 
    1761   501,  501,    0,    0,  501,  501,  501,    0,  501,  501, 
    1762   501,    0,  501,  501,  501,    0,    0,  501,    0,  501, 
    1763     0,    0,  501,  501,  501,  501,    0,    0,  501,  501, 
    1764   501,    0,    0,    0,    0,    0,  501,    0,    0,  501, 
    1765   501,  501,  501,  501,  501,  501,  501,    0,  501,  501, 
    1766   501,  501,  501,    0,    0,  501,    0,    0,    0,    0, 
    1767     0,    0,  501,  501,  501,    0,  493,    0,    0,    0, 
    1768     0,  501,  501,    0,    0,    0,  493,    0,    0,    0, 
    1769     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1770     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1771     0,    0,    0,    0,    0,    0,    0,    0,  499,  499, 
    1772   493,  499,    0,    0,    0,    0,    0,    0,    0,    0, 
     1900       0,     0,     0,     0,     0,     0,     0,     0,   179,     0, 
     1901     733,     0,     0,     0,     0,     0,     0,   151,     0,   180, 
     1902     181,     0,     0,     0,     0,   182,   152,   153,   533,     0, 
     1903       0,     0,     0,     0,     0,   183,   184,     0,     0,   185, 
     1904     186,   187,   188,     0,   154,   155,    92,     0,     0,   156, 
     1905     157,   158,   159,   189,     0,     0,   190,     0,     0,     0, 
     1906       0,   160,   161,   162,   163,   164,   165,   166,     0,   167, 
     1907     168,   169,     0,     0,   170,   171,   172,     0,   173,   174, 
     1908     175,   176,   177,     0,   178,     0,     0,     0,     0,     0, 
    17731909    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    17741910    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    17751911    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    17761912    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1777     0,    0,    0,    0,    0,    0,    0,  502,    0,    0, 
    1778     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1779     0,    0,  502,  502,  502,    0,  502,    0,  502,    0, 
    1780     0,  502,  502,  502,  502,  502,  502,  502,    0,    0, 
    1781   502,  502,  502,    0,    0,    0,    0,  502,  502,    0, 
    1782     0,    0,  502,  502,    0,    0,    0,    0,    0,    0, 
    1783     0,    0,  502,    0,    0,    0,  502,  502,    0,    0, 
    1784     0,  502,    0,    0,    0,    0,    0,  502,    0,  502, 
    1785   502,    0,  502,    0,  502,  502,  502,  502,  502,    0, 
    1786   502,  502,  502,  502,  502,  502,  502,  502,  502,  502, 
    1787   502,  502,  502,  502,  502,  502,    0,    0,  502,  502, 
    1788   502,    0,  502,  502,  502,    0,  502,  502,  502,    0, 
    1789     0,  502,    0,  502,    0,    0,  502,  502,  502,  502, 
    1790     0,    0,  502,  502,  502,    0,    0,    0,    0,    0, 
    1791   502,    0,    0,  502,  502,  502,  502,  502,  502,  502, 
    1792   502,    0,  502,  502,  502,  502,  502,    0,    0,  502, 
    1793     0,    0,  493,    0,    0,    0,  502,  502,    0,    0, 
    1794   507,    0,    0,    0,    0,  502,  502,  499,  499,  499, 
    1795   507,  493,    0,  493,    0,    0,  493,  493,  493,  493, 
    1796   493,  493,  493,    0,    0,  493,  493,  493,    0,    0, 
    1797     0,    0,  493,  493,    0,    0,    0,  493,  493,    0, 
    1798     0,  507,  507,  507,  507,  507,    0,  493,    0,    0, 
    1799     0,  493,  493,    0,    0,    0,  493,    0,    0,    0, 
    1800     0,    0,  493,    0,  493,  493,    0,  493,    0,  493, 
    1801   493,  493,  493,  493,    0,  493,  493,  493,  493,  493, 
    1802   493,  493,  493,  493,  493,  493,  493,  493,  493,  493, 
    1803   493,    0,    0,  493,  493,  493,    0,  493,  493,  493, 
    1804     0,  493,  493,  493,    0,    0,  493,    0,  493,    0, 
    1805     0,  493,  493,  493,  493,    0,    0,  493,  493,  493, 
    1806     0,    0,    0,    0,    0,  493,    0,    0,  493,  493, 
    1807   493,  493,  493,  493,  493,  493,    0,  493,  493,  493, 
    1808   493,  493,    0,    0,  493,    0,    0,    0,    0,    0, 
    1809     0,  493,  493,  493,    0,  504,    0,    0,    0,    0, 
    1810   493,  493,    0,    0,    0,  504,    0,    0,    0,    0, 
    1811     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1812     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1813     0,    0,    0,    0,    0,    0,  504,  504,  504,  504, 
    1814   504,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1913       0,     0,     0,     0,     0,     0,   179,     0,   640,     0, 
     1914       0,     0,     0,     0,     0,   151,     0,   180,   181,     0, 
     1915       0,     0,     0,   182,   152,   153,     0,     0,     0,     0, 
     1916       0,     0,     0,   183,   184,     0,     0,   185,   186,   187, 
     1917     188,     0,   154,   155,    92,     0,     0,   156,   157,   158, 
     1918     159,   189,     0,     0,   190,     0,     0,     0,     0,   160, 
     1919     161,   162,   163,   164,   165,   166,     0,   167,   168,   169, 
     1920       0,     0,   170,   171,   172,     0,   173,   174,   175,   176, 
     1921     177,     0,   178,     0,     0,     0,     0,     0,     0,     0, 
    18151922    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    18161923    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    18171924    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    18181925    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1819     0,    0,    0,    0,    0,    0,  507,    0,    0,    0, 
    1820     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1821     0,  507,  507,    0,    0,  507,    0,  507,    0,    0, 
    1822   507,  507,  507,  507,  507,  507,  507,    0,    0,  507, 
    1823   507,  507,    0,    0,    0,    0,  507,  507,    0,    0, 
    1824     0,  507,  507,    0,    0,    0,    0,    0,    0,    0, 
    1825     0,  507,    0,    0,    0,  507,  507,    0,    0,    0, 
    1826   507,    0,    0,    0,    0,    0,  507,    0,  507,  507, 
    1827     0,  507,    0,  507,  507,  507,  507,  507,    0,  507, 
    1828   507,  507,  507,  507,  507,  507,  507,  507,  507,  507, 
    1829   507,  507,  507,  507,  507,    0,    0,  507,  507,  507, 
    1830     0,  507,  507,  507,    0,  507,  507,  507,    0,    0, 
    1831   507,    0,  507,    0,    0,  507,  507,  507,  507,    0, 
    1832     0,  507,  507,  507,    0,    0,    0,    0,    0,  507, 
    1833     0,    0,  507,  507,  507,  507,  507,  507,  507,  507, 
    1834     0,  507,  507,  507,  507,  507,    0,    0,  507,    0, 
    1835     0,  504,    0,    0,    0,  507,  507,  507,  505,    0, 
    1836     0,    0,    0,    0,  507,  507,  504,  504,  505,    0, 
    1837   504,    0,  504,    0,    0,  504,  504,  504,  504,  504, 
    1838   504,  504,    0,    0,  504,  504,  504,    0,    0,    0, 
    1839     0,  504,  504,    0,    0,    0,  504,  504,    0,  505, 
    1840   505,  505,  505,  505,    0,    0,  504,    0,    0,    0, 
    1841   504,  504,    0,    0,    0,  504,    0,    0,    0,    0, 
    1842     0,  504,    0,  504,  504,    0,  504,    0,  504,  504, 
    1843   504,  504,  504,    0,  504,  504,  504,  504,  504,  504, 
    1844   504,  504,  504,  504,  504,  504,  504,  504,  504,  504, 
    1845     0,    0,  504,  504,  504,    0,  504,  504,  504,    0, 
    1846   504,  504,  504,    0,    0,  504,    0,  504,    0,    0, 
    1847   504,  504,  504,  504,    0,    0,  504,  504,  504,    0, 
    1848     0,    0,    0,    0,  504,    0,    0,  504,  504,  504, 
    1849   504,  504,  504,  504,  504,    0,  504,  504,  504,  504, 
    1850   504,    0,    0,  504,    0,    0,    0,    0,    0,    0, 
    1851   504,  504,  504,  506,    0,    0,    0,    0,    0,  504, 
    1852   504,    0,    0,  506,    0,    0,    0,    0,    0,    0, 
     1926       0,     0,     0,     0,   179,     0,   662,     0,     0,     0, 
     1927       0,     0,     0,   151,     0,   180,   181,     0,     0,     0, 
     1928       0,   182,   152,   153,     0,     0,     0,     0,     0,     0, 
     1929       0,   183,   184,     0,     0,   185,   186,   187,   188,     0, 
     1930     154,   155,    92,     0,     0,   156,   157,   158,   159,   189, 
     1931       0,     0,   190,     0,     0,     0,     0,   160,   161,   162, 
     1932     163,   164,   165,   166,     0,   167,   168,   169,     0,     0, 
     1933     170,   171,   172,     0,   173,   174,   175,   176,   177,     0, 
     1934     178,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    18531935    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    18541936    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1855     0,    0,    0,    0,  506,  506,  506,  506,  506,    0, 
     1937    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1938    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     1939       0,     0,   179,     0,   664,     0,     0,     0,     0,     0, 
     1940       0,   151,     0,   180,   181,     0,     0,     0,     0,   182, 
     1941     152,   153,     0,     0,     0,     0,     0,     0,     0,   183, 
     1942     184,     0,     0,   185,   186,   187,   188,     0,   154,   155, 
     1943      92,     0,     0,   156,   157,   158,   159,   189,     0,     0, 
     1944     190,     0,     0,     0,     0,   160,   161,   162,   163,   164, 
     1945     165,   166,     0,   167,   168,   169,     0,     0,   170,   171, 
     1946     172,     0,   173,   174,   175,   176,   177,     0,   178,     0, 
    18561947    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    18571948    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     
    18591950    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    18601951    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1861     0,    0,    0,    0,  505,    0,    0,    0,    0,    0, 
    1862     0,    0,    0,    0,    0,    0,    0,    0,    0,  505, 
    1863   505,    0,    0,  505,    0,  505,    0,    0,  505,  505, 
    1864   505,  505,  505,  505,  505,    0,    0,  505,  505,  505, 
    1865     0,    0,    0,    0,  505,  505,    0,    0,    0,  505, 
    1866   505,    0,    0,    0,    0,    0,    0,    0,    0,  505, 
    1867     0,    0,    0,  505,  505,    0,    0,    0,  505,    0, 
    1868     0,    0,    0,    0,  505,    0,  505,  505,    0,  505, 
    1869     0,  505,  505,  505,  505,  505,    0,  505,  505,  505, 
    1870   505,  505,  505,  505,  505,  505,  505,  505,  505,  505, 
    1871   505,  505,  505,    0,    0,  505,  505,  505,    0,  505, 
    1872   505,  505,    0,  505,  505,  505,    0,    0,  505,    0, 
    1873   505,    0,    0,  505,  505,  505,  505,    0,    0,  505, 
    1874   505,  505,    0,    0,    0,    0,    0,  505,    0,    0, 
    1875   505,  505,  505,  505,  505,  505,  505,  505,    0,  505, 
    1876   505,  505,  505,  505,    0,    0,  505,    0,    0,  506, 
    1877     0,    0,    0,  505,  505,  505,  313,    0,    0,    0, 
    1878     0,    0,  505,  505,  506,  506,  313,    0,  506,    0, 
    1879   506,    0,    0,  506,  506,  506,  506,  506,  506,  506, 
    1880     0,    0,  506,  506,  506,    0,    0,    0,    0,  506, 
    1881   506,    0,    0,  313,  506,  506,    0,  313,    0,    0, 
    1882   313,    0,    0,    0,  506,    0,    0,    0,  506,  506, 
    1883     0,    0,    0,  506,  313,    0,    0,    0,    0,  506, 
    1884     0,  506,  506,    0,  506,    0,  506,  506,  506,  506, 
    1885   506,    0,  506,  506,  506,  506,  506,  506,  506,  506, 
    1886   506,  506,  506,  506,  506,  506,  506,  506,    0,    0, 
    1887   506,  506,  506,    0,  506,  506,  506,    0,  506,  506, 
    1888   506,    0,    0,  506,    0,  506,    0,    0,  506,  506, 
    1889   506,  506,    0,    0,  506,  506,  506,    0,    0,    0, 
    1890     0,    0,  506,    0,    0,  506,  506,  506,  506,  506, 
    1891   506,  506,  506,    0,  506,  506,  506,  506,  506,    0, 
    1892     0,  506,    0,    0,    0,    0,    0,    0,  506,  506, 
    1893   506,  309,    0,    0,    0,    0,    0,  506,  506,    0, 
    1894     0,  309,    0,    0,    0,    0,    0,    0,    0,    0, 
    1895     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1896     0,    0,    0,    0,    0,    0,    0,    0,  309,    0, 
    1897     0,    0,  309,    0,    0,  309,    0,    0,    0,    0, 
    1898     0,    0,    0,    0,    0,    0,    0,    0,    0,  309, 
     1952     179,     0,     0,     0,     0,     0,     0,     0,     0,   151, 
     1953       0,   180,   181,     0,     0,     0,     0,   182,   152,   153, 
     1954     751,     0,   752,     0,     0,     0,     0,   183,   184,     0, 
     1955       0,   185,   186,   187,   188,     0,   154,   155,    92,     0, 
     1956       0,   156,   157,   158,   159,   189,     0,     0,   190,     0, 
     1957       0,     0,     0,   160,   161,   162,   163,   164,   165,   166, 
     1958       0,   167,   168,   169,     0,     0,   170,   171,   172,     0, 
     1959     173,   174,   175,   176,   177,     0,   178,     0,     0,     0, 
    18991960    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19001961    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19011962    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19021963    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1903     0,    0,  313,    0,    0,    0,    0,    0,    0,    0, 
    1904     0,    0,    0,    0,    0,    0,    0,  313,    0,    0, 
    1905     0,  313,    0,  313,    0,    0,  313,  313,  313,  313, 
    1906   313,  313,  313,    0,    0,  313,  313,  313,    0,    0, 
    1907     0,    0,  313,  313,    0,    0,    0,  313,  313,    0, 
    1908     0,    0,    0,    0,    0,    0,    0,  313,    0,    0, 
    1909     0,  313,  313,    0,    0,    0,  313,    0,    0,    0, 
    1910     0,    0,  313,    0,  313,  313,    0,  313,    0,  313, 
    1911   313,  313,  313,  313,    0,  313,  313,  313,  313,  313, 
    1912   313,  313,  313,  313,  313,  313,  313,  313,  313,  313, 
    1913   313,    0,    0,  313,  313,  313,    0,  313,  313,  313, 
    1914     0,  313,  313,  313,    0,  503,  313,    0,  313,    0, 
    1915     0,  313,  313,  313,  313,  503,  313,  313,  313,  313, 
    1916     0,    0,    0,    0,    0,  313,    0,    0,  313,  313, 
    1917   313,  313,  313,  313,  313,  313,    0,  313,  313,  313, 
    1918   313,  313,    0,    0,  313,    0,  503,  309,  503,  503, 
    1919   503,  313,  313,  313,    0,    0,    0,    0,    0,    0, 
    1920   313,  313,  309,    0,    0,    0,  309,    0,  309,    0, 
    1921     0,  309,  309,  309,  309,  309,  309,  309,    0,    0, 
    1922   309,  309,  309,    0,    0,    0,    0,  309,  309,    0, 
    1923     0,    0,  309,  309,    0,    0,    0,    0,    0,    0, 
    1924     0,    0,  309,    0,    0,    0,  309,  309,    0,    0, 
    1925     0,  309,    0,    0,    0,    0,    0,  309,    0,  309, 
    1926   309,    0,  309,    0,  309,  309,  309,  309,  309,    0, 
    1927   309,  309,  309,  309,  309,  309,  309,  309,  309,  309, 
    1928   309,  309,  309,  309,  309,  309,    0,    0,  309,  309, 
    1929   309,    0,  309,  309,  309,    0,  309,  309,  309,    0, 
    1930   509,  309,    0,  309,    0,    0,  309,  309,  309,  309, 
    1931   509,  309,  309,  309,  309,    0,    0,    0,    0,    0, 
    1932   309,    0,    0,  309,  309,  309,  309,  309,  309,  309, 
    1933   309,    0,  309,  309,  309,  309,  309,    0,    0,  309, 
    1934     0,  509,    0,    0,  509,    0,  309,  309,  309,    0, 
    1935     0,    0,    0,    0,    0,  309,  309,    0,    0,    0, 
     1964       0,     0,     0,     0,     0,     0,     0,     0,   179,     0, 
     1965       0,     0,     0,     0,     0,     0,     0,   151,     0,   180, 
     1966     181,     0,     0,     0,     0,   182,   152,   153,   533,     0, 
     1967       0,     0,     0,     0,     0,   183,   184,     0,     0,   185, 
     1968     186,   187,   188,     0,   154,   155,    92,     0,     0,   156, 
     1969     157,   158,   159,   189,     0,     0,   753,     0,     0,     0, 
     1970       0,   160,   161,   162,   163,   164,   165,   166,     0,   167, 
     1971     168,   169,     0,     0,   170,   171,   172,     0,   173,   174, 
     1972     175,   176,   177,     0,   178,     0,     0,     0,     0,     0, 
    19361973    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19371974    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19381975    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19391976    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1940     0,  503,    0,    0,    0,    0,    0,    0,    0,    0, 
    1941     0,    0,    0,    0,    0,    0,  503,    0,    0,    0, 
    1942   503,    0,  503,    0,    0,  503,  503,  503,  503,  503, 
    1943   503,  503,    0,    0,  503,  503,  503,    0,    0,    0, 
    1944     0,  503,  503,    0,    0,    0,  503,  503,    0,    0, 
    1945     0,    0,    0,    0,    0,    0,  503,    0,    0,    0, 
    1946   503,  503,    0,    0,    0,  503,    0,    0,    0,    0, 
    1947     0,  503,    0,  503,  503,    0,  503,    0,  503,  503, 
    1948   503,  503,  503,    0,  503,  503,  503,  503,  503,  503, 
    1949   503,  503,  503,  503,  503,  503,  503,  503,  503,  503, 
    1950     0,    0,  503,  503,  503,    0,  503,  503,  503,    0, 
    1951   503,  503,  503,    0,  512,  503,    0,  503,    0,    0, 
    1952   503,  503,  503,  503,  512,    0,  503,  503,  503,    0, 
    1953     0,    0,    0,    0,  503,    0,    0,  503,  503,  503, 
    1954   503,  503,  503,  503,  503,    0,  503,  503,  503,  503, 
    1955   503,    0,    0,  503,    0,  512,  509,    0,  512,    0, 
    1956   503,  503,  503,    0,    0,    0,    0,    0,    0,  503, 
    1957   503,  509,    0,    0,    0,  509,    0,  509,    0,    0, 
    1958   509,  509,  509,  509,  509,  509,  509,    0,    0,  509, 
    1959   509,  509,    0,    0,    0,    0,  509,  509,    0,    0, 
    1960     0,  509,  509,    0,    0,    0,    0,    0,    0,    0, 
    1961     0,  509,    0,    0,    0,  509,  509,    0,    0,    0, 
    1962   509,    0,    0,    0,    0,    0,  509,    0,  509,  509, 
    1963     0,  509,    0,  509,  509,  509,  509,  509,    0,  509, 
    1964   509,  509,  509,  509,  509,  509,  509,  509,  509,  509, 
    1965   509,  509,  509,  509,  509,    0,    0,  509,  509,  509, 
    1966     0,  509,  509,  509,    0,  509,  509,  509,    0,  511, 
    1967   509,    0,  509,    0,    0,  509,  509,  509,  509,  511, 
    1968     0,  509,  509,  509,    0,    0,    0,    0,    0,  509, 
    1969     0,    0,  509,  509,  509,  509,  509,  509,  509,  509, 
    1970     0,  509,  509,  509,  509,  509,    0,    0,  509,    0, 
    1971   511,    0,    0,  511,    0,  509,  509,  509,    0,    0, 
    1972     0,    0,    0,    0,  509,  509,    0,    0,    0,    0, 
     1977       0,     0,     0,     0,     0,     0,   179,     0,     0,     0, 
     1978       0,     0,     0,     0,     0,   151,     0,   180,   181,     0, 
     1979       0,     0,     0,   182,   152,   153,   558,     0,     0,     0, 
     1980       0,     0,     0,   183,   184,     0,     0,   185,   186,   187, 
     1981     188,     0,   154,   155,   539,     0,     0,   156,   157,   158, 
     1982     159,   189,     0,     0,   190,     0,     0,     0,     0,   160, 
     1983     161,   162,   163,   164,   165,   166,     0,   167,   168,   169, 
     1984       0,     0,   170,   171,   172,     0,   173,   174,   175,   176, 
     1985     177,     0,   178,     0,     0,     0,     0,     0,     0,     0, 
    19731986    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19741987    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19751988    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    19761989    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1977   512,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1978     0,    0,    0,    0,    0,  512,    0,    0,    0,  512, 
    1979     0,  512,    0,    0,  512,  512,  512,  512,  512,  512, 
    1980   512,    0,    0,  512,  512,  512,    0,    0,    0,    0, 
    1981   512,  512,    0,    0,    0,  512,  512,    0,    0,    0, 
    1982     0,    0,    0,    0,    0,  512,    0,    0,    0,  512, 
    1983   512,    0,    0,    0,  512,    0,    0,    0,    0,    0, 
    1984   512,    0,  512,  512,    0,  512,    0,  512,  512,  512, 
    1985   512,  512,    0,  512,  512,  512,  512,  512,  512,  512, 
    1986   512,  512,  512,  512,  512,  512,  512,  512,  512,    0, 
    1987     0,  512,  512,  512,    0,  512,  512,  512,    0,  512, 
    1988   512,  512,    0,  510,  512,    0,  512,    0,    0,  512, 
    1989   512,  512,  512,  510,    0,  512,  512,  512,    0,    0, 
    1990     0,    0,    0,  512,    0,    0,  512,  512,  512,  512, 
    1991   512,  512,  512,  512,    0,  512,  512,  512,  512,  512, 
    1992     0,    0,  512,    0,  510,  511,    0,  510,    0,  512, 
    1993   512,  512,    0,    0,    0,    0,    0,    0,  512,  512, 
    1994   511,    0,    0,    0,  511,    0,  511,    0,    0,  511, 
    1995   511,  511,  511,  511,  511,  511,    0,    0,  511,  511, 
    1996   511,    0,    0,    0,    0,  511,  511,    0,    0,    0, 
    1997   511,  511,    0,    0,    0,    0,    0,    0,    0,    0, 
    1998   511,    0,    0,    0,  511,  511,    0,    0,    0,  511, 
    1999     0,    0,    0,    0,    0,  511,    0,  511,  511,    0, 
    2000   511,    0,  511,  511,  511,  511,  511,    0,  511,  511, 
    2001   511,  511,  511,  511,  511,  511,  511,  511,  511,  511, 
    2002   511,  511,  511,  511,    0,    0,  511,  511,  511,    0, 
    2003   511,  511,  511,    0,  511,  511,  511,    0,  236,  511, 
    2004     0,  511,    0,    0,  511,  511,  511,  511,  236,    0, 
    2005   511,  511,  511,    0,    0,    0,    0,    0,  511,    0, 
    2006     0,  511,  511,  511,  511,  511,  511,  511,  511,    0, 
    2007   511,  511,  511,  511,  511,    0,    0,  511,    0,    0, 
    2008   236,    0,  236,    0,  511,  511,  511,    0,    0,    0, 
    2009     0,    0,    0,  511,  511,    0,    0,    0,    0,  236, 
    2010     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2011     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2012     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2013     0,    0,    0,    0,    0,    0,    0,    0,    0,  510, 
    2014     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2015     0,    0,    0,    0,  510,    0,    0,    0,  510,    0, 
    2016   510,    0,    0,  510,  510,  510,  510,  510,  510,  510, 
    2017     0,    0,  510,  510,  510,    0,    0,    0,    0,  510, 
    2018   510,    0,    0,    0,  510,  510,    0,    0,    0,    0, 
    2019     0,    0,    0,    0,  510,    0,    0,    0,  510,  510, 
    2020     0,    0,    0,  510,    0,    0,    0,    0,    0,  510, 
    2021     0,  510,  510,    0,  510,    0,  510,  510,  510,  510, 
    2022   510,    0,  510,  510,  510,  510,  510,  510,  510,  510, 
    2023   510,  510,  510,  510,  510,  510,  510,  510,    0,    0, 
    2024   510,  510,  510,    0,  510,  510,  510,    0,  510,  510, 
    2025   510,    0,  513,  510,    0,  510,    0,    0,  510,  510, 
    2026   510,  510,  513,    0,  510,  510,  510,    0,    0,    0, 
    2027     0,    0,  510,    0,    0,  510,  510,  510,  510,  510, 
    2028   510,  510,  510,    0,  510,  510,  510,  510,  510,    0, 
    2029     0,  510,    0,  513,  236,    0,  513,    0,  510,  510, 
    2030   510,    0,    0,    0,    0,    0,    0,  510,  510,    0, 
    2031     0,    0,    0,  236,    0,  236,    0,    0,  236,  236, 
    2032   236,  236,  236,  236,  236,    0,    0,  236,  236,  236, 
    2033     0,    0,    0,    0,  236,  236,    0,    0,    0,  236, 
    2034   236,    0,    0,    0,    0,    0,    0,    0,    0,  236, 
    2035     0,    0,    0,  236,  236,    0,    0,    0,  236,    0, 
    2036     0,    0,    0,    0,  236,    0,  236,  236,    0,  236, 
    2037     0,  236,  236,  236,  236,  236,    0,  236,  236,  236, 
    2038   236,  236,  236,  236,  236,  236,  236,  236,  236,  236, 
    2039   236,  236,  236,    0,    0,  236,  236,  236,    0,  236, 
    2040   236,  236,    0,  236,  236,  236,    0,  508,  236,    0, 
    2041   236,    0,    0,  236,  236,  236,  236,  508,    0,  236, 
    2042   236,  236,    0,    0,    0,    0,    0,  236,    0,    0, 
    2043   236,  236,  236,  236,  236,  236,  236,  236,    0,  236, 
    2044   236,  236,  236,  236,    0,    0,  236,    0,  508,    0, 
    2045     0,  508,    0,  236,  236,  236,    0,    0,    0,    0, 
    2046     0,    0,  236,  236,    0,    0,    0,    0,    0,    0, 
    2047     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2048     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2049     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2050     0,    0,    0,    0,    0,    0,    0,    0,  513,    0, 
    2051     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2052     0,    0,    0,  513,    0,    0,    0,  513,    0,  513, 
    2053     0,    0,  513,  513,  513,  513,  513,  513,  513,    0, 
    2054     0,  513,  513,  513,    0,    0,    0,    0,  513,  513, 
    2055     0,    0,    0,  513,  513,    0,    0,    0,    0,    0, 
    2056     0,    0,    0,  513,   57,    0,    0,  513,  513,    0, 
    2057     0,    0,  513,    0,   57,    0,    0,    0,  513,    0, 
    2058   513,  513,    0,  513,    0,  513,  513,  513,  513,  513, 
    2059     0,  513,  513,  513,  513,  513,  513,  513,  513,  513, 
    2060   513,  513,  513,  513,  513,  513,  513,    0,    0,  513, 
    2061   513,  513,    0,  513,  513,  513,    0,  513,  513,  513, 
    2062     0,    0,  513,    0,  513,    0,    0,  513,  513,  513, 
    2063   513,    0,    0,  513,  513,  513,    0,    0,    0,    0, 
    2064     0,  513,    0,    0,  513,  513,  513,  513,  513,  513, 
    2065   513,  513,    0,  513,  513,  513,  513,  513,    0,    0, 
    2066   513,    0,    0,  508,    0,    0,    0,  513,  513,  513, 
    2067     0,    0,    0,    0,    0,    0,  513,  513,  508,    0, 
    2068     0,    0,  508,    0,  508,    0,    0,  508,  508,  508, 
    2069   508,  508,  508,  508,    0,    0,  508,  508,  508,    0, 
    2070     0,    0,    0,  508,  508,    0,    0,    0,  508,  508, 
    2071     0,    0,    0,    0,    0,  142,    0,    0,  508,    0, 
    2072     0,    0,  508,  508,    0,  142,    0,  508,    0,    0, 
    2073     0,    0,    0,  508,    0,  508,  508,    0,  508,    0, 
    2074   508,  508,  508,  508,  508,    0,  508,  508,  508,  508, 
    2075   508,  508,  508,  508,  508,  508,  508,  508,  508,  508, 
    2076   508,  508,    0,    0,  508,  508,  508,    0,  508,  508, 
    2077   508,    0,  508,  508,  508,    0,    0,  508,    0,  508, 
    2078     0,    0,  508,  508,  508,  508,    0,    0,  508,  508, 
    2079   508,    0,    0,    0,    0,    0,  508,    0,    0,  508, 
    2080   508,  508,  508,  508,  508,  508,  508,    0,  508,  508, 
    2081   508,  508,  508,    0,    0,  508,    0,    0,    0,    0, 
    2082    57,    0,  508,  508,  508,    0,    0,    0,    0,    0, 
    2083     0,  508,  508,    0,    0,  164,  164,    0,    0,   57, 
    2084     0,   57,    0,    0,   57,   57,   57,   57,   57,   57, 
    2085    57,    0,    0,   57,   57,   57,    0,    0,    0,    0, 
    2086    57,   57,    0,    0,    0,   57,   57,    0,    0,    0, 
    2087     0,    0,    0,    0,    0,   57,    0,    0,    0,   57, 
    2088    57,    0,    0,    0,   57,    0,    0,    0,    0,    0, 
    2089    57,    0,   57,   57,    0,   57,    0,   57,   57,   57, 
    2090    57,   57,    0,   57,   57,   57,   57,   57,   57,   57, 
    2091    57,   57,   57,   57,   57,   57,   57,   57,   57,    0, 
    2092     0,   57,   57,   57,    0,   57,   57,   57,    0,   57, 
    2093    57,   57,    0,  355,   57,    0,   57,    0,    0,   57, 
    2094    57,   57,   57,  355,    0,   57,   57,   57,    0,    0, 
    2095     0,    0,    0,   57,    0,    0,   57,   57,   57,   57, 
    2096    57,   57,   57,   57,    0,   57,   57,   57,   57,   57, 
    2097     0,  142,   57,    0,  355,    0,    0,    0,    0,   57, 
    2098    57,   57,    0,    0,    0,    0,  164,  164,   57,   57, 
    2099   142,  355,  142,    0,    0,  142,  142,  142,  142,  142, 
    2100   142,  142,    0,    0,  142,  142,  142,    0,    0,    0, 
    2101     0,  142,  142,    0,    0,    0,  142,  142,    0,    0, 
    2102     0,    0,    0,    0,    0,    0,  142,    0,    0,    0, 
    2103   142,  142,    0,    0,    0,  142,    0,    0,    0,    0, 
    2104     0,  142,    0,  142,  142,    0,  142,    0,  142,  142, 
    2105   142,  142,  142,    0,  142,  142,  142,  142,  142,  142, 
    2106   142,  142,  142,  142,  142,  142,  142,  142,  142,  142, 
    2107     0,    0,  142,  142,  142,    0,  142,  142,  142,    0, 
    2108   142,  142,  142,    0,  125,  142,    0,  142,    0,    0, 
    2109   142,  142,  142,  142,  125,    0,  142,  142,  142,    0, 
    2110     0,    0,    0,    0,  142,    0,    0,  142,  142,  142, 
    2111   142,  142,  142,  142,  142,    0,  142,  142,  142,  142, 
    2112   142,    0,    0,  142,    0,    0,    0,    0,  125,    0, 
    2113   142,  142,  142,    0,    0,    0,    0,    0,    0,  142, 
    2114   142,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2115     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2116     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2117     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2118     0,    0,    0,    0,    0,    0,    0,    0,    0,  355, 
    2119     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2120     0,    0,    0,    0,    0,    0,    0,    0,  355,    0, 
    2121   355,    0,    0,  355,  355,  355,  355,  355,  355,  355, 
    2122     0,    0,  355,  355,  355,    0,    0,    0,    0,  355, 
    2123   355,    0,    0,    0,  355,  355,    0,    0,    0,    0, 
    2124   154,    0,    0,    0,  355,    0,    0,    0,  355,  355, 
    2125   154,    0,    0,  355,    0,    0,    0,    0,    0,  355, 
    2126     0,  355,  355,    0,  355,    0,  355,  355,  355,  355, 
    2127   355,    0,  355,  355,  355,  355,  355,  355,  355,  355, 
    2128   355,  355,  355,  355,  355,  355,  355,  355,    0,    0, 
    2129   355,  355,  355,    0,  355,  355,  355,    0,  355,  355, 
    2130   355,    0,    0,  355,    0,  355,    0,    0,  355,  355, 
    2131   355,  355,    0,    0,  355,  355,  355,    0,    0,    0, 
    2132     0,    0,  355,    0,    0,  355,  355,  355,  355,  355, 
    2133   355,  355,  355,    0,  355,  355,  355,  355,  355,    0, 
    2134   125,  355,    0,    0,    0,    0,    0,    0,  355,  355, 
    2135   355,    0,    0,    0,    0,  125,  125,  355,  355,  125, 
    2136     0,  125,    0,    0,  125,  125,  125,  125,  125,  125, 
    2137   125,    0,    0,  125,  125,  125,    0,    0,    0,    0, 
    2138   125,  125,    0,    0,    0,  125,  125,    0,    0,    0, 
    2139     0,    0,    0,    0,    0,  125,    0,    0,    0,  125, 
    2140   125,    0,    0,    0,  125,    0,    0,    0,    0,    0, 
    2141   125,    0,  125,  125,    0,  125,    0,  125,  125,  125, 
    2142   125,  125,    0,  125,  125,  125,  125,  125,  125,  125, 
    2143   125,  125,  125,  125,  125,  125,  125,  125,  125,    0, 
    2144     0,  125,  125,  125,    0,  125,  125,  125,    0,  125, 
    2145   125,  125,    0,  236,  125,    0,  125,    0,    0,  125, 
    2146   125,  125,  125,  236,    0,  125,  125,  125,    0,    0, 
    2147     0,    0,    0,  125,    0,    0,  125,  125,  125,  125, 
    2148   125,  125,  125,  125,    0,  125,  125,  125,  125,  125, 
    2149     0,    0,  125,    0,    0,  236,  154,  236,    0,  125, 
    2150   125,    0,    0,    0,    0,    0,    0,    0,  125,  125, 
    2151     0,  154,  154,    0,    0,  154,    0,  154,    0,    0, 
    2152   154,  154,  154,  154,  154,  154,  154,    0,    0,  154, 
    2153   154,  154,    0,    0,    0,    0,  154,  154,    0,    0, 
    2154     0,  154,  154,    0,    0,    0,    0,    0,    0,    0, 
    2155     0,  154,    0,    0,    0,  154,  154,    0,    0,    0, 
    2156   154,    0,    0,    0,    0,    0,  154,    0,  154,  154, 
    2157     0,  154,    0,  154,  154,  154,  154,  154,    0,  154, 
    2158   154,  154,  154,  154,  154,  154,  154,  154,  154,  154, 
    2159   154,  154,  154,  154,  154,    0,    0,  154,  154,  154, 
    2160     0,  154,  154,  154,  164,  154,  154,  154,    0,    0, 
    2161   154,    0,  154,    0,  164,  154,  154,  154,  154,    0, 
    2162     0,  154,  154,  154,    0,    0,    0,    0,    0,  154, 
    2163     0,    0,  154,  154,  154,  154,  154,  154,  154,  154, 
    2164     0,  154,  154,  154,  154,  154,    0,    0,  154,    0, 
    2165     0,    0,    0,    0,    0,  154,  154,  154,    0,    0, 
    2166     0,    0,    0,    0,  154,  154,    0,    0,    0,    0, 
    2167     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2168     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2169     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2170     0,    0,    0,    0,    0,    0,    0,    0,    0,  236, 
    2171     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2172     0,    0,    0,    0,    0,    0,    0,    0,  236,    0, 
    2173   236,    0,    0,  236,  236,  236,  236,  236,  236,  236, 
    2174     0,    0,  236,  236,  236,    0,    0,    0,    0,  236, 
    2175   236,    0,    0,    0,  236,  236,    0,    0,    0,    0, 
    2176   155,    0,    0,    0,  236,    0,    0,    0,  236,  236, 
    2177   155,    0,    0,  236,    0,    0,    0,    0,    0,  236, 
    2178     0,  236,  236,    0,  236,    0,  236,  236,  236,  236, 
    2179   236,    0,  236,  236,  236,  236,  236,  236,  236,  236, 
    2180   236,  236,  236,  236,  236,  236,  236,  236,    0,    0, 
    2181   236,  236,  236,    0,  236,  236,  236,    0,  236,  236, 
    2182   236,    0,    0,  236,    0,  236,    0,    0,  236,  236, 
    2183   236,  236,    0,    0,  236,  236,  236,    0,    0,    0, 
    2184     0,    0,  236,    0,    0,  236,  236,  236,  236,  236, 
    2185   236,  236,  236,    0,  236,  236,  236,  236,  236,    0, 
    2186   164,  236,    0,    0,    0,    0,    0,    0,  236,  236, 
    2187   236,    0,    0,    0,    0,  164,  164,  236,  236,  164, 
    2188     0,  164,    0,    0,  164,  164,  164,  164,  164,  164, 
    2189   164,    0,    0,  164,  164,  164,    0,    0,    0,    0, 
    2190   164,  164,    0,    0,    0,  164,  164,    0,    0,    0, 
    2191     0,    0,    0,    0,    0,  164,    0,    0,    0,  164, 
    2192   164,    0,    0,    0,  164,    0,    0,    0,    0,    0, 
    2193   164,    0,  164,  164,    0,  164,    0,  164,  164,  164, 
    2194   164,  164,    0,  164,  164,  164,  164,  164,  164,  164, 
    2195   164,  164,  164,  164,  164,  164,  164,  164,  164,    0, 
    2196     0,  164,  164,  164,    0,  164,  164,  164,    0,  164, 
    2197   164,  164,    0,  525,  164,    0,  164,    0,    0,  164, 
    2198   164,  164,  164,  525,    0,  164,  164,  164,    0,    0, 
    2199     0,    0,    0,  164,    0,    0,  164,  164,  164,  164, 
    2200   164,  164,  164,  164,    0,  164,  164,  164,  164,  164, 
    2201     0,    0,  164,    0,  525,    0,  155,  525,    0,  164, 
    2202   164,  164,    0,    0,    0,    0,    0,    0,  164,  164, 
    2203     0,  155,  155,    0,    0,  155,    0,  155,    0,    0, 
    2204   155,  155,  155,  155,  155,  155,  155,    0,    0,  155, 
    2205   155,  155,    0,    0,    0,    0,  155,  155,    0,    0, 
    2206     0,  155,  155,    0,    0,    0,    0,    0,    0,    0, 
    2207     0,  155,    0,    0,    0,  155,  155,    0,    0,    0, 
    2208   155,    0,    0,    0,    0,    0,  155,    0,  155,  155, 
    2209     0,  155,    0,  155,  155,  155,  155,  155,    0,  155, 
    2210   155,  155,  155,  155,  155,  155,  155,  155,  155,  155, 
    2211   155,  155,  155,  155,  155,    0,    0,  155,  155,  155, 
    2212     0,  155,  155,  155,    0,  155,  155,  155,    0,  168, 
    2213   155,    0,  155,    0,    0,  155,  155,  155,  155,  168, 
    2214     0,  155,  155,  155,    0,    0,    0,    0,    0,  155, 
    2215     0,    0,  155,  155,  155,  155,  155,  155,  155,  155, 
    2216     0,  155,  155,  155,  155,  155,    0,    0,  155,    0, 
    2217   168,    0,    0,  168,    0,  155,  155,  155,    0,    0, 
    2218     0,    0,    0,    0,  155,  155,    0,    0,    0,    0, 
    2219     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2220     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2221     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2222     0,    0,    0,    0,    0,    0,    0,    0,    0,  525, 
    2223     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2224     0,    0,    0,    0,    0,    0,    0,    0,  525,    0, 
    2225   525,    0,    0,  525,  525,  525,  525,  525,  525,  525, 
    2226     0,    0,  525,  525,  525,    0,    0,    0,    0,  525, 
    2227   525,    0,    0,    0,  525,  525,    0,    0,    0,    0, 
    2228     0,    0,    0,    0,  525,    0,    0,    0,  525,  525, 
    2229     0,    0,    0,  525,    0,    0,    0,    0,    0,  525, 
    2230     0,  525,  525,    0,  525,    0,  525,  525,  525,  525, 
    2231   525,    0,  525,  525,  525,  525,  525,  525,  525,  525, 
    2232   525,  525,  525,  525,  525,  525,  525,  525,    0,    0, 
    2233   525,  525,  525,    0,  525,  525,  525,    0,  525,  525, 
    2234   525,    0,  523,  525,    0,  525,    0,    0,  525,  525, 
    2235   525,  525,  523,    0,  525,  525,  525,    0,    0,    0, 
    2236     0,    0,  525,    0,    0,  525,  525,  525,  525,  525, 
    2237   525,  525,  525,    0,  525,  525,  525,  525,  525,    0, 
    2238     0,  525,    0,  523,    0,  168,  523,    0,  525,  525, 
    2239   525,    0,    0,    0,    0,    0,    0,  525,  525,    0, 
    2240     0,    0,    0,    0,  168,    0,  168,    0,    0,  168, 
    2241   168,  168,  168,  168,  168,  168,    0,    0,  168,  168, 
    2242   168,    0,    0,    0,    0,  168,  168,    0,    0,    0, 
    2243   168,  168,    0,    0,    0,    0,    0,    0,    0,    0, 
    2244   168,    0,    0,    0,  168,  168,    0,    0,    0,  168, 
    2245     0,    0,    0,    0,    0,  168,    0,  168,  168,    0, 
    2246   168,    0,  168,  168,  168,  168,  168,    0,  168,  168, 
    2247   168,  168,  168,  168,  168,  168,  168,  168,  168,  168, 
    2248   168,  168,  168,  168,    0,    0,  168,  168,  168,    0, 
    2249   168,  168,  168,    0,  168,  168,  168,    0,  522,  168, 
    2250     0,  168,    0,    0,  168,  168,  168,  168,  522,    0, 
    2251   168,  168,  168,    0,    0,    0,    0,    0,  168,    0, 
    2252     0,  168,  168,  168,  168,  168,  168,  168,  168,    0, 
    2253   168,  168,  168,  168,  168,    0,    0,  168,    0,  522, 
    2254     0,    0,  522,    0,  168,  168,  168,    0,    0,    0, 
    2255     0,    0,    0,  168,  168,    0,    0,    0,    0,    0, 
    2256     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2257     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2258     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2259     0,    0,    0,    0,    0,    0,    0,    0,  523,    0, 
    2260     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2261     0,    0,    0,    0,    0,    0,    0,  523,    0,  523, 
    2262     0,    0,  523,  523,  523,  523,  523,  523,  523,    0, 
    2263     0,  523,  523,  523,    0,    0,    0,    0,  523,  523, 
    2264     0,    0,    0,  523,  523,    0,    0,    0,    0,    0, 
    2265     0,    0,    0,  523,    0,    0,    0,  523,  523,    0, 
    2266     0,    0,  523,    0,    0,    0,    0,    0,  523,    0, 
    2267   523,  523,    0,  523,    0,  523,  523,  523,  523,  523, 
    2268     0,  523,  523,  523,  523,  523,  523,  523,  523,  523, 
    2269   523,  523,  523,  523,  523,  523,  523,    0,    0,  523, 
    2270   523,  523,    0,  523,  523,  523,    0,  523,  523,  523, 
    2271     0,  520,  523,    0,  523,    0,    0,  523,  523,  523, 
    2272   523,  520,    0,  523,  523,  523,    0,    0,    0,    0, 
    2273     0,  523,    0,    0,  523,  523,  523,  523,  523,  523, 
    2274   523,  523,    0,  523,  523,  523,  523,  523,    0,    0, 
    2275   523,    0,  520,    0,  522,  520,    0,  523,  523,  523, 
    2276     0,    0,    0,    0,    0,    0,  523,  523,    0,    0, 
    2277     0,    0,    0,  522,    0,  522,    0,    0,  522,  522, 
    2278   522,  522,  522,  522,  522,    0,    0,  522,  522,  522, 
    2279     0,    0,    0,    0,  522,  522,    0,    0,    0,  522, 
    2280   522,    0,    0,    0,    0,    0,    0,    0,    0,  522, 
    2281     0,    0,    0,  522,  522,    0,    0,    0,  522,    0, 
    2282     0,    0,    0,    0,  522,    0,  522,  522,    0,  522, 
    2283     0,  522,  522,  522,  522,  522,    0,  522,  522,  522, 
    2284   522,  522,  522,  522,  522,  522,  522,  522,  522,  522, 
    2285   522,  522,  522,    0,    0,  522,  522,  522,    0,  522, 
    2286   522,  522,    0,  522,  522,  522,    0,  531,  522,    0, 
    2287   522,    0,    0,  522,  522,  522,  522,  531,    0,  522, 
    2288   522,  522,    0,    0,    0,    0,    0,  522,    0,    0, 
    2289   522,  522,  522,  522,  522,  522,  522,  522,    0,  522, 
    2290   522,  522,  522,  522,    0,    0,  522,    0,    0,    0, 
    2291     0,  531,    0,  522,  522,  522,    0,    0,    0,    0, 
    2292     0,    0,  522,  522,    0,    0,    0,    0,    0,    0, 
    2293     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2294     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2295     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2296     0,    0,    0,    0,    0,    0,    0,  520,    0,    0, 
    2297     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2298     0,    0,    0,    0,    0,    0,  520,    0,  520,    0, 
    2299     0,  520,  520,  520,  520,  520,  520,  520,    0,    0, 
    2300   520,  520,  520,    0,    0,    0,    0,  520,  520,    0, 
    2301     0,    0,  520,  520,    0,    0,    0,    0,    0,    0, 
    2302     0,    0,  520,  535,    0,    0,  520,  520,    0,    0, 
    2303     0,  520,    0,  535,    0,    0,    0,  520,    0,  520, 
    2304   520,    0,  520,    0,  520,  520,  520,  520,  520,    0, 
    2305   520,  520,  520,  520,  520,  520,  520,  520,  520,  520, 
    2306   520,  520,  520,  520,  520,  520,    0,  535,  520,  520, 
    2307   520,    0,  520,  520,  520,    0,  520,  520,  520,    0, 
    2308     0,  520,    0,  520,    0,    0,  520,  520,  520,  520, 
    2309     0,    0,  520,  520,  520,    0,    0,    0,    0,    0, 
    2310   520,    0,    0,  520,  520,  520,  520,  520,  520,  520, 
    2311   520,    0,  520,  520,  520,  520,  520,    0,    0,  520, 
    2312     0,    0,    0,  531,    0,    0,  520,  520,  520,    0, 
    2313     0,    0,    0,    0,    0,  520,  520,    0,    0,    0, 
    2314     0,    0,  531,    0,  531,    0,    0,  531,  531,  531, 
    2315   531,  531,  531,  531,    0,    0,  531,  531,  531,    0, 
    2316     0,    0,    0,  531,  531,    0,    0,    0,  531,  531, 
    2317     0,    0,    0,    0,    0,    0,    0,    0,  531,  533, 
    2318     0,    0,  531,  531,    0,    0,    0,  531,    0,  533, 
    2319     0,    0,    0,  531,    0,  531,  531,    0,  531,    0, 
    2320   531,  531,  531,  531,  531,    0,  531,  531,  531,  531, 
    2321   531,  531,  531,  531,  531,  531,  531,  531,  531,  531, 
    2322   531,  531,    0,  533,  531,  531,  531,    0,  531,  531, 
    2323   531,    0,  531,  531,  531,    0,    0,  531,    0,  531, 
    2324     0,    0,  531,  531,  531,  531,    0,  531,  531,  531, 
    2325   531,    0,    0,    0,    0,    0,  531,    0,    0,  531, 
    2326   531,  531,  531,  531,  531,  531,  531,    0,  531,  531, 
    2327   531,  531,  531,    0,    0,  531,    0,    0,    0,  535, 
    2328     0,    0,  531,  531,  531,    0,    0,    0,    0,    0, 
    2329     0,  531,  531,    0,    0,    0,    0,    0,  535,    0, 
    2330   535,    0,    0,  535,  535,  535,  535,  535,  535,  535, 
    2331     0,    0,  535,  535,  535,    0,    0,    0,    0,  535, 
    2332   535,    0,    0,    0,  535,  535,    0,    0,    0,    0, 
    2333     0,    0,    0,    0,  535,  198,    0,    0,  535,  535, 
    2334     0,    0,    0,  535,    0,  198,    0,    0,    0,  535, 
    2335     0,  535,  535,    0,  535,    0,  535,  535,  535,  535, 
    2336   535,    0,  535,  535,  535,  535,  535,  535,  535,  535, 
    2337   535,  535,  535,  535,  535,  535,  535,  535,    0,  198, 
    2338   535,  535,  535,    0,  535,  535,  535,    0,  535,  535, 
    2339   535,    0,    0,  535,    0,  535,  198,    0,  535,  535, 
    2340   535,  535,    0,  535,  535,  535,  535,    0,    0,    0, 
    2341     0,    0,  535,    0,    0,  535,  535,  535,  535,  535, 
    2342   535,  535,  535,    0,  535,  535,  535,  535,  535,    0, 
    2343     0,  535,    0,    0,    0,  533,    0,    0,  535,  535, 
    2344   535,    0,    0,    0,    0,    0,    0,  535,  535,    0, 
    2345     0,    0,    0,    0,  533,    0,  533,    0,    0,  533, 
    2346   533,  533,  533,  533,  533,  533,    0,    0,  533,  533, 
    2347   533,    0,    0,    0,    0,  533,  533,    0,    0,    0, 
    2348   533,  533,    0,    0,    0,    0,  156,    0,    0,    0, 
    2349   533,    0,    0,    0,  533,  533,  156,    0,    0,  533, 
    2350     0,    0,    0,    0,    0,  533,    0,  533,  533,    0, 
    2351   533,    0,  533,  533,  533,  533,  533,    0,  533,  533, 
    2352   533,  533,  533,  533,  533,  533,  533,  533,  533,  533, 
    2353   533,  533,  533,  533,    0,    0,  533,  533,  533,    0, 
    2354   533,  533,  533,    0,  533,  533,  533,    0,    0,  533, 
    2355     0,  533,    0,    0,  533,  533,  533,  533,    0,  533, 
    2356   533,  533,  533,    0,    0,    0,    0,    0,  533,    0, 
    2357     0,  533,  533,  533,  533,  533,  533,  533,  533,    0, 
    2358   533,  533,  533,  533,  533,    0,    0,  533,    0,    0, 
    2359     0,  198,    0,    0,  533,  533,  533,    0,    0,    0, 
    2360     0,    0,    0,  533,  533,    0,    0,    0,    0,    0, 
    2361   198,    0,  198,    0,    0,  198,  198,  198,  198,  198, 
    2362   198,  198,    0,    0,  198,  198,  198,    0,    0,    0, 
    2363     0,  198,  198,    0,    0,    0,  198,  198,    0,    0, 
    2364     0,    0,    0,    0,    0,    0,  198,    0,    0,    0, 
    2365   198,  198,    0,    0,    0,  198,    0,    0,    0,    0, 
    2366     0,  198,    0,  198,  198,    0,  198,    0,  198,  198, 
    2367   198,  198,  198,    0,  198,  198,  198,  198,  198,  198, 
    2368   198,  198,  198,  198,  198,  198,  198,  198,  198,  198, 
    2369     0,    0,  198,  198,  198,    0,  198,  198,  198,    0, 
    2370   198,  198,  198,    0,  358,  198,    0,  198,    0,    0, 
    2371   198,  198,  198,  198,  358,    0,  198,  198,  198,    0, 
    2372     0,    0,    0,    0,  198,    0,    0,  198,  198,  198, 
    2373   198,  198,  198,  198,  198,    0,  198,  198,  198,  198, 
    2374   198,    0,  156,  198,    0,    0,    0,    0,  358,    0, 
    2375   198,  198,  198,    0,    0,    0,    0,  156,  156,  198, 
    2376   198,  156,    0,  156,    0,  360,  156,  156,  156,  156, 
    2377   156,  156,  156,    0,    0,  156,  156,  156,    0,    0, 
    2378     0,    0,  156,  156,    0,    0,    0,  156,  156,    0, 
    2379     0,    0,    0,    0,    0,    0,    0,  156,    0,    0, 
    2380     0,  156,  156,    0,    0,    0,  156,    0,    0,    0, 
    2381     0,    0,  156,    0,  156,  156,    0,  156,    0,  156, 
    2382   156,  156,  156,  156,    0,  156,  156,  156,  156,  156, 
    2383   156,  156,  156,  156,  156,  156,  156,  156,  156,  156, 
    2384   156,    0,    0,  156,  156,  156,    0,  156,  156,  156, 
    2385     0,  156,  156,  156,    0,  521,  156,    0,  156,    0, 
    2386     0,  156,  156,  156,  156,  521,    0,  156,  156,  156, 
    2387     0,    0,    0,    0,    0,  156,    0,    0,  156,  156, 
    2388   156,  156,  156,  156,  156,  156,    0,  156,  156,  156, 
    2389   156,  156,    0,    0,  156,    0,  521,    0,    0,  521, 
    2390     0,  156,  156,  156,    0,    0,    0,    0,    0,    0, 
    2391   156,  156,    0,    0,    0,    0,    0,    0,    0,    0, 
     1990       0,     0,     0,     0,   179,     0,     0,     0,     0,     0, 
     1991       0,     0,     0,   151,     0,   180,   181,     0,     0,     0, 
     1992       0,   182,   152,   153,   533,     0,     0,     0,     0,     0, 
     1993       0,   183,   184,     0,     0,   185,   186,   187,   188,     0, 
     1994     154,   155,    92,     0,     0,   156,   157,   158,   159,   189, 
     1995       0,     0,   190,     0,     0,     0,     0,   160,   161,   162, 
     1996     163,   164,   165,   166,     0,   167,   168,   169,     0,     0, 
     1997     170,   171,   172,     0,   173,   174,   175,   176,   177,     0, 
     1998     178,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    23921999    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    23932000    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    23942001    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    23952002    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2396   358,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2397     0,    0,    0,    0,    0,    0,    0,    0,    0,  358, 
    2398     0,  358,    0,    0,  358,  358,  358,  358,  358,  358, 
    2399   358,    0,    0,  358,  358,  358,    0,    0,    0,    0, 
    2400   358,  358,    0,    0,    0,  358,  358,    0,   40,    0, 
    2401     0,    0,    0,    0,    0,  358,    0,    0,   40,  358, 
    2402   358,    0,    0,    0,  358,    0,    0,    0,    0,    0, 
    2403   358,    0,  358,  358,    0,  358,    0,  358,  358,  358, 
    2404   358,  358,    0,  358,  358,  358,  358,  358,  358,  358, 
    2405   358,  358,  358,  358,  358,  358,  358,  358,  358,    0, 
    2406     0,  358,  358,  358,    0,  358,  358,  358,    0,  358, 
    2407   358,  358,    0,    0,  358,    0,  358,    0,    0,  358, 
    2408   358,  358,  358,    0,    0,  358,  358,  358,    0,    0, 
    2409     0,    0,    0,  358,    0,    0,  358,  358,  358,  358, 
    2410   358,  358,  358,  358,    0,  358,  358,  358,  358,  358, 
    2411     0,  521,  358,    0,    0,    0,    0,    0,    0,  358, 
    2412   358,  358,    0,    0,    0,    0,    0,    0,  358,  358, 
    2413   521,    0,  521,    0,    0,  521,  521,  521,  521,  521, 
    2414   521,  521,    0,    0,  521,  521,  521,    0,    0,    0, 
    2415     0,  521,  521,    0,    0,    0,  521,  521,    0,  530, 
    2416     0,    0,    0,    0,    0,    0,  521,    0,    0,  530, 
    2417   521,  521,    0,    0,    0,  521,    0,    0,    0,    0, 
    2418     0,  521,    0,  521,  521,    0,  521,    0,  521,  521, 
    2419   521,  521,  521,    0,  521,  521,  521,  521,  521,  521, 
    2420   521,  521,  521,  521,  521,  521,  521,  521,  521,  521, 
    2421     0,    0,  521,  521,  521,    0,  521,  521,  521,    0, 
    2422   521,  521,  521,    0,    0,  521,    0,  521,    0,    0, 
    2423   521,  521,  521,  521,    0,    0,  521,  521,  521,    0, 
    2424     0,    0,    0,    0,  521,    0,    0,  521,  521,  521, 
    2425   521,  521,  521,  521,  521,    0,  521,  521,  521,  521, 
    2426   521,    0,    0,  521,   40,    0,    0,    0,    0,    0, 
    2427   521,  521,  521,    0,    0,    0,    0,    0,    0,  521, 
    2428   521,    0,    0,   40,    0,   40,   40,    0,   40,   40, 
    2429    40,   40,   40,   40,   40,    0,    0,   40,   40,   40, 
    2430     0,    0,    0,    0,   40,   40,    0,    0,    0,   40, 
    2431    40,    0,  529,    0,    0,    0,    0,    0,    0,   40, 
    2432     0,    0,  529,   40,   40,    0,    0,    0,   40,    0, 
    2433     0,    0,    0,    0,   40,    0,   40,   40,    0,   40, 
    2434     0,   40,   40,   40,   40,   40,    0,   40,   40,   40, 
    2435    40,   40,   40,   40,   40,   40,   40,   40,   40,   40, 
    2436    40,   40,   40,    0,    0,   40,   40,   40,    0,   40, 
    2437    40,   40,    0,   40,   40,   40,    0,    0,   40,    0, 
    2438    40,    0,    0,   40,   40,   40,   40,    0,    0,   40, 
    2439    40,   40,    0,    0,    0,    0,    0,   40,    0,    0, 
    2440    40,   40,   40,   40,   40,   40,   40,   40,    0,   40, 
    2441    40,   40,   40,   40,    0,  530,   40,    0,    0,    0, 
    2442     0,    0,    0,   40,   40,   40,    0,    0,    0,    0, 
    2443     0,    0,   40,   40,  530,    0,  530,    0,    0,  530, 
    2444   530,  530,  530,  530,  530,  530,    0,    0,  530,  530, 
    2445   530,    0,    0,    0,    0,  530,  530,    0,    0,    0, 
    2446   530,  530,    0,    0,    0,    0,    0,    0,    0,    0, 
    2447   530,    0,    0,    0,  530,  530,    0,    0,    0,  530, 
    2448     0,    0,    0,    0,    0,  530,    0,  530,  530,    0, 
    2449   530,    0,  530,  530,  530,  530,  530,    0,  530,  530, 
    2450   530,  530,  530,  530,  530,  530,  530,  530,  530,  530, 
    2451   530,  530,  530,  530,    0,    0,  530,  530,  530,    0, 
    2452   530,  530,  530,    0,  530,  530,  530,    0,  525,  530, 
    2453     0,  530,    0,    0,  530,  530,  530,  530,  525,  530, 
    2454   530,  530,  530,    0,    0,    0,    0,    0,  530,    0, 
    2455     0,  530,  530,  530,  530,  530,  530,  530,  530,    0, 
    2456   530,  530,  530,  530,  530,    0,    0,  530,  529,  525, 
    2457     0,    0,  525,    0,  530,  530,  530,    0,    0,    0, 
    2458     0,    0,    0,  530,  530,    0,    0,  529,    0,  529, 
    2459     0,    0,  529,  529,  529,  529,  529,  529,  529,    0, 
    2460     0,  529,  529,  529,    0,    0,    0,    0,  529,  529, 
    2461     0,    0,    0,  529,  529,    0,    0,    0,    0,    0, 
    2462     0,    0,    0,  529,    0,    0,    0,  529,  529,    0, 
    2463     0,    0,  529,    0,    0,    0,    0,    0,  529,    0, 
    2464   529,  529,    0,  529,    0,  529,  529,  529,  529,  529, 
    2465     0,  529,  529,  529,  529,  529,  529,  529,  529,  529, 
    2466   529,  529,  529,  529,  529,  529,  529,    0,    0,  529, 
    2467   529,  529,    0,  529,  529,  529,    0,  529,  529,  529, 
    2468     0,  198,  529,    0,  529,    0,    0,  529,  529,  529, 
    2469   529,  198,  529,  529,  529,  529,    0,    0,    0,    0, 
    2470     0,  529,    0,    0,  529,  529,  529,  529,  529,  529, 
    2471   529,  529,    0,  529,  529,  529,  529,  529,    0,    0, 
    2472   529,    0,    0,    0,    0,  198,    0,  529,  529,  529, 
    2473     0,    0,    0,    0,    0,    0,  529,  529,    0,    0, 
    2474     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2475     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2476     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2477     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2478     0,    0,    0,    0,  525,    0,    0,    0,    0,    0, 
    2479     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2480     0,    0,    0,  525,    0,  525,    0,    0,  525,  525, 
    2481   525,  525,  525,  525,  525,    0,    0,  525,  525,  525, 
    2482     0,    0,    0,    0,  525,  525,    0,    0,    0,  525, 
    2483   525,    0,    0,    0,    0,    0,    0,    0,    0,  525, 
    2484     0,    0,    0,  525,  525,    0,    0,    0,  525,    0, 
    2485     0,    0,    0,    0,  525,    0,  525,  525,    0,  525, 
    2486     0,  525,  525,  525,  525,  525,    0,  525,  525,  525, 
    2487   525,  525,  525,  525,  525,  525,  525,  525,  525,  525, 
    2488   525,  525,  525,    0,    0,  525,  525,  525,    0,  525, 
    2489   525,  525,    0,  525,  525,  525,    0,  200,  525,    0, 
    2490   525,    0,    0,  525,  525,  525,  525,  200,    0,  525, 
    2491   525,  525,    0,    0,    0,    0,    0,  525,    0,    0, 
    2492   525,  525,  525,  525,  525,  525,  525,  525,    0,  525, 
    2493   525,  525,  525,  525,    0,    0,  525,  198,    0,    0, 
    2494     0,  200,    0,  525,  525,    0,    0,    0,    0,    0, 
    2495     0,    0,  525,  525,    0,    0,  198,    0,  198,    0, 
    2496     0,  198,  198,  198,  198,  198,  198,  198,    0,    0, 
    2497   198,  198,  198,    0,    0,    0,    0,  198,  198,    0, 
    2498     0,    0,  198,  198,    0,    0,    0,    0,    0,    0, 
    2499     0,    0,  198,    0,    0,    0,  198,  198,    0,    0, 
    2500     0,  198,    0,    0,    0,    0,    0,  198,    0,  198, 
    2501   198,    0,  198,    0,  198,  198,  198,  198,  198,    0, 
    2502   198,  198,  198,  198,  198,  198,  198,  198,  198,  198, 
    2503   198,  198,  198,  198,  198,  198,    0,    0,  198,  198, 
    2504   198,    0,  198,  198,  198,    0,  198,  198,  198,    0, 
    2505   374,  198,    0,  198,    0,    0,  198,  198,  198,  198, 
    2506   374,    0,  198,  198,  198,    0,    0,    0,    0,    0, 
    2507   198,    0,    0,  198,  198,  198,  198,  198,  198,  198, 
    2508   198,    0,  198,  198,  198,  198,  198,    0,    0,  198, 
    2509     0,    0,    0,    0,  374,    0,  198,  198,  198,    0, 
    2510     0,    0,    0,    0,    0,  198,  198,    0,    0,    0, 
    2511     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2512     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2513     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2514     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2515     0,    0,    0,  200,    0,    0,    0,    0,    0,    0, 
    2516     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2517     0,    0,  200,    0,  200,    0,    0,  200,  200,  200, 
    2518   200,  200,  200,  200,    0,    0,  200,  200,  200,    0, 
    2519     0,    0,    0,  200,  200,    0,    0,    0,  200,  200, 
    2520     0,    0,    0,    0,    0,    0,    0,    0,  200,    0, 
    2521     0,    0,  200,  200,    0,    0,    0,  200,    0,    0, 
    2522     0,    0,    0,  200,    0,  200,  200,    0,  200,    0, 
    2523   200,  200,  200,  200,  200,    0,  200,  200,  200,  200, 
    2524   200,  200,  200,  200,  200,  200,  200,  200,  200,  200, 
    2525   200,  200,    0,    0,  200,  200,  200,    0,  200,  200, 
    2526   200,    0,  200,  200,  200,    0,  359,  200,    0,  200, 
    2527     0,    0,  200,  200,  200,  200,  359,    0,  200,  200, 
    2528   200,    0,    0,    0,    0,    0,  200,    0,    0,  200, 
    2529   200,  200,  200,  200,  200,  200,  200,    0,  200,  200, 
    2530   200,  200,  200,    0,    0,  200,  374,    0,    0,    0, 
    2531   359,    0,  200,  200,  200,    0,    0,    0,    0,    0, 
    2532     0,  200,  200,    0,    0,  374,    0,  374,    0,    0, 
    2533   374,  374,  374,  374,  374,  374,  374,    0,    0,  374, 
    2534   374,  374,    0,    0,    0,    0,  374,  374,    0,    0, 
    2535     0,  374,  374,    0,    0,    0,    0,    0,    0,    0, 
    2536     0,  374,    0,    0,    0,  374,  374,    0,    0,    0, 
    2537   374,    0,    0,    0,    0,    0,  374,    0,  374,  374, 
    2538     0,  374,    0,  374,  374,  374,  374,  374,    0,  374, 
    2539   374,  374,  374,  374,  374,  374,  374,  374,  374,  374, 
    2540   374,  374,  374,  374,  374,    0,    0,  374,  374,  374, 
    2541     0,  374,  374,  374,    0,  374,  374,  374,    0,   59, 
    2542   374,    0,  374,    0,    0,  374,  374,  374,  374,   59, 
    2543     0,  374,  374,  374,    0,    0,    0,    0,    0,  374, 
    2544     0,    0,  374,  374,  374,  374,  374,  374,  374,  374, 
    2545     0,  374,  374,  374,  374,  374,    0,    0,  374,    0, 
    2546     0,    0,    0,    0,    0,  374,  374,  374,    0,    0, 
    2547     0,    0,    0,    0,  374,  374,    0,    0,    0,    0, 
    2548     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2549     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2550     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2551     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2552     0,    0,  359,    0,    0,    0,    0,    0,    0,    0, 
    2553     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2554     0,  359,    0,  359,    0,    0,  359,  359,  359,  359, 
    2555   359,  359,  359,    0,    0,  359,  359,  359,    0,    0, 
    2556     0,    0,  359,  359,    0,    0,    0,  359,  359,    0, 
    2557     0,    0,    0,    0,    0,    0,    0,  359,    0,    0, 
    2558     0,  359,  359,    0,    0,    0,  359,    0,    0,    0, 
    2559     0,    0,  359,    0,  359,  359,    0,  359,    0,  359, 
    2560   359,  359,  359,  359,    0,  359,  359,  359,  359,  359, 
    2561   359,  359,  359,  359,  359,  359,  359,  359,  359,  359, 
    2562   359,    0,    0,  359,  359,  359,    0,  359,  359,  359, 
    2563     0,  359,  359,  359,    0,  125,  359,    0,  359,    0, 
    2564     0,  359,  359,  359,  359,  125,    0,  359,  359,  359, 
    2565     0,    0,    0,    0,    0,  359,    0,    0,  359,  359, 
    2566   359,  359,  359,  359,  359,  359,    0,  359,  359,  359, 
    2567   359,  359,    0,    0,  359,   59,    0,    0,    0,  125, 
    2568     0,  359,  359,  359,    0,    0,    0,    0,    0,    0, 
    2569   359,  359,    0,    0,   59,    0,   59,    0,    0,   59, 
    2570    59,   59,   59,   59,   59,   59,    0,    0,   59,   59, 
    2571    59,    0,    0,    0,    0,   59,   59,    0,    0,    0, 
    2572    59,   59,    0,    0,    0,    0,    0,    0,    0,    0, 
    2573    59,    0,    0,    0,   59,   59,    0,    0,    0,   59, 
    2574     0,    0,    0,    0,    0,   59,    0,   59,   59,    0, 
    2575    59,    0,   59,   59,   59,   59,   59,    0,   59,   59, 
    2576    59,   59,   59,   59,   59,   59,   59,   59,   59,   59, 
    2577    59,   59,   59,   59,    0,    0,   59,   59,   59,    0, 
    2578    59,   59,   59,    0,   59,   59,   59,    0,  432,   59, 
    2579     0,   59,    0,    0,   59,   59,   59,   59,  432,    0, 
    2580    59,   59,   59,    0,    0,    0,    0,    0,   59,    0, 
    2581     0,   59,   59,   59,   59,   59,   59,   59,   59,    0, 
    2582    59,   59,   59,   59,   59,    0,    0,   59,    0,    0, 
    2583     0,    0,    0,    0,   59,   59,   59,    0,    0,    0, 
    2584     0,    0,    0,   59,   59,    0,    0,    0,    0,    0, 
    2585     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2586     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2587     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2588     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2589     0,  125,    0,    0,    0,    0,    0,    0,    0,    0, 
    2590     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    2591   125,    0,  125,    0,    0,  125,  125,  125,  125,  125, 
    2592   125,  125,    0,    0,  125,  125,  125,    0,    0,    0, 
    2593     0,  125,  125,    0,    0,    0,  125,  125,    0,  441, 
    2594     0,    0,    0,    0,    0,    0,  125,    0,    0,  441, 
    2595   125,  125,    0,    0,    0,  125,    0,    0,    0,    0, 
    2596     0,  125,    0,  125,  125,    0,  125,    0,  125,  125, 
    2597   125,  125,  125,    0,  125,  125,  125,  125,  125,  125, 
    2598   125,  125,  125,  125,  125,  125,  125,  125,  125,  125, 
    2599     0,    0,  125,  125,  125,    0,  125,  125,  125,    0, 
    2600   125,  125,  125,    0,    0,  125,    0,  125,    0,    0, 
    2601   125,  125,  125,  125,    0,    0,  125,  125,  125,    0, 
    2602     0,    0,    0,    0,  125,    0,    0,  125,  125,  125, 
    2603   125,  125,  125,  125,  125,    0,  125,  125,  125,  125, 
    2604   125,    0,    0,  125,  432,    0,    0,    0,    0,    0, 
    2605   125,  125,    0,    0,    0,    0,    0,    0,    0,  125, 
    2606   125,    0,    0,  432,    0,  432,    0,    0,  432,  432, 
    2607   432,  432,  432,  432,  432,    0,    0,  432,  432,  432, 
    2608     0,    0,    0,    0,  432,  432,    0,    0,    0,  432, 
    2609   432,    0,  357,    0,    0,    0,    0,    0,    0,  432, 
    2610     0,    0,  357,  432,  432,    0,    0,    0,  432,    0, 
    2611     0,    0,    0,    0,  432,    0,  432,  432,    0,  432, 
    2612     0,  432,  432,  432,  432,  432,    0,  432,  432,  432, 
    2613   432,  432,  432,  432,  432,  432,  432,  432,  432,  432, 
    2614   432,  432,  432,    0,    0,  432,  432,  432,    0,  432, 
    2615   432,  432,    0,  432,  432,  432,    0,    0,  432,    0, 
    2616   432,    0,    0,  432,  432,  432,  432,    0,    0,  432, 
    2617   432,  432,    0,    0,    0,    0,    0,  432,    0,    0, 
    2618   432,  432,  432,  432,  432,  432,  432,  432,    0,  432, 
    2619   432,  432,  432,  432,    0,  441,  432,    0,    0,    0, 
    2620     0,    0,    0,  432,  432,  432,    0,    0,    0,    0, 
    2621     0,    0,  432,  432,  441,    0,  441,    0,    0,  441, 
    2622   441,  441,  441,  441,  441,  441,    0,    0,  441,  441, 
    2623   441,    0,    0,    0,    0,  441,  441,    0,    0,    0, 
    2624   441,  441,    0,   69,    0,    0,    0,    0,    0,    0, 
    2625   441,    0,    0,   69,  441,  441,    0,    0,    0,  441, 
    2626     0,    0,    0,    0,    0,  441,    0,  441,  441,    0, 
    2627   441,    0,  441,  441,  441,  441,  441,    0,  441,  441, 
    2628   441,  441,  441,  441,  441,  441,  441,  441,  441,  441, 
    2629   441,  441,  441,  441,    0,    0,  441,  441,  441,    0, 
    2630   441,  441,  441,    0,  441,  441,  441,    0,    0,  441, 
    2631     0,  441,    0,    0,  441,  441,  441,  441,    0,    0, 
    2632   441,  441,  441,    0,    0,    0,    0,    0,  441,    0, 
    2633     0,  441,  441,  441,  441,  441,  441,  441,  441,    0, 
    2634   441,  441,  441,  441,  441,    0,    0,  441,  357,    0, 
    2635     0,    0,    0,    0,  441,  441,  441,    0,    0,    0, 
    2636     0,    0,    0,  441,  441,    0,    0,  357,    0,  357, 
    2637     0,    0,  357,  357,  357,  357,  357,  357,  357,    0, 
    2638     0,  357,  357,  357,    0,    0,    0,    0,  357,  357, 
    2639     0,    0,    0,  357,  357,    0,   53,    0,    0,    0, 
    2640     0,    0,    0,  357,    0,    0,   53,  357,  357,    0, 
    2641     0,    0,  357,    0,    0,    0,    0,    0,  357,    0, 
    2642   357,  357,    0,  357,    0,  357,  357,  357,  357,  357, 
    2643     0,  357,  357,  357,  357,  357,  357,  357,  357,  357, 
    2644   357,  357,  357,  357,  357,  357,  357,    0,    0,  357, 
    2645   357,  357,    0,  357,  357,  357,    0,  357,  357,  357, 
    2646     0,    0,  357,    0,  357,    0,    0,  357,  357,  357, 
    2647   357,    0,    0,  357,  357,  357,    0,    0,    0,    0, 
    2648     0,  357,    0,    0,  357,  357,  357,  357,  357,  357, 
    2649   357,  357,    0,  357,  357,  357,  357,  357,    0,   69, 
    2650   357,    0,    0,    0,    0,    0,    0,  357,  357,  357, 
    2651     0,    0,    0,    0,    0,    0,  357,  357,   69,    0, 
    2652    69,    0,    0,   69,   69,   69,   69,   69,   69,   69, 
    2653     0,    0,   69,   69,   69,    0,    0,    0,    0,   69, 
    2654    69,    0,    0,    0,   69,   69,    0,  169,    0,    0, 
    2655     0,    0,    0,    0,   69,    0,    0,  169,   69,   69, 
    2656     0,    0,    0,   69,    0,    0,    0,    0,    0,   69, 
    2657     0,   69,   69,    0,   69,    0,   69,   69,   69,   69, 
    2658    69,    0,   69,   69,   69,   69,   69,   69,   69,   69, 
    2659    69,   69,   69,   69,   69,   69,   69,   69,    0,    0, 
    2660    69,   69,   69,    0,   69,   69,   69,    0,   69,   69, 
    2661    69,    0,    0,   69,    0,   69,    0,    0,   69,   69, 
    2662    69,   69,    0,    0,   69,   69,   69,    0,    0,    0, 
    2663     0,    0,   69,    0,    0,   69,   69,   69,   69,   69, 
    2664    69,   69,   69,    0,   69,   69,   69,   69,   69,    0, 
    2665     0,   69,   53,    0,    0,    0,    0,    0,   69,   69, 
    2666    69,    0,    0,    0,    0,    0,    0,   69,   69,    0, 
    2667     0,   53,    0,   53,    0,    0,   53,   53,   53,   53, 
    2668    53,   53,   53,    0,    0,   53,   53,   53,    0,    0, 
    2669     0,    0,   53,   53,    0,    0,    0,   53,   53,    0, 
    2670   177,    0,    0,    0,    0,    0,    0,   53,    0,    0, 
    2671   177,   53,   53,    0,    0,    0,   53,    0,    0,    0, 
    2672     0,    0,   53,    0,   53,   53,    0,   53,    0,   53, 
    2673    53,   53,   53,   53,    0,   53,   53,   53,   53,   53, 
    2674    53,   53,   53,   53,   53,   53,   53,   53,   53,   53, 
    2675    53,    0,    0,   53,   53,   53,    0,   53,   53,   53, 
    2676     0,   53,   53,   53,    0,    0,   53,    0,   53,    0, 
    2677     0,   53,   53,   53,   53,    0,    0,   53,   53,   53, 
    2678     0,    0,    0,    0,    0,   53,    0,    0,   53,   53, 
    2679    53,   53,   53,   53,   53,   53,    0,   53,   53,   53, 
    2680    53,   53,    0,  169,   53,    0,    0,    0,    0,    0, 
    2681     0,   53,   53,   53,    0,    0,    0,    0,    0,    0, 
    2682    53,   53,  169,    0,  169,    0,    0,  169,  169,  169, 
    2683   169,  169,  169,  169,    0,    0,  169,  169,  169,    0, 
    2684     0,    0,    0,  169,  169,    0,    0,    0,  169,  169, 
    2685     0,   55,    0,    0,    0,    0,    0,    0,  169,    0, 
    2686     0,   55,  169,  169,    0,    0,    0,  169,    0,    0, 
    2687     0,    0,    0,  169,    0,  169,  169,    0,  169,    0, 
    2688   169,  169,  169,  169,  169,    0,  169,  169,  169,  169, 
    2689   169,  169,  169,  169,  169,  169,  169,  169,  169,  169, 
    2690   169,  169,    0,    0,  169,  169,  169,    0,  169,  169, 
    2691   169,    0,  169,  169,  169,    0,    0,  169,    0,  169, 
    2692     0,    0,  169,  169,  169,  169,    0,    0,  169,  169, 
    2693   169,    0,    0,    0,    0,    0,  169,    0,    0,  169, 
    2694   169,  169,  169,  169,  169,  169,  169,    0,  169,  169, 
    2695   169,  169,  169,    0,    0,  169,  177,    0,    0,    0, 
    2696     0,    0,  169,  169,  169,    0,    0,    0,    0,    0, 
    2697     0,  169,  169,    0,    0,  177,    0,  177,    0,    0, 
    2698   177,  177,  177,  177,  177,  177,  177,    0,    0,  177, 
    2699   177,  177,    0,    0,    0,    0,  177,  177,    0,    0, 
    2700     0,  177,  177,    0,  362,    0,    0,    0,    0,    0, 
    2701     0,  177,    0,    0,  362,  177,  177,    0,    0,    0, 
    2702   177,    0,    0,    0,    0,    0,  177,    0,  177,  177, 
    2703     0,  177,    0,  177,  177,  177,  177,  177,    0,  177, 
    2704   177,  177,  177,  177,  177,  177,  177,  177,  177,  177, 
    2705   177,  177,  177,  177,  177,    0,    0,  177,  177,  177, 
    2706     0,  177,  177,  177,    0,  177,  177,  177,    0,    0, 
    2707   177,    0,  177,    0,    0,  177,  177,  177,  177,    0, 
    2708     0,  177,  177,  177,    0,    0,    0,    0,    0,  177, 
    2709     0,    0,  177,  177,  177,  177,  177,  177,  177,  177, 
    2710     0,  177,  177,  177,  177,  177,    0,   55,  177,    0, 
    2711     0,    0,    0,    0,    0,  177,  177,  177,    0,    0, 
    2712     0,    0,    0,    0,  177,  177,   55,    0,   55,    0, 
    2713     0,   55,   55,   55,   55,   55,   55,   55,    0,    0, 
    2714    55,   55,   55,    0,    0,    0,    0,   55,   55,    0, 
    2715     0,    0,   55,   55,    0,  164,    0,    0,    0,    0, 
    2716     0,    0,   55,    0,    0,  164,   55,   55,    0,    0, 
    2717     0,   55,    0,    0,    0,    0,    0,   55,    0,   55, 
    2718    55,    0,   55,    0,   55,   55,   55,   55,   55,    0, 
    2719    55,   55,   55,   55,   55,   55,   55,   55,   55,   55, 
    2720    55,   55,   55,   55,   55,   55,    0,    0,   55,   55, 
    2721    55,    0,   55,   55,   55,    0,   55,   55,   55,    0, 
    2722     0,   55,    0,   55,    0,    0,   55,   55,   55,   55, 
    2723     0,    0,   55,   55,   55,    0,    0,    0,    0,    0, 
    2724    55,    0,    0,   55,   55,   55,   55,   55,   55,   55, 
    2725    55,    0,   55,   55,   55,   55,   55,    0,    0,   55, 
    2726   362,    0,    0,    0,    0,    0,   55,   55,   55,    0, 
    2727     0,    0,    0,    0,    0,   55,   55,    0,    0,  362, 
    2728     0,  362,    0,    0,  362,  362,  362,  362,  362,  362, 
    2729   362,    0,    0,  362,  362,  362,    0,    0,    0,    0, 
    2730   362,  362,    0,    0,    0,  362,  362,    0,  406,    0, 
    2731     0,    0,    0,    0,    0,  362,    0,    0,  406,  362, 
    2732   362,    0,    0,    0,  362,    0,    0,    0,    0,    0, 
    2733   362,    0,  362,  362,    0,  362,    0,  362,  362,  362, 
    2734   362,  362,    0,  362,  362,  362,  362,  362,  362,  362, 
    2735   362,  362,  362,  362,  362,  362,  362,  362,  362,    0, 
    2736     0,  362,  362,  362,    0,  362,  362,  362,    0,  362, 
    2737   362,  362,    0,    0,  362,    0,  362,    0,    0,  362, 
    2738   362,  362,  362,    0,    0,  362,  362,  362,    0,    0, 
    2739     0,    0,    0,  362,    0,    0,  362,  362,  362,  362, 
    2740   362,  362,  362,  362,    0,  362,  362,  362,  362,  362, 
    2741     0,  164,  362,    0,    0,    0,    0,    0,    0,  362, 
    2742   362,  362,    0,    0,    0,    0,    0,    0,  362,  362, 
    2743   164,    0,  164,    0,    0,  164,  164,  164,  164,  164, 
    2744   164,  164,    0,    0,  164,  164,  164,    0,    0,    0, 
    2745     0,  164,  164,    0,    0,    0,  164,  164,    0,  472, 
    2746     0,    0,    0,    0,    0,    0,  164,    0,    0,  472, 
    2747   164,  164,    0,    0,    0,  164,    0,    0,    0,    0, 
    2748     0,  164,    0,  164,  164,    0,  164,    0,  164,  164, 
    2749   164,  164,  164,    0,  164,  164,  164,  164,  164,  164, 
    2750   164,  164,  164,  164,  164,  164,  164,  164,  164,  164, 
    2751     0,    0,  164,  164,  164,    0,  164,  164,  164,    0, 
    2752   164,  164,  164,    0,    0,  164,    0,  164,    0,    0, 
    2753   164,  164,  164,  164,    0,    0,  164,  164,  164,    0, 
    2754     0,    0,    0,    0,  164,    0,    0,  164,  164,  164, 
    2755   164,  164,  164,  164,  164,    0,  164,  164,  164,  164, 
    2756   164,    0,    0,  164,  406,    0,    0,    0,    0,    0, 
    2757   164,  164,  164,    0,    0,    0,    0,    0,    0,  164, 
    2758   164,    0,    0,  406,    0,  406,    0,    0,  406,  406, 
    2759   406,  406,  406,  406,  406,    0,    0,  406,  406,  406, 
    2760     0,    0,    0,    0,  406,  406,    0,    0,    0,  406, 
    2761   406,    0,   34,    0,    0,    0,    0,    0,    0,  406, 
    2762     0,    0,   34,  406,  406,    0,    0,    0,  406,    0, 
    2763     0,    0,    0,    0,  406,    0,  406,  406,    0,  406, 
    2764     0,  406,  406,  406,  406,  406,    0,  406,  406,  406, 
    2765   406,  406,  406,  406,  406,  406,  406,  406,  406,  406, 
    2766   406,  406,  406,    0,    0,  406,  406,  406,    0,  406, 
    2767   406,  406,    0,  406,  406,  406,    0,    0,  406,    0, 
    2768   406,    0,    0,  406,  406,  406,  406,    0,    0,  406, 
    2769   406,  406,    0,    0,    0,    0,    0,  406,    0,    0, 
    2770   406,  406,  406,  406,  406,  406,  406,  406,    0,  406, 
    2771   406,  406,  406,  406,    0,  472,  406,    0,    0,    0, 
    2772     0,    0,    0,  406,  406,  406,    0,    0,    0,    0, 
    2773     0,    0,  406,  406,  472,    0,  472,    0,    0,  472, 
    2774   472,  472,  472,  472,  472,  472,    0,    0,  472,  472, 
    2775   472,    0,    0,    0,    0,  472,  472,    0,    0,    0, 
    2776   472,  472,    0,  151,    0,    0,    0,    0,    0,    0, 
    2777   472,    0,    0,  151,  472,  472,    0,    0,    0,  472, 
    2778     0,    0,    0,    0,    0,  472,    0,  472,  472,    0, 
    2779   472,    0,  472,  472,  472,  472,  472,    0,  472,  472, 
    2780   472,  472,  472,  472,  472,  472,  472,  472,  472,  472, 
    2781   472,  472,  472,  472,    0,    0,  472,  472,  472,    0, 
    2782   472,  472,  472,    0,  472,  472,  472,    0,    0,  472, 
    2783     0,  472,    0,    0,  472,  472,  472,  472,    0,    0, 
    2784   472,  472,  472,    0,    0,    0,    0,    0,  472,    0, 
    2785     0,  472,  472,  472,  472,  472,  472,  472,  472,    0, 
    2786   472,  472,  472,  472,  472,    0,    0,  472,   34,    0, 
    2787     0,    0,    0,    0,  472,  472,  472,    0,    0,    0, 
    2788     0,    0,    0,  472,  472,    0,    0,   34,    0,   34, 
    2789     0,    0,   34,   34,   34,   34,   34,   34,   34,    0, 
    2790     0,   34,   34,   34,    0,    0,    0,    0,   34,   34, 
    2791     0,    0,    0,   34,   34,    0,  149,    0,    0,    0, 
    2792     0,    0,    0,   34,    0,    0,  149,   34,   34,    0, 
    2793     0,    0,   34,    0,    0,    0,    0,    0,   34,    0, 
    2794    34,   34,    0,   34,    0,   34,   34,   34,   34,   34, 
    2795     0,   34,   34,   34,   34,   34,   34,   34,   34,   34, 
    2796    34,   34,   34,   34,   34,   34,   34,    0,    0,   34, 
    2797    34,   34,    0,   34,   34,   34,    0,   34,   34,   34, 
    2798     0,    0,   34,    0,   34,    0,    0,   34,   34,   34, 
    2799    34,    0,    0,   34,   34,   34,    0,    0,    0,    0, 
    2800     0,   34,    0,    0,   34,   34,   34,   34,   34,   34, 
    2801    34,   34,    0,   34,   34,   34,   34,   34,    0,  151, 
    2802    34,    0,    0,    0,    0,    0,    0,   34,   34,   34, 
    2803     0,    0,    0,    0,    0,    0,   34,   34,  151,    0, 
    2804   151,    0,    0,  151,  151,  151,  151,  151,  151,  151, 
    2805     0,    0,  151,  151,  151,    0,    0,    0,    0,  151, 
    2806   151,    0,    0,    0,  151,  151,    0,   67,    0,    0, 
    2807     0,    0,    0,    0,  151,    0,    0,   67,  151,  151, 
    2808     0,    0,    0,  151,    0,    0,    0,    0,    0,  151, 
    2809     0,  151,  151,    0,  151,    0,  151,  151,  151,  151, 
    2810   151,    0,  151,  151,  151,  151,  151,  151,  151,  151, 
    2811   151,  151,  151,  151,  151,  151,  151,  151,    0,    0, 
    2812   151,  151,  151,    0,  151,  151,  151,    0,  151,  151, 
    2813   151,    0,    0,  151,    0,  151,    0,    0,  151,  151, 
    2814   151,  151,    0,    0,  151,  151,  151,    0,    0,    0, 
    2815     0,    0,  151,    0,    0,  151,  151,  151,  151,  151, 
    2816   151,  151,  151,    0,  151,  151,  151,  151,  151,    0, 
    2817     0,  151,  149,    0,    0,    0,    0,    0,  151,  151, 
    2818   151,    0,    0,    0,    0,    0,    0,  151,  151,    0, 
    2819     0,  149,    0,  149,    0,    0,  149,  149,  149,  149, 
    2820   149,  149,  149,    0,    0,  149,  149,  149,    0,    0, 
    2821     0,    0,  149,  149,    0,    0,    0,  149,  149,    0, 
    2822    68,    0,    0,    0,    0,    0,    0,  149,    0,    0, 
    2823    68,  149,  149,    0,    0,    0,  149,    0,    0,    0, 
    2824     0,    0,  149,    0,  149,  149,    0,  149,    0,  149, 
    2825   149,  149,  149,  149,    0,  149,  149,  149,  149,  149, 
    2826   149,  149,  149,  149,  149,  149,  149,  149,  149,  149, 
    2827   149,    0,    0,  149,  149,  149,    0,  149,  149,  149, 
    2828     0,  149,  149,  149,    0,    0,  149,    0,  149,    0, 
    2829     0,  149,  149,  149,  149,    0,    0,  149,  149,  149, 
    2830     0,    0,    0,    0,    0,  149,    0,    0,  149,  149, 
    2831   149,  149,  149,  149,  149,  149,    0,  149,  149,  149, 
    2832   149,  149,    0,   67,  149,    0,    0,    0,    0,    0, 
    2833     0,  149,  149,  149,    0,    0,    0,    0,    0,    0, 
    2834   149,  149,   67,    0,   67,    0,    0,   67,   67,   67, 
    2835    67,   67,   67,   67,    0,    0,   67,   67,   67,    0, 
    2836     0,    0,    0,   67,   67,    0,    0,    0,   67,   67, 
    2837     0,   40,    0,    0,    0,    0,    0,    0,   67,    0, 
    2838     0,   40,   67,   67,    0,    0,    0,   67,    0,    0, 
    2839     0,    0,    0,   67,    0,   67,   67,    0,   67,    0, 
    2840    67,   67,   67,   67,   67,    0,   67,   67,   67,   67, 
    2841    67,   67,   67,   67,   67,   67,   67,   67,   67,   67, 
    2842    67,   67,    0,    0,   67,   67,   67,    0,   67,   67, 
    2843    67,    0,   67,   67,   67,    0,    0,   67,    0,   67, 
    2844     0,    0,   67,   67,   67,   67,    0,    0,   67,   67, 
    2845    67,    0,    0,    0,    0,    0,   67,    0,    0,   67, 
    2846    67,   67,   67,   67,   67,   67,   67,    0,   67,   67, 
    2847    67,   67,   67,    0,    0,   67,   68,    0,    0,    0, 
    2848     0,    0,   67,   67,   67,    0,    0,    0,    0,    0, 
    2849     0,   67,   67,    0,    0,   68,    0,   68,    0,    0, 
    2850    68,   68,   68,   68,   68,   68,   68,    0,    0,   68, 
    2851    68,   68,    0,    0,    0,    0,   68,   68,    0,    0, 
    2852     0,   68,   68,    0,  438,    0,    0,    0,    0,    0, 
    2853     0,   68,    0,    0,  438,   68,   68,    0,    0,    0, 
    2854    68,    0,    0,    0,    0,    0,   68,    0,   68,   68, 
    2855     0,   68,    0,   68,   68,   68,   68,   68,    0,   68, 
    2856    68,   68,   68,   68,   68,   68,   68,   68,   68,   68, 
    2857    68,   68,   68,   68,   68,    0,    0,   68,   68,   68, 
    2858     0,   68,   68,   68,    0,   68,   68,   68,    0,    0, 
    2859    68,    0,   68,    0,    0,   68,   68,   68,   68,    0, 
    2860     0,   68,   68,   68,    0,    0,    0,    0,    0,   68, 
    2861     0,    0,   68,   68,   68,   68,   68,   68,   68,   68, 
    2862     0,   68,   68,   68,   68,   68,    0,   40,   68,    0, 
    2863     0,    0,    0,    0,    0,   68,   68,   68,    0,    0, 
    2864     0,    0,    0,    0,   68,   68,   40,    0,   40,    0, 
    2865     0,   40,   40,   40,   40,   40,   40,   40,    0,    0, 
    2866    40,   40,   40,    0,    0,    0,    0,   40,   40,    0, 
    2867     0,    0,   40,   40,    0,  439,    0,    0,    0,    0, 
    2868     0,    0,   40,    0,    0,  439,   40,   40,    0,    0, 
    2869     0,   40,    0,    0,    0,    0,    0,   40,    0,   40, 
    2870    40,    0,   40,    0,   40,   40,   40,   40,   40,    0, 
    2871    40,   40,   40,   40,   40,   40,   40,   40,   40,   40, 
    2872    40,   40,   40,   40,   40,   40,    0,    0,   40,   40, 
    2873    40,    0,   40,   40,   40,    0,   40,   40,   40,    0, 
    2874     0,   40,    0,   40,    0,    0,   40,   40,   40,   40, 
    2875     0,    0,   40,   40,   40,    0,    0,    0,    0,    0, 
    2876    40,    0,    0,   40,   40,   40,   40,   40,   40,   40, 
    2877    40,    0,   40,   40,   40,   40,   40,    0,    0,   40, 
    2878   438,    0,    0,    0,    0,    0,   40,   40,   40,    0, 
    2879     0,    0,    0,    0,    0,   40,   40,    0,    0,  438, 
    2880     0,  438,    0,    0,  438,  438,  438,  438,  438,  438, 
    2881   438,    0,    0,  438,  438,  438,    0,    0,    0,    0, 
    2882   438,  438,    0,    0,    0,  438,  438,    0,  467,    0, 
    2883     0,    0,    0,    0,    0,  438,    0,    0,  467,  438, 
    2884   438,    0,    0,    0,  438,    0,    0,    0,    0,    0, 
    2885   438,    0,  438,  438,    0,  438,    0,  438,  438,  438, 
    2886   438,  438,    0,  438,  438,  438,  438,  438,  438,  438, 
    2887   438,  438,  438,  438,  438,  438,  438,  438,  438,    0, 
    2888     0,  438,  438,  438,    0,  438,  438,  438,    0,  438, 
    2889   438,  438,    0,    0,  438,    0,  438,    0,    0,  438, 
    2890   438,  438,  438,    0,    0,  438,  438,  438,    0,    0, 
    2891     0,    0,    0,  438,    0,    0,  438,  438,  438,  438, 
    2892   438,  438,  438,  438,    0,  438,  438,  438,  438,  438, 
    2893     0,  439,  438,    0,    0,    0,    0,    0,    0,  438, 
    2894   438,  438,    0,    0,    0,    0,    0,    0,  438,  438, 
    2895   439,    0,  439,    0,    0,  439,  439,  439,  439,  439, 
    2896   439,  439,    0,    0,  439,  439,  439,    0,    0,    0, 
    2897     0,  439,  439,    0,    0,    0,  439,  439,    0,   43, 
    2898     0,    0,    0,    0,    0,    0,  439,    0,    0,   43, 
    2899   439,  439,    0,    0,    0,  439,    0,    0,    0,    0, 
    2900     0,  439,    0,  439,  439,    0,  439,    0,  439,  439, 
    2901   439,  439,  439,    0,  439,  439,  439,  439,  439,  439, 
    2902   439,  439,  439,  439,  439,  439,  439,  439,  439,  439, 
    2903     0,    0,  439,  439,  439,    0,  439,  439,  439,    0, 
    2904   439,  439,  439,    0,    0,  439,    0,  439,    0,    0, 
    2905   439,  439,  439,  439,    0,    0,  439,  439,  439,    0, 
    2906     0,    0,    0,    0,  439,    0,    0,  439,  439,  439, 
    2907   439,  439,  439,  439,  439,    0,  439,  439,  439,  439, 
    2908   439,    0,    0,  439,  467,    0,    0,    0,    0,    0, 
    2909   439,  439,  439,    0,    0,    0,    0,    0,    0,  439, 
    2910   439,    0,    0,  467,    0,  467,    0,    0,  467,  467, 
    2911   467,  467,  467,  467,  467,    0,    0,  467,  467,  467, 
    2912     0,    0,    0,    0,  467,  467,    0,    0,    0,  467, 
    2913   467,    0,  363,    0,    0,    0,    0,    0,    0,  467, 
    2914     0,    0,  363,  467,  467,    0,    0,    0,  467,    0, 
    2915     0,    0,    0,    0,  467,    0,  467,  467,    0,  467, 
    2916     0,  467,  467,  467,  467,  467,    0,  467,  467,  467, 
    2917   467,  467,  467,  467,  467,  467,  467,  467,  467,  467, 
    2918   467,  467,  467,    0,    0,  467,  467,  467,    0,  467, 
    2919   467,  467,    0,  467,  467,  467,    0,    0,  467,    0, 
    2920   467,    0,    0,  467,  467,  467,  467,    0,    0,  467, 
    2921   467,  467,    0,    0,    0,    0,    0,  467,    0,    0, 
    2922   467,  467,  467,  467,  467,  467,  467,  467,    0,  467, 
    2923   467,  467,  467,  467,    0,   43,  467,    0,    0,    0, 
    2924     0,    0,    0,  467,  467,  467,    0,    0,    0,    0, 
    2925     0,    0,  467,  467,   43,    0,   43,    0,    0,   43, 
    2926    43,   43,   43,   43,   43,   43,    0,    0,   43,   43, 
    2927    43,    0,    0,    0,    0,   43,   43,    0,    0,    0, 
    2928    43,   43,    0,  473,    0,    0,    0,    0,    0,    0, 
    2929    43,    0,    0,  473,   43,   43,    0,    0,    0,   43, 
    2930     0,    0,    0,    0,    0,   43,    0,   43,   43,    0, 
    2931    43,    0,   43,   43,   43,   43,   43,    0,   43,   43, 
    2932    43,   43,   43,   43,   43,   43,   43,   43,   43,   43, 
    2933    43,   43,   43,   43,    0,    0,   43,   43,   43,    0, 
    2934    43,   43,   43,    0,   43,   43,   43,    0,    0,   43, 
    2935     0,   43,    0,    0,   43,   43,   43,   43,    0,    0, 
    2936    43,   43,   43,    0,    0,    0,    0,    0,   43,    0, 
    2937     0,   43,   43,   43,   43,   43,   43,   43,   43,    0, 
    2938    43,   43,   43,   43,   43,    0,    0,   43,  363,    0, 
    2939     0,    0,    0,    0,   43,   43,   43,    0,    0,    0, 
    2940     0,    0,    0,   43,   43,    0,    0,  363,    0,  363, 
    2941     0,    0,  363,  363,  363,  363,  363,  363,  363,    0, 
    2942     0,  363,  363,  363,    0,    0,    0,    0,  363,  363, 
    2943     0,    0,    0,  363,  363,    0,  365,    0,    0,    0, 
    2944     0,    0,    0,  363,    0,    0,  365,  363,  363,    0, 
    2945     0,    0,  363,    0,    0,    0,    0,    0,  363,    0, 
    2946   363,  363,    0,  363,    0,  363,  363,  363,  363,  363, 
    2947     0,  363,  363,  363,  363,  363,  363,  363,  363,  363, 
    2948   363,  363,  363,  363,  363,  363,  363,    0,    0,  363, 
    2949   363,  363,    0,  363,  363,  363,    0,  363,  363,  363, 
    2950     0,    0,  363,    0,  363,    0,    0,  363,  363,  363, 
    2951   363,    0,    0,  363,  363,  363,    0,    0,    0,    0, 
    2952     0,  363,    0,    0,  363,  363,  363,  363,  363,  363, 
    2953   363,  363,    0,  363,  363,  363,  363,  363,    0,  473, 
    2954   363,    0,    0,    0,    0,    0,    0,  363,  363,  363, 
    2955     0,    0,    0,    0,    0,    0,  363,  363,  473,    0, 
    2956   473,    0,    0,  473,  473,  473,  473,  473,  473,  473, 
    2957     0,    0,  473,  473,  473,    0,    0,    0,    0,  473, 
    2958   473,    0,    0,    0,  473,  473,    0,  409,    0,    0, 
    2959     0,    0,    0,    0,  473,    0,    0,  409,  473,  473, 
    2960     0,    0,    0,  473,    0,    0,    0,    0,    0,  473, 
    2961     0,  473,  473,    0,  473,    0,  473,  473,  473,  473, 
    2962   473,    0,  473,  473,  473,  473,  473,  473,  473,  473, 
    2963   473,  473,  473,  473,  473,  473,  473,  473,    0,    0, 
    2964   473,  473,  473,    0,  473,  473,  473,    0,  473,  473, 
    2965   473,    0,    0,  473,    0,  473,    0,    0,  473,  473, 
    2966   473,  473,    0,    0,  473,  473,  473,    0,    0,    0, 
    2967     0,    0,  473,    0,    0,  473,  473,  473,  473,  473, 
    2968   473,  473,  473,    0,  473,  473,  473,  473,  473,    0, 
    2969     0,  473,  365,    0,    0,    0,    0,    0,  473,  473, 
    2970   473,    0,    0,    0,    0,    0,    0,  473,  473,    0, 
    2971     0,  365,    0,  365,    0,    0,  365,  365,  365,  365, 
    2972   365,  365,  365,    0,    0,  365,  365,  365,    0,    0, 
    2973     0,    0,  365,  365,    0,    0,    0,  365,  365,    0, 
    2974   549,    0,    0,    0,    0,    0,    0,  365,    0,    0, 
    2975   549,  365,  365,    0,    0,    0,  365,    0,    0,    0, 
    2976     0,    0,  365,    0,  365,  365,    0,  365,    0,  365, 
    2977   365,  365,  365,  365,    0,  365,  365,  365,  365,  365, 
    2978   365,  365,  365,  365,  365,  365,  365,  365,  365,  365, 
    2979   365,    0,    0,  365,  365,  365,    0,  365,  365,  365, 
    2980     0,  365,  365,  365,    0,    0,  365,    0,  365,    0, 
    2981     0,  365,  365,  365,  365,    0,    0,  365,  365,  365, 
    2982     0,    0,    0,    0,    0,  365,    0,    0,  365,  365, 
    2983   365,  365,  365,  365,  365,  365,    0,  365,  365,  365, 
    2984   365,  365,    0,  409,  365,    0,    0,    0,    0,    0, 
    2985     0,  365,  365,  365,    0,    0,    0,    0,    0,    0, 
    2986   365,  365,  409,    0,  409,    0,    0,  409,  409,  409, 
    2987   409,  409,  409,  409,    0,    0,  409,  409,  409,    0, 
    2988     0,    0,    0,  409,  409,    0,    0,    0,  409,  409, 
    2989     0,  410,    0,    0,    0,    0,    0,    0,  409,    0, 
    2990     0,  410,  409,  409,    0,    0,    0,  409,    0,    0, 
    2991     0,    0,    0,  409,    0,  409,  409,    0,  409,    0, 
    2992   409,  409,  409,  409,  409,    0,  409,  409,  409,  409, 
    2993   409,  409,  409,  409,  409,  409,  409,  409,  409,  409, 
    2994   409,  409,    0,    0,  409,  409,  409,    0,  409,  409, 
    2995   409,    0,  409,  409,  409,    0,    0,  409,    0,  409, 
    2996     0,    0,  409,  409,  409,  409,    0,    0,  409,  409, 
    2997   409,    0,    0,    0,    0,    0,  409,    0,    0,  409, 
    2998   409,  409,  409,  409,  409,  409,  409,    0,  409,  409, 
    2999   409,  409,  409,    0,    0,  409,  549,    0,    0,    0, 
    3000     0,    0,  409,  409,  409,    0,    0,    0,    0,    0, 
    3001     0,  409,  409,    0,    0,  549,    0,  549,    0,    0, 
    3002   549,  549,  549,  549,  549,  549,  549,    0,    0,  549, 
    3003   549,  549,    0,    0,    0,    0,  549,  549,    0,    0, 
    3004     0,  549,  549,    0,  415,    0,    0,    0,    0,    0, 
    3005     0,  549,    0,    0,  415,  549,  549,    0,    0,    0, 
    3006   549,    0,    0,    0,    0,    0,  549,    0,  549,  549, 
    3007     0,  549,    0,  549,  549,  549,  549,  549,    0,  549, 
    3008   549,  549,  549,  549,  549,  549,  549,  549,  549,  549, 
    3009   549,  549,  549,  549,  549,    0,    0,  549,  549,  549, 
    3010     0,  549,  549,  549,    0,  549,  549,  549,    0,    0, 
    3011   549,    0,  549,    0,    0,  549,  549,  549,  549,    0, 
    3012     0,  549,  549,  549,    0,    0,    0,    0,    0,  549, 
    3013     0,    0,  549,  549,  549,  549,  549,  549,  549,  549, 
    3014     0,  549,  549,  549,  549,  549,    0,  410,  549,    0, 
    3015     0,    0,    0,    0,    0,  549,  549,  549,    0,    0, 
    3016     0,    0,    0,    0,  549,  549,  410,    0,  410,    0, 
    3017     0,  410,  410,  410,  410,  410,  410,  410,    0,    0, 
    3018   410,  410,  410,    0,    0,    0,    0,  410,  410,    0, 
    3019     0,    0,  410,  410,    4,    0,    0,    0,    0,    0, 
    3020     0,    0,  410,    0,    4,    0,  410,  410,    0,    0, 
    3021     0,  410,    0,    0,    0,    0,    0,  410,    0,  410, 
    3022   410,    0,  410,    0,  410,  410,  410,  410,  410,    0, 
    3023   410,  410,  410,  410,  410,  410,  410,  410,  410,  410, 
    3024   410,  410,  410,  410,  410,  410,    0,    0,  410,  410, 
    3025   410,    0,  410,  410,  410,    0,  410,  410,  410,    0, 
    3026     0,  410,    0,  410,    0,    0,  410,  410,  410,  410, 
    3027     0,    0,  410,  410,  410,    0,    0,    0,    0,    0, 
    3028   410,    0,    0,  410,  410,  410,  410,  410,  410,  410, 
    3029   410,    0,  410,  410,  410,  410,  410,    0,    0,  410, 
    3030   415,    0,    0,    0,    0,    0,  410,  410,  410,    0, 
    3031     0,    0,    0,    0,    0,  410,  410,    0,    0,  415, 
    3032     0,  415,    0,    0,  415,  415,  415,  415,  415,  415, 
    3033   415,    0,    0,  415,  415,  415,    0,    0,    0,    0, 
    3034   415,  415,    0,    0,    0,  415,  415,  411,    0,    0, 
    3035     0,    0,    0,    0,    0,  415,    0,  411,    0,  415, 
    3036   415,    0,    0,    0,  415,    0,    0,    0,    0,    0, 
    3037   415,    0,  415,  415,    0,  415,    0,  415,  415,  415, 
    3038   415,  415,    0,  415,  415,  415,  415,  415,  415,  415, 
    3039   415,  415,  415,  415,  415,  415,  415,  415,  415,    0, 
    3040     0,  415,  415,  415,    0,  415,  415,  415,    0,  415, 
    3041   415,  415,    0,    0,  415,    0,  415,    0,    0,  415, 
    3042   415,  415,  415,    0,    0,  415,  415,  415,    0,    0, 
    3043     0,    0,    0,  415,    0,    0,  415,  415,  415,  415, 
    3044   415,  415,  415,  415,    0,  415,  415,  415,  415,  415, 
    3045     4,    0,  415,    0,    0,    0,    0,    0,    0,  415, 
    3046   415,    0,    0,    0,    0,    0,    0,    0,  415,  415, 
    3047     0,    4,    0,    0,    4,    4,    4,    4,    4,    4, 
    3048     4,    0,    0,    4,    4,    4,    0,    0,    0,    0, 
    3049     4,    4,    0,    0,    0,    4,    4,    0,  408,    0, 
    3050     0,    0,    0,    0,    0,    4,    0,    0,  408,    4, 
    3051     4,    0,    0,    0,    4,    0,    0,    0,    0,    0, 
    3052     4,    0,    4,    4,    0,    4,    0,    4,    4,    4, 
    3053     4,    4,    0,    4,    4,    4,    4,    4,    4,    4, 
    3054     4,    4,    4,    4,    4,    4,    4,    4,    4,    0, 
    3055     0,    4,    4,    4,    0,    4,    4,    4,    0,    4, 
    3056     4,    4,    0,    0,    4,    0,    4,    0,    0,    4, 
    3057     4,    4,    4,    0,    0,    4,    4,    4,    0,    0, 
    3058     0,    0,    0,    4,    0,    0,    4,    4,    4,    4, 
    3059     4,    4,    4,    4,    0,    4,    4,    4,    4,    4, 
    3060     0,    0,    4,  411,    0,    0,    0,    0,    0,    4, 
    3061     4,    4,    0,    0,    0,    0,    0,    0,    4,    4, 
    3062     0,    0,  411,    0,  411,    0,    0,  411,  411,  411, 
    3063   411,  411,  411,  411,    0,    0,  411,  411,  411,    0, 
    3064     0,    0,    0,  411,  411,    0,    0,    0,  411,  411, 
    3065     0,  354,    0,    0,    0,    0,    0,    0,  411,    0, 
    3066     0,  354,  411,  411,    0,    0,    0,  411,    0,    0, 
    3067     0,    0,    0,  411,    0,  411,  411,    0,  411,    0, 
    3068   411,  411,  411,  411,  411,    0,  411,  411,  411,  411, 
    3069   411,  411,  411,  411,  411,  411,  411,  411,  411,  411, 
    3070   411,  411,    0,    0,  411,  411,  411,    0,  411,  411, 
    3071   411,    0,  411,  411,  411,    0,    0,  411,    0,  411, 
    3072     0,    0,  411,  411,  411,  411,    0,    0,  411,  411, 
    3073   411,    0,    0,    0,    0,    0,  411,    0,    0,  411, 
    3074   411,  411,  411,  411,  411,  411,  411,    0,  411,  411, 
    3075   411,  411,  411,    0,  408,  411,    0,    0,    0,    0, 
    3076     0,    0,  411,  411,  411,    0,    0,    0,    0,    0, 
    3077     0,    0,  411,  408,    0,  408,    0,    0,  408,  408, 
    3078   408,  408,  408,  408,  408,    0,    0,  408,  408,  408, 
    3079     0,    0,    0,    0,  408,  408,    0,    0,    0,  408, 
    3080   408,    0,  455,    0,    0,    0,    0,    0,    0,  408, 
    3081     0,    0,  455,  408,  408,    0,    0,    0,  408,    0, 
    3082     0,    0,    0,    0,  408,    0,  408,  408,    0,  408, 
    3083     0,  408,  408,  408,  408,  408,    0,  408,  408,  408, 
    3084   408,  408,  408,  408,  408,  408,  408,  408,  408,  408, 
    3085   408,  408,  408,    0,    0,  408,  408,  408,    0,  408, 
    3086   408,  408,    0,  408,  408,  408,    0,    0,  408,    0, 
    3087   408,    0,    0,  408,  408,  408,  408,    0,    0,  408, 
    3088   408,  408,    0,    0,    0,    0,    0,  408,    0,    0, 
    3089   408,  408,  408,  408,  408,  408,  408,  408,    0,  408, 
    3090   408,  408,  408,  408,    0,    0,  408,  354,    0,    0, 
    3091     0,    0,    0,  408,  408,    0,    0,    0,    0,    0, 
    3092     0,    0,  408,  408,    0,    0,  354,    0,  354,    0, 
    3093     0,  354,  354,  354,  354,  354,  354,  354,    0,    0, 
    3094   354,  354,  354,    0,    0,    0,    0,  354,  354,    0, 
    3095     0,    0,  354,  354,    0,   24,    0,    0,    0,    0, 
    3096     0,    0,  354,    0,    0,   24,  354,  354,    0,    0, 
    3097     0,  354,    0,    0,    0,    0,    0,  354,    0,  354, 
    3098   354,    0,  354,    0,  354,  354,  354,  354,  354,    0, 
    3099   354,  354,  354,  354,  354,  354,  354,  354,  354,  354, 
    3100   354,  354,  354,  354,  354,  354,    0,    0,  354,  354, 
    3101   354,    0,  354,  354,  354,    0,  354,  354,  354,    0, 
    3102     0,  354,    0,  354,    0,    0,  354,  354,  354,  354, 
    3103     0,    0,  354,  354,  354,    0,    0,    0,    0,    0, 
    3104   354,    0,    0,  354,  354,  354,  354,    0,  354,  354, 
    3105   354,    0,  354,  354,  354,  354,  354,    0,  455,  354, 
    3106     0,    0,    0,    0,    0,    0,  354,  354,    0,    0, 
    3107     0,    0,    0,    0,    0,    0,  354,  455,    0,  455, 
    3108     0,    0,  455,  455,  455,  455,  455,  455,  455,    0, 
    3109     0,  455,  455,  455,    0,    0,    0,    0,  455,  455, 
    3110     0,    0,    0,  455,  455,    0,    0,    0,    0,    0, 
    3111     0,    0,    0,  455,    0,    0,    0,  455,  455,    0, 
    3112     0,    0,  455,    0,    0,    0,    0,    0,  455,    0, 
    3113   455,  455,    0,  455,    0,  455,  455,  455,  455,  455, 
    3114     0,  455,  455,  455,  455,  455,  455,  455,  455,  455, 
    3115   455,  455,  455,  455,  455,  455,  455,    0,    0,  455, 
    3116   455,  455,    0,  455,  455,  455,    0,  455,  455,  455, 
    3117     0,    0,  455,    0,  455,    0,    0,  455,  455,  455, 
    3118   455,    0,    0,  455,  455,  455,    0,  188,    0,  540, 
    3119   150,  455,  151,    0,  455,  455,  455,  455,    0,  455, 
    3120   455,  455,    0,  455,  455,  455,  455,  455,  545,    0, 
    3121   455,   24,    0,    0,    0,    0,    0,  455,  455,    0, 
    3122     0,    0,    0,    0,    0,    0,    0,  455,    0,    0, 
    3123    24,    0,   24,    0,    0,   24,   24,   24,   24,   24, 
    3124    24,   24,    0,    0,   24,   24,   24,    0,    0,    0, 
    3125     0,   24,   24,    0,    0,    0,   24,   24,    0,  638, 
    3126   417,  415,    0,  416,    0,    0,   24,    0,    0,    0, 
    3127    24,   24,    0,    0,    0,   24,  901,    0,  420,  403, 
    3128   421,   24,    0,   24,   24,    0,   24,    0,   24,   24, 
    3129    24,   24,   24,    0,   24,   24,   24,   24,   24,   24, 
    3130    24,   24,   24,   24,   24,   24,   24,   24,   24,   24, 
    3131     0,    0,   24,   24,   24,    0,   24,   24,   24,    0, 
    3132    24,   24,   24,    0,    0,   24,    0,   24,    0,    0, 
    3133    24,   24,   24,   24,    0,    0,   24,   24,   24,    0, 
    3134   188,    0,  540,  150,   24,  151,    0,   24,   24,   24, 
    3135    24,   24,   24,   24,   24,    0,   24,   24,   24,   24, 
    3136    24,  734,    0,   24,    0,    0,    0,    0,    0,    0, 
    3137    24,   24,   24,    0,    0,    0,    0,    0,    0,   24, 
    3138     0,    0,    0,    0,    0,    0,    0,    0,  188,    0, 
    3139     0,  150,    0,  151,    0,    0,    0,    0,    0,    0, 
    3140     0,    0,    0,    0,    0,    0,    0,    0,    0,  644, 
    3141   149,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3142     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3143     0,    0,    0,    0,  152,  153,    0,    0,    0,  154, 
    3144   155,  156,  157,    0,    0,    0,    0,    0,    0,    0, 
    3145     0,  158,  159,  160,  161,  162,  163,  164,    0,  165, 
    3146   166,  167,    0,    0,  168,  169,  170,    0,  171,  172, 
    3147   173,  174,  175,    0,  176,    0,  404,  405,  406,  407, 
    3148   408,    0,  409,  410,  411,  412,  413,  414,    0,    0, 
    3149   418,  419,    0,    0,    0,    0,    0,    0,    0,    0, 
    3150     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3151     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3152     0,    0,    0,    0,    0,    0,  177,  188,    0,    0, 
    3153   150,    0,  151,    0,    0,    0,    0,  178,  179,    0, 
    3154     0,    0,    0,  180,    0,    0,    0,    0,  666,    0, 
    3155     0,    0,    0,  181,  182,    0,    0,  183,  184,  185, 
    3156   186,    0,    0,  149,   89,    0,    0,    0,    0,    0, 
    3157     0,  187,    0,    0,    0,  188,    0,    0,  150,    0, 
    3158   151,    0,    0,    0,    0,    0,    0,  152,  153,    0, 
    3159     0,    0,  154,  155,  156,  157,  668,    0,    0,    0, 
    3160     0,    0,    0,    0,  158,  159,  160,  161,  162,  163, 
    3161   164,  149,  165,  166,  167,    0,    0,  168,  169,  170, 
    3162     0,  171,  172,  173,  174,  175,    0,  176,    0,    0, 
    3163     0,    0,    0,    0,    0,  152,  153,    0,    0,    0, 
    3164   154,  155,  156,  157,    0,    0,    0,    0,    0,    0, 
    3165     0,    0,  158,  159,  160,  161,  162,  163,  164,    0, 
    3166   165,  166,  167,    0,    0,  168,  169,  170,    0,  171, 
    3167   172,  173,  174,  175,    0,  176,    0,    0,    0,  177, 
    3168     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3169   178,  179,    0,    0,    0,    0,  180,    0,    0,    0, 
    3170     0,    0,    0,    0,    0,    0,  181,  182,    0,    0, 
    3171   183,  184,  185,  186,    0,    0,  188,   89,  706,  150, 
    3172     0,  151,    0,    0,  187,    0,    0,  177,    0,    0, 
    3173     0,    0,    0,    0,    0,    0,    0,    0,  178,  179, 
    3174     0,    0,    0,    0,  180,    0,    0,    0,    0,    0, 
    3175   149,    0,    0,    0,  181,  182,    0,    0,  183,  184, 
    3176   185,  186,    0,    0,  188,   89,  540,  150,    0,  151, 
    3177     0,    0,  187,    0,  152,  153,    0,    0,    0,  154, 
    3178   155,  156,  157,    0,    0,    0,    0,    0,    0,    0, 
    3179     0,  158,  159,  160,  161,  162,  163,  164,  149,  165, 
    3180   166,  167,    0,    0,  168,  169,  170,    0,  171,  172, 
    3181   173,  174,  175,    0,  176,    0,    0,    0,    0,    0, 
    3182     0,    0,  152,  153,    0,    0,    0,  154,  155,  156, 
    3183   157,    0,    0,    0,    0,    0,    0,    0,    0,  158, 
    3184   159,  160,  161,  162,  163,  164,    0,  165,  166,  167, 
    3185     0,    0,  168,  169,  170,    0,  171,  172,  173,  174, 
    3186   175,    0,  176,    0,    0,    0,  177,    0,    0,    0, 
    3187     0,    0,    0,    0,    0,    0,    0,  178,  179,    0, 
    3188     0,    0,    0,  180,    0,    0,    0,    0,    0,    0, 
    3189     0,    0,    0,  181,  182,    0,    0,  183,  184,  185, 
    3190   186,    0,  188,    0,   89,  150,    0,  151,    0,    0, 
    3191     0,  187,    0,    0,  177,    0,    0,    0,    0,    0, 
    3192   813,    0,    0,    0,    0,  178,  179,    0,    0,    0, 
    3193     0,  180,    0,    0,    0,    0,    0,    0,    0,  149, 
    3194     0,  181,  182,    0,    0,  183,  184,  185,  186,    0, 
    3195     0,    0,   89,    0,    0,  188,    0,    0,  150,  187, 
    3196   151,    0,    0,  152,  153,    0,    0,    0,  154,  155, 
    3197   156,  157,    0,  898,    0,    0,    0,    0,    0,    0, 
    3198   158,  159,  160,  161,  162,  163,  164,  149,  165,  166, 
    3199   167,    0,    0,  168,  169,  170,    0,  171,  172,  173, 
    3200   174,  175,    0,  176,    0,    0,    0,    0,    0,    0, 
    3201     0,  152,  153,    0,    0,    0,  154,  155,  156,  157, 
    3202     0,    0,    0,    0,    0,    0,    0,    0,  158,  159, 
    3203   160,  161,  162,  163,  164,    0,  165,  166,  167,    0, 
    3204     0,  168,  169,  170,    0,  171,  172,  173,  174,  175, 
    3205     0,  176,    0,    0,    0,  177,    0,    0,    0,    0, 
    3206     0,    0,    0,    0,    0,    0,  178,  179,    0,    0, 
    3207     0,    0,  180,    0,    0,    0,    0,    0,    0,    0, 
    3208     0,    0,  181,  182,    0,    0,  183,  184,  185,  186, 
    3209     0,    0,    0,   89,  188,    0,  709,  150,    0,  151, 
    3210   187,    0,    0,  177,    0,    0,    0,    0,    0,    0, 
    3211     0,    0,    0,    0,  178,  179,    0,    0,    0,    0, 
    3212   180,    0,    0,    0,    0,  149,    0,    0,    0,    0, 
    3213   181,  182,    0,    0,  183,  184,  185,  186,    0,    0, 
    3214     0,   89,  188,    0,  951,  150,    0,  151,  187,  152, 
    3215   153,    0,    0,    0,  154,  155,  156,  157,    0,    0, 
    3216     0,    0,    0,    0,    0,    0,  158,  159,  160,  161, 
    3217   162,  163,  164,    0,  165,  166,  167,    0,  149,  168, 
    3218   169,  170,    0,  171,  172,  173,  174,  175,    0,  176, 
    3219     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3220     0,    0,  152,  153,    0,    0,    0,  154,  155,  156, 
    3221   157,    0,    0,    0,    0,    0,    0,    0,    0,  158, 
    3222   159,  160,  161,  162,  163,  164,    0,  165,  166,  167, 
    3223     0,    0,  168,  169,  170,    0,  171,  172,  173,  174, 
    3224   175,  177,  176,    0,    0,    0,    0,    0,    0,    0, 
    3225     0,    0,  178,  179,    0,    0,    0,    0,  180,    0, 
    3226     0,    0,    0,    0,    0,    0,    0,    0,  181,  182, 
    3227     0,    0,  183,  184,  185,  186,    0,  188,    0,   89, 
    3228   150,    0,  151,    0,    0,    0,  187,    0,    0,    0, 
    3229     0,    0,    0,    0,  177,    0,    0,    0,    0,    0, 
    3230     0,    0,    0,    0,    0,  178,  179,    0,    0,    0, 
    3231     0,  180,    0,    0,    0,    0,    0,  149,    0,    0, 
    3232     0,  181,  182,    0,    0,  183,  184,  185,  186,    0, 
    3233   382,    0,   89,  150,    0,  151,    0,    0,    0,  187, 
    3234     0,  152,  153,    0,    0,    0,  154,  155,  156,  157, 
    3235     0,    0,    0,    0,    0,    0,    0,    0,  158,  159, 
    3236   160,  161,  162,  163,  164,  149,  165,  166,  167,    0, 
    3237     0,  168,  169,  170,    0,  171,  172,  173,  174,  175, 
    3238     0,  176,    0,    0,    0,    0,    0,    0,    0,  152, 
    3239   153,    0,    0,    0,  154,  155,  156,  157,    0,    0, 
    3240     0,    0,    0,    0,    0,    0,  158,  159,  160,  161, 
    3241   162,  163,  164,    0,  165,  166,  167,    0,    0,  168, 
    3242   169,  170,    0,  171,  172,  173,  174,  175,    0,  176, 
    3243     0,    0,    0,  177,    0,    0,    0,    0,    0,    0, 
    3244     0,    0,    0,    0,  178,  179,    0,    0,    0,    0, 
    3245   180,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3246   181,  182,    0,    0,  183,  184,  185,  186,    0,  188, 
    3247     0,   89,  150,    0,  151,    0,    0,    0,  187,    0, 
    3248     0,  177,    0,    0,    0,    0,    0,    0,    0,    0, 
    3249     0,    0,  178,  179,    0,    0,    0,    0,  180,    0, 
    3250   149,    0,    0,    0,    0,    0,    0,    0,  181,  182, 
    3251     0,    0,  183,  184,  185,  186,    0,  507,    0,   89, 
    3252   150,    0,  151,    0,  152,  153,  187,    0,    0,  154, 
    3253   155,  156,  157,    0,    0,    0,    0,    0,    0,    0, 
    3254     0,  158,  159,  160,  161,  162,  163,  164,    0,  165, 
    3255   166,  167,    0,  149,  168,  169,  170,    0,  171,  172, 
    3256   173,  174,  175,    0,  176,    0,    0,    0,    0,    0, 
    3257     0,    0,    0,    0,    0,    0,    0,  152,  153,    0, 
    3258     0,    0,  154,  155,  156,  157,    0,    0,    0,    0, 
    3259     0,    0,    0,    0,  158,  159,  160,  161,  162,  163, 
    3260   164,    0,  165,  166,  167,    0,    0,  168,  169,  170, 
    3261     0,  171,  172,  173,  174,  175,  177,  176,    0,    0, 
    3262     0,    0,    0,    0,    0,    0,    0,  178,  179,    0, 
    3263     0,    0,    0,  180,    0,    0,    0,    0,    0,    0, 
    3264     0,    0,    0,  181,  182,    0,    0,  183,  184,  185, 
    3265   186,    0,  382,    0,   89,  150,    0,  151,    0,    0, 
    3266     0,  187,    0,    0,    0,    0,    0,    0,    0,  177, 
    3267     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3268   178,  179,    0,    0,    0,    0,  180,    0,    0,    0, 
    3269     0,    0,  149,    0,    0,    0,  181,  182,    0,    0, 
    3270   183,  184,  185,  186,    0,  908,    0,   89,  150,    0, 
    3271   151,    0,    0,    0,  187,    0,  152,  153,    0,    0, 
    3272     0,  154,  155,  156,  157,    0,    0,    0,    0,    0, 
    3273     0,    0,    0,  158,  159,  160,  161,  162,  163,  164, 
    3274   149,  165,  166,  167,    0,    0,  168,  169,  170,    0, 
    3275   171,  172,  173,  174,  175,    0,  176,    0,    0,    0, 
    3276     0,    0,    0,    0,  152,  153,    0,    0,    0,  154, 
    3277   155,  156,  157,    0,  567,    0,  564,  333,    0,  334, 
    3278     0,  158,  159,  160,  161,  162,  163,  164,    0,  165, 
    3279   166,  167,    0,    0,  168,  169,  170,    0,  171,  172, 
    3280   173,  174,  175,    0,  176,    0,    0,    0,  177,    0, 
    3281   341,    0,  335,  333,    0,  334,    0,    0,    0,  178, 
    3282   179,    0,    0,    0,    0,  180,    0,    0,    0,    0, 
    3283     0,    0,    0,    0,    0,  181,  182,    0,    0,  183, 
    3284   184,  185,  186,    0,    0,    0,   89,    0,    0,    0, 
    3285     0,    0,    0,  445,    0,    0,  177,    0,    0,    0, 
    3286     0,    0,    0,    0,    0,    0,    0,  178,  179,    0, 
    3287     0,    0,    0,  180,    0,  149,  247,  247,  247,    0, 
    3288   247,    0,    0,  181,  182,    0,    0,  183,  184,  185, 
    3289   186,    0,    0,  247,   89,  247,  247,  247,    0,  152, 
    3290   153,  187,    0,    0,  154,  155,  156,  157,    0,    0, 
    3291     0,    0,    0,    0,    0,    0,  158,  159,  160,  161, 
    3292   162,  163,  164,    0,  165,  166,  167,    0,  149,  168, 
    3293   169,  170,    0,  171,  172,  173,  174,  175,    0,  176, 
    3294     0,    0,    0,    0,    0,    0,    0,  518,  518,  518, 
    3295   518,  518,  152,  153,    0,    0,    0,  154,  155,  156, 
    3296   157,    0,    0,    0,    0,    0,  518,  518,  518,  158, 
    3297   159,  160,  161,  162,  163,  164,    0,  165,  166,  167, 
    3298     0,    0,  168,  169,  170,    0,  171,  172,  173,  174, 
    3299   175,  177,  176,  437,  417,  415,    0,  416,    0,    0, 
    3300     0,    0,  178,  179,    0,    0,    0,  565,  180,    0, 
    3301     0,    0,  420,  403,  421,    0,    0,    0,  181,  182, 
    3302     0,    0,  183,  184,  185,  186,  601,  417,  415,  892, 
    3303   416,    0,  336,  337,  338,    0,  187,  339,    0,    0, 
    3304     0,    0,    0,    0,  177,  420,  403,  421,    0,    0, 
    3305     0,    0,    0,    0,    0,  178,  179,    0,    0,    0, 
    3306     0,  180,    0,    0,    0,    0,    0,    0,  336,  337, 
    3307   338,  181,  182,  339,    0,  183,  184,  185,  186,    0, 
    3308     0,    0,   89,    0,    0,    0,    0,    0,    0,  187, 
    3309     0,    0,    0,  247,  247,  247,  247,  247,    0,  247, 
    3310   247,  247,  247,  247,  247,    0,    0,  247,  247,  608, 
    3311   417,  415,    0,  416,    0,    0,    0,    0,    0,    0, 
    3312     0,    0,    0,    0,  178,  179,    0,    0,  420,  403, 
    3313   421,    0,    0,  622,  417,  415,    0,  416,    0,    0, 
    3314   181,  182,    0,    0,  183,  184,  185,  186,    0,    0, 
    3315     0,  566,  420,  403,  421,    0,    0,    0,  187,    0, 
    3316   178,  179,    0,    0,  518,  518,  518,  518,  518,    0, 
    3317   518,  518,  518,  518,  518,  518,  181,  182,  518,  518, 
    3318   183,  184,  185,  186,  638,  417,  415,  340,  416,    0, 
    3319     0,    0,    0,    0,  187,    0,    0,    0,    0,    0, 
    3320     0,    0,    0,  420,  403,  421,    0,    0,    0,    0, 
    3321   404,  405,  406,  407,  408,    0,  409,  410,  411,  412, 
    3322   413,  414,    0,    0,  418,  419,    0,    0,    0,    0, 
    3323     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3324     0,    0,    0,  404,  405,  406,  407,  408,    0,  409, 
    3325   410,  411,  412,  413,  414,    0,    0,  418,  419,  672, 
    3326   417,  415,    0,  416,    0,    0,    0,    0,    0,    0, 
    3327     0,    0,    0,    0,    0,    0,    0,    0,  420,  403, 
    3328   421,  677,  417,  415,    0,  416,    0,    0,    0,    0, 
    3329     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3330   420,  403,  421,  679,  417,  415,    0,  416,    0,    0, 
    3331     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3332     0,    0,  420,  403,  421,    0,  404,  405,  406,  407, 
    3333   408,    0,  409,  410,  411,  412,  413,  414,    0,    0, 
    3334   418,  419,    0,    0,    0,    0,    0,    0,    0,    0, 
    3335   404,  405,  406,  407,  408,    0,  409,  410,  411,  412, 
    3336   413,  414,    0,    0,  418,  419,  781,  417,  415,    0, 
    3337   416,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3338     0,    0,    0,    0,    0,  420,  403,  421,    0,    0, 
    3339     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3340     0,  404,  405,  406,  407,  408,    0,  409,  410,  411, 
    3341   412,  413,  414,    0,    0,  418,  419,  782,  417,  415, 
    3342     0,  416,    0,    0,    0,    0,    0,    0,    0,    0, 
    3343     0,    0,    0,    0,    0,    0,  420,  403,  421,  783, 
    3344   417,  415,    0,  416,    0,    0,    0,    0,    0,    0, 
    3345     0,    0,    0,    0,    0,    0,    0,    0,  420,  403, 
    3346   421,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3347     0,    0,    0,    0,    0,    0,  404,  405,  406,  407, 
    3348   408,    0,  409,  410,  411,  412,  413,  414,    0,    0, 
    3349   418,  419,    0,    0,    0,    0,    0,    0,  404,  405, 
    3350   406,  407,  408,    0,  409,  410,  411,  412,  413,  414, 
    3351     0,    0,  418,  419,    0,    0,    0,    0,    0,    0, 
    3352   404,  405,  406,  407,  408,    0,  409,  410,  411,  412, 
    3353   413,  414,    0,    0,  418,  419,  784,  417,  415,    0, 
    3354   416,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3355     0,    0,    0,    0,    0,  420,  403,  421,  785,  417, 
    3356   415,    0,  416,    0,    0,    0,    0,    0,    0,    0, 
    3357     0,    0,    0,    0,    0,    0,    0,  420,  403,  421, 
    3358     0,    0,    0,  404,  405,  406,  407,  408,    0,  409, 
    3359   410,  411,  412,  413,  414,    0,    0,  418,  419,  786, 
    3360   417,  415,    0,  416,    0,    0,    0,    0,    0,    0, 
    3361     0,    0,    0,    0,    0,    0,    0,    0,  420,  403, 
    3362   421,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3363     0,    0,    0,    0,  404,  405,  406,  407,  408,    0, 
    3364   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    3365     0,    0,    0,    0,    0,    0,  404,  405,  406,  407, 
    3366   408,    0,  409,  410,  411,  412,  413,  414,    0,    0, 
    3367   418,  419,  787,  417,  415,    0,  416,    0,    0,    0, 
    3368     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3369     0,  420,  403,  421,  788,  417,  415,    0,  416,    0, 
    3370     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3371     0,    0,    0,  420,  403,  421,  789,  417,  415,    0, 
    3372   416,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3373     0,    0,    0,    0,    0,  420,  403,  421,    0,    0, 
    3374     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3375     0,    0,    0,  404,  405,  406,  407,  408,    0,  409, 
    3376   410,  411,  412,  413,  414,    0,    0,  418,  419,    0, 
    3377     0,    0,    0,    0,    0,  404,  405,  406,  407,  408, 
    3378     0,  409,  410,  411,  412,  413,  414,    0,    0,  418, 
    3379   419,  790,  417,  415,    0,  416,    0,    0,    0,    0, 
    3380     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3381   420,  403,  421,    0,    0,    0,  404,  405,  406,  407, 
    3382   408,    0,  409,  410,  411,  412,  413,  414,    0,    0, 
    3383   418,  419,  791,  417,  415,    0,  416,    0,    0,    0, 
    3384     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3385     0,  420,  403,  421,  792,  417,  415,    0,  416,    0, 
    3386     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3387     0,    0,    0,  420,  403,  421,    0,    0,    0,    0, 
    3388     0,    0,    0,    0,    0,    0,    0,    0,    0,  404, 
    3389   405,  406,  407,  408,    0,  409,  410,  411,  412,  413, 
    3390   414,    0,    0,  418,  419,    0,    0,    0,    0,    0, 
    3391     0,  404,  405,  406,  407,  408,    0,  409,  410,  411, 
    3392   412,  413,  414,    0,    0,  418,  419,    0,    0,    0, 
    3393     0,    0,    0,  404,  405,  406,  407,  408,    0,  409, 
    3394   410,  411,  412,  413,  414,    0,    0,  418,  419,  793, 
    3395   417,  415,    0,  416,    0,    0,    0,    0,    0,    0, 
    3396     0,    0,    0,    0,    0,    0,    0,    0,  420,  403, 
    3397   421,  802,  417,  415,    0,  416,    0,    0,    0,    0, 
    3398     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3399   420,  403,  421,    0,    0,    0,    0,    0,    0,    0, 
    3400     0,    0,    0,    0,    0,    0,    0,    0,  404,  405, 
    3401   406,  407,  408,    0,  409,  410,  411,  412,  413,  414, 
    3402     0,    0,  418,  419,  862,  417,  415,    0,  416,    0, 
    3403     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3404     0,    0,    0,  420,  403,  421,    0,    0,    0,  404, 
    3405   405,  406,  407,  408,    0,  409,  410,  411,  412,  413, 
    3406   414,    0,    0,  418,  419,    0,    0,    0,    0,    0, 
    3407     0,  404,  405,  406,  407,  408,    0,  409,  410,  411, 
    3408   412,  413,  414,    0,    0,  418,  419,  904,  417,  415, 
    3409     0,  416,    0,    0,    0,    0,    0,    0,    0,    0, 
    3410     0,    0,    0,    0,    0,    0,  420,  403,  421,  247, 
    3411   247,  247,    0,  247,    0,    0,    0,    0,    0,    0, 
    3412     0,    0,    0,    0,    0,    0,    0,    0,  247,  247, 
    3413   247,  417,  415,  680,  416,    0,    0,    0,    0,    0, 
    3414     0,    0,    0,    0,    0,    0,    0,    0,    0,  420, 
    3415   403,  421,    0,    0,    0,    0,    0,    0,    0,    0, 
    3416     0,    0,    0,    0,    0,    0,  404,  405,  406,  407, 
    3417   408,    0,  409,  410,  411,  412,  413,  414,    0,    0, 
    3418   418,  419,    0,    0,    0,    0,    0,    0,  404,  405, 
    3419   406,  407,  408,    0,  409,  410,  411,  412,  413,  414, 
    3420     0,    0,  418,  419,  417,  415,  933,  416,    0,    0, 
    3421     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3422     0,    0,  420,  403,  421,    0,    0,    0,    0,    0, 
    3423     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3424     0,  404,  405,  406,  407,  408,    0,  409,  410,  411, 
    3425   412,  413,  414,    0,    0,  418,  419,  417,  415,  969, 
    3426   416,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3427     0,    0,    0,    0,    0,  420,  403,  421,  417,  415, 
    3428   970,  416,    0,    0,    0,    0,    0,    0,    0,    0, 
    3429     0,    0,    0,    0,    0,    0,  420,  403,  421,    0, 
    3430     0,    0,    0,    0,  404,  405,  406,  407,  408,    0, 
    3431   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
    3432     0,    0,    0,    0,    0,    0,  247,  247,  247,  247, 
    3433   247,    0,  247,  247,  247,  247,  247,  247,    0,    0, 
    3434   247,  247,    0,    0,    0,    0,    0,  404,  405,  406, 
    3435   407,  408,    0,  409,  410,  411,  412,  413,  414,    0, 
    3436     0,  418,  419,  417,  415,  975,  416,    0,    0,    0, 
    3437     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3438     0,  420,  403,  421,  247,  247,  247,  247,    0,    0, 
    3439     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3440     0,    0,  247,  247,  247,    0,    0,    0,    0,    0, 
    3441     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3442   404,  405,  406,  407,  408,    0,  409,  410,  411,  412, 
    3443   413,  414,    0,    0,  418,  419,    0,    0,    0,    0, 
    3444     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3445     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3446     0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3447     0,    0,    0,  404,  405,  406,  407,  408,    0,  409, 
    3448   410,  411,  412,  413,  414,    0,    0,  418,  419,    0, 
    3449     0,    0,    0,    0,  404,  405,  406,  407,  408,    0, 
    3450   409,  410,  411,  412,  413,  414,    0,    0,  418,  419, 
     2003       0,     0,   179,     0,     0,     0,     0,     0,     0,     0, 
     2004       0,   151,     0,   180,   181,     0,     0,     0,     0,   182, 
     2005     152,   153,   738,     0,     0,     0,     0,     0,     0,   183, 
     2006     184,     0,     0,   185,   186,   187,   188,     0,   154,   155, 
     2007      92,     0,     0,   156,   157,   158,   159,   189,     0,     0, 
     2008     190,     0,     0,     0,     0,   160,   161,   162,   163,   164, 
     2009     165,   166,     0,   167,   168,   169,     0,     0,   170,   171, 
     2010     172,     0,   173,   174,   175,   176,   177,     0,   178,     0, 
    34512011    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    34522012    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     
    34542014    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    34552015    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2016     179,     0,     0,     0,     0,     0,     0,     0,     0,   151, 
     2017       0,   180,   181,     0,     0,     0,     0,   182,   152,   153, 
     2018     714,     0,     0,     0,     0,     0,     0,   183,   184,     0, 
     2019       0,   185,   186,   187,   188,     0,   154,   155,    92,     0, 
     2020       0,   156,   157,   158,   159,   189,     0,     0,   190,     0, 
     2021       0,     0,     0,   160,   161,   162,   163,   164,   165,   166, 
     2022       0,   167,   168,   169,     0,     0,   170,   171,   172,     0, 
     2023     173,   174,   175,   176,   177,     0,   178,     0,     0,     0, 
    34562024    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3457     0,    0,    0,    0,    0,    0,    0,    0,    0,  404, 
    3458   405,  406,  407,  408,    0,  409,  410,  411,  412,  413, 
    3459   414,    0,    0,  418,  419,    0,    0,    0,    0,    0, 
    3460   247,  247,  247,  247,  247,    0,  247,  247,  247,  247, 
    3461   247,  247,    0,   16,  247,  247,   17,    0,   18,   19, 
    3462     0,    0,   20,    0,    0,   21,   22,   23,    0,    0, 
    3463     0,    0,   24,   25,    0,    0,    0,    0,    0,    0, 
    3464     0,    0,    0,    0,    0,    0,    0,   26,    0,    0, 
    3465     0,   27,   28,    0,    0,    0,   29,    0,    0,    0, 
    3466     0,    0,   30,    0,   31,   32,    0,   33,    0,   34, 
    3467    35,   36,   37,   38,    0,   39,   40,   41,   42,   43, 
    3468    44,   45,   46,   47,   48,   49,   50,   51,   52,   53, 
    3469    54,    0,    0,   55,   56,   57,    0,   58,   59,   60, 
    3470     0,   61,   62,   63,    0,    0,   64,    0,   65,    0, 
    3471     0,   66,   67,   68,   69,    0,    0,   70,   71,   72, 
    3472     0,    0,    0,    0,    0,   73,    0,    0,    0,   74, 
    3473    75,   76,   77,   78,   79,   80,    0,   81,   82,   83, 
    3474    84,   85,    0,    0,   86,    0,    0,    0,    0,    0, 
    3475     0,   87,   88,   89,    0,    0,    0,    0,    0,    0, 
    3476    90, 
     2025    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2026    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2027    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2028       0,     0,     0,     0,     0,     0,     0,     0,   179,     0, 
     2029       0,     0,     0,     0,     0,     0,     0,   151,     0,   180, 
     2030     181,     0,     0,     0,     0,   182,   152,   153,   953,     0, 
     2031       0,     0,     0,     0,     0,   183,   184,     0,     0,   185, 
     2032     186,   187,   188,     0,   154,   155,    92,     0,     0,   156, 
     2033     157,   158,   159,   189,     0,     0,   190,     0,     0,     0, 
     2034       0,   160,   161,   162,   163,   164,   165,   166,     0,   167, 
     2035     168,   169,     0,     0,   170,   171,   172,     0,   173,   174, 
     2036     175,   176,   177,     0,   178,     0,     0,     0,     0,     0, 
     2037    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2038    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2039    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2040    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2041       0,     0,     0,     0,     0,     0,   179,     0,     0,     0, 
     2042       0,     0,     0,     0,     0,   151,     0,   180,   181,     0, 
     2043       0,     0,     0,   182,   152,   153,     0,     0,     0,     0, 
     2044       0,     0,     0,   183,   184,     0,     0,   185,   186,   187, 
     2045     188,     0,   154,   155,    92,     0,     0,   156,   157,   158, 
     2046     159,   189,     0,     0,   190,     0,     0,     0,     0,   160, 
     2047     161,   162,   163,   164,   165,   166,     0,   167,   168,   169, 
     2048       0,     0,   170,   171,   172,     0,   173,   174,   175,   176, 
     2049     177,     0,   178,     0,     0,     0,     0,     0,     0,     0, 
     2050    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2051    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2052    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2053    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2054       0,     0,     0,     0,   179,     0,     0,     0,     0,     0, 
     2055       0,     0,     0,   151,     0,   180,   181,     0,     0,     0, 
     2056       0,   182,   152,   153,     0,     0,     0,     0,     0,     0, 
     2057       0,   183,   184,     0,     0,   185,   186,   187,   188,     0, 
     2058     154,   155,    92,     0,     0,   156,   157,   158,   159,   189, 
     2059       0,     0,   190,     0,     0,     0,     0,   160,   161,   162, 
     2060     163,   164,   165,   166,     0,   167,   168,   169,     0,     0, 
     2061     170,   171,   172,     0,   173,   174,   175,   176,   177,     0, 
     2062     178,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     2063    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2064    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2065    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2066    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2067       0,     0,   179,     0,     0,     0,     0,     0,     0,     0, 
     2068       0,   151,     0,   180,   181,     0,     0,     0,     0,   182, 
     2069     152,   153,     0,     0,     0,     0,     0,     0,     0,   183, 
     2070     184,     0,     0,   185,   186,   187,   188,     0,   154,   155, 
     2071      92,     0,     0,   156,   157,   158,   159,   189,     0,     0, 
     2072     383,     0,     0,     0,     0,   160,   161,   162,   163,   164, 
     2073     165,   166,     0,   167,   168,   169,     0,     0,   170,   171, 
     2074     172,     0,   173,   174,   175,   176,   177,     0,   178,     0, 
     2075    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2076    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2077    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2078    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2079    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2080     179,     0,     0,     0,     0,     0,     0,     0,     0,   151, 
     2081       0,   180,   181,     0,     0,     0,     0,   182,   152,   153, 
     2082       0,     0,     0,     0,     0,     0,     0,   183,   184,     0, 
     2083       0,   185,   186,   187,   188,     0,   154,   155,    92,     0, 
     2084       0,   156,   157,   158,   159,   446,     0,     0,   190,     0, 
     2085       0,     0,     0,   160,   161,   162,   163,   164,   165,   166, 
     2086       0,   167,   168,   169,     0,     0,   170,   171,   172,     0, 
     2087     173,   174,   175,   176,   177,     0,   178,     0,     0,     0, 
     2088    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2089    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2090    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2091    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2092       0,     0,     0,     0,     0,     0,     0,     0,   179,     0, 
     2093       0,     0,     0,     0,     0,     0,     0,   151,     0,   180, 
     2094     181,     0,     0,     0,     0,   182,   152,   153,     0,     0, 
     2095       0,     0,     0,     0,     0,   183,   184,     0,     0,   185, 
     2096     186,   187,   188,     0,   154,   155,    92,     0,     0,   156, 
     2097     157,   158,   159,   189,     0,     0,   542,     0,     0,     0, 
     2098       0,   160,   161,   162,   163,   164,   165,   166,     0,   167, 
     2099     168,   169,     0,     0,   170,   171,   172,     0,   173,   174, 
     2100     175,   176,   177,     0,   178,     0,     0,     0,     0,     0, 
     2101    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2102    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2103    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2104    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2105       0,     0,     0,     0,     0,     0,   179,     0,     0,     0, 
     2106       0,     0,     0,     0,     0,   151,     0,   180,   181,     0, 
     2107       0,     0,     0,   182,   152,   153,     0,     0,     0,     0, 
     2108       0,     0,     0,   183,   184,     0,     0,   185,   186,   187, 
     2109     188,     0,   154,   155,   893,     0,     0,   156,   157,   158, 
     2110     159,   189,     0,     0,   383,     0,     0,     0,     0,   160, 
     2111     161,   162,   163,   164,   165,   166,     0,   167,   168,   169, 
     2112       0,     0,   170,   171,   172,     0,   173,   174,   175,   176, 
     2113     177,     0,   178,     0,     0,     0,     0,     0,     0,     0, 
     2114    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2115    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2116    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2117    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2118       0,     0,     0,     0,   179,    19,     0,     0,    20,   -28, 
     2119      21,    22,     0,     0,    23,   180,   181,    24,    25,    26, 
     2120       0,   182,     0,     0,    27,    28,     0,     0,     0,     0, 
     2121       0,   183,   184,     0,     0,   185,   186,   187,   188,    29, 
     2122       0,     0,    92,    30,    31,     0,     0,     0,    32,   189, 
     2123       0,     0,   918,     0,    33,     0,    34,    35,     0,    36, 
     2124       0,    37,    38,    39,    40,    41,     0,    42,    43,    44, 
     2125      45,    46,    47,    48,    49,    50,    51,    52,    53,    54, 
     2126      55,    56,    57,     0,     0,    58,    59,    60,     0,    61, 
     2127      62,    63,     0,    64,    65,    66,     0,     0,    67,     0, 
     2128      68,     0,     0,    69,    70,    71,    72,     0,     0,    73, 
     2129      74,    75,     0,     0,     0,     0,     0,    76,     0,     0, 
     2130       0,    77,    78,    79,    80,    81,    82,    83,     0,    84, 
     2131      85,    86,    87,    88,     0,     0,    89,     0,     0,     0, 
     2132       0,   154,   155,    90,    91,    92,   156,   157,   158,   159, 
     2133       0,     0,    93,     0,     0,     0,     0,     0,   160,   161, 
     2134     162,   163,   164,   165,   166,     0,   167,   168,   169,     0, 
     2135       0,   170,   171,   172,     0,   173,   174,   175,   176,   177, 
     2136       0,   178,   154,   155,     0,     0,     0,   156,   157,   158, 
     2137     159,     0,     0,     0,     0,     0,     0,     0,     0,   160, 
     2138     161,   162,   163,   164,   165,   166,     0,   167,   168,   169, 
     2139       0,     0,   170,   171,   172,     0,   173,   174,   175,   176, 
     2140     177,     0,   178,     0,     0,     0,     0,     0,     0,     0, 
     2141    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2142       0,     0,     0,     0,   180,   181,     0,     0,     0,     0, 
     2143     182,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     2144     183,   184,     0,     0,   185,   186,   187,   188,     0,     0, 
     2145      23,    92,     0,     0,     0,     0,     0,     0,   189,     0, 
     2146       0,   577,     0,     0,     0,   180,   181,     0,     0,     0, 
     2147       0,   182,     0,     0,     0,    29,     0,     0,     0,     0, 
     2148       0,   183,   184,     0,     0,   185,   186,   187,   188,     0, 
     2149      33,     0,   893,     0,     0,    36,   348,     0,     0,   189, 
     2150      40,    41,   577,     0,     0,     0,     0,     0,     0,     0, 
     2151     349,    50,    51,    52,    53,    54,    55,   350,     0,     0, 
     2152    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2153      65,     0,     0,     0,     0,     0,    68,     0,     0,     0, 
     2154       0,     0,     0,     0,     0,    73,     0,    75,     0,     0, 
     2155    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2156    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2157    0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     2158       0,    92,     0,     0,     0,     0,     0,     0,    93 
    34772159}; 
    3478 short fortrancheck[] = {                                      24, 
    3479   231,   26,  140,  309,  194,   30,   33,  177,   33,  236, 
    3480   231,  347,  290,  331,   39,  236,   19,   11,  296,  140, 
    3481    44,  303,  394,  341,  177,   40,   40,   40,   44,   40, 
    3482    40,  349,   44,  529,   10,  188,   10,   10,   10,  295, 
    3483    42,  177,   58,   40,   68,   69,  302,   44,   41,   42, 
    3484    41,   42,   76,  279,   44,  382,  449,   40,  581,   44, 
    3485    37,   58,  585,  731,   41,   59,  106,   44,   58,   93, 
    3486    94,   95,   42,   43,   44,   45,  765,   37,   44,   42, 
    3487   111,  234,   58,   44,   61,  735,  143,   44,   37,  120, 
    3488   121,   40,   58,  231,  373,   10,   32,   58,  236,   37, 
    3489    10,   61,  504,   41,  417,  130,   44,   60,  135,   62, 
    3490   135,  424,   61,  800,  801,  517,   10,  425,  217,  271, 
    3491   272,   57,   58,  148,  149,   42,   43,  417,   45,   44, 
    3492    10,   42,  157,  371,  128,   43,   44,   45,  417,  238, 
    3493    41,   42,   43,   60,   45,   62,  171,  385,   58,   60, 
    3494    40,   62,  177,  271,  272,   41,  104,   40,   44,  107, 
    3495   271,  272,   44,  188,   58,   41,  417,  192,   44,  578, 
    3496    44,  427,   58,   40,  344,   42,   58,  586,  203,  847, 
    3497   350,  579,   58,  581,   58,  210,   40,  585,   43,   44, 
    3498    45,  417,   40,  331,  219,  524,  885,  350,  885,  224, 
    3499   529,   37,   40,  341,   41,   41,  344,   44,   44,  234, 
    3500   331,  349,  382,  207,  350,  386,  387,  388,  868,  244, 
    3501   341,   58,    0,  344,  281,   42,  328,  329,  349,  382, 
    3502    47,  487,   10,  569,  490,  541,  276,  231,  417,  545, 
    3503   234,  577,  236,  237,  912,  270,  382,   40,  242,  567, 
    3504    42,   43,   41,   45,   40,   44,  512,  593,   58,  272, 
    3505   272,  264,  293,  401,   40,  417,   42,  283,   40,   58, 
    3506   588,  589,  590,  591,  592,   43,   41,   45,  534,   44, 
    3507   283,  275,  307,   40,  309,  375,  283,  272,  319,  271, 
    3508   272,   42,   43,  283,   45,   40,   41,  322,  323,  417, 
    3509   271,  272,  272,  328,  298,  632,  417,  634,  635,  272, 
    3510   273,  336,  337,  338,  339,  272,  417,  283,  549,  255, 
    3511   273,   41,  283,  550,   44,  350,  320,   44,  549,  550, 
    3512   324,   42,  280,  271,  272,  360,  156,   58,  158,  364, 
    3513   365,  366,  367,  368,  369,  370,  371,  372,  373,  374, 
    3514   375,  744,  745,  275,  507,  272,  273,  382,  140,  141, 
    3515   856,  272,  273,  886,  272,  763,  764,  863,  766,  394, 
    3516   271,  272,  273,   41,   42,   43,  256,   45,  403,  404, 
    3517   405,  406,  407,  408,  409,  410,  411,  412,  413,  414, 
    3518   415,  416,  417,  418,  419,  420,  421,  374,  423,  424, 
    3519   406,  417,  417,  119,  284,  285,  122,  417,  578,  424, 
    3520   424,  549,  550,  424,  374,  417,  586,  272,  281,  755, 
    3521   417,  301,  302,  406,  417,  374,  417,  417,  734,  567, 
    3522    44,   44,  768,  769,  770,  771,  772,  719,  756,  811, 
    3523   578,  417,  720,  417,  417,  417,  567,   44,  586,  705, 
    3524   588,  589,  590,  591,  592,  682,  417,  578,  417,  417, 
    3525   687,  682,  486,   44,   40,  586,  687,  588,  589,  590, 
    3526   591,  592,  799,  800,  801,  417,   40,  424,  256,  271, 
    3527   272,  273,  507,   40,  637,   40,  511,   40,  886,   40, 
    3528   521,  747,  523,  518,   40,   40,  632,  275,  634,  635, 
    3529   525,   41,  533,  281,   44,   40,  284,  285,   42,   43, 
    3530    44,   45,  392,   47,  539,   41,  541,   40,   44,   40, 
    3531   545,  272,  273,  301,  302,   40,   40,  856,  857,  858, 
    3532   859,  860,   42,   43,  863,   45,   40,   47,  358,  359, 
    3533   938,  566,   40,   40,  682,  425,   37,  883,   40,  687, 
    3534    41,  576,   40,   44,   40,  549,  550,  377,  378,  379, 
    3535   380,  381,   37,   40,  870,  417,   41,   40,  824,   44, 
    3536   390,   40,   40,  289,  601,  291,  601,  602,   40,   42, 
    3537    43,   40,   45,  299,   41,   42,   43,   40,   45,   37, 
    3538   846,   42,   43,   44,   45,  765,   47,   60,   61,   62, 
    3539   753,  722,   40,  271,  272,  273,  417,  632,   41,  634, 
    3540   635,   44,  637,   44,  392,   58,  641,   41,  756,  644, 
    3541    44,  877,  857,  858,  859,  860,   37,  765,  818,   40, 
    3542    41,   42,   43,   44,   45,  756,  661,  662,  417,   41, 
    3543   417,  666,   44,  668,  765,   41,  799,  425,   44,   60, 
    3544   881,   62,   44,   44,   41,  680,  681,   44,   41,   41, 
    3545    58,   44,   44,  799,  800,  801,   41,   37,  693,   44, 
    3546   695,  417,   42,   43,   41,   45,   41,   44,   41,   44, 
    3547   674,   44,   41,  708,   41,   44,   41,   44,  682,   44, 
    3548    60,   61,   62,  687,   44,  689,   41,    0,   41,   44, 
    3549    41,   44,   41,   44,   40,   44,  424,   10,   61,  734, 
    3550   390,  391,  417,   41,   41,  885,   44,   44,   44,   41, 
    3551    41,  746,   44,   44,  417,  750,  406,  407,  753,  417, 
    3552   410,  411,  412,  413,  417,   44,  730,   40,  272,   42, 
    3553    43,   44,   45,   41,  424,  390,  391,  885,   41,   41, 
    3554    41,   44,   44,   44,   44,  908,   40,   60,   61,   62, 
    3555    41,  406,  407,   44,  885,  410,  411,  412,  413,   41, 
    3556    41,   40,   44,   44,  799,  800,  801,   41,   41,  424, 
    3557    44,   44,   41,  424,   41,   44,  811,   44,  813,   41, 
    3558    41,   41,   44,   44,   44,  258,  259,  260,  261,  262, 
    3559    61,  264,  265,  266,  267,  268,  269,   44,   41,  272, 
    3560   273,   44,  278,  838,  271,  272,  273,   41,   41,   41, 
    3561    44,   44,   44,   41,   44,  850,   44,  852,   41,   44, 
    3562   380,   44,   44,   44,   44,   40,   44,   37,   41,   41, 
    3563    44,   40,  272,   44,  417,  870,   40,  258,  259,  260, 
    3564   261,  262,  417,  264,  265,  266,  267,  268,  269,   41, 
    3565    44,  272,  273,  417,   41,  417,   61,   41,  424,   44, 
    3566   273,   44,   40,  898,   44,  900,  901,   44,   44,   58, 
    3567    41,   41,  332,  908,  417,   41,   41,  881,  258,  259, 
    3568   260,  261,  262,   42,  264,  265,  266,  267,  268,  269, 
    3569    58,  417,  272,  273,   41,   37,  272,    0,  933,   40, 
    3570    42,   43,  906,   45,  272,  940,  272,   10,   41,   58, 
    3571   374,  946,  417,   44,  949,   41,   44,   61,   60,   61, 
    3572    62,   41,  417,  417,   41,   41,   41,  962,   41,   61, 
    3573    41,  966,   41,   41,  969,  970,  374,   44,  272,   41, 
    3574   975,   44,   47,  256,  417,  258,  259,  260,  261,  262, 
    3575    44,  264,  265,  266,  267,  268,  269,   41,  271,  272, 
    3576   273,   61,  275,  417,  277,  417,  417,  280,  281,  282, 
    3577   283,  284,  285,  286,  287,  288,  289,  290,  291,  292, 
    3578   293,  294,  295,  296,  297,  417,  417,   44,  301,  302, 
    3579    41,  304,  305,  306,  307,  308,  309,  310,  311,  312, 
    3580   313,  314,  315,  316,  317,  318,  319,  320,  321,  322, 
    3581   323,  324,  325,  326,  327,  328,  329,   41,  331,   58, 
    3582   333,  334,  335,  336,  337,   41,  339,  340,  341,  342, 
    3583   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    3584   353,  354,   41,   41,  357,  358,  359,   44,  361,  362, 
    3585   363,   41,  365,  366,  367,   41,  272,  370,   41,  372, 
    3586    41,   41,  375,  376,  377,  378,   41,  775,  381,  382, 
    3587   383,  850,  957,  873,  520,  271,  389,  390,  391,  392, 
    3588   393,  394,  395,  396,  397,  398,  399,  285,  401,  402, 
    3589   403,  404,  405,  406,  407,  408,    0,  410,  411,  412, 
    3590   413,  773,  415,  416,  417,  350,   10,  382,  681,  402, 
    3591   900,  424,  425,  753,  852,    9,  258,  259,  260,  261, 
    3592   262,   13,  264,  265,  266,  267,  268,  269,   74,  275, 
    3593   272,  273,  691,   37,  429,  952,  539,   41,   42,   43, 
    3594    44,   45,  695,   47,  528,  502,  537,  701,  557,  128, 
    3595   549,  750,  550,  256,   58,  559,   60,   61,   62,  756, 
    3596    -1,   -1,  140,   -1,   -1,   -1,   -1,   -1,  271,  272, 
    3597    -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    3598   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    3599    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    3600    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1, 
    3601    -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    3602    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    3603   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    3604   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    3605   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    3606   363,   -1,  365,  366,  367,   -1,    0,  370,   -1,  372, 
    3607    -1,   -1,  375,  376,  377,  378,   10,   -1,  381,  382, 
    3608   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    3609   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    3610   403,  404,  405,   37,   -1,  408,   -1,   41,   42,   43, 
    3611    44,   45,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    3612    -1,  424,  425,   -1,   58,   -1,   60,   61,   62,   -1, 
     2160 
     2161static const yytype_int16 yycheck[] = 
     2162{ 
     2163      27,   233,    29,   179,   202,   287,    33,    36,   298,    36, 
     2164     275,   383,   290,   141,   279,    42,   179,   416,   500,   580, 
     2165     721,    22,   583,    18,    35,   179,     3,   309,   344,   233, 
     2166     451,     3,     5,    23,   238,    47,   190,   238,     3,    23, 
     2167      23,     4,     4,    23,    25,     3,   578,   734,   580,    60, 
     2168      61,   583,    23,   328,   141,     3,    21,    22,    23,    71, 
     2169      72,     3,     4,   338,    31,   104,   176,    79,     3,   179, 
     2170     764,   346,   123,     3,   113,   124,   169,     3,   158,     3, 
     2171     160,     3,   236,   490,    24,   106,   137,   108,   169,     3, 
     2172       3,   112,     3,     3,   187,     3,     3,     3,   179,    20, 
     2173      98,     3,   100,    24,   131,   233,     3,     3,     3,   138, 
     2174     238,   138,     3,   125,     3,   127,   128,   125,   177,     3, 
     2175     127,   528,   169,   150,   151,   179,    20,    21,    22,    23, 
     2176      24,    25,   159,    80,    81,   189,    21,    22,    23,     3, 
     2177     187,     3,    23,    24,    25,   169,   173,   429,     3,     4, 
     2178     169,   577,   179,   126,   802,   803,    20,   176,    20,   585, 
     2179      24,   169,    24,   190,    23,   866,   342,   194,     4,    20, 
     2180      20,   347,   495,    24,    24,     3,   179,   500,   205,    20, 
     2181      35,   868,   179,    24,   347,   212,   169,   179,   180,   169, 
     2182     884,    13,    20,   347,   221,   179,    24,   180,   188,   226, 
     2183     328,   179,   169,   180,   185,   186,    27,   383,   179,   236, 
     2184     338,   189,   169,   262,   342,   187,   189,   169,   346,   246, 
     2185     383,   922,   180,   188,   187,   187,   508,   509,   179,   383, 
     2186     762,   763,   180,   765,   516,   179,   884,   276,   180,   179, 
     2187      62,   328,   532,   282,   169,   180,   257,   286,   169,   539, 
     2188     180,   338,   273,   569,   180,   342,   180,    33,   180,   346, 
     2189     576,   633,   263,   635,   636,   547,   180,   180,   266,   180, 
     2190     180,   298,   180,   180,   180,   302,   592,   304,   180,   359, 
     2191     360,    21,    22,   180,   180,   180,   180,   415,   158,   180, 
     2192     565,   180,   319,   320,   295,   316,   180,   324,   378,   379, 
     2193     380,   381,   382,   188,   185,   186,   333,   334,   335,   336, 
     2194     169,   391,   587,   588,   589,   590,   591,   312,   169,   169, 
     2195     347,   180,   144,   176,   885,   179,   179,   179,    20,    21, 
     2196      22,    23,    24,    25,   361,   179,     3,   179,   365,   366, 
     2197     367,   368,   369,   370,   371,   372,   373,   374,   375,   376, 
     2198     179,   772,   773,   885,   169,   169,   383,    24,   840,     3, 
     2199       4,   176,   594,     3,   179,   847,     3,   394,   395,   396, 
     2200     397,   398,   399,   400,   401,   402,   403,   404,   405,   406, 
     2201     407,   408,   409,   410,   411,   412,   158,   209,   542,   416, 
     2202     594,   595,   219,    23,   595,   141,   142,   424,   425,     4, 
     2203     169,   577,   138,   139,   140,   937,   176,   179,     3,   585, 
     2204     169,   233,   179,   240,   236,   179,   238,   239,   817,    23, 
     2205      24,    25,   244,    20,    21,    22,    23,    24,    25,   801, 
     2206     802,   803,   179,   189,   750,   179,   179,   565,   260,   841, 
     2207     842,   843,   844,   733,   722,   179,   179,   712,   730,   577, 
     2208     179,   767,   768,   769,   770,   771,   179,   585,   280,   587, 
     2209     588,   589,   590,   591,   746,   492,   594,   595,   179,   496, 
     2210     633,   179,   635,   636,    29,   487,   503,   179,   565,   683, 
     2211     755,   502,   683,   179,   688,   639,   507,   688,   180,   510, 
     2212     577,   179,   179,   179,   179,   317,   179,   179,   585,   321, 
     2213     587,   588,   589,   590,   591,   532,   328,   179,   179,   179, 
     2214     179,   538,   539,   179,   179,   542,   338,   840,   841,   842, 
     2215     843,   844,   179,   179,   847,    80,    81,    82,   169,   142, 
     2216     143,   169,     3,    20,    21,    22,    23,    24,    25,   566, 
     2217       4,   169,   169,   825,     3,   158,   159,     3,   575,   162, 
     2218     163,   164,   165,     5,   109,   683,   111,   112,   113,   169, 
     2219     688,   116,   117,   176,   119,   120,     3,   883,    21,    22, 
     2220      23,    24,    25,   602,     3,   602,   603,   169,   179,   169, 
     2221     870,   169,   169,   865,   180,     4,     3,   176,   764,     3, 
     2222     176,     3,     5,   132,   876,   179,   179,    30,     3,   753, 
     2223      20,    21,    22,    23,    24,    25,   633,     3,   635,   636, 
     2224       3,     3,   639,   640,   189,     3,   180,   180,   705,     3, 
     2225       3,    24,   179,   169,   169,   823,   169,   755,   179,   169, 
     2226     657,   658,   180,     3,     5,   662,   764,   664,   801,   802, 
     2227     803,   668,   180,   176,   180,     3,     3,   801,    25,   881, 
     2228     179,     3,     3,     3,   681,   682,     4,   180,   180,   169, 
     2229      84,   180,   180,    24,    24,   179,     4,   694,   755,   696, 
     2230      24,   169,   180,   169,    23,   180,     4,   764,   126,     5, 
     2231       3,     7,     8,     9,    10,    11,   713,    13,    14,    15, 
     2232      16,    17,    18,   180,   180,    21,    22,    23,    24,    25, 
     2233      20,     3,     5,   180,   169,   180,   733,   169,   884,     5, 
     2234     180,   180,   180,   180,   180,     3,   188,   180,   745,    24, 
     2235       5,     3,   749,   180,   126,     3,   753,     5,     5,     7, 
     2236       8,     9,    10,    11,   180,    13,    14,    15,    16,    17, 
     2237      18,   169,   169,    21,    22,    23,    24,    25,     4,     5, 
     2238      10,     7,     8,     9,    10,    11,   884,    13,    14,    15, 
     2239      16,    17,    18,   260,   918,    21,    22,    23,    24,    25, 
     2240      14,   776,   594,   595,   801,   802,   803,   692,   774,   430, 
     2241     696,   499,   512,   538,   269,   494,    77,   529,   305,   726, 
     2242     817,   818,   853,   851,     3,   418,     5,   884,     7,     8, 
     2243       9,    10,    11,   682,    13,    14,    15,    16,    17,    18, 
     2244     902,   954,    21,    22,    23,    24,    25,   753,   874,   958, 
     2245     144,   556,   749,   755,   851,   141,   853,   347,   855,   383, 
     2246     558,   594,    -1,   595,    -1,    -1,    -1,    -1,    -1,    -1, 
     2247      -1,    -1,    -1,   870,    -1,    -1,    -1,    -1,    -1,    -1, 
     2248      -1,    -1,   674,    -1,    -1,    -1,    -1,    -1,    -1,   185, 
     2249     186,   683,    -1,   189,    -1,    -1,   688,    -1,   690,    -1, 
     2250      -1,    -1,   899,    -1,   901,   902,    -1,    -1,    -1,    -1, 
    36132251   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2252      -1,   918,    -1,    -1,    -1,    -1,    -1,   719,    -1,    -1, 
     2253      -1,    -1,    -1,    -1,    -1,   932,    -1,   185,   186,    -1, 
     2254      -1,    -1,    -1,    -1,   941,    -1,    -1,    -1,    -1,    -1, 
     2255     947,     0,     1,   950,   180,    -1,    -1,    -1,    -1,   185, 
     2256     186,    -1,    -1,   755,    -1,    -1,   963,    -1,    -1,    -1, 
     2257     967,    -1,    -1,   970,   971,    -1,    -1,    -1,    27,   976, 
     2258      29,    -1,    -1,    32,    33,    34,    35,    36,    37,    38, 
     2259      -1,    -1,    41,    42,    43,    -1,    -1,    -1,    -1,    48, 
     2260      49,    -1,    -1,    -1,    53,    54,   185,   186,    -1,    -1, 
     2261      -1,    -1,    -1,    -1,    63,    -1,    -1,    -1,    67,    68, 
     2262      -1,    -1,    -1,    72,    -1,    -1,    -1,    -1,    -1,    78, 
     2263      -1,    80,    81,    -1,    83,    -1,    85,    86,    87,    88, 
     2264      89,    -1,    91,    92,    93,    94,    95,    96,    97,    98, 
     2265      99,   100,   101,   102,   103,   104,   105,   106,    -1,    -1, 
     2266     109,   110,   111,    -1,   113,   114,   115,    -1,   117,   118, 
     2267     119,    -1,    -1,   122,    -1,   124,    -1,    -1,   127,   128, 
     2268     129,   130,    -1,    -1,   133,   134,   135,    -1,    -1,   881, 
     2269      -1,    -1,   141,    -1,    -1,   144,   145,   146,   147,   148, 
     2270     149,   150,   151,    -1,   153,   154,   155,   156,   157,    -1, 
     2271      -1,   160,    -1,    -1,    -1,   907,    -1,    -1,   167,   168, 
     2272     169,    -1,    -1,    -1,    -1,    -1,    -1,   176,   177,     3, 
     2273      -1,     5,    -1,     7,     8,     9,    10,    11,   187,    13, 
     2274      14,    15,    16,    17,    18,    -1,    -1,    21,    22,    23, 
     2275      24,    25,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2276      -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    -1,    -1, 
     2277      44,    45,    46,    47,    -1,    -1,    -1,    -1,    -1,    -1, 
     2278      -1,    -1,    56,    57,    58,    59,    60,    61,    62,    -1, 
     2279      64,    65,    66,    -1,    -1,    69,    70,    71,    -1,    73, 
     2280      74,    75,    76,    77,     3,    79,     5,    -1,     7,     8, 
     2281       9,    10,    11,    -1,    13,    14,    15,    16,    17,    18, 
     2282      -1,    -1,    21,    22,    23,    24,    25,     3,    -1,     5, 
     2283      -1,     7,     8,     9,    10,    11,    -1,    13,    14,    15, 
     2284      16,    17,    18,    -1,    -1,    21,    22,    23,    24,    25, 
    36142285   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3615    -1,   -1,  256,   -1,  258,  259,  260,  261,  262,   -1, 
    3616   264,  265,  266,  267,  268,  269,   -1,  271,  272,  273, 
    3617    -1,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    3618   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    3619    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    3620    -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    3621    -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    3622    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    3623   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    3624   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    3625   354,   -1,   40,  357,  358,  359,   -1,  361,  362,  363, 
    3626    -1,  365,  366,  367,   -1,   -1,  370,   -1,  372,   -1, 
    3627    -1,  375,  376,  377,  378,   10,  380,  381,  382,  383, 
    3628    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    3629   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    3630   404,  405,   -1,   -1,  408,   40,   -1,   -1,   43,   -1, 
    3631    45,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    3632   424,  425,  256,   -1,  258,  259,  260,  261,  262,   -1, 
    3633   264,  265,  266,  267,  268,  269,   -1,  271,  272,  273, 
    3634    -1,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    3635   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    3636    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    3637    -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    3638    -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    3639    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    3640   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    3641   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    3642   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    3643    -1,  365,  366,  367,   -1,    0,  370,   -1,  372,   -1, 
    3644    -1,  375,  376,  377,  378,   10,  380,  381,  382,  383, 
    3645    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    3646   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    3647   404,  405,   37,   -1,  408,   -1,   41,   42,   43,   44, 
    3648    45,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    3649   424,  425,   -1,   58,   -1,   60,   61,   62,   -1,  287, 
    3650   288,   -1,   -1,   -1,  292,  293,  294,  295,   -1,   -1, 
    3651    -1,   -1,   -1,   -1,   -1,   -1,  304,  305,  306,  307, 
    3652   308,  309,  310,   -1,  312,  313,  314,   -1,  263,  317, 
    3653   318,  319,   -1,  321,  322,  323,  324,  325,   -1,  327, 
     2286      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   142,   143, 
     2287      -1,    -1,    -1,    -1,   148,    -1,    -1,    -1,    -1,    -1, 
     2288      -1,    -1,    -1,    -1,   158,   159,    -1,    -1,   162,   163, 
     2289     164,   165,    -1,    -1,    -1,   169,    -1,    -1,    -1,    -1, 
     2290      -1,    -1,   176,    -1,    -1,   179,    -1,    -1,    -1,    -1, 
     2291      -1,   185,   186,     3,    -1,     5,    -1,     7,     8,     9, 
     2292      10,    11,    -1,    13,    14,    15,    16,    17,    18,    -1, 
     2293      -1,    21,    22,    23,    24,    25,     3,    -1,     5,    -1, 
     2294       7,     8,     9,    10,    11,    -1,    13,    14,    15,    16, 
     2295      17,    18,    -1,    -1,    21,    22,    23,    24,    25,     4, 
     2296       5,    -1,     7,     8,     9,    10,    11,    -1,    13,    14, 
     2297      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24, 
     2298      25,    -1,    -1,    -1,    -1,    -1,   185,   186,    -1,    -1, 
     2299      -1,    -1,    -1,    -1,     4,     5,    -1,     7,     8,     9, 
     2300      10,    11,    -1,    13,    14,    15,    16,    17,    18,   185, 
     2301     186,    21,    22,    23,    24,    25,     4,     5,    -1,     7, 
     2302       8,     9,    10,    11,    -1,    13,    14,    15,    16,    17, 
     2303      18,    -1,    -1,    21,    22,    23,    24,    25,     4,     5, 
     2304      -1,     7,     8,     9,    10,    11,    -1,    13,    14,    15, 
     2305      16,    17,    18,    -1,    -1,    21,    22,    23,    24,    25, 
     2306       5,    -1,     7,     8,     9,    10,    11,    -1,    13,    14, 
     2307      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24, 
     2308      25,     5,    -1,     7,     8,     9,    10,    11,    -1,    13, 
     2309      14,    15,    16,    17,    18,   185,   186,    21,    22,    23, 
     2310      24,    25,    -1,    -1,     5,    -1,     7,     8,     9,    10, 
     2311      11,    -1,    13,    14,    15,    16,    17,    18,   185,   186, 
     2312      21,    22,    23,    24,    25,    -1,     5,    -1,     7,     8, 
     2313       9,    10,    11,    -1,    13,    14,    15,    16,    17,    18, 
     2314     185,   186,    21,    22,    23,    24,    25,     5,    -1,     7, 
     2315       8,     9,    10,    11,    -1,    13,    14,    15,    16,    17, 
     2316      18,    -1,    -1,    21,    22,    23,    24,    25,    -1,    -1, 
     2317      -1,    -1,    -1,    -1,    -1,   185,   186,    -1,    -1,    -1, 
     2318      -1,    -1,    -1,     5,    -1,     7,     8,     9,    10,    11, 
     2319      -1,    13,    14,    15,    16,    17,    18,   185,   186,    21, 
     2320      22,    23,    24,    25,    -1,     5,    -1,     7,     8,     9, 
     2321      10,    11,    -1,    13,    14,    15,    16,    17,    18,   185, 
     2322     186,    21,    22,    23,    24,    25,    -1,    -1,    -1,    -1, 
     2323      -1,    -1,    -1,    -1,    -1,   180,    -1,    -1,    -1,    -1, 
     2324     185,   186,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2325      -1,    -1,    -1,    -1,    -1,    -1,   180,    -1,    -1,    -1, 
     2326      -1,   185,   186,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2327      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180, 
     2328      -1,    -1,    -1,    -1,   185,   186,    -1,    -1,    -1,    -1, 
    36542329   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3655    -1,   -1,  287,  288,   -1,   -1,   -1,  292,  293,  294, 
    3656   295,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  304, 
    3657   305,  306,  307,  308,  309,  310,   -1,  312,  313,  314, 
    3658    -1,   -1,  317,  318,  319,   -1,  321,  322,  323,  324, 
    3659   325,   -1,  327,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3660    -1,   -1,  390,  391,   -1,    0,   -1,   -1,  396,   -1, 
    3661    -1,   -1,   -1,   -1,   -1,   10,   -1,   -1,  406,  407, 
    3662    -1,   -1,  410,  411,  412,  413,   -1,   -1,   -1,  417, 
    3663    -1,   -1,   -1,   -1,   -1,   -1,  424,   -1,   -1,   -1, 
    3664    -1,   -1,   37,   -1,  379,   -1,   41,   42,   43,   44, 
    3665    45,   -1,   -1,   -1,   -1,  390,  391,   -1,   -1,   -1, 
    3666    -1,  396,   -1,   58,   -1,   60,   61,   62,   -1,   -1, 
    3667    -1,  406,  407,   -1,   -1,  410,  411,  412,  413,   -1, 
    3668    -1,   -1,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    3669    -1,  256,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    3670   265,  266,  267,  268,  269,   -1,  271,  272,  273,   -1, 
    3671   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    3672   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    3673    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1, 
    3674    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1, 
    3675   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    3676    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    3677   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    3678   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    3679    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    3680   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    3681   375,  376,  377,  378,   -1,  380,  381,  382,  383,   -1, 
    3682    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    3683   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    3684   405,   40,   -1,  408,   43,   -1,   45,   -1,   -1,   -1, 
    3685   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    3686   425,  256,   61,  258,  259,  260,  261,  262,   -1,  264, 
    3687   265,  266,  267,  268,  269,   -1,  271,  272,  273,   -1, 
    3688   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    3689   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    3690    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1, 
    3691    -1,   -1,   42,   43,   -1,   45,  311,   -1,   -1,   -1, 
    3692   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    3693    60,  326,   62,  328,  329,   -1,  331,   -1,  333,  334, 
    3694   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    3695   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    3696    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    3697   365,  366,  367,   -1,    0,  370,   -1,  372,   -1,   -1, 
    3698   375,  376,  377,  378,   10,  380,  381,  382,  383,   -1, 
    3699    -1,   -1,   -1,   -1,  389,   -1,  277,  392,  393,  394, 
    3700   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    3701   405,   -1,   -1,  408,   40,   41,   42,   43,   44,   45, 
    3702   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    3703   425,   -1,   58,   -1,   60,   61,   62,   -1,   -1,   -1, 
    3704    -1,   -1,   -1,   -1,   -1,   -1,   -1,  328,  329,  330, 
    3705    -1,   -1,   -1,   -1,   -1,   -1,   -1,   42,   43,   -1, 
    3706    45,   -1,   -1,   -1,  263,   -1,   -1,   -1,   -1,   -1, 
    3707    -1,   -1,   -1,  272,   -1,   60,  357,   62,  359,  360, 
    3708   361,   -1,   -1,  364,  365,   -1,  367,  368,  287,  288, 
    3709    -1,   -1,   -1,  292,  293,  294,  295,   -1,   -1,   -1, 
    3710    -1,   -1,   -1,   -1,   -1,  304,  305,  306,  307,  308, 
    3711   309,  310,   -1,  312,  313,  314,   -1,   -1,  317,  318, 
    3712   319,   -1,  321,  322,  323,  324,  325,   -1,  327,   -1, 
    3713   260,  261,  262,   -1,  264,  265,  266,  267,  268,  269, 
    3714    -1,   -1,  272,  273,    0,   -1,   -1,   -1,   -1,   -1, 
    3715    -1,   -1,   -1,   -1,   10,   -1,   -1,   -1,   -1,   -1, 
     2330      -1,   180,    -1,    -1,    -1,    -1,   185,   186,    -1,    -1, 
    37162331   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2332      -1,    -1,   180,    -1,    -1,    -1,    -1,   185,   186,     5, 
     2333      -1,     7,     8,     9,    10,    11,    -1,    13,    14,    15, 
     2334      16,    17,    18,    -1,    -1,    21,    22,    23,    24,    25, 
     2335      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    -1, 
     2336      -1,    -1,    -1,   185,   186,    -1,    -1,    -1,    -1,    -1, 
    37172337   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3718   379,   37,   -1,   -1,   -1,   41,   42,   43,   44,   45, 
    3719    -1,  390,  391,   -1,   -1,   -1,   -1,  396,   -1,   -1, 
    3720    -1,   -1,   58,   -1,   60,   61,   62,  406,  407,   -1, 
    3721    -1,  410,  411,  412,  413,   -1,   -1,   -1,  417,   -1, 
    3722    -1,   -1,   -1,   -1,   -1,  424,   -1,   -1,   -1,   -1, 
    3723   256,   -1,  258,  259,  260,  261,  262,   -1,  264,  265, 
    3724   266,  267,  268,  269,   -1,  271,  272,  273,   -1,  275, 
    3725    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    3726   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    3727   296,  297,   -1,   -1,   -1,  301,  302,  262,   -1,  264, 
    3728   265,  266,  267,  268,  269,  311,   -1,  272,  273,  315, 
    3729   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    3730   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    3731   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    3732   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    3733    40,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    3734   366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375, 
    3735   376,  377,  378,   -1,  380,  381,  382,  383,   -1,   -1, 
    3736    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    3737   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    3738    -1,   -1,  408,   40,   -1,   42,   43,   -1,   45,  415, 
    3739   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    3740   256,   58,  258,  259,  260,  261,  262,   -1,  264,  265, 
    3741   266,  267,  268,  269,   -1,  271,  272,  273,   -1,  275, 
    3742    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    3743   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    3744   296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1, 
    3745    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315, 
    3746   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    3747   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    3748   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    3749   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    3750    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    3751   366,  367,   -1,    0,  370,   -1,  372,   -1,   -1,  375, 
    3752   376,  377,  378,   10,  380,  381,  382,  383,   -1,   -1, 
    3753    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    3754   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    3755    37,   -1,  408,   -1,   41,   42,   43,   44,   45,  415, 
    3756   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    3757    -1,   58,   -1,   60,   61,   62,   -1,  287,  288,   -1, 
    3758    -1,   -1,  292,  293,  294,  295,   -1,   -1,   -1,   -1, 
    3759    -1,   -1,   -1,   -1,  304,  305,  306,  307,  308,  309, 
    3760   310,   -1,  312,  313,  314,   -1,  263,  317,  318,  319, 
    3761    -1,  321,  322,  323,  324,  325,   -1,  327,   -1,   -1, 
     2338     180,    -1,    -1,    -1,    -1,   185,   186,     5,    -1,     7, 
     2339       8,     9,    10,    11,    -1,    13,    14,    15,    16,    17, 
     2340      18,    -1,    -1,    21,    22,    23,    24,    25,     5,    -1, 
     2341       7,     8,     9,    10,    11,    -1,    13,    14,    15,    16, 
     2342      17,    18,    -1,    -1,    21,    22,    23,    24,    25,     5, 
     2343      -1,     7,     8,     9,    10,    11,    -1,    13,    14,    15, 
     2344      16,    17,    18,    -1,    -1,    21,    22,    23,    24,    25, 
     2345       5,    -1,     7,     8,     9,    10,    11,    -1,    13,    14, 
     2346      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24, 
     2347      25,     5,    -1,     7,     8,     9,    10,    11,    -1,    13, 
     2348      14,    15,    16,    17,    18,    -1,    -1,    21,    22,    23, 
     2349      24,    25,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2350      -1,    -1,    -1,    -1,   180,    -1,    -1,    -1,    -1,   185, 
     2351     186,     5,    -1,     7,     8,     9,    10,    11,    -1,    13, 
     2352      14,    15,    16,    17,    18,    -1,    -1,    21,    22,    23, 
     2353      24,    25,     5,    -1,     7,     8,     9,    10,    11,    -1, 
     2354      13,    14,    15,    16,    17,    18,    -1,    -1,    21,    22, 
     2355      23,    24,    25,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2356      -1,    -1,   180,    -1,    -1,    -1,    -1,   185,   186,    -1, 
     2357      -1,    -1,   169,    -1,     5,    -1,     7,     8,     9,    10, 
     2358      11,    -1,    13,    14,    15,    16,    17,    18,   185,   186, 
     2359      21,    22,    23,    24,    25,    -1,    -1,    -1,    -1,    -1, 
     2360      -1,    -1,    -1,    -1,   180,    -1,    -1,    -1,    -1,   185, 
     2361     186,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2362      -1,    -1,    -1,    -1,    -1,   180,    -1,    -1,    -1,    -1, 
     2363     185,   186,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2364      -1,    -1,    -1,    -1,    -1,    -1,   180,    -1,    -1,    -1, 
     2365      -1,   185,   186,     5,    -1,     7,     8,     9,    10,    11, 
     2366      -1,    13,    14,    15,    16,    17,    18,    -1,    -1,    21, 
     2367      22,    23,    24,    25,    -1,    -1,    -1,    -1,    -1,    -1, 
     2368      -1,    -1,    -1,    -1,    -1,    -1,   180,    -1,    -1,    -1, 
     2369      -1,   185,   186,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2370      -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    -1,    -1, 
     2371      -1,    -1,   185,   186,     5,    -1,     7,     8,     9,    10, 
     2372      11,    -1,    13,    14,    15,    16,    17,    18,    -1,    -1, 
     2373      21,    22,    23,    24,    25,    -1,    -1,    -1,    -1,    -1, 
     2374      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180, 
     2375      -1,    -1,    -1,    -1,   185,   186,     5,    -1,     7,     8, 
     2376       9,    10,    11,    -1,    13,    14,    15,    16,    17,    18, 
     2377      -1,    -1,    21,    22,    23,    24,    25,     5,    -1,     7, 
     2378       8,     9,    10,    11,    -1,    13,    14,    15,    16,    17, 
     2379      18,    -1,    -1,    21,    22,    23,    24,    25,     5,    -1, 
     2380       7,     8,     9,    10,    11,    -1,    13,    14,    15,    16, 
     2381      17,    18,    -1,    -1,    21,    22,    23,    24,    25,    -1, 
     2382      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180,    -1, 
     2383      -1,    -1,    -1,   185,   186,     5,    -1,     7,     8,     9, 
     2384      10,    11,    -1,    13,    14,    15,    16,    17,    18,    -1, 
     2385      -1,    21,    22,    23,    24,    25,     5,    -1,     7,     8, 
     2386       9,    10,    11,    -1,    13,    14,    15,    16,    17,    18, 
     2387      -1,    -1,    21,    22,    23,    24,    25,    -1,    -1,    -1, 
     2388      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   180, 
     2389      -1,    -1,    -1,    -1,   185,   186,     5,    -1,     7,     8, 
     2390       9,    10,    11,    -1,    13,    14,    15,    16,    17,    18, 
     2391      -1,    -1,    21,    22,    23,    24,    25,    -1,    -1,    -1, 
    37622392   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3763   287,  288,   -1,   -1,   -1,  292,  293,  294,  295,   -1, 
    3764    -1,   -1,   -1,   -1,   -1,   -1,   -1,  304,  305,  306, 
    3765   307,  308,  309,  310,   -1,  312,  313,  314,   -1,   -1, 
    3766   317,  318,  319,   -1,  321,  322,  323,  324,  325,   -1, 
    3767   327,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3768   390,  391,   -1,    0,   -1,   -1,  396,   -1,   -1,   -1, 
    3769    -1,   -1,   -1,   10,   -1,   -1,  406,  407,   -1,   -1, 
    3770   410,  411,  412,  413,   -1,   -1,   -1,  417,   -1,   -1, 
    3771    -1,   -1,   -1,   -1,  424,   -1,   -1,   -1,   -1,   -1, 
    3772    -1,   -1,  379,   -1,   41,   42,   43,   44,   45,   -1, 
    3773    -1,   -1,   -1,  390,  391,   -1,   -1,   -1,   -1,  396, 
    3774    -1,   58,   -1,   60,   61,   62,   -1,   -1,   -1,  406, 
    3775   407,   -1,   -1,  410,  411,  412,  413,   -1,   -1,   -1, 
    3776   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,   -1,  256, 
    3777    -1,  258,  259,  260,  261,  262,   -1,  264,  265,  266, 
    3778   267,  268,  269,   -1,  271,  272,  273,   -1,  275,   -1, 
    3779   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    3780    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    3781   297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1, 
    3782    -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316, 
    3783    -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    3784    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    3785   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    3786   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    3787   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    3788   367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376, 
    3789   377,  378,   -1,  380,  381,  382,  383,   -1,   -1,   -1, 
    3790    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    3791   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    3792    -1,  408,   40,   -1,   42,   43,   -1,   45,  415,  416, 
    3793    -1,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,  256, 
    3794    -1,  258,  259,  260,  261,  262,   -1,  264,  265,  266, 
    3795   267,  268,  269,   -1,  271,  272,  273,   -1,  275,   -1, 
    3796   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    3797    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    3798   297,   -1,   -1,   -1,  301,  302,   -1,   -1,   42,   43, 
    3799    -1,   45,   -1,   -1,  311,   -1,   -1,   -1,  315,  316, 
    3800    -1,   -1,   -1,  320,   -1,   -1,   60,   -1,   62,  326, 
    3801    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    3802   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    3803   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    3804   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    3805   367,   -1,    0,  370,   -1,  372,   -1,   -1,  375,  376, 
    3806   377,  378,   10,  380,  381,  382,  383,   -1,   -1,   -1, 
    3807    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    3808   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    3809    -1,  408,   -1,   41,   42,   43,   44,   45,  415,  416, 
    3810   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    3811    -1,   -1,   60,   61,   62,   -1,   -1,  288,   -1,   -1, 
    3812    -1,  292,  293,  294,  295,   -1,   -1,   -1,   -1,   -1, 
    3813    -1,   -1,   -1,  304,  305,  306,  307,  308,  309,  310, 
    3814    -1,  312,  313,  314,   -1,  263,  317,  318,  319,   -1, 
    3815    -1,  322,  323,  324,  325,   -1,  327,   -1,   -1,   -1, 
    3816    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  287, 
    3817   288,   -1,   -1,   -1,  292,  293,  294,  295,   -1,   -1, 
    3818    -1,   -1,   -1,   -1,   -1,   -1,  304,  305,  306,  307, 
    3819   308,  309,  310,   -1,  312,  313,  314,   -1,   -1,  317, 
    3820   318,  319,   -1,  321,  322,  323,  324,  325,   -1,  327, 
    3821   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    3822    -1,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3823    -1,   -1,   10,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3824    -1,   -1,   -1,   -1,   -1,   -1,  417,   -1,   -1,   -1, 
    3825    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37, 
    3826    -1,  379,   -1,   41,   42,   43,   44,   45,   -1,   -1, 
    3827    -1,   -1,  390,  391,   -1,   -1,   -1,   -1,  396,   -1, 
    3828    58,   -1,   -1,   61,   -1,   -1,   -1,   -1,  406,  407, 
    3829    -1,   -1,  410,  411,  412,  413,   -1,   -1,   -1,  417, 
    3830    -1,   -1,   -1,   -1,   -1,   -1,  424,   -1,  256,   -1, 
    3831   258,  259,  260,  261,  262,   -1,  264,  265,  266,  267, 
    3832   268,  269,   -1,   -1,  272,  273,   -1,  275,   -1,  277, 
    3833    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    3834    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    3835    -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1, 
    3836    -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1, 
    3837    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    3838   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    3839    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    3840   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    3841   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    3842    -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    3843   378,   -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1, 
    3844    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    3845   398,  399,   -1,  401,  402,  403,  404,  405,   -1,   -1, 
    3846   408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417, 
    3847    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,  256,   -1, 
    3848   258,  259,  260,  261,  262,    0,  264,  265,  266,  267, 
    3849   268,  269,   -1,  271,  272,   10,   -1,  275,   -1,  277, 
    3850    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    3851    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    3852    -1,   -1,   37,  301,  302,   -1,   41,   42,   43,   44, 
    3853    45,   -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1, 
    3854    -1,   -1,  320,   58,   -1,   -1,   61,   -1,  326,   -1, 
    3855   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    3856    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    3857   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    3858   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    3859    -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    3860   378,   -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1, 
    3861    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    3862   398,  399,   -1,  401,  402,  403,  404,  405,   -1,   -1, 
    3863   408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417, 
    3864    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1, 
    3865    -1,   -1,   -1,   -1,  288,    0,   -1,   -1,  292,  293, 
    3866   294,  295,   -1,   -1,   -1,   10,   -1,   -1,   -1,   -1, 
    3867   304,  305,  306,  307,  308,  309,  310,   -1,  312,  313, 
    3868   314,   -1,   -1,  317,  318,  319,   -1,   -1,  322,  323, 
    3869   324,  325,   37,  327,   -1,   -1,   41,   42,   43,   44, 
    3870    45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3871    -1,   -1,   -1,   58,   -1,   -1,   61,   -1,   -1,   -1, 
     2393      -1,   180,    -1,    -1,    -1,    -1,   185,   186,    -1,    -1, 
    38722394   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2395      -1,    -1,   180,    -1,    -1,    -1,    -1,   185,   186,    -1, 
    38732396   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3874    -1,  256,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    3875   265,  266,  267,  268,  269,   -1,  271,  272,   -1,   -1, 
    3876   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    3877   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    3878    -1,  296,  297,  417,   -1,   -1,  301,  302,   -1,   -1, 
    3879    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1, 
    3880   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    3881    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    3882   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    3883   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    3884    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    3885   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    3886   375,  376,  377,  378,   -1,  380,  381,  382,  383,   -1, 
    3887    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    3888   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    3889   405,   -1,   -1,  408,   -1,   -1,   -1,   -1,   -1,   -1, 
    3890   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    3891   425,  256,   -1,  258,  259,  260,  261,  262,    0,  264, 
    3892   265,  266,  267,  268,  269,   -1,  271,  272,   10,   -1, 
    3893   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    3894   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    3895    -1,  296,  297,   -1,   -1,   37,  301,  302,   -1,   41, 
    3896    42,   43,   44,   45,   -1,   -1,  311,   -1,   -1,   -1, 
    3897   315,  316,   -1,   -1,   -1,  320,   58,   -1,   -1,   61, 
    3898    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    3899   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    3900   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    3901    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    3902   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    3903   375,  376,  377,  378,   -1,  380,  381,  382,  383,   -1, 
    3904    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    3905   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    3906   405,   -1,   -1,  408,   -1,   -1,   -1,   -1,   -1,   -1, 
    3907   415,  416,  417,   -1,  286,   -1,   -1,   -1,   -1,  424, 
    3908   425,   -1,   -1,   -1,   -1,   -1,   -1,   -1,    0,   -1, 
    3909    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   10,  311, 
     2397      -1,    -1,    -1,   180,    -1,    -1,    -1,    -1,   185,   186, 
     2398       5,    -1,     7,     8,     9,    10,    11,    -1,    13,    14, 
     2399      15,    16,    17,    18,    -1,    -1,    21,    22,    23,    24, 
     2400      25,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2401     180,    -1,    -1,    -1,    -1,   185,   186,    -1,    -1,    -1, 
    39102402   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3911    -1,   -1,   -1,   -1,  326,   -1,   -1,   -1,   -1,  331, 
    3912   332,   -1,   -1,   -1,  336,  337,   -1,   -1,   -1,   41, 
    3913    42,   43,   44,   45,  346,  347,  348,  349,  350,  351, 
    3914   352,  353,   -1,   -1,   -1,   -1,   -1,   -1,   60,   61, 
    3915    62,   -1,   -1,   -1,  366,   -1,   -1,   -1,   -1,   -1, 
    3916   372,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  381, 
    3917    -1,  383,   -1,   -1,  256,   -1,  258,  259,  260,  261, 
    3918   262,   -1,  264,  265,  266,  267,  268,  269,   -1,  271, 
    3919   272,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    3920   282,  283,  284,  285,  286,  417,   -1,  289,  290,  291, 
    3921    -1,   -1,  424,   -1,  296,  297,   -1,   -1,   -1,  301, 
    3922   302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    3923    -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1, 
    3924    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    3925    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    3926   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    3927   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    3928   362,  363,   -1,  365,  366,  367,   -1,   -1,  370,   -1, 
    3929   372,   -1,   -1,  375,  376,  377,  378,   -1,  380,  381, 
    3930   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    3931   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    3932   402,  403,  404,  405,   -1,   -1,  408,   40,   -1,   42, 
    3933    43,   -1,   45,  415,  416,  417,   -1,   -1,   -1,   -1, 
    3934    -1,   -1,  424,  425,  256,   -1,  258,  259,  260,  261, 
    3935   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    3936   272,  273,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    3937   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    3938    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    3939   302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    3940    -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1, 
    3941    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    3942    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    3943   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    3944   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    3945   362,  363,   -1,  365,  366,  367,   -1,    0,  370,   -1, 
    3946   372,   -1,   -1,  375,  376,  377,  378,   10,   -1,  381, 
    3947   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    3948   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    3949   402,  403,  404,  405,   -1,   -1,  408,   -1,   -1,   42, 
    3950    43,   -1,   45,  415,  416,  417,   -1,   -1,   -1,   -1, 
    3951    -1,   -1,  424,  425,   -1,   -1,   -1,   60,   61,   62, 
     2403      -1,   180,    -1,    -1,    -1,    -1,   185,   186,     5,    -1, 
     2404       7,     8,     9,    10,    11,    -1,    13,    14,    15,    16, 
     2405      17,    18,    -1,    -1,    21,    22,    23,    24,    25,    -1, 
    39522406   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2407      -1,   180,    -1,    -1,    -1,    -1,   185,   186,     5,    -1, 
     2408       7,     8,     9,    10,    11,    -1,    13,    14,    15,    16, 
     2409      17,    18,    -1,    -1,    21,    22,    23,    24,    25,     9, 
     2410      10,    11,    -1,    13,    14,    15,    16,    17,    18,    -1, 
     2411      -1,    21,    22,    23,    24,    25,    -1,    -1,    -1,    -1, 
     2412      -1,    -1,    11,     4,    13,    14,    15,    16,    17,    18, 
     2413      -1,    12,    21,    22,    23,    24,    25,    -1,    -1,    -1, 
     2414      21,    22,    23,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2415      -1,    -1,    -1,    -1,    -1,   180,    -1,    -1,    39,    40, 
     2416     185,   186,    -1,    44,    45,    46,    47,    -1,    -1,    -1, 
     2417      -1,    -1,    -1,    -1,    -1,    56,    57,    58,    59,    60, 
     2418      61,    62,    -1,    64,    65,    66,    -1,    -1,    69,    70, 
     2419      71,    -1,    73,    74,    75,    76,    77,    -1,    79,    13, 
     2420      14,    15,    16,    17,    18,    -1,    -1,    21,    22,    23, 
     2421      24,    25,    -1,   180,    -1,    -1,    -1,    -1,   185,   186, 
     2422      13,    14,    15,    16,    17,    18,    -1,    -1,    21,    22, 
     2423      23,    24,    25,    -1,    -1,    -1,    -1,    -1,    -1,    21, 
     2424      22,    23,    -1,    25,    -1,    -1,    -1,    -1,    -1,    -1, 
     2425     131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   185,   186, 
     2426      -1,   142,   143,    -1,    -1,    -1,    -1,   148,    50,    51, 
     2427      52,    -1,    -1,    55,    -1,   185,   186,   158,   159,    -1, 
     2428      12,   162,   163,   164,   165,    -1,    -1,    -1,   169,    21, 
     2429      22,    -1,    -1,    -1,    -1,   176,   185,   186,   179,    -1, 
     2430      -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1, 
     2431      -1,    -1,    44,    45,    46,    47,    -1,    -1,    -1,    -1, 
     2432      -1,    -1,    -1,    -1,    56,    57,    58,    59,    60,    61, 
     2433      62,    -1,    64,    65,    66,    -1,    -1,    69,    70,    71, 
     2434      -1,    73,    74,    75,    76,    77,    -1,    79,    -1,    -1, 
    39532435   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2436     142,   143,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2437      -1,   185,   186,    21,    22,    23,   158,   159,    -1,    -1, 
     2438     162,   163,   164,   165,    -1,    -1,    -1,   169,    -1,    -1, 
     2439      -1,    -1,   185,   186,   176,    -1,    -1,   179,    -1,   131, 
     2440      -1,    -1,    50,    51,    52,    -1,    -1,    55,    -1,    -1, 
     2441     142,   143,    -1,    -1,    -1,    -1,   148,     4,    -1,    -1, 
     2442      -1,    -1,    -1,    -1,    -1,    12,   158,   159,    -1,    -1, 
     2443     162,   163,   164,   165,    21,    22,    -1,   169,    -1,    -1, 
     2444      -1,    -1,    -1,    -1,   176,    -1,    -1,   179,    -1,    -1, 
     2445      -1,    -1,    39,    40,    -1,   187,    -1,    44,    45,    46, 
     2446      47,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    56, 
     2447      57,    58,    59,    60,    61,    62,    -1,    64,    65,    66, 
     2448      -1,    -1,    69,    70,    71,    -1,    73,    74,    75,    76, 
     2449      77,    -1,    79,    -1,   142,   143,    -1,    -1,    -1,    -1, 
     2450      -1,    -1,    -1,    21,    22,    -1,    -1,    -1,    -1,    -1, 
     2451     158,   159,    -1,    -1,   162,   163,   164,   165,    -1,    -1, 
     2452      -1,   169,    -1,    -1,    -1,    -1,    -1,    -1,   176,    -1, 
     2453      -1,   179,    50,    51,    52,    -1,    -1,    55,    -1,    -1, 
     2454      -1,    -1,    -1,    -1,   131,     4,    -1,    -1,    -1,    -1, 
     2455      -1,    -1,    -1,    12,    -1,   142,   143,    -1,    -1,    -1, 
     2456      -1,   148,    21,    22,    -1,    -1,    -1,    -1,    -1,    -1, 
     2457      -1,   158,   159,    -1,    -1,   162,   163,   164,   165,    -1, 
     2458      39,    40,   169,    -1,    -1,    44,    45,    46,    47,   176, 
     2459      -1,    -1,   179,    -1,    -1,    -1,    -1,    56,    57,    58, 
     2460      59,    60,    61,    62,    -1,    64,    65,    66,    -1,    -1, 
     2461      69,    70,    71,    -1,    73,    74,    75,    76,    77,    -1, 
     2462      79,    -1,    -1,    -1,   142,   143,    -1,    -1,    -1,    -1, 
    39542463   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3955   263,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2464     158,   159,    -1,    -1,   162,   163,   164,   165,    -1,    -1, 
     2465      -1,   169,    -1,    -1,    -1,    -1,    -1,    -1,   176,    -1, 
     2466      -1,   179,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2467      -1,    -1,   131,    -1,     5,    -1,    -1,    -1,    -1,    -1, 
     2468      -1,    12,    -1,   142,   143,    -1,    -1,    -1,    -1,   148, 
     2469      21,    22,    23,    -1,    -1,    -1,    -1,    -1,    -1,   158, 
     2470     159,    -1,    -1,   162,   163,   164,   165,    -1,    39,    40, 
     2471     169,    -1,    -1,    44,    45,    46,    47,   176,    -1,    -1, 
     2472     179,    -1,    -1,    -1,    -1,    56,    57,    58,    59,    60, 
     2473      61,    62,    -1,    64,    65,    66,    -1,    -1,    69,    70, 
     2474      71,    -1,    73,    74,    75,    76,    77,    -1,    79,    40, 
     2475      -1,    -1,    -1,    44,    45,    46,    47,    -1,    -1,    -1, 
     2476      -1,    -1,    -1,    -1,    -1,    56,    57,    58,    59,    60, 
     2477      61,    62,    -1,    64,    65,    66,    -1,    -1,    69,    70, 
     2478      71,    -1,    -1,    74,    75,    76,    77,    -1,    79,    -1, 
    39562479   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3957    -1,   -1,   -1,   -1,  287,  288,   -1,   -1,   -1,  292, 
    3958   293,  294,  295,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3959    -1,  304,  305,  306,  307,  308,  309,  310,   -1,  312, 
    3960   313,  314,   -1,   -1,  317,  318,  319,   -1,  321,  322, 
    3961   323,  324,  325,   -1,  327,   -1,   -1,   -1,   -1,   -1, 
    3962    -1,   -1,   -1,   -1,   -1,   -1,   -1,    0,   -1,   -1, 
    3963    -1,   -1,   -1,   -1,   -1,   -1,   -1,   10,   -1,   -1, 
    3964    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3965    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    3966    -1,   -1,   -1,   -1,   37,   -1,  379,   -1,   41,   -1, 
    3967    43,   44,   45,   -1,   -1,   -1,   -1,  390,  391,   -1, 
    3968    -1,   -1,   -1,  396,   -1,   58,   -1,   -1,   61,   -1, 
    3969    -1,   -1,   -1,  406,  407,   -1,   -1,  410,  411,  412, 
    3970   413,   -1,   -1,   -1,  417,   -1,   -1,   -1,   -1,   -1, 
    3971    -1,  424,   -1,  256,   -1,  258,  259,  260,  261,  262, 
    3972    -1,  264,  265,  266,  267,  268,  269,   -1,   -1,  272, 
    3973   273,   -1,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    3974   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    3975    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    3976    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1, 
    3977    -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    3978    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    3979   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    3980   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    3981   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    3982   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    3983    -1,   -1,  375,  376,  377,  378,   -1,  380,  381,  382, 
    3984   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    3985   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    3986   403,  404,  405,   -1,   -1,  408,   -1,   -1,   -1,   -1, 
    3987    -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    3988    -1,  424,  425,  256,   -1,  258,  259,  260,  261,  262, 
    3989     0,  264,  265,  266,  267,  268,  269,   -1,  271,   -1, 
    3990    10,   -1,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    3991   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    3992    -1,   -1,   -1,  296,  297,   -1,   -1,   37,  301,  302, 
    3993    -1,   41,   -1,   43,   44,   45,   -1,   -1,  311,   -1, 
    3994    -1,   -1,  315,  316,   -1,   -1,   -1,  320,   58,   -1, 
    3995    -1,   61,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    3996   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    3997   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    3998   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    3999   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    4000    -1,   -1,  375,  376,  377,  378,   -1,  380,  381,  382, 
    4001   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    4002   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    4003   403,  404,  405,   -1,   -1,  408,   -1,   -1,   -1,   -1, 
    4004    -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    4005    -1,  424,  425,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4006     0,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4007    10,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4008    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4009    -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1,   -1, 
    4010    -1,   41,   42,   -1,   44,   -1,   -1,   -1,   -1,   -1, 
    4011    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58,   -1, 
    4012    60,   -1,   62,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4013    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4014    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4015   260,  261,  262,   -1,  264,  265,  266,  267,  268,  269, 
    4016    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4017   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4018   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4019    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4020    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4021   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4022    -1,  331,    0,  333,  334,  335,  336,  337,   -1,  339, 
    4023   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4024   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4025    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    4026   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4027   380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    4028    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4029    -1,  401,  402,  403,  404,  405,   -1,   -1,  408,   -1, 
    4030    -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1, 
    4031    -1,   -1,   -1,   -1,  424,  425,  256,   -1,  258,  259, 
    4032   260,  261,  262,   -1,  264,  265,  266,  267,  268,  269, 
    4033    -1,  271,   -1,  273,   -1,  275,   -1,  277,   -1,   -1, 
    4034   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4035   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4036    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4037    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4038   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4039    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4040   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4041   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4042    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,    0, 
    4043   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   10, 
    4044   380,  381,  382,  383,   37,   -1,   -1,   -1,   41,  389, 
    4045    -1,   44,  392,  393,  394,  395,   -1,  397,  398,  399, 
    4046    -1,  401,  402,  403,  404,  405,   -1,   60,  408,   62, 
    4047    -1,   42,   43,   44,   45,  415,  416,   -1,   -1,   -1, 
    4048    -1,   -1,   -1,   -1,   -1,  425,   -1,   -1,   -1,   60, 
    4049    61,   62,   -1,   -1,   -1,   -1,   -1,  275,   -1,  277, 
    4050    -1,   -1,  280,  281,  282,  283,   -1,   -1,  286,   -1, 
    4051    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    4052    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4053    -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1, 
    4054    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    4055   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    4056    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    4057   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    4058   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    4059    -1,    0,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    4060   378,   10,   -1,  381,  382,  383,   -1,   -1,   -1,   -1, 
    4061    -1,  389,   -1,   -1,   -1,  393,  394,  395,  396,  397, 
    4062   398,  399,   -1,  401,  402,  403,  404,  405,   -1,   -1, 
    4063   408,   -1,   -1,   42,   43,   44,   45,  415,  416,  417, 
    4064    -1,   -1,   -1,   -1,   -1,   -1,  424,   -1,   -1,   -1, 
    4065    -1,   60,   61,   62,   -1,   -1,   -1,   -1,   -1,   -1, 
    4066    -1,   -1,   -1,   -1,   -1,  258,  259,  260,  261,  262, 
    4067    -1,  264,  265,  266,  267,  268,  269,   -1,   -1,  272, 
    4068   273,   -1,   -1,   -1,   -1,  256,   -1,  258,  259,  260, 
    4069   261,  262,   -1,  264,  265,  266,  267,  268,  269,   -1, 
    4070    -1,  272,  273,   -1,  275,   -1,  277,   -1,   -1,  280, 
    4071   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    4072   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    4073   301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4074   311,   -1,    0,   -1,  315,  316,   -1,   -1,   -1,  320, 
    4075    -1,   -1,   10,   -1,   -1,  326,   -1,  328,  329,   -1, 
    4076   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    4077   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    4078   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    4079   361,  362,  363,   -1,  365,  366,  367,   -1,   -1,  370, 
    4080    -1,  372,   -1,   -1,  375,  376,  377,  378,   -1,   -1, 
    4081   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    4082    -1,  392,  393,  394,  395,   -1,  397,  398,  399,   -1, 
    4083   401,  402,  403,  404,  405,   -1,   -1,  408,   -1,   -1, 
    4084    -1,   -1,   -1,   -1,  415,  416,   -1,  256,   -1,  258, 
    4085   259,  260,  261,  262,  425,  264,  265,  266,  267,  268, 
    4086   269,   -1,   -1,  272,  273,   -1,  275,   -1,  277,   -1, 
    4087    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4088   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4089    -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1, 
    4090    -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1, 
    4091    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    4092   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4093   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4094   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4095   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4096     0,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4097    10,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4098   389,   -1,   -1,  392,  393,  394,  395,   -1,  397,  398, 
    4099   399,   -1,  401,  402,  403,  404,  405,   37,  256,  408, 
    4100    -1,   41,   -1,   -1,   44,   -1,  415,  416,   -1,   -1, 
    4101    -1,   -1,   -1,  271,  272,   -1,  425,  275,   58,  277, 
    4102    -1,   61,  280,  281,  282,  283,  284,  285,  286,   -1, 
    4103    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    4104    -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1, 
    4105    -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1, 
    4106    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    4107   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    4108    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    4109   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    4110   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    4111    -1,    0,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    4112   378,   10,   -1,  381,  382,  383,   -1,   -1,   -1,   -1, 
    4113    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    4114   398,  399,   -1,  401,  402,  403,  404,  405,   37,   -1, 
    4115   408,   -1,   41,   -1,   -1,   44,   -1,  415,  416,  417, 
    4116    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   58, 
    4117    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4118    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4119    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4120    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4121    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4122   260,  261,  262,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4123    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4124   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4125   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4126    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4127    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4128   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4129    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4130   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4131   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4132    -1,  361,  362,  363,   -1,  365,  366,  367,   42,   43, 
    4133   370,   45,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4134   380,  381,  382,  383,   -1,   -1,   60,   61,   62,  389, 
    4135    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4136    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4137   259,  260,  261,  262,   -1,  415,  416,  417,   -1,   -1, 
    4138     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4139    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4140   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4141    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4142    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4143    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4144   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4145   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4146   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4147   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4148    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4149    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4150   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4151   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4152    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4153    -1,    0,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4154    -1,   10,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    4155   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    4156    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4157    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4158    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
    4159    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4160    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4161    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4162    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4163    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4164   260,  261,  262,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4165    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4166   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4167   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4168    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4169    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4170   320,   -1,   -1,  417,   -1,   -1,  326,   -1,  328,  329, 
    4171    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4172   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4173   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4174    -1,  361,  362,  363,   -1,  365,  366,  367,   42,   43, 
    4175   370,   45,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4176   380,  381,  382,  383,   58,   -1,   60,   61,   62,  389, 
    4177    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4178    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4179   259,  260,  261,  262,   -1,  415,  416,  417,   -1,   -1, 
    4180     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4181    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4182   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4183    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4184    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4185    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4186   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4187   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4188   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4189   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4190    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4191    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4192   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4193   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4194    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4195    -1,    0,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4196    -1,   10,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    4197   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    4198    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4199    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4200    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
    4201    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4202    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4203    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4204    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4205    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4206   260,  261,  262,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4207    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4208   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4209   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4210    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4211    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4212   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4213    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4214   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4215   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4216    -1,  361,  362,  363,   -1,  365,  366,  367,   42,   43, 
    4217   370,   45,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4218   380,  381,  382,  383,   58,   -1,   60,   61,   62,  389, 
    4219    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4220    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4221   259,  260,  261,  262,   -1,  415,  416,  417,   -1,   -1, 
    4222     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4223    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4224   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4225    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4226    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4227    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4228   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4229   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4230   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4231   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4232    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4233    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4234   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4235   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4236    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4237    -1,    0,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4238    -1,   10,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    4239   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    4240    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4241    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4242    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
    4243    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4244    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4245    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4246    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4247    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4248   260,  261,  262,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4249    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4250   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4251   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4252    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4253    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4254   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4255    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4256   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4257   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4258    -1,  361,  362,  363,   -1,  365,  366,  367,   42,   43, 
    4259   370,   45,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4260   380,  381,  382,  383,   58,   -1,   60,   61,   62,  389, 
    4261    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4262    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4263   259,  260,  261,  262,   -1,  415,  416,  417,   -1,   -1, 
    4264     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4265    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4266   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4267    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4268    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4269    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4270   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4271   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4272   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4273   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4274    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4275    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4276   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4277   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4278    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4279    -1,    0,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4280    -1,   10,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    4281   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    4282    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4283    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4284    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
    4285    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4286    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4287    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4288    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4289    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4290   260,  261,  262,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4291    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4292   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4293   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4294    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4295    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4296   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4297    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4298   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4299   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4300    -1,  361,  362,  363,   -1,  365,  366,  367,   42,   43, 
    4301   370,   45,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4302   380,  381,  382,  383,   58,   -1,   60,   61,   62,  389, 
    4303    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4304    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4305   259,  260,  261,  262,   -1,  415,  416,  417,   -1,   -1, 
    4306     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4307    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4308   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4309    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4310    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4311    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4312   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4313   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4314   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4315   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4316    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4317    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4318   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4319   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4320    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4321    -1,    0,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4322    -1,   10,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    4323   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    4324    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4325    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4326    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
    4327    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4328    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4329    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4330    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4331    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4332   260,  261,  262,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4333    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4334   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4335   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4336    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4337    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4338   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4339    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4340   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4341   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4342    -1,  361,  362,  363,   -1,  365,  366,  367,   42,   43, 
    4343   370,   45,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4344   380,  381,  382,  383,   -1,   -1,   60,   61,   62,  389, 
    4345    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4346    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4347   259,  260,  261,  262,   -1,  415,  416,  417,   -1,   -1, 
    4348     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4349    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4350   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4351    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4352    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4353    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4354   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4355   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4356   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4357   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4358    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4359    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4360   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4361   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4362    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4363    -1,    0,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4364    -1,   10,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    4365   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    4366    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4367    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4368    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
    4369    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4370    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4371    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4372    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4373    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4374   260,  261,  262,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4375    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4376   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4377   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4378    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4379    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4380   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4381    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4382   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4383   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4384    -1,  361,  362,  363,   -1,  365,  366,  367,   42,   43, 
    4385   370,   45,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4386   380,  381,  382,  383,   -1,   -1,   60,   61,   62,  389, 
    4387    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4388    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4389   259,  260,  261,  262,   -1,  415,  416,  417,   -1,   -1, 
    4390     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4391    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4392   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4393    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4394    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4395    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4396   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4397   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4398   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4399   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4400    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4401    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4402   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4403   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4404    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4405    -1,    0,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4406    -1,   10,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    4407   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    4408    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4409    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4410    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
    4411    -1,   -1,   61,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4412    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4413    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4414    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4415    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4416   260,  261,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4417    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4418   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4419   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4420    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4421    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4422   320,   -1,   -1,   -1,   -1,   -1,  326,   40,  328,  329, 
    4423    43,  331,   45,  333,  334,  335,  336,  337,   -1,  339, 
    4424   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4425   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4426    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    4427   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4428   380,  381,  382,  383,   -1,   40,   -1,   42,   43,  389, 
    4429    45,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4430    -1,  401,  402,  403,  404,  405,   61,  256,  408,  258, 
    4431   259,  260,  261,   -1,   -1,  415,  416,  417,   -1,   -1, 
    4432    -1,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4433    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4434   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4435    -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1, 
    4436    -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1, 
    4437    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    4438   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4439   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4440   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4441   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4442     0,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4443    10,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4444   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4445   399,   -1,  401,  402,  403,  404,  405,   37,   -1,  408, 
    4446    40,   41,   42,   43,   44,   45,  415,  416,  417,   -1, 
    4447    -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    4448    -1,   -1,   -1,   -1,   -1,  298,  299,  300,   -1,   -1, 
    4449   303,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4450    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  263,   -1, 
    4451    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  273,   -1, 
    4452    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4453    -1,   -1,  287,  288,   -1,   -1,   -1,  292,  293,  294, 
    4454   295,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  304, 
    4455   305,  306,  307,  308,  309,  310,   -1,  312,  313,  314, 
    4456    -1,   -1,  317,  318,  319,   -1,  321,  322,  323,  324, 
    4457   325,    0,  327,   -1,   -1,   -1,   -1,  390,  391,   -1, 
    4458    -1,   10,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4459    -1,   -1,   -1,  406,  407,   -1,   -1,  410,  411,  412, 
    4460   413,   -1,   -1,   -1,  417,   -1,   -1,   -1,   37,   -1, 
    4461    -1,  424,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4462    -1,   -1,   -1,   -1,  379,   -1,   -1,   -1,   -1,   58, 
    4463    -1,   -1,   61,   -1,   -1,  390,  391,   -1,   -1,   -1, 
    4464    -1,  396,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4465    -1,  406,  407,   -1,   -1,  410,  411,  412,  413,   -1, 
    4466    -1,   -1,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    4467    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,   -1,   -1, 
    4468    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4469    -1,  271,  272,  273,   -1,  275,   -1,  277,   -1,   -1, 
    4470   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4471   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4472    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4473    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4474   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4475    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4476   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4477   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4478    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    4479   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4480    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    4481    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4482    -1,  401,  402,  403,  404,  405,   -1,  256,  408,  258, 
    4483   259,   -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1, 
    4484     0,   -1,  271,   -1,  424,  425,  275,   -1,  277,   -1, 
    4485    10,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4486   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4487    -1,   -1,  301,  302,   -1,   -1,   -1,   37,   -1,   -1, 
    4488    -1,   41,  311,   -1,   44,   -1,  315,  316,   -1,   -1, 
    4489    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   58,  328, 
    4490   329,   61,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4491   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4492   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4493   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4494    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4495    -1,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4496   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4497   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4498    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    4499    -1,   -1,   -1,   -1,   -1,  424,  425,    0,   -1,   -1, 
    4500    -1,   -1,   -1,   -1,   -1,   -1,   -1,   10,   -1,   -1, 
    4501    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4502    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4503    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   41,   42, 
    4504    43,   44,   45,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2480     131,    -1,     5,    -1,    -1,    -1,    -1,    -1,    -1,    12, 
     2481      -1,   142,   143,    -1,    -1,    -1,    -1,   148,    21,    22, 
     2482      -1,    24,    -1,    -1,    -1,    -1,    -1,   158,   159,    -1, 
     2483      -1,   162,   163,   164,   165,    -1,    39,    40,   169,    -1, 
     2484      -1,    44,    45,    46,    47,   176,    -1,    -1,   179,    -1, 
     2485      -1,    -1,    -1,    56,    57,    58,    59,    60,    61,    62, 
     2486      -1,    64,    65,    66,    -1,    -1,    69,    70,    71,    -1, 
     2487      73,    74,    75,    76,    77,    -1,    79,    -1,   169,    -1, 
    45052488   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45062489   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45072490   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45082491   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4509    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,  258,  259, 
    4510    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4511    -1,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4512   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4513   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4514    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4515    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4516   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4517    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4518   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4519   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4520    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    4521   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4522   380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    4523    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4524    -1,  401,  402,  403,  404,  405,   -1,   -1,  408,   -1, 
    4525    -1,   -1,   -1,  256,   -1,  415,  416,  417,   -1,   -1, 
    4526    -1,    0,   -1,   -1,  424,  425,   -1,   -1,  271,  272, 
    4527   273,   10,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    4528   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    4529    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    4530    -1,   -1,   41,   42,   43,   44,   45,   -1,  311,   -1, 
    4531    -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    4532    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    4533   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    4534   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    4535   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    4536   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    4537    -1,   -1,  375,  376,  377,  378,   -1,   -1,  381,  382, 
    4538   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    4539   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    4540   403,  404,  405,   -1,   -1,  408,   -1,   -1,   -1,   -1, 
    4541    -1,   -1,  415,  416,  417,   -1,    0,   -1,   -1,   -1, 
    4542    -1,  424,  425,   -1,   -1,   -1,   10,   -1,   -1,   -1, 
    4543    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4544    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4545    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   42,   43, 
    4546    44,   45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2492      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   131,    -1, 
     2493       5,    -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,   142, 
     2494     143,    -1,    -1,    -1,    -1,   148,    21,    22,    23,    -1, 
     2495      -1,    -1,    -1,    -1,    -1,   158,   159,    -1,    -1,   162, 
     2496     163,   164,   165,    -1,    39,    40,   169,    -1,    -1,    44, 
     2497      45,    46,    47,   176,    -1,    -1,   179,    -1,    -1,    -1, 
     2498      -1,    56,    57,    58,    59,    60,    61,    62,    -1,    64, 
     2499      65,    66,    -1,    -1,    69,    70,    71,    -1,    73,    74, 
     2500      75,    76,    77,    -1,    79,    -1,    -1,    -1,    -1,    -1, 
    45472501   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45482502   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45492503   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45502504   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4551    -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,   -1, 
    4552    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4553    -1,   -1,  271,  272,  273,   -1,  275,   -1,  277,   -1, 
    4554    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4555   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4556    -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1, 
    4557    -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1, 
    4558    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    4559   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4560   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4561   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4562   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4563    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4564    -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4565   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4566   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4567    -1,   -1,  256,   -1,   -1,   -1,  415,  416,   -1,   -1, 
    4568     0,   -1,   -1,   -1,   -1,  424,  425,  271,  272,  273, 
    4569    10,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    4570   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    4571    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    4572    -1,   41,   42,   43,   44,   45,   -1,  311,   -1,   -1, 
    4573    -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    4574    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    4575   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    4576   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    4577   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    4578    -1,  365,  366,  367,   -1,   -1,  370,   -1,  372,   -1, 
    4579    -1,  375,  376,  377,  378,   -1,   -1,  381,  382,  383, 
    4580    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    4581   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    4582   404,  405,   -1,   -1,  408,   -1,   -1,   -1,   -1,   -1, 
    4583    -1,  415,  416,  417,   -1,    0,   -1,   -1,   -1,   -1, 
    4584   424,  425,   -1,   -1,   -1,   10,   -1,   -1,   -1,   -1, 
    4585    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4586    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4587    -1,   -1,   -1,   -1,   -1,   -1,   41,   42,   43,   44, 
    4588    45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2505      -1,    -1,    -1,    -1,    -1,    -1,   131,    -1,     5,    -1, 
     2506      -1,    -1,    -1,    -1,    -1,    12,    -1,   142,   143,    -1, 
     2507      -1,    -1,    -1,   148,    21,    22,    -1,    -1,    -1,    -1, 
     2508      -1,    -1,    -1,   158,   159,    -1,    -1,   162,   163,   164, 
     2509     165,    -1,    39,    40,   169,    -1,    -1,    44,    45,    46, 
     2510      47,   176,    -1,    -1,   179,    -1,    -1,    -1,    -1,    56, 
     2511      57,    58,    59,    60,    61,    62,    -1,    64,    65,    66, 
     2512      -1,    -1,    69,    70,    71,    -1,    73,    74,    75,    76, 
     2513      77,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    45892514   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45902515   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45912516   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    45922517   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4593    -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,   -1,   -1, 
    4594    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4595    -1,  271,  272,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4596   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4597   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4598    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4599    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4600   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4601    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4602   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4603   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4604    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    4605   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    4606    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    4607    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4608    -1,  401,  402,  403,  404,  405,   -1,   -1,  408,   -1, 
    4609    -1,  256,   -1,   -1,   -1,  415,  416,  417,    0,   -1, 
    4610    -1,   -1,   -1,   -1,  424,  425,  271,  272,   10,   -1, 
    4611   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    4612   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    4613    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,   41, 
    4614    42,   43,   44,   45,   -1,   -1,  311,   -1,   -1,   -1, 
    4615   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    4616    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    4617   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    4618   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    4619    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    4620   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    4621   375,  376,  377,  378,   -1,   -1,  381,  382,  383,   -1, 
    4622    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    4623   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    4624   405,   -1,   -1,  408,   -1,   -1,   -1,   -1,   -1,   -1, 
    4625   415,  416,  417,    0,   -1,   -1,   -1,   -1,   -1,  424, 
    4626   425,   -1,   -1,   10,   -1,   -1,   -1,   -1,   -1,   -1, 
     2518      -1,    -1,    -1,    -1,   131,    -1,     5,    -1,    -1,    -1, 
     2519      -1,    -1,    -1,    12,    -1,   142,   143,    -1,    -1,    -1, 
     2520      -1,   148,    21,    22,    -1,    -1,    -1,    -1,    -1,    -1, 
     2521      -1,   158,   159,    -1,    -1,   162,   163,   164,   165,    -1, 
     2522      39,    40,   169,    -1,    -1,    44,    45,    46,    47,   176, 
     2523      -1,    -1,   179,    -1,    -1,    -1,    -1,    56,    57,    58, 
     2524      59,    60,    61,    62,    -1,    64,    65,    66,    -1,    -1, 
     2525      69,    70,    71,    -1,    73,    74,    75,    76,    77,    -1, 
     2526      79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    46272527   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    46282528   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4629    -1,   -1,   -1,   -1,   41,   42,   43,   44,   45,   -1, 
     2529   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2530   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2531      -1,    -1,   131,    -1,     5,    -1,    -1,    -1,    -1,    -1, 
     2532      -1,    12,    -1,   142,   143,    -1,    -1,    -1,    -1,   148, 
     2533      21,    22,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   158, 
     2534     159,    -1,    -1,   162,   163,   164,   165,    -1,    39,    40, 
     2535     169,    -1,    -1,    44,    45,    46,    47,   176,    -1,    -1, 
     2536     179,    -1,    -1,    -1,    -1,    56,    57,    58,    59,    60, 
     2537      61,    62,    -1,    64,    65,    66,    -1,    -1,    69,    70, 
     2538      71,    -1,    73,    74,    75,    76,    77,    -1,    79,    -1, 
    46302539   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    46312540   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     
    46332542   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    46342543   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4635    -1,   -1,   -1,   -1,  256,   -1,   -1,   -1,   -1,   -1, 
    4636    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  271, 
    4637   272,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    4638   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    4639    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    4640   302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    4641    -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1, 
    4642    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    4643    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    4644   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    4645   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    4646   362,  363,   -1,  365,  366,  367,   -1,   -1,  370,   -1, 
    4647   372,   -1,   -1,  375,  376,  377,  378,   -1,   -1,  381, 
    4648   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    4649   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    4650   402,  403,  404,  405,   -1,   -1,  408,   -1,   -1,  256, 
    4651    -1,   -1,   -1,  415,  416,  417,    0,   -1,   -1,   -1, 
    4652    -1,   -1,  424,  425,  271,  272,   10,   -1,  275,   -1, 
    4653   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    4654    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    4655   297,   -1,   -1,   37,  301,  302,   -1,   41,   -1,   -1, 
    4656    44,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316, 
    4657    -1,   -1,   -1,  320,   58,   -1,   -1,   -1,   -1,  326, 
    4658    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    4659   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    4660   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    4661   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    4662   367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376, 
    4663   377,  378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1, 
    4664    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    4665   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    4666    -1,  408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416, 
    4667   417,    0,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    4668    -1,   10,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4669    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4670    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   37,   -1, 
    4671    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1, 
    4672    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58, 
     2544     131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    12, 
     2545      -1,   142,   143,    -1,    -1,    -1,    -1,   148,    21,    22, 
     2546      23,    -1,    25,    -1,    -1,    -1,    -1,   158,   159,    -1, 
     2547      -1,   162,   163,   164,   165,    -1,    39,    40,   169,    -1, 
     2548      -1,    44,    45,    46,    47,   176,    -1,    -1,   179,    -1, 
     2549      -1,    -1,    -1,    56,    57,    58,    59,    60,    61,    62, 
     2550      -1,    64,    65,    66,    -1,    -1,    69,    70,    71,    -1, 
     2551      73,    74,    75,    76,    77,    -1,    79,    -1,    -1,    -1, 
    46732552   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    46742553   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    46752554   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    46762555   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4677    -1,   -1,  256,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4678    -1,   -1,   -1,   -1,   -1,   -1,   -1,  271,   -1,   -1, 
    4679    -1,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    4680   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    4681    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    4682    -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    4683    -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    4684    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    4685   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    4686   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    4687   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    4688    -1,  365,  366,  367,   -1,    0,  370,   -1,  372,   -1, 
    4689    -1,  375,  376,  377,  378,   10,  380,  381,  382,  383, 
    4690    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    4691   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    4692   404,  405,   -1,   -1,  408,   -1,   41,  256,   43,   44, 
    4693    45,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    4694   424,  425,  271,   -1,   -1,   -1,  275,   -1,  277,   -1, 
    4695    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    4696   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    4697    -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1, 
    4698    -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1, 
    4699    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    4700   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    4701   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    4702   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    4703   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    4704     0,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    4705    10,  380,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    4706   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    4707   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    4708    -1,   41,   -1,   -1,   44,   -1,  415,  416,  417,   -1, 
    4709    -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
     2556      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   131,    -1, 
     2557      -1,    -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,   142, 
     2558     143,    -1,    -1,    -1,    -1,   148,    21,    22,    23,    -1, 
     2559      -1,    -1,    -1,    -1,    -1,   158,   159,    -1,    -1,   162, 
     2560     163,   164,   165,    -1,    39,    40,   169,    -1,    -1,    44, 
     2561      45,    46,    47,   176,    -1,    -1,   179,    -1,    -1,    -1, 
     2562      -1,    56,    57,    58,    59,    60,    61,    62,    -1,    64, 
     2563      65,    66,    -1,    -1,    69,    70,    71,    -1,    73,    74, 
     2564      75,    76,    77,    -1,    79,    -1,    -1,    -1,    -1,    -1, 
    47102565   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    47112566   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    47122567   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    47132568   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4714    -1,  256,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4715    -1,   -1,   -1,   -1,   -1,   -1,  271,   -1,   -1,   -1, 
    4716   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    4717   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    4718    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1, 
    4719    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1, 
    4720   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    4721    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    4722   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    4723   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    4724    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    4725   365,  366,  367,   -1,    0,  370,   -1,  372,   -1,   -1, 
    4726   375,  376,  377,  378,   10,   -1,  381,  382,  383,   -1, 
    4727    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    4728   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    4729   405,   -1,   -1,  408,   -1,   41,  256,   -1,   44,   -1, 
    4730   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    4731   425,  271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4732   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4733   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4734    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4735    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4736   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4737    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4738   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4739   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4740    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,    0, 
    4741   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   10, 
    4742    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    4743    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4744    -1,  401,  402,  403,  404,  405,   -1,   -1,  408,   -1, 
    4745    41,   -1,   -1,   44,   -1,  415,  416,  417,   -1,   -1, 
    4746    -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1, 
     2569      -1,    -1,    -1,    -1,    -1,    -1,   131,    -1,    -1,    -1, 
     2570      -1,    -1,    -1,    -1,    -1,    12,    -1,   142,   143,    -1, 
     2571      -1,    -1,    -1,   148,    21,    22,    23,    -1,    -1,    -1, 
     2572      -1,    -1,    -1,   158,   159,    -1,    -1,   162,   163,   164, 
     2573     165,    -1,    39,    40,   169,    -1,    -1,    44,    45,    46, 
     2574      47,   176,    -1,    -1,   179,    -1,    -1,    -1,    -1,    56, 
     2575      57,    58,    59,    60,    61,    62,    -1,    64,    65,    66, 
     2576      -1,    -1,    69,    70,    71,    -1,    73,    74,    75,    76, 
     2577      77,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    47472578   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    47482579   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    47492580   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    47502581   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4751   256,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4752    -1,   -1,   -1,   -1,   -1,  271,   -1,   -1,   -1,  275, 
    4753    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    4754   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    4755   296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1, 
    4756    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315, 
    4757   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    4758   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    4759   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    4760   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    4761    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    4762   366,  367,   -1,    0,  370,   -1,  372,   -1,   -1,  375, 
    4763   376,  377,  378,   10,   -1,  381,  382,  383,   -1,   -1, 
    4764    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    4765   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    4766    -1,   -1,  408,   -1,   41,  256,   -1,   44,   -1,  415, 
    4767   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    4768   271,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1,  280, 
    4769   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    4770   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    4771   301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4772   311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320, 
    4773    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    4774   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    4775   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    4776   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    4777   361,  362,  363,   -1,  365,  366,  367,   -1,    0,  370, 
    4778    -1,  372,   -1,   -1,  375,  376,  377,  378,   10,   -1, 
    4779   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    4780    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    4781   401,  402,  403,  404,  405,   -1,   -1,  408,   -1,   -1, 
    4782    42,   -1,   44,   -1,  415,  416,  417,   -1,   -1,   -1, 
    4783    -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1,   61, 
    4784    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4785    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4786    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4787    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  256, 
    4788    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4789    -1,   -1,   -1,   -1,  271,   -1,   -1,   -1,  275,   -1, 
    4790   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    4791    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    4792   297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1, 
    4793    -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316, 
    4794    -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    4795    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    4796   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    4797   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    4798   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    4799   367,   -1,    0,  370,   -1,  372,   -1,   -1,  375,  376, 
    4800   377,  378,   10,   -1,  381,  382,  383,   -1,   -1,   -1, 
    4801    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    4802   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    4803    -1,  408,   -1,   41,  256,   -1,   44,   -1,  415,  416, 
    4804   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    4805    -1,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    4806   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    4807    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    4808   302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    4809    -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1, 
    4810    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    4811    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    4812   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    4813   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    4814   362,  363,   -1,  365,  366,  367,   -1,    0,  370,   -1, 
    4815   372,   -1,   -1,  375,  376,  377,  378,   10,   -1,  381, 
    4816   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    4817   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    4818   402,  403,  404,  405,   -1,   -1,  408,   -1,   41,   -1, 
    4819    -1,   44,   -1,  415,  416,  417,   -1,   -1,   -1,   -1, 
    4820    -1,   -1,  424,  425,   -1,   -1,   -1,   -1,   -1,   -1, 
    4821    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4822    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4823    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4824    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,   -1, 
    4825    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4826    -1,   -1,   -1,  271,   -1,   -1,   -1,  275,   -1,  277, 
    4827    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    4828    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    4829    -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1, 
    4830    -1,   -1,   -1,  311,    0,   -1,   -1,  315,  316,   -1, 
    4831    -1,   -1,  320,   -1,   10,   -1,   -1,   -1,  326,   -1, 
    4832   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    4833    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    4834   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    4835   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    4836    -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    4837   378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1, 
    4838    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    4839   398,  399,   -1,  401,  402,  403,  404,  405,   -1,   -1, 
    4840   408,   -1,   -1,  256,   -1,   -1,   -1,  415,  416,  417, 
    4841    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,  271,   -1, 
    4842    -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    4843   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    4844    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    4845    -1,   -1,   -1,   -1,   -1,    0,   -1,   -1,  311,   -1, 
    4846    -1,   -1,  315,  316,   -1,   10,   -1,  320,   -1,   -1, 
    4847    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    4848   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    4849   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    4850   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    4851   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    4852    -1,   -1,  375,  376,  377,  378,   -1,   -1,  381,  382, 
    4853   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    4854   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    4855   403,  404,  405,   -1,   -1,  408,   -1,   -1,   -1,   -1, 
    4856   256,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    4857    -1,  424,  425,   -1,   -1,  271,  272,   -1,   -1,  275, 
    4858    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    4859   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    4860   296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1, 
    4861    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315, 
    4862   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    4863   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    4864   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    4865   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    4866    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    4867   366,  367,   -1,    0,  370,   -1,  372,   -1,   -1,  375, 
    4868   376,  377,  378,   10,   -1,  381,  382,  383,   -1,   -1, 
    4869    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    4870   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    4871    -1,  256,  408,   -1,   41,   -1,   -1,   -1,   -1,  415, 
    4872   416,  417,   -1,   -1,   -1,   -1,  271,  272,  424,  425, 
    4873   275,   58,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    4874   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    4875    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1, 
    4876    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1, 
    4877   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    4878    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    4879   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    4880   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    4881    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    4882   365,  366,  367,   -1,    0,  370,   -1,  372,   -1,   -1, 
    4883   375,  376,  377,  378,   10,   -1,  381,  382,  383,   -1, 
    4884    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    4885   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    4886   405,   -1,   -1,  408,   -1,   -1,   -1,   -1,   44,   -1, 
    4887   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    4888   425,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4889    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4890    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4891    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4892    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  256, 
    4893    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4894    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  275,   -1, 
    4895   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    4896    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    4897   297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1, 
    4898     0,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316, 
    4899    10,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    4900    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    4901   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    4902   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    4903   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    4904   367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376, 
    4905   377,  378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1, 
    4906    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    4907   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    4908   256,  408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416, 
    4909   417,   -1,   -1,   -1,   -1,  271,  272,  424,  425,  275, 
    4910    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    4911   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    4912   296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1, 
    4913    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315, 
    4914   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    4915   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    4916   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    4917   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    4918    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    4919   366,  367,   -1,    0,  370,   -1,  372,   -1,   -1,  375, 
    4920   376,  377,  378,   10,   -1,  381,  382,  383,   -1,   -1, 
    4921    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    4922   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    4923    -1,   -1,  408,   -1,   -1,   42,  256,   44,   -1,  415, 
    4924   416,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    4925    -1,  271,  272,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4926   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4927   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4928    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4929    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4930   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4931    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4932   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4933   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4934    -1,  361,  362,  363,    0,  365,  366,  367,   -1,   -1, 
    4935   370,   -1,  372,   -1,   10,  375,  376,  377,  378,   -1, 
    4936    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    4937    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4938    -1,  401,  402,  403,  404,  405,   -1,   -1,  408,   -1, 
    4939    -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1, 
    4940    -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1, 
    4941    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4942    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4943    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4944    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  256, 
    4945    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4946    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  275,   -1, 
    4947   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    4948    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    4949   297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1, 
    4950     0,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316, 
    4951    10,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    4952    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    4953   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    4954   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    4955   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    4956   367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376, 
    4957   377,  378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1, 
    4958    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    4959   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    4960   256,  408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416, 
    4961   417,   -1,   -1,   -1,   -1,  271,  272,  424,  425,  275, 
    4962    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    4963   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    4964   296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1, 
    4965    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315, 
    4966   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    4967   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    4968   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    4969   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    4970    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    4971   366,  367,   -1,    0,  370,   -1,  372,   -1,   -1,  375, 
    4972   376,  377,  378,   10,   -1,  381,  382,  383,   -1,   -1, 
    4973    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    4974   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    4975    -1,   -1,  408,   -1,   41,   -1,  256,   44,   -1,  415, 
    4976   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    4977    -1,  271,  272,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    4978   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    4979   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    4980    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4981    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    4982   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    4983    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    4984   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    4985   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    4986    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,    0, 
    4987   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   10, 
    4988    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    4989    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    4990    -1,  401,  402,  403,  404,  405,   -1,   -1,  408,   -1, 
    4991    41,   -1,   -1,   44,   -1,  415,  416,  417,   -1,   -1, 
    4992    -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1, 
    4993    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4994    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4995    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4996    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  256, 
    4997    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    4998    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  275,   -1, 
    4999   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    5000    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    5001   297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1, 
    5002    -1,   -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316, 
    5003    -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    5004    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    5005   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    5006   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    5007   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    5008   367,   -1,    0,  370,   -1,  372,   -1,   -1,  375,  376, 
    5009   377,  378,   10,   -1,  381,  382,  383,   -1,   -1,   -1, 
    5010    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    5011   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    5012    -1,  408,   -1,   41,   -1,  256,   44,   -1,  415,  416, 
    5013   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    5014    -1,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1,  280, 
    5015   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    5016   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    5017   301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5018   311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320, 
    5019    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    5020   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    5021   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    5022   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    5023   361,  362,  363,   -1,  365,  366,  367,   -1,    0,  370, 
    5024    -1,  372,   -1,   -1,  375,  376,  377,  378,   10,   -1, 
    5025   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    5026    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    5027   401,  402,  403,  404,  405,   -1,   -1,  408,   -1,   41, 
    5028    -1,   -1,   44,   -1,  415,  416,  417,   -1,   -1,   -1, 
    5029    -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1,   -1, 
    5030    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5031    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5032    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5033    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,   -1, 
    5034    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5035    -1,   -1,   -1,   -1,   -1,   -1,   -1,  275,   -1,  277, 
    5036    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    5037    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    5038    -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1, 
    5039    -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1, 
    5040    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    5041   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    5042    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    5043   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    5044   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    5045    -1,    0,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    5046   378,   10,   -1,  381,  382,  383,   -1,   -1,   -1,   -1, 
    5047    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    5048   398,  399,   -1,  401,  402,  403,  404,  405,   -1,   -1, 
    5049   408,   -1,   41,   -1,  256,   44,   -1,  415,  416,  417, 
    5050    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1, 
    5051    -1,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    5052   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    5053    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    5054   302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    5055    -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1, 
    5056    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    5057    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    5058   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    5059   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    5060   362,  363,   -1,  365,  366,  367,   -1,    0,  370,   -1, 
    5061   372,   -1,   -1,  375,  376,  377,  378,   10,   -1,  381, 
    5062   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    5063   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    5064   402,  403,  404,  405,   -1,   -1,  408,   -1,   -1,   -1, 
    5065    -1,   44,   -1,  415,  416,  417,   -1,   -1,   -1,   -1, 
    5066    -1,   -1,  424,  425,   -1,   -1,   -1,   -1,   -1,   -1, 
    5067    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5068    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5069    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5070    -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,   -1,   -1, 
    5071    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5072    -1,   -1,   -1,   -1,   -1,   -1,  275,   -1,  277,   -1, 
    5073    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    5074   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    5075    -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1, 
    5076    -1,   -1,  311,    0,   -1,   -1,  315,  316,   -1,   -1, 
    5077    -1,  320,   -1,   10,   -1,   -1,   -1,  326,   -1,  328, 
    5078   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    5079   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    5080   349,  350,  351,  352,  353,  354,   -1,   44,  357,  358, 
    5081   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    5082    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    5083    -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    5084   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    5085   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    5086    -1,   -1,   -1,  256,   -1,   -1,  415,  416,  417,   -1, 
    5087    -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    5088    -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    5089   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    5090    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    5091    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,    0, 
    5092    -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1,   10, 
    5093    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    5094   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    5095   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    5096   353,  354,   -1,   44,  357,  358,  359,   -1,  361,  362, 
    5097   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    5098    -1,   -1,  375,  376,  377,  378,   -1,  380,  381,  382, 
    5099   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    5100   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    5101   403,  404,  405,   -1,   -1,  408,   -1,   -1,   -1,  256, 
    5102    -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    5103    -1,  424,  425,   -1,   -1,   -1,   -1,   -1,  275,   -1, 
    5104   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    5105    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    5106   297,   -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1, 
    5107    -1,   -1,   -1,   -1,  311,    0,   -1,   -1,  315,  316, 
    5108    -1,   -1,   -1,  320,   -1,   10,   -1,   -1,   -1,  326, 
    5109    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    5110   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    5111   347,  348,  349,  350,  351,  352,  353,  354,   -1,   44, 
    5112   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    5113   367,   -1,   -1,  370,   -1,  372,   61,   -1,  375,  376, 
    5114   377,  378,   -1,  380,  381,  382,  383,   -1,   -1,   -1, 
    5115    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    5116   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    5117    -1,  408,   -1,   -1,   -1,  256,   -1,   -1,  415,  416, 
    5118   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    5119    -1,   -1,   -1,   -1,  275,   -1,  277,   -1,   -1,  280, 
    5120   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    5121   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    5122   301,  302,   -1,   -1,   -1,   -1,    0,   -1,   -1,   -1, 
    5123   311,   -1,   -1,   -1,  315,  316,   10,   -1,   -1,  320, 
    5124    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    5125   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    5126   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    5127   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    5128   361,  362,  363,   -1,  365,  366,  367,   -1,   -1,  370, 
    5129    -1,  372,   -1,   -1,  375,  376,  377,  378,   -1,  380, 
    5130   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    5131    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    5132   401,  402,  403,  404,  405,   -1,   -1,  408,   -1,   -1, 
    5133    -1,  256,   -1,   -1,  415,  416,  417,   -1,   -1,   -1, 
    5134    -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1,   -1, 
    5135   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    5136   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    5137    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,   -1, 
    5138    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   -1, 
    5139   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    5140    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    5141   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    5142   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    5143    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    5144   365,  366,  367,   -1,    0,  370,   -1,  372,   -1,   -1, 
    5145   375,  376,  377,  378,   10,   -1,  381,  382,  383,   -1, 
    5146    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    5147   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    5148   405,   -1,  256,  408,   -1,   -1,   -1,   -1,   44,   -1, 
    5149   415,  416,  417,   -1,   -1,   -1,   -1,  271,  272,  424, 
    5150   425,  275,   -1,  277,   -1,   61,  280,  281,  282,  283, 
    5151   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    5152    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    5153    -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    5154    -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    5155    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    5156   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    5157   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    5158   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    5159    -1,  365,  366,  367,   -1,    0,  370,   -1,  372,   -1, 
    5160    -1,  375,  376,  377,  378,   10,   -1,  381,  382,  383, 
    5161    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    5162   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    5163   404,  405,   -1,   -1,  408,   -1,   41,   -1,   -1,   44, 
    5164    -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    5165   424,  425,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2582      -1,    -1,    -1,    -1,   131,    -1,    -1,    -1,    -1,    -1, 
     2583      -1,    -1,    -1,    12,    -1,   142,   143,    -1,    -1,    -1, 
     2584      -1,   148,    21,    22,    23,    -1,    -1,    -1,    -1,    -1, 
     2585      -1,   158,   159,    -1,    -1,   162,   163,   164,   165,    -1, 
     2586      39,    40,   169,    -1,    -1,    44,    45,    46,    47,   176, 
     2587      -1,    -1,   179,    -1,    -1,    -1,    -1,    56,    57,    58, 
     2588      59,    60,    61,    62,    -1,    64,    65,    66,    -1,    -1, 
     2589      69,    70,    71,    -1,    73,    74,    75,    76,    77,    -1, 
     2590      79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    51662591   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    51672592   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    51682593   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    51692594   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5170   256,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5171    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  275, 
    5172    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    5173   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    5174   296,  297,   -1,   -1,   -1,  301,  302,   -1,    0,   -1, 
    5175    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10,  315, 
    5176   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    5177   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    5178   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    5179   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    5180    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    5181   366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375, 
    5182   376,  377,  378,   -1,   -1,  381,  382,  383,   -1,   -1, 
    5183    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    5184   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    5185    -1,  256,  408,   -1,   -1,   -1,   -1,   -1,   -1,  415, 
    5186   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    5187   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    5188   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    5189    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,    0, 
    5190    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10, 
    5191   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    5192    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    5193   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    5194   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    5195    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    5196   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    5197   375,  376,  377,  378,   -1,   -1,  381,  382,  383,   -1, 
    5198    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    5199   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    5200   405,   -1,   -1,  408,  256,   -1,   -1,   -1,   -1,   -1, 
    5201   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    5202   425,   -1,   -1,  275,   -1,  277,  278,   -1,  280,  281, 
    5203   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    5204    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    5205   302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    5206    -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1, 
    5207    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    5208    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    5209   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    5210   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    5211   362,  363,   -1,  365,  366,  367,   -1,   -1,  370,   -1, 
    5212   372,   -1,   -1,  375,  376,  377,  378,   -1,   -1,  381, 
    5213   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    5214   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    5215   402,  403,  404,  405,   -1,  256,  408,   -1,   -1,   -1, 
    5216    -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1, 
    5217    -1,   -1,  424,  425,  275,   -1,  277,   -1,   -1,  280, 
    5218   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    5219   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    5220   301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5221   311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320, 
    5222    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    5223   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    5224   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    5225   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    5226   361,  362,  363,   -1,  365,  366,  367,   -1,    0,  370, 
    5227    -1,  372,   -1,   -1,  375,  376,  377,  378,   10,  380, 
    5228   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    5229    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    5230   401,  402,  403,  404,  405,   -1,   -1,  408,  256,   41, 
    5231    -1,   -1,   44,   -1,  415,  416,  417,   -1,   -1,   -1, 
    5232    -1,   -1,   -1,  424,  425,   -1,   -1,  275,   -1,  277, 
    5233    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    5234    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    5235    -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1, 
    5236    -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1, 
    5237    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    5238   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    5239    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    5240   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    5241   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    5242    -1,    0,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    5243   378,   10,  380,  381,  382,  383,   -1,   -1,   -1,   -1, 
    5244    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    5245   398,  399,   -1,  401,  402,  403,  404,  405,   -1,   -1, 
    5246   408,   -1,   -1,   -1,   -1,   44,   -1,  415,  416,  417, 
    5247    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1, 
    5248    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5249    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5250    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5251    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5252    -1,   -1,   -1,   -1,  256,   -1,   -1,   -1,   -1,   -1, 
    5253    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5254    -1,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    5255   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    5256    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    5257   302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    5258    -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1, 
    5259    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    5260    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    5261   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    5262   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    5263   362,  363,   -1,  365,  366,  367,   -1,    0,  370,   -1, 
    5264   372,   -1,   -1,  375,  376,  377,  378,   10,   -1,  381, 
    5265   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    5266   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    5267   402,  403,  404,  405,   -1,   -1,  408,  256,   -1,   -1, 
    5268    -1,   44,   -1,  415,  416,   -1,   -1,   -1,   -1,   -1, 
    5269    -1,   -1,  424,  425,   -1,   -1,  275,   -1,  277,   -1, 
    5270    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    5271   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    5272    -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1, 
    5273    -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1, 
    5274    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    5275   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    5276   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    5277   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    5278   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    5279     0,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    5280    10,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    5281   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    5282   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    5283    -1,   -1,   -1,   -1,   44,   -1,  415,  416,  417,   -1, 
    5284    -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1, 
    5285    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5286    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5287    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5288    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5289    -1,   -1,   -1,  256,   -1,   -1,   -1,   -1,   -1,   -1, 
    5290    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5291    -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    5292   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    5293    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    5294    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1, 
    5295    -1,   -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    5296    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    5297   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    5298   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    5299   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    5300   363,   -1,  365,  366,  367,   -1,    0,  370,   -1,  372, 
    5301    -1,   -1,  375,  376,  377,  378,   10,   -1,  381,  382, 
    5302   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    5303   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    5304   403,  404,  405,   -1,   -1,  408,  256,   -1,   -1,   -1, 
    5305    44,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    5306    -1,  424,  425,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    5307   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    5308   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    5309    -1,  301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5310    -1,  311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1, 
    5311   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    5312    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    5313   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    5314   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    5315    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,    0, 
    5316   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   10, 
    5317    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    5318    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    5319    -1,  401,  402,  403,  404,  405,   -1,   -1,  408,   -1, 
    5320    -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1, 
    5321    -1,   -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1, 
    5322    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5323    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5324    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5325    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5326    -1,   -1,  256,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5327    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5328    -1,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    5329   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    5330    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    5331    -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    5332    -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    5333    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    5334   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    5335   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    5336   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    5337    -1,  365,  366,  367,   -1,    0,  370,   -1,  372,   -1, 
    5338    -1,  375,  376,  377,  378,   10,   -1,  381,  382,  383, 
    5339    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    5340   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    5341   404,  405,   -1,   -1,  408,  256,   -1,   -1,   -1,   44, 
    5342    -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    5343   424,  425,   -1,   -1,  275,   -1,  277,   -1,   -1,  280, 
    5344   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    5345   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    5346   301,  302,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5347   311,   -1,   -1,   -1,  315,  316,   -1,   -1,   -1,  320, 
    5348    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    5349   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    5350   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    5351   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    5352   361,  362,  363,   -1,  365,  366,  367,   -1,    0,  370, 
    5353    -1,  372,   -1,   -1,  375,  376,  377,  378,   10,   -1, 
    5354   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    5355    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    5356   401,  402,  403,  404,  405,   -1,   -1,  408,   -1,   -1, 
    5357    -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1, 
    5358    -1,   -1,   -1,  424,  425,   -1,   -1,   -1,   -1,   -1, 
    5359    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5360    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5361    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5362    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5363    -1,  256,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5364    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5365   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    5366   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    5367    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,    0, 
    5368    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10, 
    5369   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    5370    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    5371   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    5372   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    5373    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    5374   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    5375   375,  376,  377,  378,   -1,   -1,  381,  382,  383,   -1, 
    5376    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    5377   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    5378   405,   -1,   -1,  408,  256,   -1,   -1,   -1,   -1,   -1, 
    5379   415,  416,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    5380   425,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    5381   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    5382    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    5383   302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    5384    -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1, 
    5385    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    5386    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    5387   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    5388   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    5389   362,  363,   -1,  365,  366,  367,   -1,   -1,  370,   -1, 
    5390   372,   -1,   -1,  375,  376,  377,  378,   -1,   -1,  381, 
    5391   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    5392   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    5393   402,  403,  404,  405,   -1,  256,  408,   -1,   -1,   -1, 
    5394    -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1, 
    5395    -1,   -1,  424,  425,  275,   -1,  277,   -1,   -1,  280, 
    5396   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    5397   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    5398   301,  302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1, 
    5399   311,   -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320, 
    5400    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    5401   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    5402   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    5403   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    5404   361,  362,  363,   -1,  365,  366,  367,   -1,   -1,  370, 
    5405    -1,  372,   -1,   -1,  375,  376,  377,  378,   -1,   -1, 
    5406   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    5407    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    5408   401,  402,  403,  404,  405,   -1,   -1,  408,  256,   -1, 
    5409    -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1, 
    5410    -1,   -1,   -1,  424,  425,   -1,   -1,  275,   -1,  277, 
    5411    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    5412    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    5413    -1,   -1,   -1,  301,  302,   -1,    0,   -1,   -1,   -1, 
    5414    -1,   -1,   -1,  311,   -1,   -1,   10,  315,  316,   -1, 
    5415    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    5416   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    5417    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    5418   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    5419   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    5420    -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    5421   378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1, 
    5422    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    5423   398,  399,   -1,  401,  402,  403,  404,  405,   -1,  256, 
    5424   408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417, 
    5425    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,  275,   -1, 
    5426   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    5427    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    5428   297,   -1,   -1,   -1,  301,  302,   -1,    0,   -1,   -1, 
    5429    -1,   -1,   -1,   -1,  311,   -1,   -1,   10,  315,  316, 
    5430    -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    5431    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    5432   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    5433   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    5434   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    5435   367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376, 
    5436   377,  378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1, 
    5437    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    5438   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    5439    -1,  408,  256,   -1,   -1,   -1,   -1,   -1,  415,  416, 
    5440   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    5441    -1,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    5442   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    5443    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    5444     0,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    5445    10,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    5446    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    5447   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    5448   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    5449   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    5450    -1,  365,  366,  367,   -1,   -1,  370,   -1,  372,   -1, 
    5451    -1,  375,  376,  377,  378,   -1,   -1,  381,  382,  383, 
    5452    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    5453   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    5454   404,  405,   -1,  256,  408,   -1,   -1,   -1,   -1,   -1, 
    5455    -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    5456   424,  425,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    5457   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    5458    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    5459    -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1, 
    5460    -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    5461    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    5462   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    5463   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    5464   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    5465   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    5466    -1,   -1,  375,  376,  377,  378,   -1,   -1,  381,  382, 
    5467   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    5468   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    5469   403,  404,  405,   -1,   -1,  408,  256,   -1,   -1,   -1, 
    5470    -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    5471    -1,  424,  425,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    5472   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    5473   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    5474    -1,  301,  302,   -1,    0,   -1,   -1,   -1,   -1,   -1, 
    5475    -1,  311,   -1,   -1,   10,  315,  316,   -1,   -1,   -1, 
    5476   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    5477    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    5478   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    5479   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    5480    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    5481   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    5482    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    5483    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    5484    -1,  401,  402,  403,  404,  405,   -1,  256,  408,   -1, 
    5485    -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1, 
    5486    -1,   -1,   -1,   -1,  424,  425,  275,   -1,  277,   -1, 
    5487    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    5488   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    5489    -1,   -1,  301,  302,   -1,    0,   -1,   -1,   -1,   -1, 
    5490    -1,   -1,  311,   -1,   -1,   10,  315,  316,   -1,   -1, 
    5491    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    5492   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    5493   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    5494   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    5495   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    5496    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    5497    -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    5498   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    5499   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    5500   256,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    5501    -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1,  275, 
    5502    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    5503   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    5504   296,  297,   -1,   -1,   -1,  301,  302,   -1,    0,   -1, 
    5505    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10,  315, 
    5506   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    5507   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    5508   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    5509   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    5510    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    5511   366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375, 
    5512   376,  377,  378,   -1,   -1,  381,  382,  383,   -1,   -1, 
    5513    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    5514   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    5515    -1,  256,  408,   -1,   -1,   -1,   -1,   -1,   -1,  415, 
    5516   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    5517   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    5518   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    5519    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,    0, 
    5520    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10, 
    5521   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    5522    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    5523   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    5524   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    5525    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    5526   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    5527   375,  376,  377,  378,   -1,   -1,  381,  382,  383,   -1, 
    5528    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    5529   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    5530   405,   -1,   -1,  408,  256,   -1,   -1,   -1,   -1,   -1, 
    5531   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    5532   425,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    5533   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    5534    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    5535   302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    5536    -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1, 
    5537    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    5538    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    5539   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    5540   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    5541   362,  363,   -1,  365,  366,  367,   -1,   -1,  370,   -1, 
    5542   372,   -1,   -1,  375,  376,  377,  378,   -1,   -1,  381, 
    5543   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    5544   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    5545   402,  403,  404,  405,   -1,  256,  408,   -1,   -1,   -1, 
    5546    -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1, 
    5547    -1,   -1,  424,  425,  275,   -1,  277,   -1,   -1,  280, 
    5548   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    5549   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    5550   301,  302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1, 
    5551   311,   -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320, 
    5552    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    5553   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    5554   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    5555   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    5556   361,  362,  363,   -1,  365,  366,  367,   -1,   -1,  370, 
    5557    -1,  372,   -1,   -1,  375,  376,  377,  378,   -1,   -1, 
    5558   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    5559    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    5560   401,  402,  403,  404,  405,   -1,   -1,  408,  256,   -1, 
    5561    -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1, 
    5562    -1,   -1,   -1,  424,  425,   -1,   -1,  275,   -1,  277, 
    5563    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    5564    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    5565    -1,   -1,   -1,  301,  302,   -1,    0,   -1,   -1,   -1, 
    5566    -1,   -1,   -1,  311,   -1,   -1,   10,  315,  316,   -1, 
    5567    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    5568   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    5569    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    5570   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    5571   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    5572    -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    5573   378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1, 
    5574    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    5575   398,  399,   -1,  401,  402,  403,  404,  405,   -1,  256, 
    5576   408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417, 
    5577    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,  275,   -1, 
    5578   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    5579    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    5580   297,   -1,   -1,   -1,  301,  302,   -1,    0,   -1,   -1, 
    5581    -1,   -1,   -1,   -1,  311,   -1,   -1,   10,  315,  316, 
    5582    -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    5583    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    5584   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    5585   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    5586   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    5587   367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376, 
    5588   377,  378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1, 
    5589    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    5590   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    5591    -1,  408,  256,   -1,   -1,   -1,   -1,   -1,  415,  416, 
    5592   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    5593    -1,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    5594   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    5595    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    5596     0,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    5597    10,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    5598    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    5599   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    5600   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    5601   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    5602    -1,  365,  366,  367,   -1,   -1,  370,   -1,  372,   -1, 
    5603    -1,  375,  376,  377,  378,   -1,   -1,  381,  382,  383, 
    5604    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    5605   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    5606   404,  405,   -1,  256,  408,   -1,   -1,   -1,   -1,   -1, 
    5607    -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    5608   424,  425,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    5609   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    5610    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    5611    -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1, 
    5612    -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    5613    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    5614   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    5615   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    5616   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    5617   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    5618    -1,   -1,  375,  376,  377,  378,   -1,   -1,  381,  382, 
    5619   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    5620   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    5621   403,  404,  405,   -1,   -1,  408,  256,   -1,   -1,   -1, 
    5622    -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    5623    -1,  424,  425,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    5624   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    5625   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    5626    -1,  301,  302,   -1,    0,   -1,   -1,   -1,   -1,   -1, 
    5627    -1,  311,   -1,   -1,   10,  315,  316,   -1,   -1,   -1, 
    5628   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    5629    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    5630   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    5631   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    5632    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    5633   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    5634    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    5635    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    5636    -1,  401,  402,  403,  404,  405,   -1,  256,  408,   -1, 
    5637    -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1, 
    5638    -1,   -1,   -1,   -1,  424,  425,  275,   -1,  277,   -1, 
    5639    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    5640   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    5641    -1,   -1,  301,  302,   -1,    0,   -1,   -1,   -1,   -1, 
    5642    -1,   -1,  311,   -1,   -1,   10,  315,  316,   -1,   -1, 
    5643    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    5644   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    5645   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    5646   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    5647   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    5648    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    5649    -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    5650   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    5651   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    5652   256,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    5653    -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1,  275, 
    5654    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    5655   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    5656   296,  297,   -1,   -1,   -1,  301,  302,   -1,    0,   -1, 
    5657    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10,  315, 
    5658   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    5659   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    5660   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    5661   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    5662    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    5663   366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375, 
    5664   376,  377,  378,   -1,   -1,  381,  382,  383,   -1,   -1, 
    5665    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    5666   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    5667    -1,  256,  408,   -1,   -1,   -1,   -1,   -1,   -1,  415, 
    5668   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    5669   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    5670   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    5671    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,    0, 
    5672    -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10, 
    5673   315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1, 
    5674    -1,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    5675   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    5676   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    5677    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    5678   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    5679   375,  376,  377,  378,   -1,   -1,  381,  382,  383,   -1, 
    5680    -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394, 
    5681   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    5682   405,   -1,   -1,  408,  256,   -1,   -1,   -1,   -1,   -1, 
    5683   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    5684   425,   -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281, 
    5685   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    5686    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    5687   302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    5688    -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1, 
    5689    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    5690    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    5691   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    5692   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    5693   362,  363,   -1,  365,  366,  367,   -1,   -1,  370,   -1, 
    5694   372,   -1,   -1,  375,  376,  377,  378,   -1,   -1,  381, 
    5695   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    5696   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    5697   402,  403,  404,  405,   -1,  256,  408,   -1,   -1,   -1, 
    5698    -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1, 
    5699    -1,   -1,  424,  425,  275,   -1,  277,   -1,   -1,  280, 
    5700   281,  282,  283,  284,  285,  286,   -1,   -1,  289,  290, 
    5701   291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1, 
    5702   301,  302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1, 
    5703   311,   -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320, 
    5704    -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1, 
    5705   331,   -1,  333,  334,  335,  336,  337,   -1,  339,  340, 
    5706   341,  342,  343,  344,  345,  346,  347,  348,  349,  350, 
    5707   351,  352,  353,  354,   -1,   -1,  357,  358,  359,   -1, 
    5708   361,  362,  363,   -1,  365,  366,  367,   -1,   -1,  370, 
    5709    -1,  372,   -1,   -1,  375,  376,  377,  378,   -1,   -1, 
    5710   381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1, 
    5711    -1,  392,  393,  394,  395,  396,  397,  398,  399,   -1, 
    5712   401,  402,  403,  404,  405,   -1,   -1,  408,  256,   -1, 
    5713    -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1,   -1, 
    5714    -1,   -1,   -1,  424,  425,   -1,   -1,  275,   -1,  277, 
    5715    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    5716    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    5717    -1,   -1,   -1,  301,  302,   -1,    0,   -1,   -1,   -1, 
    5718    -1,   -1,   -1,  311,   -1,   -1,   10,  315,  316,   -1, 
    5719    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    5720   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    5721    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    5722   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    5723   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    5724    -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    5725   378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1, 
    5726    -1,  389,   -1,   -1,  392,  393,  394,  395,  396,  397, 
    5727   398,  399,   -1,  401,  402,  403,  404,  405,   -1,  256, 
    5728   408,   -1,   -1,   -1,   -1,   -1,   -1,  415,  416,  417, 
    5729    -1,   -1,   -1,   -1,   -1,   -1,  424,  425,  275,   -1, 
    5730   277,   -1,   -1,  280,  281,  282,  283,  284,  285,  286, 
    5731    -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296, 
    5732   297,   -1,   -1,   -1,  301,  302,   -1,    0,   -1,   -1, 
    5733    -1,   -1,   -1,   -1,  311,   -1,   -1,   10,  315,  316, 
    5734    -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326, 
    5735    -1,  328,  329,   -1,  331,   -1,  333,  334,  335,  336, 
    5736   337,   -1,  339,  340,  341,  342,  343,  344,  345,  346, 
    5737   347,  348,  349,  350,  351,  352,  353,  354,   -1,   -1, 
    5738   357,  358,  359,   -1,  361,  362,  363,   -1,  365,  366, 
    5739   367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376, 
    5740   377,  378,   -1,   -1,  381,  382,  383,   -1,   -1,   -1, 
    5741    -1,   -1,  389,   -1,   -1,  392,  393,  394,  395,  396, 
    5742   397,  398,  399,   -1,  401,  402,  403,  404,  405,   -1, 
    5743    -1,  408,  256,   -1,   -1,   -1,   -1,   -1,  415,  416, 
    5744   417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425,   -1, 
    5745    -1,  275,   -1,  277,   -1,   -1,  280,  281,  282,  283, 
    5746   284,  285,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    5747    -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1, 
    5748     0,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    5749    10,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    5750    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    5751   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    5752   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    5753   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    5754    -1,  365,  366,  367,   -1,   -1,  370,   -1,  372,   -1, 
    5755    -1,  375,  376,  377,  378,   -1,   -1,  381,  382,  383, 
    5756    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392,  393, 
    5757   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    5758   404,  405,   -1,  256,  408,   -1,   -1,   -1,   -1,   -1, 
    5759    -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    5760   424,  425,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    5761   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    5762    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    5763    -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1, 
    5764    -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    5765    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    5766   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    5767   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    5768   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    5769   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    5770    -1,   -1,  375,  376,  377,  378,   -1,   -1,  381,  382, 
    5771   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    5772   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    5773   403,  404,  405,   -1,   -1,  408,  256,   -1,   -1,   -1, 
    5774    -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    5775    -1,  424,  425,   -1,   -1,  275,   -1,  277,   -1,   -1, 
    5776   280,  281,  282,  283,  284,  285,  286,   -1,   -1,  289, 
    5777   290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1,   -1, 
    5778    -1,  301,  302,   -1,    0,   -1,   -1,   -1,   -1,   -1, 
    5779    -1,  311,   -1,   -1,   10,  315,  316,   -1,   -1,   -1, 
    5780   320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328,  329, 
    5781    -1,  331,   -1,  333,  334,  335,  336,  337,   -1,  339, 
    5782   340,  341,  342,  343,  344,  345,  346,  347,  348,  349, 
    5783   350,  351,  352,  353,  354,   -1,   -1,  357,  358,  359, 
    5784    -1,  361,  362,  363,   -1,  365,  366,  367,   -1,   -1, 
    5785   370,   -1,  372,   -1,   -1,  375,  376,  377,  378,   -1, 
    5786    -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1,  389, 
    5787    -1,   -1,  392,  393,  394,  395,  396,  397,  398,  399, 
    5788    -1,  401,  402,  403,  404,  405,   -1,  256,  408,   -1, 
    5789    -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1,   -1, 
    5790    -1,   -1,   -1,   -1,  424,  425,  275,   -1,  277,   -1, 
    5791    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    5792   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    5793    -1,   -1,  301,  302,    0,   -1,   -1,   -1,   -1,   -1, 
    5794    -1,   -1,  311,   -1,   10,   -1,  315,  316,   -1,   -1, 
    5795    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    5796   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    5797   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    5798   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    5799   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    5800    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    5801    -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    5802   389,   -1,   -1,  392,  393,  394,  395,  396,  397,  398, 
    5803   399,   -1,  401,  402,  403,  404,  405,   -1,   -1,  408, 
    5804   256,   -1,   -1,   -1,   -1,   -1,  415,  416,  417,   -1, 
    5805    -1,   -1,   -1,   -1,   -1,  424,  425,   -1,   -1,  275, 
    5806    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    5807   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    5808   296,  297,   -1,   -1,   -1,  301,  302,    0,   -1,   -1, 
    5809    -1,   -1,   -1,   -1,   -1,  311,   -1,   10,   -1,  315, 
    5810   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    5811   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    5812   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    5813   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    5814    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    5815   366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375, 
    5816   376,  377,  378,   -1,   -1,  381,  382,  383,   -1,   -1, 
    5817    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    5818   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    5819   256,   -1,  408,   -1,   -1,   -1,   -1,   -1,   -1,  415, 
    5820   416,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    5821    -1,  277,   -1,   -1,  280,  281,  282,  283,  284,  285, 
    5822   286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1,   -1, 
    5823   296,  297,   -1,   -1,   -1,  301,  302,   -1,    0,   -1, 
    5824    -1,   -1,   -1,   -1,   -1,  311,   -1,   -1,   10,  315, 
    5825   316,   -1,   -1,   -1,  320,   -1,   -1,   -1,   -1,   -1, 
    5826   326,   -1,  328,  329,   -1,  331,   -1,  333,  334,  335, 
    5827   336,  337,   -1,  339,  340,  341,  342,  343,  344,  345, 
    5828   346,  347,  348,  349,  350,  351,  352,  353,  354,   -1, 
    5829    -1,  357,  358,  359,   -1,  361,  362,  363,   -1,  365, 
    5830   366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1,  375, 
    5831   376,  377,  378,   -1,   -1,  381,  382,  383,   -1,   -1, 
    5832    -1,   -1,   -1,  389,   -1,   -1,  392,  393,  394,  395, 
    5833   396,  397,  398,  399,   -1,  401,  402,  403,  404,  405, 
    5834    -1,   -1,  408,  256,   -1,   -1,   -1,   -1,   -1,  415, 
    5835   416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424,  425, 
    5836    -1,   -1,  275,   -1,  277,   -1,   -1,  280,  281,  282, 
    5837   283,  284,  285,  286,   -1,   -1,  289,  290,  291,   -1, 
    5838    -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301,  302, 
    5839    -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1, 
    5840    -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1,   -1, 
    5841    -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1, 
    5842   333,  334,  335,  336,  337,   -1,  339,  340,  341,  342, 
    5843   343,  344,  345,  346,  347,  348,  349,  350,  351,  352, 
    5844   353,  354,   -1,   -1,  357,  358,  359,   -1,  361,  362, 
    5845   363,   -1,  365,  366,  367,   -1,   -1,  370,   -1,  372, 
    5846    -1,   -1,  375,  376,  377,  378,   -1,   -1,  381,  382, 
    5847   383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,  392, 
    5848   393,  394,  395,  396,  397,  398,  399,   -1,  401,  402, 
    5849   403,  404,  405,   -1,  256,  408,   -1,   -1,   -1,   -1, 
    5850    -1,   -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1, 
    5851    -1,   -1,  425,  275,   -1,  277,   -1,   -1,  280,  281, 
    5852   282,  283,  284,  285,  286,   -1,   -1,  289,  290,  291, 
    5853    -1,   -1,   -1,   -1,  296,  297,   -1,   -1,   -1,  301, 
    5854   302,   -1,    0,   -1,   -1,   -1,   -1,   -1,   -1,  311, 
    5855    -1,   -1,   10,  315,  316,   -1,   -1,   -1,  320,   -1, 
    5856    -1,   -1,   -1,   -1,  326,   -1,  328,  329,   -1,  331, 
    5857    -1,  333,  334,  335,  336,  337,   -1,  339,  340,  341, 
    5858   342,  343,  344,  345,  346,  347,  348,  349,  350,  351, 
    5859   352,  353,  354,   -1,   -1,  357,  358,  359,   -1,  361, 
    5860   362,  363,   -1,  365,  366,  367,   -1,   -1,  370,   -1, 
    5861   372,   -1,   -1,  375,  376,  377,  378,   -1,   -1,  381, 
    5862   382,  383,   -1,   -1,   -1,   -1,   -1,  389,   -1,   -1, 
    5863   392,  393,  394,  395,  396,  397,  398,  399,   -1,  401, 
    5864   402,  403,  404,  405,   -1,   -1,  408,  256,   -1,   -1, 
    5865    -1,   -1,   -1,  415,  416,   -1,   -1,   -1,   -1,   -1, 
    5866    -1,   -1,  424,  425,   -1,   -1,  275,   -1,  277,   -1, 
    5867    -1,  280,  281,  282,  283,  284,  285,  286,   -1,   -1, 
    5868   289,  290,  291,   -1,   -1,   -1,   -1,  296,  297,   -1, 
    5869    -1,   -1,  301,  302,   -1,    0,   -1,   -1,   -1,   -1, 
    5870    -1,   -1,  311,   -1,   -1,   10,  315,  316,   -1,   -1, 
    5871    -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1,  328, 
    5872   329,   -1,  331,   -1,  333,  334,  335,  336,  337,   -1, 
    5873   339,  340,  341,  342,  343,  344,  345,  346,  347,  348, 
    5874   349,  350,  351,  352,  353,  354,   -1,   -1,  357,  358, 
    5875   359,   -1,  361,  362,  363,   -1,  365,  366,  367,   -1, 
    5876    -1,  370,   -1,  372,   -1,   -1,  375,  376,  377,  378, 
    5877    -1,   -1,  381,  382,  383,   -1,   -1,   -1,   -1,   -1, 
    5878   389,   -1,   -1,  392,  393,  394,  395,   -1,  397,  398, 
    5879   399,   -1,  401,  402,  403,  404,  405,   -1,  256,  408, 
    5880    -1,   -1,   -1,   -1,   -1,   -1,  415,  416,   -1,   -1, 
    5881    -1,   -1,   -1,   -1,   -1,   -1,  425,  275,   -1,  277, 
    5882    -1,   -1,  280,  281,  282,  283,  284,  285,  286,   -1, 
    5883    -1,  289,  290,  291,   -1,   -1,   -1,   -1,  296,  297, 
    5884    -1,   -1,   -1,  301,  302,   -1,   -1,   -1,   -1,   -1, 
    5885    -1,   -1,   -1,  311,   -1,   -1,   -1,  315,  316,   -1, 
    5886    -1,   -1,  320,   -1,   -1,   -1,   -1,   -1,  326,   -1, 
    5887   328,  329,   -1,  331,   -1,  333,  334,  335,  336,  337, 
    5888    -1,  339,  340,  341,  342,  343,  344,  345,  346,  347, 
    5889   348,  349,  350,  351,  352,  353,  354,   -1,   -1,  357, 
    5890   358,  359,   -1,  361,  362,  363,   -1,  365,  366,  367, 
    5891    -1,   -1,  370,   -1,  372,   -1,   -1,  375,  376,  377, 
    5892   378,   -1,   -1,  381,  382,  383,   -1,   40,   -1,   42, 
    5893    43,  389,   45,   -1,  392,  393,  394,  395,   -1,  397, 
    5894   398,  399,   -1,  401,  402,  403,  404,  405,   61,   -1, 
    5895   408,  256,   -1,   -1,   -1,   -1,   -1,  415,  416,   -1, 
    5896    -1,   -1,   -1,   -1,   -1,   -1,   -1,  425,   -1,   -1, 
    5897   275,   -1,  277,   -1,   -1,  280,  281,  282,  283,  284, 
    5898   285,  286,   -1,   -1,  289,  290,  291,   -1,   -1,   -1, 
    5899    -1,  296,  297,   -1,   -1,   -1,  301,  302,   -1,   41, 
    5900    42,   43,   -1,   45,   -1,   -1,  311,   -1,   -1,   -1, 
    5901   315,  316,   -1,   -1,   -1,  320,   58,   -1,   60,   61, 
    5902    62,  326,   -1,  328,  329,   -1,  331,   -1,  333,  334, 
    5903   335,  336,  337,   -1,  339,  340,  341,  342,  343,  344, 
    5904   345,  346,  347,  348,  349,  350,  351,  352,  353,  354, 
    5905    -1,   -1,  357,  358,  359,   -1,  361,  362,  363,   -1, 
    5906   365,  366,  367,   -1,   -1,  370,   -1,  372,   -1,   -1, 
    5907   375,  376,  377,  378,   -1,   -1,  381,  382,  383,   -1, 
    5908    40,   -1,   42,   43,  389,   45,   -1,  392,  393,  394, 
    5909   395,  396,  397,  398,  399,   -1,  401,  402,  403,  404, 
    5910   405,   61,   -1,  408,   -1,   -1,   -1,   -1,   -1,   -1, 
    5911   415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    5912    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   40,   -1, 
    5913    -1,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1, 
    5914    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   61, 
    5915   263,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5916    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5917    -1,   -1,   -1,   -1,  287,  288,   -1,   -1,   -1,  292, 
    5918   293,  294,  295,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5919    -1,  304,  305,  306,  307,  308,  309,  310,   -1,  312, 
    5920   313,  314,   -1,   -1,  317,  318,  319,   -1,  321,  322, 
    5921   323,  324,  325,   -1,  327,   -1,  258,  259,  260,  261, 
    5922   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    5923   272,  273,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5924    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5925    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5926    -1,   -1,   -1,   -1,   -1,   -1,  379,   40,   -1,   -1, 
    5927    43,   -1,   45,   -1,   -1,   -1,   -1,  390,  391,   -1, 
    5928    -1,   -1,   -1,  396,   -1,   -1,   -1,   -1,   61,   -1, 
    5929    -1,   -1,   -1,  406,  407,   -1,   -1,  410,  411,  412, 
    5930   413,   -1,   -1,  263,  417,   -1,   -1,   -1,   -1,   -1, 
    5931    -1,  424,   -1,   -1,   -1,   40,   -1,   -1,   43,   -1, 
    5932    45,   -1,   -1,   -1,   -1,   -1,   -1,  287,  288,   -1, 
    5933    -1,   -1,  292,  293,  294,  295,   61,   -1,   -1,   -1, 
    5934    -1,   -1,   -1,   -1,  304,  305,  306,  307,  308,  309, 
    5935   310,  263,  312,  313,  314,   -1,   -1,  317,  318,  319, 
    5936    -1,  321,  322,  323,  324,  325,   -1,  327,   -1,   -1, 
    5937    -1,   -1,   -1,   -1,   -1,  287,  288,   -1,   -1,   -1, 
    5938   292,  293,  294,  295,   -1,   -1,   -1,   -1,   -1,   -1, 
    5939    -1,   -1,  304,  305,  306,  307,  308,  309,  310,   -1, 
    5940   312,  313,  314,   -1,   -1,  317,  318,  319,   -1,  321, 
    5941   322,  323,  324,  325,   -1,  327,   -1,   -1,   -1,  379, 
    5942    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5943   390,  391,   -1,   -1,   -1,   -1,  396,   -1,   -1,   -1, 
    5944    -1,   -1,   -1,   -1,   -1,   -1,  406,  407,   -1,   -1, 
    5945   410,  411,  412,  413,   -1,   -1,   40,  417,   42,   43, 
    5946    -1,   45,   -1,   -1,  424,   -1,   -1,  379,   -1,   -1, 
    5947    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  390,  391, 
    5948    -1,   -1,   -1,   -1,  396,   -1,   -1,   -1,   -1,   -1, 
    5949   263,   -1,   -1,   -1,  406,  407,   -1,   -1,  410,  411, 
    5950   412,  413,   -1,   -1,   40,  417,   42,   43,   -1,   45, 
    5951    -1,   -1,  424,   -1,  287,  288,   -1,   -1,   -1,  292, 
    5952   293,  294,  295,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5953    -1,  304,  305,  306,  307,  308,  309,  310,  263,  312, 
    5954   313,  314,   -1,   -1,  317,  318,  319,   -1,  321,  322, 
    5955   323,  324,  325,   -1,  327,   -1,   -1,   -1,   -1,   -1, 
    5956    -1,   -1,  287,  288,   -1,   -1,   -1,  292,  293,  294, 
    5957   295,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  304, 
    5958   305,  306,  307,  308,  309,  310,   -1,  312,  313,  314, 
    5959    -1,   -1,  317,  318,  319,   -1,  321,  322,  323,  324, 
    5960   325,   -1,  327,   -1,   -1,   -1,  379,   -1,   -1,   -1, 
    5961    -1,   -1,   -1,   -1,   -1,   -1,   -1,  390,  391,   -1, 
    5962    -1,   -1,   -1,  396,   -1,   -1,   -1,   -1,   -1,   -1, 
    5963    -1,   -1,   -1,  406,  407,   -1,   -1,  410,  411,  412, 
    5964   413,   -1,   40,   -1,  417,   43,   -1,   45,   -1,   -1, 
    5965    -1,  424,   -1,   -1,  379,   -1,   -1,   -1,   -1,   -1, 
    5966    58,   -1,   -1,   -1,   -1,  390,  391,   -1,   -1,   -1, 
    5967    -1,  396,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  263, 
    5968    -1,  406,  407,   -1,   -1,  410,  411,  412,  413,   -1, 
    5969    -1,   -1,  417,   -1,   -1,   40,   -1,   -1,   43,  424, 
    5970    45,   -1,   -1,  287,  288,   -1,   -1,   -1,  292,  293, 
    5971   294,  295,   -1,   58,   -1,   -1,   -1,   -1,   -1,   -1, 
    5972   304,  305,  306,  307,  308,  309,  310,  263,  312,  313, 
    5973   314,   -1,   -1,  317,  318,  319,   -1,  321,  322,  323, 
    5974   324,  325,   -1,  327,   -1,   -1,   -1,   -1,   -1,   -1, 
    5975    -1,  287,  288,   -1,   -1,   -1,  292,  293,  294,  295, 
    5976    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  304,  305, 
    5977   306,  307,  308,  309,  310,   -1,  312,  313,  314,   -1, 
    5978    -1,  317,  318,  319,   -1,  321,  322,  323,  324,  325, 
    5979    -1,  327,   -1,   -1,   -1,  379,   -1,   -1,   -1,   -1, 
    5980    -1,   -1,   -1,   -1,   -1,   -1,  390,  391,   -1,   -1, 
    5981    -1,   -1,  396,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5982    -1,   -1,  406,  407,   -1,   -1,  410,  411,  412,  413, 
    5983    -1,   -1,   -1,  417,   40,   -1,   42,   43,   -1,   45, 
    5984   424,   -1,   -1,  379,   -1,   -1,   -1,   -1,   -1,   -1, 
    5985    -1,   -1,   -1,   -1,  390,  391,   -1,   -1,   -1,   -1, 
    5986   396,   -1,   -1,   -1,   -1,  263,   -1,   -1,   -1,   -1, 
    5987   406,  407,   -1,   -1,  410,  411,  412,  413,   -1,   -1, 
    5988    -1,  417,   40,   -1,   42,   43,   -1,   45,  424,  287, 
    5989   288,   -1,   -1,   -1,  292,  293,  294,  295,   -1,   -1, 
    5990    -1,   -1,   -1,   -1,   -1,   -1,  304,  305,  306,  307, 
    5991   308,  309,  310,   -1,  312,  313,  314,   -1,  263,  317, 
    5992   318,  319,   -1,  321,  322,  323,  324,  325,   -1,  327, 
    5993    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5994    -1,   -1,  287,  288,   -1,   -1,   -1,  292,  293,  294, 
    5995   295,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  304, 
    5996   305,  306,  307,  308,  309,  310,   -1,  312,  313,  314, 
    5997    -1,   -1,  317,  318,  319,   -1,  321,  322,  323,  324, 
    5998   325,  379,  327,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    5999    -1,   -1,  390,  391,   -1,   -1,   -1,   -1,  396,   -1, 
    6000    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  406,  407, 
    6001    -1,   -1,  410,  411,  412,  413,   -1,   40,   -1,  417, 
    6002    43,   -1,   45,   -1,   -1,   -1,  424,   -1,   -1,   -1, 
    6003    -1,   -1,   -1,   -1,  379,   -1,   -1,   -1,   -1,   -1, 
    6004    -1,   -1,   -1,   -1,   -1,  390,  391,   -1,   -1,   -1, 
    6005    -1,  396,   -1,   -1,   -1,   -1,   -1,  263,   -1,   -1, 
    6006    -1,  406,  407,   -1,   -1,  410,  411,  412,  413,   -1, 
    6007    40,   -1,  417,   43,   -1,   45,   -1,   -1,   -1,  424, 
    6008    -1,  287,  288,   -1,   -1,   -1,  292,  293,  294,  295, 
    6009    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  304,  305, 
    6010   306,  307,  308,  309,  310,  263,  312,  313,  314,   -1, 
    6011    -1,  317,  318,  319,   -1,  321,  322,  323,  324,  325, 
    6012    -1,  327,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  287, 
    6013   288,   -1,   -1,   -1,  292,  293,  294,  295,   -1,   -1, 
    6014    -1,   -1,   -1,   -1,   -1,   -1,  304,  305,  306,  307, 
    6015   308,  309,  310,   -1,  312,  313,  314,   -1,   -1,  317, 
    6016   318,  319,   -1,  321,  322,  323,  324,  325,   -1,  327, 
    6017    -1,   -1,   -1,  379,   -1,   -1,   -1,   -1,   -1,   -1, 
    6018    -1,   -1,   -1,   -1,  390,  391,   -1,   -1,   -1,   -1, 
    6019   396,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6020   406,  407,   -1,   -1,  410,  411,  412,  413,   -1,   40, 
    6021    -1,  417,   43,   -1,   45,   -1,   -1,   -1,  424,   -1, 
    6022    -1,  379,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6023    -1,   -1,  390,  391,   -1,   -1,   -1,   -1,  396,   -1, 
    6024   263,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  406,  407, 
    6025    -1,   -1,  410,  411,  412,  413,   -1,   40,   -1,  417, 
    6026    43,   -1,   45,   -1,  287,  288,  424,   -1,   -1,  292, 
    6027   293,  294,  295,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6028    -1,  304,  305,  306,  307,  308,  309,  310,   -1,  312, 
    6029   313,  314,   -1,  263,  317,  318,  319,   -1,  321,  322, 
    6030   323,  324,  325,   -1,  327,   -1,   -1,   -1,   -1,   -1, 
    6031    -1,   -1,   -1,   -1,   -1,   -1,   -1,  287,  288,   -1, 
    6032    -1,   -1,  292,  293,  294,  295,   -1,   -1,   -1,   -1, 
    6033    -1,   -1,   -1,   -1,  304,  305,  306,  307,  308,  309, 
    6034   310,   -1,  312,  313,  314,   -1,   -1,  317,  318,  319, 
    6035    -1,  321,  322,  323,  324,  325,  379,  327,   -1,   -1, 
    6036    -1,   -1,   -1,   -1,   -1,   -1,   -1,  390,  391,   -1, 
    6037    -1,   -1,   -1,  396,   -1,   -1,   -1,   -1,   -1,   -1, 
    6038    -1,   -1,   -1,  406,  407,   -1,   -1,  410,  411,  412, 
    6039   413,   -1,   40,   -1,  417,   43,   -1,   45,   -1,   -1, 
    6040    -1,  424,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  379, 
    6041    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6042   390,  391,   -1,   -1,   -1,   -1,  396,   -1,   -1,   -1, 
    6043    -1,   -1,  263,   -1,   -1,   -1,  406,  407,   -1,   -1, 
    6044   410,  411,  412,  413,   -1,   40,   -1,  417,   43,   -1, 
    6045    45,   -1,   -1,   -1,  424,   -1,  287,  288,   -1,   -1, 
    6046    -1,  292,  293,  294,  295,   -1,   -1,   -1,   -1,   -1, 
    6047    -1,   -1,   -1,  304,  305,  306,  307,  308,  309,  310, 
    6048   263,  312,  313,  314,   -1,   -1,  317,  318,  319,   -1, 
    6049   321,  322,  323,  324,  325,   -1,  327,   -1,   -1,   -1, 
    6050    -1,   -1,   -1,   -1,  287,  288,   -1,   -1,   -1,  292, 
    6051   293,  294,  295,   -1,   40,   -1,   42,   43,   -1,   45, 
    6052    -1,  304,  305,  306,  307,  308,  309,  310,   -1,  312, 
    6053   313,  314,   -1,   -1,  317,  318,  319,   -1,  321,  322, 
    6054   323,  324,  325,   -1,  327,   -1,   -1,   -1,  379,   -1, 
    6055    40,   -1,   42,   43,   -1,   45,   -1,   -1,   -1,  390, 
    6056   391,   -1,   -1,   -1,   -1,  396,   -1,   -1,   -1,   -1, 
    6057    -1,   -1,   -1,   -1,   -1,  406,  407,   -1,   -1,  410, 
    6058   411,  412,  413,   -1,   -1,   -1,  417,   -1,   -1,   -1, 
    6059    -1,   -1,   -1,  424,   -1,   -1,  379,   -1,   -1,   -1, 
    6060    -1,   -1,   -1,   -1,   -1,   -1,   -1,  390,  391,   -1, 
    6061    -1,   -1,   -1,  396,   -1,  263,   41,   42,   43,   -1, 
    6062    45,   -1,   -1,  406,  407,   -1,   -1,  410,  411,  412, 
    6063   413,   -1,   -1,   58,  417,   60,   61,   62,   -1,  287, 
    6064   288,  424,   -1,   -1,  292,  293,  294,  295,   -1,   -1, 
    6065    -1,   -1,   -1,   -1,   -1,   -1,  304,  305,  306,  307, 
    6066   308,  309,  310,   -1,  312,  313,  314,   -1,  263,  317, 
    6067   318,  319,   -1,  321,  322,  323,  324,  325,   -1,  327, 
    6068    -1,   -1,   -1,   -1,   -1,   -1,   -1,   41,   42,   43, 
    6069    44,   45,  287,  288,   -1,   -1,   -1,  292,  293,  294, 
    6070   295,   -1,   -1,   -1,   -1,   -1,   60,   61,   62,  304, 
    6071   305,  306,  307,  308,  309,  310,   -1,  312,  313,  314, 
    6072    -1,   -1,  317,  318,  319,   -1,  321,  322,  323,  324, 
    6073   325,  379,  327,   41,   42,   43,   -1,   45,   -1,   -1, 
    6074    -1,   -1,  390,  391,   -1,   -1,   -1,  273,  396,   -1, 
    6075    -1,   -1,   60,   61,   62,   -1,   -1,   -1,  406,  407, 
    6076    -1,   -1,  410,  411,  412,  413,   41,   42,   43,  417, 
    6077    45,   -1,  298,  299,  300,   -1,  424,  303,   -1,   -1, 
    6078    -1,   -1,   -1,   -1,  379,   60,   61,   62,   -1,   -1, 
    6079    -1,   -1,   -1,   -1,   -1,  390,  391,   -1,   -1,   -1, 
    6080    -1,  396,   -1,   -1,   -1,   -1,   -1,   -1,  298,  299, 
    6081   300,  406,  407,  303,   -1,  410,  411,  412,  413,   -1, 
    6082    -1,   -1,  417,   -1,   -1,   -1,   -1,   -1,   -1,  424, 
    6083    -1,   -1,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    6084   265,  266,  267,  268,  269,   -1,   -1,  272,  273,   41, 
    6085    42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1, 
    6086    -1,   -1,   -1,   -1,  390,  391,   -1,   -1,   60,   61, 
    6087    62,   -1,   -1,   41,   42,   43,   -1,   45,   -1,   -1, 
    6088   406,  407,   -1,   -1,  410,  411,  412,  413,   -1,   -1, 
    6089    -1,  417,   60,   61,   62,   -1,   -1,   -1,  424,   -1, 
    6090   390,  391,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    6091   264,  265,  266,  267,  268,  269,  406,  407,  272,  273, 
    6092   410,  411,  412,  413,   41,   42,   43,  417,   45,   -1, 
    6093    -1,   -1,   -1,   -1,  424,   -1,   -1,   -1,   -1,   -1, 
    6094    -1,   -1,   -1,   60,   61,   62,   -1,   -1,   -1,   -1, 
    6095   258,  259,  260,  261,  262,   -1,  264,  265,  266,  267, 
    6096   268,  269,   -1,   -1,  272,  273,   -1,   -1,   -1,   -1, 
    6097    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6098    -1,   -1,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    6099   265,  266,  267,  268,  269,   -1,   -1,  272,  273,   41, 
    6100    42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1, 
    6101    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   60,   61, 
    6102    62,   41,   42,   43,   -1,   45,   -1,   -1,   -1,   -1, 
    6103    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6104    60,   61,   62,   41,   42,   43,   -1,   45,   -1,   -1, 
    6105    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6106    -1,   -1,   60,   61,   62,   -1,  258,  259,  260,  261, 
    6107   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    6108   272,  273,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6109   258,  259,  260,  261,  262,   -1,  264,  265,  266,  267, 
    6110   268,  269,   -1,   -1,  272,  273,   41,   42,   43,   -1, 
    6111    45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6112    -1,   -1,   -1,   -1,   -1,   60,   61,   62,   -1,   -1, 
    6113    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6114    -1,  258,  259,  260,  261,  262,   -1,  264,  265,  266, 
    6115   267,  268,  269,   -1,   -1,  272,  273,   41,   42,   43, 
    6116    -1,   45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6117    -1,   -1,   -1,   -1,   -1,   -1,   60,   61,   62,   41, 
    6118    42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1, 
    6119    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   60,   61, 
    6120    62,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6121    -1,   -1,   -1,   -1,   -1,   -1,  258,  259,  260,  261, 
    6122   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    6123   272,  273,   -1,   -1,   -1,   -1,   -1,   -1,  258,  259, 
    6124   260,  261,  262,   -1,  264,  265,  266,  267,  268,  269, 
    6125    -1,   -1,  272,  273,   -1,   -1,   -1,   -1,   -1,   -1, 
    6126   258,  259,  260,  261,  262,   -1,  264,  265,  266,  267, 
    6127   268,  269,   -1,   -1,  272,  273,   41,   42,   43,   -1, 
    6128    45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6129    -1,   -1,   -1,   -1,   -1,   60,   61,   62,   41,   42, 
    6130    43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6131    -1,   -1,   -1,   -1,   -1,   -1,   -1,   60,   61,   62, 
    6132    -1,   -1,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    6133   265,  266,  267,  268,  269,   -1,   -1,  272,  273,   41, 
    6134    42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1, 
    6135    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   60,   61, 
    6136    62,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6137    -1,   -1,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    6138   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    6139    -1,   -1,   -1,   -1,   -1,   -1,  258,  259,  260,  261, 
    6140   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    6141   272,  273,   41,   42,   43,   -1,   45,   -1,   -1,   -1, 
    6142    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6143    -1,   60,   61,   62,   41,   42,   43,   -1,   45,   -1, 
    6144    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6145    -1,   -1,   -1,   60,   61,   62,   41,   42,   43,   -1, 
    6146    45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6147    -1,   -1,   -1,   -1,   -1,   60,   61,   62,   -1,   -1, 
    6148    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6149    -1,   -1,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    6150   265,  266,  267,  268,  269,   -1,   -1,  272,  273,   -1, 
    6151    -1,   -1,   -1,   -1,   -1,  258,  259,  260,  261,  262, 
    6152    -1,  264,  265,  266,  267,  268,  269,   -1,   -1,  272, 
    6153   273,   41,   42,   43,   -1,   45,   -1,   -1,   -1,   -1, 
    6154    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6155    60,   61,   62,   -1,   -1,   -1,  258,  259,  260,  261, 
    6156   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    6157   272,  273,   41,   42,   43,   -1,   45,   -1,   -1,   -1, 
    6158    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6159    -1,   60,   61,   62,   41,   42,   43,   -1,   45,   -1, 
    6160    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6161    -1,   -1,   -1,   60,   61,   62,   -1,   -1,   -1,   -1, 
    6162    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  258, 
    6163   259,  260,  261,  262,   -1,  264,  265,  266,  267,  268, 
    6164   269,   -1,   -1,  272,  273,   -1,   -1,   -1,   -1,   -1, 
    6165    -1,  258,  259,  260,  261,  262,   -1,  264,  265,  266, 
    6166   267,  268,  269,   -1,   -1,  272,  273,   -1,   -1,   -1, 
    6167    -1,   -1,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    6168   265,  266,  267,  268,  269,   -1,   -1,  272,  273,   41, 
    6169    42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1, 
    6170    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   60,   61, 
    6171    62,   41,   42,   43,   -1,   45,   -1,   -1,   -1,   -1, 
    6172    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6173    60,   61,   62,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6174    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  258,  259, 
    6175   260,  261,  262,   -1,  264,  265,  266,  267,  268,  269, 
    6176    -1,   -1,  272,  273,   41,   42,   43,   -1,   45,   -1, 
    6177    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6178    -1,   -1,   -1,   60,   61,   62,   -1,   -1,   -1,  258, 
    6179   259,  260,  261,  262,   -1,  264,  265,  266,  267,  268, 
    6180   269,   -1,   -1,  272,  273,   -1,   -1,   -1,   -1,   -1, 
    6181    -1,  258,  259,  260,  261,  262,   -1,  264,  265,  266, 
    6182   267,  268,  269,   -1,   -1,  272,  273,   41,   42,   43, 
    6183    -1,   45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6184    -1,   -1,   -1,   -1,   -1,   -1,   60,   61,   62,   41, 
    6185    42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,   -1, 
    6186    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   60,   61, 
    6187    62,   42,   43,   44,   45,   -1,   -1,   -1,   -1,   -1, 
    6188    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   60, 
    6189    61,   62,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6190    -1,   -1,   -1,   -1,   -1,   -1,  258,  259,  260,  261, 
    6191   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    6192   272,  273,   -1,   -1,   -1,   -1,   -1,   -1,  258,  259, 
    6193   260,  261,  262,   -1,  264,  265,  266,  267,  268,  269, 
    6194    -1,   -1,  272,  273,   42,   43,   44,   45,   -1,   -1, 
    6195    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6196    -1,   -1,   60,   61,   62,   -1,   -1,   -1,   -1,   -1, 
    6197    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6198    -1,  258,  259,  260,  261,  262,   -1,  264,  265,  266, 
    6199   267,  268,  269,   -1,   -1,  272,  273,   42,   43,   44, 
    6200    45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6201    -1,   -1,   -1,   -1,   -1,   60,   61,   62,   42,   43, 
    6202    44,   45,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6203    -1,   -1,   -1,   -1,   -1,   -1,   60,   61,   62,   -1, 
    6204    -1,   -1,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    6205   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
    6206    -1,   -1,   -1,   -1,   -1,   -1,  258,  259,  260,  261, 
    6207   262,   -1,  264,  265,  266,  267,  268,  269,   -1,   -1, 
    6208   272,  273,   -1,   -1,   -1,   -1,   -1,  258,  259,  260, 
    6209   261,  262,   -1,  264,  265,  266,  267,  268,  269,   -1, 
    6210    -1,  272,  273,   42,   43,   44,   45,   -1,   -1,   -1, 
    6211    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6212    -1,   60,   61,   62,   42,   43,   44,   45,   -1,   -1, 
    6213    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6214    -1,   -1,   60,   61,   62,   -1,   -1,   -1,   -1,   -1, 
    6215    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6216   258,  259,  260,  261,  262,   -1,  264,  265,  266,  267, 
    6217   268,  269,   -1,   -1,  272,  273,   -1,   -1,   -1,   -1, 
    6218    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6219    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6220    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6221    -1,   -1,   -1,  258,  259,  260,  261,  262,   -1,  264, 
    6222   265,  266,  267,  268,  269,   -1,   -1,  272,  273,   -1, 
    6223    -1,   -1,   -1,   -1,  258,  259,  260,  261,  262,   -1, 
    6224   264,  265,  266,  267,  268,  269,   -1,   -1,  272,  273, 
     2595      -1,    -1,   131,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2596      -1,    12,    -1,   142,   143,    -1,    -1,    -1,    -1,   148, 
     2597      21,    22,    23,    -1,    -1,    -1,    -1,    -1,    -1,   158, 
     2598     159,    -1,    -1,   162,   163,   164,   165,    -1,    39,    40, 
     2599     169,    -1,    -1,    44,    45,    46,    47,   176,    -1,    -1, 
     2600     179,    -1,    -1,    -1,    -1,    56,    57,    58,    59,    60, 
     2601      61,    62,    -1,    64,    65,    66,    -1,    -1,    69,    70, 
     2602      71,    -1,    73,    74,    75,    76,    77,    -1,    79,    -1, 
    62252603   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    62262604   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     
    62282606   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    62292607   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2608     131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    12, 
     2609      -1,   142,   143,    -1,    -1,    -1,    -1,   148,    21,    22, 
     2610      23,    -1,    -1,    -1,    -1,    -1,    -1,   158,   159,    -1, 
     2611      -1,   162,   163,   164,   165,    -1,    39,    40,   169,    -1, 
     2612      -1,    44,    45,    46,    47,   176,    -1,    -1,   179,    -1, 
     2613      -1,    -1,    -1,    56,    57,    58,    59,    60,    61,    62, 
     2614      -1,    64,    65,    66,    -1,    -1,    69,    70,    71,    -1, 
     2615      73,    74,    75,    76,    77,    -1,    79,    -1,    -1,    -1, 
    62302616   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
    6231    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  258, 
    6232   259,  260,  261,  262,   -1,  264,  265,  266,  267,  268, 
    6233   269,   -1,   -1,  272,  273,   -1,   -1,   -1,   -1,   -1, 
    6234   258,  259,  260,  261,  262,   -1,  264,  265,  266,  267, 
    6235   268,  269,   -1,  277,  272,  273,  280,   -1,  282,  283, 
    6236    -1,   -1,  286,   -1,   -1,  289,  290,  291,   -1,   -1, 
    6237    -1,   -1,  296,  297,   -1,   -1,   -1,   -1,   -1,   -1, 
    6238    -1,   -1,   -1,   -1,   -1,   -1,   -1,  311,   -1,   -1, 
    6239    -1,  315,  316,   -1,   -1,   -1,  320,   -1,   -1,   -1, 
    6240    -1,   -1,  326,   -1,  328,  329,   -1,  331,   -1,  333, 
    6241   334,  335,  336,  337,   -1,  339,  340,  341,  342,  343, 
    6242   344,  345,  346,  347,  348,  349,  350,  351,  352,  353, 
    6243   354,   -1,   -1,  357,  358,  359,   -1,  361,  362,  363, 
    6244    -1,  365,  366,  367,   -1,   -1,  370,   -1,  372,   -1, 
    6245    -1,  375,  376,  377,  378,   -1,   -1,  381,  382,  383, 
    6246    -1,   -1,   -1,   -1,   -1,  389,   -1,   -1,   -1,  393, 
    6247   394,  395,  396,  397,  398,  399,   -1,  401,  402,  403, 
    6248   404,  405,   -1,   -1,  408,   -1,   -1,   -1,   -1,   -1, 
    6249    -1,  415,  416,  417,   -1,   -1,   -1,   -1,   -1,   -1, 
    6250   424, 
     2617   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2618   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2619   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2620      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   131,    -1, 
     2621      -1,    -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,   142, 
     2622     143,    -1,    -1,    -1,    -1,   148,    21,    22,    23,    -1, 
     2623      -1,    -1,    -1,    -1,    -1,   158,   159,    -1,    -1,   162, 
     2624     163,   164,   165,    -1,    39,    40,   169,    -1,    -1,    44, 
     2625      45,    46,    47,   176,    -1,    -1,   179,    -1,    -1,    -1, 
     2626      -1,    56,    57,    58,    59,    60,    61,    62,    -1,    64, 
     2627      65,    66,    -1,    -1,    69,    70,    71,    -1,    73,    74, 
     2628      75,    76,    77,    -1,    79,    -1,    -1,    -1,    -1,    -1, 
     2629   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2630   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2631   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2632   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2633      -1,    -1,    -1,    -1,    -1,    -1,   131,    -1,    -1,    -1, 
     2634      -1,    -1,    -1,    -1,    -1,    12,    -1,   142,   143,    -1, 
     2635      -1,    -1,    -1,   148,    21,    22,    -1,    -1,    -1,    -1, 
     2636      -1,    -1,    -1,   158,   159,    -1,    -1,   162,   163,   164, 
     2637     165,    -1,    39,    40,   169,    -1,    -1,    44,    45,    46, 
     2638      47,   176,    -1,    -1,   179,    -1,    -1,    -1,    -1,    56, 
     2639      57,    58,    59,    60,    61,    62,    -1,    64,    65,    66, 
     2640      -1,    -1,    69,    70,    71,    -1,    73,    74,    75,    76, 
     2641      77,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2642   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2643   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2644   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2645   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2646      -1,    -1,    -1,    -1,   131,    -1,    -1,    -1,    -1,    -1, 
     2647      -1,    -1,    -1,    12,    -1,   142,   143,    -1,    -1,    -1, 
     2648      -1,   148,    21,    22,    -1,    -1,    -1,    -1,    -1,    -1, 
     2649      -1,   158,   159,    -1,    -1,   162,   163,   164,   165,    -1, 
     2650      39,    40,   169,    -1,    -1,    44,    45,    46,    47,   176, 
     2651      -1,    -1,   179,    -1,    -1,    -1,    -1,    56,    57,    58, 
     2652      59,    60,    61,    62,    -1,    64,    65,    66,    -1,    -1, 
     2653      69,    70,    71,    -1,    73,    74,    75,    76,    77,    -1, 
     2654      79,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2655   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2656   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2657   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2658   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2659      -1,    -1,   131,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2660      -1,    12,    -1,   142,   143,    -1,    -1,    -1,    -1,   148, 
     2661      21,    22,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   158, 
     2662     159,    -1,    -1,   162,   163,   164,   165,    -1,    39,    40, 
     2663     169,    -1,    -1,    44,    45,    46,    47,   176,    -1,    -1, 
     2664     179,    -1,    -1,    -1,    -1,    56,    57,    58,    59,    60, 
     2665      61,    62,    -1,    64,    65,    66,    -1,    -1,    69,    70, 
     2666      71,    -1,    73,    74,    75,    76,    77,    -1,    79,    -1, 
     2667   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2668   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2669   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2670   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2671   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2672     131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    12, 
     2673      -1,   142,   143,    -1,    -1,    -1,    -1,   148,    21,    22, 
     2674      -1,    -1,    -1,    -1,    -1,    -1,    -1,   158,   159,    -1, 
     2675      -1,   162,   163,   164,   165,    -1,    39,    40,   169,    -1, 
     2676      -1,    44,    45,    46,    47,   176,    -1,    -1,   179,    -1, 
     2677      -1,    -1,    -1,    56,    57,    58,    59,    60,    61,    62, 
     2678      -1,    64,    65,    66,    -1,    -1,    69,    70,    71,    -1, 
     2679      73,    74,    75,    76,    77,    -1,    79,    -1,    -1,    -1, 
     2680   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2681   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2682   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2683   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2684      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   131,    -1, 
     2685      -1,    -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,   142, 
     2686     143,    -1,    -1,    -1,    -1,   148,    21,    22,    -1,    -1, 
     2687      -1,    -1,    -1,    -1,    -1,   158,   159,    -1,    -1,   162, 
     2688     163,   164,   165,    -1,    39,    40,   169,    -1,    -1,    44, 
     2689      45,    46,    47,   176,    -1,    -1,   179,    -1,    -1,    -1, 
     2690      -1,    56,    57,    58,    59,    60,    61,    62,    -1,    64, 
     2691      65,    66,    -1,    -1,    69,    70,    71,    -1,    73,    74, 
     2692      75,    76,    77,    -1,    79,    -1,    -1,    -1,    -1,    -1, 
     2693   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2694   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2695   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2696   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2697      -1,    -1,    -1,    -1,    -1,    -1,   131,    -1,    -1,    -1, 
     2698      -1,    -1,    -1,    -1,    -1,    12,    -1,   142,   143,    -1, 
     2699      -1,    -1,    -1,   148,    21,    22,    -1,    -1,    -1,    -1, 
     2700      -1,    -1,    -1,   158,   159,    -1,    -1,   162,   163,   164, 
     2701     165,    -1,    39,    40,   169,    -1,    -1,    44,    45,    46, 
     2702      47,   176,    -1,    -1,   179,    -1,    -1,    -1,    -1,    56, 
     2703      57,    58,    59,    60,    61,    62,    -1,    64,    65,    66, 
     2704      -1,    -1,    69,    70,    71,    -1,    73,    74,    75,    76, 
     2705      77,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2706   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2707   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2708   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2709   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2710      -1,    -1,    -1,    -1,   131,    29,    -1,    -1,    32,    33, 
     2711      34,    35,    -1,    -1,    38,   142,   143,    41,    42,    43, 
     2712      -1,   148,    -1,    -1,    48,    49,    -1,    -1,    -1,    -1, 
     2713      -1,   158,   159,    -1,    -1,   162,   163,   164,   165,    63, 
     2714      -1,    -1,   169,    67,    68,    -1,    -1,    -1,    72,   176, 
     2715      -1,    -1,   179,    -1,    78,    -1,    80,    81,    -1,    83, 
     2716      -1,    85,    86,    87,    88,    89,    -1,    91,    92,    93, 
     2717      94,    95,    96,    97,    98,    99,   100,   101,   102,   103, 
     2718     104,   105,   106,    -1,    -1,   109,   110,   111,    -1,   113, 
     2719     114,   115,    -1,   117,   118,   119,    -1,    -1,   122,    -1, 
     2720     124,    -1,    -1,   127,   128,   129,   130,    -1,    -1,   133, 
     2721     134,   135,    -1,    -1,    -1,    -1,    -1,   141,    -1,    -1, 
     2722      -1,   145,   146,   147,   148,   149,   150,   151,    -1,   153, 
     2723     154,   155,   156,   157,    -1,    -1,   160,    -1,    -1,    -1, 
     2724      -1,    39,    40,   167,   168,   169,    44,    45,    46,    47, 
     2725      -1,    -1,   176,    -1,    -1,    -1,    -1,    -1,    56,    57, 
     2726      58,    59,    60,    61,    62,    -1,    64,    65,    66,    -1, 
     2727      -1,    69,    70,    71,    -1,    73,    74,    75,    76,    77, 
     2728      -1,    79,    39,    40,    -1,    -1,    -1,    44,    45,    46, 
     2729      47,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    56, 
     2730      57,    58,    59,    60,    61,    62,    -1,    64,    65,    66, 
     2731      -1,    -1,    69,    70,    71,    -1,    73,    74,    75,    76, 
     2732      77,    -1,    79,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2733   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2734      -1,    -1,    -1,    -1,   142,   143,    -1,    -1,    -1,    -1, 
     2735     148,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2736     158,   159,    -1,    -1,   162,   163,   164,   165,    -1,    -1, 
     2737      38,   169,    -1,    -1,    -1,    -1,    -1,    -1,   176,    -1, 
     2738      -1,   179,    -1,    -1,    -1,   142,   143,    -1,    -1,    -1, 
     2739      -1,   148,    -1,    -1,    -1,    63,    -1,    -1,    -1,    -1, 
     2740      -1,   158,   159,    -1,    -1,   162,   163,   164,   165,    -1, 
     2741      78,    -1,   169,    -1,    -1,    83,    84,    -1,    -1,   176, 
     2742      88,    89,   179,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2743      98,    99,   100,   101,   102,   103,   104,   105,    -1,    -1, 
     2744   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2745     118,    -1,    -1,    -1,    -1,    -1,   124,    -1,    -1,    -1, 
     2746      -1,    -1,    -1,    -1,    -1,   133,    -1,   135,    -1,    -1, 
     2747   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2748   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2749   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, 
     2750      -1,   169,    -1,    -1,    -1,    -1,    -1,    -1,   176 
    62512751}; 
    6252 #define YYFINAL 1 
    6253 #ifndef YYDEBUG 
    6254 #define YYDEBUG 1 
     2752 
     2753/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 
     2754   symbol of state STATE-NUM.  */ 
     2755static const yytype_uint16 yystos[] = 
     2756{ 
     2757       0,   191,     0,     1,    36,    37,    53,    54,   144,   177, 
     2758     187,   192,   197,   199,   205,   201,   198,   177,   200,    29, 
     2759      32,    34,    35,    38,    41,    42,    43,    48,    49,    63, 
     2760      67,    68,    72,    78,    80,    81,    83,    85,    86,    87, 
     2761      88,    89,    91,    92,    93,    94,    95,    96,    97,    98, 
     2762      99,   100,   101,   102,   103,   104,   105,   106,   109,   110, 
     2763     111,   113,   114,   115,   117,   118,   119,   122,   124,   127, 
     2764     128,   129,   130,   133,   134,   135,   141,   145,   146,   147, 
     2765     148,   149,   150,   151,   153,   154,   155,   156,   157,   160, 
     2766     167,   168,   169,   176,   193,   194,   195,   202,   203,   206, 
     2767     212,   224,   225,   228,   229,   234,   235,   237,   238,   239, 
     2768     240,   241,   243,   244,   251,   253,   257,   258,   261,   262, 
     2769     263,   298,   308,   309,   315,   316,   317,   318,   319,   321, 
     2770     326,   327,   328,   330,   331,   333,   336,   337,   340,   341, 
     2771     349,   351,   352,   365,   372,   201,   205,   169,   204,   204, 
     2772     179,    12,    21,    22,    39,    40,    44,    45,    46,    47, 
     2773      56,    57,    58,    59,    60,    61,    62,    64,    65,    66, 
     2774      69,    70,    71,    73,    74,    75,    76,    77,    79,   131, 
     2775     142,   143,   148,   158,   159,   162,   163,   164,   165,   176, 
     2776     179,   280,   281,   283,   284,   288,   290,   291,   292,   293, 
     2777     298,   299,   300,   307,   320,   179,   187,   280,   304,   179, 
     2778     217,   218,   179,   280,   303,     4,   187,   221,   187,   221, 
     2779     304,   179,   169,   187,   324,   176,   179,   364,   280,   169, 
     2780     325,   169,   324,   179,   169,   176,   179,   346,   179,   179, 
     2781     221,   221,    20,    24,   247,   298,   179,   216,   123,   137, 
     2782     127,   324,   324,   169,   252,    80,    81,   213,   275,   324, 
     2783      27,   196,   198,    33,   196,   158,   207,   196,   169,   179, 
     2784     249,   250,   169,   226,   231,     3,   248,   169,   230,   247, 
     2785       3,   236,   248,     3,   248,     3,   248,   169,   245,   246, 
     2786     247,     3,     4,    35,   222,   223,   255,   271,   169,   176, 
     2787     268,    23,   179,   259,    23,   179,   266,    23,     4,   329, 
     2788     169,   310,   200,   324,   324,   324,   176,   323,   280,     5, 
     2789     126,   189,   332,     3,   179,   334,   169,   304,   179,   345, 
     2790      21,    22,    23,    50,    51,    52,    55,   169,   179,   288, 
     2791     299,   343,   345,   350,   353,   354,   355,   345,    84,    98, 
     2792     105,   298,   328,   179,   208,   280,   280,   280,   282,   179, 
     2793     179,   179,   282,   280,   282,   179,   179,   179,   179,   179, 
     2794     179,   179,   179,   179,   179,   179,   179,   280,   179,   179, 
     2795     179,   179,   179,   179,   280,   281,   283,   307,   360,   361, 
     2796     362,   179,   280,   283,     5,     7,     8,     9,    10,    11, 
     2797      13,    14,    15,    16,    17,    18,    21,    22,    23,    24, 
     2798      25,   185,   186,   285,   280,   189,   179,   302,   179,   179, 
     2799     169,   158,   301,   302,     3,     4,   180,   280,   219,   298, 
     2800       3,   280,     4,   169,   242,   242,   280,   280,   180,   288, 
     2801     292,   298,   330,   366,   367,   368,   176,   283,   298,   298, 
     2802     367,   369,   298,   371,   242,    40,    44,    45,    46,    47, 
     2803      56,    57,    58,    59,    60,    61,    62,    64,    65,    66, 
     2804      69,    70,    71,    74,    75,    76,    77,    79,   169,   214, 
     2805     215,   169,   298,   220,   280,     3,     3,   221,   194,   200, 
     2806     204,   196,     5,   249,     3,    24,   179,   187,   248,     3, 
     2807      24,   230,   247,   179,   276,   230,   298,   247,   169,   169, 
     2808     247,   276,     3,   245,    29,    82,   109,   111,   112,   113, 
     2809     116,   117,   119,   120,   272,   273,   275,     4,   204,     3, 
     2810     256,   254,     5,    23,   269,   280,   180,   176,   179,   169, 
     2811     260,   269,   179,   267,   280,   268,   176,   276,     3,   205, 
     2812     248,   298,   322,   373,   280,   280,   298,   176,    23,   280, 
     2813     335,   338,   339,    23,    25,   179,   298,   347,   348,   353, 
     2814     354,   280,   280,   280,   280,     5,   353,   179,   281,   288, 
     2815     299,   342,   356,   357,   358,     3,   344,    20,    23,    24, 
     2816      25,   355,   353,   360,   179,   179,    23,   169,   180,   210, 
     2817     211,    30,   180,     3,   180,   282,   282,   280,   180,   180, 
     2818     180,   280,   280,   280,   280,   280,   280,   280,   280,   280, 
     2819     280,   280,   280,   180,   282,   282,   282,   282,   282,   280, 
     2820     283,   361,   362,     3,   132,     3,     3,   282,   180,     3, 
     2821       5,   280,   287,   280,   280,   280,   280,   280,   280,   280, 
     2822     280,   280,   280,   280,   280,   280,   280,     5,    24,   280, 
     2823     286,   280,     5,   280,     5,   280,   288,   303,   289,   294, 
     2824     294,   280,   280,   180,     3,   180,   276,   218,   180,     3, 
     2825     180,     3,   179,     3,   370,   180,   180,   180,     3,   370, 
     2826       3,   180,     3,    24,     3,   180,   179,   169,   324,   208, 
     2827     280,   180,   250,   227,   232,   233,   284,   280,   169,   169, 
     2828     231,   227,   248,     4,    23,   277,   278,   279,   280,   248, 
     2829     276,   276,   248,   246,   276,   179,     3,     4,   208,   254, 
     2830     169,   269,   260,     5,   269,   180,     3,   270,    23,   180, 
     2831     276,    31,   169,   311,   312,     5,   329,   364,   180,     3, 
     2832     353,    23,    25,   179,   280,     3,   180,   180,   280,   180, 
     2833     356,   285,   359,   359,     3,   359,   356,   353,   353,   353, 
     2834     353,   353,   366,   369,     3,   180,   179,   209,   304,   280, 
     2835     180,   180,   180,   180,   180,   180,   180,   180,   180,   180, 
     2836     180,   180,   180,   180,   180,   180,   180,   180,   180,   180, 
     2837     180,     3,     3,     3,   280,   362,   280,   362,   280,   362, 
     2838     180,   283,   280,   280,   280,   280,   280,     4,     4,   280, 
     2839     295,   296,   297,   180,   180,   298,   169,    84,   280,   295, 
     2840     125,   367,   180,   367,   180,   298,   214,   280,   220,    24, 
     2841       3,    21,    22,    23,   188,   299,   180,    24,    24,   230, 
     2842     280,     3,   180,     4,   298,    23,   264,   264,   245,   138, 
     2843     139,   140,   274,   273,     4,   169,   276,   180,   269,   270, 
     2844     169,   180,     4,   126,     3,   280,   276,   339,   180,   280, 
     2845     297,   189,   348,   353,     3,   180,   285,   358,   370,   370, 
     2846     211,   180,   210,   169,   363,   363,   363,   180,   303,     4, 
     2847     280,     4,     3,   302,   276,   180,   180,     5,   180,   227, 
     2848     232,   232,   232,   232,   227,   278,   279,   280,   179,   265, 
     2849     280,   180,   276,   264,   270,   269,   169,   187,   313,   314, 
     2850     169,   312,     3,   276,   180,   330,   363,   359,   180,   180, 
     2851     180,     5,   180,   180,   180,   180,   280,     4,   280,   296, 
     2852       3,   298,    24,    23,   264,   305,   306,   126,     3,   280, 
     2853     180,   280,   280,     4,   280,   180,   305,     5,   169,   314, 
     2854       3,     3,   280,   280,   280,   280,     3,   280 
     2855}; 
     2856 
     2857#define yyerrok      (yyerrstatus = 0) 
     2858#define yyclearin (yychar = YYEMPTY) 
     2859#define YYEMPTY      (-2) 
     2860#define YYEOF     0 
     2861 
     2862#define YYACCEPT  goto yyacceptlab 
     2863#define YYABORT      goto yyabortlab 
     2864#define YYERROR      goto yyerrorlab 
     2865 
     2866 
     2867/* Like YYERROR except do call yyerror.  This remains here temporarily 
     2868   to ease the transition to the new meaning of YYERROR, for GCC. 
     2869   Once GCC version 2 has supplanted version 1, this can go.  */ 
     2870 
     2871#define YYFAIL    goto yyerrlab 
     2872 
     2873#define YYRECOVERING()  (!!yyerrstatus) 
     2874 
     2875#define YYBACKUP(Token, Value)               \ 
     2876do                      \ 
     2877  if (yychar == YYEMPTY && yylen == 1)          \ 
     2878    {                      \ 
     2879      yychar = (Token);                \ 
     2880      yylval = (Value);                \ 
     2881      yytoken = YYTRANSLATE (yychar);           \ 
     2882      YYPOPSTACK (1);                  \ 
     2883      goto yybackup;                \ 
     2884    }                      \ 
     2885  else                        \ 
     2886    {                      \ 
     2887      yyerror (YY_("syntax error: cannot back up")); \ 
     2888      YYERROR;                   \ 
     2889    }                      \ 
     2890while (YYID (0)) 
     2891 
     2892 
     2893#define YYTERROR  1 
     2894#define YYERRCODE 256 
     2895 
     2896 
     2897/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. 
     2898   If N is 0, then set CURRENT to the empty location which ends 
     2899   the previous symbol: RHS[0] (always defined).  */ 
     2900 
     2901#define YYRHSLOC(Rhs, K) ((Rhs)[K]) 
     2902#ifndef YYLLOC_DEFAULT 
     2903# define YYLLOC_DEFAULT(Current, Rhs, N)           \ 
     2904    do                           \ 
     2905      if (YYID (N))                                                    \ 
     2906   {                       \ 
     2907     (Current).first_line   = YYRHSLOC (Rhs, 1).first_line; \ 
     2908     (Current).first_column = YYRHSLOC (Rhs, 1).first_column;  \ 
     2909     (Current).last_line    = YYRHSLOC (Rhs, N).last_line;     \ 
     2910     (Current).last_column  = YYRHSLOC (Rhs, N).last_column;   \ 
     2911   }                       \ 
     2912      else                       \ 
     2913   {                       \ 
     2914     (Current).first_line   = (Current).last_line   =    \ 
     2915       YYRHSLOC (Rhs, 0).last_line;          \ 
     2916     (Current).first_column = (Current).last_column =    \ 
     2917       YYRHSLOC (Rhs, 0).last_column;           \ 
     2918   }                       \ 
     2919    while (YYID (0)) 
    62552920#endif 
    6256 #define YYMAXTOKEN 426 
     2921 
     2922 
     2923/* YY_LOCATION_PRINT -- Print the location on the stream. 
     2924   This macro was not mandated originally: define only if we know 
     2925   we won't break user code: when these are the locations we know.  */ 
     2926 
     2927#ifndef YY_LOCATION_PRINT 
     2928# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL 
     2929#  define YY_LOCATION_PRINT(File, Loc)       \ 
     2930     fprintf (File, "%d.%d-%d.%d",        \ 
     2931         (Loc).first_line, (Loc).first_column,  \ 
     2932         (Loc).last_line,  (Loc).last_column) 
     2933# else 
     2934#  define YY_LOCATION_PRINT(File, Loc) ((void) 0) 
     2935# endif 
     2936#endif 
     2937 
     2938 
     2939/* YYLEX -- calling `yylex' with the right arguments.  */ 
     2940 
     2941#ifdef YYLEX_PARAM 
     2942# define YYLEX yylex (YYLEX_PARAM) 
     2943#else 
     2944# define YYLEX yylex () 
     2945#endif 
     2946 
     2947/* Enable debugging if requested.  */ 
    62572948#if YYDEBUG 
    6258 char *fortranname[] = { 
    6259 "end-of-file",0,0,0,0,0,0,0,0,0,"'\\n'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 
    6260 0,0,"'!'",0,0,0,"'%'",0,0,"'('","')'","'*'","'+'","','","'-'",0,"'/'",0,0,0,0,0, 
    6261 0,0,0,0,0,"':'",0,"'<'","'='","'>'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 
    6262 0,0,0,0,0,0,"'['",0,"']'",0,"'_'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 
    6263 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 
    6264 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 
    6265 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 
    6266 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"TOK_BINARY_OP","TOK_EQV","TOK_NEQV", 
    6267 "TOK_OR","TOK_XOR","TOK_AND","TOK_NOT","TOK_LT","TOK_GT","TOK_LE","TOK_GE", 
    6268 "TOK_EQ","TOK_NE","TOK_UNARY_OP","TOK_DSLASH","TOK_SLASH","TOK_DASTER", 
    6269 "TOK_SEP","TOK_SEMICOLON","TOK_NEXTLINE","TOK_PARAMETER","TOK_RESULT", 
    6270 "TOK_ONLY","TOK_INCLUDE","TOK_SUBROUTINE","TOK_PROGRAM","TOK_FUNCTION", 
    6271 "TOK_OMP","TOK_DOLLAR","TOK_FORMAT","TOK_MAX","TOK_TANH","TOK_WHERE", 
    6272 "TOK_ELSEWHERE","TOK_ENDWHERE","TOK_MAXVAL","TOK_TRIM","TOK_SUM","TOK_SQRT", 
    6273 "TOK_CASE","TOK_SELECTCASE","TOK_FILE","TOK_END","TOK_ERR","TOK_DONOTTREAT", 
    6274 "TOK_ENDDONOTTREAT","TOK_EXIST","TOK_MIN","TOK_FLOAT","TOK_EXP","TOK_COS", 
    6275 "TOK_COSH","TOK_ACOS","TOK_NINT","TOK_CYCLE","TOK_SIN","TOK_SINH","TOK_ASIN", 
    6276 "TOK_EQUIVALENCE","TOK_BACKSPACE","TOK_LOG","TOK_TAN","TOK_ATAN", 
    6277 "TOK_RECURSIVE","TOK_ABS","TOK_MOD","TOK_SIGN","TOK_MINLOC","TOK_MAXLOC", 
    6278 "TOK_EXIT","TOK_MINVAL","TOK_PUBLIC","TOK_PRIVATE","TOK_ALLOCATABLE", 
    6279 "TOK_RETURN","TOK_THEN","TOK_ELSEIF","TOK_ELSE","TOK_ENDIF","TOK_PRINT", 
    6280 "TOK_PLAINGOTO","TOK_CONSTRUCTID","TOK_LOGICALIF","TOK_PLAINDO","TOK_CONTAINS", 
    6281 "TOK_ENDDO","TOK_MODULE","TOK_ENDMODULE","TOK_DOWHILE","TOK_ALLOCATE", 
    6282 "TOK_OPEN","TOK_CLOSE","TOK_INQUIRE","TOK_WRITE","TOK_READ","TOK_REWIND", 
    6283 "TOK_DEALLOCATE","TOK_NULLIFY","TOK_FIN","TOK_DEBUT","TOK_DIMENSION", 
    6284 "TOK_ENDSELECT","TOK_EXTERNAL","TOK_INTENT","TOK_INTRINSIC","TOK_NAMELIST", 
    6285 "TOK_CASEDEFAULT","TOK_OPTIONAL","TOK_POINTER","TOK_CONTINUE","TOK_SAVE", 
    6286 "TOK_TARGET","TOK_QUOTE","TOK_IMPLICIT","TOK_NONE","TOK_CALL","TOK_STAT", 
    6287 "TOK_POINT_TO","TOK_COMMON","TOK_GLOBAL","TOK_INTERFACE","TOK_ENDINTERFACE", 
    6288 "TOK_LEFTAB","TOK_RIGHTAB","TOK_PAUSE","TOK_PROCEDURE","TOK_STOP","TOK_NAMEEQ", 
    6289 "TOK_REAL8","TOK_OUT","TOK_INOUT","TOK_IN","TOK_USE","TOK_TRUE","TOK_FALSE", 
    6290 "TOK_LABEL","TOK_TYPE","TOK_TYPEPAR","TOK_ENDTYPE","TOK_REAL","TOK_INTEGER", 
    6291 "TOK_LOGICAL","TOK_DOUBLEPRECISION","TOK_DOUBLEREAL","TOK_ENDSUBROUTINE", 
    6292 "TOK_ENDFUNCTION","TOK_ENDPROGRAM","TOK_ENDUNIT","TOK_CHARACTER", 
    6293 "TOK_CHAR_CONSTANT","TOK_CHAR_CUT","TOK_DATA","TOK_CHAR_INT","TOK_CHAR_MESSAGE", 
    6294 "TOK_CSTREAL","TOK_CSTREALDP","TOK_CSTREALQP","TOK_SFREAL","TOK_COMPLEX", 
    6295 "TOK_DOUBLECOMPLEX","TOK_NAME","TOK_NAME_CHAR","TOK_PROBTYPE","TOK_INTERPTYPE", 
    6296 "TOK_VARTYPE","TOK_BC","TOK_OP","TOK_CSTINT","TOK_COMMENT","TOK_FILENAME", 
    6297 }; 
    6298 char *fortranrule[] = { 
    6299 "$accept : input", 
    6300 "input :", 
    6301 "input : input line", 
    6302 "line : '\\n' position", 
    6303 "line : thislabel suite_line_list", 
    6304 "line : TOK_COMMENT", 
    6305 "line : keyword cmnt writedeclar", 
    6306 "line : error writedeclar nulcurbuf", 
    6307 "suite_line_list : suite_line", 
    6308 "suite_line_list : suite_line_list TOK_SEMICOLON suite_line", 
    6309 "suite_line : entry fin_line", 
    6310 "suite_line : spec fin_line", 
    6311 "suite_line : before_include filename fin_line", 
    6312 "suite_line : exec cmnt writedeclar", 
    6313 "suite_line : instr fin_line", 
    6314 "instr : ident ':'", 
    6315 "fin_line : position cmnt", 
    6316 "keyword : TOK_DONOTTREAT", 
    6317 "keyword : TOK_ENDDONOTTREAT", 
    6318 "keyword : TOK_OMP", 
    6319 "keyword : TOK_DOLLAR", 
    6320 "position :", 
    6321 "thislabel :", 
    6322 "thislabel : TOK_LABEL nulcurbuf", 
    6323 "cmnt :", 
    6324 "cmnt : TOK_COMMENT", 
    6325 "incomment :", 
    6326 "nulcurbuf :", 
    6327 "opt_recursive :", 
    6328 "opt_recursive : TOK_RECURSIVE", 
    6329 "entry :", 
    6330 "entry : opt_recursive TOK_SUBROUTINE name_routine arglist", 
    6331 "entry : TOK_PROGRAM name_routine", 
    6332 "entry : TOK_FUNCTION name_routine arglist TOK_RESULT arglist1", 
    6333 "entry : TOK_FUNCTION name_routine arglist", 
    6334 "entry : TOK_MODULE TOK_NAME", 
    6335 "name_routine : TOK_NAME", 
    6336 "writedeclar :", 
    6337 "before_include : TOK_INCLUDE", 
    6338 "filename : TOK_CHAR_CONSTANT", 
    6339 "arglist :", 
    6340 "arglist : '(' ')'", 
    6341 "arglist : '(' args ')'", 
    6342 "arglist1 :", 
    6343 "arglist1 : '(' ')'", 
    6344 "arglist1 : '(' args ')'", 
    6345 "args : arg", 
    6346 "args : args ',' arg", 
    6347 "arg : TOK_NAME", 
    6348 "arg : '*'", 
    6349 "spec : type after_type", 
    6350 "spec : TOK_TYPE opt_spec opt_sep opt_name", 
    6351 "spec : TOK_ENDTYPE opt_name", 
    6352 "spec : TOK_POINTER list_couple", 
    6353 "spec : before_parameter '(' paramlist ')'", 
    6354 "spec : before_parameter paramlist", 
    6355 "spec : common", 
    6356 "spec : save", 
    6357 "spec : implicit", 
    6358 "spec : dimension", 
    6359 "spec : public", 
    6360 "spec : private", 
    6361 "spec : use_stat", 
    6362 "spec : module_proc_stmt", 
    6363 "spec : interface", 
    6364 "spec : namelist", 
    6365 "spec : TOK_BACKSPACE '(' expr ')'", 
    6366 "spec : TOK_EXTERNAL opt_sep use_name_list", 
    6367 "spec : TOK_INTRINSIC opt_sep use_intrinsic_list", 
    6368 "spec : TOK_EQUIVALENCE list_expr_equi", 
    6369 "spec : before_data data '\\n'", 
    6370 "opt_spec :", 
    6371 "opt_spec : access_spec", 
    6372 "name_intrinsic : TOK_SUM", 
    6373 "name_intrinsic : TOK_TANH", 
    6374 "name_intrinsic : TOK_MAXVAL", 
    6375 "name_intrinsic : TOK_MIN", 
    6376 "name_intrinsic : TOK_MINVAL", 
    6377 "name_intrinsic : TOK_TRIM", 
    6378 "name_intrinsic : TOK_SQRT", 
    6379 "name_intrinsic : TOK_NINT", 
    6380 "name_intrinsic : TOK_FLOAT", 
    6381 "name_intrinsic : TOK_EXP", 
    6382 "name_intrinsic : TOK_COS", 
    6383 "name_intrinsic : TOK_COSH", 
    6384 "name_intrinsic : TOK_ACOS", 
    6385 "name_intrinsic : TOK_SIN", 
    6386 "name_intrinsic : TOK_SINH", 
    6387 "name_intrinsic : TOK_ASIN", 
    6388 "name_intrinsic : TOK_LOG", 
    6389 "name_intrinsic : TOK_TAN", 
    6390 "name_intrinsic : TOK_ATAN", 
    6391 "name_intrinsic : TOK_MOD", 
    6392 "name_intrinsic : TOK_SIGN", 
    6393 "name_intrinsic : TOK_MINLOC", 
    6394 "name_intrinsic : TOK_MAXLOC", 
    6395 "name_intrinsic : TOK_NAME", 
    6396 "use_intrinsic_list : name_intrinsic", 
    6397 "use_intrinsic_list : use_intrinsic_list ',' name_intrinsic", 
    6398 "list_couple : '(' list_expr ')'", 
    6399 "list_couple : list_couple ',' '(' list_expr ')'", 
    6400 "list_expr_equi : expr_equi", 
    6401 "list_expr_equi : list_expr_equi ',' expr_equi", 
    6402 "expr_equi : '(' list_expr_equi1 ')'", 
    6403 "list_expr_equi1 : ident dims", 
    6404 "list_expr_equi1 : list_expr_equi1 ',' ident dims", 
    6405 "list_expr : expr", 
    6406 "list_expr : list_expr ',' expr", 
    6407 "opt_sep :", 
    6408 "opt_sep : ':' ':'", 
    6409 "after_type : dcl nodimsgiven", 
    6410 "after_type : before_function name_routine arglist", 
    6411 "before_function : TOK_FUNCTION", 
    6412 "before_parameter : TOK_PARAMETER", 
    6413 "before_data : TOK_DATA", 
    6414 "data : TOK_NAME TOK_SLASH datavallist TOK_SLASH", 
    6415 "data : data opt_comma TOK_NAME TOK_SLASH datavallist TOK_SLASH", 
    6416 "data : datanamelist TOK_SLASH datavallist TOK_SLASH", 
    6417 "datavallist : expr_data", 
    6418 "datavallist : expr_data ',' datavallist", 
    6419 "save : before_save varsave", 
    6420 "save : before_save comblock varsave", 
    6421 "save : save opt_comma comblock opt_comma varsave", 
    6422 "save : save ',' varsave", 
    6423 "before_save : TOK_SAVE", 
    6424 "varsave :", 
    6425 "varsave : TOK_NAME dims", 
    6426 "datanamelist : TOK_NAME", 
    6427 "datanamelist : TOK_NAME '(' expr ')'", 
    6428 "datanamelist : datanamelist ',' datanamelist", 
    6429 "expr_data : opt_signe simple_const", 
    6430 "expr_data : expr_data '+' expr_data", 
    6431 "expr_data : expr_data '-' expr_data", 
    6432 "expr_data : expr_data '*' expr_data", 
    6433 "expr_data : expr_data '/' expr_data", 
    6434 "opt_signe :", 
    6435 "opt_signe : signe", 
    6436 "namelist : namelist_action after_namelist", 
    6437 "namelist_action : TOK_NAMELIST ident", 
    6438 "namelist_action : TOK_NAMELIST comblock ident", 
    6439 "namelist_action : namelist_action opt_comma comblock opt_comma ident", 
    6440 "namelist_action : namelist_action ',' ident", 
    6441 "after_namelist :", 
    6442 "interface : TOK_INTERFACE opt_name", 
    6443 "interface : TOK_ENDINTERFACE opt_name", 
    6444 "before_dimension : TOK_DIMENSION", 
    6445 "dimension : before_dimension opt_comma TOK_NAME dims lengspec", 
    6446 "dimension : dimension ',' TOK_NAME dims lengspec", 
    6447 "private : TOK_PRIVATE '\\n'", 
    6448 "private : TOK_PRIVATE opt_sep use_name_list", 
    6449 "public : TOK_PUBLIC '\\n'", 
    6450 "public : TOK_PUBLIC opt_sep use_name_list", 
    6451 "use_name_list : TOK_NAME", 
    6452 "use_name_list : use_name_list ',' TOK_NAME", 
    6453 "common : before_common var_common_list", 
    6454 "common : before_common comblock var_common_list", 
    6455 "common : common opt_comma comblock opt_comma var_common_list", 
    6456 "before_common : TOK_COMMON", 
    6457 "before_common : TOK_GLOBAL TOK_COMMON", 
    6458 "var_common_list : var_common", 
    6459 "var_common_list : var_common_list ',' var_common", 
    6460 "var_common : TOK_NAME dims", 
    6461 "comblock : TOK_DSLASH", 
    6462 "comblock : TOK_SLASH TOK_NAME TOK_SLASH", 
    6463 "opt_comma :", 
    6464 "opt_comma : ','", 
    6465 "paramlist : paramitem", 
    6466 "paramlist : paramlist ',' paramitem", 
    6467 "paramitem : TOK_NAME '=' expr", 
    6468 "module_proc_stmt : TOK_PROCEDURE proc_name_list", 
    6469 "proc_name_list : TOK_NAME", 
    6470 "proc_name_list : proc_name_list ',' TOK_NAME", 
    6471 "implicit : TOK_IMPLICIT TOK_NONE", 
    6472 "implicit : TOK_IMPLICIT TOK_REAL8", 
    6473 "opt_retour :", 
    6474 "dcl : options opt_retour TOK_NAME dims lengspec initial_value", 
    6475 "dcl : dcl ',' opt_retour TOK_NAME dims lengspec initial_value", 
    6476 "nodimsgiven :", 
    6477 "type : typespec selector", 
    6478 "type : before_character c_selector", 
    6479 "type : typename '*' TOK_CSTINT", 
    6480 "type : before_typepar attribute ')'", 
    6481 "before_typepar : TOK_TYPEPAR", 
    6482 "c_selector :", 
    6483 "c_selector : '*' TOK_CSTINT", 
    6484 "c_selector : '*' '(' c_attribute ')'", 
    6485 "c_selector : '(' c_attribute ')'", 
    6486 "c_attribute : TOK_NAME clause opt_clause", 
    6487 "c_attribute : TOK_NAME '=' clause opt_clause", 
    6488 "c_attribute : clause opt_clause", 
    6489 "before_character : TOK_CHARACTER", 
    6490 "typespec : typename", 
    6491 "typename : TOK_INTEGER", 
    6492 "typename : TOK_REAL", 
    6493 "typename : TOK_COMPLEX", 
    6494 "typename : TOK_DOUBLEPRECISION", 
    6495 "typename : TOK_DOUBLECOMPLEX", 
    6496 "typename : TOK_LOGICAL", 
    6497 "lengspec :", 
    6498 "lengspec : '*' proper_lengspec", 
    6499 "proper_lengspec : expr", 
    6500 "proper_lengspec : '(' '*' ')'", 
    6501 "selector :", 
    6502 "selector : '*' proper_selector", 
    6503 "selector : '(' attribute ')'", 
    6504 "proper_selector : expr", 
    6505 "proper_selector : '(' '*' ')'", 
    6506 "attribute : TOK_NAME clause", 
    6507 "attribute : TOK_NAME '=' clause", 
    6508 "attribute : TOK_NAME", 
    6509 "attribute : TOK_CSTINT", 
    6510 "clause : expr", 
    6511 "clause : '*'", 
    6512 "opt_clause :", 
    6513 "opt_clause : ',' TOK_NAME clause", 
    6514 "options :", 
    6515 "options : ':' ':'", 
    6516 "options : ',' attr_spec_list ':' ':'", 
    6517 "attr_spec_list : attr_spec", 
    6518 "attr_spec_list : attr_spec_list ',' attr_spec", 
    6519 "attr_spec : TOK_PARAMETER", 
    6520 "attr_spec : access_spec", 
    6521 "attr_spec : TOK_ALLOCATABLE", 
    6522 "attr_spec : TOK_DIMENSION dims", 
    6523 "attr_spec : TOK_EXTERNAL", 
    6524 "attr_spec : TOK_INTENT '(' intent_spec ')'", 
    6525 "attr_spec : TOK_INTRINSIC", 
    6526 "attr_spec : TOK_OPTIONAL", 
    6527 "attr_spec : TOK_POINTER", 
    6528 "attr_spec : TOK_SAVE", 
    6529 "attr_spec : TOK_TARGET", 
    6530 "intent_spec : TOK_IN", 
    6531 "intent_spec : TOK_OUT", 
    6532 "intent_spec : TOK_INOUT", 
    6533 "access_spec : TOK_PUBLIC", 
    6534 "access_spec : TOK_PRIVATE", 
    6535 "dims :", 
    6536 "dims : '(' dimlist ')'", 
    6537 "dimlist : dim", 
    6538 "dimlist : dimlist ',' dim", 
    6539 "dim : ubound", 
    6540 "dim : ':'", 
    6541 "dim : expr ':'", 
    6542 "dim : ':' expr", 
    6543 "dim : expr ':' ubound", 
    6544 "ubound : '*'", 
    6545 "ubound : expr", 
    6546 "expr : uexpr", 
    6547 "expr : '(' expr ')'", 
    6548 "expr : complex_const", 
    6549 "expr : predefinedfunction", 
    6550 "predefinedfunction : TOK_SUM minmaxlist ')'", 
    6551 "predefinedfunction : TOK_MAX minmaxlist ')'", 
    6552 "predefinedfunction : TOK_TANH '(' minmaxlist ')'", 
    6553 "predefinedfunction : TOK_MAXVAL '(' minmaxlist ')'", 
    6554 "predefinedfunction : TOK_MIN minmaxlist ')'", 
    6555 "predefinedfunction : TOK_MINVAL '(' minmaxlist ')'", 
    6556 "predefinedfunction : TOK_TRIM '(' expr ')'", 
    6557 "predefinedfunction : TOK_SQRT expr ')'", 
    6558 "predefinedfunction : TOK_REAL '(' minmaxlist ')'", 
    6559 "predefinedfunction : TOK_NINT '(' expr ')'", 
    6560 "predefinedfunction : TOK_FLOAT '(' expr ')'", 
    6561 "predefinedfunction : TOK_EXP '(' expr ')'", 
    6562 "predefinedfunction : TOK_COS '(' expr ')'", 
    6563 "predefinedfunction : TOK_COSH '(' expr ')'", 
    6564 "predefinedfunction : TOK_ACOS '(' expr ')'", 
    6565 "predefinedfunction : TOK_SIN '(' expr ')'", 
    6566 "predefinedfunction : TOK_SINH '(' expr ')'", 
    6567 "predefinedfunction : TOK_ASIN '(' expr ')'", 
    6568 "predefinedfunction : TOK_LOG '(' expr ')'", 
    6569 "predefinedfunction : TOK_TAN '(' expr ')'", 
    6570 "predefinedfunction : TOK_ATAN '(' expr ')'", 
    6571 "predefinedfunction : TOK_ABS expr ')'", 
    6572 "predefinedfunction : TOK_MOD '(' minmaxlist ')'", 
    6573 "predefinedfunction : TOK_SIGN '(' minmaxlist ')'", 
    6574 "predefinedfunction : TOK_MINLOC '(' minmaxlist ')'", 
    6575 "predefinedfunction : TOK_MAXLOC '(' minmaxlist ')'", 
    6576 "minmaxlist : expr", 
    6577 "minmaxlist : minmaxlist ',' expr", 
    6578 "uexpr : lhs", 
    6579 "uexpr : simple_const", 
    6580 "uexpr : vec", 
    6581 "uexpr : expr operation", 
    6582 "uexpr : signe expr", 
    6583 "uexpr : TOK_NOT expr", 
    6584 "signe : '+'", 
    6585 "signe : '-'", 
    6586 "operation : '+' expr", 
    6587 "operation : '-' expr", 
    6588 "operation : '*' expr", 
    6589 "operation : TOK_DASTER expr", 
    6590 "operation : TOK_EQ expr", 
    6591 "operation : TOK_EQV expr", 
    6592 "operation : TOK_GT expr", 
    6593 "operation : '>' expr", 
    6594 "operation : TOK_LT expr", 
    6595 "operation : '<' expr", 
    6596 "operation : TOK_GE expr", 
    6597 "operation : '>' '=' expr", 
    6598 "operation : TOK_LE expr", 
    6599 "operation : '<' '=' expr", 
    6600 "operation : TOK_NE expr", 
    6601 "operation : TOK_NEQV expr", 
    6602 "operation : TOK_XOR expr", 
    6603 "operation : TOK_OR expr", 
    6604 "operation : TOK_AND expr", 
    6605 "operation : TOK_SLASH after_slash", 
    6606 "operation : '=' after_equal", 
    6607 "after_slash :", 
    6608 "after_slash : expr", 
    6609 "after_slash : '=' expr", 
    6610 "after_slash : TOK_SLASH expr", 
    6611 "after_equal : '=' expr", 
    6612 "after_equal : expr", 
    6613 "lhs : ident", 
    6614 "lhs : structure_component", 
    6615 "lhs : array_ele_substring_func_ref", 
    6616 "beforefunctionuse :", 
    6617 "array_ele_substring_func_ref : begin_array", 
    6618 "array_ele_substring_func_ref : begin_array substring", 
    6619 "array_ele_substring_func_ref : structure_component '(' funarglist ')'", 
    6620 "array_ele_substring_func_ref : structure_component '(' funarglist ')' substring", 
    6621 "begin_array : ident '(' funarglist ')'", 
    6622 "structure_component : lhs '%' lhs", 
    6623 "vec : TOK_LEFTAB outlist TOK_RIGHTAB", 
    6624 "funarglist : beforefunctionuse", 
    6625 "funarglist : beforefunctionuse funargs", 
    6626 "funargs : funarg", 
    6627 "funargs : funargs ',' funarg", 
    6628 "funarg : expr", 
    6629 "funarg : triplet", 
    6630 "triplet : expr ':' expr", 
    6631 "triplet : expr ':' expr ':' expr", 
    6632 "triplet : ':' expr ':' expr", 
    6633 "triplet : ':' ':' expr", 
    6634 "triplet : ':' expr", 
    6635 "triplet : expr ':'", 
    6636 "triplet : ':'", 
    6637 "ident : TOK_NAME", 
    6638 "simple_const : TOK_TRUE", 
    6639 "simple_const : TOK_FALSE", 
    6640 "simple_const : TOK_CSTINT", 
    6641 "simple_const : TOK_CSTREAL", 
    6642 "simple_const : TOK_CSTREALDP", 
    6643 "simple_const : TOK_CSTREALQP", 
    6644 "simple_const : simple_const TOK_NAME", 
    6645 "simple_const : string_constant opt_substring", 
    6646 "string_constant : TOK_CHAR_CONSTANT", 
    6647 "string_constant : string_constant TOK_CHAR_CONSTANT", 
    6648 "string_constant : TOK_CHAR_MESSAGE", 
    6649 "string_constant : TOK_CHAR_CUT", 
    6650 "opt_substring :", 
    6651 "opt_substring : substring", 
    6652 "substring : '(' optexpr ':' optexpr ')'", 
    6653 "optexpr :", 
    6654 "optexpr : expr", 
    6655 "opt_expr : '\\n'", 
    6656 "opt_expr : expr", 
    6657 "initial_value :", 
    6658 "initial_value : before_initial '=' expr", 
    6659 "before_initial :", 
    6660 "complex_const : '(' uexpr ',' uexpr ')'", 
    6661 "use_stat : word_use module_name", 
    6662 "use_stat : word_use module_name ',' rename_list", 
    6663 "use_stat : word_use module_name ',' TOK_ONLY ':' '\\n'", 
    6664 "use_stat : word_use module_name ',' TOK_ONLY ':' only_list", 
    6665 "word_use : TOK_USE", 
    6666 "module_name : TOK_NAME", 
    6667 "rename_list : rename_name", 
    6668 "rename_list : rename_list ',' rename_name", 
    6669 "rename_name : TOK_NAME TOK_POINT_TO TOK_NAME", 
    6670 "only_list : only_name", 
    6671 "only_list : only_list ',' only_name", 
    6672 "only_name : TOK_NAME TOK_POINT_TO TOK_NAME", 
    6673 "only_name : TOK_NAME", 
    6674 "exec : iffable", 
    6675 "exec : TOK_ALLOCATE '(' allocation_list opt_stat_spec ')'", 
    6676 "exec : TOK_DEALLOCATE '(' allocate_object_list opt_stat_spec ')'", 
    6677 "exec : TOK_NULLIFY '(' pointer_name_list ')'", 
    6678 "exec : word_endunit", 
    6679 "exec : word_endprogram opt_name", 
    6680 "exec : word_endsubroutine opt_name", 
    6681 "exec : word_endfunction opt_name", 
    6682 "exec : TOK_ENDMODULE opt_name", 
    6683 "exec : boucledo", 
    6684 "exec : logif iffable", 
    6685 "exec : TOK_WHERE '(' expr ')' opt_expr", 
    6686 "exec : TOK_ELSEWHERE", 
    6687 "exec : TOK_ENDWHERE", 
    6688 "exec : logif TOK_THEN", 
    6689 "exec : TOK_ELSEIF '(' expr ')' TOK_THEN", 
    6690 "exec : TOK_ELSE", 
    6691 "exec : TOK_ENDIF opt_name", 
    6692 "exec : TOK_CASE caselist ')'", 
    6693 "exec : TOK_SELECTCASE '(' expr ')'", 
    6694 "exec : TOK_CASEDEFAULT", 
    6695 "exec : TOK_ENDSELECT", 
    6696 "exec : TOK_CONTAINS", 
    6697 "word_endsubroutine : TOK_ENDSUBROUTINE", 
    6698 "word_endunit : TOK_ENDUNIT", 
    6699 "word_endprogram : TOK_ENDPROGRAM", 
    6700 "word_endfunction : TOK_ENDFUNCTION", 
    6701 "caselist : expr", 
    6702 "caselist : caselist ',' expr", 
    6703 "caselist : caselist ':' expr", 
    6704 "boucledo : worddo opt_int do_arg", 
    6705 "boucledo : wordwhile expr", 
    6706 "boucledo : TOK_ENDDO optname", 
    6707 "do_arg :", 
    6708 "do_arg : do_var '=' expr ',' expr", 
    6709 "do_arg : do_var '=' expr ',' expr ',' expr", 
    6710 "opt_int :", 
    6711 "opt_int : TOK_CSTINT opt_comma", 
    6712 "opt_name : '\\n'", 
    6713 "opt_name : TOK_NAME", 
    6714 "optname :", 
    6715 "optname : TOK_NAME", 
    6716 "worddo : TOK_PLAINDO", 
    6717 "wordwhile : TOK_DOWHILE", 
    6718 "dotarget :", 
    6719 "dotarget : TOK_CSTINT", 
    6720 "iffable : TOK_CONTINUE", 
    6721 "iffable : ident_dims after_ident_dims", 
    6722 "iffable : goto", 
    6723 "iffable : io", 
    6724 "iffable : call", 
    6725 "iffable : TOK_ALLOCATE '(' allocation_list opt_stat_spec ')'", 
    6726 "iffable : TOK_DEALLOCATE '(' allocate_object_list opt_stat_spec ')'", 
    6727 "iffable : TOK_EXIT optexpr", 
    6728 "iffable : TOK_RETURN opt_expr", 
    6729 "iffable : TOK_CYCLE opt_expr", 
    6730 "iffable : stop opt_expr", 
    6731 "iffable : int_list", 
    6732 "before_dims :", 
    6733 "ident_dims : ident before_dims dims dims", 
    6734 "ident_dims : ident_dims '%' ident before_dims dims dims", 
    6735 "int_list : TOK_CSTINT", 
    6736 "int_list : int_list ',' TOK_CSTINT", 
    6737 "after_ident_dims : '=' expr", 
    6738 "after_ident_dims : TOK_POINT_TO expr", 
    6739 "call : keywordcall opt_call", 
    6740 "opt_call :", 
    6741 "opt_call : '(' opt_callarglist ')'", 
    6742 "opt_callarglist :", 
    6743 "opt_callarglist : callarglist", 
    6744 "keywordcall : before_call TOK_NAME", 
    6745 "before_call : TOK_CALL", 
    6746 "callarglist : callarg", 
    6747 "callarglist : callarglist ',' callarg", 
    6748 "callarg : expr", 
    6749 "callarg : '*' label", 
    6750 "stop : TOK_PAUSE", 
    6751 "stop : TOK_STOP", 
    6752 "io : iofctl ioctl", 
    6753 "io : read option_read", 
    6754 "io : write ioctl", 
    6755 "io : write ioctl outlist", 
    6756 "io : TOK_REWIND after_rewind", 
    6757 "io : TOK_FORMAT", 
    6758 "opt_CHAR_INT :", 
    6759 "opt_CHAR_INT : TOK_CSTINT TOK_NAME", 
    6760 "idfile : '*'", 
    6761 "idfile : TOK_CSTINT", 
    6762 "idfile : ident", 
    6763 "option_print :", 
    6764 "option_print : ',' outlist", 
    6765 "option_inlist :", 
    6766 "option_inlist : inlist", 
    6767 "option_read : ioctl option_inlist", 
    6768 "option_read : infmt opt_inlist", 
    6769 "opt_outlist :", 
    6770 "opt_outlist : outlist", 
    6771 "opt_inlist :", 
    6772 "opt_inlist : ',' inlist", 
    6773 "ioctl : '(' ctllist ')'", 
    6774 "ioctl : '(' fexpr ')'", 
    6775 "after_rewind : '(' ident ')'", 
    6776 "after_rewind : '(' TOK_CSTINT ')'", 
    6777 "after_rewind : TOK_CSTINT", 
    6778 "after_rewind : '(' uexpr ')'", 
    6779 "after_rewind : TOK_NAME", 
    6780 "ctllist : ioclause", 
    6781 "ctllist : ctllist ',' ioclause", 
    6782 "ioclause : fexpr", 
    6783 "ioclause : '*'", 
    6784 "ioclause : TOK_DASTER", 
    6785 "ioclause : TOK_NAME expr", 
    6786 "ioclause : TOK_NAME expr '%' ident_dims", 
    6787 "ioclause : TOK_NAME '(' triplet ')'", 
    6788 "ioclause : TOK_NAME '*'", 
    6789 "ioclause : TOK_NAME TOK_DASTER", 
    6790 "iofctl : TOK_OPEN", 
    6791 "iofctl : TOK_CLOSE", 
    6792 "infmt : unpar_fexpr", 
    6793 "infmt : '*'", 
    6794 "read : TOK_READ", 
    6795 "read : TOK_INQUIRE", 
    6796 "read : TOK_PRINT", 
    6797 "write : TOK_WRITE", 
    6798 "fexpr : unpar_fexpr", 
    6799 "fexpr : '(' fexpr ')'", 
    6800 "unpar_fexpr : lhs", 
    6801 "unpar_fexpr : simple_const", 
    6802 "unpar_fexpr : fexpr addop fexpr", 
    6803 "unpar_fexpr : fexpr '*' fexpr", 
    6804 "unpar_fexpr : fexpr TOK_SLASH fexpr", 
    6805 "unpar_fexpr : fexpr TOK_DASTER fexpr", 
    6806 "unpar_fexpr : addop fexpr", 
    6807 "unpar_fexpr : fexpr TOK_DSLASH fexpr", 
    6808 "unpar_fexpr : TOK_FILE expr", 
    6809 "unpar_fexpr : TOK_EXIST expr", 
    6810 "unpar_fexpr : TOK_ERR expr", 
    6811 "unpar_fexpr : TOK_END expr", 
    6812 "unpar_fexpr : TOK_NAME '=' expr", 
    6813 "addop : '+'", 
    6814 "addop : '-'", 
    6815 "inlist : inelt", 
    6816 "inlist : inlist ',' inelt", 
    6817 "opt_lhs :", 
    6818 "opt_lhs : lhs", 
    6819 "inelt : opt_lhs opt_operation", 
    6820 "inelt : '(' inlist ')' opt_operation", 
    6821 "inelt : predefinedfunction opt_operation", 
    6822 "inelt : simple_const opt_operation", 
    6823 "inelt : '(' inlist ',' dospec ')'", 
    6824 "opt_operation :", 
    6825 "opt_operation : operation", 
    6826 "opt_operation : opt_operation operation", 
    6827 "outlist : uexpr", 
    6828 "outlist : other", 
    6829 "outlist : out2", 
    6830 "out2 : uexpr ',' expr", 
    6831 "out2 : uexpr ',' other", 
    6832 "out2 : other ',' expr", 
    6833 "out2 : other ',' other", 
    6834 "out2 : out2 ',' expr", 
    6835 "out2 : out2 ',' other", 
    6836 "out2 : uexpr", 
    6837 "out2 : predefinedfunction", 
    6838 "other : complex_const", 
    6839 "other : '(' expr ')'", 
    6840 "other : '(' uexpr ',' dospec ')'", 
    6841 "other : '(' other ',' dospec ')'", 
    6842 "other : '(' out2 ',' dospec ')'", 
    6843 "dospec : TOK_NAME '=' expr ',' expr", 
    6844 "dospec : TOK_NAME '=' expr ',' expr ',' expr", 
    6845 "labellist : label", 
    6846 "labellist : labellist ',' label", 
    6847 "label : TOK_CSTINT", 
    6848 "goto : TOK_PLAINGOTO '(' expr ',' expr ')' ',' expr", 
    6849 "goto : TOK_PLAINGOTO label", 
    6850 "allocation_list : allocate_object", 
    6851 "allocation_list : ident_dims", 
    6852 "allocation_list : allocation_list ',' allocate_object", 
    6853 "allocate_object : ident", 
    6854 "allocate_object : structure_component", 
    6855 "allocate_object : array_element", 
    6856 "array_element : ident '(' funargs ')'", 
    6857 "subscript_list : expr", 
    6858 "subscript_list : subscript_list ',' expr", 
    6859 "allocate_object_list : allocate_object", 
    6860 "allocate_object_list : allocate_object_list ',' allocate_object", 
    6861 "opt_stat_spec :", 
    6862 "opt_stat_spec : ',' TOK_STAT '=' ident", 
    6863 "pointer_name_list : ident", 
    6864 "pointer_name_list : pointer_name_list ',' ident", 
    6865 "opt_construct_name :", 
    6866 "opt_construct_name : TOK_NAME", 
    6867 "opt_construct_name_colon :", 
    6868 "opt_construct_name_colon : TOK_CONSTRUCTID ':'", 
    6869 "logif : TOK_LOGICALIF expr ')'", 
    6870 "do_var : ident", 
    6871 }; 
     2949 
     2950# ifndef YYFPRINTF 
     2951#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */ 
     2952#  define YYFPRINTF fprintf 
     2953# endif 
     2954 
     2955# define YYDPRINTF(Args)         \ 
     2956do {                 \ 
     2957  if (yydebug)             \ 
     2958    YYFPRINTF Args;           \ 
     2959} while (YYID (0)) 
     2960 
     2961# define YY_SYMBOL_PRINT(Title, Type, Value, Location)           \ 
     2962do {                            \ 
     2963  if (yydebug)                        \ 
     2964    {                           \ 
     2965      YYFPRINTF (stderr, "%s ", Title);                 \ 
     2966      yy_symbol_print (stderr,                    \ 
     2967        Type, Value); \ 
     2968      YYFPRINTF (stderr, "\n");                   \ 
     2969    }                           \ 
     2970} while (YYID (0)) 
     2971 
     2972 
     2973/*--------------------------------. 
     2974| Print this symbol on YYOUTPUT.  | 
     2975`--------------------------------*/ 
     2976 
     2977/*ARGSUSED*/ 
     2978#if (defined __STDC__ || defined __C99__FUNC__ \ 
     2979     || defined __cplusplus || defined _MSC_VER) 
     2980static void 
     2981yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 
     2982#else 
     2983static void 
     2984yy_symbol_value_print (yyoutput, yytype, yyvaluep) 
     2985    FILE *yyoutput; 
     2986    int yytype; 
     2987    YYSTYPE const * const yyvaluep; 
    68722988#endif 
    6873 #ifdef YYSTACKSIZE 
    6874 #undef YYMAXDEPTH 
    6875 #define YYMAXDEPTH YYSTACKSIZE 
     2989{ 
     2990  if (!yyvaluep) 
     2991    return; 
     2992# ifdef YYPRINT 
     2993  if (yytype < YYNTOKENS) 
     2994    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); 
     2995# else 
     2996  YYUSE (yyoutput); 
     2997# endif 
     2998  switch (yytype) 
     2999    { 
     3000      default: 
     3001   break; 
     3002    } 
     3003} 
     3004 
     3005 
     3006/*--------------------------------. 
     3007| Print this symbol on YYOUTPUT.  | 
     3008`--------------------------------*/ 
     3009 
     3010#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3011     || defined __cplusplus || defined _MSC_VER) 
     3012static void 
     3013yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 
    68763014#else 
    6877 #ifdef YYMAXDEPTH 
    6878 #define YYSTACKSIZE YYMAXDEPTH 
     3015static void 
     3016yy_symbol_print (yyoutput, yytype, yyvaluep) 
     3017    FILE *yyoutput; 
     3018    int yytype; 
     3019    YYSTYPE const * const yyvaluep; 
     3020#endif 
     3021{ 
     3022  if (yytype < YYNTOKENS) 
     3023    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); 
     3024  else 
     3025    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); 
     3026 
     3027  yy_symbol_value_print (yyoutput, yytype, yyvaluep); 
     3028  YYFPRINTF (yyoutput, ")"); 
     3029} 
     3030 
     3031/*------------------------------------------------------------------. 
     3032| yy_stack_print -- Print the state stack from its BOTTOM up to its | 
     3033| TOP (included).                                                   | 
     3034`------------------------------------------------------------------*/ 
     3035 
     3036#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3037     || defined __cplusplus || defined _MSC_VER) 
     3038static void 
     3039yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) 
    68793040#else 
    6880 #define YYSTACKSIZE 500 
    6881 #define YYMAXDEPTH 500 
     3041static void 
     3042yy_stack_print (bottom, top) 
     3043    yytype_int16 *bottom; 
     3044    yytype_int16 *top; 
    68823045#endif 
     3046{ 
     3047  YYFPRINTF (stderr, "Stack now"); 
     3048  for (; bottom <= top; ++bottom) 
     3049    YYFPRINTF (stderr, " %d", *bottom); 
     3050  YYFPRINTF (stderr, "\n"); 
     3051} 
     3052 
     3053# define YY_STACK_PRINT(Bottom, Top)            \ 
     3054do {                       \ 
     3055  if (yydebug)                   \ 
     3056    yy_stack_print ((Bottom), (Top));           \ 
     3057} while (YYID (0)) 
     3058 
     3059 
     3060/*------------------------------------------------. 
     3061| Report that the YYRULE is going to be reduced.  | 
     3062`------------------------------------------------*/ 
     3063 
     3064#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3065     || defined __cplusplus || defined _MSC_VER) 
     3066static void 
     3067yy_reduce_print (YYSTYPE *yyvsp, int yyrule) 
     3068#else 
     3069static void 
     3070yy_reduce_print (yyvsp, yyrule) 
     3071    YYSTYPE *yyvsp; 
     3072    int yyrule; 
    68833073#endif 
     3074{ 
     3075  int yynrhs = yyr2[yyrule]; 
     3076  int yyi; 
     3077  unsigned long int yylno = yyrline[yyrule]; 
     3078  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", 
     3079        yyrule - 1, yylno); 
     3080  /* The symbols being reduced.  */ 
     3081  for (yyi = 0; yyi < yynrhs; yyi++) 
     3082    { 
     3083      fprintf (stderr, "   $%d = ", yyi + 1); 
     3084      yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], 
     3085             &(yyvsp[(yyi + 1) - (yynrhs)]) 
     3086                         ); 
     3087      fprintf (stderr, "\n"); 
     3088    } 
     3089} 
     3090 
     3091# define YY_REDUCE_PRINT(Rule)      \ 
     3092do {              \ 
     3093  if (yydebug)          \ 
     3094    yy_reduce_print (yyvsp, Rule); \ 
     3095} while (YYID (0)) 
     3096 
     3097/* Nonzero means print parse trace.  It is left uninitialized so that 
     3098   multiple parsers can coexist.  */ 
    68843099int yydebug; 
    6885 int yynerrs; 
    6886 int yyerrflag; 
    6887 int yychar; 
    6888 short *yyssp; 
    6889 YYSTYPE *yyvsp; 
    6890 YYSTYPE yyval; 
    6891 YYSTYPE yylval; 
    6892 short yyss[YYSTACKSIZE]; 
    6893 YYSTYPE yyvs[YYSTACKSIZE]; 
    6894 #define yystacksize YYSTACKSIZE 
    6895 #line 2567 "fortran.y" 
    6896  
    6897 void processfortran(char *fichier_entree) 
     3100#else /* !YYDEBUG */ 
     3101# define YYDPRINTF(Args) 
     3102# define YY_SYMBOL_PRINT(Title, Type, Value, Location) 
     3103# define YY_STACK_PRINT(Bottom, Top) 
     3104# define YY_REDUCE_PRINT(Rule) 
     3105#endif /* !YYDEBUG */ 
     3106 
     3107 
     3108/* YYINITDEPTH -- initial size of the parser's stacks.  */ 
     3109#ifndef  YYINITDEPTH 
     3110# define YYINITDEPTH 200 
     3111#endif 
     3112 
     3113/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only 
     3114   if the built-in stack extension method is used). 
     3115 
     3116   Do not make this value too large; the results are undefined if 
     3117   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) 
     3118   evaluated with infinite-precision integer arithmetic.  */ 
     3119 
     3120#ifndef YYMAXDEPTH 
     3121# define YYMAXDEPTH 10000 
     3122#endif 
     3123 
     3124 
     3125 
     3126 
     3127#if YYERROR_VERBOSE 
     3128 
     3129# ifndef yystrlen 
     3130#  if defined __GLIBC__ && defined _STRING_H 
     3131#   define yystrlen strlen 
     3132#  else 
     3133/* Return the length of YYSTR.  */ 
     3134#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3135     || defined __cplusplus || defined _MSC_VER) 
     3136static YYSIZE_T 
     3137yystrlen (const char *yystr) 
     3138#else 
     3139static YYSIZE_T 
     3140yystrlen (yystr) 
     3141    const char *yystr; 
     3142#endif 
    68983143{ 
    6899    extern FILE *fortranin; 
    6900    extern FILE *fortranout; 
    6901    char nomfile[LONG_C]; 
    6902    int c; 
    6903    int confirmyes; 
    6904  
    6905    /*fortrandebug = 1;*/ 
    6906    if ( mark == 1 ) printf("Firstpass == %d \n",firstpass); 
    6907 /******************************************************************************/ 
    6908 /*  1-  Open input and output files                                           */ 
    6909 /******************************************************************************/ 
    6910    strcpy(nomfile,commondirin); 
    6911    strcat(nomfile,"/"); 
    6912    strcat(nomfile,fichier_entree); 
    6913    fortranin=fopen( nomfile,"r"); 
    6914    if (! fortranin) 
     3144  YYSIZE_T yylen; 
     3145  for (yylen = 0; yystr[yylen]; yylen++) 
     3146    continue; 
     3147  return yylen; 
     3148} 
     3149#  endif 
     3150# endif 
     3151 
     3152# ifndef yystpcpy 
     3153#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 
     3154#   define yystpcpy stpcpy 
     3155#  else 
     3156/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in 
     3157   YYDEST.  */ 
     3158#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3159     || defined __cplusplus || defined _MSC_VER) 
     3160static char * 
     3161yystpcpy (char *yydest, const char *yysrc) 
     3162#else 
     3163static char * 
     3164yystpcpy (yydest, yysrc) 
     3165    char *yydest; 
     3166    const char *yysrc; 
     3167#endif 
     3168{ 
     3169  char *yyd = yydest; 
     3170  const char *yys = yysrc; 
     3171 
     3172  while ((*yyd++ = *yys++) != '\0') 
     3173    continue; 
     3174 
     3175  return yyd - 1; 
     3176} 
     3177#  endif 
     3178# endif 
     3179 
     3180# ifndef yytnamerr 
     3181/* Copy to YYRES the contents of YYSTR after stripping away unnecessary 
     3182   quotes and backslashes, so that it's suitable for yyerror.  The 
     3183   heuristic is that double-quoting is unnecessary unless the string 
     3184   contains an apostrophe, a comma, or backslash (other than 
     3185   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is 
     3186   null, do not copy; instead, return the length of what the result 
     3187   would have been.  */ 
     3188static YYSIZE_T 
     3189yytnamerr (char *yyres, const char *yystr) 
     3190{ 
     3191  if (*yystr == '"') 
    69153192   { 
    6916       printf("Error : File %s does not exist\n",nomfile); 
    6917       exit(1); 
     3193      YYSIZE_T yyn = 0; 
     3194      char const *yyp = yystr; 
     3195 
     3196      for (;;) 
     3197   switch (*++yyp) 
     3198     { 
     3199     case '\'': 
     3200     case ',': 
     3201       goto do_not_strip_quotes; 
     3202 
     3203     case '\\': 
     3204       if (*++yyp != '\\') 
     3205         goto do_not_strip_quotes; 
     3206       /* Fall through.  */ 
     3207     default: 
     3208       if (yyres) 
     3209         yyres[yyn] = *yyp; 
     3210       yyn++; 
     3211       break; 
     3212 
     3213     case '"': 
     3214       if (yyres) 
     3215         yyres[yyn] = '\0'; 
     3216       return yyn; 
    69183217   } 
    6919  
    6920    strcpy(curfile,nomfile); 
    6921    strcpy(nomfile,commondirout); 
    6922    strcat(nomfile,"/"); 
    6923    strcat(nomfile,fichier_entree); 
    6924    strcpy(nomfileoutput,nomfile); 
    6925    Save_Length(nomfileoutput,31); 
    6926    if (firstpass == 1) 
     3218    do_not_strip_quotes: ; 
     3219    } 
     3220 
     3221  if (! yyres) 
     3222    return yystrlen (yystr); 
     3223 
     3224  return yystpcpy (yyres, yystr) - yyres; 
     3225} 
     3226# endif 
     3227 
     3228/* Copy into YYRESULT an error message about the unexpected token 
     3229   YYCHAR while in state YYSTATE.  Return the number of bytes copied, 
     3230   including the terminating null byte.  If YYRESULT is null, do not 
     3231   copy anything; just return the number of bytes that would be 
     3232   copied.  As a special case, return 0 if an ordinary "syntax error" 
     3233   message will do.  Return YYSIZE_MAXIMUM if overflow occurs during 
     3234   size calculation.  */ 
     3235static YYSIZE_T 
     3236yysyntax_error (char *yyresult, int yystate, int yychar) 
     3237{ 
     3238  int yyn = yypact[yystate]; 
     3239 
     3240  if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) 
     3241    return 0; 
     3242  else 
    69273243   { 
    6928       if (checkexistcommon == 1) 
     3244      int yytype = YYTRANSLATE (yychar); 
     3245      YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); 
     3246      YYSIZE_T yysize = yysize0; 
     3247      YYSIZE_T yysize1; 
     3248      int yysize_overflow = 0; 
     3249      enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; 
     3250      char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; 
     3251      int yyx; 
     3252 
     3253# if 0 
     3254      /* This is so xgettext sees the translatable formats that are 
     3255    constructed on the fly.  */ 
     3256      YY_("syntax error, unexpected %s"); 
     3257      YY_("syntax error, unexpected %s, expecting %s"); 
     3258      YY_("syntax error, unexpected %s, expecting %s or %s"); 
     3259      YY_("syntax error, unexpected %s, expecting %s or %s or %s"); 
     3260      YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); 
     3261# endif 
     3262      char *yyfmt; 
     3263      char const *yyf; 
     3264      static char const yyunexpected[] = "syntax error, unexpected %s"; 
     3265      static char const yyexpecting[] = ", expecting %s"; 
     3266      static char const yyor[] = " or %s"; 
     3267      char yyformat[sizeof yyunexpected 
     3268          + sizeof yyexpecting - 1 
     3269          + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) 
     3270             * (sizeof yyor - 1))]; 
     3271      char const *yyprefix = yyexpecting; 
     3272 
     3273      /* Start YYX at -YYN if negative to avoid negative indexes in 
     3274    YYCHECK.  */ 
     3275      int yyxbegin = yyn < 0 ? -yyn : 0; 
     3276 
     3277      /* Stay within bounds of both yycheck and yytname.  */ 
     3278      int yychecklim = YYLAST - yyn + 1; 
     3279      int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; 
     3280      int yycount = 1; 
     3281 
     3282      yyarg[0] = yytname[yytype]; 
     3283      yyfmt = yystpcpy (yyformat, yyunexpected); 
     3284 
     3285      for (yyx = yyxbegin; yyx < yyxend; ++yyx) 
     3286   if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) 
    69293287      { 
    6930          if (fopen(nomfile,"r")) 
     3288       if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) 
    69313289         { 
    6932             printf("Warning : file %s already exist\n",nomfile); 
    6933             confirmyes = 0; 
    6934             while (confirmyes==0) 
     3290      yycount = 1; 
     3291      yysize = yysize0; 
     3292      yyformat[sizeof yyunexpected - 1] = '\0'; 
     3293      break; 
     3294         } 
     3295       yyarg[yycount++] = yytname[yyx]; 
     3296       yysize1 = yysize + yytnamerr (0, yytname[yyx]); 
     3297       yysize_overflow |= (yysize1 < yysize); 
     3298       yysize = yysize1; 
     3299       yyfmt = yystpcpy (yyfmt, yyprefix); 
     3300       yyprefix = yyor; 
     3301     } 
     3302 
     3303      yyf = YY_(yyformat); 
     3304      yysize1 = yysize + yystrlen (yyf); 
     3305      yysize_overflow |= (yysize1 < yysize); 
     3306      yysize = yysize1; 
     3307 
     3308      if (yysize_overflow) 
     3309   return YYSIZE_MAXIMUM; 
     3310 
     3311      if (yyresult) 
    69353312            { 
    6936                printf("Override file %s ? [Y/N]\n",nomfile); 
    6937                c=getchar(); 
    6938                getchar(); 
    6939                if (c==79 || c==110) 
     3313     /* Avoid sprintf, as that infringes on the user's name space. 
     3314        Don't have undefined behavior even if the translation 
     3315        produced a string with the wrong number of "%s"s.  */ 
     3316     char *yyp = yyresult; 
     3317     int yyi = 0; 
     3318     while ((*yyp = *yyf) != '\0') 
    69403319               { 
    6941                   printf("We stop\n"); 
    6942                   exit(1); 
     3320         if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) 
     3321      { 
     3322        yyp += yytnamerr (yyp, yyarg[yyi++]); 
     3323        yyf += 2; 
    69433324               } 
    6944                if (c==89 || c==121) 
     3325         else 
    69453326               { 
    6946                   confirmyes=1; 
     3327        yyp++; 
     3328        yyf++; 
    69473329               } 
    69483330            } 
    69493331         } 
     3332      return yysize; 
    69503333      } 
     3334} 
     3335#endif /* YYERROR_VERBOSE */ 
     3336 
     3337 
     3338 
     3339/*-----------------------------------------------. 
     3340| Release the memory associated to this symbol.  | 
     3341`-----------------------------------------------*/ 
     3342 
     3343/*ARGSUSED*/ 
     3344#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3345     || defined __cplusplus || defined _MSC_VER) 
     3346static void 
     3347yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) 
     3348#else 
     3349static void 
     3350yydestruct (yymsg, yytype, yyvaluep) 
     3351    const char *yymsg; 
     3352    int yytype; 
     3353    YYSTYPE *yyvaluep; 
     3354#endif 
     3355{ 
     3356  YYUSE (yyvaluep); 
     3357 
     3358  if (!yymsg) 
     3359    yymsg = "Deleting"; 
     3360  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); 
     3361 
     3362  switch (yytype) 
     3363   { 
     3364 
     3365      default: 
     3366   break; 
    69513367   } 
    6952  
    6953 /******************************************************************************/ 
    6954 /*  2-  Variables initialization                                              */ 
    6955 /******************************************************************************/ 
    6956  
    6957    line_num_fortran_common=1; 
    6958    line_num_fortran=1; 
    6959    PublicDeclare = 0; 
    6960    PrivateDeclare = 0; 
    6961    ExternalDeclare = 0; 
    6962    SaveDeclare = 0; 
    6963    pointerdeclare = 0; 
    6964    optionaldeclare = 0; 
    6965    incalldeclare = 0; 
    6966    VarType = 0; 
    6967    VarTypepar = 0; 
    6968    Allocatabledeclare = 0 ; 
    6969    strcpy(NamePrecision," "); 
    6970    VariableIsParameter =  0 ; 
    6971    strcpy(NamePrecision,""); 
    6972    c_star = 0 ; 
    6973    functiondeclarationisdone = 0; 
    6974    insubroutinedeclare = 0 ; 
    6975    strcpy(subroutinename," "); 
    6976    InitialValueGiven = 0 ; 
    6977    strcpy(EmptyChar," "); 
    6978    inmoduledeclare = 0; 
    6979    colnum=0; 
    6980    incom=0; 
    6981    couldaddvariable=1; 
    6982    aftercontainsdeclare = 1; 
    6983    strcpy(nameinttypename,""); 
    6984    /* Name of the file without format                                         */ 
    6985    tmp = strchr(fichier_entree, '.'); 
    6986    strncpy(curfilename,fichier_entree,strlen(fichier_entree)-strlen(tmp)); 
    6987    Save_Length(curfilename,30); 
    6988 /******************************************************************************/ 
    6989 /*  3-  Parsing of the input file (1 time)                                    */ 
    6990 /******************************************************************************/ 
    6991    if (firstpass == 0 ) 
    6992    { 
    6993       fortranout=fopen(nomfileoutput,"w"); 
    6994  
    6995       NewModule_Creation_0(); 
    6996    } 
    6997  
    6998    fortranparse(); 
    6999  
    7000    strcpy(curfile,mainfile); 
    7001  
    7002    if (firstpass == 0 ) fclose(fortranout); 
    70033368} 
    7004 #line 7005 "y.tab.c" 
    7005 #define YYABORT goto yyabort 
    7006 #define YYREJECT goto yyabort 
    7007 #define YYACCEPT goto yyaccept 
    7008 #define YYERROR goto yyerrlab 
     3369 
     3370 
     3371 
     3372/* Prevent warnings from -Wmissing-prototypes.  */ 
     3373 
     3374#ifdef YYPARSE_PARAM 
     3375#if defined __STDC__ || defined __cplusplus 
     3376int yyparse (void *YYPARSE_PARAM); 
     3377#else 
     3378int yyparse (); 
     3379#endif 
     3380#else /* ! YYPARSE_PARAM */ 
     3381#if defined __STDC__ || defined __cplusplus 
     3382int yyparse (void); 
     3383#else 
     3384int yyparse (); 
     3385#endif 
     3386#endif /* ! YYPARSE_PARAM */ 
     3387 
     3388 
     3389 
     3390/* The look-ahead symbol.  */ 
     3391int yychar; 
     3392 
     3393/* The semantic value of the look-ahead symbol.  */ 
     3394YYSTYPE yylval; 
     3395 
     3396/* Number of syntax errors so far.  */ 
     3397int yynerrs; 
     3398 
     3399 
     3400 
     3401/*----------. 
     3402| yyparse.  | 
     3403`----------*/ 
     3404 
     3405#ifdef YYPARSE_PARAM 
     3406#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3407     || defined __cplusplus || defined _MSC_VER) 
    70093408int 
    7010 yyparse() 
     3409yyparse (void *YYPARSE_PARAM) 
     3410#else 
     3411int 
     3412yyparse (YYPARSE_PARAM) 
     3413    void *YYPARSE_PARAM; 
     3414#endif 
     3415#else /* ! YYPARSE_PARAM */ 
     3416#if (defined __STDC__ || defined __C99__FUNC__ \ 
     3417     || defined __cplusplus || defined _MSC_VER) 
     3418int 
     3419yyparse (void) 
     3420#else 
     3421int 
     3422yyparse () 
     3423 
     3424#endif 
     3425#endif 
    70113426{ 
    7012     register int yym, yyn, yystate; 
    7013 #if YYDEBUG 
    7014     register char *yys; 
    7015     extern char *getenv(); 
    7016  
    7017     if (yys = getenv("YYDEBUG")) 
    7018     { 
    7019         yyn = *yys; 
    7020         if (yyn >= '0' && yyn <= '9') 
    7021             yydebug = yyn - '0'; 
    7022     } 
     3427   
     3428  int yystate; 
     3429  int yyn; 
     3430  int yyresult; 
     3431  /* Number of tokens to shift before error messages enabled.  */ 
     3432  int yyerrstatus; 
     3433  /* Look-ahead token as an internal (translated) token number.  */ 
     3434  int yytoken = 0; 
     3435#if YYERROR_VERBOSE 
     3436  /* Buffer for error messages, and its allocated size.  */ 
     3437  char yymsgbuf[128]; 
     3438  char *yymsg = yymsgbuf; 
     3439  YYSIZE_T yymsg_alloc = sizeof yymsgbuf; 
    70233440#endif 
    70243441 
     3442  /* Three stacks and their tools: 
     3443     `yyss': related to states, 
     3444     `yyvs': related to semantic values, 
     3445     `yyls': related to locations. 
     3446 
     3447     Refer to the stacks thru separate pointers, to allow yyoverflow 
     3448     to reallocate them elsewhere.  */ 
     3449 
     3450  /* The state stack.  */ 
     3451  yytype_int16 yyssa[YYINITDEPTH]; 
     3452  yytype_int16 *yyss = yyssa; 
     3453  yytype_int16 *yyssp; 
     3454 
     3455  /* The semantic value stack.  */ 
     3456  YYSTYPE yyvsa[YYINITDEPTH]; 
     3457  YYSTYPE *yyvs = yyvsa; 
     3458  YYSTYPE *yyvsp; 
     3459 
     3460 
     3461 
     3462#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N)) 
     3463 
     3464  YYSIZE_T yystacksize = YYINITDEPTH; 
     3465 
     3466  /* The variables used to return semantic value and location from the 
     3467     action routines.  */ 
     3468  YYSTYPE yyval; 
     3469 
     3470 
     3471  /* The number of symbols on the RHS of the reduced rule. 
     3472     Keep to zero when no symbol should be popped.  */ 
     3473  int yylen = 0; 
     3474 
     3475  YYDPRINTF ((stderr, "Starting parse\n")); 
     3476 
     3477  yystate = 0; 
     3478  yyerrstatus = 0; 
    70253479    yynerrs = 0; 
    7026     yyerrflag = 0; 
    7027     yychar = (-1); 
     3480  yychar = YYEMPTY;     /* Cause a token to be read.  */ 
     3481 
     3482  /* Initialize stack pointers. 
     3483     Waste one element of value and location stack 
     3484     so that they stay on the same level as the state stack. 
     3485     The wasted elements are never initialized.  */ 
    70283486 
    70293487    yyssp = yyss; 
    70303488    yyvsp = yyvs; 
    7031     *yyssp = yystate = 0; 
    7032  
    7033 yyloop: 
    7034     if (yyn = yydefred[yystate]) goto yyreduce; 
    7035     if (yychar < 0) 
    7036     { 
    7037         if ((yychar = yylex()) < 0) yychar = 0; 
    7038 #if YYDEBUG 
    7039         if (yydebug) 
     3489 
     3490  goto yysetstate; 
     3491 
     3492/*------------------------------------------------------------. 
     3493| yynewstate -- Push a new state, which is found in yystate.  | 
     3494`------------------------------------------------------------*/ 
     3495 yynewstate: 
     3496  /* In all cases, when you get here, the value and location stacks 
     3497     have just been pushed.  So pushing a state here evens the stacks.  */ 
     3498  yyssp++; 
     3499 
     3500 yysetstate: 
     3501  *yyssp = yystate; 
     3502 
     3503  if (yyss + yystacksize - 1 <= yyssp) 
     3504    { 
     3505      /* Get the current used size of the three stacks, in elements.  */ 
     3506      YYSIZE_T yysize = yyssp - yyss + 1; 
     3507 
     3508#ifdef yyoverflow 
    70403509        { 
    7041             yys = 0; 
    7042             if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; 
    7043             if (!yys) yys = "illegal-symbol"; 
    7044             printf("%sdebug: state %d, reading %d (%s)\n", 
    7045                     YYPREFIX, yystate, yychar, yys); 
     3510   /* Give user a chance to reallocate the stack.  Use copies of 
     3511      these so that the &'s don't force the real ones into 
     3512      memory.  */ 
     3513   YYSTYPE *yyvs1 = yyvs; 
     3514   yytype_int16 *yyss1 = yyss; 
     3515 
     3516 
     3517   /* Each stack pointer address is followed by the size of the 
     3518      data in use in that stack, in bytes.  This used to be a 
     3519      conditional around just the two extra args, but that might 
     3520      be undefined if yyoverflow is a macro.  */ 
     3521   yyoverflow (YY_("memory exhausted"), 
     3522          &yyss1, yysize * sizeof (*yyssp), 
     3523          &yyvs1, yysize * sizeof (*yyvsp), 
     3524 
     3525          &yystacksize); 
     3526 
     3527   yyss = yyss1; 
     3528   yyvs = yyvs1; 
    70463529        } 
    7047 #endif 
     3530#else /* no yyoverflow */ 
     3531# ifndef YYSTACK_RELOCATE 
     3532      goto yyexhaustedlab; 
     3533# else 
     3534      /* Extend the stack our own way.  */ 
     3535      if (YYMAXDEPTH <= yystacksize) 
     3536   goto yyexhaustedlab; 
     3537      yystacksize *= 2; 
     3538      if (YYMAXDEPTH < yystacksize) 
     3539   yystacksize = YYMAXDEPTH; 
     3540 
     3541    { 
     3542   yytype_int16 *yyss1 = yyss; 
     3543   union yyalloc *yyptr = 
     3544     (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 
     3545   if (! yyptr) 
     3546     goto yyexhaustedlab; 
     3547   YYSTACK_RELOCATE (yyss); 
     3548   YYSTACK_RELOCATE (yyvs); 
     3549 
     3550#  undef YYSTACK_RELOCATE 
     3551   if (yyss1 != yyssa) 
     3552     YYSTACK_FREE (yyss1); 
     3553        } 
     3554# endif 
     3555#endif /* no yyoverflow */ 
     3556 
     3557      yyssp = yyss + yysize - 1; 
     3558      yyvsp = yyvs + yysize - 1; 
     3559 
     3560 
     3561      YYDPRINTF ((stderr, "Stack size increased to %lu\n", 
     3562        (unsigned long int) yystacksize)); 
     3563 
     3564      if (yyss + yystacksize - 1 <= yyssp) 
     3565   YYABORT; 
    70483566    } 
    7049     if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 && 
    7050             yyn <= YYTABLESIZE && yycheck[yyn] == yychar) 
    7051     { 
    7052 #if YYDEBUG 
    7053         if (yydebug) 
    7054             printf("%sdebug: state %d, shifting to state %d\n", 
    7055                     YYPREFIX, yystate, yytable[yyn]); 
    7056 #endif 
    7057         if (yyssp >= yyss + yystacksize - 1) 
    7058         { 
    7059             goto yyoverflow; 
    7060         } 
    7061         *++yyssp = yystate = yytable[yyn]; 
    7062         *++yyvsp = yylval; 
    7063         yychar = (-1); 
    7064         if (yyerrflag > 0)  --yyerrflag; 
    7065         goto yyloop; 
     3567 
     3568  YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 
     3569 
     3570  goto yybackup; 
     3571 
     3572/*-----------. 
     3573| yybackup.  | 
     3574`-----------*/ 
     3575yybackup: 
     3576 
     3577  /* Do appropriate processing given the current state.  Read a 
     3578     look-ahead token if we need one and don't already have one.  */ 
     3579 
     3580  /* First try to decide what to do without reference to look-ahead token.  */ 
     3581  yyn = yypact[yystate]; 
     3582  if (yyn == YYPACT_NINF) 
     3583    goto yydefault; 
     3584 
     3585  /* Not known => get a look-ahead token if don't already have one.  */ 
     3586 
     3587  /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */ 
     3588  if (yychar == YYEMPTY) 
     3589    { 
     3590      YYDPRINTF ((stderr, "Reading a token: ")); 
     3591      yychar = YYLEX; 
    70663592    } 
    7067     if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 && 
    7068             yyn <= YYTABLESIZE && yycheck[yyn] == yychar) 
    7069     { 
    7070         yyn = yytable[yyn]; 
    7071         goto yyreduce; 
    7072     } 
    7073     if (yyerrflag) goto yyinrecovery; 
    7074 #ifdef lint 
    7075     goto yynewerror; 
    7076 #endif 
    7077 yynewerror: 
    7078     yyerror("syntax error"); 
    7079 #ifdef lint 
    7080     goto yyerrlab; 
    7081 #endif 
    7082 yyerrlab: 
    7083     ++yynerrs; 
    7084 yyinrecovery: 
    7085     if (yyerrflag < 3) 
    7086     { 
    7087         yyerrflag = 3; 
    7088         for (;;) 
    7089         { 
    7090             if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 && 
    7091                     yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE) 
    7092             { 
    7093 #if YYDEBUG 
    7094                 if (yydebug) 
    7095                     printf("%sdebug: state %d, error recovery shifting\ 
    7096  to state %d\n", YYPREFIX, *yyssp, yytable[yyn]); 
    7097 #endif 
    7098                 if (yyssp >= yyss + yystacksize - 1) 
    7099                 { 
    7100                     goto yyoverflow; 
     3593 
     3594  if (yychar <= YYEOF) 
     3595    { 
     3596      yychar = yytoken = YYEOF; 
     3597      YYDPRINTF ((stderr, "Now at end of input.\n")); 
    71013598                } 
    7102                 *++yyssp = yystate = yytable[yyn]; 
    7103                 *++yyvsp = yylval; 
    7104                 goto yyloop; 
    7105             } 
    71063599            else 
    71073600            { 
    7108 #if YYDEBUG 
    7109                 if (yydebug) 
    7110                     printf("%sdebug: error recovery discarding state %d\n", 
    7111                             YYPREFIX, *yyssp); 
    7112 #endif 
    7113                 if (yyssp <= yyss) goto yyabort; 
    7114                 --yyssp; 
    7115                 --yyvsp; 
     3601      yytoken = YYTRANSLATE (yychar); 
     3602      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); 
    71163603            } 
     3604 
     3605  /* If the proper action on seeing token YYTOKEN is to reduce or to 
     3606     detect an error, take that action.  */ 
     3607  yyn += yytoken; 
     3608  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) 
     3609    goto yydefault; 
     3610  yyn = yytable[yyn]; 
     3611  if (yyn <= 0) 
     3612    { 
     3613      if (yyn == 0 || yyn == YYTABLE_NINF) 
     3614   goto yyerrlab; 
     3615      yyn = -yyn; 
     3616      goto yyreduce; 
    71173617        } 
    7118     } 
    7119     else 
    7120     { 
    7121         if (yychar == 0) goto yyabort; 
    7122 #if YYDEBUG 
    7123         if (yydebug) 
    7124         { 
    7125             yys = 0; 
    7126             if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; 
    7127             if (!yys) yys = "illegal-symbol"; 
    7128             printf("%sdebug: state %d, error recovery discards token %d (%s)\n", 
    7129                     YYPREFIX, yystate, yychar, yys); 
    7130         } 
    7131 #endif 
    7132         yychar = (-1); 
    7133         goto yyloop; 
    7134     } 
     3618 
     3619  if (yyn == YYFINAL) 
     3620    YYACCEPT; 
     3621 
     3622  /* Count tokens shifted since error; after three, turn off error 
     3623     status.  */ 
     3624  if (yyerrstatus) 
     3625    yyerrstatus--; 
     3626 
     3627  /* Shift the look-ahead token.  */ 
     3628  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); 
     3629 
     3630  /* Discard the shifted token unless it is eof.  */ 
     3631  if (yychar != YYEOF) 
     3632    yychar = YYEMPTY; 
     3633 
     3634  yystate = yyn; 
     3635  *++yyvsp = yylval; 
     3636 
     3637  goto yynewstate; 
     3638 
     3639 
     3640/*-----------------------------------------------------------. 
     3641| yydefault -- do the default action for the current state.  | 
     3642`-----------------------------------------------------------*/ 
     3643yydefault: 
     3644  yyn = yydefact[yystate]; 
     3645  if (yyn == 0) 
     3646    goto yyerrlab; 
     3647  goto yyreduce; 
     3648 
     3649 
     3650/*-----------------------------. 
     3651| yyreduce -- Do a reduction.  | 
     3652`-----------------------------*/ 
    71353653yyreduce: 
    7136 #if YYDEBUG 
    7137     if (yydebug) 
    7138         printf("%sdebug: state %d, reducing by rule %d (%s)\n", 
    7139                 YYPREFIX, yystate, yyn, yyrule[yyn]); 
    7140 #endif 
    7141     yym = yylen[yyn]; 
    7142     yyval = yyvsp[1-yym]; 
     3654  /* yyn is the number of a rule to reduce with.  */ 
     3655  yylen = yyr2[yyn]; 
     3656 
     3657  /* If YYLEN is nonzero, implement the default value of the action: 
     3658     `$$ = $1'. 
     3659 
     3660     Otherwise, the following line sets YYVAL to garbage. 
     3661     This behavior is undocumented and Bison 
     3662     users should not rely upon it.  Assigning to YYVAL 
     3663     unconditionally makes the parser a bit smaller, and it avoids a 
     3664     GCC warning that YYVAL may be used uninitialized.  */ 
     3665  yyval = yyvsp[1-yylen]; 
     3666 
     3667 
     3668  YY_REDUCE_PRINT (yyn); 
    71433669    switch (yyn) 
    71443670    { 
    7145 case 7: 
    7146 #line 341 "fortran.y" 
    7147 {yyerrok;yyclearin;} 
    7148 break; 
    7149 case 12: 
    7150 #line 349 "fortran.y" 
    7151 { 
     3671        case 8: 
     3672#line 344 "fortran.y" 
     3673    {yyerrok;yyclearin;;} 
     3674    break; 
     3675 
     3676  case 13: 
     3677#line 352 "fortran.y" 
     3678    { 
    71523679                     if (inmoduledeclare == 0 ) 
    71533680                     { 
     
    71563683                                              pos_end-pos_curinclude); 
    71573684                     } 
    7158                   } 
    7159 break; 
    7160 case 17: 
    7161 #line 365 "fortran.y" 
    7162 { 
     3685                  ;} 
     3686    break; 
     3687 
     3688  case 18: 
     3689#line 368 "fortran.y" 
     3690    { 
    71633691            /* we should ignore the declaration until the keyword             */ 
    71643692            /*    TOK_ENDDONOTTREAT                                           */ 
    71653693            couldaddvariable = 0 ; 
    71663694            RemoveWordCUR_0(fortranout,-20,20); 
    7167          } 
    7168 break; 
    7169 case 18: 
    7170 #line 372 "fortran.y" 
    7171 { 
     3695         ;} 
     3696    break; 
     3697 
     3698  case 19: 
     3699#line 375 "fortran.y" 
     3700    { 
    71723701             couldaddvariable = 1 ; 
    71733702             RemoveWordCUR_0(fortranout,-24,24); 
    7174           } 
    7175 break; 
    7176 case 21: 
    7177 #line 379 "fortran.y" 
    7178 {pos_cur = setposcur();} 
    7179 break; 
    7180 case 26: 
    7181 #line 388 "fortran.y" 
    7182 {incom = 1;} 
    7183 break; 
    7184 case 27: 
    7185 #line 391 "fortran.y" 
    7186 {if (incom !=1) {strcpy(curbuf,"");incom=0;}} 
    7187 break; 
    7188 case 31: 
    7189 #line 398 "fortran.y" 
    7190 { 
    7191                       if ( couldaddvariable == 1 ) 
     3703          ;} 
     3704    break; 
     3705 
     3706  case 22: 
     3707#line 382 "fortran.y" 
     3708    {pos_cur = setposcur();;} 
     3709    break; 
     3710 
     3711  case 27: 
     3712#line 394 "fortran.y" 
     3713    {if (incom !=1) {strcpy(curbuf,"");incom=0;};} 
     3714    break; 
     3715 
     3716  case 28: 
     3717#line 397 "fortran.y" 
     3718    {isrecursive = 0;;} 
     3719    break; 
     3720 
     3721  case 29: 
     3722#line 399 "fortran.y" 
     3723    {isrecursive = 1;;} 
     3724    break; 
     3725 
     3726  case 31: 
     3727#line 403 "fortran.y" 
     3728                      { 
     3729                      if ( couldaddvariable == 1) 
    71923730                      { 
    71933731                      /* open param file                                      */ 
    71943732                      if ( firstpass == 0 ) 
    71953733                      { 
    7196                          sprintf(ligne,"%s/ParamFile%s.h",nomdir,yyvsp[-1].nac); 
     3734                         sprintf(ligne,"%s/ParamFile%s.h",nomdir,(yyvsp[(3) - (4)].nac)); 
    71973735                         paramout=fopen(ligne,"w"); 
    71983736                         if ( retour77 == 0 ) fprintf(paramout,"!\n"); 
     
    72003738 
    72013739                      } 
    7202                       Add_SubroutineArgument_Var_1(yyvsp[0].l); 
     3740                      Add_SubroutineArgument_Var_1((yyvsp[(4) - (4)].l)); 
    72033741                      if ( inmodulemeet == 1 ) 
    72043742                      { 
     
    72143752                      } 
    72153753                      } 
    7216                    } 
    7217 break; 
    7218 case 32: 
    7219 #line 426 "fortran.y" 
    7220 { 
     3754                   ;} 
     3755    break; 
     3756 
     3757  case 32: 
     3758#line 431 "fortran.y" 
     3759    { 
    72213760                      /* open param file                                      */ 
    72223761                      if ( firstpass == 0 ) 
    72233762                      { 
    7224                          sprintf(ligne,"%s/ParamFile%s.h",nomdir,yyvsp[0].nac); 
     3763                         sprintf(ligne,"%s/ParamFile%s.h",nomdir,(yyvsp[(2) - (2)].nac)); 
    72253764                         paramout=fopen(ligne,"w"); 
    72263765                         if ( retour77 == 0 ) fprintf(paramout,"!\n"); 
     
    72283767 
    72293768                      } 
    7230                       strcpy(subroutinename,yyvsp[0].nac); 
     3769                      strcpy(subroutinename,(yyvsp[(2) - (2)].nac)); 
    72313770                      /* Common case                                          */ 
    72323771                      insubroutinedeclare = 1; 
     
    72343773                      /*    the subroutine sub_loop_<subroutinename>          */ 
    72353774                      writeheadnewsub_0(1); 
    7236                    } 
    7237 break; 
    7238 case 33: 
    7239 #line 444 "fortran.y" 
    7240 { 
     3775                   ;} 
     3776    break; 
     3777 
     3778  case 33: 
     3779#line 449 "fortran.y" 
     3780    { 
    72413781                      /* open param file                                      */ 
    72423782                      if ( firstpass == 0 ) 
    72433783                      { 
    7244                          sprintf(ligne,"%s/ParamFile%s.h",nomdir,yyvsp[-3].nac); 
     3784                         sprintf(ligne,"%s/ParamFile%s.h",nomdir,(yyvsp[(2) - (5)].nac)); 
    72453785                         paramout=fopen(ligne,"w"); 
    72463786                         if ( retour77 == 0 ) fprintf(paramout,"!\n"); 
    72473787                         else fprintf(paramout,"C\n"); 
    72483788                      } 
    7249                       strcpy(subroutinename,yyvsp[-3].nac); 
     3789                      strcpy(subroutinename,(yyvsp[(2) - (5)].nac)); 
    72503790                      if ( inmodulemeet == 1 ) 
    72513791                      { 
     
    72533793                         /* we should to list of the subroutine argument the  */ 
    72543794                         /*    name of the function which has to be defined   */ 
    7255                          Add_SubroutineArgument_Var_1(yyvsp[-2].l); 
     3795                         Add_SubroutineArgument_Var_1((yyvsp[(3) - (5)].l)); 
    72563796                         strcpy(DeclType,""); 
    72573797                         /* in the second step we should write the head of    */ 
     
    72643804                            /* we should to list of the subroutine argument   */ 
    72653805                            /* name of the function which has to be defined   */ 
    7266                             Add_SubroutineArgument_Var_1(yyvsp[-2].l); 
     3806                            Add_SubroutineArgument_Var_1((yyvsp[(3) - (5)].l)); 
    72673807                            strcpy(DeclType,""); 
    7268                             Add_FunctionType_Var_1(yyvsp[-3].nac); 
     3808                            Add_FunctionType_Var_1((yyvsp[(2) - (5)].nac)); 
    72693809                            writeheadnewsub_0(2); 
    72703810                      } 
    7271                    } 
    7272 break; 
    7273 case 34: 
    7274 #line 477 "fortran.y" 
    7275 { 
     3811                   ;} 
     3812    break; 
     3813 
     3814  case 34: 
     3815#line 482 "fortran.y" 
     3816    { 
    72763817                      /* open param file                                      */ 
    72773818                      if ( firstpass == 0 ) 
    72783819                      { 
    7279                          sprintf(ligne,"%s/ParamFile%s.h",nomdir,yyvsp[-1].nac); 
     3820                         sprintf(ligne,"%s/ParamFile%s.h",nomdir,(yyvsp[(2) - (3)].nac)); 
    72803821                         paramout=fopen(ligne,"w"); 
    72813822                         if ( retour77 == 0 ) fprintf(paramout,"!\n"); 
    72823823                         else fprintf(paramout,"C\n"); 
    72833824                      } 
    7284                       strcpy(subroutinename,yyvsp[-1].nac); 
     3825                      strcpy(subroutinename,(yyvsp[(2) - (3)].nac)); 
    72853826                      if ( inmodulemeet == 1 ) 
    72863827                      { 
     
    72883829                         /* we should to list of the subroutine argument the  */ 
    72893830                         /*    name of the function which has to be defined   */ 
    7290                          Add_SubroutineArgument_Var_1(yyvsp[0].l); 
     3831                         Add_SubroutineArgument_Var_1((yyvsp[(3) - (3)].l)); 
    72913832                         strcpy(DeclType,""); 
    7292                          Add_FunctionType_Var_1(yyvsp[-1].nac); 
     3833                         Add_FunctionType_Var_1((yyvsp[(2) - (3)].nac)); 
    72933834                         /* in the second step we should write the head of    */ 
    72943835                         /*    the subroutine sub_loop_<subroutinename>       */ 
     
    73003841                            /* we should to list of the subroutine argument   */ 
    73013842                            /* name of the function which has to be defined   */ 
    7302                             Add_SubroutineArgument_Var_1(yyvsp[0].l); 
     3843                            Add_SubroutineArgument_Var_1((yyvsp[(3) - (3)].l)); 
    73033844                            strcpy(DeclType,""); 
    7304                             Add_FunctionType_Var_1(yyvsp[-1].nac); 
     3845                            Add_FunctionType_Var_1((yyvsp[(2) - (3)].nac)); 
    73053846                            writeheadnewsub_0(2); 
    73063847                      } 
    7307                    } 
    7308 break; 
    7309 case 35: 
    7310 #line 511 "fortran.y" 
    7311 { 
     3848                   ;} 
     3849    break; 
     3850 
     3851  case 35: 
     3852#line 516 "fortran.y" 
     3853    { 
    73123854                      GlobalDeclaration = 0; 
    7313                       strcpy(curmodulename,yyvsp[0].nac); 
     3855                      strcpy(curmodulename,(yyvsp[(2) - (2)].nac)); 
    73143856                      strcpy(subroutinename,""); 
    7315                       Add_NameOfModule_1(yyvsp[0].nac); 
     3857                      Add_NameOfModule_1((yyvsp[(2) - (2)].nac)); 
    73163858                      if ( inmoduledeclare == 0 ) 
    73173859                      { 
     
    73233865                         aftercontainsdeclare = 0 ; 
    73243866                      } 
    7325                    } 
    7326 break; 
    7327 case 36: 
    7328 #line 528 "fortran.y" 
    7329 { 
     3867                   ;} 
     3868    break; 
     3869 
     3870  case 36: 
     3871#line 533 "fortran.y" 
     3872    { 
    73303873                      if ( couldaddvariable == 1 ) 
    73313874                      { 
    7332                          strcpy(yyval.nac,yyvsp[0].nac);strcpy(subroutinename,yyvsp[0].nac); 
     3875                         strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));strcpy(subroutinename,(yyvsp[(1) - (1)].nac)); 
    73333876                      } 
    7334                    } 
    7335 break; 
    7336 case 38: 
    7337 #line 537 "fortran.y" 
    7338 { 
     3877                   ;} 
     3878    break; 
     3879 
     3880  case 38: 
     3881#line 542 "fortran.y" 
     3882    { 
    73393883                      pos_curinclude = setposcur()-9; 
    7340                    } 
    7341 break; 
    7342 case 39: 
    7343 #line 541 "fortran.y" 
    7344 { 
    7345                       if ( couldaddvariable == 1 ) Add_Include_1(yyvsp[0].nac); 
    7346                    } 
    7347 break; 
    7348 case 40: 
    7349 #line 545 "fortran.y" 
    7350 { 
    7351                       if ( firstpass == 1 && couldaddvariable == 1) yyval.l=NULL; 
    7352                    } 
    7353 break; 
    7354 case 41: 
    7355 #line 548 "fortran.y" 
    7356 { 
    7357                       if ( firstpass == 1 && couldaddvariable == 1 ) yyval.l=NULL; 
    7358                    } 
    7359 break; 
    7360 case 42: 
    7361 #line 552 "fortran.y" 
    7362 { 
    7363                        if ( firstpass == 1 && couldaddvariable == 1 ) yyval.l=yyvsp[-1].l; 
    7364                    } 
    7365 break; 
    7366 case 45: 
    7367 #line 559 "fortran.y" 
    7368 { 
     3884                   ;} 
     3885    break; 
     3886 
     3887  case 39: 
     3888#line 546 "fortran.y" 
     3889    { 
     3890                      if ( couldaddvariable == 1 ) Add_Include_1((yyvsp[(1) - (1)].nac)); 
     3891                   ;} 
     3892    break; 
     3893 
     3894  case 40: 
     3895#line 550 "fortran.y" 
     3896    { 
     3897                      if ( firstpass == 1 && couldaddvariable == 1) (yyval.l)=NULL; 
     3898                   ;} 
     3899    break; 
     3900 
     3901  case 41: 
     3902#line 553 "fortran.y" 
     3903    { 
     3904                      if ( firstpass == 1 && couldaddvariable == 1 ) (yyval.l)=NULL; 
     3905                   ;} 
     3906    break; 
     3907 
     3908  case 42: 
     3909#line 557 "fortran.y" 
     3910    { 
     3911                       if ( firstpass == 1 && couldaddvariable == 1 ) (yyval.l)=(yyvsp[(2) - (3)].l); 
     3912                   ;} 
     3913    break; 
     3914 
     3915  case 45: 
     3916#line 564 "fortran.y" 
     3917    { 
    73693918                      if ( couldaddvariable == 1 ) 
    73703919                      { 
    7371                          Add_SubroutineArgument_Var_1(yyvsp[-1].l); 
     3920                         Add_SubroutineArgument_Var_1((yyvsp[(2) - (3)].l)); 
    73723921                      } 
    7373                    } 
    7374 break; 
    7375 case 46: 
    7376 #line 566 "fortran.y" 
    7377 { 
     3922                   ;} 
     3923    break; 
     3924 
     3925  case 46: 
     3926#line 571 "fortran.y" 
     3927    { 
    73783928                      if ( firstpass == 1  && couldaddvariable == 1) 
    73793929                      { 
    73803930                         strcpy(nameinttypenameback,nameinttypename); 
    73813931                         strcpy(nameinttypename,""); 
    7382                          curvar=createvar(yyvsp[0].na,NULL); 
     3932                         curvar=createvar((yyvsp[(1) - (1)].na),NULL); 
    73833933                        strcpy(nameinttypename,nameinttypenameback); 
    73843934                         curlistvar=insertvar(NULL,curvar); 
    7385                          yyval.l=settype("",curlistvar); 
     3935                         (yyval.l)=settype("",curlistvar); 
    73863936                      } 
    7387                    } 
    7388 break; 
    7389 case 47: 
    7390 #line 578 "fortran.y" 
    7391 { 
     3937                   ;} 
     3938    break; 
     3939 
     3940  case 47: 
     3941#line 583 "fortran.y" 
     3942    { 
    73923943                      if ( firstpass == 1  && couldaddvariable == 1) 
    73933944                      { 
    73943945                         strcpy(nameinttypenameback,nameinttypename); 
    73953946                         strcpy(nameinttypename,"");                       
    7396                          curvar=createvar(yyvsp[0].na,NULL); 
     3947                         curvar=createvar((yyvsp[(3) - (3)].na),NULL); 
    73973948                         strcpy(nameinttypename,nameinttypenameback);                          
    7398                          yyval.l=insertvar(yyvsp[-2].l,curvar); 
     3949                         (yyval.l)=insertvar((yyvsp[(1) - (3)].l),curvar); 
    73993950                      } 
    7400                    } 
    7401 break; 
    7402 case 48: 
    7403 #line 589 "fortran.y" 
    7404 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].nac);} 
    7405 break; 
    7406 case 49: 
    7407 #line 590 "fortran.y" 
    7408 {if ( couldaddvariable == 1 ) strcpy(yyval.na,"*");} 
    7409 break; 
    7410 case 50: 
    7411 #line 593 "fortran.y" 
    7412 { 
     3951                   ;} 
     3952    break; 
     3953 
     3954  case 48: 
     3955#line 594 "fortran.y" 
     3956    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].nac));;} 
     3957    break; 
     3958 
     3959  case 49: 
     3960#line 595 "fortran.y" 
     3961    {if ( couldaddvariable == 1 ) strcpy((yyval.na),"*");;} 
     3962    break; 
     3963 
     3964  case 50: 
     3965#line 598 "fortran.y" 
     3966    { 
    74133967                      if ( VarTypepar == 1 ) 
    74143968                      { 
     
    74163970                         VarTypepar = 0; 
    74173971                      } 
    7418                    } 
    7419 break; 
    7420 case 51: 
    7421 #line 601 "fortran.y" 
    7422 { 
     3972                   ;} 
     3973    break; 
     3974 
     3975  case 51: 
     3976#line 606 "fortran.y" 
     3977    { 
    74233978                      if ( couldaddvariable == 1 ) 
    74243979                      { 
     
    74263981                         couldaddvariable = 0 ; 
    74273982                      } 
    7428                    } 
    7429 break; 
    7430 case 52: 
    7431 #line 609 "fortran.y" 
    7432 { 
     3983                   ;} 
     3984    break; 
     3985 
     3986  case 52: 
     3987#line 614 "fortran.y" 
     3988    { 
    74333989                      if ( VarType == 1 ) couldaddvariable = 1 ; 
    74343990                      VarType = 0; 
    74353991                      VarTypepar = 0; 
    7436                    } 
    7437 break; 
    7438 case 54: 
    7439 #line 616 "fortran.y" 
    7440 { 
     3992                   ;} 
     3993    break; 
     3994 
     3995  case 54: 
     3996#line 621 "fortran.y" 
     3997    { 
    74413998                      if ( couldaddvariable == 1 ) 
    74423999                      { 
    74434000                         if ( insubroutinedeclare == 0 ) 
    7444                                                   Add_GlobalParameter_Var_1(yyvsp[-1].l); 
    7445                          else Add_Parameter_Var_1(yyvsp[-1].l); 
     4001                         { 
     4002                                                  Add_GlobalParameter_Var_1((yyvsp[(3) - (4)].l)); 
     4003                                                  } 
     4004                         else Add_Parameter_Var_1((yyvsp[(3) - (4)].l)); 
    74464005                         pos_end = setposcur(); 
    74474006                        RemoveWordSET_0(fortranout,pos_cur_decl, 
     
    74494008                      } 
    74504009                      VariableIsParameter =  0 ; 
    7451                    } 
    7452 break; 
    7453 case 55: 
    7454 #line 629 "fortran.y" 
    7455 { 
     4010                   ;} 
     4011    break; 
     4012 
     4013  case 55: 
     4014#line 636 "fortran.y" 
     4015    { 
    74564016                     if ( couldaddvariable == 1 ) 
    74574017                     { 
    74584018                        if ( insubroutinedeclare == 0 ) 
    7459                                                   Add_GlobalParameter_Var_1(yyvsp[0].l); 
    7460                          else Add_Parameter_Var_1(yyvsp[0].l); 
     4019                                                  Add_GlobalParameter_Var_1((yyvsp[(2) - (2)].l)); 
     4020                         else Add_Parameter_Var_1((yyvsp[(2) - (2)].l)); 
    74614021                         pos_end = setposcur(); 
    74624022                         RemoveWordSET_0(fortranout,pos_cur_decl, 
     
    74644024                      } 
    74654025                      VariableIsParameter =  0 ; 
    7466                    } 
    7467 break; 
    7468 case 57: 
    7469 #line 643 "fortran.y" 
    7470 { 
     4026                   ;} 
     4027    break; 
     4028 
     4029  case 57: 
     4030#line 650 "fortran.y" 
     4031    { 
    74714032                     pos_end = setposcur(); 
    74724033                     RemoveWordSET_0(fortranout,pos_cursave, 
    74734034                                                pos_end-pos_cursave); 
    7474                   } 
    7475 break; 
    7476 case 59: 
    7477 #line 650 "fortran.y" 
    7478 { 
     4035                  ;} 
     4036    break; 
     4037 
     4038  case 59: 
     4039#line 657 "fortran.y" 
     4040    { 
    74794041                   /* if the variable is a parameter we can suppose that is   */ 
    74804042                   /*    value is the same on each grid. It is not useless to */ 
     
    74824044                      if ( couldaddvariable == 1 ) 
    74834045                      { 
    7484                          Add_Globliste_1(yyvsp[0].l); 
     4046                         Add_Globliste_1((yyvsp[(1) - (1)].l)); 
    74854047                         /* if variableparamlists has been declared in a      */ 
    74864048                         /*    subroutine                                     */ 
    74874049                         if ( insubroutinedeclare == 1 ) 
    74884050                         { 
    7489                             Add_Dimension_Var_1(yyvsp[0].l); 
     4051                            Add_Dimension_Var_1((yyvsp[(1) - (1)].l)); 
    74904052                         } 
    74914053                         pos_end = setposcur(); 
     
    75034065                      VariableIsParameter =  0 ; 
    75044066                      Allocatabledeclare = 0 ; 
     4067                      Targetdeclare = 0 ; 
    75054068                      SaveDeclare = 0; 
    75064069                      pointerdeclare = 0; 
     
    75104073                      strcpy(nameinttypename,""); 
    75114074                      strcpy(c_selectorname,""); 
    7512                    } 
    7513 break; 
    7514 case 60: 
    7515 #line 686 "fortran.y" 
    7516 { 
     4075                   ;} 
     4076    break; 
     4077 
     4078  case 60: 
     4079#line 694 "fortran.y" 
     4080    { 
    75174081      if (firstpass == 0) 
    75184082      { 
    7519       if (yyvsp[0].lnn) 
     4083      if ((yyvsp[(1) - (1)].lnn)) 
    75204084      { 
    7521       removeglobfromlist(&(yyvsp[0].lnn)); 
     4085      removeglobfromlist(&((yyvsp[(1) - (1)].lnn))); 
    75224086      pos_end = setposcur(); 
    75234087           RemoveWordSET_0(fortranout,pos_cur,pos_end-pos_cur); 
    7524       writelistpublic(yyvsp[0].lnn); 
     4088      writelistpublic((yyvsp[(1) - (1)].lnn)); 
    75254089      } 
    75264090      } 
    7527       } 
    7528 break; 
    7529 case 70: 
    7530 #line 708 "fortran.y" 
    7531 { 
     4091      ;} 
     4092    break; 
     4093 
     4094  case 70: 
     4095#line 716 "fortran.y" 
     4096    { 
    75324097                      /* we should remove the data declaration                */ 
    7533                       if ( couldaddvariable == 1 && aftercontainsdeclare == 0 ) 
     4098                      if ( couldaddvariable == 1 && aftercontainsdeclare != 2 ) 
    75344099                      { 
    75354100                        pos_end = setposcur(); 
     
    75374102                                              pos_end-pos_curdata); 
    75384103                      } 
     4104                      if ( couldaddvariable == 1 && aftercontainsdeclare == 1 ) 
     4105                      { 
     4106                      if (firstpass == 0) 
     4107                      { 
     4108                        ReWriteDataStatement_0(fortranout); 
     4109                        pos_end = setposcur(); 
    75394110                  } 
    7540 break; 
    7541 case 72: 
    7542 #line 720 "fortran.y" 
    7543 { 
     4111                      } 
     4112                  ;} 
     4113    break; 
     4114 
     4115  case 72: 
     4116#line 736 "fortran.y" 
     4117    { 
    75444118         PublicDeclare = 0 ; 
    75454119         PrivateDeclare = 0 ; 
    7546       } 
    7547 break; 
    7548 case 110: 
    7549 #line 771 "fortran.y" 
    7550 { 
     4120      ;} 
     4121    break; 
     4122 
     4123  case 110: 
     4124#line 787 "fortran.y" 
     4125    { 
    75514126                      /* if the variable is a parameter we can suppose that is*/ 
    75524127                      /*    value is the same on each grid. It is not useless */ 
     
    75634138                      else 
    75644139                       {*/ 
    7565                         ReWriteDeclarationAndAddTosubroutine_01(yyvsp[-1].l); 
     4140                        ReWriteDeclarationAndAddTosubroutine_01((yyvsp[(1) - (2)].l)); 
    75664141                        pos_cur_decl = setposcur(); 
    75674142                         
     
    75714146                           insubroutinedeclare == 0 ) 
    75724147                      { 
     4148 
    75734149                         sprintf(ligne,"\n#include \"Module_Declar_%s.h\"\n" 
    75744150                                                                ,curmodulename); 
     
    75794155                         tofich (module_declar, ligne,1); 
    75804156                         GlobalDeclaration = 1 ; 
     4157                         pos_cur_decl = setposcur(); 
     4158 
    75814159                      } 
    7582                          yyval.l = yyvsp[-1].l; 
    7583                          Add_Globliste_1(yyvsp[-1].l); 
     4160                         (yyval.l) = (yyvsp[(1) - (2)].l); 
     4161                         Add_Globliste_1((yyvsp[(1) - (2)].l)); 
    75844162                                                   
    75854163                         if ( insubroutinedeclare == 0 ) 
    7586                                                   Add_GlobalParameter_Var_1(yyvsp[-1].l); 
     4164                                                  Add_GlobalParameter_Var_1((yyvsp[(1) - (2)].l)); 
    75874165                         else 
    75884166                         { 
    75894167                            if ( pointerdeclare == 1 ) 
    7590                                                 Add_Pointer_Var_From_List_1(yyvsp[-1].l); 
    7591                             Add_Parameter_Var_1(yyvsp[-1].l); 
     4168                                                Add_Pointer_Var_From_List_1((yyvsp[(1) - (2)].l)); 
     4169                            Add_Parameter_Var_1((yyvsp[(1) - (2)].l)); 
    75924170                         } 
    75934171 
     
    76044182                              SaveDeclare == 1 && firstpass == 1 ) 
    76054183                         { 
    7606                               if ( inmodulemeet == 0 ) Add_Save_Var_dcl_1(yyvsp[-1].l); 
    7607                               else  Add_SubroutineDeclarationSave_Var_1(yyvsp[-1].l); 
     4184                              if ( inmodulemeet == 0 ) Add_Save_Var_dcl_1((yyvsp[(1) - (2)].l)); 
     4185                              else  Add_SubroutineDeclarationSave_Var_1((yyvsp[(1) - (2)].l)); 
    76084186                         } 
    76094187                      } 
     
    76184196                      VariableIsParameter =  0 ; 
    76194197                      Allocatabledeclare = 0 ; 
     4198                      Targetdeclare = 0 ; 
    76204199                      SaveDeclare = 0; 
    76214200                      pointerdeclare = 0; 
     
    76254204                      strcpy(nameinttypename,""); 
    76264205                      strcpy(c_selectorname,""); 
    7627                    } 
    7628 break; 
    7629 case 111: 
    7630 #line 850 "fortran.y" 
    7631 { 
     4206                   ;} 
     4207    break; 
     4208 
     4209  case 111: 
     4210#line 870 "fortran.y" 
     4211    { 
    76324212                      /* open param file                                      */ 
    76334213                      if ( firstpass == 0 ) 
    76344214                      { 
    7635                          sprintf(ligne,"%s/ParamFile%s.h",nomdir,yyvsp[-1].nac); 
     4215                         sprintf(ligne,"%s/ParamFile%s.h",nomdir,(yyvsp[(2) - (3)].nac)); 
    76364216                         paramout=fopen(ligne,"w"); 
    76374217                         if ( retour77 == 0 ) fprintf(paramout,"!\n"); 
    76384218                         else fprintf(paramout,"C\n"); 
    76394219                      } 
    7640                       strcpy(subroutinename,yyvsp[-1].nac); 
     4220                      strcpy(subroutinename,(yyvsp[(2) - (3)].nac)); 
    76414221                      if ( inmodulemeet == 1 ) 
    76424222                      { 
     
    76444224                         /* we should to list of the subroutine argument the  */ 
    76454225                         /*    name of the function which has to be defined   */ 
    7646                          Add_SubroutineArgument_Var_1(yyvsp[0].l); 
    7647                          Add_FunctionType_Var_1(yyvsp[-1].nac); 
     4226                         Add_SubroutineArgument_Var_1((yyvsp[(3) - (3)].l)); 
     4227                         Add_FunctionType_Var_1((yyvsp[(2) - (3)].nac)); 
    76484228                         /* in the second step we should write the head of    */ 
    76494229                         /*    the subroutine sub_loop_<subroutinename>       */ 
     
    76554235                         /* we should to list of the subroutine argument the  */ 
    76564236                         /*    name of the function which has to be defined   */ 
    7657                          Add_SubroutineArgument_Var_1(yyvsp[0].l); 
    7658                          Add_FunctionType_Var_1(yyvsp[-1].nac); 
     4237                         Add_SubroutineArgument_Var_1((yyvsp[(3) - (3)].l)); 
     4238                         Add_FunctionType_Var_1((yyvsp[(2) - (3)].nac)); 
    76594239                         /* in the second step we should write the head of    */ 
    76604240                         /*    the subroutine sub_loop_<subroutinename>       */ 
     
    76634243                      strcpy(nameinttypename,""); 
    76644244 
    7665                    } 
    7666 break; 
    7667 case 112: 
    7668 #line 887 "fortran.y" 
    7669 { 
     4245                   ;} 
     4246    break; 
     4247 
     4248  case 112: 
     4249#line 907 "fortran.y" 
     4250    { 
    76704251                       functiondeclarationisdone = 1; 
    7671                    } 
    7672 break; 
    7673 case 113: 
    7674 #line 893 "fortran.y" 
    7675 { 
     4252                   ;} 
     4253    break; 
     4254 
     4255  case 113: 
     4256#line 913 "fortran.y" 
     4257    { 
    76764258                      VariableIsParameter = 1; 
    76774259                      pos_curparameter = setposcur()-9; 
    7678                    } 
    7679 break; 
    7680 case 114: 
    7681 #line 898 "fortran.y" 
    7682 { 
    7683                       pos_curdata = setposcur()-strlen(yyvsp[0].nac); 
    7684                    } 
    7685 break; 
    7686 case 115: 
    7687 #line 902 "fortran.y" 
    7688 { 
     4260                   ;} 
     4261    break; 
     4262 
     4263  case 114: 
     4264#line 918 "fortran.y" 
     4265    { 
     4266                      pos_curdata = setposcur()-strlen((yyvsp[(1) - (1)].nac)); 
     4267                      Init_List_Data_Var(); 
     4268                   ;} 
     4269    break; 
     4270 
     4271  case 115: 
     4272#line 923 "fortran.y" 
     4273    { 
    76894274                      if ( couldaddvariable == 1 ) 
    76904275                      { 
    7691                       if ( aftercontainsdeclare == 1 ) strcpy(ligne,""); 
    7692                       else sprintf(ligne,"(/ %s /)",yyvsp[-1].na); 
    7693                       Add_Data_Var_1(yyvsp[-3].nac,ligne); 
     4276/*                      if ( aftercontainsdeclare == 1 ) strcpy(ligne,""); 
     4277                      else */ 
     4278/*                      sprintf(ligne,"%s",$3);*/ 
     4279                      createstringfromlistname(ligne,(yyvsp[(3) - (4)].lnn)); 
     4280                      if (firstpass == 1) 
     4281                      Add_Data_Var_1(&List_Data_Var,(yyvsp[(1) - (4)].nac),ligne); 
     4282                      else 
     4283                      Add_Data_Var_1(&List_Data_Var_Cur,(yyvsp[(1) - (4)].nac),ligne); 
    76944284                      } 
    7695                    } 
    7696 break; 
    7697 case 116: 
    7698 #line 911 "fortran.y" 
    7699 { 
     4285                   ;} 
     4286    break; 
     4287 
     4288  case 116: 
     4289#line 937 "fortran.y" 
     4290    { 
    77004291                      if ( couldaddvariable == 1 ) 
    77014292                      { 
    7702                       if ( aftercontainsdeclare == 1 ) strcpy(ligne,""); 
    7703                       else sprintf(ligne,"(/ %s /)",yyvsp[-1].na); 
    7704                       Add_Data_Var_1(yyvsp[-3].nac,ligne); 
     4293                      /*if ( aftercontainsdeclare == 1 ) strcpy(ligne,""); 
     4294                      else */ 
     4295                      /*sprintf(ligne,"%s",$5);   */ 
     4296                      createstringfromlistname(ligne,(yyvsp[(5) - (6)].lnn));                       
     4297                      if (firstpass == 1)                       
     4298                      Add_Data_Var_1(&List_Data_Var,(yyvsp[(3) - (6)].nac),ligne); 
     4299                      else 
     4300                      Add_Data_Var_1(&List_Data_Var_Cur,(yyvsp[(3) - (6)].nac),ligne);                       
    77054301                      } 
    7706                    } 
    7707 break; 
    7708 case 117: 
    7709 #line 920 "fortran.y" 
    7710 { 
     4302                   ;} 
     4303    break; 
     4304 
     4305  case 117: 
     4306#line 951 "fortran.y" 
     4307    { 
    77114308                       /*******************************************************/ 
    77124309                       /*******************************************************/ 
     
    77164313                       /*******************************************************/ 
    77174314                       /*******************************************************/ 
    7718                    } 
    7719 break; 
    7720 case 118: 
    7721 #line 931 "fortran.y" 
    7722 { 
     4315                       if (firstpass == 1) 
     4316                       Add_Data_Var_Names_01(&List_Data_Var,(yyvsp[(1) - (4)].lnn),(yyvsp[(3) - (4)].lnn)); 
     4317                       else 
     4318                       Add_Data_Var_Names_01(&List_Data_Var_Cur,(yyvsp[(1) - (4)].lnn),(yyvsp[(3) - (4)].lnn)); 
     4319                   ;} 
     4320    break; 
     4321 
     4322  case 118: 
     4323#line 966 "fortran.y" 
     4324    { 
    77234325                      if ( couldaddvariable == 1 ) 
    77244326                      { 
    7725                          strcpy(yyval.na,yyvsp[0].na); 
     4327                         (yyval.lnn) = Insertname(NULL,(yyvsp[(1) - (1)].na),0); 
    77264328                      } 
    7727                    } 
    7728 break; 
    7729 case 119: 
    7730 #line 938 "fortran.y" 
    7731 { 
     4329                   ;} 
     4330    break; 
     4331 
     4332  case 119: 
     4333#line 973 "fortran.y" 
     4334    { 
    77324335                      if ( couldaddvariable == 1 ) 
    77334336                      { 
    7734                          sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na); 
     4337                         (yyval.lnn) = Insertname((yyvsp[(3) - (3)].lnn),(yyvsp[(1) - (3)].na),1); 
    77354338                      } 
    7736                    } 
    7737 break; 
    7738 case 124: 
    7739 #line 952 "fortran.y" 
    7740 { 
     4339                   ;} 
     4340    break; 
     4341 
     4342  case 124: 
     4343#line 987 "fortran.y" 
     4344    { 
    77414345                     pos_cursave = setposcur()-4; 
    7742                   } 
    7743 break; 
    7744 case 126: 
    7745 #line 958 "fortran.y" 
    7746 { 
    7747                      if ( couldaddvariable == 1 ) Add_Save_Var_1(yyvsp[-1].nac,yyvsp[0].d); 
    7748                   } 
    7749 break; 
    7750 case 130: 
    7751 #line 967 "fortran.y" 
    7752 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].nac);} 
    7753 break; 
    7754 case 131: 
    7755 #line 969 "fortran.y" 
    7756 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s+%s",yyvsp[-2].na,yyvsp[0].na);} 
    7757 break; 
    7758 case 132: 
    7759 #line 971 "fortran.y" 
    7760 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s-%s",yyvsp[-2].na,yyvsp[0].na);} 
    7761 break; 
    7762 case 133: 
    7763 #line 973 "fortran.y" 
    7764 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s*%s",yyvsp[-2].na,yyvsp[0].na);} 
    7765 break; 
    7766 case 134: 
    7767 #line 975 "fortran.y" 
    7768 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s/%s",yyvsp[-2].na,yyvsp[0].na);} 
    7769 break; 
    7770 case 135: 
    7771 #line 978 "fortran.y" 
    7772 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,"");} 
    7773 break; 
    7774 case 136: 
    7775 #line 980 "fortran.y" 
    7776 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    7777 break; 
    7778 case 145: 
    7779 #line 995 "fortran.y" 
    7780 { 
     4346                  ;} 
     4347    break; 
     4348 
     4349  case 126: 
     4350#line 993 "fortran.y" 
     4351    { 
     4352                     if ( couldaddvariable == 1 ) Add_Save_Var_1((yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].d)); 
     4353                  ;} 
     4354    break; 
     4355 
     4356  case 127: 
     4357#line 998 "fortran.y" 
     4358    { 
     4359      (yyval.lnn)=Insertname(NULL,(yyvsp[(1) - (1)].nac),0); 
     4360      ;} 
     4361    break; 
     4362 
     4363  case 128: 
     4364#line 1002 "fortran.y" 
     4365    { 
     4366      printf("INSTRUCTION NON TRAITEE : INITIALISATION DE DATA AVEC EXPRESSION\n"); 
     4367      exit(0); 
     4368      ;} 
     4369    break; 
     4370 
     4371  case 129: 
     4372#line 1007 "fortran.y" 
     4373    { 
     4374      (yyval.lnn) = concat_listname((yyvsp[(1) - (3)].lnn),(yyvsp[(3) - (3)].lnn)); 
     4375      ;} 
     4376    break; 
     4377 
     4378  case 130: 
     4379#line 1012 "fortran.y" 
     4380    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].nac));;} 
     4381    break; 
     4382 
     4383  case 131: 
     4384#line 1014 "fortran.y" 
     4385    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s+%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     4386    break; 
     4387 
     4388  case 132: 
     4389#line 1016 "fortran.y" 
     4390    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s-%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     4391    break; 
     4392 
     4393  case 133: 
     4394#line 1018 "fortran.y" 
     4395    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s*%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     4396    break; 
     4397 
     4398  case 134: 
     4399#line 1020 "fortran.y" 
     4400    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s/%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     4401    break; 
     4402 
     4403  case 135: 
     4404#line 1023 "fortran.y" 
     4405    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),"");;} 
     4406    break; 
     4407 
     4408  case 136: 
     4409#line 1025 "fortran.y" 
     4410    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     4411    break; 
     4412 
     4413  case 143: 
     4414#line 1037 "fortran.y" 
     4415    { 
     4416   ininterfacedeclare = 1 ; 
     4417   printf("INTEFACE entree\n"); 
     4418   ;} 
     4419    break; 
     4420 
     4421  case 144: 
     4422#line 1042 "fortran.y" 
     4423    { 
     4424      ininterfacedeclare = 0; 
     4425      ;} 
     4426    break; 
     4427 
     4428  case 145: 
     4429#line 1047 "fortran.y" 
     4430    { 
    77814431                      positioninblock=0; 
    77824432                      pos_curdimension = setposcur()-9; 
    7783                    } 
    7784 break; 
    7785 case 146: 
    7786 #line 1001 "fortran.y" 
    7787 { 
     4433                   ;} 
     4434    break; 
     4435 
     4436  case 146: 
     4437#line 1053 "fortran.y" 
     4438    { 
    77884439         if ( couldaddvariable == 1 ) 
    77894440         { 
    77904441            /*                                                                */ 
    7791             curvar=createvar(yyvsp[-2].nac,yyvsp[-1].d); 
     4442            curvar=createvar((yyvsp[(3) - (5)].nac),(yyvsp[(4) - (5)].d)); 
    77924443            /*                                                                */ 
    77934444            CreateAndFillin_Curvar("",curvar); 
     
    77954446            curlistvar=insertvar(NULL,curvar); 
    77964447            /*                                                                */ 
    7797             yyval.l=settype("",curlistvar); 
     4448            (yyval.l)=settype("",curlistvar); 
    77984449            /*                                                                */ 
    77994450            strcpy(vallengspec,""); 
    78004451         } 
    7801       } 
    7802 break; 
    7803 case 147: 
    7804 #line 1017 "fortran.y" 
    7805 { 
     4452      ;} 
     4453    break; 
     4454 
     4455  case 147: 
     4456#line 1069 "fortran.y" 
     4457    { 
    78064458         if ( couldaddvariable == 1 ) 
    78074459         { 
    78084460            /*                                                                */ 
    7809             curvar=createvar(yyvsp[-2].nac,yyvsp[-1].d); 
     4461            curvar=createvar((yyvsp[(3) - (5)].nac),(yyvsp[(4) - (5)].d)); 
    78104462            /*                                                                */ 
    78114463            CreateAndFillin_Curvar("",curvar); 
    78124464            /*                                                                */ 
    7813             curlistvar=insertvar(yyvsp[-4].l,curvar); 
     4465            curlistvar=insertvar((yyvsp[(1) - (5)].l),curvar); 
    78144466            /*                                                                */ 
    7815             yyval.l=curlistvar; 
     4467            (yyval.l)=curlistvar; 
    78164468            /*                                                                */ 
    78174469            strcpy(vallengspec,""); 
    78184470         } 
    7819       } 
    7820 break; 
    7821 case 150: 
    7822 #line 1037 "fortran.y" 
    7823 { 
    7824         yyval.lnn=(listname *)NULL; 
    7825         } 
    7826 break; 
    7827 case 151: 
    7828 #line 1041 "fortran.y" 
    7829 { 
    7830           yyval.lnn=yyvsp[0].lnn; 
    7831          } 
    7832 break; 
    7833 case 152: 
    7834 #line 1046 "fortran.y" 
    7835 { 
    7836            yyval.lnn = Insertname(NULL,yyvsp[0].nac); 
    7837            } 
    7838 break; 
    7839 case 153: 
    7840 #line 1050 "fortran.y" 
    7841 { 
    7842           yyval.lnn = Insertname(yyvsp[-2].lnn,yyvsp[0].nac); 
    7843           } 
    7844 break; 
    7845 case 154: 
    7846 #line 1055 "fortran.y" 
    7847 { 
     4471      ;} 
     4472    break; 
     4473 
     4474  case 150: 
     4475#line 1089 "fortran.y" 
     4476    { 
     4477        (yyval.lnn)=(listname *)NULL; 
     4478        ;} 
     4479    break; 
     4480 
     4481  case 151: 
     4482#line 1093 "fortran.y" 
     4483    { 
     4484          (yyval.lnn)=(yyvsp[(3) - (3)].lnn); 
     4485         ;} 
     4486    break; 
     4487 
     4488  case 152: 
     4489#line 1098 "fortran.y" 
     4490    { 
     4491           (yyval.lnn) = Insertname(NULL,(yyvsp[(1) - (1)].nac),0); 
     4492           ;} 
     4493    break; 
     4494 
     4495  case 153: 
     4496#line 1102 "fortran.y" 
     4497    { 
     4498          (yyval.lnn) = Insertname((yyvsp[(1) - (3)].lnn),(yyvsp[(3) - (3)].nac),0); 
     4499          ;} 
     4500    break; 
     4501 
     4502  case 154: 
     4503#line 1107 "fortran.y" 
     4504    { 
    78484505                         pos_end = setposcur(); 
    78494506                         RemoveWordSET_0(fortranout,pos_curcommon, 
    78504507                                                  pos_end-pos_curcommon); 
    7851                    } 
    7852 break; 
    7853 case 155: 
    7854 #line 1061 "fortran.y" 
    7855 { 
     4508                   ;} 
     4509    break; 
     4510 
     4511  case 155: 
     4512#line 1113 "fortran.y" 
     4513    { 
    78564514                         if ( couldaddvariable == 1 ) 
    78574515                         { 
    7858                             sprintf(charusemodule,"%s",yyvsp[-1].nac); 
    7859                             Add_NameOfCommon_1(yyvsp[-1].nac); 
     4516                            sprintf(charusemodule,"%s",(yyvsp[(2) - (3)].nac)); 
     4517                            Add_NameOfCommon_1((yyvsp[(2) - (3)].nac),subroutinename); 
    78604518                            pos_end = setposcur(); 
    78614519                            RemoveWordSET_0(fortranout,pos_curcommon, 
    78624520                                                       pos_end-pos_curcommon); 
    78634521                         } 
    7864                    } 
    7865 break; 
    7866 case 156: 
    7867 #line 1072 "fortran.y" 
    7868 { 
     4522                   ;} 
     4523    break; 
     4524 
     4525  case 156: 
     4526#line 1124 "fortran.y" 
     4527    { 
    78694528                         if ( couldaddvariable == 1 ) 
    78704529                         { 
    7871                             sprintf(charusemodule,"%s",yyvsp[-2].nac); 
    7872                             Add_NameOfCommon_1(yyvsp[-2].nac); 
     4530                            sprintf(charusemodule,"%s",(yyvsp[(3) - (5)].nac)); 
     4531                            Add_NameOfCommon_1((yyvsp[(3) - (5)].nac),subroutinename); 
    78734532                            pos_end = setposcur(); 
    78744533                            RemoveWordSET_0(fortranout,pos_curcommon, 
    78754534                                                       pos_end-pos_curcommon); 
    78764535                         } 
    7877                    } 
    7878 break; 
    7879 case 157: 
    7880 #line 1084 "fortran.y" 
    7881 { 
     4536                   ;} 
     4537    break; 
     4538 
     4539  case 157: 
     4540#line 1136 "fortran.y" 
     4541    { 
    78824542                      positioninblock=0; 
    78834543                      pos_curcommon = setposcur()-6; 
    7884                    } 
    7885 break; 
    7886 case 158: 
    7887 #line 1089 "fortran.y" 
    7888 { 
     4544                   ;} 
     4545    break; 
     4546 
     4547  case 158: 
     4548#line 1141 "fortran.y" 
     4549    { 
    78894550                      positioninblock=0; 
    78904551                      pos_curcommon = setposcur()-6-7; 
    7891                    } 
    7892 break; 
    7893 case 159: 
    7894 #line 1095 "fortran.y" 
    7895 { 
     4552                   ;} 
     4553    break; 
     4554 
     4555  case 159: 
     4556#line 1147 "fortran.y" 
     4557    { 
    78964558                      if ( couldaddvariable == 1 ) Add_Common_var_1(); 
    7897                    } 
    7898 break; 
    7899 case 160: 
    7900 #line 1100 "fortran.y" 
    7901 { 
     4559                   ;} 
     4560    break; 
     4561 
     4562  case 160: 
     4563#line 1152 "fortran.y" 
     4564    { 
    79024565                      if ( couldaddvariable == 1 ) Add_Common_var_1(); 
    7903                    } 
    7904 break; 
    7905 case 161: 
    7906 #line 1104 "fortran.y" 
    7907 { 
     4566                   ;} 
     4567    break; 
     4568 
     4569  case 161: 
     4570#line 1156 "fortran.y" 
     4571    { 
    79084572                      if ( couldaddvariable == 1 ) 
    79094573                      { 
    79104574                         positioninblock = positioninblock + 1 ; 
    7911                          strcpy(commonvar,yyvsp[-1].nac); 
    7912                          commondim = yyvsp[0].d; 
     4575                         strcpy(commonvar,(yyvsp[(1) - (2)].nac)); 
     4576                         commondim = (yyvsp[(2) - (2)].d); 
    79134577                      } 
    7914                    } 
    7915 break; 
    7916 case 162: 
    7917 #line 1114 "fortran.y" 
    7918 { 
     4578                   ;} 
     4579    break; 
     4580 
     4581  case 162: 
     4582#line 1166 "fortran.y" 
     4583    { 
    79194584                      if ( couldaddvariable == 1 ) 
    79204585                      { 
    7921                          strcpy(yyval.nac,""); 
     4586                         strcpy((yyval.nac),""); 
    79224587                         positioninblock=0; 
    79234588                         strcpy(commonblockname,""); 
    79244589                      } 
    7925                    } 
    7926 break; 
    7927 case 163: 
    7928 #line 1123 "fortran.y" 
    7929 { 
     4590                   ;} 
     4591    break; 
     4592 
     4593  case 163: 
     4594#line 1175 "fortran.y" 
     4595    { 
    79304596                      if ( couldaddvariable == 1 ) 
    79314597                      { 
    7932                          strcpy(yyval.nac,yyvsp[-1].nac); 
     4598                         strcpy((yyval.nac),(yyvsp[(2) - (3)].nac)); 
    79334599                         positioninblock=0; 
    7934                          strcpy(commonblockname,yyvsp[-1].nac); 
     4600                         strcpy(commonblockname,(yyvsp[(2) - (3)].nac)); 
    79354601                      } 
    7936                    } 
    7937 break; 
    7938 case 166: 
    7939 #line 1136 "fortran.y" 
    7940 { 
    7941                       if ( couldaddvariable == 1 ) yyval.l=insertvar(NULL,yyvsp[0].v); 
    7942                    } 
    7943 break; 
    7944 case 167: 
    7945 #line 1140 "fortran.y" 
    7946 { 
    7947                       if ( couldaddvariable == 1 ) yyval.l=insertvar(yyvsp[-2].l,yyvsp[0].v); 
    7948                    } 
    7949 break; 
    7950 case 168: 
    7951 #line 1145 "fortran.y" 
    7952 { 
     4602                   ;} 
     4603    break; 
     4604 
     4605  case 166: 
     4606#line 1188 "fortran.y" 
     4607    { 
     4608                      if ( couldaddvariable == 1 ) (yyval.l)=insertvar(NULL,(yyvsp[(1) - (1)].v)); 
     4609                   ;} 
     4610    break; 
     4611 
     4612  case 167: 
     4613#line 1192 "fortran.y" 
     4614    { 
     4615                      if ( couldaddvariable == 1 ) (yyval.l)=insertvar((yyvsp[(1) - (3)].l),(yyvsp[(3) - (3)].v)); 
     4616                   ;} 
     4617    break; 
     4618 
     4619  case 168: 
     4620#line 1197 "fortran.y" 
     4621    { 
    79534622                     if ( couldaddvariable == 1 ) 
    79544623                     { 
     
    79584627                         /*                                                   */ 
    79594628                         curvar->v_VariableIsParameter=1; 
    7960                          strcpy(curvar->v_nomvar,yyvsp[-2].nac); 
    7961                          Save_Length(yyvsp[-2].nac,4); 
     4629                         strcpy(curvar->v_nomvar,(yyvsp[(1) - (3)].nac)); 
     4630                         Save_Length((yyvsp[(1) - (3)].nac),4); 
    79624631                         strcpy(curvar->v_subroutinename,subroutinename); 
    79634632                         Save_Length(subroutinename,11); 
    79644633                         strcpy(curvar->v_modulename,curmodulename); 
    79654634                         Save_Length(curmodulename,6); 
    7966                          strcpy(curvar->v_initialvalue,yyvsp[0].na); 
    7967                          Save_Length(yyvsp[0].na,14); 
     4635                         strcpy(curvar->v_initialvalue,(yyvsp[(3) - (3)].na)); 
     4636                         Save_Length((yyvsp[(3) - (3)].na),14); 
    79684637                         strcpy(curvar->v_commoninfile,mainfile); 
    79694638                         Save_Length(mainfile,10); 
    7970                          yyval.v=curvar; 
     4639                         (yyval.v)=curvar; 
    79714640                      } 
    7972                    } 
    7973 break; 
    7974 case 172: 
    7975 #line 1173 "fortran.y" 
    7976 { 
     4641                   ;} 
     4642    break; 
     4643 
     4644  case 172: 
     4645#line 1225 "fortran.y" 
     4646    { 
    79774647                       if ( insubroutinedeclare == 1 ) 
    79784648                       { 
     
    79824652                                                             13); 
    79834653                       } 
    7984                     } 
    7985 break; 
    7986 case 175: 
    7987 #line 1187 "fortran.y" 
    7988 { 
     4654                    ;} 
     4655    break; 
     4656 
     4657  case 175: 
     4658#line 1239 "fortran.y" 
     4659    { 
    79894660                      if ( couldaddvariable == 1 ) 
    79904661                      { 
     
    79924663                         if (dimsgiven == 1) 
    79934664                         { 
    7994                             curvar=createvar(yyvsp[-3].nac,curdim); 
     4665                            curvar=createvar((yyvsp[(3) - (6)].nac),curdim); 
    79954666                         } 
    79964667                         else 
    79974668                         { 
    7998                             curvar=createvar(yyvsp[-3].nac,yyvsp[-2].d); 
     4669                            curvar=createvar((yyvsp[(3) - (6)].nac),(yyvsp[(4) - (6)].d)); 
    79994670                         } 
    80004671                         /*                                                   */ 
     
    80134684                            } 
    80144685                         } 
    8015                          yyval.l=settype(DeclType,curlistvar); 
     4686                         (yyval.l)=settype(DeclType,curlistvar); 
    80164687                      } 
    80174688                      strcpy(vallengspec,""); 
    8018                    } 
    8019 break; 
    8020 case 176: 
    8021 #line 1219 "fortran.y" 
    8022 { 
     4689                   ;} 
     4690    break; 
     4691 
     4692  case 176: 
     4693#line 1271 "fortran.y" 
     4694    { 
    80234695                      if ( couldaddvariable == 1 ) 
    80244696                      { 
    80254697                         if (dimsgiven == 1) 
    80264698                         { 
    8027                             curvar=createvar(yyvsp[-3].nac,curdim); 
     4699                            curvar=createvar((yyvsp[(4) - (7)].nac),curdim); 
    80284700                         } 
    80294701                         else 
    80304702                         { 
    8031                             curvar=createvar(yyvsp[-3].nac,yyvsp[-2].d); 
     4703                            curvar=createvar((yyvsp[(4) - (7)].nac),(yyvsp[(5) - (7)].d)); 
    80324704                         } 
    80334705                         /*                                                   */ 
    8034                          CreateAndFillin_Curvar(yyvsp[-6].l->var->v_typevar,curvar); 
     4706                         CreateAndFillin_Curvar((yyvsp[(1) - (7)].l)->var->v_typevar,curvar); 
    80354707                         /*                                                   */ 
    8036                          strcpy(curvar->v_typevar,(yyvsp[-6].l->var->v_typevar)); 
    8037                          Save_Length(yyvsp[-6].l->var->v_typevar,3); 
     4708                         strcpy(curvar->v_typevar,((yyvsp[(1) - (7)].l)->var->v_typevar)); 
     4709                         Save_Length((yyvsp[(1) - (7)].l)->var->v_typevar,3); 
    80384710                         /*                                                   */ 
    8039                          curlistvar=insertvar(yyvsp[-6].l,curvar); 
     4711                         curlistvar=insertvar((yyvsp[(1) - (7)].l),curvar); 
    80404712                         if (!strcasecmp(DeclType,"character")) 
    80414713                         { 
     
    80494721                            } 
    80504722                         } 
    8051                          yyval.l=curlistvar; 
     4723                         (yyval.l)=curlistvar; 
    80524724                      } 
    80534725                      strcpy(vallengspec,""); 
    8054                    } 
    8055 break; 
    8056 case 177: 
    8057 #line 1253 "fortran.y" 
    8058 {dimsgiven=0;} 
    8059 break; 
    8060 case 178: 
    8061 #line 1256 "fortran.y" 
    8062 {strcpy(DeclType,yyvsp[-1].nac);} 
    8063 break; 
    8064 case 179: 
    8065 #line 1258 "fortran.y" 
    8066 { 
     4726                   ;} 
     4727    break; 
     4728 
     4729  case 177: 
     4730#line 1305 "fortran.y" 
     4731    {dimsgiven=0;;} 
     4732    break; 
     4733 
     4734  case 178: 
     4735#line 1308 "fortran.y" 
     4736    {strcpy(DeclType,(yyvsp[(1) - (2)].nac));;} 
     4737    break; 
     4738 
     4739  case 179: 
     4740#line 1310 "fortran.y" 
     4741    { 
    80674742                      strcpy(DeclType,"CHARACTER"); 
    8068                    } 
    8069 break; 
    8070 case 180: 
    8071 #line 1262 "fortran.y" 
    8072 { 
    8073                       strcpy(DeclType,yyvsp[-2].nac); 
    8074                       strcpy(nameinttypename,yyvsp[0].nac); 
    8075                    } 
    8076 break; 
    8077 case 181: 
    8078 #line 1267 "fortran.y" 
    8079 { 
     4743                   ;} 
     4744    break; 
     4745 
     4746  case 180: 
     4747#line 1314 "fortran.y" 
     4748    { 
     4749                      strcpy(DeclType,(yyvsp[(1) - (3)].nac)); 
     4750                      strcpy(nameinttypename,(yyvsp[(3) - (3)].nac)); 
     4751                   ;} 
     4752    break; 
     4753 
     4754  case 181: 
     4755#line 1319 "fortran.y" 
     4756    { 
    80804757                      strcpy(DeclType,"TYPE"); 
    8081                    } 
    8082 break; 
    8083 case 182: 
    8084 #line 1272 "fortran.y" 
    8085 { 
     4758                   ;} 
     4759    break; 
     4760 
     4761  case 182: 
     4762#line 1324 "fortran.y" 
     4763    { 
    80864764                 /*     if ( couldaddvariable == 1 ) VarTypepar = 1 ; 
    80874765                      couldaddvariable = 0 ; 
    80884766                      pos_cur_decl = setposcur()-5;*/ 
    80894767                   pos_cur_decl = setposcur()-5; 
    8090                    } 
    8091 break; 
    8092 case 184: 
    8093 #line 1281 "fortran.y" 
    8094 {c_selectorgiven=1;strcpy(c_selectorname,yyvsp[0].nac);} 
    8095 break; 
    8096 case 185: 
    8097 #line 1282 "fortran.y" 
    8098 {c_star = 1;} 
    8099 break; 
    8100 case 190: 
    8101 #line 1290 "fortran.y" 
    8102 { 
     4768                   ;} 
     4769    break; 
     4770 
     4771  case 184: 
     4772#line 1333 "fortran.y" 
     4773    {c_selectorgiven=1;strcpy(c_selectorname,(yyvsp[(2) - (2)].nac));;} 
     4774    break; 
     4775 
     4776  case 185: 
     4777#line 1334 "fortran.y" 
     4778    {c_star = 1;;} 
     4779    break; 
     4780 
     4781  case 190: 
     4782#line 1342 "fortran.y" 
     4783    { 
    81034784                      pos_cur_decl = setposcur()-9; 
    8104                    } 
    8105 break; 
    8106 case 191: 
    8107 #line 1294 "fortran.y" 
    8108 {strcpy(yyval.nac,yyvsp[0].nac);} 
    8109 break; 
    8110 case 192: 
    8111 #line 1297 "fortran.y" 
    8112 { 
    8113                       strcpy(yyval.nac,"INTEGER"); 
     4785                   ;} 
     4786    break; 
     4787 
     4788  case 191: 
     4789#line 1346 "fortran.y" 
     4790    {strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     4791    break; 
     4792 
     4793  case 192: 
     4794#line 1349 "fortran.y" 
     4795    { 
     4796                      strcpy((yyval.nac),"INTEGER"); 
    81144797                      pos_cur_decl = setposcur()-7; 
    8115                    } 
    8116 break; 
    8117 case 193: 
    8118 #line 1301 "fortran.y" 
    8119 { 
    8120                       strcpy(yyval.nac,"REAL"); 
     4798                   ;} 
     4799    break; 
     4800 
     4801  case 193: 
     4802#line 1353 "fortran.y" 
     4803    { 
     4804                      strcpy((yyval.nac),"REAL"); 
    81214805                      pos_cur_decl = setposcur()-4; 
    8122                    } 
    8123 break; 
    8124 case 194: 
    8125 #line 1306 "fortran.y" 
    8126 {strcpy(yyval.nac,"COMPLEX"); 
    8127                    pos_cur_decl = setposcur()-7;} 
    8128 break; 
    8129 case 195: 
    8130 #line 1309 "fortran.y" 
    8131 { 
     4806                   ;} 
     4807    break; 
     4808 
     4809  case 194: 
     4810#line 1358 "fortran.y" 
     4811    {strcpy((yyval.nac),"COMPLEX"); 
     4812                   pos_cur_decl = setposcur()-7;;} 
     4813    break; 
     4814 
     4815  case 195: 
     4816#line 1361 "fortran.y" 
     4817    { 
    81324818                      pos_cur_decl = setposcur()-16; 
    8133                       strcpy(yyval.nac,"REAL"); 
     4819                      strcpy((yyval.nac),"REAL"); 
    81344820                      strcpy(nameinttypename,"8"); 
    8135                    } 
    8136 break; 
    8137 case 196: 
    8138 #line 1315 "fortran.y" 
    8139 {strcpy(yyval.nac,"DOUBLE COMPLEX");} 
    8140 break; 
    8141 case 197: 
    8142 #line 1317 "fortran.y" 
    8143 { 
    8144                       strcpy(yyval.nac,"LOGICAL"); 
     4821                   ;} 
     4822    break; 
     4823 
     4824  case 196: 
     4825#line 1367 "fortran.y" 
     4826    {strcpy((yyval.nac),"DOUBLE COMPLEX");;} 
     4827    break; 
     4828 
     4829  case 197: 
     4830#line 1369 "fortran.y" 
     4831    { 
     4832                      strcpy((yyval.nac),"LOGICAL"); 
    81454833                      pos_cur_decl = setposcur()-7; 
    8146                    } 
    8147 break; 
    8148 case 199: 
    8149 #line 1323 "fortran.y" 
    8150 {strcpy(vallengspec,yyvsp[0].na);} 
    8151 break; 
    8152 case 200: 
    8153 #line 1325 "fortran.y" 
    8154 {sprintf(yyval.na,"*%s",yyvsp[0].na);} 
    8155 break; 
    8156 case 201: 
    8157 #line 1326 "fortran.y" 
    8158 {strcpy(yyval.na,"*(*)");} 
    8159 break; 
    8160 case 208: 
    8161 #line 1337 "fortran.y" 
    8162 { 
    8163                       if ( strstr(yyvsp[0].na,"0.d0") ) 
     4834                   ;} 
     4835    break; 
     4836 
     4837  case 199: 
     4838#line 1375 "fortran.y" 
     4839    {strcpy(vallengspec,(yyvsp[(2) - (2)].na));;} 
     4840    break; 
     4841 
     4842  case 200: 
     4843#line 1377 "fortran.y" 
     4844    {sprintf((yyval.na),"*%s",(yyvsp[(1) - (1)].na));;} 
     4845    break; 
     4846 
     4847  case 201: 
     4848#line 1378 "fortran.y" 
     4849    {strcpy((yyval.na),"*(*)");;} 
     4850    break; 
     4851 
     4852  case 208: 
     4853#line 1389 "fortran.y" 
     4854                      { 
     4855                      if ( strstr((yyvsp[(3) - (3)].na),"0.d0") ) 
    81644856                      { 
    81654857                         strcpy(nameinttypename,"8"); 
    81664858                         sprintf(NamePrecision,""); 
    81674859                      } 
    8168                       else sprintf(NamePrecision,"%s = %s",yyvsp[-2].nac,yyvsp[0].na); 
    8169                    } 
    8170 break; 
    8171 case 209: 
    8172 #line 1346 "fortran.y" 
    8173 { 
    8174                       strcpy(NamePrecision,yyvsp[0].nac); 
    8175                    } 
    8176 break; 
    8177 case 210: 
    8178 #line 1350 "fortran.y" 
    8179 { 
    8180                       strcpy(NamePrecision,yyvsp[0].nac); 
    8181                    } 
    8182 break; 
    8183 case 211: 
    8184 #line 1354 "fortran.y" 
    8185 {strcpy(CharacterSize,yyvsp[0].na); 
    8186                     strcpy(yyval.na,yyvsp[0].na);} 
    8187 break; 
    8188 case 212: 
    8189 #line 1356 "fortran.y" 
    8190 {strcpy(CharacterSize,"*"); 
    8191                     strcpy(yyval.na,"*");} 
    8192 break; 
    8193 case 220: 
    8194 #line 1370 "fortran.y" 
    8195 { 
     4860                      else sprintf(NamePrecision,"%s = %s",(yyvsp[(1) - (3)].nac),(yyvsp[(3) - (3)].na)); 
     4861                   ;} 
     4862    break; 
     4863 
     4864  case 209: 
     4865#line 1398 "fortran.y" 
     4866    { 
     4867                      strcpy(NamePrecision,(yyvsp[(1) - (1)].nac)); 
     4868                   ;} 
     4869    break; 
     4870 
     4871  case 210: 
     4872#line 1402 "fortran.y" 
     4873    { 
     4874                      strcpy(NamePrecision,(yyvsp[(1) - (1)].nac)); 
     4875                   ;} 
     4876    break; 
     4877 
     4878  case 211: 
     4879#line 1406 "fortran.y" 
     4880    {strcpy(CharacterSize,(yyvsp[(1) - (1)].na)); 
     4881                    strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     4882    break; 
     4883 
     4884  case 212: 
     4885#line 1408 "fortran.y" 
     4886    {strcpy(CharacterSize,"*"); 
     4887                    strcpy((yyval.na),"*");;} 
     4888    break; 
     4889 
     4890  case 220: 
     4891#line 1422 "fortran.y" 
     4892    { 
    81964893                      VariableIsParameter = 1; 
    8197                    } 
    8198 break; 
    8199 case 222: 
    8200 #line 1375 "fortran.y" 
    8201 {Allocatabledeclare = 1;} 
    8202 break; 
    8203 case 223: 
    8204 #line 1377 "fortran.y" 
    8205 { 
     4894                   ;} 
     4895    break; 
     4896 
     4897  case 222: 
     4898#line 1427 "fortran.y" 
     4899    {Allocatabledeclare = 1;;} 
     4900    break; 
     4901 
     4902  case 223: 
     4903#line 1429 "fortran.y" 
     4904    { 
    82064905                      dimsgiven=1; 
    8207                       curdim=yyvsp[0].d; 
    8208                    } 
    8209 break; 
    8210 case 224: 
    8211 #line 1382 "fortran.y" 
    8212 {ExternalDeclare = 1;} 
    8213 break; 
    8214 case 225: 
    8215 #line 1384 "fortran.y" 
    8216 {strcpy(IntentSpec,yyvsp[-1].nac);} 
    8217 break; 
    8218 case 227: 
    8219 #line 1386 "fortran.y" 
    8220 {optionaldeclare = 1 ;} 
    8221 break; 
    8222 case 228: 
    8223 #line 1387 "fortran.y" 
    8224 {pointerdeclare = 1 ;} 
    8225 break; 
    8226 case 229: 
    8227 #line 1388 "fortran.y" 
    8228 { 
     4906                      curdim=(yyvsp[(2) - (2)].d); 
     4907                   ;} 
     4908    break; 
     4909 
     4910  case 224: 
     4911#line 1434 "fortran.y" 
     4912    {ExternalDeclare = 1;;} 
     4913    break; 
     4914 
     4915  case 225: 
     4916#line 1436 "fortran.y" 
     4917    {strcpy(IntentSpec,(yyvsp[(3) - (4)].nac));;} 
     4918    break; 
     4919 
     4920  case 227: 
     4921#line 1438 "fortran.y" 
     4922    {optionaldeclare = 1 ;;} 
     4923    break; 
     4924 
     4925  case 228: 
     4926#line 1439 "fortran.y" 
     4927    {pointerdeclare = 1 ;;} 
     4928    break; 
     4929 
     4930  case 229: 
     4931#line 1440 "fortran.y" 
     4932    { 
    82294933/*                       if ( inmodulemeet == 1 ) 
    82304934                       {*/ 
    82314935                          SaveDeclare = 1 ; 
    82324936                     /*  }*/ 
    8233                     } 
    8234 break; 
    8235 case 231: 
    8236 #line 1396 "fortran.y" 
    8237 {strcpy(yyval.nac,yyvsp[0].nac);} 
    8238 break; 
    8239 case 232: 
    8240 #line 1397 "fortran.y" 
    8241 {strcpy(yyval.nac,yyvsp[0].nac);} 
    8242 break; 
    8243 case 233: 
    8244 #line 1398 "fortran.y" 
    8245 {strcpy(yyval.nac,yyvsp[0].nac); } 
    8246 break; 
    8247 case 234: 
    8248 #line 1401 "fortran.y" 
    8249 {PublicDeclare = 1;} 
    8250 break; 
    8251 case 235: 
    8252 #line 1403 "fortran.y" 
    8253 {PrivateDeclare = 1;} 
    8254 break; 
    8255 case 236: 
    8256 #line 1405 "fortran.y" 
    8257 {if ( created_dimensionlist == 1 ) 
     4937                    ;} 
     4938    break; 
     4939 
     4940  case 230: 
     4941#line 1447 "fortran.y" 
     4942    {Targetdeclare = 1;;} 
     4943    break; 
     4944 
     4945  case 231: 
     4946#line 1449 "fortran.y" 
     4947    {strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     4948    break; 
     4949 
     4950  case 232: 
     4951#line 1450 "fortran.y" 
     4952    {strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     4953    break; 
     4954 
     4955  case 233: 
     4956#line 1451 "fortran.y" 
     4957    {strcpy((yyval.nac),(yyvsp[(1) - (1)].nac)); ;} 
     4958    break; 
     4959 
     4960  case 234: 
     4961#line 1454 "fortran.y" 
     4962    {PublicDeclare = 1;;} 
     4963    break; 
     4964 
     4965  case 235: 
     4966#line 1456 "fortran.y" 
     4967    {PrivateDeclare = 1;;} 
     4968    break; 
     4969 
     4970  case 236: 
     4971#line 1458 "fortran.y" 
     4972    {if ( created_dimensionlist == 1 ) 
    82584973                       { 
    8259                            yyval.d=(listdim *)NULL; 
     4974                           (yyval.d)=(listdim *)NULL; 
    82604975                       } 
    8261                    } 
    8262 break; 
    8263 case 237: 
    8264 #line 1411 "fortran.y" 
    8265 {if ( created_dimensionlist == 1 || 
    8266                          agrif_parentcall      == 1 ) yyval.d=yyvsp[-1].d;} 
    8267 break; 
    8268 case 238: 
    8269 #line 1414 "fortran.y" 
    8270 {if ( created_dimensionlist == 1 || 
    8271                          agrif_parentcall      == 1 ) yyval.d=insertdim(NULL,yyvsp[0].dim1);} 
    8272 break; 
    8273 case 239: 
    8274 #line 1417 "fortran.y" 
    8275 {if ( couldaddvariable == 1 ) 
    8276                          if ( created_dimensionlist == 1 ) yyval.d=insertdim(yyvsp[-2].d,yyvsp[0].dim1);} 
    8277 break; 
    8278 case 240: 
    8279 #line 1420 "fortran.y" 
    8280 { 
    8281                       strcpy(yyval.dim1.first,"1"); 
    8282                       strcpy(yyval.dim1.last,yyvsp[0].na); 
    8283                       Save_Length(yyvsp[0].na,1); 
    8284                    } 
    8285 break; 
    8286 case 241: 
    8287 #line 1425 "fortran.y" 
    8288 { 
    8289                       strcpy(yyval.dim1.first,""); 
    8290                       strcpy(yyval.dim1.last,""); 
    8291                    } 
    8292 break; 
    8293 case 242: 
    8294 #line 1429 "fortran.y" 
    8295 { 
    8296                       strcpy(yyval.dim1.first,yyvsp[-1].na); 
    8297                       Save_Length(yyvsp[-1].na,2); 
    8298                       strcpy(yyval.dim1.last,""); 
    8299                    } 
    8300 break; 
    8301 case 243: 
    8302 #line 1434 "fortran.y" 
    8303 { 
    8304                       strcpy(yyval.dim1.first,""); 
    8305                       strcpy(yyval.dim1.last,yyvsp[0].na); 
    8306                       Save_Length(yyvsp[0].na,1); 
    8307                    } 
    8308 break; 
    8309 case 244: 
    8310 #line 1440 "fortran.y" 
    8311 { 
    8312                       strcpy(yyval.dim1.first,yyvsp[-2].na); 
    8313                       Save_Length(yyvsp[-2].na,2); 
    8314                       strcpy(yyval.dim1.last,yyvsp[0].na); 
    8315                       Save_Length(yyvsp[0].na,1); 
    8316                    } 
    8317 break; 
    8318 case 245: 
    8319 #line 1447 "fortran.y" 
    8320 {strcpy(yyval.na,"*");} 
    8321 break; 
    8322 case 246: 
    8323 #line 1448 "fortran.y" 
    8324 {strcpy(yyval.na,yyvsp[0].na);} 
    8325 break; 
    8326 case 247: 
    8327 #line 1450 "fortran.y" 
    8328 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8329 break; 
    8330 case 248: 
    8331 #line 1452 "fortran.y" 
    8332 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"(%s)",yyvsp[-1].na);} 
    8333 break; 
    8334 case 249: 
    8335 #line 1454 "fortran.y" 
    8336 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8337 break; 
    8338 case 250: 
    8339 #line 1456 "fortran.y" 
    8340 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8341 break; 
    8342 case 251: 
    8343 #line 1460 "fortran.y" 
    8344 {sprintf(yyval.na,"SUM(%s)",yyvsp[-1].na);} 
    8345 break; 
    8346 case 252: 
    8347 #line 1462 "fortran.y" 
    8348 {sprintf(yyval.na,"MAX(%s)",yyvsp[-1].na);} 
    8349 break; 
    8350 case 253: 
     4976                   ;} 
     4977    break; 
     4978 
     4979  case 237: 
    83514980#line 1464 "fortran.y" 
    8352 {sprintf(yyval.na,"TANH(%s)",yyvsp[-1].na);} 
    8353 break; 
    8354 case 254: 
    8355 #line 1466 "fortran.y" 
    8356 {sprintf(yyval.na,"MAXVAL(%s)",yyvsp[-1].na);} 
    8357 break; 
    8358 case 255: 
    8359 #line 1468 "fortran.y" 
    8360 {sprintf(yyval.na,"MIN(%s)",yyvsp[-1].na);} 
    8361 break; 
    8362 case 256: 
     4981    {if ( created_dimensionlist == 1 || 
     4982                         agrif_parentcall      == 1 ) (yyval.d)=(yyvsp[(2) - (3)].d);;} 
     4983    break; 
     4984 
     4985  case 238: 
     4986#line 1467 "fortran.y" 
     4987    {if ( created_dimensionlist == 1 || 
     4988                         agrif_parentcall      == 1 ) (yyval.d)=insertdim(NULL,(yyvsp[(1) - (1)].dim1));;} 
     4989    break; 
     4990 
     4991  case 239: 
    83634992#line 1470 "fortran.y" 
    8364 {sprintf(yyval.na,"MINVAL(%s)",yyvsp[-1].na);} 
    8365 break; 
    8366 case 257: 
    8367 #line 1472 "fortran.y" 
    8368 {sprintf(yyval.na,"TRIM(%s)",yyvsp[-1].na);} 
    8369 break; 
    8370 case 258: 
    8371 #line 1474 "fortran.y" 
    8372 {sprintf(yyval.na,"SQRT(%s)",yyvsp[-1].na);} 
    8373 break; 
    8374 case 259: 
    8375 #line 1476 "fortran.y" 
    8376 {sprintf(yyval.na,"REAL(%s)",yyvsp[-1].na);} 
    8377 break; 
    8378 case 260: 
     4993    {if ( couldaddvariable == 1 ) 
     4994                         if ( created_dimensionlist == 1 ) (yyval.d)=insertdim((yyvsp[(1) - (3)].d),(yyvsp[(3) - (3)].dim1));;} 
     4995    break; 
     4996 
     4997  case 240: 
     4998#line 1473 "fortran.y" 
     4999    { 
     5000                      strcpy((yyval.dim1).first,"1"); 
     5001                      strcpy((yyval.dim1).last,(yyvsp[(1) - (1)].na)); 
     5002                      Save_Length((yyvsp[(1) - (1)].na),1); 
     5003                   ;} 
     5004    break; 
     5005 
     5006  case 241: 
    83795007#line 1478 "fortran.y" 
    8380 {sprintf(yyval.na,"NINT(%s)",yyvsp[-1].na);} 
    8381 break; 
    8382 case 261: 
    8383 #line 1480 "fortran.y" 
    8384 {sprintf(yyval.na,"FLOAT(%s)",yyvsp[-1].na);} 
    8385 break; 
    8386 case 262: 
     5008    { 
     5009                      strcpy((yyval.dim1).first,""); 
     5010                      strcpy((yyval.dim1).last,""); 
     5011                   ;} 
     5012    break; 
     5013 
     5014  case 242: 
    83875015#line 1482 "fortran.y" 
    8388 {sprintf(yyval.na,"EXP(%s)",yyvsp[-1].na);} 
    8389 break; 
    8390 case 263: 
    8391 #line 1484 "fortran.y" 
    8392 {sprintf(yyval.na,"COS(%s)",yyvsp[-1].na);} 
    8393 break; 
    8394 case 264: 
    8395 #line 1486 "fortran.y" 
    8396 {sprintf(yyval.na,"COSH(%s)",yyvsp[-1].na);} 
    8397 break; 
    8398 case 265: 
    8399 #line 1488 "fortran.y" 
    8400 {sprintf(yyval.na,"ACOS(%s)",yyvsp[-1].na);} 
    8401 break; 
    8402 case 266: 
    8403 #line 1490 "fortran.y" 
    8404 {sprintf(yyval.na,"SIN(%s)",yyvsp[-1].na);} 
    8405 break; 
    8406 case 267: 
    8407 #line 1492 "fortran.y" 
    8408 {sprintf(yyval.na,"SINH(%s)",yyvsp[-1].na);} 
    8409 break; 
    8410 case 268: 
    8411 #line 1494 "fortran.y" 
    8412 {sprintf(yyval.na,"ASIN(%s)",yyvsp[-1].na);} 
    8413 break; 
    8414 case 269: 
    8415 #line 1496 "fortran.y" 
    8416 {sprintf(yyval.na,"LOG(%s)",yyvsp[-1].na);} 
    8417 break; 
    8418 case 270: 
    8419 #line 1498 "fortran.y" 
    8420 {sprintf(yyval.na,"TAN(%s)",yyvsp[-1].na);} 
    8421 break; 
    8422 case 271: 
     5016    { 
     5017                      strcpy((yyval.dim1).first,(yyvsp[(1) - (2)].na)); 
     5018                      Save_Length((yyvsp[(1) - (2)].na),2); 
     5019                      strcpy((yyval.dim1).last,""); 
     5020                   ;} 
     5021    break; 
     5022 
     5023  case 243: 
     5024#line 1487 "fortran.y" 
     5025    { 
     5026                      strcpy((yyval.dim1).first,""); 
     5027                      strcpy((yyval.dim1).last,(yyvsp[(2) - (2)].na)); 
     5028                      Save_Length((yyvsp[(2) - (2)].na),1); 
     5029                   ;} 
     5030    break; 
     5031 
     5032  case 244: 
     5033#line 1493 "fortran.y" 
     5034    { 
     5035                      strcpy((yyval.dim1).first,(yyvsp[(1) - (3)].na)); 
     5036                      Save_Length((yyvsp[(1) - (3)].na),2); 
     5037                      strcpy((yyval.dim1).last,(yyvsp[(3) - (3)].na)); 
     5038                      Save_Length((yyvsp[(3) - (3)].na),1); 
     5039                   ;} 
     5040    break; 
     5041 
     5042  case 245: 
    84235043#line 1500 "fortran.y" 
    8424 {sprintf(yyval.na,"ATAN(%s)",yyvsp[-1].na);} 
    8425 break; 
    8426 case 272: 
    8427 #line 1502 "fortran.y" 
    8428 {sprintf(yyval.na,"ABS(%s)",yyvsp[-1].na);} 
    8429 break; 
    8430 case 273: 
    8431 #line 1504 "fortran.y" 
    8432 {sprintf(yyval.na,"MOD(%s)",yyvsp[-1].na);} 
    8433 break; 
    8434 case 274: 
    8435 #line 1506 "fortran.y" 
    8436 {sprintf(yyval.na,"SIGN(%s)",yyvsp[-1].na);} 
    8437 break; 
    8438 case 275: 
    8439 #line 1508 "fortran.y" 
    8440 {sprintf(yyval.na,"MINLOC(%s)",yyvsp[-1].na);} 
    8441 break; 
    8442 case 276: 
    8443 #line 1510 "fortran.y" 
    8444 {sprintf(yyval.na,"MAXLOC(%s)",yyvsp[-1].na);} 
    8445 break; 
    8446 case 277: 
    8447 #line 1512 "fortran.y" 
    8448 {strcpy(yyval.na,yyvsp[0].na);} 
    8449 break; 
    8450 case 278: 
    8451 #line 1514 "fortran.y" 
    8452 {if ( couldaddvariable == 1 ) 
    8453                    { strcpy(yyval.na,yyvsp[-2].na);strcat(yyval.na,",");strcat(yyval.na,yyvsp[0].na);}} 
    8454 break; 
    8455 case 279: 
     5044    {strcpy((yyval.na),"*");;} 
     5045    break; 
     5046 
     5047  case 246: 
     5048#line 1501 "fortran.y" 
     5049    {strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5050    break; 
     5051 
     5052  case 247: 
     5053#line 1503 "fortran.y" 
     5054    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5055    break; 
     5056 
     5057  case 248: 
     5058#line 1505 "fortran.y" 
     5059    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"(%s)",(yyvsp[(2) - (3)].na));;} 
     5060    break; 
     5061 
     5062  case 249: 
     5063#line 1507 "fortran.y" 
     5064    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5065    break; 
     5066 
     5067  case 250: 
     5068#line 1509 "fortran.y" 
     5069    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5070    break; 
     5071 
     5072  case 251: 
     5073#line 1513 "fortran.y" 
     5074    {sprintf((yyval.na),"SUM(%s)",(yyvsp[(2) - (3)].na));;} 
     5075    break; 
     5076 
     5077  case 252: 
     5078#line 1515 "fortran.y" 
     5079    {sprintf((yyval.na),"MAX(%s)",(yyvsp[(2) - (3)].na));;} 
     5080    break; 
     5081 
     5082  case 253: 
    84565083#line 1517 "fortran.y" 
    8457 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8458 break; 
    8459 case 280: 
     5084    {sprintf((yyval.na),"TANH(%s)",(yyvsp[(3) - (4)].na));;} 
     5085    break; 
     5086 
     5087  case 254: 
    84605088#line 1519 "fortran.y" 
    8461 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].nac);} 
    8462 break; 
    8463 case 281: 
     5089    {sprintf((yyval.na),"MAXVAL(%s)",(yyvsp[(3) - (4)].na));;} 
     5090    break; 
     5091 
     5092  case 255: 
    84645093#line 1521 "fortran.y" 
    8465 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8466 break; 
    8467 case 282: 
     5094    {sprintf((yyval.na),"MIN(%s)",(yyvsp[(2) - (3)].na));;} 
     5095    break; 
     5096 
     5097  case 256: 
    84685098#line 1523 "fortran.y" 
    8469 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].na,yyvsp[0].na);} 
    8470 break; 
    8471 case 283: 
     5099    {sprintf((yyval.na),"MINVAL(%s)",(yyvsp[(3) - (4)].na));;} 
     5100    break; 
     5101 
     5102  case 257: 
    84725103#line 1525 "fortran.y" 
    8473 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8474 break; 
    8475 case 284: 
     5104    {sprintf((yyval.na),"TRIM(%s)",(yyvsp[(3) - (4)].na));;} 
     5105    break; 
     5106 
     5107  case 258: 
    84765108#line 1527 "fortran.y" 
    8477 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8478 break; 
    8479 case 285: 
     5109    {sprintf((yyval.na),"SQRT(%s)",(yyvsp[(2) - (3)].na));;} 
     5110    break; 
     5111 
     5112  case 259: 
    84805113#line 1529 "fortran.y" 
    8481 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,"+");} 
    8482 break; 
    8483 case 286: 
    8484 #line 1530 "fortran.y" 
    8485 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,"-");} 
    8486 break; 
    8487 case 287: 
     5114    {sprintf((yyval.na),"REAL(%s)",(yyvsp[(3) - (4)].na));;} 
     5115    break; 
     5116 
     5117  case 260: 
     5118#line 1531 "fortran.y" 
     5119    {sprintf((yyval.na),"NINT(%s)",(yyvsp[(3) - (4)].na));;} 
     5120    break; 
     5121 
     5122  case 261: 
    84885123#line 1533 "fortran.y" 
    8489 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"+%s",yyvsp[0].na);} 
    8490 break; 
    8491 case 288: 
     5124    {sprintf((yyval.na),"FLOAT(%s)",(yyvsp[(3) - (4)].na));;} 
     5125    break; 
     5126 
     5127  case 262: 
    84925128#line 1535 "fortran.y" 
    8493 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"-%s",yyvsp[0].na);} 
    8494 break; 
    8495 case 289: 
     5129    {sprintf((yyval.na),"EXP(%s)",(yyvsp[(3) - (4)].na));;} 
     5130    break; 
     5131 
     5132  case 263: 
    84965133#line 1537 "fortran.y" 
    8497 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"*%s",yyvsp[0].na);} 
    8498 break; 
    8499 case 290: 
     5134    {sprintf((yyval.na),"COS(%s)",(yyvsp[(3) - (4)].na));;} 
     5135    break; 
     5136 
     5137  case 264: 
    85005138#line 1539 "fortran.y" 
    8501 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8502 break; 
    8503 case 291: 
     5139    {sprintf((yyval.na),"COSH(%s)",(yyvsp[(3) - (4)].na));;} 
     5140    break; 
     5141 
     5142  case 265: 
    85045143#line 1541 "fortran.y" 
    8505 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8506 break; 
    8507 case 292: 
     5144    {sprintf((yyval.na),"ACOS(%s)",(yyvsp[(3) - (4)].na));;} 
     5145    break; 
     5146 
     5147  case 266: 
    85085148#line 1543 "fortran.y" 
    8509 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8510 break; 
    8511 case 293: 
     5149    {sprintf((yyval.na),"SIN(%s)",(yyvsp[(3) - (4)].na));;} 
     5150    break; 
     5151 
     5152  case 267: 
    85125153#line 1545 "fortran.y" 
    8513 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8514 break; 
    8515 case 294: 
     5154    {sprintf((yyval.na),"SINH(%s)",(yyvsp[(3) - (4)].na));;} 
     5155    break; 
     5156 
     5157  case 268: 
    85165158#line 1547 "fortran.y" 
    8517 {if ( couldaddvariable == 1 ) sprintf(yyval.na," > %s",yyvsp[0].na);} 
    8518 break; 
    8519 case 295: 
     5159    {sprintf((yyval.na),"ASIN(%s)",(yyvsp[(3) - (4)].na));;} 
     5160    break; 
     5161 
     5162  case 269: 
    85205163#line 1549 "fortran.y" 
    8521 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8522 break; 
    8523 case 296: 
     5164    {sprintf((yyval.na),"LOG(%s)",(yyvsp[(3) - (4)].na));;} 
     5165    break; 
     5166 
     5167  case 270: 
    85245168#line 1551 "fortran.y" 
    8525 {if ( couldaddvariable == 1 ) sprintf(yyval.na," < %s",yyvsp[0].na);} 
    8526 break; 
    8527 case 297: 
     5169    {sprintf((yyval.na),"TAN(%s)",(yyvsp[(3) - (4)].na));;} 
     5170    break; 
     5171 
     5172  case 271: 
    85285173#line 1553 "fortran.y" 
    8529 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8530 break; 
    8531 case 298: 
     5174    {sprintf((yyval.na),"ATAN(%s)",(yyvsp[(3) - (4)].na));;} 
     5175    break; 
     5176 
     5177  case 272: 
    85325178#line 1555 "fortran.y" 
    8533 {if ( couldaddvariable == 1 ) sprintf(yyval.na," >= %s",yyvsp[0].na);} 
    8534 break; 
    8535 case 299: 
     5179    {sprintf((yyval.na),"ABS(%s)",(yyvsp[(2) - (3)].na));;} 
     5180    break; 
     5181 
     5182  case 273: 
    85365183#line 1557 "fortran.y" 
    8537 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8538 break; 
    8539 case 300: 
     5184    {sprintf((yyval.na),"MOD(%s)",(yyvsp[(3) - (4)].na));;} 
     5185    break; 
     5186 
     5187  case 274: 
    85405188#line 1559 "fortran.y" 
    8541 {if ( couldaddvariable == 1 ) sprintf(yyval.na," <= %s",yyvsp[0].na);} 
    8542 break; 
    8543 case 301: 
     5189    {sprintf((yyval.na),"SIGN(%s)",(yyvsp[(3) - (4)].na));;} 
     5190    break; 
     5191 
     5192  case 275: 
    85445193#line 1561 "fortran.y" 
    8545 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8546 break; 
    8547 case 302: 
     5194    {sprintf((yyval.na),"MINLOC(%s)",(yyvsp[(3) - (4)].na));;} 
     5195    break; 
     5196 
     5197  case 276: 
    85485198#line 1563 "fortran.y" 
    8549 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8550 break; 
    8551 case 303: 
     5199    {sprintf((yyval.na),"MAXLOC(%s)",(yyvsp[(3) - (4)].na));;} 
     5200    break; 
     5201 
     5202  case 277: 
    85525203#line 1565 "fortran.y" 
    8553 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8554 break; 
    8555 case 304: 
     5204    {strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5205    break; 
     5206 
     5207  case 278: 
    85565208#line 1567 "fortran.y" 
    8557 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8558 break; 
    8559 case 305: 
    8560 #line 1569 "fortran.y" 
    8561 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s%s",yyvsp[-1].nac,yyvsp[0].na);} 
    8562 break; 
    8563 case 306: 
    8564 #line 1571 "fortran.y" 
    8565 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s",yyvsp[0].na);} 
    8566 break; 
    8567 case 307: 
    8568 #line 1573 "fortran.y" 
    8569 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s",yyvsp[0].na);} 
    8570 break; 
    8571 case 308: 
    8572 #line 1575 "fortran.y" 
    8573 {strcpy(yyval.na,"");} 
    8574 break; 
    8575 case 309: 
    8576 #line 1577 "fortran.y" 
    8577 {sprintf(yyval.na,"/%s",yyvsp[0].na);} 
    8578 break; 
    8579 case 310: 
    8580 #line 1579 "fortran.y" 
    8581 {sprintf(yyval.na,"/= %s",yyvsp[0].na);} 
    8582 break; 
    8583 case 311: 
    8584 #line 1581 "fortran.y" 
    8585 {sprintf(yyval.na,"//%s",yyvsp[0].na);} 
    8586 break; 
    8587 case 312: 
    8588 #line 1584 "fortran.y" 
    8589 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"==%s",yyvsp[0].na);} 
    8590 break; 
    8591 case 313: 
     5209    {if ( couldaddvariable == 1 ) 
     5210                   { strcpy((yyval.na),(yyvsp[(1) - (3)].na));strcat((yyval.na),",");strcat((yyval.na),(yyvsp[(3) - (3)].na));};} 
     5211    break; 
     5212 
     5213  case 279: 
     5214#line 1570 "fortran.y" 
     5215    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5216    break; 
     5217 
     5218  case 280: 
     5219#line 1572 "fortran.y" 
     5220    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].nac));;} 
     5221    break; 
     5222 
     5223  case 281: 
     5224#line 1574 "fortran.y" 
     5225    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5226    break; 
     5227 
     5228  case 282: 
     5229#line 1576 "fortran.y" 
     5230    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na));;} 
     5231    break; 
     5232 
     5233  case 283: 
     5234#line 1578 "fortran.y" 
     5235    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5236    break; 
     5237 
     5238  case 284: 
     5239#line 1580 "fortran.y" 
     5240    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5241    break; 
     5242 
     5243  case 285: 
     5244#line 1582 "fortran.y" 
     5245    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),"+");;} 
     5246    break; 
     5247 
     5248  case 286: 
     5249#line 1583 "fortran.y" 
     5250    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),"-");;} 
     5251    break; 
     5252 
     5253  case 287: 
    85925254#line 1586 "fortran.y" 
    8593 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"= %s",yyvsp[0].na);} 
    8594 break; 
    8595 case 314: 
    8596 #line 1589 "fortran.y" 
    8597 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].nac);} 
    8598 break; 
    8599 case 315: 
    8600 #line 1591 "fortran.y" 
    8601 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8602 break; 
    8603 case 316: 
    8604 #line 1593 "fortran.y" 
    8605 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8606 break; 
    8607 case 317: 
    8608 #line 1595 "fortran.y" 
    8609 { 
     5255    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"+%s",(yyvsp[(2) - (2)].na));;} 
     5256    break; 
     5257 
     5258  case 288: 
     5259#line 1588 "fortran.y" 
     5260    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"-%s",(yyvsp[(2) - (2)].na));;} 
     5261    break; 
     5262 
     5263  case 289: 
     5264#line 1590 "fortran.y" 
     5265    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"*%s",(yyvsp[(2) - (2)].na));;} 
     5266    break; 
     5267 
     5268  case 290: 
     5269#line 1592 "fortran.y" 
     5270    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5271    break; 
     5272 
     5273  case 291: 
     5274#line 1594 "fortran.y" 
     5275    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5276    break; 
     5277 
     5278  case 292: 
     5279#line 1596 "fortran.y" 
     5280    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5281    break; 
     5282 
     5283  case 293: 
     5284#line 1598 "fortran.y" 
     5285    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5286    break; 
     5287 
     5288  case 294: 
     5289#line 1600 "fortran.y" 
     5290    {if ( couldaddvariable == 1 ) sprintf((yyval.na)," > %s",(yyvsp[(2) - (2)].na));;} 
     5291    break; 
     5292 
     5293  case 295: 
     5294#line 1602 "fortran.y" 
     5295    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5296    break; 
     5297 
     5298  case 296: 
     5299#line 1604 "fortran.y" 
     5300    {if ( couldaddvariable == 1 ) sprintf((yyval.na)," < %s",(yyvsp[(2) - (2)].na));;} 
     5301    break; 
     5302 
     5303  case 297: 
     5304#line 1606 "fortran.y" 
     5305    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5306    break; 
     5307 
     5308  case 298: 
     5309#line 1608 "fortran.y" 
     5310    {if ( couldaddvariable == 1 ) sprintf((yyval.na)," >= %s",(yyvsp[(3) - (3)].na));;} 
     5311    break; 
     5312 
     5313  case 299: 
     5314#line 1610 "fortran.y" 
     5315    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5316    break; 
     5317 
     5318  case 300: 
     5319#line 1612 "fortran.y" 
     5320    {if ( couldaddvariable == 1 ) sprintf((yyval.na)," <= %s",(yyvsp[(3) - (3)].na));;} 
     5321    break; 
     5322 
     5323  case 301: 
     5324#line 1614 "fortran.y" 
     5325    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5326    break; 
     5327 
     5328  case 302: 
     5329#line 1616 "fortran.y" 
     5330    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5331    break; 
     5332 
     5333  case 303: 
     5334#line 1618 "fortran.y" 
     5335    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5336    break; 
     5337 
     5338  case 304: 
     5339#line 1620 "fortran.y" 
     5340    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5341    break; 
     5342 
     5343  case 305: 
     5344#line 1622 "fortran.y" 
     5345    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].na));;} 
     5346    break; 
     5347 
     5348  case 306: 
     5349#line 1624 "fortran.y" 
     5350    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s",(yyvsp[(2) - (2)].na));;} 
     5351    break; 
     5352 
     5353  case 307: 
     5354#line 1626 "fortran.y" 
     5355    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s",(yyvsp[(2) - (2)].na));;} 
     5356    break; 
     5357 
     5358  case 308: 
     5359#line 1628 "fortran.y" 
     5360    {strcpy((yyval.na),"");;} 
     5361    break; 
     5362 
     5363  case 309: 
     5364#line 1630 "fortran.y" 
     5365    {sprintf((yyval.na),"/%s",(yyvsp[(1) - (1)].na));;} 
     5366    break; 
     5367 
     5368  case 310: 
     5369#line 1632 "fortran.y" 
     5370    {sprintf((yyval.na),"/= %s",(yyvsp[(2) - (2)].na));;} 
     5371    break; 
     5372 
     5373  case 311: 
     5374#line 1634 "fortran.y" 
     5375    {sprintf((yyval.na),"//%s",(yyvsp[(2) - (2)].na));;} 
     5376    break; 
     5377 
     5378  case 312: 
     5379#line 1637 "fortran.y" 
     5380    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"==%s",(yyvsp[(2) - (2)].na));;} 
     5381    break; 
     5382 
     5383  case 313: 
     5384#line 1639 "fortran.y" 
     5385    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"= %s",(yyvsp[(1) - (1)].na));;} 
     5386    break; 
     5387 
     5388  case 314: 
     5389#line 1642 "fortran.y" 
     5390    {if ( couldaddvariable == 1 ) 
     5391                  { 
     5392                  printf("ident = %s\n",(yyvsp[(1) - (1)].nac)); 
     5393                  strcpy((yyval.na),(yyvsp[(1) - (1)].nac));} 
     5394                  ;} 
     5395    break; 
     5396 
     5397  case 315: 
     5398#line 1648 "fortran.y" 
     5399    {if ( couldaddvariable == 1 ) { 
     5400                   printf("struct = %s\n",(yyvsp[(1) - (1)].na)); 
     5401                   strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     5402                   ;} 
     5403    break; 
     5404 
     5405  case 316: 
     5406#line 1653 "fortran.y" 
     5407    {if ( couldaddvariable == 1 ) { 
     5408                   printf("arrayref = %s\n",(yyvsp[(1) - (1)].na)); 
     5409                   strcpy((yyval.na),(yyvsp[(1) - (1)].na)); 
     5410                   };} 
     5411    break; 
     5412 
     5413  case 317: 
     5414#line 1658 "fortran.y" 
     5415    { 
    86105416                      agrif_parentcall =0; 
    86115417                      if (!strcasecmp(identcopy,"Agrif_Parent") ) 
     
    86175423                                                        curmodulename); 
    86185424                      } 
    8619                    } 
    8620 break; 
    8621 case 318: 
    8622 #line 1608 "fortran.y" 
    8623 { 
    8624                      strcpy(yyval.na,yyvsp[0].na); 
     5425                   ;} 
     5426    break; 
     5427 
     5428  case 318: 
     5429#line 1671 "fortran.y" 
     5430    { 
     5431                     strcpy((yyval.na),(yyvsp[(1) - (1)].na)); 
    86255432                     if ( incalldeclare == 0 ) inagrifcallargument = 0; 
    8626                    } 
    8627 break; 
    8628 case 319: 
    8629 #line 1613 "fortran.y" 
    8630 {if ( couldaddvariable == 1 ) sprintf(yyval.na," %s %s ",yyvsp[-1].na,yyvsp[0].na);} 
    8631 break; 
    8632 case 320: 
    8633 #line 1615 "fortran.y" 
    8634 {if ( couldaddvariable == 1 ) 
    8635                                                 sprintf(yyval.na," %s ( %s )",yyvsp[-3].na,yyvsp[-1].na);} 
    8636 break; 
    8637 case 321: 
    8638 #line 1618 "fortran.y" 
    8639 {if ( couldaddvariable == 1 ) 
    8640                                          sprintf(yyval.na," %s ( %s ) %s ",yyvsp[-4].na,yyvsp[-2].na,yyvsp[0].na);} 
    8641 break; 
    8642 case 322: 
    8643 #line 1622 "fortran.y" 
    8644 { 
     5433                   ;} 
     5434    break; 
     5435 
     5436  case 319: 
     5437#line 1676 "fortran.y" 
     5438    {if ( couldaddvariable == 1 ) sprintf((yyval.na)," %s %s ",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na));;} 
     5439    break; 
     5440 
     5441  case 320: 
     5442#line 1678 "fortran.y" 
     5443    {if ( couldaddvariable == 1 ) 
     5444                                                sprintf((yyval.na)," %s ( %s )",(yyvsp[(1) - (4)].na),(yyvsp[(3) - (4)].na));;} 
     5445    break; 
     5446 
     5447  case 321: 
     5448#line 1681 "fortran.y" 
     5449    {if ( couldaddvariable == 1 ) 
     5450                                         sprintf((yyval.na)," %s ( %s ) %s ",(yyvsp[(1) - (5)].na),(yyvsp[(3) - (5)].na),(yyvsp[(5) - (5)].na));;} 
     5451    break; 
     5452 
     5453  case 322: 
     5454#line 1685 "fortran.y" 
     5455    { 
    86455456                      if ( couldaddvariable == 1 ) 
    86465457                      { 
    8647                          sprintf(yyval.na," %s ( %s )",yyvsp[-3].nac,yyvsp[-1].na); 
    8648                          ModifyTheAgrifFunction_0(yyvsp[-1].na); 
     5458                         sprintf((yyval.na)," %s ( %s )",(yyvsp[(1) - (4)].nac),(yyvsp[(3) - (4)].na)); 
     5459                         ModifyTheAgrifFunction_0((yyvsp[(3) - (4)].na)); 
    86495460                         agrif_parentcall =0; 
    86505461                      } 
    8651                    } 
    8652 break; 
    8653 case 323: 
    8654 #line 1632 "fortran.y" 
    8655 { 
    8656                       sprintf(yyval.na," %s %% %s ",yyvsp[-2].na,yyvsp[0].na); 
     5462                   ;} 
     5463    break; 
     5464 
     5465  case 323: 
     5466#line 1695 "fortran.y" 
     5467    { 
     5468                      sprintf((yyval.na)," %s %% %s ",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); 
    86575469                      if ( incalldeclare == 0 ) inagrifcallargument = 0; 
    8658                    } 
    8659 break; 
    8660 case 324: 
    8661 #line 1638 "fortran.y" 
    8662 {sprintf(yyval.na,"(/%s/)",yyvsp[-1].na);} 
    8663 break; 
    8664 case 325: 
    8665 #line 1640 "fortran.y" 
    8666 {strcpy(yyval.na," ");} 
    8667 break; 
    8668 case 326: 
    8669 #line 1642 "fortran.y" 
    8670 {strcpy(yyval.na,yyvsp[0].na);} 
    8671 break; 
    8672 case 327: 
    8673 #line 1644 "fortran.y" 
    8674 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8675 break; 
    8676 case 328: 
    8677 #line 1646 "fortran.y" 
    8678 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na);} 
    8679 break; 
    8680 case 329: 
    8681 #line 1648 "fortran.y" 
    8682 {strcpy(yyval.na,yyvsp[0].na);} 
    8683 break; 
    8684 case 330: 
    8685 #line 1649 "fortran.y" 
    8686 {strcpy(yyval.na,yyvsp[0].na);} 
    8687 break; 
    8688 case 331: 
    8689 #line 1652 "fortran.y" 
    8690 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s :%s",yyvsp[-2].na,yyvsp[0].na);} 
    8691 break; 
    8692 case 332: 
    8693 #line 1654 "fortran.y" 
    8694 {if ( couldaddvariable == 1 ) 
    8695                                                sprintf(yyval.na,"%s :%s :%s",yyvsp[-4].na,yyvsp[-2].na,yyvsp[0].na);} 
    8696 break; 
    8697 case 333: 
    8698 #line 1657 "fortran.y" 
    8699 {if ( couldaddvariable == 1 ) sprintf(yyval.na,":%s :%s",yyvsp[-2].na,yyvsp[0].na);} 
    8700 break; 
    8701 case 334: 
    8702 #line 1658 "fortran.y" 
    8703 {if ( couldaddvariable == 1 ) sprintf(yyval.na,": : %s",yyvsp[0].na);} 
    8704 break; 
    8705 case 335: 
    8706 #line 1659 "fortran.y" 
    8707 {if ( couldaddvariable == 1 ) sprintf(yyval.na,":%s",yyvsp[0].na);} 
    8708 break; 
    8709 case 336: 
    8710 #line 1660 "fortran.y" 
    8711 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s :",yyvsp[-1].na);} 
    8712 break; 
    8713 case 337: 
    8714 #line 1661 "fortran.y" 
    8715 {if ( couldaddvariable == 1 ) sprintf(yyval.na,":");} 
    8716 break; 
    8717 case 338: 
    8718 #line 1663 "fortran.y" 
    8719 { 
    8720                        if ( couldaddvariable == 1 ) 
     5470                   ;} 
     5471    break; 
     5472 
     5473  case 324: 
     5474#line 1701 "fortran.y" 
     5475    {sprintf((yyval.na),"(/%s/)",(yyvsp[(2) - (3)].na));;} 
     5476    break; 
     5477 
     5478  case 325: 
     5479#line 1703 "fortran.y" 
     5480    {strcpy((yyval.na)," ");;} 
     5481    break; 
     5482 
     5483  case 326: 
     5484#line 1705 "fortran.y" 
     5485    {strcpy((yyval.na),(yyvsp[(2) - (2)].na));;} 
     5486    break; 
     5487 
     5488  case 327: 
     5489#line 1707 "fortran.y" 
     5490    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5491    break; 
     5492 
     5493  case 328: 
     5494#line 1709 "fortran.y" 
     5495    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     5496    break; 
     5497 
     5498  case 329: 
     5499#line 1711 "fortran.y" 
     5500    {strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5501    break; 
     5502 
     5503  case 330: 
     5504#line 1712 "fortran.y" 
     5505    {strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5506    break; 
     5507 
     5508  case 331: 
     5509#line 1715 "fortran.y" 
     5510    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s :%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     5511    break; 
     5512 
     5513  case 332: 
     5514#line 1717 "fortran.y" 
     5515    {if ( couldaddvariable == 1 ) 
     5516                                               sprintf((yyval.na),"%s :%s :%s",(yyvsp[(1) - (5)].na),(yyvsp[(3) - (5)].na),(yyvsp[(5) - (5)].na));;} 
     5517    break; 
     5518 
     5519  case 333: 
     5520#line 1720 "fortran.y" 
     5521    {if ( couldaddvariable == 1 ) sprintf((yyval.na),":%s :%s",(yyvsp[(2) - (4)].na),(yyvsp[(4) - (4)].na));;} 
     5522    break; 
     5523 
     5524  case 334: 
     5525#line 1721 "fortran.y" 
     5526    {if ( couldaddvariable == 1 ) sprintf((yyval.na),": : %s",(yyvsp[(3) - (3)].na));;} 
     5527    break; 
     5528 
     5529  case 335: 
     5530#line 1722 "fortran.y" 
     5531    {if ( couldaddvariable == 1 ) sprintf((yyval.na),":%s",(yyvsp[(2) - (2)].na));;} 
     5532    break; 
     5533 
     5534  case 336: 
     5535#line 1723 "fortran.y" 
     5536    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s :",(yyvsp[(1) - (2)].na));;} 
     5537    break; 
     5538 
     5539  case 337: 
     5540#line 1724 "fortran.y" 
     5541    {if ( couldaddvariable == 1 ) sprintf((yyval.na),":");;} 
     5542    break; 
     5543 
     5544  case 338: 
     5545#line 1726 "fortran.y" 
    87215546                       { 
    8722                        if ( Vartonumber(yyvsp[0].nac) == 1 ) 
     5547                       if ( couldaddvariable == 1 && afterpercent == 0) 
     5548                       { 
     5549                       if ( Vartonumber((yyvsp[(1) - (1)].nac)) == 1 ) 
    87235550                       { 
    87245551                          Add_SubroutineWhereAgrifUsed_1(subroutinename, 
    87255552                                                        curmodulename); 
    87265553                       } 
    8727                        if (!strcasecmp(yyvsp[0].nac,"Agrif_Parent") ) 
     5554                       if (!strcasecmp((yyvsp[(1) - (1)].nac),"Agrif_Parent") ) 
    87285555                                                            agrif_parentcall =1; 
    8729                        if ( VariableIsNotFunction(yyvsp[0].nac) == 0 ) 
     5556                       if ( VariableIsNotFunction((yyvsp[(1) - (1)].nac)) == 0 ) 
    87305557                       { 
     5558                       printf("var = %s\n",(yyvsp[(1) - (1)].nac)); 
    87315559                          if ( inagrifcallargument == 1 ) 
    87325560                          { 
    8733                              if ( !strcasecmp(yyvsp[0].nac,identcopy) ) 
     5561                             if ( !strcasecmp((yyvsp[(1) - (1)].nac),identcopy) ) 
    87345562                             { 
    87355563                                strcpy(sameagrifname,identcopy); 
     
    87375565                             } 
    87385566                          } 
    8739                           strcpy(identcopy,yyvsp[0].nac); 
     5567                          strcpy(identcopy,(yyvsp[(1) - (1)].nac)); 
    87405568                          pointedvar=0; 
    8741                           strcpy(truename,yyvsp[0].nac); 
    8742                           if (variscoupled_0(yyvsp[0].nac)) strcpy(truename,getcoupledname_0(yyvsp[0].nac)); 
    8743 /* 
    8744                           if ( VarIsNonGridDepend($1) == 0 && 
    8745                                Variableshouldberemove($1) == 0 ) 
    8746                           { 
    8747                              if ( inagrifcallargument == 1 || 
    8748                                   varisallocatable_0($1) == 1 || 
    8749                                   varispointer_0($1) == 1 ) 
    8750                              { 
    8751                             if ((IsinListe(List_UsedInSubroutine_Var,$1) == 1) || (inagrifcallargument == 1)) 
    8752                              { 
    8753                               if (varistyped_0($1) == 0) 
    8754                                  { 
    8755                                  ModifyTheVariableName_0($1); 
    8756                                  } 
    8757                                  } 
    8758                                  else 
    8759                                  { 
    8760                                  } 
    8761                              } 
    8762                              if (variscoupled_0($1) == 1) 
    8763                              { 
    8764       printf("mla variable %s est couplee %s\n",$1,getcoupledname_0($1)); 
    8765                              ModifyTheVariableNamecoupled_0($1,getcoupledname_0($1)); 
    8766                              } 
    8767                              if ( inagrifcallargument != 1 || 
    8768                                   sameagrifargument ==1 ) 
    8769                                   Add_UsedInSubroutine_Var_1($1); 
    8770                           } 
    8771                           NotifyAgrifFunction_0($1); 
    8772 */ 
     5569                          strcpy(truename,(yyvsp[(1) - (1)].nac)); 
     5570                          if (variscoupled_0((yyvsp[(1) - (1)].nac))) strcpy(truename,getcoupledname_0((yyvsp[(1) - (1)].nac))); 
     5571 
    87735572                          if ( VarIsNonGridDepend(truename) == 0 && 
    87745573                               Variableshouldberemove(truename) == 0 ) 
    8775                           { 
     5574                          {                       
    87765575                             if ( inagrifcallargument == 1 || 
    8777                                   varisallocatable_0(truename) == 1 || 
    87785576                                  varispointer_0(truename) == 1 ) 
    87795577                             { 
    8780                             if ((IsinListe(List_UsedInSubroutine_Var,yyvsp[0].nac) == 1) || (inagrifcallargument == 1)) 
     5578                             printf("var2 = %s\n",(yyvsp[(1) - (1)].nac)); 
     5579                            if ((IsinListe(List_UsedInSubroutine_Var,(yyvsp[(1) - (1)].nac)) == 1) || (inagrifcallargument == 1)) 
    87815580                             { 
    87825581                              if (varistyped_0(truename) == 0) 
    87835582                                 { 
    8784                                  ModifyTheVariableName_0(truename,strlen(yyvsp[0].nac)); 
     5583                                 ModifyTheVariableName_0(truename,strlen((yyvsp[(1) - (1)].nac))); 
    87855584                                 } 
    87865585                                 } 
    87875586                             } 
     5587                             printf("ici3\n"); 
    87885588                             if ( inagrifcallargument != 1 || 
    87895589                                  sameagrifargument ==1 ) 
     5590                                  { 
     5591                                  printf("ici5 %s\n",truename); 
    87905592                                  Add_UsedInSubroutine_Var_1(truename); 
     5593                          } 
    87915594                          } 
    87925595                          NotifyAgrifFunction_0(truename); 
    87935596                       } 
    87945597                       } 
     5598                       else 
     5599                       { 
     5600                       afterpercent = 0; 
    87955601                    } 
    8796 break; 
    8797 case 339: 
    8798 #line 1742 "fortran.y" 
    8799 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,".TRUE.");} 
    8800 break; 
    8801 case 340: 
    8802 #line 1743 "fortran.y" 
    8803 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,".FALSE.");} 
    8804 break; 
    8805 case 341: 
    8806 #line 1744 "fortran.y" 
    8807 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    8808 break; 
    8809 case 342: 
    8810 #line 1745 "fortran.y" 
    8811 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    8812 break; 
    8813 case 343: 
    8814 #line 1746 "fortran.y" 
    8815 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    8816 break; 
    8817 case 344: 
    8818 #line 1747 "fortran.y" 
    8819 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    8820 break; 
    8821 case 345: 
    8822 #line 1749 "fortran.y" 
    8823 {if ( couldaddvariable == 1 ) sprintf(yyval.nac,"%s%s",yyvsp[-1].nac,yyvsp[0].nac);} 
    8824 break; 
    8825 case 347: 
    8826 #line 1753 "fortran.y" 
    8827 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    8828 break; 
    8829 case 349: 
    8830 #line 1756 "fortran.y" 
    8831 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    8832 break; 
    8833 case 350: 
    8834 #line 1758 "fortran.y" 
    8835 {if ( couldaddvariable == 1 ) strcpy(yyval.nac,yyvsp[0].nac);} 
    8836 break; 
    8837 case 351: 
    8838 #line 1760 "fortran.y" 
    8839 {if ( couldaddvariable == 1 ) strcpy(yyval.na," ");} 
    8840 break; 
    8841 case 352: 
    8842 #line 1761 "fortran.y" 
    8843 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8844 break; 
    8845 case 353: 
    8846 #line 1764 "fortran.y" 
    8847 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"(%s :%s)",yyvsp[-3].na,yyvsp[-1].na);} 
    8848 break; 
    8849 case 354: 
    8850 #line 1766 "fortran.y" 
    8851 {if ( couldaddvariable == 1 ) strcpy(yyval.na," ");} 
    8852 break; 
    8853 case 355: 
    8854 #line 1767 "fortran.y" 
    8855 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8856 break; 
    8857 case 356: 
    8858 #line 1769 "fortran.y" 
    8859 {if ( couldaddvariable == 1 ) strcpy(yyval.na," ");} 
    8860 break; 
    8861 case 357: 
    8862 #line 1770 "fortran.y" 
    8863 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    8864 break; 
    8865 case 358: 
    8866 #line 1772 "fortran.y" 
    8867 {InitialValueGiven = 0;} 
    8868 break; 
    8869 case 359: 
    8870 #line 1774 "fortran.y" 
    8871 { 
     5602                    ;} 
     5603    break; 
     5604 
     5605  case 339: 
     5606#line 1785 "fortran.y" 
     5607    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),".TRUE.");;} 
     5608    break; 
     5609 
     5610  case 340: 
     5611#line 1786 "fortran.y" 
     5612    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),".FALSE.");;} 
     5613    break; 
     5614 
     5615  case 341: 
     5616#line 1787 "fortran.y" 
     5617    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5618    break; 
     5619 
     5620  case 342: 
     5621#line 1788 "fortran.y" 
     5622    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5623    break; 
     5624 
     5625  case 343: 
     5626#line 1789 "fortran.y" 
     5627    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5628    break; 
     5629 
     5630  case 344: 
     5631#line 1790 "fortran.y" 
     5632    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5633    break; 
     5634 
     5635  case 345: 
     5636#line 1792 "fortran.y" 
     5637    {if ( couldaddvariable == 1 ) sprintf((yyval.nac),"%s%s",(yyvsp[(1) - (2)].nac),(yyvsp[(2) - (2)].nac));;} 
     5638    break; 
     5639 
     5640  case 347: 
     5641#line 1796 "fortran.y" 
     5642    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5643    break; 
     5644 
     5645  case 349: 
     5646#line 1799 "fortran.y" 
     5647    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5648    break; 
     5649 
     5650  case 350: 
     5651#line 1801 "fortran.y" 
     5652    {if ( couldaddvariable == 1 ) strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5653    break; 
     5654 
     5655  case 351: 
     5656#line 1803 "fortran.y" 
     5657    {if ( couldaddvariable == 1 ) strcpy((yyval.na)," ");;} 
     5658    break; 
     5659 
     5660  case 352: 
     5661#line 1804 "fortran.y" 
     5662    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5663    break; 
     5664 
     5665  case 353: 
     5666#line 1807 "fortran.y" 
     5667    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"(%s :%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na));;} 
     5668    break; 
     5669 
     5670  case 354: 
     5671#line 1809 "fortran.y" 
     5672    {if ( couldaddvariable == 1 ) strcpy((yyval.na)," ");;} 
     5673    break; 
     5674 
     5675  case 355: 
     5676#line 1810 "fortran.y" 
     5677    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5678    break; 
     5679 
     5680  case 356: 
     5681#line 1812 "fortran.y" 
     5682    {if ( couldaddvariable == 1 ) strcpy((yyval.na)," ");;} 
     5683    break; 
     5684 
     5685  case 357: 
     5686#line 1813 "fortran.y" 
     5687    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     5688    break; 
     5689 
     5690  case 358: 
     5691#line 1815 "fortran.y" 
     5692    {InitialValueGiven = 0;;} 
     5693    break; 
     5694 
     5695  case 359: 
     5696#line 1817 "fortran.y" 
     5697    { 
    88725698                       if ( couldaddvariable == 1 ) 
    88735699                       { 
    8874                           strcpy(InitValue,yyvsp[0].na); 
     5700                          strcpy(InitValue,(yyvsp[(3) - (3)].na)); 
    88755701                          InitialValueGiven = 1; 
    88765702                       } 
    8877                     } 
    8878 break; 
    8879 case 360: 
    8880 #line 1782 "fortran.y" 
    8881 {pos_curinit = setposcur();} 
    8882 break; 
    8883 case 361: 
    8884 #line 1785 "fortran.y" 
    8885 {sprintf(yyval.na,"(%s,%s)",yyvsp[-3].na,yyvsp[-1].na);} 
    8886 break; 
    8887 case 362: 
    8888 #line 1788 "fortran.y" 
    8889 { 
     5703                    ;} 
     5704    break; 
     5705 
     5706  case 360: 
     5707#line 1825 "fortran.y" 
     5708    {pos_curinit = setposcur();;} 
     5709    break; 
     5710 
     5711  case 361: 
     5712#line 1828 "fortran.y" 
     5713    {sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na));;} 
     5714    break; 
     5715 
     5716  case 362: 
     5717#line 1831 "fortran.y" 
     5718    { 
    88905719                      if ( couldaddvariable == 1 ) 
    88915720                      { 
     
    88935722                      if (insubroutinedeclare == 1) 
    88945723                      { 
    8895                          copyuse_0(yyvsp[0].nac); 
     5724                         copyuse_0((yyvsp[(2) - (2)].nac)); 
    88965725                      } 
    8897                       sprintf(charusemodule,"%s",yyvsp[0].nac); 
    8898                       Add_NameOfModuleUsed_1(yyvsp[0].nac); 
     5726                      sprintf(charusemodule,"%s",(yyvsp[(2) - (2)].nac)); 
     5727                      Add_NameOfModuleUsed_1((yyvsp[(2) - (2)].nac)); 
    88995728 
    89005729                      if ( inmoduledeclare == 0 ) 
     
    89055734                      } 
    89065735                      } 
    8907                     } 
    8908 break; 
    8909 case 363: 
    8910 #line 1808 "fortran.y" 
    8911 { 
     5736                    ;} 
     5737    break; 
     5738 
     5739  case 363: 
     5740#line 1851 "fortran.y" 
     5741    { 
    89125742                       if ( couldaddvariable == 1 ) 
    89135743                       { 
    89145744                      if (insubroutinedeclare == 1) 
    89155745                      { 
    8916                          Add_CouplePointed_Var_1(yyvsp[-2].nac,yyvsp[0].lc); 
     5746                         Add_CouplePointed_Var_1((yyvsp[(2) - (4)].nac),(yyvsp[(4) - (4)].lc)); 
    89175747                      } 
    89185748                      if ( firstpass == 1 ) 
     
    89205750                         if ( insubroutinedeclare == 1 ) 
    89215751                         { 
    8922                             coupletmp = yyvsp[0].lc; 
     5752                            coupletmp = (yyvsp[(4) - (4)].lc); 
    89235753                            strcpy(ligne,""); 
    89245754                            while ( coupletmp ) 
     
    89305760                               if ( coupletmp ) strcat(ligne,","); 
    89315761                            } 
    8932                             sprintf(charusemodule,"%s",yyvsp[-2].nac); 
     5762                            sprintf(charusemodule,"%s",(yyvsp[(2) - (4)].nac)); 
    89335763                         } 
    8934                          Add_NameOfModuleUsed_1(yyvsp[-2].nac); 
     5764                         Add_NameOfModuleUsed_1((yyvsp[(2) - (4)].nac)); 
    89355765                      } 
    89365766                      if ( inmoduledeclare == 0 ) 
     
    89415771                      } 
    89425772                      } 
    8943                     } 
    8944 break; 
    8945 case 364: 
    8946 #line 1842 "fortran.y" 
    8947 { 
     5773                    ;} 
     5774    break; 
     5775 
     5776  case 364: 
     5777#line 1885 "fortran.y" 
     5778    { 
    89485779                       if ( couldaddvariable == 1 ) 
    89495780                       { 
     
    89515782                      if (insubroutinedeclare == 1) 
    89525783                      { 
    8953                          copyuseonly_0(yyvsp[-4].nac); 
     5784                         copyuseonly_0((yyvsp[(2) - (6)].nac)); 
    89545785                      } 
    8955                       sprintf(charusemodule,"%s",yyvsp[-4].nac); 
    8956                       Add_NameOfModuleUsed_1(yyvsp[-4].nac); 
     5786                      sprintf(charusemodule,"%s",(yyvsp[(2) - (6)].nac)); 
     5787                      Add_NameOfModuleUsed_1((yyvsp[(2) - (6)].nac)); 
    89575788 
    89585789                       if ( inmoduledeclare == 0 ) 
     
    89635794                       } 
    89645795                       } 
    8965                     } 
    8966 break; 
    8967 case 365: 
    8968 #line 1862 "fortran.y" 
    8969 { 
     5796                    ;} 
     5797    break; 
     5798 
     5799  case 365: 
     5800#line 1905 "fortran.y" 
     5801    { 
    89705802                       if ( couldaddvariable == 1 ) 
    89715803                       { 
     
    89735805                       if (insubroutinedeclare == 1) 
    89745806                       { 
    8975                           Add_CouplePointed_Var_1(yyvsp[-4].nac,yyvsp[0].lc); 
     5807                          Add_CouplePointed_Var_1((yyvsp[(2) - (6)].nac),(yyvsp[(6) - (6)].lc)); 
    89765808                       } 
    89775809                       if ( firstpass == 1 ) 
     
    89795811                         if ( insubroutinedeclare == 1 ) 
    89805812                         { 
    8981                              coupletmp = yyvsp[0].lc; 
     5813                             coupletmp = (yyvsp[(6) - (6)].lc); 
    89825814                             strcpy(ligne,""); 
    89835815                             while ( coupletmp ) 
     
    89905822                                if ( coupletmp ) strcat(ligne,","); 
    89915823                             } 
    8992                              sprintf(charusemodule,"%s",yyvsp[-4].nac); 
     5824                             sprintf(charusemodule,"%s",(yyvsp[(2) - (6)].nac)); 
    89935825                          } 
    8994                           Add_NameOfModuleUsed_1(yyvsp[-4].nac); 
     5826                          Add_NameOfModuleUsed_1((yyvsp[(2) - (6)].nac)); 
    89955827                       } 
    89965828                       if ( firstpass == 0 ) 
     
    90035835                                                   pos_end-pos_curuse); 
    90045836                       if (oldfortranout)  
    9005                          variableisglobalinmodule(yyvsp[0].lc,yyvsp[-4].nac,oldfortranout,pos_curuseold); 
     5837                         variableisglobalinmodule((yyvsp[(6) - (6)].lc),(yyvsp[(2) - (6)].nac),oldfortranout,pos_curuseold); 
    90065838                         
    90075839                          } 
     
    90115843                             /* if we are in the module declare and if the    */ 
    90125844                             /* onlylist is a list of global variable         */ 
    9013                              variableisglobalinmodule(yyvsp[0].lc, yyvsp[-4].nac, fortranout,pos_curuse); 
     5845                             variableisglobalinmodule((yyvsp[(6) - (6)].lc), (yyvsp[(2) - (6)].nac), fortranout,pos_curuse); 
    90145846                          } 
    90155847                       } 
    90165848                       } 
    9017                     } 
    9018 break; 
    9019 case 366: 
    9020 #line 1913 "fortran.y" 
    9021 { 
    9022                       pos_curuse = setposcur()-strlen(yyvsp[0].nac); 
     5849                    ;} 
     5850    break; 
     5851 
     5852  case 366: 
     5853#line 1956 "fortran.y" 
     5854    { 
     5855                      pos_curuse = setposcur()-strlen((yyvsp[(1) - (1)].nac)); 
    90235856                     if (firstpass == 0 && oldfortranout) { 
    90245857                     pos_curuseold = setposcurname(oldfortranout); 
    90255858                     } 
    9026                    } 
    9027 break; 
    9028 case 367: 
    9029 #line 1921 "fortran.y" 
    9030 {strcpy(yyval.nac,yyvsp[0].nac);} 
    9031 break; 
    9032 case 368: 
    9033 #line 1924 "fortran.y" 
    9034 { 
    9035                        if ( couldaddvariable == 1 ) yyval.lc = yyvsp[0].lc; 
    9036                     } 
    9037 break; 
    9038 case 369: 
    9039 #line 1928 "fortran.y" 
    9040 { 
     5859                   ;} 
     5860    break; 
     5861 
     5862  case 367: 
     5863#line 1964 "fortran.y" 
     5864    {strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     5865    break; 
     5866 
     5867  case 368: 
     5868#line 1967 "fortran.y" 
     5869    { 
     5870                       if ( couldaddvariable == 1 ) (yyval.lc) = (yyvsp[(1) - (1)].lc); 
     5871                    ;} 
     5872    break; 
     5873 
     5874  case 369: 
     5875#line 1971 "fortran.y" 
     5876    { 
    90415877                        if ( couldaddvariable == 1 ) 
    90425878                        { 
    90435879                        /* insert the variable in the list $1                 */ 
    9044                         yyvsp[0].lc->suiv = yyvsp[-2].lc; 
    9045                         yyval.lc = yyvsp[0].lc; 
     5880                        (yyvsp[(3) - (3)].lc)->suiv = (yyvsp[(1) - (3)].lc); 
     5881                        (yyval.lc) = (yyvsp[(3) - (3)].lc); 
    90465882                        } 
    9047                     } 
    9048 break; 
    9049 case 370: 
    9050 #line 1938 "fortran.y" 
    9051 { 
     5883                    ;} 
     5884    break; 
     5885 
     5886  case 370: 
     5887#line 1981 "fortran.y" 
     5888    { 
    90525889                       coupletmp =(listcouple *)malloc(sizeof(listcouple)); 
    9053                        strcpy(coupletmp->c_namevar,yyvsp[-2].nac); 
    9054                        Save_Length(yyvsp[-2].nac,21); 
    9055                        strcpy(coupletmp->c_namepointedvar,yyvsp[0].nac); 
    9056                        Save_Length(yyvsp[0].nac,22); 
     5890                       strcpy(coupletmp->c_namevar,(yyvsp[(1) - (3)].nac)); 
     5891                       Save_Length((yyvsp[(1) - (3)].nac),21); 
     5892                       strcpy(coupletmp->c_namepointedvar,(yyvsp[(3) - (3)].nac)); 
     5893                       Save_Length((yyvsp[(3) - (3)].nac),22); 
    90575894                       coupletmp->suiv = NULL; 
    9058                        yyval.lc = coupletmp; 
    9059                      } 
    9060 break; 
    9061 case 371: 
    9062 #line 1949 "fortran.y" 
    9063 { 
    9064                        if ( couldaddvariable == 1 ) yyval.lc = yyvsp[0].lc; 
    9065                     } 
    9066 break; 
    9067 case 372: 
    9068 #line 1953 "fortran.y" 
    9069 { 
     5895                       (yyval.lc) = coupletmp; 
     5896                     ;} 
     5897    break; 
     5898 
     5899  case 371: 
     5900#line 1992 "fortran.y" 
     5901    { 
     5902                       if ( couldaddvariable == 1 ) (yyval.lc) = (yyvsp[(1) - (1)].lc); 
     5903                    ;} 
     5904    break; 
     5905 
     5906  case 372: 
     5907#line 1996 "fortran.y" 
     5908    { 
    90705909                        if ( couldaddvariable == 1 ) 
    90715910                        { 
    90725911                        /* insert the variable in the list $1                 */ 
    9073                         yyvsp[0].lc->suiv = yyvsp[-2].lc; 
    9074                         yyval.lc = yyvsp[0].lc; 
     5912                        (yyvsp[(3) - (3)].lc)->suiv = (yyvsp[(1) - (3)].lc); 
     5913                        (yyval.lc) = (yyvsp[(3) - (3)].lc); 
    90755914                        } 
    9076                     } 
    9077 break; 
    9078 case 373: 
    9079 #line 1963 "fortran.y" 
    9080 { 
     5915                    ;} 
     5916    break; 
     5917 
     5918  case 373: 
     5919#line 2006 "fortran.y" 
     5920    { 
    90815921                       coupletmp =(listcouple *)malloc(sizeof(listcouple)); 
    9082                        strcpy(coupletmp->c_namevar,yyvsp[-2].nac); 
    9083                        Save_Length(yyvsp[-2].nac,21); 
    9084                        strcpy(coupletmp->c_namepointedvar,yyvsp[0].nac); 
    9085                        Save_Length(yyvsp[0].nac,22); 
     5922                       strcpy(coupletmp->c_namevar,(yyvsp[(1) - (3)].nac)); 
     5923                       Save_Length((yyvsp[(1) - (3)].nac),21); 
     5924                       strcpy(coupletmp->c_namepointedvar,(yyvsp[(3) - (3)].nac)); 
     5925                       Save_Length((yyvsp[(3) - (3)].nac),22); 
    90865926                       coupletmp->suiv = NULL; 
    9087                        yyval.lc = coupletmp; 
     5927                       (yyval.lc) = coupletmp; 
    90885928                       pointedvar=1; 
    9089                        Add_UsedInSubroutine_Var_1(yyvsp[-2].nac); 
    9090                     } 
    9091 break; 
    9092 case 374: 
    9093 #line 1974 "fortran.y" 
    9094 { 
     5929                       Add_UsedInSubroutine_Var_1((yyvsp[(1) - (3)].nac)); 
     5930                    ;} 
     5931    break; 
     5932 
     5933  case 374: 
     5934#line 2017 "fortran.y" 
     5935    { 
    90955936                       coupletmp =(listcouple *)malloc(sizeof(listcouple)); 
    9096                        strcpy(coupletmp->c_namevar,yyvsp[0].nac); 
    9097                        Save_Length(yyvsp[0].nac,21); 
     5937                       strcpy(coupletmp->c_namevar,(yyvsp[(1) - (1)].nac)); 
     5938                       Save_Length((yyvsp[(1) - (1)].nac),21); 
    90985939                       strcpy(coupletmp->c_namepointedvar,""); 
    90995940                       coupletmp->suiv = NULL; 
    9100                        yyval.lc = coupletmp; 
    9101                      } 
    9102 break; 
    9103 case 376: 
    9104 #line 1985 "fortran.y" 
    9105 { 
     5941                       (yyval.lc) = coupletmp; 
     5942                     ;} 
     5943    break; 
     5944 
     5945  case 376: 
     5946#line 2028 "fortran.y" 
     5947    { 
    91065948                         Add_SubroutineWhereAgrifUsed_1(subroutinename, 
    91075949                                                        curmodulename); 
    91085950                                                        inallocate = 0; 
    9109                      } 
    9110 break; 
    9111 case 377: 
    9112 #line 1991 "fortran.y" 
    9113 { 
     5951                     ;} 
     5952    break; 
     5953 
     5954  case 377: 
     5955#line 2034 "fortran.y" 
     5956    { 
    91145957                          Add_SubroutineWhereAgrifUsed_1(subroutinename, 
    91155958                                                         curmodulename); 
    91165959                                                         inallocate = 0; 
    9117                      } 
    9118 break; 
    9119 case 379: 
    9120 #line 1998 "fortran.y" 
    9121 { 
     5960                     ;} 
     5961    break; 
     5962 
     5963  case 379: 
     5964#line 2041 "fortran.y" 
     5965    { 
    91225966                       GlobalDeclaration = 0 ; 
    91235967                       if ( firstpass == 0 && 
     
    91676011                      } 
    91686012                      strcpy(subroutinename,""); 
    9169                     } 
    9170 break; 
    9171 case 380: 
    9172 #line 2048 "fortran.y" 
    9173 { 
     6013                    ;} 
     6014    break; 
     6015 
     6016  case 380: 
     6017#line 2091 "fortran.y" 
     6018    { 
    91746019                       if ( couldaddvariable == 1 ) 
    91756020                       { 
     
    91876032                      strcpy(subroutinename,""); 
    91886033                      } 
    9189                     } 
    9190 break; 
    9191 case 381: 
    9192 #line 2066 "fortran.y" 
    9193 { 
     6034                    ;} 
     6035    break; 
     6036 
     6037  case 381: 
     6038#line 2109 "fortran.y" 
     6039    { 
    91946040                       if ( couldaddvariable == 1 && 
    91956041                            strcasecmp(subroutinename,"") ) 
     
    92096055                      strcpy(subroutinename,""); 
    92106056                      } 
    9211                     } 
    9212 break; 
    9213 case 382: 
    9214 #line 2086 "fortran.y" 
    9215 { 
     6057                    ;} 
     6058    break; 
     6059 
     6060  case 382: 
     6061#line 2129 "fortran.y" 
     6062    { 
    92166063                       if ( couldaddvariable == 1 ) 
    92176064                       { 
     
    92306077                      strcpy(subroutinename,""); 
    92316078                      } 
    9232                     } 
    9233 break; 
    9234 case 383: 
    9235 #line 2105 "fortran.y" 
    9236 { 
     6079                    ;} 
     6080    break; 
     6081 
     6082  case 383: 
     6083#line 2148 "fortran.y" 
     6084    { 
    92376085                       if ( couldaddvariable == 1 ) 
    92386086                       { 
    92396087                       /* if we never meet the contains keyword               */ 
    9240                       Remove_Word_end_module_0(strlen(yyvsp[0].nac)); 
     6088                      Remove_Word_end_module_0(strlen((yyvsp[(2) - (2)].nac))); 
    92416089                       if ( inmoduledeclare == 1 ) 
    92426090                       { 
     
    92656113                      GlobalDeclaration = 0 ; 
    92666114                      } 
    9267                   } 
    9268 break; 
    9269 case 397: 
    9270 #line 2151 "fortran.y" 
    9271 { 
     6115                  ;} 
     6116    break; 
     6117 
     6118  case 397: 
     6119#line 2194 "fortran.y" 
     6120    { 
    92726121                      if (inmoduledeclare == 1 ) 
    92736122                      { 
     
    92826131                      else 
    92836132                      { 
     6133                      incontainssubroutine = 1; 
     6134                      strcpy(previoussubroutinename,subroutinename); 
    92846135                       if ( couldaddvariable == 1 ) 
    92856136                       { 
     
    93016152                         strcpy(subroutinename,""); 
    93026153                      } 
    9303                    } 
    9304 break; 
    9305 case 398: 
    9306 #line 2186 "fortran.y" 
    9307 { 
     6154                   ;} 
     6155    break; 
     6156 
     6157  case 398: 
     6158#line 2231 "fortran.y" 
     6159    { 
    93086160                      if ( couldaddvariable == 1 ) 
    93096161                      { 
    9310                        strcpy(yyval.nac,yyvsp[0].nac); 
    9311                        pos_endsubroutine = setposcur()-strlen(yyvsp[0].nac); 
     6162                       strcpy((yyval.nac),(yyvsp[(1) - (1)].nac)); 
     6163                       pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].nac)); 
    93126164                       functiondeclarationisdone = 0; 
    93136165                       } 
    9314                     } 
    9315 break; 
    9316 case 399: 
    9317 #line 2196 "fortran.y" 
    9318 { 
     6166                    ;} 
     6167    break; 
     6168 
     6169  case 399: 
     6170#line 2241 "fortran.y" 
     6171    { 
    93196172                      if ( couldaddvariable == 1 ) 
    93206173                      { 
    9321                        strcpy(yyval.nac,yyvsp[0].nac); 
    9322                        pos_endsubroutine = setposcur()-strlen(yyvsp[0].nac); 
     6174                       strcpy((yyval.nac),(yyvsp[(1) - (1)].nac)); 
     6175                       pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].nac)); 
    93236176                       } 
    9324                     } 
    9325 break; 
    9326 case 400: 
    9327 #line 2205 "fortran.y" 
    9328 { 
     6177                    ;} 
     6178    break; 
     6179 
     6180  case 400: 
     6181#line 2250 "fortran.y" 
     6182    { 
    93296183                      if ( couldaddvariable == 1 ) 
    93306184                      { 
    9331                        strcpy(yyval.nac,yyvsp[0].nac); 
    9332                        pos_endsubroutine = setposcur()-strlen(yyvsp[0].nac); 
     6185                       strcpy((yyval.nac),(yyvsp[(1) - (1)].nac)); 
     6186                       pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].nac)); 
    93336187                       } 
    9334                     } 
    9335 break; 
    9336 case 401: 
    9337 #line 2214 "fortran.y" 
    9338 { 
     6188                    ;} 
     6189    break; 
     6190 
     6191  case 401: 
     6192#line 2259 "fortran.y" 
     6193    { 
    93396194                      if ( couldaddvariable == 1 ) 
    93406195                      { 
    9341                        strcpy(yyval.nac,yyvsp[0].nac); 
    9342                        pos_endsubroutine = setposcur()-strlen(yyvsp[0].nac); 
     6196                       strcpy((yyval.nac),(yyvsp[(1) - (1)].nac)); 
     6197                       pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].nac)); 
    93436198                       } 
    9344                     } 
    9345 break; 
    9346 case 413: 
    9347 #line 2236 "fortran.y" 
    9348 {strcpy(yyval.nac,"");} 
    9349 break; 
    9350 case 414: 
    9351 #line 2237 "fortran.y" 
    9352 {strcpy(yyval.nac,yyvsp[0].nac);} 
    9353 break; 
    9354 case 426: 
    9355 #line 2257 "fortran.y" 
    9356 { 
     6199                    ;} 
     6200    break; 
     6201 
     6202  case 413: 
     6203#line 2281 "fortran.y" 
     6204    {strcpy((yyval.nac),"");;} 
     6205    break; 
     6206 
     6207  case 414: 
     6208#line 2282 "fortran.y" 
     6209    {strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     6210    break; 
     6211 
     6212  case 424: 
     6213#line 2302 "fortran.y" 
     6214    { 
    93576215                          Add_SubroutineWhereAgrifUsed_1(subroutinename, 
    93586216                                                        curmodulename); 
    93596217                                                        inallocate = 0; 
    9360                      } 
    9361 break; 
    9362 case 427: 
    9363 #line 2263 "fortran.y" 
    9364 { 
     6218                     ;} 
     6219    break; 
     6220 
     6221  case 425: 
     6222#line 2308 "fortran.y" 
     6223    { 
    93656224                          Add_SubroutineWhereAgrifUsed_1(subroutinename, 
    93666225                                                        curmodulename); 
    93676226                                                        inallocate = 0; 
    9368                      } 
    9369 break; 
    9370 case 433: 
    9371 #line 2274 "fortran.y" 
    9372 {if ( couldaddvariable == 1 ) created_dimensionlist = 0;} 
    9373 break; 
    9374 case 434: 
    9375 #line 2276 "fortran.y" 
    9376 { 
     6227                     ;} 
     6228    break; 
     6229 
     6230  case 431: 
     6231#line 2319 "fortran.y" 
     6232    {if ( couldaddvariable == 1 ) created_dimensionlist = 0;;} 
     6233    break; 
     6234 
     6235  case 432: 
     6236#line 2321 "fortran.y" 
     6237    { 
    93776238                  created_dimensionlist = 1; 
    93786239                  if  ( agrif_parentcall == 1 ) 
    93796240                  { 
    9380                       ModifyTheAgrifFunction_0(yyvsp[-1].d->dim.last); 
     6241                      ModifyTheAgrifFunction_0((yyvsp[(3) - (4)].d)->dim.last); 
    93816242                      agrif_parentcall =0; 
    93826243                      fprintf(fortranout," = "); 
    93836244                  } 
    9384               } 
    9385 break; 
    9386 case 435: 
    9387 #line 2286 "fortran.y" 
    9388 {created_dimensionlist = 1;} 
    9389 break; 
    9390 case 440: 
    9391 #line 2294 "fortran.y" 
    9392 { 
     6245              ;} 
     6246    break; 
     6247 
     6248  case 433: 
     6249#line 2331 "fortran.y" 
     6250    {created_dimensionlist = 1;;} 
     6251    break; 
     6252 
     6253  case 438: 
     6254#line 2339 "fortran.y" 
     6255    { 
    93936256                      inagrifcallargument = 0 ; 
    93946257                      incalldeclare=0; 
     
    94156278                      } 
    94166279                      Instanciation_0(sameagrifname); 
    9417                    } 
    9418 break; 
    9419 case 445: 
    9420 #line 2328 "fortran.y" 
    9421 { 
    9422                        if (!strcasecmp(yyvsp[0].nac,"MPI_Init") ) 
     6280                   ;} 
     6281    break; 
     6282 
     6283  case 443: 
     6284#line 2373 "fortran.y" 
     6285                       { 
     6286                       if (!strcasecmp((yyvsp[(2) - (2)].nac),"MPI_Init") ) 
    94236287                       { 
    94246288                          callmpiinit = 1; 
     
    94286292                          callmpiinit = 0; 
    94296293                       } 
    9430                        if (!strcasecmp(yyvsp[0].nac,"Agrif_Init_Grids") ) 
     6294                       if (!strcasecmp((yyvsp[(2) - (2)].nac),"Agrif_Init_Grids") ) 
    94316295                       { 
    94326296                          callagrifinitgrids = 1; 
     
    94346298                       } 
    94356299                       else callagrifinitgrids = 0; 
    9436                        if ( !strcasecmp(yyvsp[0].nac,"Agrif_Open_File") ) 
     6300                       if ( !strcasecmp((yyvsp[(2) - (2)].nac),"Agrif_Open_File") ) 
    94376301                       { 
    94386302                          Add_SubroutineWhereAgrifUsed_1(subroutinename, 
    94396303                                                        curmodulename); 
    94406304                       } 
    9441                        if ( Vartonumber(yyvsp[0].nac) == 1 ) 
     6305                       if ( Vartonumber((yyvsp[(2) - (2)].nac)) == 1 ) 
    94426306                       { 
    94436307                          incalldeclare=1; 
     
    94466310                                                        curmodulename); 
    94476311                       } 
    9448                     } 
    9449 break; 
    9450 case 446: 
    9451 #line 2358 "fortran.y" 
    9452 {pos_curcall=setposcur()-4;} 
    9453 break; 
    9454 case 449: 
    9455 #line 2363 "fortran.y" 
    9456 { 
     6312                    ;} 
     6313    break; 
     6314 
     6315  case 444: 
     6316#line 2403 "fortran.y" 
     6317    {pos_curcall=setposcur()-4;;} 
     6318    break; 
     6319 
     6320  case 447: 
     6321#line 2408 "fortran.y" 
     6322    { 
    94576323                  if ( callmpiinit == 1 ) 
    94586324                  { 
    9459                      strcpy(mpiinitvar,yyvsp[0].na); 
     6325                     strcpy(mpiinitvar,(yyvsp[(1) - (1)].na)); 
    94606326                     if ( firstpass == 1 ) 
    94616327                     { 
     
    94676333                     } 
    94686334                  } 
    9469                } 
    9470 break; 
    9471 case 528: 
    9472 #line 2485 "fortran.y" 
    9473 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    9474 break; 
    9475 case 529: 
    9476 #line 2486 "fortran.y" 
    9477 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    9478 break; 
    9479 case 530: 
    9480 #line 2487 "fortran.y" 
    9481 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    9482 break; 
    9483 case 531: 
    9484 #line 2490 "fortran.y" 
    9485 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na);} 
    9486 break; 
    9487 case 532: 
    9488 #line 2492 "fortran.y" 
    9489 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na);} 
    9490 break; 
    9491 case 533: 
    9492 #line 2494 "fortran.y" 
    9493 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na);} 
    9494 break; 
    9495 case 534: 
    9496 #line 2496 "fortran.y" 
    9497 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na);} 
    9498 break; 
    9499 case 535: 
    9500 #line 2498 "fortran.y" 
    9501 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na);} 
    9502 break; 
    9503 case 536: 
    9504 #line 2500 "fortran.y" 
    9505 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"%s,%s",yyvsp[-2].na,yyvsp[0].na);} 
    9506 break; 
    9507 case 537: 
    9508 #line 2501 "fortran.y" 
    9509 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    9510 break; 
    9511 case 538: 
    9512 #line 2502 "fortran.y" 
    9513 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    9514 break; 
    9515 case 539: 
    9516 #line 2505 "fortran.y" 
    9517 {if ( couldaddvariable == 1 ) strcpy(yyval.na,yyvsp[0].na);} 
    9518 break; 
    9519 case 540: 
    9520 #line 2507 "fortran.y" 
    9521 {if ( couldaddvariable == 1 ) sprintf(yyval.na," (%s)",yyvsp[-1].na);} 
    9522 break; 
    9523 case 541: 
    9524 #line 2509 "fortran.y" 
    9525 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"(%s,%s)",yyvsp[-3].na,yyvsp[-1].na);} 
    9526 break; 
    9527 case 542: 
    9528 #line 2511 "fortran.y" 
    9529 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"(%s,%s)",yyvsp[-3].na,yyvsp[-1].na);} 
    9530 break; 
    9531 case 543: 
    9532 #line 2513 "fortran.y" 
    9533 {if ( couldaddvariable == 1 ) sprintf(yyval.na,"(%s,%s)",yyvsp[-3].na,yyvsp[-1].na);} 
    9534 break; 
    9535 case 544: 
    9536 #line 2517 "fortran.y" 
    9537 {if ( couldaddvariable == 1 ) 
    9538                                               sprintf(yyval.na,"%s=%s,%s)",yyvsp[-4].nac,yyvsp[-2].na,yyvsp[0].na);} 
    9539 break; 
    9540 case 545: 
    9541 #line 2520 "fortran.y" 
    9542 {if ( couldaddvariable == 1 ) 
    9543                                         sprintf(yyval.na,"%s=%s,%s,%s)",yyvsp[-6].nac,yyvsp[-4].na,yyvsp[-2].na,yyvsp[0].na);} 
    9544 break; 
    9545 case 554: 
    9546 #line 2536 "fortran.y" 
    9547 {Add_Allocate_Var_1(yyvsp[0].nac,curmodulename);} 
    9548 break; 
    9549 case 557: 
     6335               ;} 
     6336    break; 
     6337 
     6338  case 517: 
     6339#line 2530 "fortran.y" 
     6340    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     6341    break; 
     6342 
     6343  case 518: 
     6344#line 2531 "fortran.y" 
     6345    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     6346    break; 
     6347 
     6348  case 519: 
     6349#line 2532 "fortran.y" 
     6350    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     6351    break; 
     6352 
     6353  case 520: 
     6354#line 2535 "fortran.y" 
     6355    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     6356    break; 
     6357 
     6358  case 521: 
     6359#line 2537 "fortran.y" 
     6360    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     6361    break; 
     6362 
     6363  case 522: 
     6364#line 2539 "fortran.y" 
     6365    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     6366    break; 
     6367 
     6368  case 523: 
    95506369#line 2541 "fortran.y" 
    9551 {Add_Allocate_Var_1(yyvsp[-3].nac,curmodulename);} 
    9552 break; 
    9553 case 571: 
    9554 #line 2564 "fortran.y" 
    9555 {strcpy(yyval.nac,yyvsp[0].nac);} 
    9556 break; 
    9557 #line 9558 "y.tab.c" 
     6370    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     6371    break; 
     6372 
     6373  case 524: 
     6374#line 2543 "fortran.y" 
     6375    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     6376    break; 
     6377 
     6378  case 525: 
     6379#line 2545 "fortran.y" 
     6380    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));;} 
     6381    break; 
     6382 
     6383  case 526: 
     6384#line 2546 "fortran.y" 
     6385    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     6386    break; 
     6387 
     6388  case 527: 
     6389#line 2547 "fortran.y" 
     6390    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     6391    break; 
     6392 
     6393  case 528: 
     6394#line 2550 "fortran.y" 
     6395    {if ( couldaddvariable == 1 ) strcpy((yyval.na),(yyvsp[(1) - (1)].na));;} 
     6396    break; 
     6397 
     6398  case 529: 
     6399#line 2552 "fortran.y" 
     6400    {if ( couldaddvariable == 1 ) sprintf((yyval.na)," (%s)",(yyvsp[(2) - (3)].na));;} 
     6401    break; 
     6402 
     6403  case 530: 
     6404#line 2554 "fortran.y" 
     6405    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na));;} 
     6406    break; 
     6407 
     6408  case 531: 
     6409#line 2556 "fortran.y" 
     6410    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na));;} 
     6411    break; 
     6412 
     6413  case 532: 
     6414#line 2558 "fortran.y" 
     6415    {if ( couldaddvariable == 1 ) sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na));;} 
     6416    break; 
     6417 
     6418  case 533: 
     6419#line 2562 "fortran.y" 
     6420    {if ( couldaddvariable == 1 ) 
     6421                                              sprintf((yyval.na),"%s=%s,%s)",(yyvsp[(1) - (5)].nac),(yyvsp[(3) - (5)].na),(yyvsp[(5) - (5)].na));;} 
     6422    break; 
     6423 
     6424  case 534: 
     6425#line 2565 "fortran.y" 
     6426    {if ( couldaddvariable == 1 ) 
     6427                                        sprintf((yyval.na),"%s=%s,%s,%s)",(yyvsp[(1) - (7)].nac),(yyvsp[(3) - (7)].na),(yyvsp[(5) - (7)].na),(yyvsp[(7) - (7)].na));;} 
     6428    break; 
     6429 
     6430  case 541: 
     6431#line 2581 "fortran.y" 
     6432    {Add_Allocate_Var_1((yyvsp[(1) - (1)].nac),curmodulename);;} 
     6433    break; 
     6434 
     6435  case 544: 
     6436#line 2586 "fortran.y" 
     6437    {Add_Allocate_Var_1((yyvsp[(1) - (4)].nac),curmodulename);;} 
     6438    break; 
     6439 
     6440  case 552: 
     6441#line 2609 "fortran.y" 
     6442    {strcpy((yyval.nac),(yyvsp[(1) - (1)].nac));;} 
     6443    break; 
     6444 
     6445 
     6446/* Line 1267 of yacc.c.  */ 
     6447#line 6445 "fortran.tab.c" 
     6448      default: break; 
    95586449    } 
    9559     yyssp -= yym; 
    9560     yystate = *yyssp; 
    9561     yyvsp -= yym; 
    9562     yym = yylhs[yyn]; 
    9563     if (yystate == 0 && yym == 0) 
    9564     { 
    9565 #if YYDEBUG 
    9566         if (yydebug) 
    9567             printf("%sdebug: after reduction, shifting from state 0 to\ 
    9568  state %d\n", YYPREFIX, YYFINAL); 
    9569 #endif 
    9570         yystate = YYFINAL; 
    9571         *++yyssp = YYFINAL; 
     6450  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); 
     6451 
     6452  YYPOPSTACK (yylen); 
     6453  yylen = 0; 
     6454  YY_STACK_PRINT (yyss, yyssp); 
     6455 
    95726456        *++yyvsp = yyval; 
    9573         if (yychar < 0) 
     6457 
     6458 
     6459  /* Now `shift' the result of the reduction.  Determine what state 
     6460     that goes to, based on the state we popped back to and the rule 
     6461     number reduced by.  */ 
     6462 
     6463  yyn = yyr1[yyn]; 
     6464 
     6465  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; 
     6466  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) 
     6467    yystate = yytable[yystate]; 
     6468  else 
     6469    yystate = yydefgoto[yyn - YYNTOKENS]; 
     6470 
     6471  goto yynewstate; 
     6472 
     6473 
     6474/*------------------------------------. 
     6475| yyerrlab -- here on detecting error | 
     6476`------------------------------------*/ 
     6477yyerrlab: 
     6478  /* If not already recovering from an error, report this error.  */ 
     6479  if (!yyerrstatus) 
    95746480        { 
    9575             if ((yychar = yylex()) < 0) yychar = 0; 
    9576 #if YYDEBUG 
    9577             if (yydebug) 
     6481      ++yynerrs; 
     6482#if ! YYERROR_VERBOSE 
     6483      yyerror (YY_("syntax error")); 
     6484#else 
    95786485            { 
    9579                 yys = 0; 
    9580                 if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; 
    9581                 if (!yys) yys = "illegal-symbol"; 
    9582                 printf("%sdebug: state %d, reading %d (%s)\n", 
    9583                         YYPREFIX, YYFINAL, yychar, yys); 
     6486   YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); 
     6487   if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) 
     6488     { 
     6489       YYSIZE_T yyalloc = 2 * yysize; 
     6490       if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) 
     6491         yyalloc = YYSTACK_ALLOC_MAXIMUM; 
     6492       if (yymsg != yymsgbuf) 
     6493         YYSTACK_FREE (yymsg); 
     6494       yymsg = (char *) YYSTACK_ALLOC (yyalloc); 
     6495       if (yymsg) 
     6496         yymsg_alloc = yyalloc; 
     6497       else 
     6498         { 
     6499      yymsg = yymsgbuf; 
     6500      yymsg_alloc = sizeof yymsgbuf; 
    95846501            } 
     6502     } 
     6503 
     6504   if (0 < yysize && yysize <= yymsg_alloc) 
     6505     { 
     6506       (void) yysyntax_error (yymsg, yystate, yychar); 
     6507       yyerror (yymsg); 
     6508     } 
     6509   else 
     6510     { 
     6511       yyerror (YY_("syntax error")); 
     6512       if (yysize != 0) 
     6513         goto yyexhaustedlab; 
     6514     } 
     6515      } 
    95856516#endif 
    95866517        } 
    9587         if (yychar == 0) goto yyaccept; 
    9588         goto yyloop; 
     6518 
     6519 
     6520 
     6521  if (yyerrstatus == 3) 
     6522    { 
     6523      /* If just tried and failed to reuse look-ahead token after an 
     6524    error, discard it.  */ 
     6525 
     6526      if (yychar <= YYEOF) 
     6527   { 
     6528     /* Return failure if at end of input.  */ 
     6529     if (yychar == YYEOF) 
     6530       YYABORT; 
    95896531    } 
    9590     if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 && 
    9591             yyn <= YYTABLESIZE && yycheck[yyn] == yystate) 
    9592         yystate = yytable[yyn]; 
    95936532    else 
    9594         yystate = yydgoto[yym]; 
    9595 #if YYDEBUG 
    9596     if (yydebug) 
    9597         printf("%sdebug: after reduction, shifting from state %d \ 
    9598 to state %d\n", YYPREFIX, *yyssp, yystate); 
     6533   { 
     6534     yydestruct ("Error: discarding", 
     6535            yytoken, &yylval); 
     6536     yychar = YYEMPTY; 
     6537   } 
     6538    } 
     6539 
     6540  /* Else will try to reuse look-ahead token after shifting the error 
     6541     token.  */ 
     6542  goto yyerrlab1; 
     6543 
     6544 
     6545/*---------------------------------------------------. 
     6546| yyerrorlab -- error raised explicitly by YYERROR.  | 
     6547`---------------------------------------------------*/ 
     6548yyerrorlab: 
     6549 
     6550  /* Pacify compilers like GCC when the user code never invokes 
     6551     YYERROR and the label yyerrorlab therefore never appears in user 
     6552     code.  */ 
     6553  if (/*CONSTCOND*/ 0) 
     6554     goto yyerrorlab; 
     6555 
     6556  /* Do not reclaim the symbols of the rule which action triggered 
     6557     this YYERROR.  */ 
     6558  YYPOPSTACK (yylen); 
     6559  yylen = 0; 
     6560  YY_STACK_PRINT (yyss, yyssp); 
     6561  yystate = *yyssp; 
     6562  goto yyerrlab1; 
     6563 
     6564 
     6565/*-------------------------------------------------------------. 
     6566| yyerrlab1 -- common code for both syntax error and YYERROR.  | 
     6567`-------------------------------------------------------------*/ 
     6568yyerrlab1: 
     6569  yyerrstatus = 3;   /* Each real token shifted decrements this.  */ 
     6570 
     6571  for (;;) 
     6572    { 
     6573      yyn = yypact[yystate]; 
     6574      if (yyn != YYPACT_NINF) 
     6575   { 
     6576     yyn += YYTERROR; 
     6577     if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) 
     6578       { 
     6579         yyn = yytable[yyn]; 
     6580         if (0 < yyn) 
     6581      break; 
     6582       } 
     6583   } 
     6584 
     6585      /* Pop the current state because it cannot handle the error token.  */ 
     6586      if (yyssp == yyss) 
     6587   YYABORT; 
     6588 
     6589 
     6590      yydestruct ("Error: popping", 
     6591        yystos[yystate], yyvsp); 
     6592      YYPOPSTACK (1); 
     6593      yystate = *yyssp; 
     6594      YY_STACK_PRINT (yyss, yyssp); 
     6595    } 
     6596 
     6597  if (yyn == YYFINAL) 
     6598    YYACCEPT; 
     6599 
     6600  *++yyvsp = yylval; 
     6601 
     6602 
     6603  /* Shift the error token.  */ 
     6604  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); 
     6605 
     6606  yystate = yyn; 
     6607  goto yynewstate; 
     6608 
     6609 
     6610/*-------------------------------------. 
     6611| yyacceptlab -- YYACCEPT comes here.  | 
     6612`-------------------------------------*/ 
     6613yyacceptlab: 
     6614  yyresult = 0; 
     6615  goto yyreturn; 
     6616 
     6617/*-----------------------------------. 
     6618| yyabortlab -- YYABORT comes here.  | 
     6619`-----------------------------------*/ 
     6620yyabortlab: 
     6621  yyresult = 1; 
     6622  goto yyreturn; 
     6623 
     6624#ifndef yyoverflow 
     6625/*-------------------------------------------------. 
     6626| yyexhaustedlab -- memory exhaustion comes here.  | 
     6627`-------------------------------------------------*/ 
     6628yyexhaustedlab: 
     6629  yyerror (YY_("memory exhausted")); 
     6630  yyresult = 2; 
     6631  /* Fall through.  */ 
    95996632#endif 
    9600     if (yyssp >= yyss + yystacksize - 1) 
    9601     { 
    9602         goto yyoverflow; 
     6633 
     6634yyreturn: 
     6635  if (yychar != YYEOF && yychar != YYEMPTY) 
     6636     yydestruct ("Cleanup: discarding lookahead", 
     6637       yytoken, &yylval); 
     6638  /* Do not reclaim the symbols of the rule which action triggered 
     6639     this YYABORT or YYACCEPT.  */ 
     6640  YYPOPSTACK (yylen); 
     6641  YY_STACK_PRINT (yyss, yyssp); 
     6642  while (yyssp != yyss) 
     6643    { 
     6644      yydestruct ("Cleanup: popping", 
     6645        yystos[*yyssp], yyvsp); 
     6646      YYPOPSTACK (1); 
    96036647    } 
    9604     *++yyssp = yystate; 
    9605     *++yyvsp = yyval; 
    9606     goto yyloop; 
    9607 yyoverflow: 
    9608     yyerror("yacc stack overflow"); 
    9609 yyabort: 
    9610     return (1); 
    9611 yyaccept: 
    9612     return (0); 
     6648#ifndef yyoverflow 
     6649  if (yyss != yyssa) 
     6650    YYSTACK_FREE (yyss); 
     6651#endif 
     6652#if YYERROR_VERBOSE 
     6653  if (yymsg != yymsgbuf) 
     6654    YYSTACK_FREE (yymsg); 
     6655#endif 
     6656  /* Make sure YYID is used.  */ 
     6657  return YYID (yyresult); 
    96136658} 
     6659 
     6660 
     6661#line 2611 "fortran.y" 
     6662 
     6663 
     6664void processfortran(char *fichier_entree) 
     6665{ 
     6666   extern FILE *fortranin; 
     6667   extern FILE *fortranout; 
     6668   char nomfile[LONG_C]; 
     6669   int c; 
     6670   int confirmyes; 
     6671 
     6672/*   fortrandebug = 1;*/ 
     6673   if ( mark == 1 ) printf("Firstpass == %d \n",firstpass); 
     6674/******************************************************************************/ 
     6675/*  1-  Open input and output files                                           */ 
     6676/******************************************************************************/ 
     6677   strcpy(nomfile,commondirin); 
     6678   strcat(nomfile,"/"); 
     6679   strcat(nomfile,fichier_entree); 
     6680   fortranin=fopen( nomfile,"r"); 
     6681   if (! fortranin) 
     6682   { 
     6683      printf("Error : File %s does not exist\n",nomfile); 
     6684      exit(1); 
     6685   } 
     6686 
     6687   strcpy(curfile,nomfile); 
     6688   strcpy(nomfile,commondirout); 
     6689   strcat(nomfile,"/"); 
     6690   strcat(nomfile,fichier_entree); 
     6691   strcpy(nomfileoutput,nomfile); 
     6692   Save_Length(nomfileoutput,31); 
     6693   if (firstpass == 1) 
     6694   { 
     6695      if (checkexistcommon == 1) 
     6696      { 
     6697         if (fopen(nomfile,"r")) 
     6698         { 
     6699            printf("Warning : file %s already exist\n",nomfile); 
     6700            confirmyes = 0; 
     6701            while (confirmyes==0) 
     6702            { 
     6703               printf("Override file %s ? [Y/N]\n",nomfile); 
     6704               c=getchar(); 
     6705               getchar(); 
     6706               if (c==79 || c==110) 
     6707               { 
     6708                  printf("We stop\n"); 
     6709                  exit(1); 
     6710               } 
     6711               if (c==89 || c==121) 
     6712               { 
     6713                  confirmyes=1; 
     6714               } 
     6715            } 
     6716         } 
     6717      } 
     6718   } 
     6719 
     6720/******************************************************************************/ 
     6721/*  2-  Variables initialization                                              */ 
     6722/******************************************************************************/ 
     6723 
     6724   line_num_fortran_common=1; 
     6725   line_num_fortran=1; 
     6726   PublicDeclare = 0; 
     6727   PrivateDeclare = 0; 
     6728   ExternalDeclare = 0; 
     6729   SaveDeclare = 0; 
     6730   pointerdeclare = 0; 
     6731   optionaldeclare = 0; 
     6732   incalldeclare = 0; 
     6733   VarType = 0; 
     6734   VarTypepar = 0; 
     6735   Allocatabledeclare = 0 ; 
     6736   Targetdeclare = 0 ; 
     6737   strcpy(NamePrecision," "); 
     6738   VariableIsParameter =  0 ; 
     6739   strcpy(NamePrecision,""); 
     6740   c_star = 0 ; 
     6741   functiondeclarationisdone = 0; 
     6742   insubroutinedeclare = 0 ; 
     6743   ininterfacedeclare = 0 ;    
     6744   strcpy(subroutinename," "); 
     6745   isrecursive = 0; 
     6746   InitialValueGiven = 0 ; 
     6747   strcpy(EmptyChar," "); 
     6748   inmoduledeclare = 0; 
     6749   incontainssubroutine = 0; 
     6750   colnum=0; 
     6751   incom=0; 
     6752   couldaddvariable=1; 
     6753   afterpercent = 0; 
     6754   aftercontainsdeclare = 1; 
     6755   strcpy(nameinttypename,""); 
     6756   /* Name of the file without format                                         */ 
     6757   tmp = strchr(fichier_entree, '.'); 
     6758   strncpy(curfilename,fichier_entree,strlen(fichier_entree)-strlen(tmp)); 
     6759   Save_Length(curfilename,30); 
     6760/******************************************************************************/ 
     6761/*  3-  Parsing of the input file (1 time)                                    */ 
     6762/******************************************************************************/ 
     6763   if (firstpass == 0 ) 
     6764   { 
     6765      fortranout=fopen(nomfileoutput,"w"); 
     6766 
     6767/*      NewModule_Creation_0();*/ 
     6768   } 
     6769 
     6770   fortranparse(); 
     6771 
     6772   if (firstpass == 0 ) 
     6773   { 
     6774   NewModule_Creation_0(); 
     6775   } 
     6776    
     6777   strcpy(curfile,mainfile); 
     6778 
     6779   if (firstpass == 0 ) 
     6780   { 
     6781   fclose(fortranout); 
     6782   } 
     6783} 
     6784 
     6785#line 2 "fortran.yy.c" 
     6786 
     6787#line 4 "fortran.yy.c" 
     6788 
     6789#define  YY_INT_ALIGNED short int 
     6790 
     6791/* A lexical scanner generated by flex */ 
     6792 
    96146793#define yy_create_buffer fortran_create_buffer 
    96156794#define yy_delete_buffer fortran_delete_buffer 
    9616 #define yy_scan_buffer fortran_scan_buffer 
    9617 #define yy_scan_string fortran_scan_string 
    9618 #define yy_scan_bytes fortran_scan_bytes 
    96196795#define yy_flex_debug fortran_flex_debug 
    96206796#define yy_init_buffer fortran_init_buffer 
     
    96256801#define yyleng fortranleng 
    96266802#define yylex fortranlex 
     6803#define yylineno fortranlineno 
    96276804#define yyout fortranout 
    96286805#define yyrestart fortranrestart 
    96296806#define yytext fortrantext 
    96306807#define yywrap fortranwrap 
    9631  
    9632 #line 20 "fortran.yy.c" 
    9633 /* A lexical scanner generated by flex */ 
    9634  
    9635 /* Scanner skeleton version: 
    9636  * $Header: /home/daffy/u0/vern/flex/RCS/flex.skl,v 2.91 96/09/10 16:58:48 vern Exp $ 
    9637  */ 
     6808#define yyalloc fortranalloc 
     6809#define yyrealloc fortranrealloc 
     6810#define yyfree fortranfree 
    96386811 
    96396812#define FLEX_SCANNER 
    96406813#define YY_FLEX_MAJOR_VERSION 2 
    96416814#define YY_FLEX_MINOR_VERSION 5 
    9642  
     6815#define YY_FLEX_SUBMINOR_VERSION 35 
     6816#if YY_FLEX_SUBMINOR_VERSION > 0 
     6817#define FLEX_BETA 
     6818#endif 
     6819 
     6820/* First, we deal with  platform-specific or compiler-specific issues. */ 
     6821 
     6822/* begin standard C headers. */ 
    96436823#include <stdio.h> 
    9644  
    9645  
    9646 /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ 
    9647 #ifdef c_plusplus 
    9648 #ifndef __cplusplus 
    9649 #define __cplusplus 
     6824#include <string.h> 
     6825#include <errno.h> 
     6826#include <stdlib.h> 
     6827 
     6828/* end standard C headers. */ 
     6829 
     6830/* flex integer type definitions */ 
     6831 
     6832#ifndef FLEXINT_H 
     6833#define FLEXINT_H 
     6834 
     6835/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 
     6836 
     6837#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 
     6838 
     6839/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, 
     6840 * if you want the limit (max/min) macros for int types.  
     6841 */ 
     6842#ifndef __STDC_LIMIT_MACROS 
     6843#define __STDC_LIMIT_MACROS 1 
    96506844#endif 
     6845 
     6846#include <inttypes.h> 
     6847typedef int8_t flex_int8_t; 
     6848typedef uint8_t flex_uint8_t; 
     6849typedef int16_t flex_int16_t; 
     6850typedef uint16_t flex_uint16_t; 
     6851typedef int32_t flex_int32_t; 
     6852typedef uint32_t flex_uint32_t; 
     6853#else 
     6854typedef signed char flex_int8_t; 
     6855typedef short int flex_int16_t; 
     6856typedef int flex_int32_t; 
     6857typedef unsigned char flex_uint8_t;  
     6858typedef unsigned short int flex_uint16_t; 
     6859typedef unsigned int flex_uint32_t; 
     6860#endif /* ! C99 */ 
     6861 
     6862/* Limits of integral types. */ 
     6863#ifndef INT8_MIN 
     6864#define INT8_MIN               (-128) 
    96516865#endif 
    9652  
     6866#ifndef INT16_MIN 
     6867#define INT16_MIN              (-32767-1) 
     6868#endif 
     6869#ifndef INT32_MIN 
     6870#define INT32_MIN              (-2147483647-1) 
     6871#endif 
     6872#ifndef INT8_MAX 
     6873#define INT8_MAX               (127) 
     6874#endif 
     6875#ifndef INT16_MAX 
     6876#define INT16_MAX              (32767) 
     6877#endif 
     6878#ifndef INT32_MAX 
     6879#define INT32_MAX              (2147483647) 
     6880#endif 
     6881#ifndef UINT8_MAX 
     6882#define UINT8_MAX              (255U) 
     6883#endif 
     6884#ifndef UINT16_MAX 
     6885#define UINT16_MAX             (65535U) 
     6886#endif 
     6887#ifndef UINT32_MAX 
     6888#define UINT32_MAX             (4294967295U) 
     6889#endif 
     6890 
     6891#endif /* ! FLEXINT_H */ 
    96536892 
    96546893#ifdef __cplusplus 
    9655  
    9656 #include <stdlib.h> 
    9657 #include <unistd.h> 
    9658  
    9659 /* Use prototypes in function declarations. */ 
    9660 #define YY_USE_PROTOS 
    96616894 
    96626895/* The "const" storage-class-modifier is valid. */ 
     
    96656898#else /* ! __cplusplus */ 
    96666899 
    9667 #if __STDC__ 
    9668  
    9669 #define YY_USE_PROTOS 
     6900/* C99 requires __STDC__ to be defined as 1. */ 
     6901#if defined (__STDC__) 
     6902 
    96706903#define YY_USE_CONST 
    96716904 
    9672 #endif   /* __STDC__ */ 
     6905#endif   /* defined (__STDC__) */ 
    96736906#endif   /* ! __cplusplus */ 
    9674  
    9675 #ifdef __TURBOC__ 
    9676  #pragma warn -rch 
    9677  #pragma warn -use 
    9678 #include <io.h> 
    9679 #include <stdlib.h> 
    9680 #define YY_USE_CONST 
    9681 #define YY_USE_PROTOS 
    9682 #endif 
    96836907 
    96846908#ifdef YY_USE_CONST 
     
    96866910#else 
    96876911#define yyconst 
    9688 #endif 
    9689  
    9690  
    9691 #ifdef YY_USE_PROTOS 
    9692 #define YY_PROTO(proto) proto 
    9693 #else 
    9694 #define YY_PROTO(proto) () 
    96956912#endif 
    96966913 
     
    97096926 * definition of BEGIN. 
    97106927 */ 
    9711 #define BEGIN yy_start = 1 + 2 * 
     6928#define BEGIN (yy_start) = 1 + 2 * 
    97126929 
    97136930/* Translate the current start state into a value that can be later handed 
     
    97156932 * compatibility. 
    97166933 */ 
    9717 #define YY_START ((yy_start - 1) / 2) 
     6934#define YY_START (((yy_start) - 1) / 2) 
    97186935#define YYSTATE YY_START 
    97196936 
     
    97226939 
    97236940/* Special action meaning "start processing a new file". */ 
    9724 #define YY_NEW_FILE yyrestart( yyin ) 
     6941#define YY_NEW_FILE fortranrestart(fortranin ) 
    97256942 
    97266943#define YY_END_OF_BUFFER_CHAR 0 
    97276944 
    97286945/* Size of default input buffer. */ 
     6946#ifndef YY_BUF_SIZE 
    97296947#define YY_BUF_SIZE 16384 
    9730  
     6948#endif 
     6949 
     6950/* The state buf must be large enough to hold one state per character in the main buffer. 
     6951 */ 
     6952#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 
     6953 
     6954#ifndef YY_TYPEDEF_YY_BUFFER_STATE 
     6955#define YY_TYPEDEF_YY_BUFFER_STATE 
    97316956typedef struct yy_buffer_state *YY_BUFFER_STATE; 
    9732  
    9733 extern int yyleng; 
    9734 extern FILE *yyin, *yyout; 
     6957#endif 
     6958 
     6959#ifndef YY_TYPEDEF_YY_SIZE_T 
     6960#define YY_TYPEDEF_YY_SIZE_T 
     6961typedef size_t yy_size_t; 
     6962#endif 
     6963 
     6964extern yy_size_t fortranleng; 
     6965 
     6966extern FILE *fortranin, *fortranout; 
    97356967 
    97366968#define EOB_ACT_CONTINUE_SCAN 0 
     
    97386970#define EOB_ACT_LAST_MATCH 2 
    97396971 
    9740 /* The funky do-while in the following #define is used to turn the definition 
    9741  * int a single C statement (which needs a semi-colon terminator).  This 
    9742  * avoids problems with code like: 
    9743  * 
    9744  *    if ( condition_holds ) 
    9745  *    yyless( 5 ); 
    9746  * else 
    9747  *    do_something_else(); 
    9748  * 
    9749  * Prior to using the do-while the compiler would get upset at the 
    9750  * "else" because it interpreted the "if" statement as being all 
    9751  * done when it reached the ';' after the yyless() call. 
    9752  */ 
    9753  
    9754 /* Return all but the first 'n' matched characters back to the input stream. */ 
    9755  
     6972    #define YY_LESS_LINENO(n) 
     6973     
     6974/* Return all but the first "n" matched characters back to the input stream. */ 
    97566975#define yyless(n) \ 
    97576976   do \ 
    97586977      { \ 
    9759       /* Undo effects of setting up yytext. */ \ 
    9760       *yy_cp = yy_hold_char; \ 
     6978      /* Undo effects of setting up fortrantext. */ \ 
     6979        int yyless_macro_arg = (n); \ 
     6980        YY_LESS_LINENO(yyless_macro_arg);\ 
     6981      *yy_cp = (yy_hold_char); \ 
    97616982      YY_RESTORE_YY_MORE_OFFSET \ 
    9762       yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \ 
    9763       YY_DO_BEFORE_ACTION; /* set up yytext again */ \ 
     6983      (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 
     6984      YY_DO_BEFORE_ACTION; /* set up fortrantext again */ \ 
    97646985      } \ 
    97656986   while ( 0 ) 
    97666987 
    9767 #define unput(c) yyunput( c, yytext_ptr ) 
    9768  
    9769 /* The following is because we cannot portably get our hands on size_t 
    9770  * (without autoconf's help, which isn't available because we want 
    9771  * flex-generated scanners to compile on their own). 
    9772  */ 
    9773 typedef unsigned int yy_size_t; 
    9774  
    9775  
     6988#define unput(c) yyunput( c, (yytext_ptr)  ) 
     6989 
     6990#ifndef YY_STRUCT_YY_BUFFER_STATE 
     6991#define YY_STRUCT_YY_BUFFER_STATE 
    97766992struct yy_buffer_state 
    97776993   { 
     
    97897005    * characters. 
    97907006    */ 
    9791    int yy_n_chars; 
     7007   yy_size_t yy_n_chars; 
    97927008 
    97937009   /* Whether we "own" the buffer - i.e., we know we created it, 
     
    98107026   int yy_at_bol; 
    98117027 
     7028    int yy_bs_lineno; /**< The line count. */ 
     7029    int yy_bs_column; /**< The column count. */ 
     7030     
    98127031   /* Whether to try to fill the input buffer when we reach the 
    98137032    * end of it. 
     
    98167035 
    98177036   int yy_buffer_status; 
     7037 
    98187038#define YY_BUFFER_NEW 0 
    98197039#define YY_BUFFER_NORMAL 1 
     
    98257045    * 
    98267046    * When we actually see the EOF, we change the status to "new" 
    9827     * (via yyrestart()), so that the user can continue scanning by 
    9828     * just pointing yyin at a new input file. 
     7047    * (via fortranrestart()), so that the user can continue scanning by 
     7048    * just pointing fortranin at a new input file. 
    98297049    */ 
    98307050#define YY_BUFFER_EOF_PENDING 2 
     7051 
    98317052   }; 
    9832  
    9833 static YY_BUFFER_STATE yy_current_buffer = 0; 
     7053#endif /* !YY_STRUCT_YY_BUFFER_STATE */ 
     7054 
     7055/* Stack of input buffers. */ 
     7056static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ 
     7057static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ 
     7058static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ 
    98347059 
    98357060/* We provide macros for accessing buffer states in case in the 
    98367061 * future we want to put the buffer states in a more general 
    98377062 * "scanner state". 
     7063 * 
     7064 * Returns the top of the stack, or NULL. 
    98387065 */ 
    9839 #define YY_CURRENT_BUFFER yy_current_buffer 
    9840  
    9841  
    9842 /* yy_hold_char holds the character lost when yytext is formed. */ 
     7066#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 
     7067                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 
     7068                          : NULL) 
     7069 
     7070/* Same as previous macro, but useful when we know that the buffer stack is not 
     7071 * NULL or when we need an lvalue. For internal use only. 
     7072 */ 
     7073#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 
     7074 
     7075/* yy_hold_char holds the character lost when fortrantext is formed. */ 
    98437076static char yy_hold_char; 
    9844  
    9845 static int yy_n_chars;     /* number of characters read into yy_ch_buf */ 
    9846  
    9847  
    9848 int yyleng; 
     7077static yy_size_t yy_n_chars;     /* number of characters read into yy_ch_buf */ 
     7078yy_size_t fortranleng; 
    98497079 
    98507080/* Points to current character in buffer. */ 
    98517081static char *yy_c_buf_p = (char *) 0; 
    9852 static int yy_init = 1;    /* whether we need to initialize */ 
     7082static int yy_init = 0;    /* whether we need to initialize */ 
    98537083static int yy_start = 0;   /* start state number */ 
    98547084 
    9855 /* Flag which is used to allow yywrap()'s to do buffer switches 
    9856  * instead of setting up a fresh yyin.  A bit of a hack ... 
     7085/* Flag which is used to allow fortranwrap()'s to do buffer switches 
     7086 * instead of setting up a fresh fortranin.  A bit of a hack ... 
    98577087 */ 
    98587088static int yy_did_buffer_switch_on_eof; 
    98597089 
    9860 void yyrestart YY_PROTO(( FILE *input_file )); 
    9861  
    9862 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer )); 
    9863 void yy_load_buffer_state YY_PROTO(( void )); 
    9864 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size )); 
    9865 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b )); 
    9866 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file )); 
    9867 void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b )); 
    9868 #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer ) 
    9869  
    9870 YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size )); 
    9871 YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str )); 
    9872 YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); 
    9873  
    9874 static void *yy_flex_alloc YY_PROTO(( yy_size_t )); 
    9875 static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )); 
    9876 static void yy_flex_free YY_PROTO(( void * )); 
    9877  
    9878 #define yy_new_buffer yy_create_buffer 
     7090void fortranrestart (FILE *input_file  ); 
     7091void fortran_switch_to_buffer (YY_BUFFER_STATE new_buffer  ); 
     7092YY_BUFFER_STATE fortran_create_buffer (FILE *file,int size  ); 
     7093void fortran_delete_buffer (YY_BUFFER_STATE b  ); 
     7094void fortran_flush_buffer (YY_BUFFER_STATE b  ); 
     7095void fortranpush_buffer_state (YY_BUFFER_STATE new_buffer  ); 
     7096void fortranpop_buffer_state (void ); 
     7097 
     7098static void fortranensure_buffer_stack (void ); 
     7099static void fortran_load_buffer_state (void ); 
     7100static void fortran_init_buffer (YY_BUFFER_STATE b,FILE *file  ); 
     7101 
     7102#define YY_FLUSH_BUFFER fortran_flush_buffer(YY_CURRENT_BUFFER ) 
     7103 
     7104YY_BUFFER_STATE fortran_scan_buffer (char *base,yy_size_t size  ); 
     7105YY_BUFFER_STATE fortran_scan_string (yyconst char *yy_str  ); 
     7106YY_BUFFER_STATE fortran_scan_bytes (yyconst char *bytes,yy_size_t len  ); 
     7107 
     7108void *fortranalloc (yy_size_t  ); 
     7109void *fortranrealloc (void *,yy_size_t  ); 
     7110void fortranfree (void *  ); 
     7111 
     7112#define yy_new_buffer fortran_create_buffer 
    98797113 
    98807114#define yy_set_interactive(is_interactive) \ 
    98817115   { \ 
    9882    if ( ! yy_current_buffer ) \ 
    9883       yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ 
    9884    yy_current_buffer->yy_is_interactive = is_interactive; \ 
     7116   if ( ! YY_CURRENT_BUFFER ){ \ 
     7117        fortranensure_buffer_stack (); \ 
     7118      YY_CURRENT_BUFFER_LVALUE =    \ 
     7119            fortran_create_buffer(fortranin,YY_BUF_SIZE ); \ 
     7120   } \ 
     7121   YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 
    98857122   } 
    98867123 
    98877124#define yy_set_bol(at_bol) \ 
    98887125   { \ 
    9889    if ( ! yy_current_buffer ) \ 
    9890       yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ 
    9891    yy_current_buffer->yy_at_bol = at_bol; \ 
     7126   if ( ! YY_CURRENT_BUFFER ){\ 
     7127        fortranensure_buffer_stack (); \ 
     7128      YY_CURRENT_BUFFER_LVALUE =    \ 
     7129            fortran_create_buffer(fortranin,YY_BUF_SIZE ); \ 
     7130   } \ 
     7131   YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 
    98927132   } 
    98937133 
    9894 #define YY_AT_BOL() (yy_current_buffer->yy_at_bol) 
     7134#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 
     7135 
     7136/* Begin user sect3 */ 
    98957137 
    98967138typedef unsigned char YY_CHAR; 
    9897 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; 
     7139 
     7140FILE *fortranin = (FILE *) 0, *fortranout = (FILE *) 0; 
     7141 
    98987142typedef int yy_state_type; 
    9899 extern char *yytext; 
    9900 #define yytext_ptr yytext 
    9901  
    9902 static yy_state_type yy_get_previous_state YY_PROTO(( void )); 
    9903 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state )); 
    9904 static int yy_get_next_buffer YY_PROTO(( void )); 
    9905 static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); 
     7143 
     7144extern int fortranlineno; 
     7145 
     7146int fortranlineno = 1; 
     7147 
     7148extern char *fortrantext; 
     7149#define yytext_ptr fortrantext 
     7150 
     7151static yy_state_type yy_get_previous_state (void ); 
     7152static yy_state_type yy_try_NUL_trans (yy_state_type current_state  ); 
     7153static int yy_get_next_buffer (void ); 
     7154static void yy_fatal_error (yyconst char msg[]  ); 
    99067155 
    99077156/* Done after the current pattern has been matched and before the 
    9908  * corresponding action - sets up yytext. 
     7157 * corresponding action - sets up fortrantext. 
    99097158 */ 
    99107159#define YY_DO_BEFORE_ACTION \ 
    9911    yytext_ptr = yy_bp; \ 
    9912    yyleng = (int) (yy_cp - yy_bp); \ 
    9913    yy_hold_char = *yy_cp; \ 
     7160   (yytext_ptr) = yy_bp; \ 
     7161   fortranleng = (size_t) (yy_cp - yy_bp); \ 
     7162   (yy_hold_char) = *yy_cp; \ 
    99147163   *yy_cp = '\0'; \ 
    9915    yy_c_buf_p = yy_cp; 
    9916  
    9917 #define YY_NUM_RULES 173 
    9918 #define YY_END_OF_BUFFER 174 
    9919 static yyconst short int yy_accept[1124] = 
     7164   (yy_c_buf_p) = yy_cp; 
     7165 
     7166#define YY_NUM_RULES 176 
     7167#define YY_END_OF_BUFFER 177 
     7168/* This struct is not used in this scanner, 
     7169   but its presence is necessary. */ 
     7170struct yy_trans_info 
     7171   { 
     7172   flex_int32_t yy_verify; 
     7173   flex_int32_t yy_nxt; 
     7174   }; 
     7175static yyconst flex_int16_t yy_accept[1162] = 
    99207176    {   0, 
    99217177        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    9922         0,    0,  174,  173,  163,  159,  162,  172,  151,  150, 
    9923       153,  165,  151,  153,  153,  155,  152,  138,  149,  154, 
    9924       157,  156,  158,  144,  144,  144,  144,  144,  144,  144, 
    9925       144,  144,  144,  144,  144,  144,  144,  144,  144,  144, 
    9926       144,  163,  159,  162,  172,  149,  144,  144,  144,  144, 
    9927       144,  173,  173,  170,  173,  153,  144,    0,    0,  163, 
    9928       164,    0,  162,  172,  172,  172,    0,  142,    0,    0, 
    9929       165,  165,  165,  165,    0,    0,    0,  141,    0,    0, 
    9930       133,   25,    0,  145,    0,    0,    0,    0,    0,    0, 
    9931  
    9932         0,  134,    0,  149,   24,    0,  144,  144,  144,  144, 
    9933       144,  144,  144,  144,  144,  144,  144,  144,  144,  144, 
    9934       144,  144,  144,   42,  144,  144,  144,  144,  144,  144, 
    9935       144,  144,  144,  144,  144,  144,  144,   84,  144,  144, 
    9936       144,  144,  144,  144,  144,  144,  144,  144,  144,  144, 
    9937       144,  144,  144,  144,  144,  144,  144,  144,  144,  144, 
    9938       144,  144,  144,  144,  163,  161,    0,  161,    0,    0, 
    9939         0,    0,    0,  164,  160,  161,    0,  172,  171,  172, 
    9940       172,  172,  161,  149,    4,  144,  144,  144,  144,  144, 
    9941       144,    0,  170,    0,    0,    0,  167,   25,    0,    0, 
    9942  
    9943         4,    0,  144,  144,  144,  144,  144,  144,    0,    0, 
    9944         0,  172,  172,    0,    0,  165,  165,    0,    0,    0, 
    9945         0,  140,    0,    0,    0,    0,    0,    0,    0,    0, 
    9946         0,    0,    0,    0,    0,    0,    0,  148,  145,    0, 
    9947         0,    0,  143,    0,  144,  144,  144,  144,  144,  144, 
    9948       144,  144,  144,  144,  144,  144,  144,  114,  144,  144, 
    9949       144,    0,  144,  144,  144,  144,  144,   15,  144,  144, 
    9950       144,  113,  144,  144,  144,  144,  144,    0,  144,    0, 
    9951        95,  144,  144,  144,  144,  144,  120,  144,  144,  125, 
    9952       144,  144,  144,  144,  144,  144,   88,  144,  144,  144, 
    9953  
    9954       144,  144,  144,  144,  144,  144,  144,  144,  144,  144, 
    9955       144,  117,  144,  144,  144,  144,  144,  121,  144,  144, 
    9956       144,  144,  144,  163,  161,    0,  164,    0,    0,    0, 
    9957         0,    0,    0,    0,  161,    0,  161,  172,  172,  172, 
    9958       149,    4,    4,    4,    4,  144,  144,  144,  144,  144, 
    9959       144,    0,    0,    0,  167,    0,    0,    4,    4,    4, 
    9960         4,  143,    0,  144,  144,    0,  144,  144,  144,  144, 
    9961         0,    0,    0,  172,  172,    0,    0,  165,  165,    0, 
    9962         0,    0,    0,  146,    0,  145,    0,  147,    0,   27, 
    9963         0,   29,   28,   31,   30,   33,    0,    0,   35,    0, 
    9964  
    9965       145,    0,  146,    0,  145,    0,  147,    0,  143,    0, 
    9966       144,  144,  124,  116,  144,  119,  122,  144,   21,  144, 
    9967       144,  144,  144,  144,  115,  144,  144,  144,    0,  144, 
    9968       144,  144,   93,    0,  107,  144,  144,  144,  144,  144, 
    9969       144,  144,  144,  144,    0,  108,  144,  144,  144,  144, 
    9970       144,  144,  144,    0,   87,  144,  144,  144,  144,  144, 
    9971       144,  144,    0,   97,  144,  144,    0,  110,  144,  144, 
    9972       144,  144,  111,   20,   59,   73,  144,  144,  144,  144, 
    9973       144,  144,  144,  144,   78,   43,  144,  144,  144,  144, 
    9974        68,  144,  126,  118,  144,   71,   53,  144,    0,   96, 
    9975  
    9976        98,  144,   91,  100,  144,  144,  163,  161,  164,    0, 
    9977         0,    0,    0,    0,    0,  161,    0,  161,  172,  172, 
    9978       172,  149,    4,    4,  144,  144,  144,  144,  144,   17, 
    9979         0,    0,    0,    4,    4,    0,  143,    0,  144,  144, 
    9980       144,  144,    0,    0,    0,  172,  172,    0,    0,  165, 
    9981       165,    0,    0,   37,   26,    0,   34,   36,    0,  143, 
    9982         0,  143,  144,  144,  144,  144,  144,   48,  144,  144, 
    9983       144,  123,  144,  144,    0,  144,  144,  144,    0,  144, 
    9984       144,    0,    0,    0,    0,    0,    0,    0,    0,   41, 
    9985       144,   94,  144,  144,  144,  144,  144,  144,  144,  144, 
    9986  
    9987       144,   75,   75,   75,   75,  144,    0,  106,  112,  144, 
    9988       144,   87,  144,  144,   89,  144,  144,  144,  144,  144, 
    9989       144,  144,  144,  144,  144,  144,  144,  144,  144,   51, 
    9990       144,   76,  144,  144,  144,    0,  144,  144,  144,  144, 
    9991       144,  101,  144,  144,   54,   80,  163,  161,  164,    0, 
    9992         0,    0,    0,    0,  161,    0,  161,  172,  172,  172, 
    9993       149,    4,    3,    0,  103,  144,  144,   85,  144,   69, 
    9994        70,   69,    0,    0,    0,    4,    3,    0,  143,    0, 
    9995       143,  144,   48,  144,  123,    0,   22,    0,  172,   22, 
    9996         0,   22,   22,  165,   22,    0,   22,   22,   22,   32, 
    9997  
    9998       144,   22,   22,   22,  144,  144,  144,   62,  144,  144, 
    9999       144,  144,    0,  144,  144,  139,    0,    0,   92,  144, 
    10000        41,    0,   94,    0,    0,    0,    0,    0,    0,    0, 
    10001       144,  144,  144,  144,  144,  144,  144,  144,  144,    0, 
    10002       109,  144,  144,  144,  144,  144,  144,  144,   65,  144, 
    10003       144,  144,  128,   99,  127,  129,   38,  144,  144,  144, 
    10004       144,  144,  144,   82,    0,  144,   10,   74,   18,  144, 
    10005       144,   81,  163,  161,  164,    0,    0,    0,  161,  172, 
    10006       172,   22,    4,    3,    3,  144,  144,  144,    0,    0, 
    10007        22,    4,    3,    3,  144,   22,   22,   22,   23,  166, 
    10008  
    10009        23,   23,   23,   23,   23,   23,   23,   23,   23,   23, 
    10010       144,  144,  144,   57,  144,  144,  144,    0,    0,  144, 
    10011       144,   39,   92,    0,  144,    0,    0,    0,    0,    0, 
    10012         0,    0,    0,  144,  144,  144,  144,  144,  144,   72, 
    10013       144,  144,  144,    0,    0,  144,  144,   16,   49,   44, 
    10014       144,  144,   45,    0,  144,  144,  144,  144,   66,   83, 
    10015         7,    0,    0,  144,    0,  144,  144,    0,    0,    0, 
    10016       172,   23,    4,  144,  144,   63,    0,   23,    4,   23, 
    10017        23,   23,  144,    8,  144,  144,   86,  144,  144,   39, 
    10018         0,    0,  144,  144,    0,  144,    0,    0,    0,    0, 
    10019  
    10020         0,    0,   72,    0,  144,  144,  144,  144,  144,  144, 
    10021        55,  144,   64,    0,    0,    0,  135,   11,   19,  144, 
    10022       144,    0,  144,   79,   67,  144,    0,  144,    0,  144, 
    10023       144,    0,    0,  172,    4,  144,   58,    0,    4,  144, 
    10024       131,   46,  144,   50,    0,    0,  144,  144,    0,   56, 
    10025         0,    0,    0,    0,    0,    0,   55,  144,  144,   40, 
    10026       144,  105,  144,  144,    0,    0,    0,    0,  135,  130, 
    10027        90,    0,  144,   60,    0,   61,    0,  144,  144,    0, 
    10028        58,  172,    4,    4,  144,    0,    4,    4,  144,    9, 
    10029         0,    0,  144,  144,   56,    0,    0,   40,    0,  105, 
    10030  
    10031         0,  144,  144,   13,  144,  144,    0,    0,    0,  144, 
    10032         0,    0,  102,    6,    0,  172,    4,    4,  144,    0, 
    10033         4,    4,   47,    0,    0,  144,  144,    0,    0,   13, 
    10034         0,   14,  144,  144,   52,    0,    0,    0,  144,    0, 
    10035       102,    0,  172,    4,    2,  104,    0,    4,    2,    0, 
    10036         0,  144,  144,   14,    0,    0,  132,  144,    0,    0, 
    10037         0,  144,    0,  104,  172,    4,    0,    4,    0,    0, 
    10038       137,  144,  132,    0,   12,    0,    0,    0,  144,    0, 
    10039       172,    1,    0,    1,  137,    0,  144,   12,    0,    0, 
    10040         0,  144,    0,  172,    0,    0,  136,    0,    0,    0, 
    10041  
    10042        77,    5,  172,    0,  136,   77,  172,    0,  172,    0, 
    10043       172,    0,  172,    0,  172,    0,  168,    0,    0,    0, 
    10044         0,  169,    0 
     7178        0,    0,  177,  176,  165,  161,  164,  175,  152,  151, 
     7179      155,  167,  152,  154,  154,  154,  157,  153,  137,  150, 
     7180      156,  159,  158,  160,  145,  145,  145,  145,  145,  145, 
     7181      145,  145,  145,  145,  145,  145,  145,  145,  145,  145, 
     7182      145,  145,  165,  161,  164,  175,  150,  145,  145,  145, 
     7183      145,  145,  145,  176,  176,  173,  176,  176,  176,  161, 
     7184      161,  154,  145,    0,    0,  165,    0,  166,    0,  164, 
     7185      175,  175,  175,    0,  141,    0,    0,  167,  167,  167, 
     7186      167,    0,    0,    0,  140,    0,    0,  132,   26,    0, 
     7187 
     7188      146,    0,    0,    0,    0,    0,    0,    0,  133,    0, 
     7189      150,   25,    0,  145,  145,  145,  145,  145,  145,  145, 
     7190      145,  145,  145,  145,  145,  145,  145,  145,  145,  145, 
     7191       43,  145,  145,  145,  145,  145,  145,  145,  145,  145, 
     7192      145,  145,  145,  145,   85,  145,  145,  145,  145,  145, 
     7193      145,  145,  145,  145,  145,  145,  145,  145,  145,  145, 
     7194      145,  145,  145,  145,  145,  145,  145,  145,  145,  145, 
     7195      145,  145,  165,  163,    0,  163,    0,    0,    0,    0, 
     7196        0,    0,  166,  162,  163,    0,  175,  174,  175,  175, 
     7197      175,  163,  150,    4,  145,  145,  145,  145,   85,  145, 
     7198 
     7199      145,    0,  173,    0,    0,    0,    0,    0,    0,    0, 
     7200      169,   26,    0,    0,    4,    0,  145,  145,  145,  145, 
     7201      145,  145,    0,    0,    0,  175,  175,    0,    0,  167, 
     7202      167,    0,    0,    0,    0,  139,    0,    0,    0,    0, 
     7203        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     7204        0,  149,  146,    0,    0,    0,  142,    0,  145,  145, 
     7205      145,  145,  145,  145,  145,  145,  145,  145,  145,  145, 
     7206      145,  115,  145,  145,  145,    0,  145,  145,  145,  145, 
     7207      145,   16,  145,  145,  145,  114,  145,  145,  145,  145, 
     7208      145,    0,  145,    0,   96,  145,  145,  145,  145,  145, 
     7209 
     7210      121,  145,  145,  126,  145,  145,  145,  145,  145,  145, 
     7211      145,   89,  145,  145,  145,  145,  145,  145,  145,  145, 
     7212      145,  145,  145,  145,  145,  145,  118,  145,  145,  145, 
     7213      145,  145,  122,  145,  145,  145,  145,  145,  165,  163, 
     7214        0,  166,    0,    0,    0,    0,    0,    0,    0,    0, 
     7215      163,    0,  163,  175,  175,  175,  150,    4,    4,    4, 
     7216        4,  145,  145,  145,  145,  145,  145,  145,    0,    0, 
     7217        0,    0,  170,    0,    0,  169,    0,    0,    4,    4, 
     7218        4,    4,  142,    0,  145,  145,    0,  145,  145,  145, 
     7219      145,    0,    0,    0,  175,  175,    0,    0,  167,  167, 
     7220 
     7221        0,    0,    0,    0,  147,    0,  146,    0,  148,    0, 
     7222       28,    0,   30,   29,   32,   31,   34,    0,    0,   36, 
     7223        0,  146,    0,  147,    0,  146,    0,  148,    0,  142, 
     7224        0,  125,  117,  145,  145,  120,  123,  145,  145,   22, 
     7225      145,  145,  145,  145,  145,  116,  145,  145,  145,    0, 
     7226      145,  145,  145,   94,    0,  108,  145,  145,  145,  145, 
     7227      145,  145,  145,  145,  145,    0,  109,  145,  145,  145, 
     7228      145,  145,  145,  145,    0,   88,  145,  145,  145,  145, 
     7229      145,  145,  145,    0,   98,  145,  145,    0,  111,  145, 
     7230      145,  145,  145,  112,   21,  145,   60,   74,  145,  145, 
     7231 
     7232      145,  145,  145,  145,  145,  145,   79,   44,  145,  145, 
     7233      145,  145,   69,  145,  127,  119,  145,   72,   54,  145, 
     7234        0,   97,   99,  145,   92,  101,  145,  145,  165,  163, 
     7235      166,    0,    0,    0,    0,    0,    0,    0,  163,    0, 
     7236      163,  175,  175,  175,  150,    4,    4,  145,  145,  145, 
     7237      145,  145,  145,   18,    0,    0,    0,    0,    0,  170, 
     7238        0,    0,    4,    4,    0,  142,    0,  145,  145,  145, 
     7239      145,    0,    0,    0,  175,  175,    0,    0,  167,  167, 
     7240        0,    0,   38,   27,    0,   35,   37,    0,  142,    0, 
     7241      142,  145,  145,  145,  145,  145,   49,  145,  145,  145, 
     7242 
     7243      124,  145,  145,    0,  145,  145,  145,    0,  145,  145, 
     7244        0,    0,    0,    0,    0,    0,    0,    0,   42,  145, 
     7245       95,  145,  145,  145,  145,  145,  145,  145,  145,   76, 
     7246       76,   76,   76,  145,    0,  107,  113,  145,  145,   88, 
     7247      145,  145,   90,  145,  145,  145,  145,  145,  145,  145, 
     7248      145,  145,  145,  145,  145,  145,  145,   52,  145,   77, 
     7249      145,  145,  145,    0,  145,  145,  145,  145,  145,  102, 
     7250      145,  145,   55,   81,  165,  163,  166,    0,    0,    0, 
     7251        0,    0,    0,  163,    0,  163,  175,  175,  175,  150, 
     7252        4,    3,    0,  104,  145,  145,   86,  145,  145,   70, 
     7253 
     7254       71,   70,    0,    0,    0,    0,    4,    3,    0,  142, 
     7255        0,  142,  145,   49,  145,  124,    0,   23,    0,  175, 
     7256       23,    0,   23,   23,  167,   23,    0,   23,   23,   23, 
     7257       33,  145,  145,   23,   23,   23,  145,  145,   63,  145, 
     7258      145,  145,  145,    0,  145,  145,  138,    0,    0,   93, 
     7259      145,   42,    0,   95,    0,    0,    0,    0,    0,    0, 
     7260      145,  145,  145,  145,  145,  145,  145,  145,    0,  110, 
     7261      145,  145,  145,  145,  145,  145,  145,   66,  145,  145, 
     7262      129,  100,  128,  130,   39,  145,  145,  145,  145,  145, 
     7263      145,  145,   83,    0,  145,   11,   75,   19,  145,  145, 
     7264 
     7265       82,  165,  163,  166,    0,    0,    0,    0,  163,  175, 
     7266      175,   23,    4,    3,    3,  145,  145,  145,  145,    0, 
     7267        0,    0,   23,    4,    3,    3,  145,   23,   23,   23, 
     7268       24,    0,  168,   24,   24,   24,   24,   24,   24,   24, 
     7269       24,   24,   24,  145,  145,  145,   58,  145,  145,  145, 
     7270        0,    0,  145,  145,   40,   93,    0,  145,    0,    0, 
     7271        0,    0,    0,    0,    0,  145,  145,  145,  145,  145, 
     7272       73,  145,  145,  145,    0,    0,  145,  145,   17,   50, 
     7273       45,  145,   46,    0,  145,  145,    9,  145,  145,   67, 
     7274       84,    7,    0,    0,  145,    0,  145,  145,    0,    0, 
     7275 
     7276        0,    0,  175,   24,    4,  145,  145,   64,  145,    0, 
     7277        0,   24,    4,   24,   24,   24,  145,    8,  145,  145, 
     7278       87,  145,  145,   40,    0,    0,  145,  145,    0,  145, 
     7279        0,    0,    0,    0,    0,   73,    0,  145,  145,  145, 
     7280      145,  145,   56,  145,   65,    0,    0,    0,    0,  134, 
     7281       12,   20,  145,    0,  145,   80,   68,  145,    0,  145, 
     7282        0,  145,  145,    0,    0,    0,  175,    4,  145,   59, 
     7283      145,    0,    0,    4,  145,  131,   47,  145,   51,    0, 
     7284        0,  145,  145,    0,   57,    0,    0,    0,    0,    0, 
     7285       56,  145,   41,  145,  106,  145,  145,    0,    0,    0, 
     7286 
     7287        0,    0,  134,   91,    0,  145,   61,    0,   62,    0, 
     7288      145,  145,    0,   59,    0,  175,    4,    4,  145,  143, 
     7289        0,    0,    4,    4,  145,   10,    0,    0,  145,  145, 
     7290       57,    0,   41,    0,  106,    0,  145,   14,  145,  145, 
     7291        0,    0,    0,  145,    0,    0,  103,    6,    0,  143, 
     7292      175,    4,    4,  145,    0,    0,    4,    4,   48,    0, 
     7293        0,  145,  145,    0,   14,    0,   15,  145,   53,    0, 
     7294        0,    0,  145,    0,  103,    0,  175,    4,    2,  105, 
     7295        0,    0,    4,    2,    0,    0,  145,  145,   15,    0, 
     7296      145,    0,    0,    0,  145,    0,  105,  175,    4,    0, 
     7297 
     7298        0,    4,    0,    0,  136,  145,    0,   13,    0,    0, 
     7299        0,  145,    0,  175,    1,    0,    0,  144,    1,  136, 
     7300        0,  145,   13,    0,    0,    0,    0,  145,    0,  175, 
     7301        0,    0,  135,    0,    0,    0,   78,    5,  175,    0, 
     7302      135,   78,  175,    0,  175,    0,  175,    0,  175,    0, 
     7303      175,    0,  175,  171,    0,    0,    0,    0,    0,  172, 
     7304        0 
    100457305    } ; 
    100467306 
    10047 static yyconst int yy_ec[256] = 
     7307static yyconst flex_int32_t yy_ec[256] = 
    100487308    {   0, 
    100497309        1,    1,    1,    1,    1,    1,    1,    1,    2,    3, 
     
    100527312        1,    4,    5,    6,    7,    8,    9,   10,   11,   12, 
    100537313       13,   14,   15,   16,   17,   18,   19,   20,   21,   22, 
    10054        23,   24,   25,   26,   27,   28,   20,   29,   30,   31, 
    10055        32,   33,    1,    1,   37,   38,   39,   40,   41,   42, 
    10056        43,   44,   45,   46,   47,   48,   49,   50,   51,   52, 
    10057        53,   54,   55,   56,   57,   58,   59,   60,   61,   62, 
    10058        34,    1,   35,    1,   36,    1,   37,   38,   39,   40, 
    10059  
     7314       23,   24,   25,   26,   27,   28,   29,   30,   31,   32, 
     7315       33,   34,    1,    1,   35,   36,   37,   38,   39,   40, 
    100607316       41,   42,   43,   44,   45,   46,   47,   48,   49,   50, 
    100617317       51,   52,   53,   54,   55,   56,   57,   58,   59,   60, 
    10062        61,   62,   63,   63,   63,    1,    1,    1,    1,    1, 
     7318       61,    1,   62,    1,   63,    1,   64,   65,   66,   67, 
     7319 
     7320       68,   69,   70,   71,   72,   44,   73,   74,   75,   76, 
     7321       77,   78,   79,   80,   81,   82,   83,   84,   85,   86, 
     7322       87,   88,   89,   89,   89,    1,    1,    1,    1,    1, 
    100637323        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    100647324        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
     
    100777337    } ; 
    100787338 
    10079 static yyconst int yy_meta[64] = 
     7339static yyconst flex_int32_t yy_meta[90] = 
    100807340    {   0, 
    10081         1,    2,    3,    4,    1,    5,    1,    1,    1,    6, 
    10082         1,    1,    1,    1,    7,    1,    7,    8,    1,    9, 
    10083         9,    9,    9,    9,    9,    9,    9,    9,    1,    1, 
    10084         1,    1,    1,    1,    1,   10,   11,   10,   10,   12, 
    10085        13,   14,   15,   16,   10,   10,   10,   15,   15,   15, 
    10086        11,   10,   12,   15,   15,   14,   15,   10,   17,   10, 
    10087        10,   10,    5 
     7341        1,    2,    3,    2,    1,    4,    1,    1,    1,    1, 
     7342        1,    1,    1,    1,    1,    1,    1,    5,    1,    6, 
     7343        6,    6,    6,    6,    6,    6,    6,    6,    6,    1, 
     7344        1,    1,    1,    1,    7,    8,    8,    9,    9,    5, 
     7345       10,   11,    8,    8,    8,   10,   10,   10,    7,    8, 
     7346        9,   10,   10,    5,   10,    8,   12,    8,    8,    8, 
     7347        1,    1,    8,    7,    8,    8,    9,    9,    5,   10, 
     7348       11,    8,    8,   10,   10,   10,    7,    8,    9,   10, 
     7349       10,    5,   10,    8,   12,    8,    8,    8,    4 
    100887350    } ; 
    100897351 
    10090 static yyconst short int yy_base[1180] = 
     7352static yyconst flex_int16_t yy_base[1215] = 
    100917353    {   0, 
    10092         0,   62,    0,    0,    0,    0, 4185,   65,    0,   55, 
    10093         0,    0, 4187,   35,   69,   70,   74,   37,   75,   50, 
    10094        53,   72,   93,   78,   66,   56,  148,   87,   81,   65, 
    10095        68,   99,   71,  191,  230,  108,  183,  225,  244,  103, 
    10096       137,  152,  185,  250,  265,  262,  281,  220,  286,  296, 
    10097       308,  368,  134,  424,  321,  350,  149, 4149,  310,  337, 
    10098       270, 4189, 4182, 4189,  158,  380,  481, 4147, 4129,  138, 
    10099       163,  175,  179,    0, 4145, 4127, 4174, 4189,  147,  133, 
    10100      4176, 4175,  192,  156,  232,  393,  376, 4189,  402,  406, 
    10101      4189, 4189,  543,  184, 4127, 4123,  204,  218,  226, 4121, 
    10102  
    10103      4123, 4189,  584,  358, 4189,  448,  532,  507,  514,  572, 
    10104       534,  588,  593,  605,  617,  381,  242,  169,  195,  404, 
    10105       384,  312,  517,  672,  524,  378,  403,  544,  365,  630, 
    10106       597,  545,  424,  565,  651,  679,  425,  650,  626,  648, 
    10107       672,  673,  603,  674,  680,  684,  698,  686,  699,  704, 
    10108       706,  584,  707,  710,  711,  730,  683,  297,  732,  735, 
    10109       734,  737,  742,  750,  788,  795, 4170,  389,  316, 4135, 
    10110      4123,   72, 4115,  807, 4189,  863,  427, 4166, 4189,  225, 
    10111       327,  543,  632,  660,  804,  765,  799,  770,  764,  785, 
    10112       788, 4165, 4189,  343, 4164,  774, 4189, 4163,  820,  564, 
    10113  
    10114       856,  918,  946, 4147,  271,  661,  187,  270, 4116, 4106, 
    10115       812, 4114, 4104,  547,  804,  617,  398,  859,  894,  906, 
    10116       868, 4189,  889,  871,  815,  860,  896, 4120,  372, 4141, 
    10117      4140, 4139, 4138,  275, 4099, 4136, 4099, 4189,  874,  907, 
    10118       908,  914, 4111, 4110,  864,  973,  999,  977,  975,  983, 
    10119       984,  981, 1002,  986,  987, 1006, 1007, 1008, 1011, 1020, 
    10120      1010, 4091,  737, 1029, 1032, 1017, 1036, 1089, 1033, 1078, 
    10121      1042, 1035, 1047, 1058, 1038, 1057, 1063, 1101, 1071, 1013, 
    10122      4189, 1070, 1079, 1082, 1083, 1105, 1110, 1148, 1149, 1112, 
    10123      1117, 1119, 1126, 1128, 1133, 1139, 1076, 1125, 1137, 1140, 
    10124  
    10125      1151, 1161, 1162, 1171, 1163, 1175, 1176, 1177, 1186, 1187, 
    10126      1184, 1198, 1189, 1199, 1202, 1141, 1245, 1207, 1221, 1209, 
    10127      1211, 1213, 1225, 1264, 1283, 4088, 1290, 4145, 4092, 4096, 
    10128      4089, 4093, 4091, 4101, 1346,  715,  922,  557, 1120,  837, 
    10129      1266,    0,  931, 4098, 4091, 1236, 1235, 1243, 1264, 1271, 
    10130      1274,  800, 4020, 1311, 4189, 1268,  873, 4003, 1332, 1295, 
    10131      1132, 1401, 1440,    0, 3971, 1479,  697,  659,  815,  998, 
    10132      3883, 3892,  932, 3876, 3823, 1231,  551,  561, 1302, 1321, 
    10133      1342, 1351, 1355, 1385, 1410, 1424, 1449, 1463, 3829, 4189, 
    10134      3812, 4189, 4189, 4189, 4189, 4189, 3767, 3805, 4189, 3802, 
    10135  
    10136      1347, 1488, 1497, 1506, 1515, 1524, 1533, 1302, 3778, 1327, 
    10137      1304, 1525, 4189, 1273, 1362, 1361, 1402, 1403, 1441, 1442, 
    10138      1526, 1443, 1527, 1528, 1531, 1533, 1535, 1534, 3773, 1549, 
    10139      1553, 1539, 1597, 1655, 4189, 1541, 1554, 1563, 1565, 1567, 
    10140      1569, 1575, 1578, 1577, 1361, 4189, 1583, 1714, 1587, 1623, 
    10141      1591, 1596, 1607, 3762, 1611, 1617, 1612, 1616, 1630, 1631, 
    10142      1645, 1639, 1684, 4189, 1652, 1654, 1690, 4189, 1741, 1672, 
    10143      1742, 1743, 1744, 1745, 1746, 1747, 1751, 1757, 1766, 1756, 
    10144      1767, 1771, 1772, 1777, 1776, 1801, 1779, 1780, 1781, 1782, 
    10145      1787, 1790, 1800, 1802, 1828, 1805, 1806, 1810, 1846, 4189, 
    10146  
    10147      1808, 1812, 1809, 1814, 1830, 1832, 1870, 1885, 1892, 3770, 
    10148      3752, 3770, 3767, 3761, 3797, 1948, 1009, 1380, 1303,  663, 
    10149      1414, 1873, 3746, 3747, 1903, 1863, 1902, 1839, 1943, 3794, 
    10150      1306, 1438, 1451, 1849, 1566, 2003, 2029, 2068, 1591,  424, 
    10151      1063, 1373, 3756,    0, 1392, 3755,    0,  815, 3788, 1875, 
    10152      3790, 1919, 1702, 4189, 4189, 3774, 4189, 4189, 1987, 2013, 
    10153      2038, 2052, 1844, 2096, 1864, 1882, 1884, 1883, 1927, 1924, 
    10154      1929, 1909, 1945, 1930, 3746, 1949, 2123, 2124, 2160, 2045, 
    10155      2126, 3738, 3728, 1588, 3733, 3680, 1623, 3668, 3683, 1963, 
    10156      2129, 1965, 2030, 2132, 2130, 2128, 2136, 2148, 2150, 2138, 
    10157  
    10158      2191, 4189, 2186, 2178, 2162, 2180, 1990, 4189, 2164, 2166, 
    10159      2184, 4189, 2187, 2196, 2188, 2190, 2194, 2200, 2209, 2203, 
    10160      2206, 2210, 2218, 2222, 2221, 2230, 2225, 2228, 2236, 2231, 
    10161      2246, 2237, 2243, 2244, 2249, 3696, 2252, 2255, 2258, 2256, 
    10162      2264, 4189, 2265, 2267, 2276, 2277, 2322, 2331, 2341, 2313, 
    10163      3686, 1416, 3684, 2336, 2397, 1449, 1648, 1854, 2040, 3697, 
    10164      2324, 3654, 1783, 2335, 4189, 2313, 2312, 1910, 2335, 2392, 
    10165      4189, 2389, 2194, 2341, 3693, 2249, 2042, 2452, 2478, 2504, 
    10166      2530, 1870, 3675, 2558, 3672,    0, 4189, 2615,    0,    0, 
    10167      3677, 3676, 4189, 3659, 3654, 2353, 2366, 2400, 4189, 4189, 
    10168  
    10169      2643, 2392, 2355, 2331, 2369, 2384, 2385, 2389, 2390, 2391, 
    10170      2392, 2397, 3580, 2431, 2415, 2393, 3585, 3582, 2395, 2430, 
    10171      4189, 3575, 4189, 3566, 3580, 3539, 3541, 3550, 3535, 3495, 
    10172      2454, 2455, 2457, 2480, 2481, 2428, 2670, 2458, 2671, 2455, 
    10173      4189, 2482, 2708, 2672, 2676, 2677, 2692, 2483, 2484, 2678, 
    10174      2680, 2690, 2685, 2699, 2700, 2703, 2739, 2705, 2710, 2711, 
    10175      2712, 2714, 2721, 2715, 2537, 2726, 2719, 2724, 2735, 2775, 
    10176      2744, 2745, 2781, 2792, 2801, 3478, 3436, 3432,    0, 1637, 
    10177      3476, 3475, 3435,    0, 1991, 2750, 2772, 2806, 1959, 3473, 
    10178      3472, 2313, 3471, 2356, 2860, 2921,    0, 3455, 4189, 4189, 
    10179  
    10180         0, 3466, 4189, 3468, 2537, 2621, 4189, 2905, 2793, 2747, 
    10181      2782, 2779, 2805, 2753, 2897, 2780, 2802, 3429, 2458, 2899, 
    10182      2791, 2898, 4189, 3428, 2900, 3429, 3426, 3409, 3422, 3423, 
    10183      3409, 3421, 3407, 2902, 2903, 2918, 2922, 2923, 2924, 2926, 
    10184      2927, 2928, 2936, 2981, 2976, 2937, 2951, 2955, 2957, 2958, 
    10185      2959, 2963, 2960, 2997, 2965, 2966, 2967, 2969, 2979, 2981, 
    10186      2987, 3024, 3423, 2988, 2811, 2990, 2993, 3417, 3407, 2459, 
    10187      2510, 3453, 3419, 2994, 2997, 2462, 3026, 3448, 3029, 3063, 
    10188         0, 3426, 3002, 3000, 3016, 3006, 3013, 3018, 3021, 4189, 
    10189      3389, 3309, 3024, 3022, 3272, 3027, 3215, 3209, 3187, 3150, 
    10190  
    10191      3134, 3029, 4189, 3004, 3055, 3040, 3056, 3042, 3058, 3061, 
    10192      3062, 3067, 3065, 3098, 2484, 3110, 3119, 3070, 3088, 3089, 
    10193      3094, 2917, 3090, 3091, 3097, 3098, 2953, 3099, 2930, 3100, 
    10194      3109, 2818, 2796, 2785, 2502, 3110, 3102, 2383, 3135, 3112, 
    10195      3120, 3124, 3128, 3125, 2746, 2687, 3131, 3133, 2605, 3134, 
    10196      2590, 2592, 2586, 2479, 2459, 2433, 4189, 3139, 3143, 3144, 
    10197      3147, 3149, 3152, 3155, 2541, 3192, 3208, 3204, 3210, 3162, 
    10198      3178, 2438, 3185, 3182, 2414, 3188, 2340, 3189, 3190, 2333, 
    10199      4189, 2018, 2288, 2260, 3192,  112, 3197, 3188, 3200, 3191, 
    10200      2137, 2149, 3210, 3211, 4189, 2017, 2011, 4189, 1998, 4189, 
    10201  
    10202      1986, 3212, 3213, 3197, 3216, 3218, 2624, 3271, 1977, 3239, 
    10203      1982, 1903, 3223, 3231, 1885, 3254, 1854, 1829, 3232, 3066, 
    10204      1951, 1593, 3241, 1822, 1744, 3242, 3245, 1736, 1662, 4189, 
    10205      1653, 3250, 3257, 3252, 3254, 2850, 3310, 1642, 3270, 1622, 
    10206      4189, 1521, 3100, 1441,    0, 3255, 3294, 1280, 1416, 1354, 
    10207      1309, 3268, 3280, 4189, 1314, 1246, 3264, 3278, 3325, 3333, 
    10208      1178, 3284, 1155, 4189, 3300, 1072, 3313, 2771, 1054, 1064, 
    10209      3294, 3296, 4189, 1044, 3302, 3350, 3377,  992, 3305,  960, 
    10210      3102,    0, 3337,  892, 4189,  829, 3312, 4189, 3342, 3388, 
    10211       696, 3345,  555, 3358, 3364,  406, 3367, 3414, 3415,  348, 
    10212  
    10213      3368, 4189, 3341, 3380, 4189, 4189, 3366, 3381, 3351, 3367, 
    10214      2713, 3390, 3382, 3386,  281, 3404, 4189, 3405, 3416, 3426, 
    10215       177, 4189, 4189, 3482, 3499, 3516, 3533, 3550, 3567, 3577, 
    10216      3584, 3601, 3615, 3629, 3646, 3663, 3672, 3685, 3702, 3716, 
    10217      3722, 3731, 3748, 3765, 3424, 3427, 3428, 3774, 3432, 3436, 
    10218      3440,  362, 2185, 3786, 3800, 3806, 3441, 3445, 3812, 3818, 
    10219      3827, 3844, 3861, 3878, 3895, 3912, 3926, 3935, 3952, 3969, 
    10220      3986, 4003, 4020, 4037, 4054, 4071, 4088, 4105, 4122 
     7354        0,   88,    0,    0,    0,    0, 1215,   93, 1196,   91, 
     7355        0,    0, 1179,   64,   97,  117,  132,   87,  124,   98, 
     7356       99,  142,  173,  154,  108,  135,  134,  254,  172,  179, 
     7357      175,  178,  219,  180,  323,  388,  384,  318,  386,  319, 
     7358      186,  128,  250,  256,  392,  404,  438,  428,  204,  455, 
     7359      432,  465,  544,  120,  537,  548,  627,  624,  622,  544, 
     7360      644,  658,  251, 9159, 1175, 9159,  267,   99,  162,  569, 
     7361      572,  620,  745,  164,  107,  262,  307,  335,  376,  522, 
     7362        0,  167,  157, 1162, 9159,  278,  321, 1160, 1118,  372, 
     7363      304,  532,  593,  567, 9159,  633,  832, 9159, 9159,  911, 
     7364 
     7365      798,  318,  319,  450,  799,  552,  320,  354, 9159,  978, 
     7366      834, 9159,  865,  860,  862,  866,  914,  863,  973,  980, 
     7367      974, 1013, 1024, 1045,  869, 1049, 1075, 1095, 1098, 1101, 
     7368     1182, 1177, 1161, 1181, 1214, 1212, 1237, 1239, 1235, 1270, 
     7369     1290, 1316, 1325, 1293, 1346, 1323, 1366, 1368, 1391, 1399, 
     7370     1403, 1429, 1430, 1455, 1452, 1478, 1498, 1482, 1523, 1521, 
     7371     1554, 1548, 1579, 1586, 1606, 1629, 1649, 1675, 1681, 1698, 
     7372     1707, 1729,  871, 1114, 1109,  140, 1023,  187,  372,  403, 
     7373      553,  401, 1095,  565, 1792, 1818, 1083, 9159,  643,  669, 
     7374      589, 1844, 1870, 1580, 1865, 1867, 1868, 1905, 1926, 1922, 
     7375 
     7376     1925, 1078, 9159,  837,  437,  677,  249,  660, 1072,  712, 
     7377     9159, 1062,  844,  625, 1874, 1993, 2022, 1042,  864,  473, 
     7378      904,  621,  506,  651,  721,  798,  791,  890,  912,  936, 
     7379      907,  725, 1029, 1143,  729, 9159, 1114, 1179, 2097, 2112, 
     7380     2127,  229,  937, 1033, 1012, 1006,  994,  943,  883,  974, 
     7381      891, 9159, 1476, 2142, 2157, 2172, 2182, 2202, 2178, 2180, 
     7382     2200, 2203, 2223, 2243, 2246, 2244, 2276, 2269, 2299, 2307, 
     7383     2301, 2324, 2344, 2351, 2377,  901, 1018, 2374, 2394, 2397, 
     7384     2414, 2495, 2434, 2440, 2465, 2472, 2518, 2521, 2515, 2548, 
     7385     2556, 1138, 2564,  968, 9159, 2581, 2597, 2604, 2627, 2649, 
     7386 
     7387     2650, 2690, 2693, 2686, 2726, 2738, 2746, 2747, 2763, 2783, 
     7388     2799, 2800, 2803, 2820, 2840, 2843, 2870, 2891, 2895, 2903, 
     7389     2926, 2928, 2935, 2961, 2981, 2958, 2984, 2978, 3004, 3011, 
     7390     3027, 3052, 3048, 3059, 3085, 3068, 3105, 3111,  196,  203, 
     7391      976,  383,  974,  988, 1018, 1014, 1025, 1029, 1042,  253, 
     7392     3174, 3200, 3226, 1067, 1182, 1172, 3252,    0,  418,  288, 
     7393     1096, 3228, 3229, 3231, 3251, 3267, 3287, 3290, 1188, 1566, 
     7394      973,  740, 9159,  938,  866, 9159, 1268, 1178,  931, 1170, 
     7395     1241, 1299, 3354, 3381,    0,  903, 3408, 1148, 1116, 1177, 
     7396     1322, 1145,  410, 1415, 1235,  460, 1292, 1218, 1323, 1022, 
     7397 
     7398      963, 1520, 1662, 3418, 3430, 3440, 3450, 3460, 3470,  889, 
     7399     9159,  865, 9159, 9159, 9159, 9159, 9159, 1239,  853, 9159, 
     7400      846, 2472, 3480, 3490, 3500, 3510, 3520, 3530, 3545, 3555, 
     7401     3575, 9159, 3289, 3553, 3573, 3551, 3574, 3590, 3596, 3612, 
     7402     3628, 3634, 3635, 3655, 3671, 3651, 3687, 3688, 3696,  459, 
     7403     3728, 3736, 3740, 3784, 3868, 9159, 3780, 3776, 3807, 3811, 
     7404     3850, 3912, 3872, 3920, 3921, 1351, 9159, 3828, 4005, 4060, 
     7405     4095, 3904, 4063, 4069, 1258, 4096, 4104, 4126, 4134, 4156, 
     7406     4165, 4196, 4205, 1409, 9159, 4208, 4197, 1476, 9159, 4235, 
     7407     4241, 4257, 4261, 4273, 4284, 4293, 4305, 4309, 4332, 4336, 
     7408 
     7409     4353, 4316, 4359, 4362, 4384, 4407, 4385, 4416, 4423, 4448, 
     7410     4455, 4456, 4486, 4494, 4488, 4511, 4527, 4519, 4531, 4554, 
     7411     1498, 9159, 4552, 4575, 4584, 4587, 4607, 4610,  493,  529, 
     7412      551,  476, 1287,  816,  953, 1119, 1293,  841, 4678, 4704, 
     7413     4730, 1607, 1346, 1458, 4756, 1362, 1397, 4733, 4732, 4759, 
     7414     4627, 4768, 4817,  733, 1619, 1594, 1406,  728, 1537, 9159, 
     7415     1571, 1651, 1625, 1613, 4839, 4867, 4894, 1627, 1658, 1686, 
     7416     1714, 1394,    0, 1756, 1574,    0, 1668,  724, 1709,  724, 
     7417     1763, 1775, 9159, 9159,  708, 9159, 9159, 4904, 4916, 4926, 
     7418     4936, 4771, 4931, 5013, 4934, 5068, 5069, 5071, 5075, 5072, 
     7419 
     7420     5120, 5121, 5123, 1725, 5127, 5153, 5176, 1832, 5175, 5179, 
     7421     1458, 1493, 1739, 1516, 1519, 1873, 1592, 1739, 5201, 5224, 
     7422     5202, 5241, 5240, 5257, 5278, 5280, 5301, 5284, 5352, 9159, 
     7423     5351, 5346, 5349, 5353, 1802, 9159, 5355, 5385, 5401, 9159, 
     7424     5405, 5408, 5412, 5428, 5449, 5451, 5458, 5460, 5495, 5501, 
     7425     5531, 5527, 5539, 5571, 5564, 5575, 5591, 5602, 5623, 5614, 
     7426     5634, 5635, 5660,  693, 5666, 5667, 5692, 5703, 5715, 9159, 
     7427     5723, 5719, 5740, 5746,  846, 1103, 1234, 1788, 1768, 1386, 
     7428     1788, 1615, 1847, 1854,  236,  590, 1781, 1913,  715, 5809, 
     7429     1790, 1645, 2264, 9159, 5785, 5805, 1690, 5806, 5807, 2344, 
     7430 
     7431     9159, 1951, 1858, 1924, 2256,  679, 1930, 1879, 5870, 5880, 
     7432     5907, 5917, 1811,  658, 5946,  624,    0, 9159, 6034,    0, 
     7433        0,  613,  609, 9159,  604,  586, 2245, 2364, 2389, 9159, 
     7434     9159, 6063, 6118, 6139, 6138, 6134, 6135, 6141, 6161, 6173, 
     7435     6184, 6209, 6217, 1654, 6260, 6248, 6216, 1844, 1864, 6239, 
     7436     6280, 9159, 1689, 9159, 1930, 1750, 1763, 1934, 1933, 2077, 
     7437     6300, 6292, 6317, 6337, 6338, 6344, 6369, 6376, 2212, 9159, 
     7438     6360, 6413, 6392, 6412, 6424, 6433, 6456, 6435, 6465, 6476, 
     7439     6488, 6497, 6508, 6509, 6552, 6529, 6540, 6549, 6560, 6585, 
     7440     6593, 6605, 6628, 2392, 6636, 6637, 6648, 6659, 6694, 6685, 
     7441 
     7442     6686, 6775, 2286,  518, 2092, 2103, 1938, 2148, 2420, 2303, 
     7443      472,  442, 2196,    0, 1803, 6692, 6717, 6768, 6756, 2424, 
     7444     2334,  426,  422, 2432,  378, 1883, 6858, 6945, 6974,  337, 
     7445     9159, 1922, 9159,    0,  328, 9159,  314, 2481, 2510, 9159, 
     7446     6929, 6757, 7029, 7031, 7037, 7040, 7033, 7077, 7070, 7086, 
     7447     2264, 2842, 7093, 7097, 7118, 9159, 2372, 7129, 2384, 2060, 
     7448     2411, 2418, 2078, 2421, 2139, 7138, 7149, 7170, 7179, 7195, 
     7449     7201, 7227, 7234, 7236, 2483, 3160, 7259, 7257, 7279, 7280, 
     7450     7282, 7302, 7318, 2564, 7325, 7319, 7345, 7356, 7377, 7357, 
     7451     7368, 7388, 2513, 2467, 7400, 2603, 7389, 7425, 2468, 2371, 
     7452 
     7453     2235, 2479,  361,  296,  182, 7409, 7432, 2249, 7455,  622, 
     7454     2529,  227, 1008, 7505,    0,  207, 7482, 7503, 7505, 7514, 
     7455     7535, 7536, 7544, 9159, 2413, 2526, 7567, 7571, 2546, 7593, 
     7456     2547, 2562, 2567, 2526, 2575, 9159, 2526, 7587, 7625, 7594, 
     7457     7631, 7632, 7648, 7657, 7668, 3179, 3203, 2672, 3229, 3335, 
     7458     7684, 7688, 7709, 2597, 7705, 7725, 7732, 7736,  178, 7758, 
     7459     2596, 7775, 7769, 2619, 2617, 2641, 2696, 2668, 7795, 7801, 
     7460     7807, 2677, 2720, 3150, 7827, 7818, 7834, 7867, 7850, 2625, 
     7461     2685, 7870, 7890, 2688, 7859, 2699, 2731, 2741, 2661, 2665, 
     7462     9159, 7911, 7907, 7910, 7927, 7933, 7963, 2822, 3360, 3384, 
     7463 
     7464     3411, 4103, 4220, 7959, 2702, 7970, 7966, 2741, 7986, 2738, 
     7465     8003, 8019, 2758, 9159, 2765, 2781, 2809, 2818, 8030, 8026, 
     7466     2900, 2883, 2903, 2951, 8042, 8051, 2820, 2829, 8063, 8086, 
     7467     9159, 2838, 9159, 2846, 9159, 2846, 8088, 8090, 8113, 8134, 
     7468     3067, 4430, 2880, 8136,  175, 2911, 8125, 8156, 2877, 9159, 
     7469     1190, 2938, 2908, 8157, 3034, 3081, 3049, 3028, 8173, 2959, 
     7470     2985, 8189, 8182, 3029, 9159, 3039, 8205, 8212, 8214, 3241, 
     7471     4684, 3056, 8235, 3049, 9159, 3056, 3212, 3072,    0, 8237, 
     7472     1210, 3169, 3157,  144, 3103, 3103, 8257, 8260, 9159, 3110, 
     7473     8283, 3255, 4708, 3110, 8290,  123, 9159, 3235, 3207, 3329, 
     7474 
     7475     3387, 3558, 3232, 3256, 8306, 8313, 3278, 8315, 8396, 4870, 
     7476     3259, 8391, 3280, 3664,    0, 3349, 3414, 9159,  103, 9159, 
     7477     3346, 8392, 9159, 3745, 4900, 8473, 3347, 8450,   90, 1237, 
     7478     1328, 3570, 8470, 4973, 4977, 3380, 8471, 9159, 3676, 3645, 
     7479     9159, 9159, 3693, 3608, 3764, 3684, 3616, 1433, 3705, 3782, 
     7480     3810, 3774, 3875, 9159, 3852, 3697, 3910, 3892, 3896, 9159, 
     7481     9159, 8553, 8565, 8577, 8589, 8601, 8613, 8621, 8623, 8635, 
     7482     8647, 8659, 8671, 8678, 8687, 8699, 8711, 8723, 8735, 8747, 
     7483     8754, 8762, 8774, 8786, 8798, 8810, 8822, 8834, 8846, 8858, 
     7484     8870, 8882, 8894, 8906, 8918, 8930, 8942, 8954, 8966, 8978, 
     7485 
     7486     8990, 9002, 9014, 9026, 9038, 9050, 9062, 9074, 9086, 9098, 
     7487     9110, 9122, 9134, 9146 
    102217488    } ; 
    102227489 
    10223 static yyconst short int yy_def[1180] = 
     7490static yyconst flex_int16_t yy_def[1215] = 
    102247491    {   0, 
    10225      1123,    1, 1124, 1124,    1,    2, 1125, 1125,    1,    2, 
    10226         1,    2, 1123, 1123, 1123, 1123, 1123, 1126, 1127, 1123, 
    10227      1123, 1128, 1129, 1123, 1123, 1123, 1123, 1123, 1130, 1123, 
    10228      1123, 1123, 1123, 1131, 1131,   35,   35,   35,   35,   38, 
    10229        38,   38,   38,   38,   38,   38,   38,   38,   38,   37, 
    10230        37, 1123, 1123, 1123, 1132, 1133,   37,   38,   38,   37, 
    10231        38, 1123, 1134, 1123, 1134, 1135, 1123, 1123, 1123, 1123, 
    10232      1123, 1123, 1123, 1126, 1126, 1126, 1127, 1123, 1127, 1127, 
    10233      1128, 1123, 1128, 1128, 1129, 1136, 1129, 1123, 1129, 1129, 
    10234      1123, 1123, 1123, 1137, 1123, 1123, 1123, 1123, 1123, 1123, 
    10235  
    10236      1123, 1123, 1138, 1130, 1123, 1123,   38,   38,   38,   38, 
    10237        38,   38,   35,   38,   38,  115,  115,  115,  115,  115, 
    10238       115,  115,  115, 1131,  115,  115,  115,  115,  115,  115, 
    10239       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10240       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10241       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10242       115,  115,  115,  115, 1123, 1123, 1139, 1123, 1123, 1123, 
    10243      1123, 1123, 1123, 1123, 1123, 1123, 1140, 1132, 1123, 1132, 
    10244      1132, 1132, 1140, 1141, 1142,  115,  115,  115,  115,  115, 
    10245       115, 1134, 1123, 1134, 1143, 1143, 1123, 1143, 1143, 1143, 
    10246  
    10247      1144, 1143, 1123,  203,  203,  203,  203,  203, 1123, 1123, 
    10248      1123, 1126, 1126, 1127, 1127, 1128, 1128, 1136, 1136, 1136, 
    10249      1136, 1123, 1129, 1129, 1145, 1146, 1147, 1123, 1123, 1123, 
    10250      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1148, 1149, 
    10251      1150, 1151, 1152, 1153,  115,  115,  115,  115,  115,  115, 
    10252       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10253       115, 1154,  124,  115,  115,  115,  115,  115,  115,  115, 
    10254       115,  115,  115,  115,  115,  115,  115, 1123,  115, 1123, 
    10255      1123,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10256       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10257  
    10258       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10259       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10260       115,  115,  115, 1123, 1123, 1123, 1123, 1139, 1123, 1123, 
    10261      1123, 1123, 1123, 1123, 1123, 1155, 1155, 1132, 1132, 1132, 
    10262      1156, 1142, 1142, 1142, 1142,  115,  115,  115,  115,  115, 
    10263       115, 1134, 1143, 1143, 1123, 1143, 1143, 1144, 1144, 1144, 
    10264      1144, 1143, 1143,  203,  203, 1143,  203,  203,  203,  203, 
    10265      1123, 1123, 1123, 1126, 1126, 1127, 1127, 1128, 1128, 1136, 
    10266      1129, 1129, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10267      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10268  
    10269      1148, 1123, 1123, 1123, 1123, 1123, 1123, 1157, 1153, 1158, 
    10270       115,  115, 1123,  115,  115,  115,  115,  115,  115,  115, 
    10271       115,  115,  115,  115,  115,  115,  115,  115, 1123,  115, 
    10272       115,  115,  115, 1123, 1123,  115,  115,  115,  115,  115, 
    10273       115,  115,  115,  115, 1123, 1123,  115, 1123,  115,  115, 
    10274       115,  115,  115, 1123,  115,  115,  115,  115,  115,  115, 
    10275       115,  115, 1123, 1123,  115,  115, 1123, 1123,  115,  115, 
    10276       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10277       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10278       115,  115,  115,  115,  115,  115,  115,  115, 1123, 1123, 
    10279  
    10280       115,  115,  115,  115,  115,  115, 1123, 1123, 1123, 1123, 
    10281      1123, 1123, 1123, 1123, 1123, 1123, 1159, 1159, 1132, 1132, 
    10282      1132, 1160, 1142, 1142,  115,  115,  115,  115,  115, 1123, 
    10283      1134, 1143, 1143, 1144, 1144, 1143, 1143, 1143,  203,  203, 
    10284       203,  203, 1123, 1161, 1123, 1126, 1162, 1127, 1163, 1128, 
    10285      1164, 1129, 1165, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10286      1123, 1123,  115, 1123,  115,  115,  115,  115,  115,  115, 
    10287       115,  115,  115,  115, 1123,  115,  115,  115, 1123,  115, 
    10288       115, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123,  115, 
    10289       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10290  
    10291       115, 1123, 1123,  115,  115,  115, 1123, 1123,  115,  115, 
    10292       115, 1123,  115,  115,  115,  115,  115,  115,  115,  115, 
    10293       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10294       115,  115,  115,  115,  115, 1123,  115,  115,  115,  115, 
    10295       115, 1123,  115,  115,  115,  115, 1123, 1123, 1123, 1123, 
    10296      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1132, 1132, 1166, 
    10297      1167, 1142, 1168, 1123, 1123,  115,  115, 1123,  115, 1123, 
    10298      1123, 1123, 1134, 1143, 1169, 1144, 1170, 1143, 1143, 1143, 
    10299      1143,  203,  203, 1123,  203, 1171, 1123, 1123, 1172, 1126, 
    10300      1173, 1127, 1123, 1174, 1128, 1175, 1129, 1129, 1123, 1123, 
    10301  
    10302      1123, 1123,  115,  115,  115,  115,  115,  115,  115,  115, 
    10303       115,  115, 1123,  115,  115,  115, 1123, 1123,  115,  115, 
    10304      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10305       115,  115,  115,  115,  115,  115,  115,  115,  115, 1123, 
    10306      1123,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10307       115,  115,  115,  115,  115,  115,  115,  115,  115,  115, 
    10308       115,  115,  115,  115, 1123,  115,  115,  115,  115,  115, 
    10309       115,  115, 1123, 1123, 1123, 1123, 1123, 1123,  655, 1132, 
    10310      1176, 1132, 1142, 1168, 1168,  115,  115,  115, 1134, 1177, 
    10311      1143, 1144, 1170, 1170, 1123, 1143,  203,  203, 1123, 1123, 
    10312  
    10313      1126, 1127, 1123, 1128, 1129, 1129, 1123, 1123,  115,  115, 
    10314       115,  115,  115,  115,  115,  115,  115, 1123, 1123,  115, 
    10315       115,  115, 1123, 1123,  115, 1123, 1123, 1123, 1123, 1123, 
    10316      1123, 1123, 1123,  115,  115,  115,  115,  115,  115,  115, 
    10317       115,  115,  115, 1123, 1178,  115,  115,  115,  115,  115, 
    10318       115,  115,  115, 1123,  115,  115,  115,  115,  115,  115, 
    10319       115, 1123, 1123,  115, 1123,  115,  115, 1123, 1123, 1123, 
    10320      1132, 1132, 1142,  115,  115, 1123, 1134, 1143, 1144, 1143, 
    10321       203,  203,  115,  115,  115,  115,  115,  115,  115, 1123, 
    10322      1123, 1123,  115,  115, 1123,  115, 1123, 1123, 1123, 1123, 
    10323  
    10324      1123, 1123, 1123, 1123,  115,  115,  115,  115,  115,  115, 
    10325       115,  115,  115, 1178, 1123, 1179, 1178,  115,  115,  115, 
    10326       115, 1123,  115,  115,  115,  115, 1123,  115, 1123,  115, 
    10327       115, 1123, 1123, 1132, 1142,  115,  115, 1134, 1144,  115, 
    10328       115,  115,  115,  115, 1123, 1123,  115,  115, 1123,  115, 
    10329      1123, 1123, 1123, 1123, 1123, 1123, 1123,  115,  115,  115, 
    10330       115,  115,  115,  115, 1123, 1179, 1178, 1179, 1179,  115, 
    10331       115, 1123,  115,  115, 1123,  115, 1123,  115,  115, 1123, 
    10332      1123, 1132, 1142, 1142,  115, 1134, 1144, 1144,  115,  115, 
    10333      1123, 1123,  115,  115, 1123, 1123, 1123, 1123, 1123, 1123, 
    10334  
    10335      1123,  115,  115,  115,  115,  115, 1123, 1178, 1123,  115, 
    10336      1123, 1123,  115,  115, 1123, 1132, 1142, 1142,  115, 1134, 
    10337      1144, 1144,  115, 1123, 1123,  115,  115, 1123, 1123, 1123, 
    10338      1123,  115,  115,  115,  115, 1123, 1178, 1123,  115, 1123, 
    10339      1123, 1123, 1132, 1142, 1142,  115, 1134, 1144, 1144, 1123, 
    10340      1123,  115,  115, 1123, 1123, 1123,  115,  115, 1123, 1178, 
    10341      1123,  115, 1123, 1123, 1132, 1142, 1134, 1144, 1123, 1123, 
    10342       115,  115, 1123, 1123,  115, 1123, 1178, 1123,  115, 1123, 
    10343      1132, 1142, 1134, 1144, 1123, 1123,  115, 1123, 1178, 1178, 
    10344      1123,  115, 1123, 1132, 1134, 1123,  115, 1178, 1179, 1123, 
    10345  
    10346       115, 1123, 1132, 1134, 1123, 1123, 1132, 1134, 1132, 1134, 
    10347      1132, 1134, 1132, 1134, 1132, 1134, 1123, 1134, 1134, 1134, 
    10348      1134, 1123,    0, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10349      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10350      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10351      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10352      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10353      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123 
     7492     1161,    1, 1162, 1162,    1,    2, 1163, 1163,    1,    2, 
     7493        1,    2, 1161, 1161, 1161, 1161, 1161, 1164, 1165, 1161, 
     7494     1161, 1166, 1167, 1161, 1161, 1161, 1161, 1161, 1161, 1168, 
     7495     1161, 1161, 1161, 1161, 1169, 1169,   36,   36,   36,   36, 
     7496       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7497       36,   36, 1161, 1161,   53, 1170, 1161,   36,   36,   36, 
     7498       36,   36,   36, 1161, 1171, 1161, 1171, 1171, 1171, 1161, 
     7499     1161, 1172, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7500     1164, 1164, 1164, 1165, 1161, 1165, 1165, 1166, 1161, 1166, 
     7501     1166, 1167, 1173, 1167, 1161, 1167, 1167, 1161, 1161, 1161, 
     7502 
     7503     1174, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1175, 
     7504     1161, 1161, 1161,   36,   36,   36,   36,   36,   36,   36, 
     7505       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7506     1169,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7507       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7508       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7509       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7510       36,   36,   53,  173, 1176, 1161, 1161, 1161, 1161, 1161, 
     7511     1161, 1161,  173, 1161,  173, 1161, 1170, 1161, 1170, 1170, 
     7512     1170, 1161, 1161, 1177,   36,   36,   36,   36,   36,   36, 
     7513 
     7514       36, 1171, 1161, 1171, 1171, 1171, 1171, 1178, 1179, 1179, 
     7515     1161, 1179, 1179, 1179, 1180, 1179, 1161,  217,  217,  217, 
     7516      217,  217, 1161, 1161, 1161, 1164, 1164, 1165, 1165, 1166, 
     7517     1166, 1173, 1173, 1173, 1173, 1161, 1167, 1167, 1161, 1161, 
     7518     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7519     1161, 1161, 1181, 1161, 1161, 1161, 1161, 1161,   36,   36, 
     7520       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7521       36,   36,   36,   36,   36, 1182,  131,   36,   36,   36, 
     7522       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7523       36, 1161,   36, 1161, 1161,   36,   36,   36,   36,   36, 
     7524 
     7525       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7526       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7527       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7528       36,   36,   36,   36,   36,   36,   36,   36,  173,  173, 
     7529     1161,  173, 1176, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7530      185, 1161, 1161, 1170, 1170, 1170, 1161, 1177, 1177, 1177, 
     7531     1177,   36,   36,   36,   36,   36,   36,   36, 1171, 1171, 
     7532     1183, 1183, 1161, 1179, 1179, 1161, 1179, 1179, 1180, 1180, 
     7533     1180, 1180, 1179, 1179,  217,  217, 1179,  217,  217,  217, 
     7534      217, 1161, 1161, 1161, 1164, 1164, 1165, 1165, 1166, 1166, 
     7535 
     7536     1173, 1167, 1167, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7537     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7538     1161, 1181, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7539     1161, 1161,   36,   36,   36,   36,   36,   36,   36,   36, 
     7540       36,   36,   36,   36,   36,   36,   36,   36,   36, 1161, 
     7541       36,   36,   36,   36, 1161, 1161,   36,   36,   36,   36, 
     7542       36,   36,   36,   36,   36, 1161, 1161,   36, 1161,   36, 
     7543       36,   36,   36,   36, 1161,   36,   36,   36,   36,   36, 
     7544       36,   36,   36, 1161, 1161,   36,   36, 1161, 1161,   36, 
     7545       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7546 
     7547       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7548       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7549     1161, 1161,   36,   36,   36,   36,   36,   36,  173,  173, 
     7550      173, 1161, 1161, 1161, 1161, 1161, 1161, 1161,  185, 1161, 
     7551     1161, 1170, 1170, 1170, 1161, 1177, 1177,   36,   36,   36, 
     7552       36,   36,   36, 1161, 1171, 1171, 1171, 1183, 1183, 1161, 
     7553     1179, 1179, 1180, 1180, 1179, 1179, 1179,  217,  217,  217, 
     7554      217, 1161, 1184, 1161, 1164, 1185, 1165, 1186, 1187, 1188, 
     7555     1189, 1190, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7556     1161,   36,   36, 1161,   36,   36,   36,   36,   36,   36, 
     7557 
     7558       36,   36,   36, 1161,   36,   36,   36, 1161,   36,   36, 
     7559     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161,   36,   36, 
     7560       36,   36,   36,   36,   36,   36,   36,   36,   36, 1161, 
     7561     1161,   36,   36,   36, 1161, 1161,   36,   36,   36, 1161, 
     7562       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7563       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7564       36,   36,   36, 1161,   36,   36,   36,   36,   36, 1161, 
     7565       36,   36,   36,   36,  173,  173,  173, 1161, 1161, 1161, 
     7566     1161, 1161, 1161,  173, 1161, 1161, 1170, 1170, 1191, 1161, 
     7567     1177, 1192, 1161, 1161,   36,   36, 1161,   36,   36, 1161, 
     7568 
     7569     1161, 1161, 1171, 1171, 1179, 1193, 1180, 1194, 1179, 1179, 
     7570     1179, 1179,  217,  217, 1161,  217, 1195, 1161, 1161, 1196, 
     7571     1197, 1198, 1199, 1161, 1200, 1201, 1202, 1203, 1203, 1161, 
     7572     1161, 1161,   36, 1161,   36,   36,   36,   36,   36,   36, 
     7573       36,   36,   36, 1161,   36,   36,   36, 1161, 1161,   36, 
     7574       36, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7575       36,   36,   36,   36,   36,   36,   36,   36, 1161, 1161, 
     7576       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7577       36,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7578       36,   36,   36, 1161,   36,   36,   36,   36,   36,   36, 
     7579 
     7580       36, 1161,  802,  802, 1161, 1161, 1161, 1161,  802, 1204, 
     7581     1205, 1204, 1206, 1207, 1207,   36,   36,   36,   36, 1208, 
     7582     1208, 1209, 1210, 1211, 1212, 1212, 1161, 1210, 1161,  829, 
     7583     1161, 1161, 1161, 1197, 1199, 1161, 1201, 1203, 1203, 1161, 
     7584     1161,   36,   36,   36,   36,   36,   36,   36,   36,   36, 
     7585     1161, 1161,   36,   36,   36, 1161, 1161,   36, 1161, 1161, 
     7586     1161, 1161, 1161, 1161, 1161,   36,   36,   36,   36,   36, 
     7587       36,   36,   36,   36, 1161, 1213,   36,   36,   36,   36, 
     7588       36,   36,   36, 1161,   36,   36,   36,   36,   36,   36, 
     7589       36,   36, 1161, 1161,   36, 1161,   36,   36, 1161, 1161, 
     7590 
     7591     1161, 1161, 1204, 1204, 1206,   36,   36, 1161,   36, 1208, 
     7592     1208, 1210, 1211, 1210,  829,  829,   36,   36,   36,   36, 
     7593       36,   36,   36, 1161, 1161, 1161,   36,   36, 1161,   36, 
     7594     1161, 1161, 1161, 1161, 1161, 1161, 1161,   36,   36,   36, 
     7595       36,   36,   36,   36,   36, 1213, 1213, 1161, 1214, 1213, 
     7596       36,   36,   36, 1161,   36,   36,   36,   36, 1161,   36, 
     7597     1161,   36,   36, 1161, 1161, 1161, 1204, 1206,   36,   36, 
     7598       36, 1208, 1208, 1211,   36,   36,   36,   36,   36, 1161, 
     7599     1161,   36,   36, 1161,   36, 1161, 1161, 1161, 1161, 1161, 
     7600     1161,   36,   36,   36,   36,   36,   36, 1161, 1214, 1214, 
     7601 
     7602     1213, 1214, 1214,   36, 1161,   36,   36, 1161,   36, 1161, 
     7603       36,   36, 1161, 1161, 1161, 1204, 1206, 1206,   36,   36, 
     7604     1208, 1208, 1211, 1211,   36,   36, 1161, 1161,   36,   36, 
     7605     1161, 1161, 1161, 1161, 1161, 1161,   36,   36,   36,   36, 
     7606     1161, 1213, 1161,   36, 1161, 1161,   36,   36, 1161, 1161, 
     7607     1204, 1206, 1206,   36, 1208, 1208, 1211, 1211,   36, 1161, 
     7608     1161,   36,   36, 1161, 1161, 1161,   36,   36,   36, 1161, 
     7609     1213, 1161,   36, 1161, 1161, 1161, 1204, 1206, 1206,   36, 
     7610     1208, 1208, 1211, 1211, 1161, 1161,   36,   36, 1161, 1161, 
     7611       36, 1161, 1213, 1161,   36, 1161, 1161, 1204, 1206, 1208, 
     7612 
     7613     1208, 1211, 1161, 1161,   36,   36, 1161,   36, 1161, 1213, 
     7614     1161,   36, 1161, 1204, 1206, 1208, 1208, 1161, 1211, 1161, 
     7615     1161,   36, 1161, 1161, 1213, 1213, 1161,   36, 1161, 1204, 
     7616     1208, 1161,   36, 1213, 1214, 1161,   36, 1161, 1204, 1208, 
     7617     1161, 1161, 1204, 1208, 1204, 1208, 1204, 1208, 1204, 1208, 
     7618     1204, 1208, 1204, 1161, 1208, 1208, 1208, 1208, 1208, 1161, 
     7619        0, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7620     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7621     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7622     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7623 
     7624     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     7625     1161, 1161, 1161, 1161 
    103547626    } ; 
    103557627 
    10356 static yyconst short int yy_nxt[4253] = 
     7628static yyconst flex_int16_t yy_nxt[9249] = 
    103577629    {   0, 
    103587630       14,   15,   16,   17,   18,   19,   14,   20,   21,   22, 
    10359        23,   24,   21,   25,   21,   26,   21,   27,   28,   29, 
    10360        29,   29,   29,   29,   29,   29,   29,   29,   21,   30, 
    10361        31,   32,   33,   21,   21,   34,   35,   36,   37,   38, 
    10362        39,   40,   41,   34,   42,   34,   34,   43,   44,   45, 
    10363        46,   47,   34,   48,   49,   50,   34,   34,   51,   34, 
    10364        34,   34,   14,   52,   53,   54,   55,   64,   66,   65, 
    10365        70,   72,   71,   72,   82,   71,   68,   73,   75,   92, 
    10366        78,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    10367        69,   68,   76,   67,   68,   86,   91,   68,  103,  102, 
    10368  
    10369        57,   58,   87,   88,   59,   69,   68,   68,   69,   68, 
    10370        68,   69,   68,   83,  193,   68,   79,   60,   61,   68, 
    10371        69,   69,   68,   69,   69,  210,   69,   84,   68,   69, 
    10372        80,  105,  333,   69,   89,   72,   69,   72,   78,   70, 
    10373        68,   71,   69,  108,  116,  108,  108,  131,   90,   93, 
    10374       132,   93,   78,  133,   69,  108,  185,  108,   82,  134, 
    10375       193, 1020,  108,  110,   71,  194,   71,   94,   94,   94, 
    10376        94,   94,   94,   94,   94,   94,  211,  108,  211, 1122, 
    10377        71,  108,   73,  214,   95,  186,  215,  135,   96,   68, 
    10378        97,  108,  108,  136,   82,   98,  108,   99,  100,  187, 
    10379  
    10380       137,  138,  108,   69,  366,  254,  108,  101,  106,  217, 
    10381       107,  107,  107,  107,  107,  107,  107,  107,  107,  117, 
    10382       108,  108,  108,  225,  226,  108,  118,  179,  216,  108, 
    10383       119,  108,  109,  120,   86,  139,  227,  108,  110,  108, 
    10384       369,   87,   88,  121,  230,  255,  110,  106,  108,  107, 
    10385       107,  107,  107,  107,  107,  107,  107,  107,  232,  231, 
    10386       153,  338,  108,  108,  108,  122,  234,  111,  112,  123, 
    10387       108,  109,  108,  233,  108,  124,  235,  113,  108,  125, 
    10388       110,  108,  108, 1117,  114,  115,  140,  366,  366,  253, 
    10389       108,  126,  396,  127,  141,  108,  128,  129,  108,  110, 
    10390  
    10391       142,  143,  108,  130,  108,  108,  108,  367,  370,  144, 
    10392       108,  146,  108,  147,  108,  145,  108,  149,  148,  108, 
    10393       108,  108,  154,  179,  191,  108,  155,  397,  180,  179, 
    10394       156,  150,  160,  314,  151,  108,  108,  152,  157,  161, 
    10395       108,  158,  159,  108,  108,  193,  108,  315,  260,  162, 
    10396       108,  163,  329,  183,  108,  108,  108,  189,  108,  168, 
    10397       135,  164,  181,  339,  108,  108,  330,  103,  108,  165, 
    10398       243,  166,  167,  160,  243,  103,  182,  168,   86,  352, 
    10399       161,  196,  197,  196,  108,   87,   88,  108, 1106,  390, 
    10400       162,   68,  168,  198,  219,  220,  219,  190,  168, 1123, 
    10401  
    10402        82,  108,  221,  222,   86,   69,  169,  170,   86,   68, 
    10403       171,   87,   88, 1123,  108,   87,   88,  108,  270,  252, 
    10404       108,  199,  259,  172,  173,  174,  175,  176,  167,  391, 
    10405       337,  108,  267,  168,  108,  200,  168,  108,  223,  108, 
    10406       108,  366,  268,  177,  177,  177,  177,  177,  177,  177, 
    10407       177,  177,  256,  257,  379, 1105,  108,  108,  258,  224, 
    10408       108,  108,  169,  170,  683,   68,  171,  243,  243,  243, 
    10409       243,  243,  243,  243,  243,  243,  282,  276,  108,  172, 
    10410       173,  195,  196,  197,  196,  195,  195,  195,  201,  195, 
    10411       195,  195,  195,  195,  195,  195,  195,  195,  202,  195, 
    10412  
    10413       203,  203,  203,  203,  203,  203,  203,  203,  203,  195, 
    10414       195,  195,  195,  195,  195,  195,  204,  186,  204,  204, 
    10415       204,  204,  205,  204,  118,  204,  204,  204,  206,  204, 
    10416       204,  187,  204,  204,  204,  204,  207,  204,  204,  204, 
    10417       204,  208,  204,  195,   93,  179,   93,  108,  108,  244, 
    10418       245,  108,   78,  108,  108,  108,   78,  108,  108,  179, 
    10419       108,  108,  108,   82,  108,  261,  197, 1102,  108,  108, 
    10420       108,  266,  108,  108,  108,  108,  108,  108,  108,   95, 
    10421       108,  108,  108,   96,  108,   97,  108,  108,  247,  108, 
    10422        98,  549,   99,  100,  376,  275,  340,  108,  108,  519, 
    10423  
    10424       269,  108,  101,  239,  239,  239,  239,  239,  239,  239, 
    10425       239,  239,  108,  108,  277,  550,  108,  357,  108,   82, 
    10426       108,  303,  108,  240,  241,  246,  108,  108,  108,  108, 
    10427       108,  108,  108,  108,  108,  337,  242,  108,  248,  108, 
    10428       249,  168,  108,  108,  274,  108,  108,  108,  108,  250, 
    10429       108,  291,  278,  251,  278,  108,  108,  108,  108,  108, 
    10430       108,  108,  108,  337,  378,  179,  108,  108,  287,  168, 
    10431       246,  108,  108,  262,  271,  262,  366,  103,  366,  108, 
    10432       280,  272,  280,  108,  108,  273,  108,  108,  283,  106, 
    10433       281,  263,  263,  263,  263,  263,  263,  263,  263,  263, 
    10434  
    10435       284,  108,  285,  108,  108,  286,  279,  288,  108,  108, 
    10436       108,  368,  290,  540,  366,  245,  108,  659,  518,  108, 
    10437       108,  289,  108,  292,  168,  108,  108,  108,  264,  293, 
    10438       265,  294,  108,  108,  108,  108,  313,  108,  295,  108, 
    10439       108,  297,  108,  304,  539,  305,  108,  108,  300, 1100, 
    10440       301,  108,  298,  296,  244,  299,  302,  108,  310,  108, 
    10441       108,  306,  307,  108,  108,  308,  108,  309,  108,  316, 
    10442       108,  108,  311,  108,  320,  354,  355,  354,  108,  312, 
    10443       317,  321,  322,  108,  318,  108,  108,  108,  319,  324, 
    10444       108,  325,  167,  108,  323,  108,  327,  168,  325,  167, 
    10445  
    10446       108,  108,  193,  108,  168,  343,  108,  343,  327,   78, 
    10447       325,  167,  253,  373,  349,  373,  168,  108,  108,  346, 
    10448        78,  108,  197,  108,  108,  348,  169,  170,  351,  383, 
    10449       171,  383,  366,  169,  170,  108,  350,  171,  108,  179, 
    10450       344,  108,  531,  326,  173,  169,  170,  256,  347,  171, 
    10451       326,  173,  108,  258,  345,  691,  356,  359,  197,  359, 
    10452       377,  220,  326,  173,  327,  175,  335,  167,  380,  222, 
    10453       220,  541,  168,   86,  385,  197,  385,  380,  222, 1096, 
    10454        87,   88,  336,  336,  336,  336,  336,  336,  336,  336, 
    10455       336,   86,  360,  521,  197,  219,  220,  219,   87,   88, 
    10456  
    10457       108,  169,  170,  221,  222,  171,  361,  219,  220,  219, 
    10458       387,  411,  387,  225,  226,  221,  222,  108,  326,  173, 
    10459       197,  402,  404,  402,  404,  518,  227,  382,  406,  533, 
    10460       406,  168,  343,  545,  343,  545,  381,  362,  362,  362, 
    10461       362,  362,  362,  362,  362,  362,  353,  353,  197,  353, 
    10462       353,  353,  353,  353,  353,  353,  353,  353,  353,  353, 
    10463       353,  353,  353,  363,  353,  364,  364,  364,  364,  364, 
    10464       364,  364,  364,  364,  353,  353,  353,  353,  353,  353, 
    10465       353,  365,  365,  365,  365,  365,  365,  365,  365,  365, 
    10466       365,  365,  365,  365,  365,  365,  365,  365,  365,  365, 
    10467  
    10468       365,  365,  365,  365,  365,  365,  365,  365,  353,  108, 
    10469       413,  108,  657,  108,  280,  366,  280,  108,  168,  108, 
    10470       108, 1093,  108,  108,  281,  415,  108,  418,  108,  412, 
    10471       108,  414,  416,  417,  108,  108,  108,  108,  108,  420, 
    10472       108,  421,  108,  108,  108,  542,  108,  108, 1091,  419, 
    10473       428,  425,  108,  432,  422,  108,  108,  423,  426,  108, 
    10474       108,  108,  424,  108,  108,  108,  430,  427,  108,  108, 
    10475       108,  108,  108,  108,  451,  431,  433,  444,  108,  445, 
    10476       366,  445,  108,  108, 1088,  108,  108,  449,  108,  108, 
    10477       434,  108,  434,  108,  108,  108,  447,  448,  450,  108, 
    10478  
    10479       108,  453,  278,  684,  278,  452,  108,  108, 1086,  446, 
    10480       108,  108,  108, 1085,  108,  108,  108,  456,  108,  108, 
    10481       435,  455,  179,  108,  108,  108,  457, 1082,  436,  108, 
    10482       437,  108,  108,  438,  197,  108,  108,  439,  458,  459, 
    10483       440,  108,  108,  441,  442,  460,  108,  443,  108,  463, 
    10484       467,  463,  467,  108,  462,  108,  454,  472,  461,  464, 
    10485       468,  478,  108,  108,  108,  108,  474,  520,  471,  108, 
    10486       108, 1080,  108,  108,  473,  108,  108,  108,  108,  108, 
    10487       535,  108,  476,  477,  108,  108,  108,  108,  475,  480, 
    10488       108,  479,  108,  108,  498,  465,  469,  108,  108,  108, 
    10489  
    10490       481,  108,  108,  483,  108,  466,  470,  108,  482,  484, 
    10491       485,  108,  108,  108,  108,  108,  108, 1078,  486,  487, 
    10492       108,  490,  108,  108,  108,  108,  491,  492,  108,  108, 
    10493       108,  488,  489,  493,  108,  108,   78,  108,  108,  108, 
    10494       108,  494,  108,  108,  495,  108,  499,  108,  499,  108, 
    10495       501,  108,  108,  497,  496,  108,  500,  108,  503,  504, 
    10496       108,  108,  108,  502,  108,  507,  505,  508,  167,  518, 
    10497       197,  108,  108,  168,  108,  168,  525,  530,  108,  527, 
    10498       506,  108,  197,  103,  509,  548,  508,  167,  108,  108, 
    10499       526,  509,  168,  508,  167, 1074,  108,  197,  108,  168, 
    10500  
    10501       108,  528,  169,  170,   82,  179,  171,  108,  193,  108, 
    10502       108,  529,  354,  355,  354,  532,  559,  108,  559,  326, 
    10503       173,  169,  170,  220,  108,  171,  108,  108,  169,  170, 
    10504       380,  222,  171,  359,  197,  359, 1068,  534,  326,  173, 
    10505       108,  561,  551,  561,   86,  326,  173,  509,  175,  516, 
    10506       167,   87,   88,   86, 1073,  168,  658,  108,  563,  673, 
    10507        87,   88,  445, 1070,  445,  517,  517,  517,  517,  517, 
    10508       517,  517,  517,  517,  384,  384,  384,  384,  384,  384, 
    10509       384,  384,  384,  657,  169,  170,  225,  226,  171,  168, 
    10510       366,  553,  446,  688, 1069,  688,  552,  108,  108,  227, 
    10511  
    10512       565,  326,  173,  197,  384,  384,  384,  384,  384,  384, 
    10513       384,  384,  384,  685,  108,  108,  179,  668,  197,  668, 
    10514       362,  362,  362,  362,  362,  362,  362,  362,  362,  386, 
    10515       386,  386,  386,  386,  386,  386,  386,  386,  108,  108, 
    10516       197,  536,  197,  386,  386,  386,  386,  386,  386,  386, 
    10517       386,  386,  168,  197,  660,  108,  108,  566,  168,  537, 
    10518       537,  537,  537,  537,  537,  537,  537,  537,  388,  388, 
    10519       388,  388,  388,  388,  388,  388,  388,  108,  567,  108, 
    10520       538,  197,  388,  388,  388,  388,  388,  388,  388,  388, 
    10521       388,  675,  674,  569,  108,  108,  108, 1066,  362,  362, 
    10522  
    10523       362,  362,  362,  362,  362,  362,  362,  403,  403,  403, 
    10524       403,  403,  403,  403,  403,  403,  403,  403,  403,  403, 
    10525       403,  403,  403,  403,  403,  405,  405,  405,  405,  405, 
    10526       405,  405,  405,  405,  405,  405,  405,  405,  405,  405, 
    10527       405,  405,  405,  407,  407,  407,  407,  407,  407,  407, 
     7631       23,   24,   25,   26,   25,   27,   25,   28,   29,   30, 
     7632       30,   30,   30,   30,   30,   30,   30,   30,   30,   25, 
     7633       31,   32,   33,   34,   35,   36,   37,   38,   39,   40, 
     7634       41,   42,   43,   42,   42,   44,   45,   46,   47,   48, 
     7635       42,   49,   50,   51,   42,   42,   52,   42,   42,   42, 
     7636       25,   25,   42,   35,   36,   37,   38,   39,   40,   41, 
     7637       42,   43,   42,   44,   45,   46,   47,   48,   42,   49, 
     7638       50,   51,   42,   42,   52,   42,   42,   42,   14,   53, 
     7639       54,   55,   56,   71,   67,   66,   67,   68,   76,   77, 
     7640 
     7641       78,  203, 1138,   74,   72,  211,  206,   57,   57,   57, 
     7642       57,   57,   57,   57,   57,   57,   57,   75,   79,   77, 
     7643       79,   79,   77,   79,   58,   59,   82,   73,   60,   85, 
     7644       61,   69,   74,   78,   77,   80,   74,   74,   74, 1113, 
     7645       83,   62,   63,  176,   89,   75,  211,   74,   99,  176, 
     7646       75,   75,   75,   58,   59,   82,   73,   60,  224,   61, 
     7647       69,   75,  115,   86,  203,   74,   74,   74,   83,   62, 
     7648       63,   74,   98,   74,   74,   93,   74,   87,   75,   75, 
     7649       75,   90,   94,   95,  109,   75,  224,   75,   75,   75, 
     7650     1074,  115,   86,   74, 1008,   91,  110,  529,  223,  530, 
     7651 
     7652       74,  226,   74,   74,  531,   87,  530,   75,  227,  207, 
     7653       90,   74,   96,   75,   74,   75,   75,   74,   74,   74, 
     7654      115,  346,   74,   91,  387,   75,   97,  223,   75,  211, 
     7655      226,   75,   75,   75,  142,   75,  227,  207,  115,  176, 
     7656       74,   96,  161,   74,  968,  176,   74,   74,   74,  115, 
     7657      346,  203,  112,   75,   97,  100,   75,  100,   74,   75, 
     7658       75,   75,  142,   76,   77,   78,  410,  115,  204,  203, 
     7659      204,  161,   75,  101,  101,  101,  101,  101,  101,  101, 
     7660      101,  101,  101,   85,  115,  115,  370,   74,  102,  143, 
     7661      115,  538,  103,   74,  104,  410,  144,  145,  188,  105, 
     7662 
     7663       75,  106,  107,  201,  146,  205,   89,   75,   79,   77, 
     7664       79,  108,  228,  115,  115,  370,   89,  102,  143,  115, 
     7665      538,  103,   74,  104,  144,  145,   85,  105,  546,  106, 
     7666      107,  201,  146,   85,  205,   75,   78,   77,   78,  108, 
     7667      113,  228,  114,  114,  114,  114,  114,  114,  114,  114, 
     7668      114,  114,  115,  115,  387,  231,  129,  546,  116,  117, 
     7669      130,  138,  118,  188,  139,  242,  131,  140,  119,  243, 
     7670      132,  250,  229,  141,   89,  120,  121,  225,   77,  225, 
     7671      211,  115,  115,  231,  531,  129,  530,  116,  117,  130, 
     7672      138,  118,  139,  242,  131,  140,  119,  243,  132,  250, 
     7673 
     7674      229,  141,  251,  120,  121,  113,  230,  114,  114,  114, 
     7675      114,  114,  114,  114,  114,  114,  114,  347,  124,  359, 
     7676      115,  359,  122,  967,  211,  125,  147,  118,  211,  126, 
     7677      251,  133,  127,  134,  148,  230,  135,  136,  150,  203, 
     7678      149,  123,  128,  137,  188,  347,  151,  124,  573,  115, 
     7679      348,  122,  152,  350,  125,  147,  118,  126,  153,  133, 
     7680      127,  134,  157,  148,  135,  136,  168,  150,  149,  123, 
     7681      128,  137,  115,  169,  188,  151,  158,  573,  348,  159, 
     7682      152,  350,  160,  170,  207,  154,  153,  155,  244,  162, 
     7683      387,  157,  156,  163,  675,  168,  676,  164,  576,  115, 
     7684 
     7685      604,  115,  169,  245,  158,  165,  171,  159,  166,  167, 
     7686      160,  170,  207,  154,  678,  155,  172,  244,  162,  804, 
     7687      156,  389,  163,   78,   77,   80,  164,  576,  115,  604, 
     7688      677,  245,  676,  165,   93,  171,  166,  167,  183,  184, 
     7689      185,   94,   95,  678,  172,  173,   77,  174,  175,  389, 
     7690      188,  392,  677,  176,  676,  189,  186,  186,  186,  186, 
     7691      186,  186,  186,  186,  186,  186,   79,   77,   79,   93, 
     7692       79,   77,   79,   79,   77,   79,   94,   95,  115,  392, 
     7693      177,  178,  208,   74,  179,  208,  180,  190,   89,  198, 
     7694      248,  188,  142,  176,  233,  234,  233,  181,  182,  176, 
     7695 
     7696      249,  191,  235,  236,  224,  208,   89,  115,  208,  177, 
     7697      178,  349,   74,  179,   85,  180,  190,  198,  836,  248, 
     7698      142,  210,  211,  210,  203,  181,  182,  211,  249,  191, 
     7699      192,  194,  224,  212,  208,   93,  176,  208,  387,  349, 
     7700      356,  387,   94,   95,  110,  188,  193,  193,  193,  193, 
     7701      193,  193,  193,  193,  193,  193,  197,  391,  195,  213, 
     7702      129,  372,  373,  372,  130,  125,   74,  237,  356,  126, 
     7703      131,  188,  196,  214,  132,  387,  378,  354,  115,  203, 
     7704       75,  211,  128,  143,  972,  197,  391,  195,  213,  129, 
     7705      144,  199,  168,  130,  125,   74,  237,  126,  131,  169, 
     7706 
     7707      196,  214,  132,  355,  378,  393,  354,  115,   75,  170, 
     7708      128,  369,  143,  375,  376,  375,  200,  188,  144,  199, 
     7709      794,  168,  394,   77,  394,  731,   89,  234,  169,  724, 
     7710      373,  234,  355,  393,  401,  236,  554,  170,  401,  236, 
     7711      369,  559,  560,  559,  200,  209,  210,  211,  210,  209, 
     7712      209,  209,  215,  209,  209,  209,  209,  209,  209,  209, 
     7713      209,  209,  216,  209,  217,  217,  217,  217,  217,  217, 
     7714      217,  217,  217,  217,  209,  209,  209,  209,  209,  195, 
     7715      218,  218,  218,  218,  219,  218,  125,  218,  218,  218, 
     7716      220,  218,  218,  196,  218,  218,  218,  218,  221,  218, 
     7717 
     7718      218,  218,  218,  222,  218,  209,  209,  218,  195,  218, 
     7719      218,  218,  218,  219,  218,  125,  218,  218,  220,  218, 
     7720      218,  196,  218,  218,  218,  218,  221,  218,  218,  218, 
     7721      218,  222,  218,  209,   93,  239,  240,  246,  204,  203, 
     7722      204,   94,   95,  395,  554,  396,  211,  802,  241,  803, 
     7723      680,  110,  247,  111,  111,  111,  111,  111,  111,  111, 
     7724      111,  111,  111,  587,  239,  240,  246,  375,  376,  375, 
     7725      586,  395,  339,  396,  340,  205,  241,  258,  377,  680, 
     7726      247,  387,  584,  238,  257,  257,  257,  257,  257,  257, 
     7727      257,  257,  257,  257,  115,   85,  115,  261,  388,  115, 
     7728 
     7729      115,  115,  115,  268,  205,  115,  583,  377,  115,   89, 
     7730     1161,  238,  100,  115,  100,  115,  115,   85,  259,  115, 
     7731      387,  387,  115,  115,  341,  115,  261,  388,  115,  115, 
     7732      115,  115,  268,  211,  115,  397,  419,  115,   89, 1161, 
     7733      211,  115,  421,  115,  115,  102,  259,  115,  115,  103, 
     7734      115,  104,  341,  115,  411,  390,  105,  450,  106,  107, 
     7735      417,  400,  260,  397,  419,  234,  398,  115,  108,  294, 
     7736      421,  294,  401,  236,  102,  373,  188,  115,  103,  295, 
     7737      104,  399,  115,  390,  105,  450,  106,  107,  681,  400, 
     7738      260,  420,  412,  418,  398,  115,  108,  253,  253,  253, 
     7739 
     7740      253,  253,  253,  253,  253,  253,  253,  115,  264,  399, 
     7741      211,  416,  115,  115,  115,  254,  255,  681,  262,  115, 
     7742      412,  418,  263,  415,   89,  265,  115,  115,  256,  414, 
     7743      233,  234,  233,  115,  349,  258,  115,  264,  235,  236, 
     7744      532,  115,  115,  115,  254,  255,  262,  115,  115,  266, 
     7745      413,  263,  115,  265,  115,  115,  256,  344,  115,  387, 
     7746      580,  115,  349,  115,  211,  533,  115,  534,  532,  188, 
     7747      974,  345,  115,  535,  211,  265,  115,  115,  266,  115, 
     7748      203,  115,  536,  115,  115,  188,  344,  115,  115,  580, 
     7749      267,  537,  115,  533,  115,  534,  342,  269,  115,  345, 
     7750 
     7751      115,  535,  115,  265,  804,  115,  803,  542,  115,  115, 
     7752      536,  188,  115,  115,  115,  342,   93,  115,  267,  537, 
     7753       89,  270,  271,   94,   95,  269,  115,  272,  115,  115, 
     7754      115,  273,  274,  387,  115,  115,  542,  115,  115,  292, 
     7755      115,  292,  547,  115,  233,  234,  233,  275,  115,  270, 
     7756      271,  115,  235,  236,  115,  272,  115,  682,  115,  402, 
     7757      273,  274,   89,  115,  115,  387,  115,   85,  569,  115, 
     7758      547,  380,  211,  380,  188,  275,  115,  203, 1161,  115, 
     7759      211,   93,  115,  276,  188,  276,  682,  402,   94,   95, 
     7760      203,  475,  188,  568,  387,  115,  569,  572,   70,  113, 
     7761 
     7762      115,  277,  277,  277,  277,  277,  277,  277,  277,  277, 
     7763      277,  115,  203,  281,  115,  115,  115,   66,  282,  475, 
     7764      115,  568,  280,   85,  115,  572,  544,  543,  555,  115, 
     7765      115,  570,  562,  403,  115,  804,  278,  803,  279,  188, 
     7766      115,  281,  115,  211,  115,  115,  115,  282,  115,  115, 
     7767      280,  115, 1077,  115,  544,  543,  578,  555,  115,  570, 
     7768      562,  403,  115,  284,  278,  115,  279,  115,  283,  115, 
     7769      211,  115, 1100,  115,  115,  115,  115,  115,  115,  285, 
     7770      115,  563,  115,  289,  288,  578,  286,  575,  115, 1161, 
     7771      287,  284,  115,  115,  585,  115,  283,   85,  115, 1139, 
     7772 
     7773      115,  211,  115,  115,  115,  115,  640,  115,  285,  115, 
     7774      563,  289,  288,  561,  286,  575,  115,  292,  287,  292, 
     7775      115,  290,  585,  115,  115,   89,  294,  115,  294,  115, 
     7776      203,  683,  115,  115,  640, 1161,  295,  291,  115,  387, 
     7777      679,  561,  296,  115,  577,  564,  115, 1161,  188,  290, 
     7778      115,  115,  466,  115,  466,  115,  115,  115,  115,  261, 
     7779      683,  115,  115,  301,  115,  291, 1161,  571,  679,  293, 
     7780      296,  115,  577,  564,  115,  579,  115, 1161,  115,  115, 
     7781      115, 1161,  297,  467,  115,  115,  115,  697,  261,  697, 
     7782     1140,  115,  301,  115,  298,  571,  299,  293,  688,  300, 
     7783 
     7784      115, 1161,  115,  579,  115,  115,  115,  115,  203,  115, 
     7785      484,  297,  484,  691,  115,  303,  574,   77,  574,  115, 
     7786      485,  115,  298,  302,  299,  115,  688,  300,  304,  115, 
     7787      115,  115,  717,  115,  115,  203,  115,  115,  115, 1161, 
     7788     1161,  691,  115,  303,  115,  305,  692,  115, 1161,  115, 
     7789      306,  302,  115,  704,  115, 1161,  115,  304, 1161,  115, 
     7790      188,  717,  115,  115,  115, 1161,  115,  115,  115,  115, 
     7791     1161,  115,  115,  305,  692,  308,  307,  488,  306,  488, 
     7792      115,  704,  115,  115,  115, 1161,  115,  489, 1161,  115, 
     7793      310,  115,  115,  115,  115, 1150,  689,  115,  115,  521, 
     7794 
     7795      309,  521, 1161,  308,  307,  311,  752, 1161,  115,  522, 
     7796      115,  115,  115,  239,  240,  115,  115,  115,  115,  310, 
     7797      115,  115,   93,  115,  315,  689,  241, 1161,  309,   94, 
     7798       95,  312,  115,  311,  752,  115,  115,  115,  559,  560, 
     7799      559,  115,  239,  240, 1161,  115,  115,  753, 1161,  313, 
     7800      115,  115,  314,  315,  241,  115,  318,  115, 1161,  312, 
     7801      115,  115,  115,  115,  755,  316,  115,  556,  203,  556, 
     7802      756,  317,  581,  211,  115,  753,  115,  313, 1161,  115, 
     7803      314,  359,  115,  359,  115,  318,  115,  115,  319,  115, 
     7804      320,  115,  755,  115,  316,  556,  203,  556,  756,  317, 
     7805 
     7806      581,  115,  115,  324,  115, 1161,  321,  322,  557,  188, 
     7807      323,  115,  720,  115,  360,  211,  115,  319,  115,  320, 
     7808      115,  203,  115,  705,  325,  115,  326,  211,  361,  115, 
     7809     1161,  324,  115,  327,  321,  322,  557,  557,  323,  115, 
     7810      115,  720,  115,  360,  387,  115,  815,  115,  815,  115, 
     7811      759,  705,  325,  211,  115,  326,  361,  328,  687,  115, 
     7812      115,  327,  708,  329,   93,  557,  808,  115,  115,  115, 
     7813      703,   94,   95,   85,  115,  387,  707,  330,  759,  713, 
     7814      265, 1161,  115,  115,  331,  328,  687,  115,  115,  706, 
     7815      708,  697,  329,  697,  808,  332,  714,  115,  703,  851, 
     7816 
     7817      582, 1161,  115,  387,  707,  330,  722,  713,  265,  115, 
     7818      115,   89,  115,  331,  115,  115, 1161,  115,  706,  335, 
     7819      115, 1161,  333,  332,  715,  714,  334,  851,  115,  582, 
     7820      115,  387,  115, 1161,  115,  722,  859,  115,  115, 1161, 
     7821      336,  115, 1161,  115,  115,  337,  115,  725,  335,  115, 
     7822      333,  115,  716,  715,  334, 1161,  115,  719,   77,  719, 
     7823      115,  115,  115,  115,  859,   93,  115,  744,  115,  336, 
     7824      115,  338,   94,   95,  337,  115,  725,   93,  754,  115, 
     7825      760,  716,  115,  188,  729,  730, 1161, 1161,  115,  693, 
     7826     1161,  693,  115,  342,  184,  351,  744,  115,  861,  694, 
     7827 
     7828      338,  727,  806,  635,  815,  635,  815,  754,  862,  760, 
     7829      115,  352,  352,  352,  352,  352,  352,  352,  352,  352, 
     7830      352,  353,  807,  810, 1161,  805,  861,  176,  387, 1161, 
     7831      727,  806,  813,  608,  636,  608,  862,  352,  352,  352, 
     7832      352,  352,  352,  352,  352,  352,  352,  353,  700,  827, 
     7833      700,  807,  810,  176,  805,  804,  184,  809,  701, 1161, 
     7834      203,  813,  702,  352,  352,  352,  352,  352,  352,  352, 
     7835      352,  352,  352,  353,  748,  380,  211,  380,  827,  176, 
     7836      826,  211,  826,  856,  826,  211,  826,  110,  749,  357, 
     7837      357,  357,  357,  357,  357,  357,  357,  357,  357,  115, 
     7838 
     7839      820,  115,  115,  748,  115,  857,  115,  115,  381, 1161, 
     7840      267,  757,  856,  270,  363,  188,  749,  362,  115,  272, 
     7841      115,  364,  382,  832,   77,  832,  203,  758,  115,  820, 
     7842      115,  115,  211,  115,  857,  115,  115,  381,  267,  115, 
     7843      757,  270,  363, 1161,  115,  362,  115,  272,  115,  364, 
     7844      382,  811,  702,  365,  702,  758,  115, 1161,  115,  115, 
     7845      115,  115,  297,  368,  115,  115,  702,  860,  115,  863, 
     7846     1161,  367,  824,  115,  298,  115,  299,  821,  115,  366, 
     7847      811,  365,  864,  901, 1161,  115,  115, 1161,  115,  115, 
     7848      115,  297,  368,  115,  115,  211,  860, 1161,  863,  367, 
     7849 
     7850     1161,  824,  298,  115,  299,  821,  115,  366, 1161, 1161, 
     7851      864,  901,  383,  383,  383,  383,  383,  383,  383,  383, 
     7852      383,  383,  374,  374,  211,  374,  374,  374,  374,  374, 
     7853      374,  374,  374,  374,  374,  374,  374,  374,  374,  384, 
     7854      374,  385,  385,  385,  385,  385,  385,  385,  385,  385, 
     7855      385,  374,  374,  374,  374,  374,  386,  386,  386,  386, 
     7856      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     7857      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     7858      386,  386,  374,  374,  386,  386,  386,  386,  386,  386, 
     7859      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     7860 
     7861      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     7862      374,  404, 1161,  404,  932,  865,  405,  405,  405,  405, 
     7863      405,  405,  405,  405,  405,  405,  406, 1161,  406,  935, 
     7864      899,  407,  407,  407,  407,  407,  407,  407,  407,  407, 
     7865      407,  408,  932,  408,  865,  900,  409,  409,  409,  409, 
     7866      409,  409,  409,  409,  409,  409,  423,  935,  423,  899, 
     7867     1161,  424,  424,  424,  424,  424,  424,  424,  424,  424, 
     7868      424,  425, 1161,  425,  900, 1161,  426,  426,  426,  426, 
     7869      426,  426,  426,  426,  426,  426,  427,  902,  427,  432, 
     7870      937,  428,  428,  428,  428,  428,  428,  428,  428,  428, 
     7871 
     7872      428,  257,  257,  257,  257,  257,  257,  257,  257,  257, 
     7873      257, 1161,  115,  769,  115,  769,  902,  115,  937,  115, 
     7874      429,  430,  430,  430,  430,  430,  430,  430,  430,  430, 
     7875      430,  115,  433,  115,  115,  905,  908,  115,  908,  115, 
     7876      431,  115,  115,  115,  770,  434,  115,   93,  115,  429, 
     7877      908,  435,  908,  115,  839,  840,  115,  115,  211,  115, 
     7878      433,  115,  115,  115,  905,  693,  115,  693,  115,  431, 
     7879      436,  115, 1161,  434, 1161,  694,  115,  115,  115,  435, 
     7880      115,  115,  115,  115,  115,  115,  115,  804,  439,  803, 
     7881      437,  115, 1161, 1161,  822,  176,  115,  115,  436,  115, 
     7882 
     7883      438,  805,  924,  115,  115,  188,  115,  115,  115,  115, 
     7884      115,  115,  115, 1161,  115,  115,  439, 1161,  437, 1161, 
     7885      441,  440,  115,  822,  115,  115, 1161,  115,  438,  115, 
     7886      805,  924,  115,  115, 1161,  115,  203,  115,  115,  115, 
     7887      115,  115,  903, 1161,  115,  700,  115,  700,  441,  440, 
     7888      115,  442,  115,  443,  445,  701,  444,  115,  115,  702, 
     7889      115, 1161,  115,  115,  115,  446,   93,  115, 1161,  115, 
     7890      115,  903,  911,   94,   95,  115, 1161,  115,  115,  442, 
     7891      115,  443,  445,  115,  444,  115, 1161,  115,  115,  447, 
     7892      115,   93,  115,  893,  446,  893,  448,  115,   94,   95, 
     7893 
     7894     1161,  911, 1161,  894,  115,  115, 1161,  115,  115,  451, 
     7895      929,  115,  115,  115,  115,  449,  115,  447,  965,  115, 
     7896      931,  804,  184,  809,  448,  115,  203,  115,  115,  176, 
     7897      115,  453,  115,  115,  211,  452,  115,  115,  451,  929, 
     7898      115,  466,  115,  466,  449,  115,  965,  115,  115,  931, 
     7899      115,  933,  454,  115, 1161,  115,  934,  115,  115,  936, 
     7900      453,  980,  115,  910,  452,  115, 1161,  115,  115, 1161, 
     7901     1161,  913,  467,  115,  115,  115,  465,  115,  115,  115, 
     7902      933,  454,  115,   93,  875,  934,  875,  115,  936,  980, 
     7903       94,   95,  910,  115,  876,  115,  455,  115,  455,  115, 
     7904 
     7905      913,  959,  115,  115,  115,  465,  115,  964,  115,  239, 
     7906      240,  115,   93,  966,  893,  115,  893,  468,  469,   94, 
     7907       95,  115,  241, 1161,  894,  115, 1161,  456,  115,  115, 
     7908      959,  203,  457,  115,  458,  115,  964,  459,  239,  240, 
     7909      115,  460,  966, 1161,  461,  468,  469,  462,  463,  472, 
     7910      241,  464,  115,  115,  115,  115,  470,  115,  115,  471, 
     7911      115,  457,  989,  458,  991,  884,  459,  884,  115,  460, 
     7912     1161,  115,  461, 1161,  115,  462,  463,  981,  472,  464, 
     7913      973,  115,  115,  115,  115,  470,  115,  115,  471,  115, 
     7914      115,  989,  474,  991,  473,  115,  115,  984,  115,  115, 
     7915 
     7916      986,  115,  115,  115,  896,  981,  896,  987,  973,  115, 
     7917     1161,  115,  476,  954, 1161,  115,  115,  115,  988,  115, 
     7918      115,  474,  473,  990,  115,  984,  477,  115,  986,  115, 
     7919     1010,  115,  115, 1161,  115,  987,  115,  115,  115,  961, 
     7920      476,  954,  478,  115,  115,  115,  988, 1161, 1005,  115, 
     7921      115,  990, 1161, 1013,  477, 1161, 1161,  115,  479, 1010, 
     7922      115,  115,  115, 1161, 1161,  115,  115,  115,  961, 1014, 
     7923      478, 1027,  115,  998,  948,  998, 1005, 1015,  115,  203, 
     7924      115,  480, 1013,  115,  115,  115,  479,  481,  115,  115, 
     7925      115,  484,  483,  484,  488,  115,  488, 1014,  188, 1027, 
     7926 
     7927      482,  485,  115,  115,  489, 1017, 1015, 1018,  115,  480, 
     7928     1161, 1161,  115,  115, 1035, 1021,  481,  115,  115, 1036, 
     7929      115,  483,  203, 1028,  115,  115, 1031,  115,  482,  115, 
     7930      115,  115,  115, 1016, 1017,  486, 1018, 1161,  490,  115, 
     7931      492, 1032, 1035,  115, 1021,  487,  115, 1036,  491,  115, 
     7932     1043, 1161, 1028,  115,  115, 1031,  115, 1161,  115, 1022, 
     7933      115,  115, 1016,  486,  493,  115,  490,  115,  492, 1033, 
     7934     1032,  115,  115,  487,  115, 1034,  491,  115, 1043,  115, 
     7935      115,  115, 1045,  188,  495,  115,  115, 1161, 1022,  115, 
     7936     1046,  494,  496,  493,  115, 1161, 1161,  115, 1033,  115, 
     7937 
     7938      115,  115,  115, 1050, 1034, 1161,  115,  115, 1161,  115, 
     7939      115, 1045, 1049,  495,  115,  115,  115,  115, 1046,  494, 
     7940      496,  497,  115, 1041,  948, 1041,  115,  115,  115, 1051, 
     7941      498,  115, 1050,  115,  115, 1161,  115,  500,  115,  115, 
     7942     1049,  499,  115,  852,  115,  852,  115, 1052, 1161,  497, 
     7943     1161,  115,  115,  115,  115, 1161,  115, 1051,  498,  115, 
     7944     1053, 1161,  115,  115,  115, 1061,  500,  115,  115, 1060, 
     7945      499,  115,  501,  115,  115, 1161, 1052,  115,  925,  115, 
     7946      115,  115,  115,  115,  115,  203, 1064,  502,  115, 1053, 
     7947      503,  926, 1065,  115, 1061, 1161,  115, 1060,  504, 1066, 
     7948 
     7949      501,  115,  203,  115,  115,  211,  115,  925,  115,  115, 
     7950      505,  115, 1161, 1161, 1064,  502, 1072, 1056,  503,  926, 
     7951     1065,  115, 1076,  115,  115,  115,  504, 1066, 1161,  115, 
     7952      115, 1161,  507,  115,  115, 1161,  506,  115,  115,  505, 
     7953      508, 1057,  115, 1161,  115, 1072, 1056, 1055,  115, 1075, 
     7954     1076,  115, 1161,  211,  115, 1079,  115,  509,  115,  115, 
     7955      115,  507,  115,  115,  506,  115,  115,  115,  508,  115, 
     7956     1057,  115,  115, 1078,  115, 1055,  115,  512, 1075,  115, 
     7957      510,  115,  511, 1079,  115,  509, 1161, 1161,  115,  115, 
     7958     1161,  115,  115, 1058,  115,  115,  115,  115,  115,  513, 
     7959 
     7960      115, 1161, 1078,  115, 1085,  515,  512,  115,  510,  115, 
     7961      511,  115,  115, 1161,  115,  115,  115,  115,  115,  514, 
     7962      115,  115, 1058,  115,  115,  516,  115, 1086,  513,  115, 
     7963      211,  517, 1085,  515,  115, 1161,  203,  115,  115,  115, 
     7964     1161,  115,  115,  115,  115,  115,  115,  115,  514,  115, 
     7965      115,  211,  115,  521,  516,  521, 1086,  518, 1161,  517, 
     7966      519,  115,  115,  522,  115,  115,  115,  115, 1070,  948, 
     7967     1070, 1081,  115, 1161,  115, 1084, 1089, 1161,  520,  115, 
     7968      115, 1090,  115,  203, 1083,  518,  115,  115,  519,  523, 
     7969      115,  115,  115,  115, 1094,  115, 1161, 1096,  115,  524, 
     7970 
     7971     1081,  115,  115, 1084, 1089,  115,  520,  115,  115, 1097, 
     7972     1090,  115,  115, 1083,  526,  115,  115, 1082,  523,  115, 
     7973      115,  115,  115, 1094,  115, 1096, 1099,  115,  524,  115, 
     7974     1161,  115,  525,  115, 1161, 1161,  115, 1097,  115,  115, 
     7975      115, 1103,  526, 1161,  115,  115, 1082, 1111,  115,  115, 
     7976      115, 1161,  211,  115, 1099, 1104,  527, 1107,  115,  211, 
     7977      525,  947,  948,  947,  528, 1161,  115, 1161,  115,  949, 
     7978     1103,  203,  950,  115,  115,  531, 1111,  539, 1161,  115, 
     7979      947,  948,  947, 1104,  527, 1107,  115, 1023,  949, 1024, 
     7980     1161,  950,  528,  540,  540,  540,  540,  540,  540,  540, 
     7981 
     7982      540,  540,  540,  541,  947,  948,  947, 1101, 1161,  176, 
     7983     1161, 1102,  949, 1161,  188,  950, 1023, 1161, 1024,  540, 
     7984      540,  540,  540,  540,  540,  540,  540,  540,  540,  541, 
     7985     1000, 1001, 1000, 1161, 1161,  176, 1101,  188, 1002, 1102, 
     7986     1161, 1003, 1092,  948, 1092,  540,  540,  540,  540,  540, 
     7987      540,  540,  540,  540,  540,  541, 1109,  948, 1109, 1098, 
     7988     1115,  176,  115,  115, 1161,  550,  548,  115,  115,  110, 
     7989      115,  545,  545,  545,  545,  545,  545,  545,  545,  545, 
     7990      545,  115,  549, 1114,  115,  115,  551, 1098, 1115, 1120, 
     7991      115,  115,  115,  554,  550,  548,  115,  115, 1121,  115, 
     7992 
     7993     1161,  115, 1161, 1161,  115,  552,  115, 1161, 1161,  115, 
     7994      549, 1114,  115, 1127,  115,  551, 1123, 1120,  482,  115, 
     7995      115,  115, 1161,  115,  115,  553,  115, 1121,  115,  115, 
     7996      115,  203,  115, 1161,  552,  115,  947,  948,  947, 1129, 
     7997      115, 1127,  115,  115,  949, 1123,  482,  950,  115, 1161, 
     7998      115,  203,  115,  115,  553,  115,  211,  115,  115, 1161, 
     7999     1161, 1000, 1001, 1000, 1161, 1161, 1116, 1129,  115, 1002, 
     8000      115,  115, 1003,  383,  383,  383,  383,  383,  383,  383, 
     8001      383,  383,  383,  211, 1161, 1000, 1001, 1000, 1117, 1118, 
     8002     1117, 1161,  565, 1002, 1132, 1116, 1003, 1131, 1136, 1161, 
     8003 
     8004      566,  566,  566,  566,  566,  566,  566,  566,  566,  566, 
     8005      211, 1161, 1042, 1001, 1042, 1117, 1118, 1117, 1142,  567, 
     8006      949,  565, 1132,  950, 1161, 1131, 1136,  383,  383,  383, 
     8007      383,  383,  383,  383,  383,  383,  383,  405,  405,  405, 
     8008      405,  405,  405,  405,  405,  405,  405, 1142,  567,  405, 
     8009      405,  405,  405,  405,  405,  405,  405,  405,  405,  407, 
    105288010      407,  407,  407,  407,  407,  407,  407,  407,  407,  407, 
    10529       407,  108,  108,  108,  108,  564,  568,  108,  197,  108, 
    10530       108,  108,  571,  572,  570,  108, 1064,  108,  108,  108, 
    10531       108,  108,  573,  574,  108,  108,  108,  108,  108,  108, 
    10532       108,  590,  108,  578,  108,  197,  576,  577,  579,  108, 
    10533  
    10534       579,  108,  108,  108,  592,  108,  108,  108,  366,  596, 
    10535       591,  108,  593,  108,  108,  594,  108,  677,  108,  108, 
    10536       595,  599,  108,  108,  607,  597,  607,  108,  108,  723, 
    10537       108,  108,  610,  108,  600,  598,  108,  724,  601,  179, 
    10538       606,  580, 1049,  108,  108,  682,  609,  108,  108,  108, 
    10539       108,  168,  108,  108,  608,  581,  434,  168,  434,  108, 
    10540       108,  613,  611,  727,  108,  108,  108,  108,  614,  108, 
    10541       108,  615, 1063,  617,  616,  108,  108,  621,  871,  728, 
    10542       618,  108, 1061,  108,  619,  463,  435,  463,  108,  620, 
    10543       623,  467,  108,  467,  582,  464,  583, 1056,  108,  584, 
    10544  
    10545      1055,  468,  622,  585,   86,  108,  586,  108,  625,  587, 
    10546       588,  698,  699,  589,  602,  602,  602,  602,  602,  602, 
    10547       602,  602,  602,  602,  602,  108,  602,  602,  602,  602, 
    10548       602,  603,  602,  604,  604,  604,  604,  604,  604,  604, 
    10549       604,  604,  602,  602,  602,  602,  602,  602,  602,  605, 
    10550       605,  605,  605,  605,  605,  605,  605,  605,  605,  605, 
    10551       605,  605,  605,  605,  605,  605,  605,  605,  605,  605, 
    10552       605,  605,  605,  605,  605,  605,  602,  108,  108,  108, 
    10553       108,  108,  108,  108,  785, 1054,  785,  108, 1051,  626, 
    10554       627,  624,  108,  108,  108,  108,  108,  108,  108,  108, 
    10555  
    10556       108,  628,  108,  108,  108,  629,  630,  633,  108,  108, 
    10557       108,  631,  108,  108,  636,  108,  108,  108,  108,  108, 
    10558       108,  635,  632,  108,  108,  634,  108,  638,  641,  108, 
    10559       108,  640,  637,  108,  639,  108,  108,  108,  108,  642, 
    10560       108,  108,  108,  108,  108,  108,  108,  499,  108,  499, 
    10561       108,  197,  644,  108,  108,  108,  179,  500,  108,  108, 
    10562       643,  108,  108,  108,  108,  108,  108,  108,  108, 1050, 
    10563       645,  647,  646,  648,  167,  669,  657,   82, 1045,  168, 
    10564       108,  108,  168,  108,  701,  108,  649,  366,  648,  167, 
    10565       103, 1044,  108,  649,  168,  648,  167,  108,  780,  667, 
    10566  
    10567       705,  168,  676,  668,  664,  668,  664,  571,  169,  170, 
    10568       795,  668,  171,  668,  665,  694,  108,  108,  108,  108, 
    10569       108,   86,  707,  169,  170,  326,  173,  171,   87,   88, 
    10570       169,  170, 1042,  706,  171,  108,  108,  108,  108,  108, 
    10571       326,  173,  666, 1041,  670,  108,  670,  326,  173,  649, 
    10572       175,  655,  167,  197,  671,  108,  108,  168,  672,  696, 
    10573       108,  193,  108,  108,  709,  108,  108,  656,  656,  656, 
    10574       656,  656,  656,  656,  656,  656,  708,  108,  710,  108, 
    10575       108,  108,  108,  108,  712,  108,  169,  170, 1048,  714, 
    10576       171,  607,  785,  607,  785,  711,  108, 1040,  108,  108, 
    10577  
    10578       877,  108,  108,  326,  173,  197,  560,  560,  560,  560, 
    10579       560,  560,  560,  560,  560, 1038,  108,  678,  108,  678, 
    10580       179,  608,  679,  679,  679,  679,  679,  679,  679,  679, 
    10581       679,  197,  560,  560,  560,  560,  560,  560,  560,  560, 
    10582       560, 1031,  179,  794,  197,  794, 1030, 1029,  537,  537, 
    10583       537,  537,  537,  537,  537,  537,  537,  562,  562,  562, 
    10584       562,  562,  562,  562,  562,  562,  108, 1028, 1016,  536, 
    10585       197,  562,  562,  562,  562,  562,  562,  562,  562,  562, 
    10586       781,  108,  680,  108,  680,  732,  719,  681,  681,  681, 
    10587       681,  681,  681,  681,  681,  681,  687,  687,  108,  687, 
    10588  
    10589       687,  687,  687,  687,  687,  687,  687,  687,  687,  687, 
    10590       687,  687,  687,  702,  687,  703,  703,  703,  703,  703, 
    10591       703,  703,  703,  703,  687,  687,  687,  687,  687,  687, 
    10592       687,  704,  704,  704,  704,  704,  704,  704,  704,  704, 
    10593       704,  704,  704,  704,  704,  704,  704,  704,  704,  704, 
    10594       704,  704,  704,  704,  704,  704,  704,  704,  687,  108, 
    10595       108,  579,  108,  579,  108,  108,  108,  716,  108,  720, 
    10596       715,  733,  108,  736,  739,  735,  108,  108,  731,  108, 
    10597       734,  108,  108,  108,  108,  108,  108, 1025, 1024,  108, 
    10598       738,  108,  740,  409,  740,  244,  193,  409,  108,  737, 
    10599  
    10600       108,  108,  108,  108,  717,  243,  243,  243,  243,  243, 
    10601       243,  243,  243,  243,  108,  108,  108,  108,  718,  108, 
    10602       108,  743,  741,  108,  108,  745,  108,  108,  744,  742, 
    10603       108,  108,  108,  108,  748,  746,  108,  108,  789,  108, 
    10604       108,  108,  752,  747,  108,  108,  108,  108,  753,  108, 
    10605       750,  197,  751,  108,  108,  749,  108,  108,  108,  108, 
    10606       755,  108,  108,  108,  108,  754,  108,  108,  756,  758, 
    10607       757,  108,  108,  108,  108,  108,  760,  759,  108,  108, 
    10608       763,  108,  108,  108,  108,  108,  761,  764,  108,  108, 
    10609       108,  108,  108,  792,  108,  769,  108,  108,  762,  108, 
    10610  
    10611       108,  108,  108,  108, 1018,  108,  766,  768,  108,  108, 
    10612       767,  108,  108,  108,  664,  197,  664,  108,  108,  770, 
    10613       108,  771,  772,  773,  665,  774,  167,  168, 1017,  108, 
    10614       108,  168,  775,  168,  774,  167,  664,  670,  664,  670, 
    10615       168,  103,  775,  197,  774,  167,  665,  671,  108,  108, 
    10616       168,  672,  776,  786,  879,   86,  787,  794,  197,  794, 
    10617       169,  170,  806,  807,  171,  108,  108,  108,   86,  169, 
    10618       170,  108,  244,  171,  776,   87,   88,  326,  173,  169, 
    10619       170,  790,  788,  171,  108,  193,  326,  173,  108, 1015, 
    10620       672,  108,  672,  670, 1012,  670,  326,  173,  775,  175, 
    10621  
    10622       779,  167,   86,  671,  672,  108,  168,  672,  108,   87, 
    10623        88,  243,  243,  243,  243,  243,  243,  243,  243,  243, 
    10624       812,  108,  108,  986,  811,  108,  108,  108,  108,  108, 
    10625       816,  108,  819,  108,  819,  169,  170,  108,  108,  171, 
    10626       813,  817,  108,  108,  108,  108,  108,  815,  108,  814, 
    10627       108,  108,  326,  173,  197,  822,  740, 1011,  740,  819, 
    10628       876,  819,  876,  876,  108,  876,  108,  108,  108,  820, 
    10629       825,  679,  679,  679,  679,  679,  679,  679,  679,  679, 
    10630       197,  839,  821,  108,  108,  965,  741,  965, 1009, 1001, 
    10631       108,  108,  834,  108,  108,  835,  891,  679,  679,  679, 
    10632  
    10633       679,  679,  679,  679,  679,  679,  197,  108,  108,  892, 
    10634       108,  841,  179,  836, 1000,  999,  108,  108,  843,  108, 
    10635       108,  838,  837,  681,  681,  681,  681,  681,  681,  681, 
    10636       681,  681,  197,  108,  108,  108,  850,  108,  862,   86, 
    10637       862,  983, 1007,  984, 1007,  934,   87,   88,  863,  681, 
    10638       681,  681,  681,  681,  681,  681,  681,  681,  791,  791, 
    10639       197,  791,  791,  791,  791,  791,  791,  791,  791,  791, 
    10640       791,  791,  791,  791,  791,  796,  791,  797,  797,  797, 
    10641       797,  797,  797,  797,  797,  797,  791,  791,  791,  791, 
    10642       791,  791,  791,  798,  798,  798,  798,  798,  798,  798, 
    10643  
    10644       798,  798,  798,  798,  798,  798,  798,  798,  798,  798, 
    10645       798,  798,  798,  798,  798,  798,  798,  798,  798,  798, 
    10646       791,  800,  800,   86,  800, 1036,  998, 1036,  800,  800, 
    10647        87,   88,  800,  997,  996,  800,  800,  800,  800,  800, 
    10648       800,  800,  800,  799,  799,  995,  799,  799,  799,  799, 
    10649       799,  799,  799,  799,  799,  799,  799,  799,  799,  799, 
    10650       808,  799,  809,  809,  809,  809,  809,  809,  809,  809, 
    10651       809,  799,  799,  799,  799,  799,  799,  799,  810,  810, 
    10652       810,  810,  810,  810,  810,  810,  810,  810,  810,  810, 
    10653       810,  810,  810,  810,  810,  810,  810,  810,  810,  810, 
    10654  
    10655       810,  810,  810,  810,  810,  799,  108,  108,  108,  844, 
    10656       840,  844,  108,  108,  851,  179,  108,  848,  842,  845, 
    10657       847,  108,  846,  108,  108,  108,  108,  992,  108,  108, 
    10658       108,  108,  849,  108,  852,  108,  108,  853,  108,  108, 
    10659       854,  108,  854,  108,  108,  108,  857,  108,  108, 1113, 
    10660       108,  108,  108,  108,  860,  108,  108,  108,  108,  856, 
    10661       108,  108,  108,  108,  108,  859,  858,  108,  108,  861, 
    10662       864,  108,  108,  197,  108,  108,  865,  108,  865,  108, 
    10663       108,  108,  773,  108,  775,  167,  108,  179,  108,  108, 
    10664       855,  874,  108,  775,  991,  774,  167,  108,  108,  867, 
    10665  
    10666       108,  168,  775,  108,  775,  167,  108,  876,  108,  876, 
    10667       244,  108,  865,  866,  865,  108,  888,  885,  883,  169, 
    10668       170,  875,  884,  171,  982,  108, 1084,  108,  108,  108, 
    10669       169,  170,  108,  108,  171,  108,  326,  173,  108,  169, 
    10670       170,  108,  108,  171,  894,  886,  108,  326,  173,  929, 
    10671       981, 1059,  889, 1059,  980,  108,  326,  173,  108,  108, 
    10672       878,  878,  197,  878,  878,  878,  878,  878,  878,  878, 
    10673       878,  878,  878,  878,  878,  878,  878,  880,  878,  881, 
    10674       881,  881,  881,  881,  881,  881,  881,  881,  878,  878, 
    10675       878,  878,  878,  878,  878,  882,  882,  882,  882,  882, 
    10676  
    10677       882,  882,  882,  882,  882,  882,  882,  882,  882,  882, 
    10678       882,  882,  882,  882,  882,  882,  882,  882,  882,  882, 
    10679       882,  882,  878,  197,  243,  243,  243,  243,  243,  243, 
    10680       243,  243,  243,  108,  108,  108,  108,  887,  108,  108, 
    10681       362,  362,  362,  362,  362,  362,  362,  362,  362,  893, 
    10682       108,  108,  108,  896,  108,  108,  906,  905,  108,  108, 
    10683       108,  909,  108,  108,  108,  907,  977,  911,  912,  975, 
    10684       972,  108,  108,  108,  910,  908,  108,  108,  915,  108, 
    10685       108,  108,  844,  913,  844,  916,  918,  108,  917,  108, 
    10686       108,  108,  845,  108,  108,  108,  108,  920,  854,  108, 
    10687  
    10688       854,  108,  108,  108,  108,  108,  919,  921,  108,  926, 
    10689       108,  108,  108,  108,  925,  108,  108,  108,  923,  108, 
    10690       108,  924,  108,  108,  108,  862,  930,  862,  193,  108, 
    10691       936,  197,  108,  108,  108,  863,  108,  931,  108,  940, 
    10692       108,  108,  108,  108,  957,  928,  108,  108,  922,  108, 
    10693       108,  937,  108,  108,  108,  108,  941,  108,  108,  942, 
    10694       108,  938,  948,  108,  939,  197,  108,  950,  193,  108, 
    10695       944,  108,  947,  943,  108,  108,  108,  108,  961,  956, 
    10696       108,  959,  362,  362,  362,  362,  362,  362,  362,  362, 
    10697       362,  108,  108,  108,  108,  108,  960,  108,  108,  958, 
    10698  
    10699       915,  108,  179,  108,  179, 1047,  108,  916,  108,  108, 
    10700       917,  108,  967,  962,  108,  108,  964,  963,  108,  968, 
    10701       108,  915,  969,  108,  108,  108,  108,  108,  916,  970, 
    10702       108,  917,  971,  108,  108,  108,  108,  197,  108,  976, 
    10703       973,  108,  108,  108,  108,  108,  108,  108,  108, 1065, 
    10704       108,  974,  108,  108,  978,  108,  108, 1094,  979,  989, 
    10705       108,  108,  108,  108,  108,  108,  985,  108,  990,  108, 
    10706       108,  994,  955,  108,  987,  108,  988,  108,  108, 1003, 
    10707       108,  108,  993,  108,  108,  108,  108,  108,  108, 1002, 
    10708       197,  108,  108, 1006,  967, 1004,  108,  108,  108,  197, 
    10709  
    10710       108,  968,  108,  954,  969,  108,  967, 1005,  108, 1008, 
    10711       967, 1008,  967,  968,  108,  108,  969,  916,  108,  968, 
    10712       917,  108,  969, 1010,  108,  108,  108,  108,  108, 1013, 
    10713      1014,  108, 1022,  108,  953,  108,  108, 1021,  108, 1019, 
    10714      1023,  108,  108,  108,  108,  108,  108,  108,  108,  108, 
    10715       108, 1033,  108,  108,  108, 1027,  179, 1026, 1035,  108, 
    10716      1034, 1032,  952,  108,  108,  108,  108,  108,  108,  108, 
    10717       951,  108, 1037,  915, 1037,  108,  108,  108,  108, 1039, 
    10718       916,  108, 1052,  917,  108,  108,  108, 1046,  108, 1043, 
    10719       108,  108,  108,  108,  108,  108,  193, 1057,  108, 1053, 
    10720  
    10721       108, 1058,  179,  108,  108,  108,  108,  108,  108, 1062, 
    10722       108, 1060,  915, 1060,  108,  193,  108,  108, 1075,  916, 
    10723       108,  108,  917,  108, 1072,  949, 1076, 1071, 1076, 1067, 
    10724       108,  108,  108,  108, 1077,  915, 1077,  108,  108,  193, 
    10725      1079,  108,  916,  179,  915,  917, 1087,  108,  108,  108, 
    10726      1081,  916, 1083,  179,  917,  108, 1089, 1089, 1092, 1089, 
    10727       179, 1097,  946, 1089, 1089,  108,  193, 1089,  179,  193, 
    10728      1089, 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1090,  915, 
    10729      1090,  108,  193,  193,  179, 1101,  916, 1095,  193,  917, 
    10730       915, 1111,  193, 1103, 1098, 1098, 1107, 1099,  108, 1104, 
    10731  
    10732       917, 1098, 1098,  108,  108, 1098,  193,  193, 1098, 1098, 
    10733      1098, 1098, 1098, 1098, 1098, 1098,  915,  967,  193, 1109, 
    10734       108,  108, 1112,  916,  968, 1114,  917,  969,  193, 1108, 
    10735       384, 1110,  384,  386,  388,  386,  388, 1115,  403,  945, 
    10736       403, 1116,  405,  366,  405, 1119,  407,  560,  407,  560, 
    10737       197,  562, 1120,  562,  935,  179,  933, 1118,  932,  927, 
    10738       904,  903,  902,  901,  900,  899,  898,  897,  895,  890, 
    10739        82,   78,  366,  197,  197,  197,  873,  179,  179,  870, 
    10740       869, 1121,   62,   62,   62,   62,   62,   62,   62,   62, 
    10741        62,   62,   62,   62,   62,   62,   62,   62,   62,   63, 
    10742  
    10743        63,   63,   63,   63,   63,   63,   63,   63,   63,   63, 
    10744        63,   63,   63,   63,   63,   63,   74,   74,  868,   74, 
    10745        74,   74,   74,   74,   74,   74,   74,   74,   74,   74, 
    10746        74,   74,   74,   77,   77,  833,   77,   77,   77,   77, 
    10747        77,   77,   77,   77,   77,   77,   77,   77,   77,   77, 
    10748        81,   81,   81,   81,   81,   81,   81,   81,   81,   81, 
    10749        81,   81,   81,   81,   81,   81,   81,   85,   85,   85, 
    10750        85,   85,   85,   85,   85,   85,   85,   85,   85,   85, 
    10751        85,   85,   85,   85,  104,  104,  832,  831,  830,  829, 
    10752       104,  108,  108,  108,  108,  108,  108,  108,  108,  108, 
    10753  
    10754       108,  178,  178,  178,  178,  178,  178,  178,  178,  178, 
    10755       178,  178,  178,  178,  178,  178,  178,  178,  184,  828, 
    10756       184,  827,  184,  184,  826,  824,  823,  818,  184,  192, 
    10757       192,  192,  192,  192,  192,  192,  192,  192,  192,  192, 
    10758       192,  192,  192,  192,  192,  192,  195,  195,  195,  195, 
    10759       195,  195,  195,  195,  195,  195,   82,  195,  195,  195, 
    10760       195,   82,  195,  218,  218,  218,  218,  218,  218,  218, 
    10761       218,  218,  218,  218,  218,  218,  218,  218,  218,  218, 
    10762        94,   78,  803,   94,   94,  238,  238,  238,  238,  366, 
    10763       238,  238,  366,  238,  238,  197,  238,  238,  783,  179, 
    10764  
    10765       238,  238,  328,  328,  328,  328,  328,  328,  328,  328, 
    10766       328,  328,  328,  328,  328,  328,  328,  328,  328,  336, 
    10767       778,  336,  777,  765,  336,  341,  730,  341,  729,  341, 
    10768       341,  342,  342,  726,  342,  342,  342,  342,  342,  342, 
    10769       342,  342,  342,  342,  342,  342,  342,  342,  353,  353, 
    10770       353,  353,  353,  353,  353,  353,  353,  353,  353,  353, 
    10771       353,  353,  353,  353,  353,  358,  358,  358,  358,  358, 
    10772       358,  358,  358,  358,  358,  358,  358,  358,  358,  358, 
    10773       358,  358,  401,  725,  722,  401,  401,  262,  721,  262, 
    10774       713,  700,   82,  693,  262,  689,  686,  530,  663,  662, 
    10775  
    10776       530,  654,  262,  517,  653,  517,  652,  651,  517,  522, 
    10777       650,  522,  612,  522,  522,  656,  575,  656,  408,  558, 
    10778       656,  661,  557,  661,  556,  661,  661,  687,  687,  555, 
    10779       687,  687,  687,  687,  687,  687,  687,  687,  687,  687, 
    10780       687,  687,  687,  687,  690,  690,  554,  690,  690,  690, 
    10781       690,  690,  690,  690,  690,  690,  690,  690,  690,  690, 
    10782       690,  692,  692,  547,  692,  692,  692,  692,  692,  692, 
    10783       692,  692,  692,  692,  692,  692,  692,  692,  695,  695, 
    10784       695,  695,  695,  695,  695,  695,  695,  695,  695,  695, 
    10785       695,  695,  695,  695,  695,  697,  697,  697,  697,  697, 
    10786  
    10787       697,  697,  697,  697,  697,  697,  697,  697,  697,  697, 
    10788       697,  697,  782,  782,  782,  782,  782,  782,  782,  782, 
    10789       782,  782,  782,  782,  782,  782,  782,  782,  782,  104, 
    10790       546,  104,  544,  104,  104,  784,  784,  543,  784,  784, 
    10791       784,  784,  784,  784,  784,  784,  784,  784,  784,  784, 
    10792       784,  784,  791,  791,  791,  791,  791,  791,  791,  791, 
    10793       791,  791,  791,  791,  791,  791,  791,  791,  791,  793, 
    10794       793,  793,  793,  793,  793,  793,  793,  793,  793,  793, 
    10795       793,  793,  793,  793,  793,  793,  799,  799,  366,  799, 
    10796       799,  799,  799,  799,  799,  799,  799,  799,  799,  799, 
    10797  
    10798       799,  799,  799,  801,  801,  197,  801,  801,  801,  801, 
    10799       801,  801,  801,  801,  801,  801,  801,  801,  801,  801, 
    10800       802,  802,  197,  802,  802,  802,  802,  802,  802,  802, 
    10801       802,  802,  802,  802,  802,  802,  802,  804,  804,  804, 
    10802       804,  804,  804,  804,  804,  804,  804,  804,  804,  804, 
    10803       804,  804,  804,  804,  805,  805,  805,  805,  805,  805, 
    10804       805,  805,  805,  805,  805,  805,  805,  805,  805,  805, 
    10805       805,  872,  872,  872,  872,  872,  872,  872,  872,  872, 
    10806       872,  872,  872,  872,  872,  872,  872,  872,  878,  878, 
    10807       878,  878,  878,  878,  878,  878,  878,  878,  878,  878, 
    10808  
    10809       878,  878,  878,  878,  878,  914,  914,  914,  914,  914, 
    10810       914,  914,  914,  914,  914,  914,  914,  914,  914,  914, 
    10811       914,  914,  966,  966,  966,  966,  966,  966,  966,  966, 
    10812       966,  966,  966,  966,  966,  966,  966,  966,  966,  524, 
    10813       523,  515,  514,  513,  512,  511,  510,  179,  333,  429, 
    10814       410,  408,  400,  399,  398,  395,  394,  393,  392,  389, 
    10815       375,  374,  372,  371,  366,  197,  197,  193,  179,  334, 
    10816       332,  331,  179,  237,  236,  229,  228,   82,   82,   78, 
    10817       213,  212,  210,  209,  193,  188, 1123,   64,   13, 1123, 
    10818      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10819  
    10820      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10821      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10822      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10823      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10824      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    10825      1123, 1123 
     8011      407,  407,  407,  407,  407,  407,  407,  407,  407,  409, 
     8012      409,  409,  409,  409,  409,  409,  409,  409,  409,  409, 
     8013      409,  409,  409,  409,  409,  409,  409,  409,  409,  424, 
     8014 
     8015      424,  424,  424,  424,  424,  424,  424,  424,  424,  424, 
     8016      424,  424,  424,  424,  424,  424,  424,  424,  424,  426, 
     8017      426,  426,  426,  426,  426,  426,  426,  426,  426,  426, 
     8018      426,  426,  426,  426,  426,  426,  426,  426,  426,  428, 
     8019      428,  428,  428,  428,  428,  428,  428,  428,  428,  428, 
     8020      428,  428,  428,  428,  428,  428,  428,  428,  428,  588, 
     8021      211,  588, 1161, 1161,  589,  589,  589,  589,  589,  589, 
     8022      589,  589,  589,  589,  430,  430,  430,  430,  430,  430, 
     8023      430,  430,  430,  430, 1161,  115, 1161,  115, 1161,  590, 
     8024      115,  590,  115,  429,  591,  591,  591,  591,  591,  591, 
     8025 
     8026      591,  591,  591,  591,  115,  592,  115,  115,  115,  593, 
     8027      203, 1119,  115,  115,  115, 1161,  115, 1141,  188,  115, 
     8028     1161,  115,  429, 1161,  115, 1161,  115,  115,  594,  115, 
     8029      115, 1161,  115,  592,  115,  115,  115,  115,  593, 1119, 
     8030     1161,  115,  115,  115, 1161, 1141,  115,  203,  595,  115, 
     8031     1149,  115, 1161,  115,  115,  115, 1146,  594,  115,  115, 
     8032     1161, 1161,  596, 1161,  115,  115,  188,  115,  115,  115, 
     8033     1161,  115,  597,  115,  115,  115,  595,  115,  188, 1149, 
     8034      115,  115, 1161,  598, 1146,  115,  203,  115,  115,  115, 
     8035      115,  596, 1144,  115,  115,  188,  115,  115,  115,  203, 
     8036 
     8037      599,  597,  115,  115,  115,  115, 1161,  188,  115,  115, 
     8038      115,  598, 1161,  600,  115,  115,  115, 1130,  115,  115, 
     8039     1144,  115,  115,  115,  115,  601,  115,  115,  599, 1143, 
     8040      115, 1157,  115,  602,  115,  115,  115, 1148, 1161,  115, 
     8041      115,  115,  600,  603, 1145, 1130, 1124,  948, 1124,  115, 
     8042      115,  115,  115, 1161,  601,  115,  115, 1143, 1151,  115, 
     8043     1157,  602,  115, 1161,  115, 1148,  188,  115,  115,  115, 
     8044      115,  603, 1145,  605,  115,  115,  203,  115,  606,  115, 
     8045     1161,  115, 1161, 1161,  203,  608, 1151,  608, 1161,  115, 
     8046     1161,  115,  607,  115, 1161, 1161,  115, 1161, 1161,  115, 
     8047 
     8048     1161,  605, 1147,  115,  115, 1161, 1161,  606,  115,  115, 
     8049      115, 1153, 1154, 1153,  115,  115, 1161,  115,  115,  115, 
     8050      607,  115, 1161,  115, 1161, 1155,  609, 1161,  619,  115, 
     8051      620, 1147, 1161,  115, 1161, 1152, 1161,  115, 1161,  115, 
     8052      610,  115, 1161,  115,  115,  115,  621,  115,  115, 1161, 
     8053      115, 1161,  115, 1155,  203,  609,  619,  115,  620,  622, 
     8054      115,  115,  115, 1152,  115,  115, 1161,  115,  610,  455, 
     8055      115,  455, 1161, 1161,  115,  621, 1153, 1154, 1153,  115, 
     8056     1161,  629, 1161, 1161,  115, 1161, 1161,  622,  115,  115, 
     8057     1156,  115,  115, 1159, 1160, 1159,  115, 1159, 1160, 1159, 
     8058 
     8059      456,  623, 1161,  115, 1161,  611,  115,  612, 1161,  629, 
     8060      613,  115,  203,  115,  614, 1161, 1161,  615,  115, 1156, 
     8061      616,  617, 1161, 1161,  618,  115, 1161, 1161, 1161,  623, 
     8062      626,  115, 1161, 1161,  611,  115,  612, 1161,  115,  613, 
     8063      115, 1161,  614,  115, 1161,  615,  115, 1161,  616,  617, 
     8064      624,  115,  618,  115,  115,  115, 1161,  637,  626,  115, 
     8065      115,  627, 1161, 1158, 1161,  115,  625,  115, 1161, 1161, 
     8066     1161, 1161,  115,  115,  115,  115,  628, 1161, 1161,  624, 
     8067      115, 1161, 1161,  115,  115,  637, 1161, 1161,  115,  115, 
     8068      627, 1158, 1161,  115,  625, 1161, 1161, 1161, 1161, 1161, 
     8069 
     8070     1161,  115,  115, 1161,  628,  630,  630,  630,  630,  630, 
     8071      630,  630,  630,  630,  630,  630, 1161,  630,  630,  630, 
     8072      630,  630,  631,  630,  632,  632,  632,  632,  632,  632, 
     8073      632,  632,  632,  632,  630,  630,  630,  630,  630,  633, 
     8074      633,  633,  633,  633,  633,  633,  633,  633,  633,  633, 
     8075      633,  633,  633,  633,  633,  633,  633,  633,  633,  633, 
     8076      633,  633,  633,  633,  633,  630,  630,  633,  633,  633, 
     8077      633,  633,  633,  633,  633,  633,  633,  633,  633,  633, 
     8078      633,  633,  633,  633,  633,  633,  633,  633,  633,  633, 
     8079      633,  633,  633,  630,  115, 1161,  635,  638,  635,  115, 
     8080 
     8081     1161, 1161,  115,  115, 1000, 1001, 1000, 1161,  115, 1161, 
     8082     1161,  634, 1002,  115, 1161, 1003,  115, 1161, 1161, 1161, 
     8083     1161, 1161,  639,  115, 1161, 1161,  638,  636,  115,  115, 
     8084      115,  115,  115, 1161,  115,  115, 1161,  115,  115,  634, 
     8085     1161,  115, 1161,  115,  115, 1161,  641, 1161,  115,  115, 
     8086      639, 1161, 1161, 1161, 1161, 1161, 1161,  115,  115,  115, 
     8087      115, 1161, 1161,  115,  115,  115, 1161,  115,  115, 1161, 
     8088     1161, 1161,  115,  115, 1161,  641,  115,  115, 1161,  115, 
     8089      642, 1161, 1161, 1161, 1161,  115, 1161,  643, 1161,  115, 
     8090      115, 1161, 1161, 1161,  115,  115, 1161,  115,  644,  115, 
     8091 
     8092     1161, 1161,  115, 1161,  115,  645, 1161,  115,  642,  115, 
     8093     1161, 1161,  646, 1161, 1161,  643, 1161, 1161,  115,  115, 
     8094     1161, 1000, 1001, 1000,  115, 1161, 1161,  644,  115, 1002, 
     8095      115,  650, 1003,  115,  645,  115,  115,  115,  647,  115, 
     8096      646,  648,  115, 1161,  115, 1161,  115,  115, 1161,  115, 
     8097      115, 1161, 1161, 1161, 1161, 1161,  649, 1161,  115,  115, 
     8098      650,  115, 1161, 1161,  115,  115, 1161,  647,  115,  115, 
     8099      648,  115, 1161,  115,  115,  652,  115,  115,  115, 1161, 
     8100      115, 1161, 1161,  651,  649, 1161,  115, 1161,  115,  115, 
     8101     1161,  115, 1161, 1161,  115,  115,  115, 1161,  115, 1161, 
     8102 
     8103      115, 1161,  653,  115,  652, 1161,  654,  115, 1161,  115, 
     8104      115,  651,  115, 1161,  115, 1161,  115, 1161,  115, 1161, 
     8105      115, 1161,  115,  115,  115,  115,  115,  115, 1161,  115, 
     8106      653, 1161,  115, 1161,  654,  655,  115,  115,  115,  115, 
     8107     1161,  115,  115,  115,  115, 1161,  115,  115,  115, 1161, 
     8108      115, 1161,  115, 1161,  115,  115,  115, 1161,  115, 1161, 
     8109     1161,  115,  115, 1161,  655,  115,  115, 1161,  115,  659, 
     8110      115,  115,  115,  115,  115,  115, 1161,  115, 1161,  115, 
     8111      656, 1161,  657, 1161,  115,  115,  115,  115, 1161,  115, 
     8112      115,  658,  115,  115, 1161,  115,  661,  659,  115,  115, 
     8113 
     8114      115,  115, 1161, 1161,  115, 1161,  115, 1161,  656, 1161, 
     8115      657, 1161,  660,  115, 1161,  115,  115,  115,  115,  115, 
     8116      658,  115,  115,  115,  115,  661, 1161,  115, 1161,  664, 
     8117      115, 1071,  948, 1071,  115,  662, 1161,  115,  115,  949, 
     8118      660,  115,  950,  115, 1161, 1161,  115,  115,  115,  663, 
     8119      115, 1161,  115,  115, 1161,  115, 1161,  115, 1161, 1161, 
     8120      115, 1161,  115,  662, 1161,  115,  115, 1161, 1161,  115, 
     8121      115, 1161, 1161, 1161,  665,  115,  115, 1161,  663,  115, 
     8122     1161, 1161,  115, 1161,  115, 1161,  115,  115,  115,  115, 
     8123      115,  115, 1161,  666,  115,  115, 1161,  115, 1161, 1161, 
     8124 
     8125     1161,  115,  665,  668,  115, 1161,  667, 1161,  115,  115, 
     8126     1161,  115, 1161, 1161, 1161, 1161,  115, 1161,  115,  115, 
     8127      115,  666,  115,  115,  115,  115, 1161,  115,  115,  115, 
     8128      669,  668, 1161,  115,  667, 1161,  115,  115,  670,  115, 
     8129     1161,  115, 1161, 1161, 1161,  115, 1161,  115, 1161,  115, 
     8130      115,  115, 1161,  115,  115, 1161,  115,  115,  115,  669, 
     8131     1161,  115,  115, 1161,  115,  115,  115,  115, 1161,  115, 
     8132      115, 1161,  115, 1161,  115,  115, 1161, 1161, 1161,  115, 
     8133      115, 1161,  115, 1161,  115, 1161,  115,  115,  115, 1161, 
     8134      115,  115,  115,  115,  115,  115, 1161, 1161, 1161,  115, 
     8135 
     8136      115, 1161,  671, 1161, 1161,  115, 1161,  115,  115,  115, 
     8137     1161, 1161,  115,  672,  115,  115, 1161,  115,  115, 1161, 
     8138      115,  115,  115,  115, 1161, 1161,  115, 1161,  115, 1161, 
     8139      671, 1161, 1161,  115, 1161,  115, 1161,  115,  115, 1161, 
     8140      115,  115,  672,  115,  115,  673,  115,  115,  674,  115, 
     8141      115, 1161,  115, 1161, 1161,  115,  115, 1161, 1161, 1161, 
     8142      115,  698, 1161,  115, 1161,  115,  115, 1161,  115, 1161, 
     8143      115, 1161, 1161,  115,  673,  115, 1161,  674,  115,  677, 
     8144      115,  684, 1161, 1161, 1161, 1093,  948, 1093,  115, 1161, 
     8145      698,  115, 1161,  949, 1161,  115,  950,  685,  685,  685, 
     8146 
     8147      685,  685,  685,  685,  685,  685,  685,  686,  115, 1110, 
     8148      948, 1110, 1161,  176, 1161, 1161, 1161,  949, 1161, 1161, 
     8149      950, 1161, 1161,  685,  685,  685,  685,  685,  685,  685, 
     8150      685,  685,  685,  686,  693, 1161,  693, 1161, 1161,  176, 
     8151     1161, 1161, 1161, 1161,  694, 1161, 1161, 1161, 1161,  685, 
     8152      685,  685,  685,  685,  685,  685,  685,  685,  685,  686, 
     8153      697, 1161,  697, 1161, 1161,  176,  696,  115, 1161, 1161, 
     8154      695,  115,  115,  110,  600,  690,  690,  690,  690,  690, 
     8155      690,  690,  690,  690,  690,  115,  115, 1161, 1161, 1161, 
     8156     1161, 1161, 1161,  115, 1161,  696,  115, 1161,  115,  695, 
     8157 
     8158      115,  115,  115,  600, 1161,  115, 1161,  115,  645,  732, 
     8159      115, 1161,  115,  115,  115,  646, 1161, 1161,  700,  699, 
     8160      700,  115,  115, 1161,  115, 1161, 1161,  115,  701, 1161, 
     8161     1161,  115,  702, 1161,  115, 1161,  115,  645,  732,  115, 
     8162      115,  211, 1161,  646, 1161, 1161, 1161,  699, 1161,  115, 
     8163     1161,  115,  115,  709, 1161,  709,  115, 1161,  710,  710, 
     8164      710,  710,  710,  710,  710,  710,  710,  710, 1161,  211, 
     8165      115, 1126,  948, 1126, 1161, 1161, 1161, 1161, 1161,  949, 
     8166      115, 1161,  950, 1161, 1161,  115,  566,  566,  566,  566, 
     8167      566,  566,  566,  566,  566,  566,  211, 1161,  115, 1161, 
     8168 
     8169     1161,  947,  948,  947, 1161,  565, 1161, 1161,  711,  949, 
     8170      711, 1161,  950,  712,  712,  712,  712,  712,  712,  712, 
     8171      712,  712,  712,  589,  589,  589,  589,  589,  589,  589, 
     8172      589,  589,  589, 1161,  565,  589,  589,  589,  589,  589, 
     8173      589,  589,  589,  589,  589,  591,  591,  591,  591,  591, 
     8174      591,  591,  591,  591,  591,  591,  591,  591,  591,  591, 
     8175      591,  591,  591,  591,  591,  733, 1161, 1161,  115, 1161, 
     8176      115, 1161, 1161,  115,  947,  948,  947, 1161, 1000, 1001, 
     8177     1000, 1161,  949,  737,  115,  950, 1002,  115, 1161, 1003, 
     8178     1161, 1161, 1161, 1161,  733, 1161, 1161,  115, 1161,  115, 
     8179 
     8180     1161, 1161,  115, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8181     1161,  737,  115,  718,  718,  115,  718,  718,  718,  718, 
     8182      718,  718,  718,  718,  718,  718,  718,  718,  718,  718, 
     8183      734,  718,  735,  735,  735,  735,  735,  735,  735,  735, 
     8184      735,  735,  718,  718,  718,  718,  718,  736,  736,  736, 
     8185      736,  736,  736,  736,  736,  736,  736,  736,  736,  736, 
     8186      736,  736,  736,  736,  736,  736,  736,  736,  736,  736, 
     8187      736,  736,  736,  718,  718,  736,  736,  736,  736,  736, 
     8188      736,  736,  736,  736,  736,  736,  736,  736,  736,  736, 
     8189      736,  736,  736,  736,  736,  736,  736,  736,  736,  736, 
     8190 
     8191      736,  718,  115,  115,  738,  115,  115,  115,  115,  115, 
     8192      115,  115, 1161,  740,  115, 1161, 1161, 1161,  739,  741, 
     8193     1161,  115,  115, 1161,  115,  115, 1161, 1161,  115, 1161, 
     8194     1161,  115,  115,  738,  115,  115,  115,  115,  115,  115, 
     8195      115, 1161,  740,  115, 1161, 1161,  739,  741, 1161,  115, 
     8196      115, 1161,  115,  115,  115,  115,  115,  115, 1161,  115, 
     8197      115,  115,  115, 1161, 1161,  745,  115, 1161, 1161,  742, 
     8198     1161, 1161, 1161,  115,  115,  743,  115, 1161, 1161, 1161, 
     8199      115, 1161, 1161,  115,  115, 1161,  115,  115,  115,  115, 
     8200      115,  115,  115, 1161,  745,  115, 1161,  742,  746, 1161, 
     8201 
     8202     1161,  115,  115,  743,  115, 1161,  115, 1161,  115,  115, 
     8203      115, 1161, 1161,  115,  750,  115,  115,  747,  115, 1161, 
     8204      751,  115, 1161, 1161, 1161, 1161,  746, 1161,  115,  115, 
     8205     1161, 1161,  115, 1161,  115,  115,  115, 1161,  115,  115, 
     8206      115,  115,  115,  750,  115, 1161,  747,  115, 1161,  751, 
     8207     1161, 1161, 1161, 1161,  115,  115,  115,  115,  115, 1161, 
     8208      115, 1161, 1161,  115,  115,  115, 1161, 1161, 1161,  115, 
     8209      115,  761, 1161, 1161,  115,  115, 1161,  115,  762,  115, 
     8210      115, 1161,  115,  115, 1161, 1161, 1161,  115,  763, 1161, 
     8211     1161,  115,  115,  115,  115, 1161,  115, 1161, 1161,  761, 
     8212 
     8213     1161, 1161,  764,  115,  115,  115, 1161,  762,  115,  115, 
     8214      115, 1161,  115,  765,  115, 1161,  763,  115,  768,  115, 
     8215      115,  115,  115,  115, 1161,  115, 1161, 1161, 1161,  766, 
     8216      764,  115, 1161,  115, 1161,  115, 1161,  115,  115,  767, 
     8217      115,  115,  765,  115, 1161, 1161,  115,  768,  115, 1161, 
     8218     1161, 1161,  115,  769,  115,  769, 1161,  766, 1161,  115, 
     8219     1161,  115, 1161,  258,  115,  115, 1161, 1161,  767,  115, 
     8220      257,  257,  257,  257,  257,  257,  257,  257,  257,  257, 
     8221      115, 1161,  115,  115,  770,  115,  115,  115,  115,  115, 
     8222     1161,  115,  115, 1161,  115, 1161, 1161, 1161, 1161,  115, 
     8223 
     8224      771, 1161,  115, 1161, 1161,  115,  115, 1161,  115,  115, 
     8225     1161, 1161,  115, 1161,  115,  115,  115,  115,  115,  115, 
     8226      115,  115, 1161,  115,  115, 1161, 1161,  115,  771, 1161, 
     8227      115, 1161, 1161,  115,  115,  115,  115, 1161,  772,  115, 
     8228      115,  774,  115,  773,  115,  775,  115,  115,  115, 1161, 
     8229     1161,  115, 1161,  115,  115, 1161, 1161, 1161,  115, 1161, 
     8230     1161,  115,  115, 1161,  115,  115,  772,  115,  115,  115, 
     8231      774,  115,  773,  115,  775,  115,  115, 1161, 1161,  776, 
     8232      115,  115,  115,  115, 1161,  115,  115,  777,  115,  115, 
     8233      115,  115,  115,  115,  780, 1161,  115,  115, 1161,  115, 
     8234 
     8235     1161, 1161,  115, 1161,  778,  779, 1161,  776, 1161,  115, 
     8236     1161,  115,  115,  115,  115, 1161,  777,  115, 1161,  115, 
     8237     1161,  115, 1161,  780, 1161, 1161,  115, 1161,  115,  115, 
     8238      115,  781,  778,  779,  115,  115, 1161, 1161, 1161,  115, 
     8239      115,  115, 1161, 1161, 1161, 1161,  782, 1161,  115, 1161, 
     8240     1161, 1161, 1161, 1161,  115, 1161, 1161, 1161,  115, 1161, 
     8241      781,  115, 1161,  115,  115,  115,  115,  783, 1161,  115, 
     8242      115, 1161,  784,  115,  782, 1161,  115,  785,  115, 1161, 
     8243      115, 1161,  115, 1161,  115, 1161, 1161, 1161, 1161, 1161, 
     8244      115, 1161,  115, 1161,  115,  115,  783, 1161,  115,  115, 
     8245 
     8246      784, 1161,  115,  787, 1161,  115,  785,  115,  115,  115, 
     8247      115, 1161,  115,  786,  115, 1161, 1161,  115, 1161, 1161, 
     8248      115, 1161,  788, 1161,  115,  115, 1161,  115,  115,  789, 
     8249      115, 1161,  787, 1161,  115, 1161,  115, 1161,  115,  115, 
     8250     1161,  115,  786,  115,  115,  115, 1161, 1161,  115, 1161, 
     8251      788, 1161,  115,  115,  115,  115,  115,  115,  789,  115, 
     8252     1161,  790,  115, 1161, 1161,  115, 1161,  115,  115,  792, 
     8253      115, 1161,  115,  115,  115, 1161,  115,  115, 1161, 1161, 
     8254     1161, 1161,  115,  115, 1161, 1161,  115,  791,  115, 1161, 
     8255      790,  115, 1161, 1161,  115,  115,  793,  115,  792,  115, 
     8256 
     8257      115,  115,  115,  115,  115,  115,  115, 1161, 1161, 1161, 
     8258     1161, 1161, 1161,  115, 1161,  791,  115, 1161,  795,  115, 
     8259      796, 1161, 1161,  115, 1161,  793,  115, 1161,  115,  115, 
     8260      115,  115, 1161, 1161,  115,  115, 1161,  115, 1161,  797, 
     8261      798,  115,  115, 1161, 1161,  115,  795,  115,  796,  115, 
     8262     1161, 1161, 1161,  115,  115,  115,  115,  115,  115, 1161, 
     8263      115, 1161,  115, 1161, 1161, 1161,  115,  797,  799,  798, 
     8264     1161,  115,  801,  115,  115, 1161,  115,  800,  115,  115, 
     8265      115, 1161,  115,  115,  115,  115,  115,  115, 1161, 1161, 
     8266     1161,  115, 1161,  115, 1161, 1161,  799, 1161, 1161,  115, 
     8267 
     8268      801, 1161, 1161,  115,  115,  800, 1161, 1161,  115,  115, 
     8269     1161, 1161,  176, 1161,  115, 1161, 1161, 1161,  176,  115, 
     8270     1161,  115, 1161,  816,  115, 1161,  110,  115,  111,  111, 
     8271      111,  111,  111,  111,  111,  111,  111,  111,  115,  115, 
     8272      115,  115, 1161, 1161,  115,  115,  819,  817,  115, 1161, 
     8273     1161,  818,  816,  115, 1161, 1161, 1161, 1161,  115,  115, 
     8274      115, 1161, 1161, 1161, 1161, 1161,  115, 1161,  115,  115, 
     8275      115, 1161,  211,  115,  115,  819,  817, 1161, 1161,  818, 
     8276     1161, 1161,  211, 1161, 1161, 1161,  115,  115,  115,  710, 
     8277      710,  710,  710,  710,  710,  710,  710,  710,  710,  710, 
     8278 
     8279      710,  710,  710,  710,  710,  710,  710,  710,  710,  211, 
     8280     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161,  211, 
     8281     1161, 1161, 1161, 1161, 1161, 1161,  712,  712,  712,  712, 
     8282      712,  712,  712,  712,  712,  712,  712,  712,  712,  712, 
     8283      712,  712,  712,  712,  712,  712,  823,  823,  211,  823, 
     8284      823,  823,  823,  823,  823,  823,  823,  823,  823,  823, 
     8285      823,  823,  823,  828,  823,  829,  829,  829,  829,  829, 
     8286      829,  829,  829,  829,  829,  823,  823,  823,  823,  823, 
     8287      830,  830,  830,  830,  830,  830,  830,  830,  830,  830, 
     8288      830,  830,  830,  830,  830,  830,  830,  830,  830,  830, 
     8289 
     8290      830,  830,  830,  830,  830,  830,  823,  823,  830,  830, 
     8291      830,  830,  830,  830,  830,  830,  830,  830,  830,  830, 
     8292      830,  830,  830,  830,  830,  830,  830,  830,  830,  830, 
     8293      830,  830,  830,  830,  823,  832,   77,  832, 1161, 1161, 
     8294      833,  833, 1161,  833, 1161, 1161, 1161,  833,  833, 1161, 
     8295     1161,  833, 1161, 1161,  833,  833,  833,  833,  833,  833, 
     8296      833,  833,  833,  831,  831, 1161,  831,  831,  831,  831, 
     8297      831,  831,  831,  831,  831,  831,  831,  831,  831,  831, 
     8298      841,  831,  842,  842,  842,  842,  842,  842,  842,  842, 
     8299      842,  842,  831,  831,  831,  831,  831,  843,  843,  843, 
     8300 
     8301      843,  843,  843,  843,  843,  843,  843,  843,  843,  843, 
     8302      843,  843,  843,  843,  843,  843,  843,  843,  843,  843, 
     8303      843,  843,  843,  831,  831,  843,  843,  843,  843,  843, 
     8304      843,  843,  843,  843,  843,  843,  843,  843,  843,  843, 
     8305      843,  843,  843,  843,  843,  843,  843,  843,  843,  843, 
     8306      843,  831,  115, 1161, 1161,  258, 1161,  115,  257,  257, 
     8307      257,  257,  257,  257,  257,  257,  257,  257,  115,  845, 
     8308     1161,  844,  115,  115,  115,  115, 1161,  115, 1161, 1161, 
     8309      115,  115, 1161, 1161, 1161, 1161,  115,  115,  115, 1161, 
     8310     1161,  115, 1161, 1161,  846,  115, 1161,  115,  845,  844, 
     8311 
     8312      115,  115,  115,  115,  115, 1161,  115,  115, 1161,  115, 
     8313     1161, 1161,  115, 1161,  115,  115,  115, 1161,  115,  115, 
     8314     1161, 1161,  846,  115,  115, 1161,  115, 1161, 1161,  115, 
     8315      847, 1161, 1161, 1161, 1161, 1161,  115,  115,  848, 1161, 
     8316     1161,  115,  115,  115, 1161,  849, 1161,  115,  115, 1161, 
     8317      115,  115,  115, 1161,  115,  115,  115, 1161,  847,  850, 
     8318     1161,  852,  115,  852, 1161,  115,  848, 1161, 1161,  115, 
     8319      115, 1161,  115,  115,  849, 1161, 1161,  115,  115,  115, 
     8320      115, 1161,  115, 1161,  115,  115,  855,  115,  850, 1161, 
     8321      115, 1161,  115, 1161,  115, 1161,  853,  115,  115,  115, 
     8322 
     8323     1161,  115,  115, 1161, 1161, 1161, 1161,  115, 1161,  854, 
     8324     1161,  115, 1161,  115,  115,  855,  115, 1161,  858,  115, 
     8325      115, 1161, 1161,  115, 1161,  853,  115, 1161,  115,  115, 
     8326     1161,  115, 1161,  115,  115, 1161,  866,  854, 1161,  115, 
     8327     1161,  115, 1161,  115, 1161,  115,  867,  858,  115, 1161, 
     8328     1161,  115, 1161,  115, 1161,  115,  115,  868, 1161, 1161, 
     8329      115,  115, 1161,  115, 1161,  866, 1161, 1161,  115, 1161, 
     8330      115,  115,  115,  115,  867,  869,  115,  115,  115, 1161, 
     8331      115,  115,  871,  115, 1161,  115,  868, 1161, 1161,  870, 
     8332      115,  115, 1161, 1161,  874, 1161, 1161,  115,  115,  115, 
     8333 
     8334      115,  115, 1161,  115,  869,  115,  115,  115,  115, 1161, 
     8335      115,  871,  115,  115,  875,  115,  875,  870,  115,  115, 
     8336      872,  873,  115,  874,  876,  115,  115, 1161,  115,  115, 
     8337     1161,  115,  115, 1161, 1161, 1161, 1161,  115, 1161,  115, 
     8338      877,  115, 1161, 1161,  115,  115,  115,  115,  872,  873, 
     8339      115,  115,  115, 1161,  878,  115, 1161,  115,  115, 1161, 
     8340      115, 1161,  879,  115, 1161,  115,  115,  115,  877,  115, 
     8341     1161,  880,  115,  115,  115,  115,  115,  115, 1161, 1161, 
     8342      115,  115, 1161,  878, 1161, 1161,  115,  115,  115, 1161, 
     8343      115,  879,  115,  115,  115,  115,  115, 1161,  115,  115, 
     8344 
     8345      880,  115, 1161,  115,  115,  115, 1161,  881, 1161,  115, 
     8346      115, 1161, 1161, 1161,  115,  115,  115,  882,  115,  115, 
     8347     1161,  883,  115, 1161,  115, 1161, 1161,  115,  115,  115, 
     8348     1161,  115, 1161,  115, 1161,  881,  115,  115, 1161,  115, 
     8349     1161,  115,  115,  115,  115,  882,  115,  115,  115,  883, 
     8350      115,  115, 1161,  884, 1161,  884,  115,  115, 1161, 1161, 
     8351      115,  115,  115,  115, 1161,  115, 1161, 1161,  115,  115, 
     8352     1161,  115,  115, 1161,  115, 1161,  115,  115,  115,  115, 
     8353     1161,  886,  115,  888, 1161, 1161,  115, 1161,  115,  115, 
     8354      115,  115,  115,  115,  115, 1161, 1161,  115,  887,  115, 
     8355 
     8356     1161,  885,  115,  115, 1161,  115, 1161, 1161,  115,  886, 
     8357      115, 1161,  888,  889, 1161,  115, 1161,  115, 1161,  115, 
     8358      115,  115, 1161,  115,  115, 1161,  887,  115,  115,  885, 
     8359      115,  891,  115,  115, 1161, 1161,  890, 1161,  115,  115, 
     8360     1161,  889, 1161, 1161,  115, 1161,  115, 1161,  115, 1161, 
     8361     1161,  892, 1161,  115, 1161, 1161,  115, 1161,  115, 1161, 
     8362      891,  115,  115, 1161,  890, 1161,  115,  115,  115, 1161, 
     8363      115,  115, 1161,  115,  115,  115,  115, 1161,  895,  892, 
     8364     1161,  115,  115, 1161, 1161, 1161,  115,  115, 1161,  115, 
     8365      115,  115, 1161,  115, 1161,  896,  115,  896,  115,  115, 
     8366 
     8367      115,  115, 1161, 1161,  115,  115, 1161,  895, 1161,  115, 
     8368     1161,  115,  115, 1161, 1161, 1161,  115,  115,  115,  115, 
     8369      115, 1161,  115, 1161,  115,  115,  115,  115,  115,  115, 
     8370      897,  906, 1161,  115, 1161, 1161, 1161, 1161,  898,  115, 
     8371      115, 1161, 1161, 1161, 1161,  115, 1161,  115,  115,  115, 
     8372     1161,  115, 1161,  115,  115,  115,  115,  115, 1161,  897, 
     8373      906, 1161,  115, 1161,  907, 1161,  898,  115, 1161,  908, 
     8374      115,  908, 1161,  115,  258,  115,  802,   77,  804,  175, 
     8375      115, 1161, 1161, 1161, 1161,  115, 1161, 1161, 1161, 1161, 
     8376      909,  115,  907, 1161, 1161,  115,  115, 1161,  115, 1161, 
     8377 
     8378     1161, 1161,  115, 1161, 1161, 1161, 1161,  115, 1161,  115, 
     8379      115,  177,  178, 1161, 1161,  179, 1161,  180, 1161,  909, 
     8380      115,  115, 1161, 1161,  115,  115, 1161, 1161,  341,  182, 
     8381     1161,  115, 1161, 1161, 1161, 1161,  115,  115,  115, 1161, 
     8382      177,  178, 1161, 1161,  179, 1161,  180, 1161, 1161,  115, 
     8383     1161, 1161, 1161, 1161, 1161, 1161,  341,  182,  912,  912, 
     8384      211,  912,  912,  912,  912,  912,  912,  912,  912,  912, 
     8385      912,  912,  912,  912,  912,  914,  912,  915,  915,  915, 
     8386      915,  915,  915,  915,  915,  915,  915,  912,  912,  912, 
     8387      912,  912,  916,  916,  916,  916,  916,  916,  916,  916, 
     8388 
     8389      916,  916,  916,  916,  916,  916,  916,  916,  916,  916, 
     8390      916,  916,  916,  916,  916,  916,  916,  916,  912,  912, 
     8391      916,  916,  916,  916,  916,  916,  916,  916,  916,  916, 
     8392      916,  916,  916,  916,  916,  916,  916,  916,  916,  916, 
     8393      916,  916,  916,  916,  916,  916,  912,  211,  257,  257, 
     8394      257,  257,  257,  257,  257,  257,  257,  257, 1161, 1161, 
     8395     1161, 1161, 1161, 1161,  383,  383,  383,  383,  383,  383, 
     8396      383,  383,  383,  383,  374,  374,  211,  374,  374,  374, 
     8397      374,  374,  374,  374,  374,  374,  374,  374,  374,  374, 
     8398      374,  384,  374,  385,  385,  385,  385,  385,  385,  385, 
     8399 
     8400      385,  385,  385,  374,  374,  374,  374,  374,  386,  386, 
     8401      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     8402      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     8403      386,  386,  386,  386,  374,  374,  386,  386,  386,  386, 
     8404      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     8405      386,  386,  386,  386,  386,  386,  386,  386,  386,  386, 
     8406      386,  386,  374,  115, 1161,  917, 1161,  115,  115,  918, 
     8407      115,  115,  115,  919,  115, 1161,  115, 1161,  920,  115, 
     8408     1161, 1161,  115, 1161,  115, 1161,  115, 1161, 1161, 1161, 
     8409      115, 1161,  115,  115,  917, 1161,  115,  115,  918,  115, 
     8410 
     8411      115,  115,  919,  115,  922,  115, 1161,  920,  115,  115, 
     8412      115,  115,  115, 1161,  115,  921,  115, 1161,  115, 1161, 
     8413      115,  115, 1161,  115, 1161,  115, 1161,  115, 1161, 1161, 
     8414      115,  115,  115,  922,  923, 1161,  115, 1161,  115,  115, 
     8415      115,  927, 1161, 1161,  921,  115,  115, 1161,  928,  115, 
     8416      115,  115,  115, 1161,  115, 1161,  115,  115,  115, 1161, 
     8417      115,  115,  923,  115, 1161,  115, 1161,  115,  115,  927, 
     8418     1161,  115,  115, 1161,  115, 1161,  928,  115,  115, 1161, 
     8419      930,  115,  115,  115, 1161, 1161,  115, 1161,  115, 1161, 
     8420     1161,  938,  115, 1161,  939, 1161, 1161,  115, 1161,  115, 
     8421 
     8422     1161,  115,  115, 1161,  115, 1161,  115, 1161,  930,  115, 
     8423      115, 1161,  115,  115, 1161,  941, 1161,  115,  115,  938, 
     8424     1161,  940,  939,  115, 1161, 1161, 1161, 1161, 1161,  115, 
     8425      115, 1161,  115,  115,  115,  115, 1161, 1161,  115, 1161, 
     8426      115, 1161,  115,  942,  941, 1161, 1161,  115,  115,  940, 
     8427     1161,  115, 1161, 1161,  115, 1161, 1161, 1161,  115, 1161, 
     8428      115,  115, 1161,  115,  115,  943,  115, 1161,  115,  115, 
     8429      115,  942,  944,  115, 1161,  115,  115, 1161, 1161, 1161, 
     8430      115,  945,  115, 1161, 1161, 1161, 1161,  115, 1161,  115, 
     8431      115,  115, 1161,  115,  943,  115,  115,  115,  115,  115, 
     8432 
     8433     1161,  944,  115, 1161,  115, 1161,  951, 1161,  115,  945, 
     8434      952, 1161,  115,  115,  115,  115,  115,  115,  115,  115, 
     8435      115,  115,  115, 1161, 1161,  115, 1161,  115, 1161, 1161, 
     8436     1161, 1161,  115,  115,  951,  115,  115, 1161,  952, 1161, 
     8437      115,  115,  115,  115,  953,  115, 1161,  115,  115, 1161, 
     8438      115, 1161,  115,  115, 1161,  115, 1161,  115,  115,  115, 
     8439      115,  115, 1161,  115,  115,  115, 1161, 1161, 1161, 1161, 
     8440      115,  115,  956,  953, 1161, 1161,  955, 1161,  115,  115, 
     8441     1161,  115,  115,  115,  115, 1161,  115,  115,  115, 1161, 
     8442      115,  115, 1161,  115, 1161,  115,  115, 1161,  115,  115, 
     8443 
     8444      956,  957,  115, 1161,  955, 1161,  115,  115,  115,  115, 
     8445      115,  115, 1161,  115, 1161,  958,  115, 1161, 1161,  115, 
     8446      115,  115,  115,  962,  115,  115,  115,  115,  115,  957, 
     8447      115,  115, 1161, 1161,  115, 1161,  115,  115,  115,  115, 
     8448      115,  115,  115,  969,  958,  115, 1161, 1161,  115,  115, 
     8449     1161,  115,  962,  115, 1161,  960,  115,  115,  115,  115, 
     8450     1161, 1161,  115,  115,  115, 1161,  115,  963,  115,  115, 
     8451      115,  115,  969, 1161, 1161, 1161, 1161,  115,  115, 1161, 
     8452     1161,  115, 1161,  960,  970,  115, 1161, 1161,  115,  115, 
     8453      115,  971, 1161,  115,  115,  115,  963, 1161, 1161, 1161, 
     8454 
     8455      115, 1161, 1161, 1161, 1161, 1161,  115,  211,  115, 1161, 
     8456     1161, 1161,  970,  115, 1161, 1161,  115,  975,  115, 1161, 
     8457      971,  115, 1161,  115,  383,  383,  383,  383,  383,  383, 
     8458      383,  383,  383,  383, 1161,  115,  115,  115, 1161,  115, 
     8459     1161, 1161,  115,  976,  115,  115,  975, 1161,  115, 1161, 
     8460      115, 1161, 1161,  115, 1161, 1161,  115, 1161,  115, 1161, 
     8461     1161, 1161, 1161,  115, 1161,  977,  115,  115,  115,  115, 
     8462      115,  115,  976,  115,  115,  115, 1161,  115,  115, 1161, 
     8463     1161, 1161,  115,  115,  115, 1161,  115, 1161,  115,  978, 
     8464     1161,  979, 1161,  977, 1161,  115, 1161,  115,  115,  115, 
     8465 
     8466     1161,  115, 1161,  115,  115,  115,  115,  115, 1161,  983, 
     8467      115, 1161,  115,  982, 1161, 1161,  115,  978, 1161,  979, 
     8468      115,  115, 1161, 1161,  115,  115,  115,  115,  994,  992, 
     8469      115,  985,  115,  115,  115,  115, 1161, 1161,  983,  115, 
     8470      115,  982, 1161, 1161, 1161, 1161,  115,  115,  115, 1161, 
     8471      115, 1161,  115, 1161, 1161,  115,  115,  994,  992,  115, 
     8472      985,  115,  115,  993,  115,  115,  115, 1161,  115, 1161, 
     8473      115,  115, 1161, 1161,  115,  115, 1161, 1161,  115, 1161, 
     8474     1161, 1161,  115, 1161,  995,  115,  996,  115,  115, 1161, 
     8475     1161,  115,  993,  115,  115,  115,  115, 1161, 1161,  115, 
     8476 
     8477      115,  115,  115, 1161,  997, 1161,  115,  115, 1161, 1161, 
     8478      115,  115,  995,  115,  996, 1161,  115, 1161,  115, 1161, 
     8479      115,  115,  115,  115, 1161,  115, 1161,  115, 1161,  115, 
     8480     1161,  115,  997, 1161, 1161, 1161,  115,  115,  115,  115, 
     8481     1161,  115, 1161,  115,  115, 1004, 1161,  115,  115,  115, 
     8482     1161,  115,  115, 1006, 1161, 1161,  115, 1161,  115,  115, 
     8483     1161, 1161,  115, 1161,  115,  115,  115, 1161,  115,  115, 
     8484      115,  115,  115,  115, 1004,  115, 1161,  115,  115, 1161, 
     8485     1161, 1006, 1161, 1161, 1161,  115,  115, 1007,  115,  115, 
     8486      115, 1161,  115,  115, 1161,  115, 1009,  115, 1161,  115, 
     8487 
     8488      115, 1161, 1161,  115,  115, 1161,  115, 1161,  115,  115, 
     8489     1161,  115, 1161,  115,  115, 1007, 1012,  115, 1161, 1161, 
     8490     1161,  115,  115, 1161, 1161, 1009,  115, 1011,  115,  115, 
     8491     1161, 1161,  115, 1161,  115,  115, 1161,  115,  115,  115, 
     8492      115,  115, 1161,  115, 1012, 1020,  115, 1161,  115, 1019, 
     8493      115, 1161,  115, 1161,  115, 1011,  115,  115,  115, 1161, 
     8494      115,  115, 1161,  115,  115, 1161,  115, 1161,  115,  115, 
     8495      115,  115, 1025,  115, 1020,  115,  115, 1019, 1161, 1161, 
     8496      115,  115,  115, 1161,  115, 1161,  115,  115,  115,  115, 
     8497      115, 1161, 1161,  115, 1161,  115, 1161,  115,  115,  115, 
     8498 
     8499     1025,  115,  115,  115,  115, 1026,  115, 1161,  115,  115, 
     8500     1161, 1161,  115,  115, 1161,  115, 1161, 1161,  115, 1029, 
     8501      115, 1161,  115,  115,  115, 1161, 1030,  115, 1161,  115, 
     8502      115,  115, 1161,  115, 1026,  115, 1161, 1161,  115, 1161, 
     8503      115,  115, 1161,  115,  115,  115,  115, 1029,  115,  115, 
     8504      115,  115, 1161,  115, 1161, 1030, 1038, 1161,  115, 1037, 
     8505      115,  115, 1161,  115,  115, 1161,  115,  115, 1161, 1161, 
     8506      115,  115,  115,  115,  115,  115, 1161, 1161,  115,  115, 
     8507      115, 1161, 1161, 1161, 1038, 1161, 1039, 1037,  115, 1161, 
     8508      115,  115,  115,  115, 1161,  115,  115,  115,  115, 1040, 
     8509 
     8510      115,  115,  115, 1161,  115,  115, 1044, 1161,  115,  115, 
     8511     1161, 1161,  115, 1161, 1039, 1161,  115, 1161, 1161,  115, 
     8512      115, 1161,  115,  115, 1161,  115,  115,  115, 1040,  115, 
     8513     1161,  115, 1161,  115,  115, 1044, 1161,  115,  115,  115, 
     8514      115, 1047,  115, 1161,  115, 1161, 1161,  115, 1161,  115, 
     8515     1161,  115, 1161,  115,  115, 1161,  115, 1048,  115, 1161, 
     8516      115, 1161, 1161, 1161,  115,  115,  115,  115, 1161,  115, 
     8517     1047,  115,  115, 1161, 1161, 1054,  115, 1161, 1161,  115, 
     8518     1059,  115,  115,  115,  115,  115, 1048,  115, 1161,  115, 
     8519      115, 1161, 1161,  115,  115,  115, 1161,  115,  115, 1161, 
     8520 
     8521      115, 1161,  115, 1054,  115,  115, 1161,  115, 1062, 1059, 
     8522      115,  115, 1161, 1161,  115, 1161,  115, 1161, 1161,  115, 
     8523      115, 1161,  115,  115,  115,  115,  115,  115, 1063,  115, 
     8524     1161,  115,  115, 1161, 1161, 1067, 1062, 1161, 1161,  115, 
     8525     1161,  115, 1161,  115,  115, 1161, 1161,  115, 1161,  115, 
     8526     1161,  115,  115,  115,  115, 1068,  115, 1063,  115,  115, 
     8527     1161, 1161, 1161, 1067,  115, 1161,  115,  115,  115,  115, 
     8528      115,  115, 1069,  115, 1073,  115,  115, 1161,  115, 1161, 
     8529     1161,  115, 1161, 1161, 1068, 1161, 1161,  115,  115,  115, 
     8530      115,  115, 1161,  115,  115,  115,  115,  115, 1161,  115, 
     8531 
     8532     1161, 1069,  115, 1073,  115, 1161,  115,  115, 1161,  115, 
     8533     1080, 1161,  115, 1161, 1161,  115,  115,  115, 1161,  115, 
     8534      115,  115, 1161,  115,  115,  115,  115, 1087,  115, 1161, 
     8535     1161, 1161, 1161, 1161, 1088,  115,  115,  115, 1080,  115, 
     8536     1161,  115,  115, 1161,  115,  115,  115, 1161,  115, 1161, 
     8537      115,  115,  115,  115,  115, 1161, 1087,  115,  115, 1091, 
     8538     1161, 1161, 1088,  115, 1161,  115, 1161,  115,  115,  115, 
     8539      115,  115, 1095,  115,  115,  115,  115,  115, 1161, 1161, 
     8540      115, 1161,  115, 1161, 1161, 1161,  115, 1091,  115, 1161, 
     8541      115,  115, 1161,  115,  115,  115,  115, 1161,  115,  115, 
     8542 
     8543      115, 1095, 1106,  115, 1161,  115, 1161, 1161, 1161, 1161, 
     8544      115, 1161, 1161,  115, 1105, 1161,  115,  115,  115, 1161, 
     8545      115, 1108,  115,  115,  115,  115, 1161, 1161,  115,  115, 
     8546     1161, 1106, 1161, 1161, 1161, 1161,  115, 1161,  115, 1161, 
     8547      115,  115, 1105,  115, 1112,  115,  115,  115, 1161,  115, 
     8548     1108,  115,  115,  115,  115, 1161, 1161, 1161,  115,  115, 
     8549     1161, 1122, 1161, 1161,  115, 1161,  115, 1161,  115,  115, 
     8550     1161,  115, 1112, 1161,  115, 1161,  115, 1161,  115, 1161, 
     8551     1161,  115, 1161,  115, 1161, 1161, 1161,  115, 1161, 1122, 
     8552     1161, 1161, 1161, 1161,  115, 1161,  115, 1124,  948, 1124, 
     8553 
     8554     1161, 1161, 1125, 1125, 1161, 1125, 1161, 1161, 1161, 1125, 
     8555     1125, 1161, 1161, 1125, 1161, 1161, 1125, 1125, 1125, 1125, 
     8556     1125, 1125, 1125, 1125, 1125,  115,  115, 1161, 1161, 1161, 
     8557      115,  115, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1133, 
     8558     1161, 1161, 1128, 1161,  115,  115, 1161, 1161, 1161, 1161, 
     8559     1161, 1161, 1161, 1161,  115,  115, 1161, 1161, 1161,  115, 
     8560      115, 1161, 1161, 1161, 1161, 1161, 1161, 1133, 1161, 1161, 
     8561     1128, 1161,  115,  115,  947,  948,  947, 1161, 1161, 1134, 
     8562     1134, 1161, 1135, 1161,  115,  950, 1134, 1134, 1137,  115, 
     8563     1134, 1161, 1161, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 
     8564 
     8565     1134, 1134, 1161,  115,  115,  115, 1161, 1161, 1161,  115, 
     8566      115, 1161, 1161,  115, 1161, 1161, 1161, 1137,  115, 1161, 
     8567     1161, 1161, 1161,  115,  115, 1161, 1161, 1161, 1161, 1161, 
     8568     1161,  115, 1161,  115,  115, 1161, 1161, 1161,  115,  115, 
     8569     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8570     1161,  115,  115,   64,   64,   64,   64,   64,   64,   64, 
     8571       64,   64,   64,   64,   64,   65,   65,   65,   65,   65, 
     8572       65,   65,   65,   65,   65,   65,   65,   81,   81, 1161, 
     8573       81,   81,   81,   81,   81,   81,   81,   81,   81,   84, 
     8574       84, 1161,   84,   84,   84,   84,   84,   84,   84,   84, 
     8575 
     8576       84,   88,   88,   88,   88,   88,   88,   88,   88,   88, 
     8577       88,   88,   88,   92,   92,   92,   92,   92,   92,   92, 
     8578       92,   92,   92,   92,   92,  111,  111,  115,  115,  115, 
     8579      115,  115,  115,  115,  115,  187,  187,  187,  187,  187, 
     8580      187,  187,  187,  187,  187,  187,  187,  202,  202,  202, 
     8581      202,  202,  202,  202,  202,  202,  202,  202,  202,  209, 
     8582      209,  209,  209,  209,  209, 1161,  209,  209,  209, 1161, 
     8583      209,  232,  232,  232,  232,  232,  232,  232,  232,  232, 
     8584      232,  232,  232,  101, 1161, 1161,  101,  252,  252,  252, 
     8585     1161, 1161,  252, 1161,  252,  252, 1161,  252,  252,  343, 
     8586 
     8587      343,  343,  343,  343,  343,  343,  343,  343,  343,  343, 
     8588      343,  358,  358, 1161,  358,  358,  358,  358,  358,  358, 
     8589      358,  358,  358,  371,  371,  371,  371,  371,  371, 1161, 
     8590      371,  371,  371, 1161,  371,  374,  374,  374,  374,  374, 
     8591      374,  374,  374,  374,  374,  374,  374,  379,  379,  379, 
     8592      379,  379,  379,  379,  379,  379,  379,  379,  379,  422, 
     8593     1161, 1161,  422,  276, 1161, 1161, 1161,  276, 1161, 1161, 
     8594     1161, 1161, 1161,  276,  558,  558,  558,  558,  558,  558, 
     8595      558,  558,  558,  558,  558,  558,  718,  718, 1161,  718, 
     8596      718,  718,  718,  718,  718,  718,  718,  718,  721,  721, 
     8597 
     8598     1161,  721,  721,  721,  721,  721,  721,  721,  721,  721, 
     8599      723,  723, 1161,  723,  723,  723,  723,  723,  723,  723, 
     8600      723,  723,   88,   88,   88,   88,   88,   88,   88,   88, 
     8601       88,   88,   88,   88,  726,  726,  726,  726,  726,  726, 
     8602      726,  726,  726,  726,  726,  726,   92,   92,   92,   92, 
     8603       92,   92,   92,   92,   92,   92,   92,   92,  728,  728, 
     8604      728,  728,  728,  728,  728,  728,  728,  728,  728,  728, 
     8605      812,  812,  812,  812,  812,  812,  812,  812,  812,  812, 
     8606      812,  812,  814,  814, 1161,  814,  814,  814,  814,  814, 
     8607      814,  814,  814,  814,  823,  823,  823,  823,  823,  823, 
     8608 
     8609      823,  823,  823,  823,  823,  823,  825,  825,  825,  825, 
     8610      825,  825,  825,  825,  825,  825,  825,  825,  831,  831, 
     8611     1161,  831,  831,  831,  831,  831,  831,  831,  831,  831, 
     8612      834,  834, 1161,  834,  834,  834,  834,  834,  834,  834, 
     8613      834,  834,   81,   81, 1161,   81,   81,   81,   81,   81, 
     8614       81,   81,   81,   81,  835,  835, 1161,  835,  835,  835, 
     8615      835,  835,  835,  835,  835,  835,   84,   84, 1161,   84, 
     8616       84,   84,   84,   84,   84,   84,   84,   84,  837,  837, 
     8617      837,  837,  837,  837,  837,  837,  837,  837,  837,  837, 
     8618       88,   88,   88,   88,   88,   88,   88,   88,   88,   88, 
     8619 
     8620       88,   88,  838,  838,  838,  838,  838,  838,  838,  838, 
     8621      838,  838,  838,  838,   92,   92,   92,   92,   92,   92, 
     8622       92,   92,   92,   92,   92,   92,  187,  187,  187,  187, 
     8623      187,  187,  187,  187,  187,  187,  187,  187,  904,  904, 
     8624      904,  904,  904,  904,  904,  904,  904,  904,  904,  904, 
     8625      358,  358, 1161,  358,  358,  358,  358,  358,  358,  358, 
     8626      358,  358,  814,  814, 1161,  814,  814,  814,  814,  814, 
     8627      814,  814,  814,  814,  202,  202,  202,  202,  202,  202, 
     8628      202,  202,  202,  202,  202,  202,  912,  912,  912,  912, 
     8629      912,  912,  912,  912,  912,  912,  912,  912,  374,  374, 
     8630 
     8631      374,  374,  374,  374,  374,  374,  374,  374,  374,  374, 
     8632      379,  379,  379,  379,  379,  379,  379,  379,  379,  379, 
     8633      379,  379,  825,  825,  825,  825,  825,  825,  825,  825, 
     8634      825,  825,  825,  825,  946,  946,  946,  946,  946,  946, 
     8635      946,  946,  946,  946,  946,  946,  999,  999,  999,  999, 
     8636      999,  999,  999,  999,  999,  999,  999,  999,   13, 1161, 
     8637     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8638     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8639     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8640     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8641 
     8642     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8643     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8644     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8645     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     8646     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161 
    108268647    } ; 
    108278648 
    10828 static yyconst short int yy_chk[4253] = 
     8649static yyconst flex_int16_t yy_chk[9249] = 
    108298650    {   0, 
    108308651        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
     
    108348655        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    108358656        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    10836         1,    1,    1,    2,    2,    2,    2,    8,   10,    8, 
    10837        15,   16,   15,   16,   22,   17,   14,   17,   18,   25, 
    10838        19,    2,    2,    2,    2,    2,    2,    2,    2,    2, 
    10839        14,   20,   18,   10,   21,   23,   24,   26,   29,   28, 
    10840  
    10841         2,    2,   23,   23,    2,   20,   30,   25,   21,   31, 
    10842        15,   26,   33,   22,  986,   17,   19,    2,    2,   24, 
    10843        30,   25,   29,   31,   15,  172,   33,   22,   28,   17, 
    10844        19,   32,  172,   24,   23,   53,   29,   53,   80,   70, 
    10845        32,   70,   28,   40,   36,   36,   36,   40,   23,   27, 
    10846        40,   27,   79,   40,   32,   36,   57,   40,   84,   40, 
    10847        65,  986,   36,   36,   71,   65,   71,   27,   27,   27, 
    10848        27,   27,   27,   27,   27,   27,   72,   41,   72, 1121, 
    10849        73,   41,   73,   79,   27,   57,   80,   41,   27,   27, 
    10850        27,   41,   42,   42,   83,   27,   42,   27,   27,   57, 
    10851  
    10852        42,   42,   42,   27,  207,  118,   42,   27,   34,   84, 
    10853        34,   34,   34,   34,   34,   34,   34,   34,   34,   37, 
    10854        37,   37,  118,   94,   94,   43,   37,  180,   83,   43, 
    10855        37,  119,   34,   37,   85,   43,   94,   37,   37,   43, 
    10856       207,   85,   85,   37,   97,  119,   34,   35,  119,   35, 
    10857        35,   35,   35,   35,   35,   35,   35,   35,   98,   97, 
    10858        48,  180,   38,   38,   48,   38,   99,   35,   35,   38, 
    10859        48,   35,   38,   98,   48,   38,   99,   35,  117,   38, 
    10860        38,   39,   39, 1115,   35,   35,   44,  208,  205,  117, 
    10861        44,   39,  234,   39,   44,  117,   39,   39,   39,   39, 
    10862  
    10863        44,   45,   46,   39,   44,   45,   46,  205,  208,   45, 
    10864        61,   46,   46,   46,   61,   45,   46,   47,   46,   45, 
    10865        61,   47,   49,   55,   61,   47,   49,  234,   55,  181, 
    10866        49,   47,   50,  158,   47,   47,   49,   47,   49,   50, 
    10867        49,   49,   49,   50,   51,  194,   50,  158,  122,   50, 
    10868        59,   51,  169,   56,   59,   51,   50,   59,   51,   56, 
    10869        59,   51,   55,  181,   59,  122,  169,   56,   51,   52, 
    10870      1152,   52,   52,   60, 1152,  104,   55,   52,   87,  194, 
    10871        60,   66,   66,   66,   60,   87,   87,   60, 1100,  229, 
    10872        60,   56,  168,   66,   86,   86,   86,   60,  168,  104, 
    10873  
    10874       217,  129,   86,   86,   89,   56,   52,   52,   90,   52, 
    10875        52,   89,   89,  104,  126,   90,   90,  116,  129,  116, 
    10876       121,   66,  121,   52,   52,   54,   54,   54,   54,  229, 
    10877       177,  126,  126,   54,  116,   66,  177,  121,   89,  127, 
    10878       120,  540,  127,   54,   54,   54,   54,   54,   54,   54, 
    10879        54,   54,  120,  120,  217, 1096,  127,  120,  120,   90, 
    10880       133,  137,   54,   54,  540,   54,   54,  106,  106,  106, 
    10881       106,  106,  106,  106,  106,  106,  137,  133,  137,   54, 
    10882        54,   67,   67,   67,   67,   67,   67,   67,   67,   67, 
    10883        67,   67,   67,   67,   67,   67,   67,   67,   67,   67, 
    10884  
    10885        67,   67,   67,   67,   67,   67,   67,   67,   67,   67, 
    10886        67,   67,   67,   67,   67,   67,   67,   67,   67,   67, 
    10887        67,   67,   67,   67,   67,   67,   67,   67,   67,   67, 
    10888        67,   67,   67,   67,   67,   67,   67,   67,   67,   67, 
    10889        67,   67,   67,   67,   93,  182,   93,  108,  108,  107, 
    10890       109,  108,  214,  123,  109,  109,  377,  108,  109,  338, 
    10891       125,  108,  108,  378,  109,  123,  200, 1093,  109,  109, 
    10892       123,  125,  107,  107,  111,  111,  107,  125,  111,   93, 
    10893       128,  132,  107,   93,  111,   93,  107,  107,  111,  111, 
    10894        93,  377,   93,   93,  214,  132,  182,  128,  132,  338, 
    10895  
    10896       128,  134,   93,  103,  103,  103,  103,  103,  103,  103, 
    10897       103,  103,  110,  110,  134,  378,  110,  200,  134,  216, 
    10898       152,  152,  110,  103,  103,  110,  110,  110,  112,  112, 
    10899       113,  113,  112,  131,  113,  183,  103,  152,  112,  143, 
    10900       113,  183,  112,  112,  131,  114,  114,  113,  113,  114, 
    10901       131,  143,  135,  115,  135,  114,  143,  115,  115,  114, 
    10902       114,  115,  139,  184,  216,  520,  130,  115,  139,  184, 
    10903       115,  115,  115,  124,  130,  124,  368,  184,  206,  139, 
    10904       136,  130,  136,  130,  140,  130,  138,  135,  138,  124, 
    10905       136,  124,  124,  124,  124,  124,  124,  124,  124,  124, 
    10906  
    10907       138,  140,  138,  138,  135,  138,  135,  140,  141,  142, 
    10908       144,  206,  142,  368,  367,  136,  145,  520,  336,  157, 
    10909       146,  141,  148,  144,  336,  141,  142,  144,  124,  145, 
    10910       124,  146,  136,  145,  147,  149,  157,  146,  147,  148, 
    10911       150,  148,  151,  153,  367,  153,  154,  155,  150, 1091, 
    10912       151,  147,  149,  147,  263,  149,  151,  150,  155,  151, 
    10913       153,  153,  153,  154,  155,  153,  156,  154,  159,  159, 
    10914       161,  160,  156,  162,  161,  196,  196,  196,  163,  156, 
    10915       159,  162,  163,  156,  160,  159,  164,  161,  160,  165, 
    10916       162,  165,  165,  263,  164,  163,  166,  165,  166,  166, 
    10917  
    10918       189,  186,  352,  164,  166,  185,  188,  185,  174,  215, 
    10919       174,  174,  186,  211,  189,  211,  174,  189,  186,  186, 
    10920       548,  190,  199,  188,  191,  188,  165,  165,  191,  225, 
    10921       165,  225,  369,  166,  166,  187,  190,  166,  190,  340, 
    10922       185,  191,  352,  165,  165,  174,  174,  187,  187,  174, 
    10923       166,  166,  187,  187,  185,  548,  199,  201,  201,  201, 
    10924       215,  218,  174,  174,  176,  176,  176,  176,  218,  218, 
    10925       221,  369,  176,  224,  226,  357,  226,  221,  221, 1086, 
    10926       224,  224,  176,  176,  176,  176,  176,  176,  176,  176, 
    10927       176,  223,  201,  340, 1084,  219,  219,  219,  223,  223, 
    10928  
    10929       245,  176,  176,  219,  219,  176,  201,  220,  220,  220, 
    10930       227,  245,  227,  239,  239,  220,  220,  245,  176,  176, 
    10931       202,  240,  241,  240,  241,  337,  239,  224,  242,  357, 
    10932       242,  337,  343,  373,  343,  373,  223,  202,  202,  202, 
    10933       202,  202,  202,  202,  202,  202,  203,  203,  203,  203, 
    10934       203,  203,  203,  203,  203,  203,  203,  203,  203,  203, 
    10935       203,  203,  203,  203,  203,  203,  203,  203,  203,  203, 
    10936       203,  203,  203,  203,  203,  203,  203,  203,  203,  203, 
    10937       203,  203,  203,  203,  203,  203,  203,  203,  203,  203, 
    10938       203,  203,  203,  203,  203,  203,  203,  203,  203,  203, 
    10939  
    10940       203,  203,  203,  203,  203,  203,  203,  203,  203,  246, 
    10941       247,  249,  517,  248,  280,  370,  280,  252,  517,  250, 
    10942       251, 1080,  254,  255,  280,  249,  246,  252,  249,  246, 
    10943       248,  248,  250,  251,  252,  247,  250,  251,  253,  254, 
    10944       255,  255,  256,  257,  258,  370,  261,  259, 1078,  253, 
    10945       261,  258,  247,  266,  256,  253,  260,  256,  259,  256, 
    10946       257,  258,  257,  261,  259,  264,  264,  260,  265,  269, 
    10947       266,  272,  267,  260,  275,  265,  267,  269,  271,  270, 
    10948       541,  270,  264,  273, 1074,  265,  269,  273,  272,  267, 
    10949       268,  275,  268,  276,  274,  271,  271,  271,  274,  277, 
    10950  
    10951       273,  277,  278,  541,  278,  276,  282,  279, 1070,  270, 
    10952       276,  274,  297, 1069,  270,  283,  277,  282,  284,  285, 
    10953       268,  279,  339,  282,  279,  268,  283, 1066,  268,  297, 
    10954       268,  270,  283,  268,  361,  284,  285,  268,  284,  285, 
    10955       268,  286,  268,  268,  268,  286,  287,  268,  290,  288, 
    10956       289,  288,  289,  291,  287,  292,  278,  291,  286,  288, 
    10957       289,  298,  293,  287,  294,  290,  293,  339,  290,  295, 
    10958       291, 1063,  292,  299,  292,  296,  300,  316,  298,  293, 
    10959       361,  294,  295,  296,  288,  289,  295,  301,  294,  300, 
    10960       299,  299,  296,  300,  316,  288,  289,  302,  303,  305, 
    10961  
    10962       301,  288,  289,  302,  301,  288,  289,  304,  301,  303, 
    10963       304,  306,  307,  308,  302,  303,  305, 1061,  304,  305, 
    10964       311,  308,  309,  310,  304,  313,  309,  310,  306,  307, 
    10965       308,  306,  307,  311,  312,  314,  376,  311,  315,  309, 
    10966       310,  312,  313,  318,  313,  320,  317,  321,  317,  322, 
    10967       318,  312,  314,  315,  314,  315,  317,  319,  320,  321, 
    10968       318,  323,  320,  319,  321,  324,  322,  324,  324,  341, 
    10969       356,  347,  346,  324,  319,  341,  346,  351,  323,  348, 
    10970       323,  317, 1048,  341,  325,  376,  325,  325,  347,  346, 
    10971       347,  327,  325,  327,  327, 1056,  348,  360,  317,  327, 
    10972  
    10973       349,  349,  324,  324,  379,  519,  324,  350,  531,  414, 
    10974       351,  350,  354,  354,  354,  356,  408,  349,  408,  324, 
    10975       324,  325,  325,  380,  350,  325,  414,  351,  327,  327, 
    10976       380,  380,  327,  359,  359,  359, 1048,  360,  325,  325, 
    10977       411,  410,  379,  410,  381,  327,  327,  335,  335,  335, 
    10978       335,  381,  381,  382, 1055,  335,  519,  411,  411,  531, 
    10979       382,  382,  445, 1051,  445,  335,  335,  335,  335,  335, 
    10980       335,  335,  335,  335,  383,  383,  383,  383,  383,  383, 
    10981       383,  383,  383,  518,  335,  335,  401,  401,  335,  518, 
    10982       542,  382,  445,  545, 1050,  545,  381,  416,  415,  401, 
    10983  
    10984       415,  335,  335,  362,  384,  384,  384,  384,  384,  384, 
    10985       384,  384,  384,  542,  416,  415,  521,  652, 1049,  652, 
    10986       362,  362,  362,  362,  362,  362,  362,  362,  362,  385, 
    10987       385,  385,  385,  385,  385,  385,  385,  385,  417,  418, 
    10988       532,  362,  363,  386,  386,  386,  386,  386,  386,  386, 
    10989       386,  386,  656,  533,  521,  417,  418,  418,  656,  363, 
    10990       363,  363,  363,  363,  363,  363,  363,  363,  387,  387, 
    10991       387,  387,  387,  387,  387,  387,  387,  419,  420,  422, 
    10992       363,  366,  388,  388,  388,  388,  388,  388,  388,  388, 
    10993       388,  533,  532,  422,  419,  420,  422, 1044,  366,  366, 
    10994  
    10995       366,  366,  366,  366,  366,  366,  366,  402,  402,  402, 
    10996       402,  402,  402,  402,  402,  402,  403,  403,  403,  403, 
    10997       403,  403,  403,  403,  403,  404,  404,  404,  404,  404, 
    10998       404,  404,  404,  404,  405,  405,  405,  405,  405,  405, 
    10999       405,  405,  405,  406,  406,  406,  406,  406,  406,  406, 
    11000       406,  406,  407,  407,  407,  407,  407,  407,  407,  407, 
    11001       407,  412,  421,  423,  424,  412,  421,  425,  535,  426, 
    11002       428,  427,  424,  426,  423,  432, 1042,  436,  412,  421, 
    11003       423,  424,  427,  428,  425,  430,  426,  428,  427,  431, 
    11004       437,  436,  432,  432,  436, 1022,  430,  431,  433,  438, 
    11005  
    11006       433,  439,  430,  440,  438,  441,  431,  437,  539,  441, 
    11007       437,  442,  438,  444,  443,  439,  438,  535,  439,  447, 
    11008       440,  443,  441,  449,  450,  441,  450,  451,  442,  584, 
    11009       444,  443,  452,  433,  444,  442,  447,  584,  447,  780, 
    11010       449,  433, 1022,  453,  451,  539,  451,  455,  457,  452, 
    11011       433,  657,  458,  456,  450,  433,  434,  657,  434,  450, 
    11012       453,  456,  453,  587,  455,  457,  459,  460,  457,  458, 
    11013       456,  458, 1040,  460,  459,  462,  450,  462,  780,  587, 
    11014       460,  461, 1038,  459,  460,  463,  434,  463,  465,  461, 
    11015       466,  467,  462,  467,  434,  463,  434, 1031,  461,  434, 
    11016  
    11017      1029,  467,  465,  434,  553,  465,  434,  466,  470,  434, 
    11018       434,  553,  553,  434,  448,  448,  448,  448,  448,  448, 
    11019       448,  448,  448,  448,  448,  470,  448,  448,  448,  448, 
    11020       448,  448,  448,  448,  448,  448,  448,  448,  448,  448, 
    11021       448,  448,  448,  448,  448,  448,  448,  448,  448,  448, 
    11022       448,  448,  448,  448,  448,  448,  448,  448,  448,  448, 
    11023       448,  448,  448,  448,  448,  448,  448,  448,  448,  448, 
    11024       448,  448,  448,  448,  448,  448,  448,  469,  471,  472, 
    11025       473,  474,  475,  476,  663, 1028,  663,  477, 1025,  471, 
    11026       472,  469,  480,  478,  469,  471,  472,  473,  474,  475, 
    11027  
    11028       476,  477,  479,  481,  477,  478,  479,  482,  483,  480, 
    11029       478,  480,  485,  484,  486,  487,  488,  489,  490,  479, 
    11030       481,  484,  481,  491,  482,  483,  492,  488,  492,  485, 
    11031       484,  490,  487,  488,  489,  490,  493,  486,  494,  495, 
    11032       491,  496,  497,  492,  501,  503,  498,  499,  502,  499, 
    11033       504,  534,  502,  493,  486,  494,  658,  499,  496,  497, 
    11034       498,  501,  503,  498,  495,  502,  505,  504,  506, 1024, 
    11035       505,  507,  506,  507,  507,  528,  522,  550, 1018,  507, 
    11036       563,  495,  522,  505,  563,  506,  508,  682,  508,  508, 
    11037       522, 1017,  528,  509,  508,  509,  509,  563,  658,  526, 
    11038  
    11039       565,  509,  534,  527,  525,  527,  525,  526,  507,  507, 
    11040       682,  668,  507,  668,  525,  550,  526,  565,  566,  568, 
    11041       567,  552,  567,  508,  508,  507,  507,  508,  552,  552, 
    11042       509,  509, 1015,  566,  509,  566,  568,  567,  527,  525, 
    11043       508,  508,  525, 1012,  529,  572,  529,  509,  509,  516, 
    11044       516,  516,  516, 1021,  529,  527,  525,  516,  529,  552, 
    11045       570,  789,  572,  569,  570,  571,  574,  516,  516,  516, 
    11046       516,  516,  516,  516,  516,  516,  569,  570,  571,  529, 
    11047       569,  573,  571,  574,  574,  576,  516,  516, 1021,  576, 
    11048       516,  607,  785,  607,  785,  573,  529, 1011,  573,  590, 
    11049  
    11050       789,  592,  576,  516,  516,  536,  559,  559,  559,  559, 
    11051       559,  559,  559,  559,  559, 1009,  590,  536,  592,  536, 
    11052       982,  607,  536,  536,  536,  536,  536,  536,  536,  536, 
    11053       536,  537,  560,  560,  560,  560,  560,  560,  560,  560, 
    11054       560, 1001,  659,  677,  677,  677,  999,  997,  537,  537, 
    11055       537,  537,  537,  537,  537,  537,  537,  561,  561,  561, 
    11056       561,  561,  561,  561,  561,  561,  593,  996,  982,  537, 
    11057       538,  562,  562,  562,  562,  562,  562,  562,  562,  562, 
    11058       659,  580,  538,  593,  538,  593,  580,  538,  538,  538, 
    11059       538,  538,  538,  538,  538,  538,  564,  564,  580,  564, 
    11060  
    11061       564,  564,  564,  564,  564,  564,  564,  564,  564,  564, 
    11062       564,  564,  564,  564,  564,  564,  564,  564,  564,  564, 
    11063       564,  564,  564,  564,  564,  564,  564,  564,  564,  564, 
    11064       564,  564,  564,  564,  564,  564,  564,  564,  564,  564, 
    11065       564,  564,  564,  564,  564,  564,  564,  564,  564,  564, 
    11066       564,  564,  564,  564,  564,  564,  564,  564,  564,  577, 
    11067       578,  579,  581,  579,  596,  591,  595,  578,  594,  581, 
    11068       577,  594,  597,  597,  600,  596,  577,  578,  591,  581, 
    11069       595,  596,  591,  595,  598,  594,  599,  992,  991,  597, 
    11070       599,  600,  601, 1153,  601,  604,  673, 1153,  605,  598, 
    11071  
    11072       609,  598,  610,  599,  579,  603,  603,  603,  603,  603, 
    11073       603,  603,  603,  603,  604,  605,  606,  609,  579,  610, 
    11074       611,  610,  601,  613,  615,  613,  616,  601,  611,  606, 
    11075       617,  604,  614,  606,  617,  614,  618,  611,  673,  620, 
    11076       613,  615,  621,  616,  601,  619,  622,  617,  622,  614, 
    11077       619,  676,  620,  618,  623,  618,  620,  625,  624,  621, 
    11078       624,  627,  619,  622,  628,  623,  626,  630,  625,  627, 
    11079       626,  623,  629,  632,  625,  624,  629,  628,  627,  633, 
    11080       634,  628,  631,  626,  630,  635,  631,  635,  637,  629, 
    11081       632,  638,  640,  676,  639,  640,  633,  634,  633,  631, 
    11082  
    11083       641,  643,  635,  644,  984,  637,  637,  639,  638,  640, 
    11084       638,  639,  645,  646,  650,  792,  650,  641,  643,  641, 
    11085       644,  643,  644,  647,  650,  647,  647,  661,  983,  645, 
    11086       646,  647,  648,  661,  648,  648,  664,  654,  664,  654, 
    11087       648,  661,  649,  674,  649,  649,  664,  654,  667,  666, 
    11088       649,  654,  650,  666,  792,  696,  667,  794,  794,  794, 
    11089       647,  647,  696,  696,  647,  667,  666,  704,  697,  648, 
    11090       648,  669,  703,  648,  664,  697,  697,  647,  647,  649, 
    11091       649,  674,  669,  649,  704,  938,  648,  648,  669,  980, 
    11092       672,  703,  672,  670,  977,  670,  649,  649,  655,  655, 
    11093  
    11094       655,  655,  698,  670,  672,  705,  655,  670,  703,  698, 
    11095       698,  702,  702,  702,  702,  702,  702,  702,  702,  702, 
    11096       706,  707,  705,  938,  705,  708,  709,  710,  711,  716, 
    11097       711,  719,  714,  712,  714,  655,  655,  706,  707,  655, 
    11098       707,  712,  708,  709,  710,  711,  716,  710,  719,  709, 
    11099       712,  715,  655,  655,  678,  715,  740,  975,  740,  819, 
    11100       870,  819,  870,  876,  736,  876,  720,  714,  715,  714, 
    11101       720,  678,  678,  678,  678,  678,  678,  678,  678,  678, 
    11102       679,  736,  714,  720,  714,  915,  740,  915,  972,  956, 
    11103       731,  732,  731,  733,  738,  732,  819,  679,  679,  679, 
    11104  
    11105       679,  679,  679,  679,  679,  679,  680,  731,  732,  819, 
    11106       733,  738,  871,  733,  955,  954,  734,  735,  742,  748, 
    11107       749,  735,  734,  680,  680,  680,  680,  680,  680,  680, 
    11108       680,  680,  681,  734,  735,  742,  748,  749,  765,  805, 
    11109       765,  935,  965,  935,  965,  871,  805,  805,  765,  681, 
    11110       681,  681,  681,  681,  681,  681,  681,  681,  684,  684, 
    11111       684,  684,  684,  684,  684,  684,  684,  684,  684,  684, 
    11112       684,  684,  684,  684,  684,  684,  684,  684,  684,  684, 
    11113       684,  684,  684,  684,  684,  684,  684,  684,  684,  684, 
    11114       684,  684,  684,  684,  684,  684,  684,  684,  684,  684, 
    11115  
    11116       684,  684,  684,  684,  684,  684,  684,  684,  684,  684, 
    11117       684,  684,  684,  684,  684,  684,  684,  684,  684,  684, 
    11118       684,  688,  688,  806,  688, 1007,  953, 1007,  688,  688, 
    11119       806,  806,  688,  952,  951,  688,  688,  688,  688,  688, 
    11120       688,  688,  688,  701,  701,  949,  701,  701,  701,  701, 
    11121       701,  701,  701,  701,  701,  701,  701,  701,  701,  701, 
    11122       701,  701,  701,  701,  701,  701,  701,  701,  701,  701, 
    11123       701,  701,  701,  701,  701,  701,  701,  701,  701,  701, 
    11124       701,  701,  701,  701,  701,  701,  701,  701,  701,  701, 
    11125       701,  701,  701,  701,  701,  701,  701,  701,  701,  701, 
    11126  
    11127       701,  701,  701,  701,  701,  701,  737,  739,  744,  743, 
    11128       737,  743,  745,  746,  750, 1111,  751,  746,  739,  743, 
    11129       745,  753,  744,  737,  739,  744,  752,  946,  747,  745, 
    11130       746,  750,  747,  751,  751,  754,  755,  752,  753,  756, 
    11131       757,  758,  757,  752,  743,  747,  759,  760,  761, 1111, 
    11132       762,  764,  754,  755,  762,  767,  756,  763,  758,  758, 
    11133       768,  743,  766,  759,  760,  761,  760,  762,  764,  763, 
    11134       766,  769,  767, 1068,  763,  757,  770,  768,  770,  766, 
    11135       771,  772,  773,  810,  773,  773,  786,  934,  769,  814, 
    11136       757,  786,  757,  774,  945,  774,  774,  771,  772,  771, 
    11137  
    11138       810,  774,  775,  786,  775,  775,  814,  788,  787,  788, 
    11139       809,  770,  865,  770,  865,  812,  816,  812,  811,  773, 
    11140       773,  787,  811,  773,  934,  787, 1068,  821,  770,  809, 
    11141       774,  774,  812,  816,  774,  811,  773,  773,  817,  775, 
    11142       775,  813,  788,  775,  821,  813,  809,  774,  774,  865, 
    11143       933, 1036,  817, 1036,  932,  817,  775,  775,  813,  788, 
    11144       795,  795,  795,  795,  795,  795,  795,  795,  795,  795, 
    11145       795,  795,  795,  795,  795,  795,  795,  795,  795,  795, 
    11146       795,  795,  795,  795,  795,  795,  795,  795,  795,  795, 
    11147       795,  795,  795,  795,  795,  795,  795,  795,  795,  795, 
    11148  
    11149       795,  795,  795,  795,  795,  795,  795,  795,  795,  795, 
    11150       795,  795,  795,  795,  795,  795,  795,  795,  795,  795, 
    11151       795,  795,  795,  796,  808,  808,  808,  808,  808,  808, 
    11152       808,  808,  808,  815,  822,  820,  825,  815,  834,  835, 
    11153       796,  796,  796,  796,  796,  796,  796,  796,  796,  820, 
    11154       815,  822,  820,  825,  836,  834,  835,  834,  837,  838, 
    11155       839,  838,  840,  841,  842,  836,  929,  841,  842,  927, 
    11156       922,  836,  843,  846,  839,  837,  838,  839,  845,  840, 
    11157       841,  842,  844,  843,  844,  845,  846,  847,  845,  843, 
    11158       846,  848,  844,  849,  850,  851,  853,  851,  854,  852, 
    11159  
    11160       854,  855,  856,  857,  847,  858,  847,  852,  848,  858, 
    11161       849,  850,  851,  853,  857,  859,  852,  860,  855,  856, 
    11162       857,  856,  858,  861,  864,  862,  866,  862,  877,  867, 
    11163       874,  879,  859,  875,  860,  862,  884,  867,  883,  883, 
    11164       861,  864,  886,  866,  904,  864,  867,  874,  854,  887, 
    11165       875,  875,  885,  884,  888,  883,  885,  889,  894,  886, 
    11166       893,  877,  894,  896,  879,  880,  887,  896, 1020,  885, 
    11167       889,  888,  893,  888,  889,  894,  906,  893,  908,  902, 
    11168       896,  906,  880,  880,  880,  880,  880,  880,  880,  880, 
    11169       880,  905,  907,  906,  909,  908,  907,  910,  911,  905, 
    11170  
    11171       914,  913, 1043,  912, 1081, 1020,  918,  914,  905,  907, 
    11172       914,  909,  916,  909,  910,  911,  912,  910,  913,  916, 
    11173       912,  917,  916,  918,  919,  920,  923,  924,  917,  920, 
    11174       921,  917,  921,  925,  926,  928,  930,  939,  937,  928, 
    11175       923,  919,  920,  923,  924,  931,  936,  921,  940, 1043, 
    11176       925,  926,  928,  930,  930,  937,  941, 1081,  931,  940, 
    11177       942,  944,  931,  936,  943,  940,  936,  947,  943,  948, 
    11178       950,  948,  901,  941,  939,  958,  939,  942,  944,  959, 
    11179       960,  943,  947,  961,  947,  962,  948,  950,  963,  958, 
    11180       988,  964,  958,  964,  966,  961,  959,  960,  970,  987, 
    11181  
    11182       961,  966,  962,  900,  966,  963,  968,  963,  964,  967, 
    11183       967,  967,  969,  968,  971,  970,  968,  967,  974,  969, 
    11184       967,  973,  969,  973,  976,  978,  979,  990,  985,  978, 
    11185       979,  971,  988, 1004,  899,  974,  989,  987,  973,  985, 
    11186       989,  976,  978,  979,  990,  985,  993,  994, 1002, 1003, 
    11187      1004, 1003, 1005,  989, 1006,  994, 1016,  993, 1006, 1013, 
    11188      1005, 1002,  898,  993,  994, 1002, 1003, 1014, 1019, 1005, 
    11189       897, 1006, 1008, 1008, 1008, 1010, 1013, 1023, 1026, 1010, 
    11190      1008, 1027, 1026, 1008, 1014, 1019, 1032, 1019, 1034, 1016, 
    11191      1035, 1046, 1010, 1033, 1023, 1026, 1047, 1033, 1027, 1027, 
    11192  
    11193      1057, 1034, 1065, 1032, 1052, 1034, 1039, 1035, 1046, 1039, 
    11194      1033, 1037, 1037, 1037, 1058, 1067, 1053, 1057, 1058, 1037, 
    11195      1062, 1052, 1037, 1039, 1053,  895, 1059, 1052, 1059, 1047, 
    11196      1071, 1058, 1072, 1053, 1060, 1060, 1060, 1062, 1075, 1083, 
    11197      1062, 1079, 1060, 1103, 1089, 1060, 1072, 1071, 1087, 1072, 
    11198      1065, 1089, 1067, 1109, 1089, 1075, 1076, 1076, 1079, 1076, 
    11199      1094, 1087,  892, 1076, 1076, 1087, 1095, 1076, 1107, 1110, 
    11200      1076, 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1077, 1077, 
    11201      1077, 1092, 1104, 1108, 1113, 1092, 1077, 1083, 1114, 1077, 
    11202      1090, 1109, 1112, 1094, 1090, 1090, 1103, 1090, 1092, 1095, 
    11203  
    11204      1090, 1090, 1090, 1097, 1101, 1090, 1116, 1118, 1090, 1090, 
    11205      1090, 1090, 1090, 1090, 1090, 1090, 1098, 1099, 1119, 1107, 
    11206      1097, 1101, 1110, 1098, 1099, 1112, 1098, 1099, 1120, 1104, 
    11207      1145, 1108, 1145, 1146, 1147, 1146, 1147, 1113, 1149,  891, 
    11208      1149, 1114, 1150,  882, 1150, 1118, 1151, 1157, 1151, 1157, 
    11209       878, 1158, 1119, 1158,  873,  872,  869, 1116,  868,  863, 
    11210       833,  832,  831,  830,  829,  828,  827,  826,  824,  818, 
    11211       804,  802,  798,  793,  791,  790,  783,  782,  781,  778, 
    11212       777, 1120, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 
    11213      1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1125, 
    11214  
    11215      1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 
    11216      1125, 1125, 1125, 1125, 1125, 1125, 1126, 1126,  776, 1126, 
    11217      1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 
    11218      1126, 1126, 1126, 1127, 1127,  730, 1127, 1127, 1127, 1127, 
    11219      1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 
    11220      1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 
    11221      1128, 1128, 1128, 1128, 1128, 1128, 1128, 1129, 1129, 1129, 
    11222      1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 
    11223      1129, 1129, 1129, 1129, 1130, 1130,  729,  728,  727,  726, 
    11224      1130, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 
    11225  
    11226      1131, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 
    11227      1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1133,  725, 
    11228      1133,  724, 1133, 1133,  722,  718,  717,  713, 1133, 1134, 
    11229      1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 
    11230      1134, 1134, 1134, 1134, 1134, 1134, 1135, 1135, 1135, 1135, 
    11231      1135, 1135, 1135, 1135, 1135, 1135,  695, 1135, 1135, 1135, 
    11232      1135,  694, 1135, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 
    11233      1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 
    11234      1137,  692,  691, 1137, 1137, 1138, 1138, 1138, 1138,  685, 
    11235      1138, 1138,  683, 1138, 1138,  675, 1138, 1138,  662,  660, 
    11236  
    11237      1138, 1138, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 
    11238      1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1140, 
    11239       653, 1140,  651,  636, 1140, 1141,  589, 1141,  588, 1141, 
    11240      1141, 1142, 1142,  586, 1142, 1142, 1142, 1142, 1142, 1142, 
    11241      1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1143, 1143, 
    11242      1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 
    11243      1143, 1143, 1143, 1143, 1143, 1144, 1144, 1144, 1144, 1144, 
    11244      1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 
    11245      1144, 1144, 1148,  585,  583, 1148, 1148, 1154,  582, 1154, 
    11246       575,  556,  551,  549, 1154,  546,  543,  530,  524,  523, 
    11247  
    11248       515,  514, 1154, 1155,  513, 1155,  512,  511, 1155, 1156, 
    11249       510, 1156,  454, 1156, 1156, 1159,  429, 1159,  409,  400, 
    11250      1159, 1160,  398, 1160,  397, 1160, 1160, 1161, 1161,  391, 
     8657        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
     8658        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
     8659        1,    1,    1,    1,    1,    1,    1,    1,    1,    2, 
     8660        2,    2,    2,   10,    8,    8,    8,    8,   15,   15, 
     8661 
     8662       15,   68, 1129,   14,   10, 1119,   68,    2,    2,    2, 
     8663        2,    2,    2,    2,    2,    2,    2,   14,   16,   16, 
     8664       16,   54,   54,   54,    2,    2,   18,   10,    2,   19, 
     8665        2,    8,   14,   17,   17,   17,   15,   20,   21, 1096, 
     8666       18,    2,    2,  176,   22,   14, 1084,   25,   26,  176, 
     8667       15,   20,   21,    2,    2,   18,   10,    2,   75,    2, 
     8668        8,   25,   42,   19,   69,   15,   20,   21,   18,    2, 
     8669        2,   17,   24,   27,   26,   23,   25,   19,   15,   20, 
     8670       21,   22,   23,   23,   29,   17,   75,   27,   26,   25, 
     8671     1045,   42,   19,   24,  959,   22,   30,  339,   74,  339, 
     8672 
     8673       17,   82,   27,   26,  340,   19,  340,   24,   83,   69, 
     8674       22,   29,   23,   17,   31,   27,   26,   32,   30,   34, 
     8675       41,  178,   24,   22,  916,   29,   23,   74,   31,  912, 
     8676       82,   32,   30,   34,   41,   24,   83,   69,   49,  685, 
     8677       29,   23,   49,   31,  905,  685,   32,   30,   34,   41, 
     8678      178,  207,   33,   29,   23,   28,   31,   28,   33,   32, 
     8679       30,   34,   41,   76,   76,   76,  242,   49,   67,   67, 
     8680       67,   49,   33,   28,   28,   28,   28,   28,   28,   28, 
     8681       28,   28,   28,   86,   43,   63,  207,   33,   28,   43, 
     8682       44,  350,   28,   28,   28,  242,   43,   43,  904,   28, 
     8683 
     8684       33,   28,   28,   63,   44,   67,   91,   28,   77,   77, 
     8685       77,   28,   86,   43,   63,  207,  837,   28,   43,   44, 
     8686      350,   28,   28,   28,   43,   43,   87,   28,  360,   28, 
     8687       28,   63,   44,  835,   67,   28,   78,   78,   78,   28, 
     8688       35,   86,   35,   35,   35,   35,   35,   35,   35,   35, 
     8689       35,   35,   38,   40,  830,   91,   38,  360,   35,   35, 
     8690       38,   40,   35,  903,   40,  102,   38,   40,   35,  103, 
     8691       38,  107,   87,   40,   90,   35,   35,   79,   79,   79, 
     8692      825,   38,   40,   91,  342,   38,  342,   35,   35,   38, 
     8693       40,   35,   40,  102,   38,   40,   35,  103,   38,  107, 
     8694 
     8695       87,   40,  108,   35,   35,   36,   90,   36,   36,   36, 
     8696       36,   36,   36,   36,   36,   36,   36,  179,   37,  359, 
     8697       39,  359,   36,  903,  823,   37,   45,   36,  822,   37, 
     8698      108,   39,   37,   39,   45,   90,   39,   39,   46,  205, 
     8699       45,   36,   37,   39,  812,  179,   46,   37,  393,   39, 
     8700      180,   36,   46,  182,   37,   45,   36,   37,   46,   39, 
     8701       37,   39,   48,   45,   39,   39,   51,   46,   45,   36, 
     8702       37,   39,   47,   51,  811,   46,   48,  393,  180,   48, 
     8703       46,  182,   48,   51,  205,   47,   46,   47,  104,   50, 
     8704      220,   48,   47,   50,  529,   51,  529,   50,  396,   52, 
     8705 
     8706      450,   47,   51,  104,   48,   50,   52,   48,   50,   50, 
     8707       48,   51,  205,   47,  532,   47,   52,  104,   50,  804, 
     8708       47,  220,   50,   80,   80,   80,   50,  396,   52,  450, 
     8709      530,  104,  530,   50,   92,   52,   50,   50,   55,   55, 
     8710       55,   92,   92,  532,   52,   53,   53,   53,   53,  220, 
     8711       56,  223,  531,   53,  531,   56,   55,   55,   55,   55, 
     8712       55,   55,   55,   55,   55,   55,  184,  184,  184,   94, 
     8713       70,   70,   70,   71,   71,   71,   94,   94,   60,  223, 
     8714       53,   53,   70,   53,   53,   71,   53,   56,  726,   60, 
     8715      106,  191,   60,  686,   93,   93,   93,   53,   53,  686, 
     8716 
     8717      106,   56,   93,   93,  181,   70,  725,   60,   71,   53, 
     8718       53,  181,   53,   53,  723,   53,   56,   60,  722,  106, 
     8719       60,   72,   72,   72,  910,   53,   53,  214,  106,   56, 
     8720       57,   58,  181,   72,   70,   96,   57,   71,  222,  181, 
     8721      191,  716,   96,   96,   57,  189,   57,   57,   57,   57, 
     8722       57,   57,   57,   57,   57,   57,   59,  222,   58,   72, 
     8723       59,  208,  208,  208,   59,   58,   57,   96,  191,   58, 
     8724       59,  190,   58,   72,   59,  714,  214,  189,   61,  206, 
     8725       57,  706,   58,   61,  910,   59,  222,   58,   72,   59, 
     8726       61,   61,   62,   59,   58,   57,   96,   58,   59,   62, 
     8727 
     8728       58,   72,   59,  190,  214,  224,  189,   61,   57,   62, 
     8729       58,  206,   61,  210,  210,  210,   62,  689,   61,   61, 
     8730      664,   62,  225,  225,  225,  585,  580,  232,   62,  578, 
     8731      558,  235,  190,  224,  232,  232,  554,   62,  235,  235, 
     8732      206,  372,  372,  372,   62,   73,   73,   73,   73,   73, 
     8733       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8734       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8735       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8736       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8737       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8738 
     8739       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8740       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8741       73,   73,   73,   73,   73,   73,   73,   73,   73,   73, 
     8742       73,   73,   73,   73,   97,  101,  101,  105,  204,  204, 
     8743      204,   97,   97,  226,  538,  227,  213,  675,  101,  675, 
     8744      534,  111,  105,  111,  111,  111,  111,  111,  111,  111, 
     8745      111,  111,  111,  421,  101,  101,  105,  375,  375,  375, 
     8746      419,  226,  173,  227,  173,  204,  101,  114,  213,  534, 
     8747      105,  219,  412,   97,  113,  113,  113,  113,  113,  113, 
     8748      113,  113,  113,  113,  114,  228,  115,  118,  219,  114, 
     8749 
     8750      116,  115,  118,  125,  204,  116,  410,  213,  125,  231, 
     8751      173,   97,  100,  114,  100,  115,  118,  229,  116,  116, 
     8752      386,  221,  125,  114,  173,  115,  118,  219,  114,  116, 
     8753      115,  118,  125,  379,  116,  228,  249,  125,  230,  173, 
     8754      374,  114,  251,  115,  118,  100,  116,  116,  117,  100, 
     8755      125,  100,  173,  117,  243,  221,  100,  276,  100,  100, 
     8756      248,  231,  117,  228,  249,  401,  229,  117,  100,  294, 
     8757      251,  294,  401,  401,  100,  371,  343,  117,  100,  294, 
     8758      100,  230,  117,  221,  100,  276,  100,  100,  535,  231, 
     8759      117,  250,  243,  248,  229,  117,  100,  110,  110,  110, 
     8760 
     8761      110,  110,  110,  110,  110,  110,  110,  119,  121,  230, 
     8762      913,  247,  119,  121,  120,  110,  110,  535,  119,  120, 
     8763      243,  248,  120,  246,  400,  121,  119,  121,  110,  245, 
     8764      233,  233,  233,  120,  341,  277,  119,  121,  233,  233, 
     8765      344,  119,  121,  120,  110,  110,  119,  122,  120,  122, 
     8766      244,  120,  122,  121,  119,  121,  110,  177,  123,  218, 
     8767      400,  120,  341,  123,  212,  345,  122,  346,  344,  354, 
     8768      913,  177,  277,  347,  209,  123,  122,  123,  122,  124, 
     8769      202,  122,  348,  126,  124,  187,  177,  123,  126,  400, 
     8770      124,  349,  123,  345,  122,  346,  183,  126,  124,  177, 
     8771 
     8772      277,  347,  126,  123,  676,  123,  676,  354,  124,  127, 
     8773      348,  175,  126,  124,  127,  174,  237,  126,  124,  349, 
     8774       89,  127,  127,  237,  237,  126,  124,  127,  127,  128, 
     8775      126,  128,  129,  389,  128,  130,  354,  129,  127,  292, 
     8776      130,  292,  361,  127,  234,  234,  234,  130,  128,  127, 
     8777      127,  129,  234,  234,  130,  127,  127,  536,  128,  237, 
     8778      128,  129,   88,  128,  130,  388,  129,   84,  389,  130, 
     8779      361,  380,  380,  380,  356,  130,  128,   65,   13,  129, 
     8780      378,  238,  130,  131,  355,  131,  536,  237,  238,  238, 
     8781      369,  292, 1051,  388,  390,  133,  389,  392,    9,  131, 
     8782 
     8783      133,  131,  131,  131,  131,  131,  131,  131,  131,  131, 
     8784      131,  132, 1081,  133,  133,  134,  132,    7,  134,  292, 
     8785      134,  388,  132,  398,  133,  392,  356,  355,  369,  133, 
     8786      132,  390,  378,  238,  134,  677,  131,  677,  131, 1130, 
     8787      132,  133,  133,  381,  134,  132,  136,  134,  135,  134, 
     8788      132,  136, 1051,  135,  356,  355,  398,  369,  132,  390, 
     8789      378,  238,  134,  136,  131,  136,  131,  135,  135,  139, 
     8790      377,  137, 1081,  138,  139,  136,  137,  135,  138,  137, 
     8791      136,  381,  135,  139,  138,  398,  137,  395,  139,    0, 
     8792      137,  136,  138,  136,  418,  135,  135,  397,  139, 1130, 
     8793 
     8794      137,  382,  138,  139,  140,  137,  475,  138,  137,  140, 
     8795      381,  139,  138,  377,  137,  395,  139,  142,  137,  142, 
     8796      138,  140,  418,  140,  141,  399,  143,  144,  143,  141, 
     8797     1131,  537,  144,  140,  475,    0,  143,  141,  140,  391, 
     8798      533,  377,  144,  141,  397,  382,  144,    0,  543,  140, 
     8799      142,  140,  466,  141,  466,  142,  144,  146,  141,  143, 
     8800      537,  144,  146,  146,  143,  141,    0,  391,  533,  142, 
     8801      144,  141,  397,  382,  144,  399,  146,    0,  143,  142, 
     8802      145,    0,  145,  466,  142,  145,  146,  680,  143,  680, 
     8803     1131,  146,  146,  143,  145,  391,  145,  142,  543,  145, 
     8804 
     8805      147,    0,  148,  399,  146,  147,  143,  148,  557,  145, 
     8806      484,  145,  484,  546,  145,  148,  394,  394,  394,  147, 
     8807      484,  148,  145,  147,  145,  149,  543,  145,  149,  147, 
     8808      149,  148,  572,  150,  147, 1148,  148,  151,  150,    0, 
     8809        0,  546,  151,  148,  149,  150,  547,  147,    0,  148, 
     8810      151,  147,  150,  557,  149,    0,  151,  149,    0,  149, 
     8811      544,  572,  150,  152,  153,    0,  151,  150,  152,  153, 
     8812        0,  151,  149,  150,  547,  153,  152,  488,  151,  488, 
     8813      150,  557,  152,  153,  151,    0,  155,  488,    0,  154, 
     8814      155,  155,  152,  153,  154, 1148,  544,  152,  153,  521, 
     8815 
     8816      154,  521,    0,  153,  152,  155,  611,    0,  154,  521, 
     8817      152,  153,  156,  253,  253,  155,  158,  156,  154,  155, 
     8818      155,  158,  402,  154,  158,  544,  253,    0,  154,  402, 
     8819      402,  156,  157,  155,  611,  158,  154,  157,  559,  559, 
     8820      559,  156,  253,  253,    0,  158,  156,  612,    0,  157, 
     8821      158,  157,  157,  158,  253,  160,  160,  159,    0,  156, 
     8822      160,  157,  159,  158,  614,  159,  157,  370,  370,  370, 
     8823      615,  159,  402,  561,  160,  612,  159,  157,    0,  157, 
     8824      157,  194,  162,  194,  160,  160,  159,  162,  161,  160, 
     8825      161,  159,  614,  161,  159,  556,  556,  556,  615,  159, 
     8826 
     8827      402,  162,  160,  162,  159,    0,  161,  161,  370,  542, 
     8828      161,  162,  575,  163,  194,  564,  162,  161,  163,  161, 
     8829      164,  555,  161,  561,  163,  164,  164,  563,  194,  162, 
     8830        0,  162,  163,  164,  161,  161,  556,  370,  161,  164, 
     8831      165,  575,  163,  194,  568,  165,  692,  163,  692,  164, 
     8832      617,  561,  163,  562,  164,  164,  194,  165,  542,  165, 
     8833      163,  164,  564,  166,  403,  556,  682,  164,  166,  165, 
     8834      555,  403,  403,  577,  165,  569,  563,  166,  617,  568, 
     8835      166,    0,  166,  167,  167,  165,  542,  165,  167,  562, 
     8836      564,  697,  166,  697,  682,  167,  569,  166,  555,  744, 
     8837 
     8838      403,    0,  167,  570,  563,  166,  577,  568,  166,  168, 
     8839      166,  579,  167,  167,  168,  169,    0,  167,  562,  169, 
     8840      169,    0,  168,  167,  570,  569,  168,  744,  168,  403, 
     8841      167,  571,  170,    0,  169,  577,  753,  170,  168,    0, 
     8842      170,  171,    0,  168,  169,  171,  171,  579,  169,  169, 
     8843      168,  170,  571,  570,  168,    0,  168,  574,  574,  574, 
     8844      171,  170,  169,  172,  753,  581,  170,  604,  172,  170, 
     8845      171,  172,  581,  581,  171,  171,  579,  582,  613,  170, 
     8846      618,  571,  172,  687,  582,  582,    0,    0,  171,  678, 
     8847        0,  678,  172,  185,  185,  185,  604,  172,  756,  678, 
     8848 
     8849      172,  581,  679,  635,  815,  635,  815,  613,  757,  618, 
     8850      172,  185,  185,  185,  185,  185,  185,  185,  185,  185, 
     8851      185,  186,  681,  687,    0,  678,  756,  186,  713,    0, 
     8852      581,  679,  691,  608,  635,  608,  757,  186,  186,  186, 
     8853      186,  186,  186,  186,  186,  186,  186,  192,  683,  713, 
     8854      683,  681,  687,  192,  678,  684,  684,  684,  683,    0, 
     8855      703,  691,  683,  192,  192,  192,  192,  192,  192,  192, 
     8856      192,  192,  192,  193,  608,  215,  215,  215,  713,  193, 
     8857      708,  708,  708,  748,  826,  826,  826,  193,  608,  193, 
     8858      193,  193,  193,  193,  193,  193,  193,  193,  193,  195, 
     8859 
     8860      703,  196,  197,  608,  195,  749,  196,  197,  215,    0, 
     8861      195,  616,  748,  196,  196,  688,  608,  195,  195,  196, 
     8862      196,  197,  215,  832,  832,  832,  704,  616,  195,  703, 
     8863      196,  197,  707,  195,  749,  196,  197,  215,  195,  198, 
     8864      616,  196,  196,    0,  198,  195,  195,  196,  196,  197, 
     8865      215,  688,  702,  198,  702,  616,  200,    0,  198,  201, 
     8866      199,  200,  199,  201,  201,  199,  702,  755,  198,  758, 
     8867        0,  200,  707,  198,  199,  200,  199,  704,  201,  199, 
     8868      688,  198,  759,  807,    0,  200,  198,    0,  201,  199, 
     8869      200,  199,  201,  201,  199,  216,  755,    0,  758,  200, 
     8870 
     8871        0,  707,  199,  200,  199,  704,  201,  199,    0,    0, 
     8872      759,  807,  216,  216,  216,  216,  216,  216,  216,  216, 
     8873      216,  216,  217,  217,  217,  217,  217,  217,  217,  217, 
     8874      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8875      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8876      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8877      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8878      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8879      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8880      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8881 
     8882      217,  217,  217,  217,  217,  217,  217,  217,  217,  217, 
     8883      217,  239,    0,  239,  860,  760,  239,  239,  239,  239, 
     8884      239,  239,  239,  239,  239,  239,  240,    0,  240,  863, 
     8885      805,  240,  240,  240,  240,  240,  240,  240,  240,  240, 
     8886      240,  241,  860,  241,  760,  806,  241,  241,  241,  241, 
     8887      241,  241,  241,  241,  241,  241,  254,  863,  254,  805, 
     8888        0,  254,  254,  254,  254,  254,  254,  254,  254,  254, 
     8889      254,  255,    0,  255,  806,    0,  255,  255,  255,  255, 
     8890      255,  255,  255,  255,  255,  255,  256,  808,  256,  259, 
     8891      865,  256,  256,  256,  256,  256,  256,  256,  256,  256, 
     8892 
     8893      256,  257,  257,  257,  257,  257,  257,  257,  257,  257, 
     8894      257,    0,  259,  769,  260,  769,  808,  259,  865,  260, 
     8895      257,  258,  258,  258,  258,  258,  258,  258,  258,  258, 
     8896      258,  259,  260,  260,  261,  813,  901,  262,  901,  261, 
     8897      258,  259,  262,  260,  769,  261,  259,  727,  260,  257, 
     8898      908,  262,  908,  261,  727,  727,  262,  263,  705,  259, 
     8899      260,  260,  263,  261,  813,  693,  262,  693,  261,  258, 
     8900      263,  262,    0,  261,    0,  693,  263,  264,  266,  262, 
     8901      265,  261,  264,  266,  262,  265,  263,  803,  266,  803, 
     8902      264,  263,    0,    0,  705,  803,  264,  266,  263,  265, 
     8903 
     8904      265,  693,  851,  268,  263,  810,  264,  266,  268,  265, 
     8905      267,  264,  266,    0,  265,  267,  266,    0,  264,    0, 
     8906      268,  267,  268,  705,  264,  266,    0,  265,  265,  267, 
     8907      693,  851,  268,  269,    0,  271,  821,  268,  269,  267, 
     8908      271,  270,  810,    0,  267,  700,  270,  700,  268,  267, 
     8909      268,  269,  269,  270,  271,  700,  270,  267,  272,  700, 
     8910      270,    0,  269,  272,  271,  272,  728,  269,    0,  271, 
     8911      270,  810,  821,  728,  728,  270,    0,  272,  273,  269, 
     8912      269,  270,  271,  273,  270,  274,    0,  272,  270,  273, 
     8913      274,  729,  272,  794,  272,  794,  274,  273,  729,  729, 
     8914 
     8915        0,  821,    0,  794,  274,  272,    0,  273,  278,  278, 
     8916      857,  275,  273,  278,  274,  275,  275,  273,  900,  274, 
     8917      859,  809,  809,  809,  274,  273,  820,  278,  279,  809, 
     8918      275,  280,  274,  279,  824,  279,  280,  278,  278,  857, 
     8919      275,  284,  278,  284,  275,  275,  900,  279,  281,  859, 
     8920      280,  861,  281,  281,    0,  278,  862,  279,  275,  864, 
     8921      280,  925,  279,  820,  279,  280,    0,  281,  283,    0, 
     8922        0,  824,  284,  283,  284,  279,  283,  281,  280,  284, 
     8923      861,  281,  281,  838,  875,  862,  875,  283,  864,  925, 
     8924      838,  838,  820,  284,  875,  281,  282,  283,  282,  285, 
     8925 
     8926      824,  894,  283,  284,  285,  283,  286,  899,  284,  422, 
     8927      422,  286,  839,  902,  893,  283,  893,  285,  285,  839, 
     8928      839,  284,  422,    0,  893,  286,    0,  282,  285,  282, 
     8929      894,  911,  282,  285,  282,  286,  899,  282,  422,  422, 
     8930      286,  282,  902,    0,  282,  285,  285,  282,  282,  289, 
     8931      422,  282,  287,  286,  289,  288,  287,  287,  282,  288, 
     8932      288,  282,  934,  282,  937,  884,  282,  884,  289,  282, 
     8933        0,  287,  282,    0,  288,  282,  282,  926,  289,  282, 
     8934      911,  287,  290,  289,  288,  287,  287,  290,  288,  288, 
     8935      291,  934,  291,  937,  290,  291,  289,  929,  293,  287, 
     8936 
     8937      931,  290,  288,  293,  896,  926,  896,  932,  911,  291, 
     8938        0,  290,  293,  884,    0,  296,  290,  293,  933,  291, 
     8939      296,  291,  290,  935,  291,  929,  296,  293,  931,  290, 
     8940      961,  297,  293,    0,  296,  932,  297,  291,  298,  896, 
     8941      293,  884,  297,  298,  296,  293,  933,    0,  954,  296, 
     8942      297,  935,    0,  964,  296,    0,    0,  298,  298,  961, 
     8943      297,  299,  296,    0,    0,  297,  299,  298,  896,  965, 
     8944      297,  980,  298,  948,  948,  948,  954,  966,  297,  972, 
     8945      299,  299,  964,  300,  301,  298,  298,  300,  300,  301, 
     8946      299,  302,  301,  302,  303,  299,  303,  965,  967,  980, 
     8947 
     8948      300,  302,  300,  301,  303,  968,  966,  968,  299,  299, 
     8949        0,    0,  300,  301,  989,  972,  300,  300,  301,  990, 
     8950      304,  301,  973,  981,  302,  304,  984,  303,  300,  302, 
     8951      300,  301,  303,  967,  968,  302,  968,    0,  303,  304, 
     8952      304,  986,  989,  302,  972,  302,  303,  990,  303,  304, 
     8953     1005,    0,  981,  302,  304,  984,  303,    0,  302,  973, 
     8954      305,  303,  967,  302,  305,  305,  303,  304,  304,  987, 
     8955      986,  302,  306,  302,  303,  988,  303,  306, 1005,  305, 
     8956      307,  308, 1008, 1016,  307,  307,  308,    0,  973,  305, 
     8957     1010,  306,  308,  305,  305,    0,    0,  309,  987,  307, 
     8958 
     8959      308,  306,  309, 1015,  988,    0,  306,  305,    0,  307, 
     8960      308, 1008, 1013,  307,  307,  308,  309,  310, 1010,  306, 
     8961      308,  309,  310,  998,  998,  998,  309,  307,  308, 1016, 
     8962      310,  309, 1015,  311,  312,    0,  310,  313,  311,  312, 
     8963     1013,  311,  313,  852,  309,  852,  310, 1017,    0,  309, 
     8964        0,  310,  311,  312,  314,    0,  313, 1016,  310,  314, 
     8965     1018,    0,  311,  312,  310, 1028,  313,  311,  312, 1027, 
     8966      311,  313,  314,  314,  315,    0, 1017,  316,  852,  315, 
     8967      311,  312,  316,  314,  313, 1022, 1032,  315,  314, 1018, 
     8968      316,  852, 1034,  315, 1028,    0,  316, 1027,  316, 1036, 
     8969 
     8970      314,  314, 1021,  315,  317, 1023,  316,  852,  315,  317, 
     8971      317,  316,    0,    0, 1032,  315, 1043, 1022,  316,  852, 
     8972     1034,  315, 1049,  317,  316,  318,  316, 1036,    0,  319, 
     8973      318,    0,  319,  317,  319,    0,  318,  320,  317,  317, 
     8974      319, 1023,  320,    0,  318, 1043, 1022, 1021,  319, 1046, 
     8975     1049,  317,    0, 1024,  318, 1053,  320,  320,  319,  318, 
     8976      321,  319,  322,  319,  318,  321,  320,  322,  319,  323, 
     8977     1023,  320,  318, 1052,  323, 1021,  319,  323, 1046,  321, 
     8978      321,  322,  322, 1053,  320,  320,    0,    0,  323,  321, 
     8979        0,  322,  326, 1024,  321,  324,  322,  326,  323,  324, 
     8980 
     8981      324,    0, 1052,  323, 1060,  326,  323,  321,  321,  322, 
     8982      322,  326,  328,    0,  324,  325,  323,  328,  327,  325, 
     8983      325,  326, 1024,  327,  324,  327,  326, 1061,  324,  324, 
     8984     1058,  328, 1060,  326,  325,    0, 1055,  327,  329,  326, 
     8985        0,  328,  324,  329,  325,  330,  328,  327,  325,  325, 
     8986      330, 1057,  327,  332,  327,  332, 1061,  329,    0,  328, 
     8987      330,  331,  325,  332,  330,  327,  331,  329, 1041, 1041, 
     8988     1041, 1055,  329,    0,  330, 1058, 1064,    0,  331,  330, 
     8989      331, 1066,  333, 1056, 1057,  329,  332,  333,  330,  333, 
     8990      331,  332,  330,  334, 1072,  331,    0, 1074,  334,  334, 
     8991 
     8992     1055,  333,  336, 1058, 1064,  332,  331,  336,  331, 1076, 
     8993     1066,  333,  334, 1057,  336,  332,  333, 1056,  333,  335, 
     8994      332,  336,  334, 1072,  335, 1074, 1078,  334,  334,  333, 
     8995        0,  336,  335,  332,    0,    0,  336, 1076,  335,  337, 
     8996      334, 1085,  336,    0,  337,  338, 1056, 1094,  335,  336, 
     8997      338,    0,  974,  335, 1078, 1086,  337, 1090,  337, 1083, 
     8998      335,  876,  876,  876,  338,    0,  335,    0,  337,  876, 
     8999     1085, 1082,  876,  337,  338,  351, 1094,  351,    0,  338, 
     9000      946,  946,  946, 1086,  337, 1090,  337,  974,  946,  974, 
     9001        0,  946,  338,  351,  351,  351,  351,  351,  351,  351, 
     9002 
     9003      351,  351,  351,  352,  947,  947,  947, 1082,    0,  352, 
     9004        0, 1083,  947,    0, 1077,  947,  974,    0,  974,  352, 
     9005      352,  352,  352,  352,  352,  352,  352,  352,  352,  353, 
     9006      949,  949,  949,    0,    0,  353, 1082, 1098,  949, 1083, 
     9007        0,  949, 1070, 1070, 1070,  353,  353,  353,  353,  353, 
     9008      353,  353,  353,  353,  353,  357, 1092, 1092, 1092, 1077, 
     9009     1099,  357,  362,  363,    0,  364,  362,  362,  363,  357, 
     9010      364,  357,  357,  357,  357,  357,  357,  357,  357,  357, 
     9011      357,  362,  363, 1098,  364,  365,  365, 1077, 1099, 1103, 
     9012      365,  362,  363,  368,  364,  362,  362,  363, 1104,  364, 
     9013 
     9014        0,  366,    0,    0,  365,  366,  366,    0,    0,  362, 
     9015      363, 1098,  364, 1111,  365,  365, 1107, 1103,  366,  365, 
     9016      366,  367,    0,  433,  368,  367,  367, 1104,  433,  368, 
     9017      366, 1100,  365,    0,  366,  366,  950,  950,  950, 1113, 
     9018      367, 1111,  433,  368,  950, 1107,  366,  950,  366,    0, 
     9019      367, 1116,  433,  368,  367,  367,  383,  433,  368,    0, 
     9020        0,  999,  999,  999,    0,    0, 1100, 1113,  367,  999, 
     9021      433,  368,  999,  383,  383,  383,  383,  383,  383,  383, 
     9022      383,  383,  383,  384,    0, 1000, 1000, 1000, 1101, 1101, 
     9023     1101,    0,  383, 1000, 1121, 1100, 1000, 1116, 1127,    0, 
     9024 
     9025      384,  384,  384,  384,  384,  384,  384,  384,  384,  384, 
     9026      387,    0, 1001, 1001, 1001, 1117, 1117, 1117, 1136,  384, 
     9027     1001,  383, 1121, 1001,    0, 1116, 1127,  387,  387,  387, 
     9028      387,  387,  387,  387,  387,  387,  387,  404,  404,  404, 
     9029      404,  404,  404,  404,  404,  404,  404, 1136,  384,  405, 
     9030      405,  405,  405,  405,  405,  405,  405,  405,  405,  406, 
     9031      406,  406,  406,  406,  406,  406,  406,  406,  406,  407, 
     9032      407,  407,  407,  407,  407,  407,  407,  407,  407,  408, 
     9033      408,  408,  408,  408,  408,  408,  408,  408,  408,  409, 
     9034      409,  409,  409,  409,  409,  409,  409,  409,  409,  423, 
     9035 
     9036      423,  423,  423,  423,  423,  423,  423,  423,  423,  424, 
     9037      424,  424,  424,  424,  424,  424,  424,  424,  424,  425, 
     9038      425,  425,  425,  425,  425,  425,  425,  425,  425,  426, 
     9039      426,  426,  426,  426,  426,  426,  426,  426,  426,  427, 
     9040      427,  427,  427,  427,  427,  427,  427,  427,  427,  428, 
     9041      428,  428,  428,  428,  428,  428,  428,  428,  428,  429, 
     9042     1102,  429,    0,    0,  429,  429,  429,  429,  429,  429, 
     9043      429,  429,  429,  429,  430,  430,  430,  430,  430,  430, 
     9044      430,  430,  430,  430,    0,  436,    0,  434,    0,  431, 
     9045      436,  431,  434,  430,  431,  431,  431,  431,  431,  431, 
     9046 
     9047      431,  431,  431,  431,  436,  434,  434,  435,  437,  435, 
     9048     1144, 1102,  435,  437,  436,    0,  434, 1132, 1147,  436, 
     9049        0,  434,  430,    0,  438,    0,  435,  437,  438,  438, 
     9050      439,    0,  436,  434,  434,  439,  435,  437,  435, 1102, 
     9051        0,  435,  437,  438,    0, 1132,  440, 1140,  439,  439, 
     9052     1147,  440,    0,  438,  435,  437, 1144,  438,  438,  439, 
     9053        0,    0,  441,    0,  439,  440, 1114,  441,  442,  443, 
     9054        0,  438,  442,  442,  443,  440,  439,  439, 1139, 1147, 
     9055      440,  441,    0,  443, 1144,  446, 1146,  442,  443,  444, 
     9056      446,  441, 1140,  440,  444, 1143,  441,  442,  443, 1156, 
     9057 
     9058      444,  442,  442,  443,  446,  445,    0, 1149,  444,  441, 
     9059      445,  443,    0,  445,  446,  442,  443, 1114,  444,  446, 
     9060     1140,  447,  448,  444,  445,  447,  447,  448,  444, 1139, 
     9061      449, 1156,  446,  448,  445,  449,  444, 1146,    0,  445, 
     9062      447,  448,  445,  449, 1143, 1114, 1124, 1124, 1124,  449, 
     9063      447,  448,  445,    0,  447,  447,  448, 1139, 1149,  449, 
     9064     1156,  448,  451,    0,  449, 1146, 1145,  451,  447,  448, 
     9065      452,  449, 1143,  451,  453,  452, 1152,  449,  452,  453, 
     9066        0,  451,    0,    0, 1150,  454, 1149,  454,    0,  452, 
     9067        0,  451,  453,  453,    0,    0,  451,    0,    0,  452, 
     9068 
     9069        0,  451, 1145,  453,  452,    0,    0,  452,  453,  451, 
     9070      458, 1151, 1151, 1151,  457,  458,    0,  452,  454,  457, 
     9071      453,  453,    0,  454,    0, 1152,  454,    0,  457,  458, 
     9072      458, 1145,    0,  457,    0, 1150,    0,  454,    0,  458, 
     9073      454,  459,    0,  457,  458,  460,  459,  454,  457,    0, 
     9074      460,    0,  454, 1152, 1155,  454,  457,  458,  458,  460, 
     9075      459,  457,  468, 1150,  460,  454,    0,  468,  454,  455, 
     9076      459,  455,    0,    0,  460,  459, 1153, 1153, 1153,  460, 
     9077        0,  468,    0,    0,  461,    0,    0,  460,  459,  461, 
     9078     1155,  468,  460, 1158, 1158, 1158,  468, 1159, 1159, 1159, 
     9079 
     9080      455,  461,    0,  461,    0,  455,  463,  455,    0,  468, 
     9081      455,  463, 1157,  461,  455,    0,    0,  455,  461, 1155, 
     9082      455,  455,    0,    0,  455,  463,    0,    0,    0,  461, 
     9083      463,  461,    0,    0,  455,  463,  455,    0,  472,  455, 
     9084      463,    0,  455,  472,    0,  455,  462,    0,  455,  455, 
     9085      462,  462,  455,  463,  464,  465,    0,  472,  463,  464, 
     9086      465,  464,    0, 1157,    0,  462,  462,  472,    0,    0, 
     9087        0,    0,  472,  464,  465,  462,  465,    0,    0,  462, 
     9088      462,    0,    0,  464,  465,  472,    0,    0,  464,  465, 
     9089      464, 1157,    0,  462,  462,    0,    0,    0,    0,    0, 
     9090 
     9091        0,  464,  465,    0,  465,  469,  469,  469,  469,  469, 
     9092      469,  469,  469,  469,  469,  469,    0,  469,  469,  469, 
     9093      469,  469,  469,  469,  469,  469,  469,  469,  469,  469, 
     9094      469,  469,  469,  469,  469,  469,  469,  469,  469,  469, 
     9095      469,  469,  469,  469,  469,  469,  469,  469,  469,  469, 
     9096      469,  469,  469,  469,  469,  469,  469,  469,  469,  469, 
     9097      469,  469,  469,  469,  469,  469,  469,  469,  469,  469, 
     9098      469,  469,  469,  469,  469,  469,  469,  469,  469,  469, 
     9099      469,  469,  469,  469,  469,  469,  469,  469,  469,  469, 
     9100      469,  469,  469,  469,  470,    0,  471,  473,  471,  470, 
     9101 
     9102        0,    0,  473,  474, 1002, 1002, 1002,    0,  474,    0, 
     9103        0,  470, 1002,  470,    0, 1002,  473,    0,    0,    0, 
     9104        0,    0,  474,  470,    0,    0,  473,  471,  470,  471, 
     9105      476,  473,  474,    0,  471,  476,    0,  474,  477,  470, 
     9106        0,  470,    0,  477,  473,    0,  477,    0,  471,  476, 
     9107      474,    0,    0,    0,    0,    0,    0,  477,  471,  476, 
     9108      478,    0,    0,  471,  476,  478,    0,  477,  479,    0, 
     9109        0,    0,  477,  479,    0,  477,  471,  476,    0,  478, 
     9110      478,    0,    0,    0,    0,  477,    0,  479,    0,  478, 
     9111      480,    0,    0,    0,  478,  480,    0,  479,  480,  481, 
     9112 
     9113        0,    0,  479,    0,  481,  481,    0,  478,  478,  480, 
     9114        0,    0,  481,    0,    0,  479,    0,    0,  481,  480, 
     9115        0, 1003, 1003, 1003,  480,    0,    0,  480,  481, 1003, 
     9116      482,  487, 1003,  481,  481,  482,  487,  480,  482,  483, 
     9117      481,  483,  486,    0,  483,    0,  481,  486,    0,  482, 
     9118      487,    0,    0,    0,    0,    0,  486,    0,  483,  482, 
     9119      487,  486,    0,    0,  482,  487,    0,  482,  483,  490, 
     9120      483,  486,    0,  483,  490,  491,  486,  482,  487,    0, 
     9121      491,    0,    0,  490,  486,    0,  483,    0,  490,  486, 
     9122        0,  492,    0,    0,  491,  493,  492,    0,  490,    0, 
     9123 
     9124      493,    0,  492,  490,  491,    0,  493,  494,    0,  491, 
     9125      492,  490,  494,    0,  493,    0,  490,    0,  495,    0, 
     9126      492,    0,  491,  495,  493,  492,  494,  496,    0,  493, 
     9127      492,    0,  496,    0,  493,  496,  494,  495,  492,  497, 
     9128        0,  494,  493,  498,  497,    0,  496,  495,  498,    0, 
     9129      502,    0,  495,    0,  494,  502,  496,    0,  497,    0, 
     9130        0,  496,  498,    0,  496,  495,  499,    0,  497,  502, 
     9131      500,  499,  498,  497,  496,  500,    0,  498,    0,  502, 
     9132      499,    0,  500,    0,  502,  499,  497,  501,    0,  500, 
     9133      498,  501,  501,  503,    0,  499,  504,  502,  503,  500, 
     9134 
     9135      499,  504,    0,    0,  500,    0,  501,    0,  499,    0, 
     9136      500,    0,  503,  499,    0,  504,  501,  500,  505,  507, 
     9137      501,  501,  503,  505,  507,  504,    0,  503,    0,  508, 
     9138      504, 1042, 1042, 1042,  501,  505,    0,  505,  507, 1042, 
     9139      503,  506, 1042,  504,    0,    0,  506,  505,  507,  506, 
     9140      508,    0,  505,  507,    0,  508,    0,  509,    0,    0, 
     9141      506,    0,  509,  505,    0,  505,  507,    0,    0,  508, 
     9142      506,    0,    0,    0,  509,  506,  509,    0,  506,  508, 
     9143        0,    0,  510,    0,  508,    0,  509,  510,  506,  511, 
     9144      512,  509,    0,  510,  511,  512,    0,  508,    0,    0, 
     9145 
     9146        0,  510,  509,  512,  509,    0,  511,    0,  511,  512, 
     9147        0,  510,    0,    0,    0,    0,  510,    0,  511,  512, 
     9148      513,  510,  515,  511,  512,  513,    0,  515,  514,  510, 
     9149      514,  512,    0,  514,  511,    0,  511,  512,  517,  513, 
     9150        0,  515,    0,    0,    0,  516,    0,  514,    0,  513, 
     9151      516,  515,    0,  518,  513,    0,  515,  514,  518,  514, 
     9152        0,  517,  514,    0,  516,  519,  517,  513,    0,  515, 
     9153      519,    0,  518,    0,  516,  514,    0,    0,    0,  516, 
     9154      517,    0,  518,    0,  519,    0,  523,  518,  520,    0, 
     9155      517,  523,  516,  520,  519,  517,    0,    0,    0,  519, 
     9156 
     9157      518,    0,  520,    0,    0,  523,    0,  520,  517,  524, 
     9158        0,    0,  519,  524,  524,  523,    0,  520,  525,    0, 
     9159      523,  526,  520,  525,    0,    0,  526,    0,  524,    0, 
     9160      520,    0,    0,  523,    0,  520,    0,  525,  524,    0, 
     9161      526,  527,  524,  524,  528,  527,  527,  525,  528,  528, 
     9162      526,    0,  525,    0,    0,  526,  524,    0,    0,    0, 
     9163      527,  551,    0,  528,    0,  525,  551,    0,  526,    0, 
     9164      527,    0,    0,  528,  527,  527,    0,  528,  528,  539, 
     9165      551,  539,    0,    0,    0, 1071, 1071, 1071,  527,    0, 
     9166      551,  528,    0, 1071,    0,  551, 1071,  539,  539,  539, 
     9167 
     9168      539,  539,  539,  539,  539,  539,  539,  540,  551, 1093, 
     9169     1093, 1093,    0,  540,    0,    0,    0, 1093,    0,    0, 
     9170     1093,    0,    0,  540,  540,  540,  540,  540,  540,  540, 
     9171      540,  540,  540,  541,  548,    0,  548,    0,    0,  541, 
     9172        0,    0,    0,    0,  548,    0,    0,    0,    0,  541, 
     9173      541,  541,  541,  541,  541,  541,  541,  541,  541,  545, 
     9174      550,    0,  550,    0,    0,  545,  549,  548,    0,    0, 
     9175      548,  549,  548,  545,  549,  545,  545,  545,  545,  545, 
     9176      545,  545,  545,  545,  545,  549,  548,    0,    0,    0, 
     9177        0,    0,    0,  550,    0,  549,  548,    0,  550,  548, 
     9178 
     9179      549,  548,  552,  549,    0,  592,    0,  552,  552,  592, 
     9180      592,    0,  550,  549,  548,  552,    0,    0,  553,  552, 
     9181      553,  552,  550,    0,  592,    0,    0,  550,  553,    0, 
     9182        0,  552,  553,    0,  592,    0,  552,  552,  592,  592, 
     9183      550,  565,    0,  552,    0,    0,    0,  552,    0,  552, 
     9184        0,  553,  592,  565,    0,  565,  553,    0,  565,  565, 
     9185      565,  565,  565,  565,  565,  565,  565,  565,    0,  566, 
     9186      553, 1110, 1110, 1110,    0,    0,    0,    0,    0, 1110, 
     9187      553,    0, 1110,    0,    0,  553,  566,  566,  566,  566, 
     9188      566,  566,  566,  566,  566,  566,  567,    0,  553,    0, 
     9189 
     9190        0, 1125, 1125, 1125,    0,  566,    0,    0,  567, 1125, 
     9191      567,    0, 1125,  567,  567,  567,  567,  567,  567,  567, 
     9192      567,  567,  567,  588,  588,  588,  588,  588,  588,  588, 
     9193      588,  588,  588,    0,  566,  589,  589,  589,  589,  589, 
     9194      589,  589,  589,  589,  589,  590,  590,  590,  590,  590, 
     9195      590,  590,  590,  590,  590,  591,  591,  591,  591,  591, 
     9196      591,  591,  591,  591,  591,  593,    0,    0,  595,    0, 
     9197      593,    0,    0,  595, 1134, 1134, 1134,    0, 1135, 1135, 
     9198     1135,    0, 1134,  595,  593, 1134, 1135,  595,    0, 1135, 
     9199        0,    0,    0,    0,  593,    0,    0,  595,    0,  593, 
     9200 
     9201        0,    0,  595,    0,    0,    0,    0,    0,    0,    0, 
     9202        0,  595,  593,  594,  594,  595,  594,  594,  594,  594, 
     9203      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9204      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9205      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9206      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9207      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9208      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9209      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9210      594,  594,  594,  594,  594,  594,  594,  594,  594,  594, 
     9211 
     9212      594,  594,  596,  597,  596,  598,  600,  596,  597,  599, 
     9213      598,  600,    0,  599,  599,    0,    0,    0,  598,  600, 
     9214        0,  596,  597,    0,  598,  600,    0,    0,  599,    0, 
     9215        0,  596,  597,  596,  598,  600,  596,  597,  599,  598, 
     9216      600,    0,  599,  599,    0,    0,  598,  600,    0,  596, 
     9217      597,    0,  598,  600,  601,  602,  599,  603,    0,  601, 
     9218      602,  605,  603,    0,    0,  605,  605,    0,    0,  602, 
     9219        0,    0,    0,  601,  602,  603,  603,    0,    0,    0, 
     9220      605,    0,    0,  601,  602,    0,  603,  606,  601,  602, 
     9221      605,  603,  606,    0,  605,  605,    0,  602,  606,    0, 
     9222 
     9223        0,  601,  602,  603,  603,    0,  606,    0,  605,  609, 
     9224      607,    0,    0,  610,  609,  607,  606,  607,  610,    0, 
     9225      610,  606,    0,    0,    0,    0,  606,    0,  609,  607, 
     9226        0,    0,  610,    0,  606,  619,  621,    0,  609,  607, 
     9227      619,  621,  610,  609,  607,    0,  607,  610,    0,  610, 
     9228        0,    0,    0,    0,  619,  621,  609,  607,  620,    0, 
     9229      610,    0,    0,  620,  619,  621,    0,    0,    0,  619, 
     9230      621,  620,    0,    0,  623,  622,    0,  620,  622,  623, 
     9231      622,    0,  619,  621,    0,    0,    0,  620,  623,    0, 
     9232        0,  624,  620,  623,  622,    0,  624,    0,    0,  620, 
     9233 
     9234        0,    0,  624,  623,  622,  620,    0,  622,  623,  622, 
     9235      624,    0,  625,  625,  626,    0,  623,  625,  628,  626, 
     9236      624,  623,  622,  628,    0,  624,    0,    0,    0,  626, 
     9237      624,  625,    0,  626,    0,  627,    0,  628,  624,  627, 
     9238      627,  625,  625,  626,    0,    0,  625,  628,  626,    0, 
     9239        0,    0,  628,  629,  627,  629,    0,  626,    0,  625, 
     9240        0,  626,    0,  632,  627,  628,    0,    0,  627,  627, 
     9241      631,  631,  631,  631,  631,  631,  631,  631,  631,  631, 
     9242      632,    0,  627,  633,  629,  632,  629,  634,  633,  637, 
     9243        0,  629,  634,    0,  637,    0,    0,    0,    0,  632, 
     9244 
     9245      634,    0,  633,    0,    0,  629,  634,    0,  637,  632, 
     9246        0,    0,  633,    0,  632,  629,  634,  633,  637,  638, 
     9247      629,  634,    0,  637,  638,    0,    0,  632,  634,    0, 
     9248      633,    0,    0,  629,  634,  639,  637,    0,  638,  641, 
     9249      639,  641,  642,  639,  641,  642,  643,  642,  638,    0, 
     9250        0,  643,    0,  638,  639,    0,    0,    0,  641,    0, 
     9251        0,  642,  644,    0,  639,  643,  638,  644,  641,  639, 
     9252      641,  642,  639,  641,  642,  643,  642,    0,    0,  644, 
     9253      643,  644,  639,  645,    0,  646,  641,  645,  645,  642, 
     9254      646,  644,  647,  643,  648,    0,  644,  647,    0,  648, 
     9255 
     9256        0,    0,  645,    0,  646,  647,    0,  644,    0,  644, 
     9257        0,  647,  645,  648,  646,    0,  645,  645,    0,  646, 
     9258        0,  647,    0,  648,    0,    0,  647,    0,  648,  649, 
     9259      645,  649,  646,  647,  649,  650,    0,    0,    0,  647, 
     9260      650,  648,    0,    0,    0,    0,  650,    0,  649,    0, 
     9261        0,    0,    0,    0,  650,    0,    0,    0,  649,    0, 
     9262      649,  652,    0,  649,  650,  651,  652,  651,    0,  650, 
     9263      651,    0,  652,  653,  650,    0,  649,  653,  653,    0, 
     9264      652,    0,  650,    0,  651,    0,    0,    0,    0,    0, 
     9265      652,    0,  653,    0,  651,  652,  651,    0,  655,  651, 
     9266 
     9267      652,    0,  653,  655,    0,  654,  653,  653,  652,  656, 
     9268      654,    0,  651,  654,  656,    0,    0,  655,    0,    0, 
     9269      653,    0,  656,    0,  654,  657,    0,  655,  656,  657, 
     9270      657,    0,  655,    0,  654,    0,  658,    0,  656,  654, 
     9271        0,  658,  654,  656,  657,  655,    0,    0,  660,    0, 
     9272      656,    0,  654,  660,  657,  658,  656,  659,  657,  657, 
     9273        0,  659,  659,    0,    0,  658,    0,  660,  661,  662, 
     9274      658,    0,  657,  661,  662,    0,  659,  660,    0,    0, 
     9275        0,    0,  660,  658,    0,    0,  659,  661,  662,    0, 
     9276      659,  659,    0,    0,  663,  660,  663,  661,  662,  663, 
     9277 
     9278      665,  666,  661,  662,  659,  665,  666,    0,    0,    0, 
     9279        0,    0,    0,  663,    0,  661,  662,    0,  665,  665, 
     9280      666,    0,    0,  663,    0,  663,  667,    0,  663,  665, 
     9281      666,  667,    0,    0,  665,  666,    0,  668,    0,  667, 
     9282      668,  663,  668,    0,    0,  667,  665,  665,  666,  669, 
     9283        0,    0,    0,  672,  669,  667,  668,  671,  672,    0, 
     9284      667,    0,  671,    0,    0,    0,  668,  667,  669,  668, 
     9285        0,  668,  672,  667,  673,    0,  671,  671,  669,  673, 
     9286      674,    0,  672,  669,  668,  674,  671,  672,    0,    0, 
     9287        0,  671,    0,  673,    0,    0,  669,    0,    0,  674, 
     9288 
     9289      672,    0,    0,  673,  671,  671,    0,    0,  673,  674, 
     9290        0,    0,  690,    0,  674,    0,    0,    0,  690,  695, 
     9291        0,  673,    0,  695,  695,    0,  690,  674,  690,  690, 
     9292      690,  690,  690,  690,  690,  690,  690,  690,  695,  696, 
     9293      698,  699,    0,    0,  696,  698,  699,  696,  695,    0, 
     9294        0,  698,  695,  695,    0,    0,    0,    0,  696,  698, 
     9295      699,    0,    0,    0,    0,    0,  695,    0,  696,  698, 
     9296      699,    0,  709,  696,  698,  699,  696,    0,    0,  698, 
     9297        0,    0,  710,    0,    0,    0,  696,  698,  699,  709, 
     9298      709,  709,  709,  709,  709,  709,  709,  709,  709,  710, 
     9299 
     9300      710,  710,  710,  710,  710,  710,  710,  710,  710,  711, 
     9301        0,    0,    0,    0,    0,    0,    0,    0,    0,  712, 
     9302        0,    0,    0,    0,    0,    0,  711,  711,  711,  711, 
     9303      711,  711,  711,  711,  711,  711,  712,  712,  712,  712, 
     9304      712,  712,  712,  712,  712,  712,  715,  715,  715,  715, 
     9305      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9306      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9307      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9308      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9309      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9310 
     9311      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9312      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9313      715,  715,  715,  715,  715,  715,  715,  715,  715,  715, 
     9314      715,  715,  715,  715,  715,  719,  719,  719,    0,    0, 
     9315      719,  719,    0,  719,    0,    0,    0,  719,  719,    0, 
     9316        0,  719,    0,    0,  719,  719,  719,  719,  719,  719, 
     9317      719,  719,  719,  732,  732,    0,  732,  732,  732,  732, 
     9318      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9319      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9320      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9321 
     9322      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9323      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9324      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9325      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9326      732,  732,  732,  732,  732,  732,  732,  732,  732,  732, 
     9327      732,  732,  733,    0,    0,  735,    0,  733,  734,  734, 
     9328      734,  734,  734,  734,  734,  734,  734,  734,  736,  737, 
     9329        0,  733,  735,  736,  737,  738,    0,  735,    0,    0, 
     9330      738,  733,    0,    0,    0,    0,  733,  736,  737,    0, 
     9331        0,  735,    0,    0,  738,  739,    0,  736,  737,  733, 
     9332 
     9333      739,  735,  736,  737,  738,    0,  735,  740,    0,  738, 
     9334        0,    0,  740,    0,  739,  736,  737,    0,  741,  735, 
     9335        0,    0,  738,  741,  739,    0,  740,    0,    0,  739, 
     9336      740,    0,    0,    0,    0,    0,  740,  741,  741,    0, 
     9337        0,  740,  739,  742,    0,  742,    0,  741,  742,    0, 
     9338      747,  743,  741,    0,  740,  747,  743,    0,  740,  743, 
     9339        0,  745,  742,  745,    0,  741,  741,    0,    0,  747, 
     9340      743,    0,  742,  750,  742,    0,    0,  742,  750,  747, 
     9341      743,    0,  746,    0,  747,  743,  746,  746,  743,    0, 
     9342      742,    0,  750,    0,  745,    0,  745,  747,  743,  745, 
     9343 
     9344        0,  746,  750,    0,    0,    0,    0,  750,    0,  745, 
     9345        0,  746,    0,  745,  751,  746,  746,    0,  751,  751, 
     9346      750,    0,    0,  745,    0,  745,  762,    0,  745,  746, 
     9347        0,  762,    0,  751,  761,    0,  761,  745,    0,  761, 
     9348        0,  745,    0,  751,    0,  762,  762,  751,  751,    0, 
     9349        0,  763,    0,  761,    0,  762,  763,  763,    0,    0, 
     9350      762,  751,    0,  761,    0,  761,    0,    0,  761,    0, 
     9351      763,  764,  765,  762,  762,  764,  764,  765,  766,    0, 
     9352      763,  761,  766,  766,    0,  763,  763,    0,    0,  765, 
     9353      764,  765,    0,    0,  771,    0,    0,  766,  763,  771, 
     9354 
     9355      764,  765,    0,  767,  764,  764,  765,  766,  767,    0, 
     9356      768,  766,  766,  771,  772,  768,  772,  765,  764,  765, 
     9357      767,  768,  767,  771,  772,  766,  773,    0,  771,  768, 
     9358        0,  773,  767,    0,    0,    0,    0,  767,    0,  768, 
     9359      773,  771,    0,    0,  768,  773,  774,  772,  767,  768, 
     9360      767,  774,  772,    0,  774,  773,    0,  768,  775,    0, 
     9361      773,    0,  775,  775,    0,  774,  772,  776,  773,  778, 
     9362        0,  776,  776,  773,  778,  774,  772,  775,    0,    0, 
     9363      774,  772,    0,  774,    0,    0,  776,  775,  778,    0, 
     9364      777,  775,  775,  774,  772,  777,  776,    0,  778,  779, 
     9365 
     9366      776,  776,    0,  778,  779,  775,    0,  777,    0,  777, 
     9367      780,    0,    0,    0,  776,  780,  778,  779,  779,  777, 
     9368        0,  780,  781,    0,  777,    0,    0,  781,  779,  780, 
     9369        0,  782,    0,  779,    0,  777,  782,  777,    0,  780, 
     9370        0,  781,  783,  784,  780,  779,  779,  783,  784,  780, 
     9371      782,  781,    0,  785,    0,  785,  781,  780,    0,    0, 
     9372      782,  783,  784,  786,    0,  782,    0,    0,  786,  781, 
     9373        0,  783,  784,    0,  787,    0,  783,  784,  782,  787, 
     9374        0,  786,  786,  788,    0,    0,  785,    0,  788,  783, 
     9375      784,  785,  786,  787,  789,    0,    0,  786,  787,  789, 
     9376 
     9377        0,  785,  788,  787,    0,  785,    0,    0,  787,  786, 
     9378      786,    0,  788,  789,    0,  785,    0,  788,    0,  790, 
     9379      785,  787,    0,  789,  790,    0,  787,  791,  789,  785, 
     9380      788,  791,  791,  785,    0,    0,  790,    0,  790,  792, 
     9381        0,  789,    0,    0,  792,    0,  791,    0,  790,    0, 
     9382        0,  792,    0,  790,    0,    0,  791,    0,  792,    0, 
     9383      791,  791,  793,    0,  790,    0,  790,  793,  792,    0, 
     9384      795,  796,    0,  792,  791,  795,  796,    0,  795,  792, 
     9385        0,  793,  797,    0,    0,    0,  792,  797,    0,  795, 
     9386      796,  793,    0,  798,    0,  799,  793,  799,  798,  795, 
     9387 
     9388      796,  797,    0,    0,  795,  796,    0,  795,    0,  793, 
     9389        0,  797,  798,    0,    0,    0,  797,  795,  796,  800, 
     9390      801,    0,  798,    0,  800,  801,  816,  798,  799,  797, 
     9391      799,  816,    0,  799,    0,    0,    0,    0,  800,  801, 
     9392      798,    0,    0,    0,    0,  816,    0,  799,  800,  801, 
     9393        0,  817,    0,  800,  801,  816,  817,  799,    0,  799, 
     9394      816,    0,  799,    0,  817,    0,  800,  801,    0,  818, 
     9395      817,  818,    0,  816,  842,  799,  802,  802,  802,  802, 
     9396      817,    0,    0,    0,    0,  817,    0,    0,    0,    0, 
     9397      819,  842,  817,    0,    0,  819,  842,    0,  817,    0, 
     9398 
     9399        0,    0,  818,    0,    0,    0,    0,  818,    0,  819, 
     9400      842,  802,  802,    0,    0,  802,    0,  802,    0,  819, 
     9401      842,  818,    0,    0,  819,  842,    0,    0,  802,  802, 
     9402        0,  818,    0,    0,    0,    0,  818,  819,  842,    0, 
     9403      802,  802,    0,    0,  802,    0,  802,    0,    0,  818, 
     9404        0,    0,    0,    0,    0,    0,  802,  802,  827,  827, 
     9405      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9406      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9407      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9408      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9409 
     9410      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9411      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9412      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9413      827,  827,  827,  827,  827,  827,  827,  827,  827,  827, 
     9414      827,  827,  827,  827,  827,  827,  827,  828,  841,  841, 
     9415      841,  841,  841,  841,  841,  841,  841,  841,    0,    0, 
     9416        0,    0,    0,    0,  828,  828,  828,  828,  828,  828, 
     9417      828,  828,  828,  828,  829,  829,  829,  829,  829,  829, 
     9418      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9419      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9420 
     9421      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9422      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9423      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9424      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9425      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9426      829,  829,  829,  829,  829,  829,  829,  829,  829,  829, 
     9427      829,  829,  829,  843,    0,  844,    0,  847,  843,  844, 
     9428      844,  845,  847,  845,  846,    0,  845,    0,  846,  846, 
     9429        0,    0,  843,    0,  844,    0,  847,    0,    0,    0, 
     9430      845,    0,  843,  846,  844,    0,  847,  843,  844,  844, 
     9431 
     9432      845,  847,  845,  846,  849,  845,    0,  846,  846,  849, 
     9433      843,  848,  844,    0,  847,  848,  848,    0,  845,    0, 
     9434      850,  846,    0,  849,    0,  850,    0,  853,    0,    0, 
     9435      848,  854,  853,  849,  850,    0,  854,    0,  849,  850, 
     9436      848,  853,    0,    0,  848,  848,  853,    0,  854,  850, 
     9437      854,  849,  855,    0,  850,    0,  853,  855,  848,    0, 
     9438      854,  853,  850,  858,    0,  854,    0,  850,  858,  853, 
     9439        0,  855,  866,    0,  853,    0,  854,  866,  854,    0, 
     9440      858,  855,  858,  867,    0,    0,  855,    0,  867,    0, 
     9441        0,  866,  858,    0,  867,    0,    0,  858,    0,  855, 
     9442 
     9443        0,  866,  867,    0,  868,    0,  866,    0,  858,  868, 
     9444      858,    0,  867,  869,    0,  869,    0,  867,  869,  866, 
     9445        0,  868,  867,  868,    0,    0,    0,    0,    0,  870, 
     9446      867,    0,  869,  868,  870,  871,    0,    0,  868,    0, 
     9447      871,    0,  869,  870,  869,    0,    0,  869,  870,  868, 
     9448        0,  868,    0,    0,  871,    0,    0,    0,  870,    0, 
     9449      869,  872,    0,  870,  871,  872,  872,    0,  873,  871, 
     9450      874,  870,  873,  873,    0,  874,  870,    0,    0,    0, 
     9451      872,  874,  871,    0,    0,    0,    0,  873,    0,  874, 
     9452      872,  878,    0,  877,  872,  872,  878,  873,  877,  874, 
     9453 
     9454        0,  873,  873,    0,  874,    0,  877,    0,  872,  874, 
     9455      878,    0,  877,  879,  880,  873,  881,  874,  879,  880, 
     9456      878,  881,  877,    0,    0,  878,    0,  877,    0,    0, 
     9457        0,    0,  879,  880,  877,  881,  882,    0,  878,    0, 
     9458      877,  882,  879,  880,  882,  881,    0,  879,  880,    0, 
     9459      881,    0,  883,  886,    0,  882,    0,  883,  886,  885, 
     9460      879,  880,    0,  881,  885,  882,    0,    0,    0,    0, 
     9461      882,  883,  886,  882,    0,    0,  885,    0,  885,  887, 
     9462        0,  883,  886,  882,  887,    0,  883,  886,  885,    0, 
     9463      888,  890,    0,  885,    0,  888,  890,    0,  887,  883, 
     9464 
     9465      886,  888,  891,    0,  885,    0,  885,  891,  887,  888, 
     9466      890,  889,    0,  887,    0,  889,  889,    0,    0,  888, 
     9467      890,  891,  892,  897,  888,  890,  887,  892,  897,  888, 
     9468      889,  891,    0,    0,  895,    0,  891,  888,  890,  895, 
     9469      889,  892,  897,  906,  889,  889,    0,    0,  906,  891, 
     9470        0,  892,  897,  895,    0,  895,  892,  897,  889,  898, 
     9471        0,    0,  906,  895,  898,    0,  907,  898,  895,  892, 
     9472      897,  907,  906,    0,    0,    0,    0,  906,  898,    0, 
     9473        0,  895,    0,  895,  907,  907,    0,    0,  898,  909, 
     9474      906,  909,    0,  898,  909,  907,  898,    0,    0,    0, 
     9475 
     9476      907,    0,    0,    0,    0,    0,  898,  914,  909,    0, 
     9477        0,    0,  907,  907,    0,    0,  917,  917,  909,    0, 
     9478      909,  917,    0,  909,  914,  914,  914,  914,  914,  914, 
     9479      914,  914,  914,  914,    0,  917,  909,  918,    0,  919, 
     9480        0,    0,  918,  919,  919,  917,  917,    0,  920,    0, 
     9481      917,    0,    0,  920,    0,    0,  918,    0,  919,    0, 
     9482        0,    0,    0,  917,    0,  920,  918,  920,  919,  921, 
     9483      922,  918,  919,  919,  921,  922,    0,  920,  923,    0, 
     9484        0,    0,  920,  923,  918,    0,  919,    0,  921,  922, 
     9485        0,  923,    0,  920,    0,  920,    0,  923,  921,  922, 
     9486 
     9487        0,  927,    0,  921,  922,  928,  927,  923,    0,  928, 
     9488      928,    0,  923,  927,    0,    0,  921,  922,    0,  923, 
     9489      927,  938,    0,    0,  928,  923,  938,  930,  940,  938, 
     9490      927,  930,  930,  940,  928,  927,    0,    0,  928,  928, 
     9491      938,  927,    0,    0,    0,    0,  930,  940,  927,    0, 
     9492      938,    0,  928,    0,    0,  938,  930,  940,  938,  939, 
     9493      930,  930,  940,  939,  939,  941,  942,    0,  938,    0, 
     9494      941,  942,    0,    0,  930,  940,    0,    0,  939,    0, 
     9495        0,    0,  943,    0,  941,  942,  942,  943,  939,    0, 
     9496        0,  944,  939,  939,  941,  942,  944,    0,    0,  941, 
     9497 
     9498      942,  943,  945,    0,  944,    0,  939,  945,    0,    0, 
     9499      944,  943,  941,  942,  942,    0,  943,    0,  951,    0, 
     9500      944,  945,  952,  951,    0,  944,    0,  952,    0,  943, 
     9501        0,  945,  944,    0,    0,    0,  945,  951,  944,  955, 
     9502        0,  952,    0,  953,  955,  953,    0,  951,  953,  945, 
     9503        0,  952,  951,  955,    0,    0,  952,    0,  955,  956, 
     9504        0,    0,  953,    0,  956,  951,  957,    0,  955,  952, 
     9505      958,  957,  953,  955,  953,  958,    0,  953,  956,    0, 
     9506        0,  955,    0,    0,    0,  957,  955,  958,  956,  958, 
     9507      953,    0,  960,  956,    0,  957,  960,  960,    0,  958, 
     9508 
     9509      957,    0,    0,  963,  958,    0,  956,    0,  963,  962, 
     9510        0,  960,    0,  957,  962,  958,  963,  958,    0,    0, 
     9511        0,  960,  963,    0,    0,  960,  960,  962,  962,  969, 
     9512        0,    0,  963,    0,  969,  970,    0,  963,  962,  960, 
     9513      970,  971,    0,  962,  963,  971,  971,    0,  969,  969, 
     9514      963,    0,  976,    0,  970,  962,  962,  976,  969,    0, 
     9515      971,  975,    0,  969,  970,    0,  975,    0,  977,  970, 
     9516      971,  976,  975,  977,  971,  971,  969,  969,    0,    0, 
     9517      975,  976,  970,    0,  979,    0,  976,  977,  971,  979, 
     9518      975,    0,    0,  985,    0,  975,    0,  977,  985,  976, 
     9519 
     9520      975,  978,  977,  979,  982,  978,  978,    0,  975,  982, 
     9521        0,    0,  985,  979,    0,  977,    0,    0,  979,  982, 
     9522      978,    0,  985,  982,  983,    0,  983,  985,    0,  983, 
     9523      978,  979,    0,  982,  978,  978,    0,    0,  982,    0, 
     9524      985,  993,    0,  983,  994,  992,  993,  982,  978,  994, 
     9525      992,  982,    0,  983,    0,  983,  994,    0,  983,  992, 
     9526      993,  995,    0,  994,  992,    0,  995,  996,    0,    0, 
     9527      993,  983,  996,  994,  992,  993,    0,    0,  994,  992, 
     9528      995,    0,    0,    0,  994,    0,  996,  992,  993,    0, 
     9529      995,  994,  992, 1004,    0,  995,  996,  997, 1004,  997, 
     9530 
     9531     1007,  996,  997,    0, 1006, 1007, 1006,    0,  995, 1006, 
     9532        0,    0, 1004,    0,  996,    0,  997,    0,    0, 1007, 
     9533     1009,    0, 1004, 1006,    0, 1009,  997, 1004,  997, 1007, 
     9534        0,  997,    0, 1006, 1007, 1006,    0, 1011, 1006, 1009, 
     9535     1004, 1011, 1011,    0,  997,    0,    0, 1007,    0, 1009, 
     9536        0, 1006,    0, 1012, 1009,    0, 1011, 1012, 1012,    0, 
     9537     1020,    0,    0,    0, 1019, 1020, 1011, 1009,    0, 1019, 
     9538     1011, 1011, 1012,    0,    0, 1019, 1025,    0,    0, 1020, 
     9539     1025, 1025, 1012, 1019, 1011, 1026, 1012, 1012,    0, 1020, 
     9540     1026,    0,    0, 1019, 1020, 1025,    0, 1029, 1019,    0, 
     9541 
     9542     1012,    0, 1029, 1019, 1026, 1025,    0, 1020, 1029, 1025, 
     9543     1025, 1019,    0,    0, 1026,    0, 1029,    0,    0, 1026, 
     9544     1030,    0, 1037, 1025, 1038, 1030, 1029, 1037, 1030, 1038, 
     9545        0, 1029, 1026,    0,    0, 1037, 1029,    0,    0, 1030, 
     9546        0, 1037,    0, 1038, 1029,    0,    0, 1039,    0, 1030, 
     9547        0, 1037, 1039, 1038, 1030, 1039, 1037, 1030, 1038, 1047, 
     9548        0,    0,    0, 1037, 1047,    0, 1039, 1030, 1040, 1037, 
     9549     1044, 1038, 1040, 1040, 1044, 1044, 1039,    0, 1047,    0, 
     9550        0, 1039,    0,    0, 1039,    0,    0, 1040, 1047, 1044, 
     9551     1048, 1054,    0, 1047, 1039, 1048, 1054, 1040,    0, 1044, 
     9552 
     9553        0, 1040, 1040, 1044, 1044,    0, 1047, 1059,    0, 1048, 
     9554     1054,    0, 1059,    0,    0, 1040, 1063, 1044,    0, 1048, 
     9555     1054, 1063,    0, 1062, 1048, 1054, 1059, 1062, 1062,    0, 
     9556        0,    0,    0,    0, 1063, 1063, 1059, 1048, 1054, 1067, 
     9557        0, 1059, 1062,    0, 1067, 1063, 1068,    0, 1069,    0, 
     9558     1063, 1068, 1062, 1069, 1059,    0, 1062, 1062, 1067, 1068, 
     9559        0,    0, 1063, 1063,    0, 1068,    0, 1069, 1067, 1073, 
     9560     1062, 1080, 1073, 1067, 1073, 1068, 1080, 1069,    0,    0, 
     9561     1068,    0, 1069,    0,    0,    0, 1067, 1068, 1073,    0, 
     9562     1080, 1087,    0, 1068, 1088, 1069, 1087,    0, 1073, 1088, 
     9563 
     9564     1080, 1073, 1088, 1073,    0, 1080,    0,    0,    0,    0, 
     9565     1087,    0,    0, 1088, 1087,    0, 1073, 1091, 1080,    0, 
     9566     1087, 1091, 1091, 1088, 1095, 1087,    0,    0, 1088, 1095, 
     9567        0, 1088,    0,    0,    0,    0, 1091,    0, 1087,    0, 
     9568     1105, 1088, 1087, 1095, 1095, 1105, 1091, 1106,    0, 1108, 
     9569     1091, 1091, 1106, 1095, 1108,    0,    0,    0, 1095, 1105, 
     9570        0, 1106,    0,    0, 1091,    0, 1106,    0, 1108, 1105, 
     9571        0, 1095, 1095,    0, 1105,    0, 1106,    0, 1108,    0, 
     9572        0, 1106,    0, 1108,    0,    0,    0, 1105,    0, 1106, 
     9573        0,    0,    0,    0, 1106,    0, 1108, 1109, 1109, 1109, 
     9574 
     9575        0,    0, 1109, 1109,    0, 1109,    0,    0,    0, 1109, 
     9576     1109,    0,    0, 1109,    0,    0, 1109, 1109, 1109, 1109, 
     9577     1109, 1109, 1109, 1109, 1109, 1112, 1122,    0,    0,    0, 
     9578     1112, 1122,    0,    0,    0,    0,    0,    0,    0, 1122, 
     9579        0,    0, 1112,    0, 1112, 1122,    0,    0,    0,    0, 
     9580        0,    0,    0,    0, 1112, 1122,    0,    0,    0, 1112, 
     9581     1122,    0,    0,    0,    0,    0,    0, 1122,    0,    0, 
     9582     1112,    0, 1112, 1122, 1126, 1126, 1126,    0,    0, 1126, 
     9583     1126,    0, 1126,    0, 1128, 1126, 1126, 1126, 1128, 1128, 
     9584     1126,    0,    0, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 
     9585 
     9586     1126, 1126,    0, 1128, 1133, 1137,    0,    0,    0, 1133, 
     9587     1137,    0,    0, 1128,    0,    0,    0, 1128, 1128,    0, 
     9588        0,    0,    0, 1133, 1137,    0,    0,    0,    0,    0, 
     9589        0, 1128,    0, 1133, 1137,    0,    0,    0, 1133, 1137, 
     9590        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
     9591        0, 1133, 1137, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 
     9592     1162, 1162, 1162, 1162, 1162, 1163, 1163, 1163, 1163, 1163, 
     9593     1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164, 1164,    0, 
     9594     1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1165, 
     9595     1165,    0, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 
     9596 
     9597     1165, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 
     9598     1166, 1166, 1166, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 
     9599     1167, 1167, 1167, 1167, 1167, 1168, 1168, 1169, 1169, 1169, 
     9600     1169, 1169, 1169, 1169, 1169, 1170, 1170, 1170, 1170, 1170, 
     9601     1170, 1170, 1170, 1170, 1170, 1170, 1170, 1171, 1171, 1171, 
     9602     1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1172, 
     9603     1172, 1172, 1172, 1172, 1172,    0, 1172, 1172, 1172,    0, 
     9604     1172, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 
     9605     1173, 1173, 1173, 1174,    0,    0, 1174, 1175, 1175, 1175, 
     9606        0,    0, 1175,    0, 1175, 1175,    0, 1175, 1175, 1176, 
     9607 
     9608     1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 
     9609     1176, 1177, 1177,    0, 1177, 1177, 1177, 1177, 1177, 1177, 
     9610     1177, 1177, 1177, 1178, 1178, 1178, 1178, 1178, 1178,    0, 
     9611     1178, 1178, 1178,    0, 1178, 1179, 1179, 1179, 1179, 1179, 
     9612     1179, 1179, 1179, 1179, 1179, 1179, 1179, 1180, 1180, 1180, 
     9613     1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1181, 
     9614        0,    0, 1181, 1182,    0,    0,    0, 1182,    0,    0, 
     9615        0,    0,    0, 1182, 1183, 1183, 1183, 1183, 1183, 1183, 
     9616     1183, 1183, 1183, 1183, 1183, 1183, 1184, 1184,    0, 1184, 
     9617     1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1185, 1185, 
     9618 
     9619        0, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 
     9620     1186, 1186,    0, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 
     9621     1186, 1186, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 
     9622     1187, 1187, 1187, 1187, 1188, 1188, 1188, 1188, 1188, 1188, 
     9623     1188, 1188, 1188, 1188, 1188, 1188, 1189, 1189, 1189, 1189, 
     9624     1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1190, 1190, 
     9625     1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 
     9626     1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 
     9627     1191, 1191, 1192, 1192,    0, 1192, 1192, 1192, 1192, 1192, 
     9628     1192, 1192, 1192, 1192, 1193, 1193, 1193, 1193, 1193, 1193, 
     9629 
     9630     1193, 1193, 1193, 1193, 1193, 1193, 1194, 1194, 1194, 1194, 
     9631     1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1195, 1195, 
     9632        0, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 
     9633     1196, 1196,    0, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 
     9634     1196, 1196, 1197, 1197,    0, 1197, 1197, 1197, 1197, 1197, 
     9635     1197, 1197, 1197, 1197, 1198, 1198,    0, 1198, 1198, 1198, 
     9636     1198, 1198, 1198, 1198, 1198, 1198, 1199, 1199,    0, 1199, 
     9637     1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1200, 1200, 
     9638     1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 
     9639     1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 
     9640 
     9641     1201, 1201, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 
     9642     1202, 1202, 1202, 1202, 1203, 1203, 1203, 1203, 1203, 1203, 
     9643     1203, 1203, 1203, 1203, 1203, 1203, 1204, 1204, 1204, 1204, 
     9644     1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1205, 1205, 
     9645     1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 
     9646     1206, 1206,    0, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 
     9647     1206, 1206, 1207, 1207,    0, 1207, 1207, 1207, 1207, 1207, 
     9648     1207, 1207, 1207, 1207, 1208, 1208, 1208, 1208, 1208, 1208, 
     9649     1208, 1208, 1208, 1208, 1208, 1208, 1209, 1209, 1209, 1209, 
     9650     1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1210, 1210, 
     9651 
     9652     1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 
     9653     1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 
     9654     1211, 1211, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 
     9655     1212, 1212, 1212, 1212, 1213, 1213, 1213, 1213, 1213, 1213, 
     9656     1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, 1214, 1214, 
     9657     1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1161, 1161, 
    112519658     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
    11252      1161, 1161, 1161, 1161, 1162, 1162,  389, 1162, 1162, 1162, 
    11253      1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 
    11254      1162, 1163, 1163,  375, 1163, 1163, 1163, 1163, 1163, 1163, 
    11255      1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164, 1164, 
    11256      1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 
    11257      1164, 1164, 1164, 1164, 1164, 1165, 1165, 1165, 1165, 1165, 
    11258  
    11259      1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 
    11260      1165, 1165, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 
    11261      1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1167, 
    11262       374, 1167,  372, 1167, 1167, 1168, 1168,  371, 1168, 1168, 
    11263      1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 
    11264      1168, 1168, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 
    11265      1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1170, 
    11266      1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 
    11267      1170, 1170, 1170, 1170, 1170, 1170, 1171, 1171,  365, 1171, 
    11268      1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 
    11269  
    11270      1171, 1171, 1171, 1172, 1172,  358, 1172, 1172, 1172, 1172, 
    11271      1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 
    11272      1173, 1173,  353, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 
    11273      1173, 1173, 1173, 1173, 1173, 1173, 1173, 1174, 1174, 1174, 
    11274      1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 
    11275      1174, 1174, 1174, 1174, 1175, 1175, 1175, 1175, 1175, 1175, 
    11276      1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 
    11277      1175, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 
    11278      1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1177, 1177, 
    11279      1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 
    11280  
    11281      1177, 1177, 1177, 1177, 1177, 1178, 1178, 1178, 1178, 1178, 
    11282      1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 
    11283      1178, 1178, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 
    11284      1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179,  345, 
    11285       344,  334,  333,  332,  331,  330,  329,  328,  326,  262, 
    11286       244,  243,  237,  236,  235,  233,  232,  231,  230,  228, 
    11287       213,  212,  210,  209,  204,  198,  195,  192,  178,  173, 
    11288       171,  170,  167,  101,  100,   96,   95,   82,   81,   77, 
    11289        76,   75,   69,   68,   63,   58,   13,    7, 1123, 1123, 
    11290      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    11291  
    11292      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    11293      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    11294      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    11295      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    11296      1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 
    11297      1123, 1123 
     9659     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     9660     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     9661     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     9662 
     9663     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     9664     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     9665     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     9666     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 
     9667     1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161 
    112989668    } ; 
    112999669 
    113009670static yy_state_type yy_last_accepting_state; 
    113019671static char *yy_last_accepting_cpos; 
     9672 
     9673extern int fortran_flex_debug; 
     9674int fortran_flex_debug = 0; 
    113029675 
    113039676/* The intent behind this definition is that it'll catch 
     
    113089681#define YY_MORE_ADJ 0 
    113099682#define YY_RESTORE_YY_MORE_OFFSET 
    11310 char *yytext; 
     9683char *fortrantext; 
    113119684#line 1 "fortran.lex" 
    11312 #define INITIAL 0 
    113139685/******************************************************************************/ 
    113149686/*                                                                            */ 
     
    113459717/* version 1.7                                                                */ 
    113469718/******************************************************************************/ 
    11347 #define parameter 1 
    11348  
    11349 #define character 2 
    11350  
    11351 #define donottreat 3 
    11352  
    11353 #define fortran77style 4 
    11354  
    11355 #define fortran90style 5 
     9719 
     9720 
     9721 
     9722 
    113569723 
    113579724#line 41 "fortran.lex" 
     
    113599726#include <stdlib.h> 
    113609727#include <string.h> 
    11361 extern FILE * yyin; 
     9728extern FILE * fortranin; 
    113629729#define MAX_INCLUDE_DEPTH 30 
    113639730#define tabsize 6 
     
    113819748           if (firstpass == 0) \ 
    113829749           {\ 
    11383               strcat(curbuf,yytext); \ 
     9750              strcat(curbuf,fortrantext); \ 
    113849751              Save_Length(curbuf,38); \ 
    11385               strcpy(motparse,yytext);\ 
     9752              strcpy(motparse,fortrantext);\ 
    113869753              Save_Length(motparse,32); \ 
    113879754              colnum = colnum + strlen(motparse);\ 
    113889755              ECHO; \ 
    113899756           }\ 
    11390            strcpy(motparse1,yytext);\ 
    11391            /*printf("yytext = %s\n",yytext);*/\ 
     9757           strcpy(motparse1,fortrantext);\ 
     9758/*           printf("fortrantext = %s\n",fortrantext);*/\ 
    113929759        /*if ( firstpass == 1 )  
    11393                       printf("yytext = %s %d\n",yytext,strlen(yytext));*/\ 
     9760                      printf("fortrantext = %s %d\n",fortrantext,strlen(fortrantext));*/\ 
    113949761        } 
    11395 #line 1783 "fortran.yy.c" 
     9762#line 2979 "fortran.yy.c" 
     9763 
     9764#define INITIAL 0 
     9765#define parameter 1 
     9766#define character 2 
     9767#define donottreat 3 
     9768#define fortran77style 4 
     9769#define fortran90style 5 
     9770 
     9771#ifndef YY_NO_UNISTD_H 
     9772/* Special case for "unistd.h", since it is non-ANSI. We include it way 
     9773 * down here because we want the user's section 1 to have been scanned first. 
     9774 * The user has a chance to override it with an option. 
     9775 */ 
     9776#include <unistd.h> 
     9777#endif 
     9778 
     9779#ifndef YY_EXTRA_TYPE 
     9780#define YY_EXTRA_TYPE void * 
     9781#endif 
     9782 
     9783static int yy_init_globals (void ); 
     9784 
     9785/* Accessor methods to globals. 
     9786   These are made visible to non-reentrant scanners for convenience. */ 
     9787 
     9788int fortranlex_destroy (void ); 
     9789 
     9790int fortranget_debug (void ); 
     9791 
     9792void fortranset_debug (int debug_flag  ); 
     9793 
     9794YY_EXTRA_TYPE fortranget_extra (void ); 
     9795 
     9796void fortranset_extra (YY_EXTRA_TYPE user_defined  ); 
     9797 
     9798FILE *fortranget_in (void ); 
     9799 
     9800void fortranset_in  (FILE * in_str  ); 
     9801 
     9802FILE *fortranget_out (void ); 
     9803 
     9804void fortranset_out  (FILE * out_str  ); 
     9805 
     9806yy_size_t fortranget_leng (void ); 
     9807 
     9808char *fortranget_text (void ); 
     9809 
     9810int fortranget_lineno (void ); 
     9811 
     9812void fortranset_lineno (int line_number  ); 
    113969813 
    113979814/* Macros after this point can all be overridden by user definitions in 
     
    114019818#ifndef YY_SKIP_YYWRAP 
    114029819#ifdef __cplusplus 
    11403 extern "C" int yywrap YY_PROTO(( void )); 
     9820extern "C" int fortranwrap (void ); 
    114049821#else 
    11405 extern int yywrap YY_PROTO(( void )); 
     9822extern int fortranwrap (void ); 
    114069823#endif 
    114079824#endif 
    114089825 
    11409 #ifndef YY_NO_UNPUT 
    11410 static void yyunput YY_PROTO(( int c, char *buf_ptr )); 
     9826    static void yyunput (int c,char *buf_ptr  ); 
     9827     
     9828#ifndef yytext_ptr 
     9829static void yy_flex_strncpy (char *,yyconst char *,int ); 
    114119830#endif 
    114129831 
    11413 #ifndef yytext_ptr 
    11414 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int )); 
     9832#ifdef YY_NEED_STRLEN 
     9833static int yy_flex_strlen (yyconst char * ); 
    114159834#endif 
    114169835 
    11417 #ifdef YY_NEED_STRLEN 
    11418 static int yy_flex_strlen YY_PROTO(( yyconst char * )); 
     9836#ifndef YY_NO_INPUT 
     9837 
     9838#ifdef __cplusplus 
     9839static int yyinput (void ); 
     9840#else 
     9841static int input (void ); 
    114199842#endif 
    114209843 
    11421 #ifndef YY_NO_INPUT 
    11422 #ifdef __cplusplus 
    11423 static int yyinput YY_PROTO(( void )); 
    11424 #else 
    11425 static int input YY_PROTO(( void )); 
    11426 #endif 
    11427 #endif 
    11428  
    11429 #if YY_STACK_USED 
    11430 static int yy_start_stack_ptr = 0; 
    11431 static int yy_start_stack_depth = 0; 
    11432 static int *yy_start_stack = 0; 
    11433 #ifndef YY_NO_PUSH_STATE 
    11434 static void yy_push_state YY_PROTO(( int new_state )); 
    11435 #endif 
    11436 #ifndef YY_NO_POP_STATE 
    11437 static void yy_pop_state YY_PROTO(( void )); 
    11438 #endif 
    11439 #ifndef YY_NO_TOP_STATE 
    11440 static int yy_top_state YY_PROTO(( void )); 
    11441 #endif 
    11442  
    11443 #else 
    11444 #define YY_NO_PUSH_STATE 1 
    11445 #define YY_NO_POP_STATE 1 
    11446 #define YY_NO_TOP_STATE 1 
    11447 #endif 
    11448  
    11449 #ifdef YY_MALLOC_DECL 
    11450 YY_MALLOC_DECL 
    11451 #else 
    11452 #if __STDC__ 
    11453 #ifndef __cplusplus 
    11454 #include <stdlib.h> 
    11455 #endif 
    11456 #else 
    11457 /* Just try to get by without declaring the routines.  This will fail 
    11458  * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int) 
    11459  * or sizeof(void*) != sizeof(int). 
    11460  */ 
    11461 #endif 
    114629844#endif 
    114639845 
     
    114689850 
    114699851/* Copy whatever the last rule matched to the standard output. */ 
    11470  
    114719852#ifndef ECHO 
    114729853/* This used to be an fputs(), but since the string might contain NUL's, 
    114739854 * we now use fwrite(). 
    114749855 */ 
    11475 #define ECHO (void) fwrite( yytext, yyleng, 1, yyout ) 
     9856#define ECHO fwrite( fortrantext, fortranleng, 1, fortranout ) 
    114769857#endif 
    114779858 
     
    114819862#ifndef YY_INPUT 
    114829863#define YY_INPUT(buf,result,max_size) \ 
    11483    if ( yy_current_buffer->yy_is_interactive ) \ 
     9864   if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ 
    114849865      { \ 
    11485       int c = '*', n; \ 
     9866      int c = '*'; \ 
     9867      yy_size_t n; \ 
    114869868      for ( n = 0; n < max_size && \ 
    11487               (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ 
     9869              (c = getc( fortranin )) != EOF && c != '\n'; ++n ) \ 
    114889870         buf[n] = (char) c; \ 
    114899871      if ( c == '\n' ) \ 
    114909872         buf[n++] = (char) c; \ 
    11491       if ( c == EOF && ferror( yyin ) ) \ 
     9873      if ( c == EOF && ferror( fortranin ) ) \ 
    114929874         YY_FATAL_ERROR( "input in flex scanner failed" ); \ 
    114939875      result = n; \ 
    114949876      } \ 
    11495    else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \ 
    11496         && ferror( yyin ) ) \ 
    11497       YY_FATAL_ERROR( "input in flex scanner failed" ); 
     9877   else \ 
     9878      { \ 
     9879      errno=0; \ 
     9880      while ( (result = fread(buf, 1, max_size, fortranin))==0 && ferror(fortranin)) \ 
     9881         { \ 
     9882         if( errno != EINTR) \ 
     9883            { \ 
     9884            YY_FATAL_ERROR( "input in flex scanner failed" ); \ 
     9885            break; \ 
     9886            } \ 
     9887         errno=0; \ 
     9888         clearerr(fortranin); \ 
     9889         } \ 
     9890      }\ 
     9891\ 
     9892 
    114989893#endif 
    114999894 
     
    115169911#endif 
    115179912 
     9913/* end tables serialization structures and prototypes */ 
     9914 
    115189915/* Default declaration of generated scanner - a define so the user can 
    115199916 * easily add parameters. 
    115209917 */ 
    115219918#ifndef YY_DECL 
    11522 #define YY_DECL int yylex YY_PROTO(( void )) 
    11523 #endif 
    11524  
    11525 /* Code executed at the beginning of each rule, after yytext and yyleng 
     9919#define YY_DECL_IS_OURS 1 
     9920 
     9921extern int fortranlex (void); 
     9922 
     9923#define YY_DECL int fortranlex (void) 
     9924#endif /* !YY_DECL */ 
     9925 
     9926/* Code executed at the beginning of each rule, after fortrantext and fortranleng 
    115269927 * have been set up. 
    115279928 */ 
     
    115369937 
    115379938#define YY_RULE_SETUP \ 
    11538    if ( yyleng > 0 ) \ 
    11539       yy_current_buffer->yy_at_bol = \ 
    11540             (yytext[yyleng - 1] == '\n'); \ 
     9939   if ( fortranleng > 0 ) \ 
     9940      YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \ 
     9941            (fortrantext[fortranleng - 1] == '\n'); \ 
    115419942   YY_USER_ACTION 
    115429943 
     9944/** The main scanner function which does all the work. 
     9945 */ 
    115439946YY_DECL 
    11544    { 
     9947{ 
    115459948   register yy_state_type yy_current_state; 
    115469949   register char *yy_cp, *yy_bp; 
    115479950   register int yy_act; 
    11548  
    11549 #line 106 "fortran.lex" 
     9951     
     9952#line 107 "fortran.lex" 
    115509953 
    115519954  if (infixed) BEGIN(fortran77style) ; 
    115529955  if (infree) BEGIN(fortran90style)  ; 
    115539956 
    11554 #line 1942 "fortran.yy.c" 
    11555  
    11556    if ( yy_init ) 
     9957#line 3174 "fortran.yy.c" 
     9958 
     9959   if ( !(yy_init) ) 
    115579960      { 
    11558       yy_init = 0; 
     9961      (yy_init) = 1; 
    115599962 
    115609963#ifdef YY_USER_INIT 
     
    115629965#endif 
    115639966 
    11564       if ( ! yy_start ) 
    11565          yy_start = 1;  /* first start state */ 
    11566  
    11567       if ( ! yyin ) 
    11568          yyin = stdin; 
    11569  
    11570       if ( ! yyout ) 
    11571          yyout = stdout; 
    11572  
    11573       if ( ! yy_current_buffer ) 
    11574          yy_current_buffer = 
    11575             yy_create_buffer( yyin, YY_BUF_SIZE ); 
    11576  
    11577       yy_load_buffer_state(); 
     9967      if ( ! (yy_start) ) 
     9968         (yy_start) = 1;   /* first start state */ 
     9969 
     9970      if ( ! fortranin ) 
     9971         fortranin = stdin; 
     9972 
     9973      if ( ! fortranout ) 
     9974         fortranout = stdout; 
     9975 
     9976      if ( ! YY_CURRENT_BUFFER ) { 
     9977         fortranensure_buffer_stack (); 
     9978         YY_CURRENT_BUFFER_LVALUE = 
     9979            fortran_create_buffer(fortranin,YY_BUF_SIZE ); 
     9980      } 
     9981 
     9982      fortran_load_buffer_state( ); 
    115789983      } 
    115799984 
    115809985   while ( 1 )    /* loops until end-of-file is reached */ 
    115819986      { 
    11582       yy_cp = yy_c_buf_p; 
    11583  
    11584       /* Support of yytext. */ 
    11585       *yy_cp = yy_hold_char; 
     9987      yy_cp = (yy_c_buf_p); 
     9988 
     9989      /* Support of fortrantext. */ 
     9990      *yy_cp = (yy_hold_char); 
    115869991 
    115879992      /* yy_bp points to the position in yy_ch_buf of the start of 
     
    115909995      yy_bp = yy_cp; 
    115919996 
    11592       yy_current_state = yy_start; 
     9997      yy_current_state = (yy_start); 
    115939998      yy_current_state += YY_AT_BOL(); 
    115949999yy_match: 
     
    1159810003         if ( yy_accept[yy_current_state] ) 
    1159910004            { 
    11600             yy_last_accepting_state = yy_current_state; 
    11601             yy_last_accepting_cpos = yy_cp; 
     10005            (yy_last_accepting_state) = yy_current_state; 
     10006            (yy_last_accepting_cpos) = yy_cp; 
    1160210007            } 
    1160310008         while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 
    1160410009            { 
    1160510010            yy_current_state = (int) yy_def[yy_current_state]; 
    11606             if ( yy_current_state >= 1124 ) 
     10011            if ( yy_current_state >= 1162 ) 
    1160710012               yy_c = yy_meta[(unsigned int) yy_c]; 
    1160810013            } 
     
    1161010015         ++yy_cp; 
    1161110016         } 
    11612       while ( yy_base[yy_current_state] != 4189 ); 
     10017      while ( yy_base[yy_current_state] != 9159 ); 
    1161310018 
    1161410019yy_find_action: 
     
    1161610021      if ( yy_act == 0 ) 
    1161710022         { /* have to back up */ 
    11618          yy_cp = yy_last_accepting_cpos; 
    11619          yy_current_state = yy_last_accepting_state; 
     10023         yy_cp = (yy_last_accepting_cpos); 
     10024         yy_current_state = (yy_last_accepting_state); 
    1162010025         yy_act = yy_accept[yy_current_state]; 
    1162110026         } 
     
    1162310028      YY_DO_BEFORE_ACTION; 
    1162410029 
    11625  
    1162610030do_action:  /* This label is used only to access EOF actions. */ 
    11627  
    1162810031 
    1162910032      switch ( yy_act ) 
     
    1163110034         case 0: /* must back up */ 
    1163210035         /* undo the effects of YY_DO_BEFORE_ACTION */ 
    11633          *yy_cp = yy_hold_char; 
    11634          yy_cp = yy_last_accepting_cpos; 
    11635          yy_current_state = yy_last_accepting_state; 
     10036         *yy_cp = (yy_hold_char); 
     10037         yy_cp = (yy_last_accepting_cpos); 
     10038         yy_current_state = (yy_last_accepting_state); 
    1163610039         goto yy_find_action; 
    1163710040 
    1163810041case 1: 
    1163910042YY_RULE_SETUP 
    11640 #line 110 "fortran.lex" 
     10043#line 111 "fortran.lex" 
    1164110044return TOK_DEBUT; 
    1164210045   YY_BREAK 
    1164310046case 2: 
    1164410047YY_RULE_SETUP 
    11645 #line 111 "fortran.lex" 
     10048#line 112 "fortran.lex" 
    1164610049return TOK_FIN; 
    1164710050   YY_BREAK 
    1164810051case 3: 
    1164910052YY_RULE_SETUP 
    11650 #line 112 "fortran.lex" 
     10053#line 113 "fortran.lex" 
    1165110054return TOK_OMP; 
    1165210055   YY_BREAK 
    1165310056case 4: 
    1165410057YY_RULE_SETUP 
    11655 #line 113 "fortran.lex" 
     10058#line 114 "fortran.lex" 
    1165610059return TOK_DOLLAR; 
    1165710060   YY_BREAK 
    1165810061case 5: 
    1165910062YY_RULE_SETUP 
    11660 #line 115 "fortran.lex" 
     10063#line 116 "fortran.lex" 
    1166110064{return TOK_REAL8;} 
    1166210065   YY_BREAK 
    1166310066case 6: 
    1166410067YY_RULE_SETUP 
    11665 #line 116 "fortran.lex" 
     10068#line 117 "fortran.lex" 
    1166610069{return TOK_SUBROUTINE;} 
    1166710070   YY_BREAK 
    1166810071case 7: 
    1166910072YY_RULE_SETUP 
    11670 #line 117 "fortran.lex" 
     10073#line 118 "fortran.lex" 
    1167110074{return TOK_PROGRAM;} 
    1167210075   YY_BREAK 
    1167310076case 8: 
    1167410077YY_RULE_SETUP 
    11675 #line 118 "fortran.lex" 
     10078#line 119 "fortran.lex" 
    1167610079{inallocate = 1; return TOK_ALLOCATE;} 
    1167710080   YY_BREAK 
    1167810081case 9: 
    1167910082YY_RULE_SETUP 
    11680 #line 119 "fortran.lex" 
     10083#line 120 "fortran.lex" 
     10084{return TOK_NULLIFY;} 
     10085   YY_BREAK 
     10086case 10: 
     10087YY_RULE_SETUP 
     10088#line 121 "fortran.lex" 
    1168110089{inallocate = 1; return TOK_DEALLOCATE;} 
    1168210090   YY_BREAK 
    11683 case 10: 
    11684 YY_RULE_SETUP 
    11685 #line 120 "fortran.lex" 
     10091case 11: 
     10092YY_RULE_SETUP 
     10093#line 122 "fortran.lex" 
    1168610094{return TOK_RESULT;} 
    1168710095   YY_BREAK 
    11688 case 11: 
    11689 YY_RULE_SETUP 
    11690 #line 121 "fortran.lex" 
     10096case 12: 
     10097YY_RULE_SETUP 
     10098#line 123 "fortran.lex" 
    1169110099{return TOK_FUNCTION;} 
    1169210100   YY_BREAK 
    11693 case 12: 
    11694 YY_RULE_SETUP 
    11695 #line 122 "fortran.lex" 
    11696 {strcpy(yylval.na,yytext);return TOK_ENDSUBROUTINE;} 
    11697    YY_BREAK 
    1169810101case 13: 
    1169910102YY_RULE_SETUP 
    11700 #line 123 "fortran.lex" 
    11701 {strcpy(yylval.na,yytext);return TOK_ENDPROGRAM;} 
     10103#line 124 "fortran.lex" 
     10104{strcpy(yylval.na,fortrantext);return TOK_ENDSUBROUTINE;} 
    1170210105   YY_BREAK 
    1170310106case 14: 
    1170410107YY_RULE_SETUP 
    11705 #line 124 "fortran.lex" 
    11706 {strcpy(yylval.na,yytext);return TOK_ENDFUNCTION;} 
     10108#line 125 "fortran.lex" 
     10109{strcpy(yylval.na,fortrantext);return TOK_ENDPROGRAM;} 
    1170710110   YY_BREAK 
    1170810111case 15: 
    1170910112YY_RULE_SETUP 
    11710 #line 125 "fortran.lex" 
    11711 {strcpy(yylval.na,yytext);return TOK_ENDUNIT;} 
     10113#line 126 "fortran.lex" 
     10114{strcpy(yylval.na,fortrantext);return TOK_ENDFUNCTION;} 
    1171210115   YY_BREAK 
    1171310116case 16: 
    1171410117YY_RULE_SETUP 
    11715 #line 126 "fortran.lex" 
     10118#line 127 "fortran.lex" 
     10119{strcpy(yylval.na,fortrantext);return TOK_ENDUNIT;} 
     10120   YY_BREAK 
     10121case 17: 
     10122YY_RULE_SETUP 
     10123#line 128 "fortran.lex" 
    1171610124return TOK_INCLUDE; 
    1171710125   YY_BREAK 
    11718 case 17: 
    11719 YY_RULE_SETUP 
    11720 #line 127 "fortran.lex" 
     10126case 18: 
     10127YY_RULE_SETUP 
     10128#line 129 "fortran.lex" 
    1172110129{ 
    11722                             strcpy(yylval.na,yytext); 
     10130                            strcpy(yylval.na,fortrantext); 
    1172310131                            tmpc = input(); 
    1172410132                            unput(tmpc); 
     
    1173710145                         } 
    1173810146   YY_BREAK 
    11739 case 18: 
    11740 YY_RULE_SETUP 
    11741 #line 144 "fortran.lex" 
     10147case 19: 
     10148YY_RULE_SETUP 
     10149#line 146 "fortran.lex" 
    1174210150{return TOK_REWIND;} 
    1174310151   YY_BREAK 
    11744 case 19: 
    11745 YY_RULE_SETUP 
    11746 #line 145 "fortran.lex" 
     10152case 20: 
     10153YY_RULE_SETUP 
     10154#line 147 "fortran.lex" 
    1174710155return TOK_IMPLICIT; 
    1174810156   YY_BREAK 
    11749 case 20: 
    11750 YY_RULE_SETUP 
    11751 #line 146 "fortran.lex" 
     10157case 21: 
     10158YY_RULE_SETUP 
     10159#line 148 "fortran.lex" 
    1175210160return TOK_NONE; 
    1175310161   YY_BREAK 
    11754 case 21: 
    11755 YY_RULE_SETUP 
    11756 #line 147 "fortran.lex" 
     10162case 22: 
     10163YY_RULE_SETUP 
     10164#line 149 "fortran.lex" 
    1175710165return TOK_CALL; 
    1175810166   YY_BREAK 
    11759 case 22: 
    11760 YY_RULE_SETUP 
    11761 #line 148 "fortran.lex" 
     10167case 23: 
     10168YY_RULE_SETUP 
     10169#line 150 "fortran.lex" 
    1176210170return TOK_TRUE; 
    1176310171   YY_BREAK 
    11764 case 23: 
    11765 YY_RULE_SETUP 
    11766 #line 149 "fortran.lex" 
     10172case 24: 
     10173YY_RULE_SETUP 
     10174#line 151 "fortran.lex" 
    1176710175return TOK_FALSE; 
    1176810176   YY_BREAK 
    11769 case 24: 
    11770 YY_RULE_SETUP 
    11771 #line 150 "fortran.lex" 
     10177case 25: 
     10178YY_RULE_SETUP 
     10179#line 152 "fortran.lex" 
    1177210180{return TOK_POINT_TO;} 
    1177310181   YY_BREAK 
    11774 case 25: 
    11775 YY_RULE_SETUP 
    11776 #line 151 "fortran.lex" 
    11777 {strcpy(yylval.na,yytext);return TOK_DASTER;} 
    11778    YY_BREAK 
    1177910182case 26: 
    1178010183YY_RULE_SETUP 
    11781 #line 152 "fortran.lex" 
    11782 {strcpy(yylval.na,yytext);return TOK_EQV;} 
     10184#line 153 "fortran.lex" 
     10185{strcpy(yylval.na,fortrantext);return TOK_DASTER;} 
    1178310186   YY_BREAK 
    1178410187case 27: 
    1178510188YY_RULE_SETUP 
    11786 #line 153 "fortran.lex" 
    11787 {strcpy(yylval.na,yytext);return TOK_EQ;} 
     10189#line 154 "fortran.lex" 
     10190{strcpy(yylval.na,fortrantext);return TOK_EQV;} 
    1178810191   YY_BREAK 
    1178910192case 28: 
    1179010193YY_RULE_SETUP 
    11791 #line 154 "fortran.lex" 
    11792 {strcpy(yylval.na,yytext);return TOK_GT;} 
     10194#line 155 "fortran.lex" 
     10195{strcpy(yylval.na,fortrantext);return TOK_EQ;} 
    1179310196   YY_BREAK 
    1179410197case 29: 
    1179510198YY_RULE_SETUP 
    11796 #line 155 "fortran.lex" 
    11797 {strcpy(yylval.na,yytext);return TOK_GE;} 
     10199#line 156 "fortran.lex" 
     10200{strcpy(yylval.na,fortrantext);return TOK_GT;} 
    1179810201   YY_BREAK 
    1179910202case 30: 
    1180010203YY_RULE_SETUP 
    11801 #line 156 "fortran.lex" 
    11802 {strcpy(yylval.na,yytext);return TOK_LT;} 
     10204#line 157 "fortran.lex" 
     10205{strcpy(yylval.na,fortrantext);return TOK_GE;} 
    1180310206   YY_BREAK 
    1180410207case 31: 
    1180510208YY_RULE_SETUP 
    11806 #line 157 "fortran.lex" 
    11807 {strcpy(yylval.na,yytext);return TOK_LE;} 
     10209#line 158 "fortran.lex" 
     10210{strcpy(yylval.na,fortrantext);return TOK_LT;} 
    1180810211   YY_BREAK 
    1180910212case 32: 
    1181010213YY_RULE_SETUP 
    11811 #line 158 "fortran.lex" 
    11812 {strcpy(yylval.na,yytext);return TOK_NEQV;} 
     10214#line 159 "fortran.lex" 
     10215{strcpy(yylval.na,fortrantext);return TOK_LE;} 
    1181310216   YY_BREAK 
    1181410217case 33: 
    1181510218YY_RULE_SETUP 
    11816 #line 159 "fortran.lex" 
    11817 {strcpy(yylval.na,yytext);return TOK_NE;} 
     10219#line 160 "fortran.lex" 
     10220{strcpy(yylval.na,fortrantext);return TOK_NEQV;} 
    1181810221   YY_BREAK 
    1181910222case 34: 
    1182010223YY_RULE_SETUP 
    11821 #line 160 "fortran.lex" 
    11822 {strcpy(yylval.na,yytext);return TOK_NOT;} 
     10224#line 161 "fortran.lex" 
     10225{strcpy(yylval.na,fortrantext);return TOK_NE;} 
    1182310226   YY_BREAK 
    1182410227case 35: 
    1182510228YY_RULE_SETUP 
    11826 #line 161 "fortran.lex" 
    11827 {strcpy(yylval.na,yytext);return TOK_OR;} 
     10229#line 162 "fortran.lex" 
     10230{strcpy(yylval.na,fortrantext);return TOK_NOT;} 
    1182810231   YY_BREAK 
    1182910232case 36: 
    1183010233YY_RULE_SETUP 
    11831 #line 162 "fortran.lex" 
    11832 {strcpy(yylval.na,yytext);return TOK_XOR;} 
     10234#line 163 "fortran.lex" 
     10235{strcpy(yylval.na,fortrantext);return TOK_OR;} 
    1183310236   YY_BREAK 
    1183410237case 37: 
    1183510238YY_RULE_SETUP 
    11836 #line 163 "fortran.lex" 
    11837 {strcpy(yylval.na,yytext);return TOK_AND;} 
     10239#line 164 "fortran.lex" 
     10240{strcpy(yylval.na,fortrantext);return TOK_XOR;} 
    1183810241   YY_BREAK 
    1183910242case 38: 
    1184010243YY_RULE_SETUP 
    11841 #line 164 "fortran.lex" 
     10244#line 165 "fortran.lex" 
     10245{strcpy(yylval.na,fortrantext);return TOK_AND;} 
     10246   YY_BREAK 
     10247case 39: 
     10248YY_RULE_SETUP 
     10249#line 166 "fortran.lex" 
    1184210250{return TOK_MODULE;} 
    1184310251   YY_BREAK 
    11844 case 39: 
    11845 YY_RULE_SETUP 
    11846 #line 165 "fortran.lex" 
     10252case 40: 
     10253YY_RULE_SETUP 
     10254#line 167 "fortran.lex" 
    1184710255{return TOK_DOWHILE;} 
    1184810256   YY_BREAK 
    11849 case 40: 
    11850 YY_RULE_SETUP 
    11851 #line 166 "fortran.lex" 
     10257case 41: 
     10258YY_RULE_SETUP 
     10259#line 168 "fortran.lex" 
    1185210260return TOK_ENDMODULE; 
    1185310261   YY_BREAK 
    11854 case 41: 
    11855 YY_RULE_SETUP 
    11856 #line 167 "fortran.lex" 
     10262case 42: 
     10263YY_RULE_SETUP 
     10264#line 169 "fortran.lex" 
    1185710265return TOK_ENDDO; 
    1185810266   YY_BREAK 
    11859 case 42: 
    11860 YY_RULE_SETUP 
    11861 #line 168 "fortran.lex" 
     10267case 43: 
     10268YY_RULE_SETUP 
     10269#line 170 "fortran.lex" 
    1186210270{return TOK_PLAINDO;} 
    1186310271   YY_BREAK 
    11864 case 43: 
    11865 YY_RULE_SETUP 
    11866 #line 169 "fortran.lex" 
    11867 {strcpy(yylval.na,yytext);return TOK_REAL;} 
    11868    YY_BREAK 
    1186910272case 44: 
    1187010273YY_RULE_SETUP 
    11871 #line 170 "fortran.lex" 
    11872 {strcpy(yylval.na,yytext);return TOK_INTEGER;} 
     10274#line 171 "fortran.lex" 
     10275{strcpy(yylval.na,fortrantext);return TOK_REAL;} 
    1187310276   YY_BREAK 
    1187410277case 45: 
    1187510278YY_RULE_SETUP 
    11876 #line 171 "fortran.lex" 
    11877 {strcpy(yylval.na,yytext);return TOK_LOGICAL;} 
     10279#line 172 "fortran.lex" 
     10280{strcpy(yylval.na,fortrantext);return TOK_INTEGER;} 
    1187810281   YY_BREAK 
    1187910282case 46: 
    1188010283YY_RULE_SETUP 
    11881 #line 172 "fortran.lex" 
    11882 {strcpy(yylval.na,yytext);return TOK_CHARACTER;} 
     10284#line 173 "fortran.lex" 
     10285{strcpy(yylval.na,fortrantext);return TOK_LOGICAL;} 
    1188310286   YY_BREAK 
    1188410287case 47: 
    1188510288YY_RULE_SETUP 
    11886 #line 173 "fortran.lex" 
     10289#line 174 "fortran.lex" 
     10290{strcpy(yylval.na,fortrantext);return TOK_CHARACTER;} 
     10291   YY_BREAK 
     10292case 48: 
     10293YY_RULE_SETUP 
     10294#line 175 "fortran.lex" 
    1188710295{return TOK_ALLOCATABLE;} 
    1188810296   YY_BREAK 
    11889 case 48: 
    11890 YY_RULE_SETUP 
    11891 #line 174 "fortran.lex" 
     10297case 49: 
     10298YY_RULE_SETUP 
     10299#line 176 "fortran.lex" 
    1189210300return TOK_CLOSE; 
    1189310301   YY_BREAK 
    11894 case 49: 
    11895 YY_RULE_SETUP 
    11896 #line 175 "fortran.lex" 
     10302case 50: 
     10303YY_RULE_SETUP 
     10304#line 177 "fortran.lex" 
    1189710305return TOK_INQUIRE; 
    1189810306   YY_BREAK 
    11899 case 50: 
    11900 YY_RULE_SETUP 
    11901 #line 176 "fortran.lex" 
     10307case 51: 
     10308YY_RULE_SETUP 
     10309#line 178 "fortran.lex" 
    1190210310{return TOK_DIMENSION;} 
    1190310311   YY_BREAK 
    11904 case 51: 
    11905 YY_RULE_SETUP 
    11906 #line 177 "fortran.lex" 
     10312case 52: 
     10313YY_RULE_SETUP 
     10314#line 179 "fortran.lex" 
    1190710315return TOK_PAUSE; 
    1190810316   YY_BREAK 
    11909 case 52: 
    11910 YY_RULE_SETUP 
    11911 #line 178 "fortran.lex" 
     10317case 53: 
     10318YY_RULE_SETUP 
     10319#line 180 "fortran.lex" 
    1191210320return TOK_EQUIVALENCE; 
    1191310321   YY_BREAK 
    11914 case 53: 
    11915 YY_RULE_SETUP 
    11916 #line 179 "fortran.lex" 
     10322case 54: 
     10323YY_RULE_SETUP 
     10324#line 181 "fortran.lex" 
    1191710325return TOK_STOP; 
    1191810326   YY_BREAK 
    11919 case 54: 
    11920 YY_RULE_SETUP 
    11921 #line 180 "fortran.lex" 
     10327case 55: 
     10328YY_RULE_SETUP 
     10329#line 182 "fortran.lex" 
    1192210330return TOK_WHERE; 
    1192310331   YY_BREAK 
    11924 case 55: 
    11925 YY_RULE_SETUP 
    11926 #line 181 "fortran.lex" 
     10332case 56: 
     10333YY_RULE_SETUP 
     10334#line 183 "fortran.lex" 
    1192710335return TOK_ENDWHERE; 
    1192810336   YY_BREAK 
    11929 case 56: 
    11930 YY_RULE_SETUP 
    11931 #line 182 "fortran.lex" 
     10337case 57: 
     10338YY_RULE_SETUP 
     10339#line 184 "fortran.lex" 
    1193210340return TOK_ELSEWHERE; 
    1193310341   YY_BREAK 
    11934 case 57: 
    11935 YY_RULE_SETUP 
    11936 #line 183 "fortran.lex" 
     10342case 58: 
     10343YY_RULE_SETUP 
     10344#line 185 "fortran.lex" 
    1193710345{return TOK_COMPLEX;} 
    1193810346   YY_BREAK 
    11939 case 58: 
    11940 YY_RULE_SETUP 
    11941 #line 184 "fortran.lex" 
     10347case 59: 
     10348YY_RULE_SETUP 
     10349#line 186 "fortran.lex" 
    1194210350{return TOK_CONTAINS;} 
    1194310351   YY_BREAK 
    11944 case 59: 
    11945 YY_RULE_SETUP 
    11946 #line 185 "fortran.lex" 
     10352case 60: 
     10353YY_RULE_SETUP 
     10354#line 187 "fortran.lex" 
    1194710355{return TOK_ONLY;} 
    1194810356   YY_BREAK 
    11949 case 60: 
    11950 YY_RULE_SETUP 
    11951 #line 186 "fortran.lex" 
     10357case 61: 
     10358YY_RULE_SETUP 
     10359#line 188 "fortran.lex" 
    1195210360{return TOK_PARAMETER;} 
    1195310361   YY_BREAK 
    11954 case 61: 
    11955 YY_RULE_SETUP 
    11956 #line 187 "fortran.lex" 
     10362case 62: 
     10363YY_RULE_SETUP 
     10364#line 189 "fortran.lex" 
    1195710365{return TOK_RECURSIVE;} 
    1195810366   YY_BREAK 
    11959 case 62: 
    11960 YY_RULE_SETUP 
    11961 #line 188 "fortran.lex" 
     10367case 63: 
     10368YY_RULE_SETUP 
     10369#line 190 "fortran.lex" 
    1196210370{return TOK_COMMON;} 
    1196310371   YY_BREAK 
    11964 case 63: 
    11965 YY_RULE_SETUP 
    11966 #line 189 "fortran.lex" 
     10372case 64: 
     10373YY_RULE_SETUP 
     10374#line 191 "fortran.lex" 
    1196710375{return TOK_GLOBAL;} 
    1196810376   YY_BREAK 
    11969 case 64: 
    11970 YY_RULE_SETUP 
    11971 #line 190 "fortran.lex" 
     10377case 65: 
     10378YY_RULE_SETUP 
     10379#line 192 "fortran.lex" 
    1197210380{return TOK_EXTERNAL;} 
    1197310381   YY_BREAK 
    11974 case 65: 
    11975 YY_RULE_SETUP 
    11976 #line 191 "fortran.lex" 
     10382case 66: 
     10383YY_RULE_SETUP 
     10384#line 193 "fortran.lex" 
    1197710385{return TOK_INTENT;} 
    1197810386   YY_BREAK 
    11979 case 66: 
    11980 YY_RULE_SETUP 
    11981 #line 192 "fortran.lex" 
     10387case 67: 
     10388YY_RULE_SETUP 
     10389#line 194 "fortran.lex" 
    1198210390{return TOK_POINTER;} 
    1198310391   YY_BREAK 
    11984 case 67: 
    11985 YY_RULE_SETUP 
    11986 #line 193 "fortran.lex" 
     10392case 68: 
     10393YY_RULE_SETUP 
     10394#line 195 "fortran.lex" 
    1198710395{return TOK_OPTIONAL;} 
    1198810396   YY_BREAK 
    11989 case 68: 
    11990 YY_RULE_SETUP 
    11991 #line 194 "fortran.lex" 
     10397case 69: 
     10398YY_RULE_SETUP 
     10399#line 196 "fortran.lex" 
    1199210400{return TOK_SAVE;} 
    1199310401   YY_BREAK 
    11994 case 69: 
    11995 YY_RULE_SETUP 
    11996 #line 195 "fortran.lex" 
     10402case 70: 
     10403YY_RULE_SETUP 
     10404#line 197 "fortran.lex" 
    1199710405{return TOK_TYPE;} 
    1199810406   YY_BREAK 
    11999 case 70: 
    12000 YY_RULE_SETUP 
    12001 #line 196 "fortran.lex" 
     10407case 71: 
     10408YY_RULE_SETUP 
     10409#line 198 "fortran.lex" 
    1200210410{return TOK_TYPEPAR;} 
    1200310411   YY_BREAK 
    12004 case 71: 
    12005 YY_RULE_SETUP 
    12006 #line 197 "fortran.lex" 
    12007 {if (inallocate == 1) return TOK_STAT; else {strcpy(yylval.na,yytext);return TOK_NAME;}} 
    12008    YY_BREAK 
    1200910412case 72: 
    1201010413YY_RULE_SETUP 
    12011 #line 198 "fortran.lex" 
     10414#line 199 "fortran.lex" 
     10415{if (inallocate == 1) return TOK_STAT; else {strcpy(yylval.na,fortrantext);return TOK_NAME;}} 
     10416   YY_BREAK 
     10417case 73: 
     10418YY_RULE_SETUP 
     10419#line 200 "fortran.lex" 
    1201210420{return TOK_ENDTYPE;} 
    1201310421   YY_BREAK 
    12014 case 73: 
    12015 YY_RULE_SETUP 
    12016 #line 199 "fortran.lex" 
     10422case 74: 
     10423YY_RULE_SETUP 
     10424#line 201 "fortran.lex" 
    1201710425return TOK_OPEN; 
    1201810426   YY_BREAK 
    12019 case 74: 
    12020 YY_RULE_SETUP 
    12021 #line 200 "fortran.lex" 
     10427case 75: 
     10428YY_RULE_SETUP 
     10429#line 202 "fortran.lex" 
    1202210430return TOK_RETURN; 
    1202310431   YY_BREAK 
    12024 case 75: 
    12025 YY_RULE_SETUP 
    12026 #line 201 "fortran.lex" 
     10432case 76: 
     10433/* rule 76 can match eol */ 
     10434YY_RULE_SETUP 
     10435#line 203 "fortran.lex" 
    1202710436return TOK_EXIT; 
    1202810437   YY_BREAK 
    12029 case 76: 
    12030 YY_RULE_SETUP 
    12031 #line 202 "fortran.lex" 
     10438case 77: 
     10439YY_RULE_SETUP 
     10440#line 204 "fortran.lex" 
    1203210441return TOK_PRINT; 
    1203310442   YY_BREAK 
    12034 case 77: 
    12035 YY_RULE_SETUP 
    12036 #line 203 "fortran.lex" 
     10443case 78: 
     10444YY_RULE_SETUP 
     10445#line 205 "fortran.lex" 
    1203710446{return TOK_PROCEDURE;} 
    1203810447   YY_BREAK 
    12039 case 78: 
    12040 YY_RULE_SETUP 
    12041 #line 204 "fortran.lex" 
     10448case 79: 
     10449YY_RULE_SETUP 
     10450#line 206 "fortran.lex" 
    1204210451{return TOK_READ;} 
    1204310452   YY_BREAK 
    12044 case 79: 
    12045 YY_RULE_SETUP 
    12046 #line 205 "fortran.lex" 
     10453case 80: 
     10454YY_RULE_SETUP 
     10455#line 207 "fortran.lex" 
    1204710456{return TOK_NAMELIST;} 
    1204810457   YY_BREAK 
    12049 case 80: 
    12050 YY_RULE_SETUP 
    12051 #line 206 "fortran.lex" 
     10458case 81: 
     10459YY_RULE_SETUP 
     10460#line 208 "fortran.lex" 
    1205210461{return TOK_WRITE;} 
    1205310462   YY_BREAK 
    12054 case 81: 
    12055 YY_RULE_SETUP 
    12056 #line 207 "fortran.lex" 
     10463case 82: 
     10464YY_RULE_SETUP 
     10465#line 209 "fortran.lex" 
    1205710466{return TOK_TARGET;} 
    1205810467   YY_BREAK 
    12059 case 82: 
    12060 YY_RULE_SETUP 
    12061 #line 208 "fortran.lex" 
     10468case 83: 
     10469YY_RULE_SETUP 
     10470#line 210 "fortran.lex" 
    1206210471{return TOK_PUBLIC;} 
    1206310472   YY_BREAK 
    12064 case 83: 
    12065 YY_RULE_SETUP 
    12066 #line 209 "fortran.lex" 
     10473case 84: 
     10474YY_RULE_SETUP 
     10475#line 211 "fortran.lex" 
    1206710476{return TOK_PRIVATE;} 
    1206810477   YY_BREAK 
    12069 case 84: 
    12070 YY_RULE_SETUP 
    12071 #line 210 "fortran.lex" 
    12072 {strcpy(yylval.nac,yytext);return TOK_IN;} 
    12073    YY_BREAK 
    1207410478case 85: 
    1207510479YY_RULE_SETUP 
    12076 #line 211 "fortran.lex" 
    12077 {strcpy(yylval.na,yytext);return TOK_DATA;} 
     10480#line 212 "fortran.lex" 
     10481{strcpy(yylval.nac,fortrantext);return TOK_IN;} 
    1207810482   YY_BREAK 
    1207910483case 86: 
    1208010484YY_RULE_SETUP 
    12081 #line 212 "fortran.lex" 
     10485#line 213 "fortran.lex" 
     10486{strcpy(yylval.na,fortrantext);return TOK_DATA;} 
     10487   YY_BREAK 
     10488case 87: 
     10489YY_RULE_SETUP 
     10490#line 214 "fortran.lex" 
    1208210491return TOK_CONTINUE; 
    1208310492   YY_BREAK 
    12084 case 87: 
    12085 YY_RULE_SETUP 
    12086 #line 213 "fortran.lex" 
     10493case 88: 
     10494YY_RULE_SETUP 
     10495#line 215 "fortran.lex" 
    1208710496{return TOK_PLAINGOTO;} 
    1208810497   YY_BREAK 
    12089 case 88: 
    12090 YY_RULE_SETUP 
    12091 #line 214 "fortran.lex" 
    12092 {strcpy(yylval.nac,yytext);return TOK_OUT;} 
    12093    YY_BREAK 
    1209410498case 89: 
    1209510499YY_RULE_SETUP 
    12096 #line 215 "fortran.lex" 
    12097 {strcpy(yylval.nac,yytext);return TOK_INOUT;} 
     10500#line 216 "fortran.lex" 
     10501{strcpy(yylval.nac,fortrantext);return TOK_OUT;} 
    1209810502   YY_BREAK 
    1209910503case 90: 
    1210010504YY_RULE_SETUP 
    12101 #line 216 "fortran.lex" 
     10505#line 217 "fortran.lex" 
     10506{strcpy(yylval.nac,fortrantext);return TOK_INOUT;} 
     10507   YY_BREAK 
     10508case 91: 
     10509YY_RULE_SETUP 
     10510#line 218 "fortran.lex" 
    1210210511{return TOK_INTRINSIC;} 
    1210310512   YY_BREAK 
    12104 case 91: 
    12105 YY_RULE_SETUP 
    12106 #line 217 "fortran.lex" 
     10513case 92: 
     10514YY_RULE_SETUP 
     10515#line 219 "fortran.lex" 
    1210710516{return TOK_THEN;} 
    1210810517   YY_BREAK 
    12109 case 92: 
    12110 YY_RULE_SETUP 
    12111 #line 218 "fortran.lex" 
     10518case 93: 
     10519YY_RULE_SETUP 
     10520#line 220 "fortran.lex" 
    1211210521{return TOK_ELSEIF;} 
    1211310522   YY_BREAK 
    12114 case 93: 
    12115 YY_RULE_SETUP 
    12116 #line 219 "fortran.lex" 
     10523case 94: 
     10524YY_RULE_SETUP 
     10525#line 221 "fortran.lex" 
    1211710526{return TOK_ELSE;} 
    1211810527   YY_BREAK 
    12119 case 94: 
    12120 YY_RULE_SETUP 
    12121 #line 220 "fortran.lex" 
     10528case 95: 
     10529YY_RULE_SETUP 
     10530#line 222 "fortran.lex" 
    1212210531{return TOK_ENDIF;} 
    1212310532   YY_BREAK 
    12124 case 95: 
    12125 YY_RULE_SETUP 
    12126 #line 221 "fortran.lex" 
     10533case 96: 
     10534YY_RULE_SETUP 
     10535#line 223 "fortran.lex" 
    1212710536{return TOK_LOGICALIF;} 
    1212810537   YY_BREAK 
    12129 case 96: 
    12130 YY_RULE_SETUP 
    12131 #line 222 "fortran.lex" 
     10538case 97: 
     10539YY_RULE_SETUP 
     10540#line 224 "fortran.lex" 
    1213210541{return TOK_SUM;} 
    1213310542   YY_BREAK 
    12134 case 97: 
    12135 YY_RULE_SETUP 
    12136 #line 223 "fortran.lex" 
     10543case 98: 
     10544YY_RULE_SETUP 
     10545#line 225 "fortran.lex" 
    1213710546{return TOK_MAX;} 
    1213810547   YY_BREAK 
    12139 case 98: 
    12140 YY_RULE_SETUP 
    12141 #line 224 "fortran.lex" 
     10548case 99: 
     10549YY_RULE_SETUP 
     10550#line 226 "fortran.lex" 
    1214210551{return TOK_TANH;} 
    1214310552   YY_BREAK 
    12144 case 99: 
    12145 YY_RULE_SETUP 
    12146 #line 225 "fortran.lex" 
     10553case 100: 
     10554YY_RULE_SETUP 
     10555#line 227 "fortran.lex" 
    1214710556{return TOK_MAXVAL;} 
    1214810557   YY_BREAK 
    12149 case 100: 
    12150 YY_RULE_SETUP 
    12151 #line 226 "fortran.lex" 
     10558case 101: 
     10559YY_RULE_SETUP 
     10560#line 228 "fortran.lex" 
    1215210561{return TOK_TRIM;} 
    1215310562   YY_BREAK 
    12154 case 101: 
    12155 YY_RULE_SETUP 
    12156 #line 227 "fortran.lex" 
     10563case 102: 
     10564YY_RULE_SETUP 
     10565#line 229 "fortran.lex" 
    1215710566{return TOK_SQRT;} 
    1215810567   YY_BREAK 
    12159 case 102: 
    12160 YY_RULE_SETUP 
    12161 #line 228 "fortran.lex" 
     10568case 103: 
     10569YY_RULE_SETUP 
     10570#line 230 "fortran.lex" 
    1216210571{return TOK_SELECTCASE;} 
    1216310572   YY_BREAK 
    12164 case 103: 
    12165 YY_RULE_SETUP 
    12166 #line 229 "fortran.lex" 
     10573case 104: 
     10574YY_RULE_SETUP 
     10575#line 231 "fortran.lex" 
    1216710576{return TOK_CASE;} 
    1216810577   YY_BREAK 
    12169 case 104: 
    12170 YY_RULE_SETUP 
    12171 #line 230 "fortran.lex" 
     10578case 105: 
     10579YY_RULE_SETUP 
     10580#line 232 "fortran.lex" 
    1217210581{return TOK_CASEDEFAULT;} 
    1217310582   YY_BREAK 
    12174 case 105: 
    12175 YY_RULE_SETUP 
    12176 #line 231 "fortran.lex" 
     10583case 106: 
     10584YY_RULE_SETUP 
     10585#line 233 "fortran.lex" 
    1217710586{return TOK_ENDSELECT;} 
    1217810587   YY_BREAK 
    12179 case 106: 
    12180 YY_RULE_SETUP 
    12181 #line 232 "fortran.lex" 
     10588case 107: 
     10589YY_RULE_SETUP 
     10590#line 234 "fortran.lex" 
    1218210591{return TOK_FILE;} 
    1218310592   YY_BREAK 
    12184 case 107: 
    12185 YY_RULE_SETUP 
    12186 #line 233 "fortran.lex" 
     10593case 108: 
     10594YY_RULE_SETUP 
     10595#line 235 "fortran.lex" 
    1218710596{return TOK_END;} 
    1218810597   YY_BREAK 
    12189 case 108: 
    12190 YY_RULE_SETUP 
    12191 #line 234 "fortran.lex" 
     10598case 109: 
     10599YY_RULE_SETUP 
     10600#line 236 "fortran.lex" 
    1219210601{return TOK_ERR;} 
    1219310602   YY_BREAK 
    12194 case 109: 
    12195 YY_RULE_SETUP 
    12196 #line 235 "fortran.lex" 
     10603case 110: 
     10604YY_RULE_SETUP 
     10605#line 237 "fortran.lex" 
    1219710606{return TOK_EXIST;} 
    1219810607   YY_BREAK 
    12199 case 110: 
    12200 YY_RULE_SETUP 
    12201 #line 236 "fortran.lex" 
     10608case 111: 
     10609YY_RULE_SETUP 
     10610#line 238 "fortran.lex" 
    1220210611{return TOK_MIN;} 
    1220310612   YY_BREAK 
    12204 case 111: 
    12205 YY_RULE_SETUP 
    12206 #line 237 "fortran.lex" 
     10613case 112: 
     10614YY_RULE_SETUP 
     10615#line 239 "fortran.lex" 
    1220710616{return TOK_NINT;} 
    1220810617   YY_BREAK 
    12209 case 112: 
    12210 YY_RULE_SETUP 
    12211 #line 238 "fortran.lex" 
     10618case 113: 
     10619YY_RULE_SETUP 
     10620#line 240 "fortran.lex" 
    1221210621{return TOK_FLOAT;} 
    1221310622   YY_BREAK 
    12214 case 113: 
    12215 YY_RULE_SETUP 
    12216 #line 239 "fortran.lex" 
     10623case 114: 
     10624YY_RULE_SETUP 
     10625#line 241 "fortran.lex" 
    1221710626{return TOK_EXP;} 
    1221810627   YY_BREAK 
    12219 case 114: 
    12220 YY_RULE_SETUP 
    12221 #line 240 "fortran.lex" 
     10628case 115: 
     10629YY_RULE_SETUP 
     10630#line 242 "fortran.lex" 
    1222210631{return TOK_COS;} 
    1222310632   YY_BREAK 
    12224 case 115: 
    12225 YY_RULE_SETUP 
    12226 #line 241 "fortran.lex" 
     10633case 116: 
     10634YY_RULE_SETUP 
     10635#line 243 "fortran.lex" 
    1222710636{return TOK_COSH;} 
    1222810637   YY_BREAK 
    12229 case 116: 
    12230 YY_RULE_SETUP 
    12231 #line 242 "fortran.lex" 
     10638case 117: 
     10639YY_RULE_SETUP 
     10640#line 244 "fortran.lex" 
    1223210641{return TOK_ACOS;} 
    1223310642   YY_BREAK 
    12234 case 117: 
    12235 YY_RULE_SETUP 
    12236 #line 243 "fortran.lex" 
     10643case 118: 
     10644YY_RULE_SETUP 
     10645#line 245 "fortran.lex" 
    1223710646{return TOK_SIN;} 
    1223810647   YY_BREAK 
    12239 case 118: 
    12240 YY_RULE_SETUP 
    12241 #line 244 "fortran.lex" 
     10648case 119: 
     10649YY_RULE_SETUP 
     10650#line 246 "fortran.lex" 
    1224210651{return TOK_SINH;} 
    1224310652   YY_BREAK 
    12244 case 119: 
    12245 YY_RULE_SETUP 
    12246 #line 245 "fortran.lex" 
     10653case 120: 
     10654YY_RULE_SETUP 
     10655#line 247 "fortran.lex" 
    1224710656{return TOK_ASIN;} 
    1224810657   YY_BREAK 
    12249 case 120: 
    12250 YY_RULE_SETUP 
    12251 #line 246 "fortran.lex" 
     10658case 121: 
     10659YY_RULE_SETUP 
     10660#line 248 "fortran.lex" 
    1225210661{return TOK_LOG;} 
    1225310662   YY_BREAK 
    12254 case 121: 
    12255 YY_RULE_SETUP 
    12256 #line 247 "fortran.lex" 
     10663case 122: 
     10664YY_RULE_SETUP 
     10665#line 249 "fortran.lex" 
    1225710666{return TOK_TAN;} 
    1225810667   YY_BREAK 
    12259 case 122: 
    12260 YY_RULE_SETUP 
    12261 #line 248 "fortran.lex" 
     10668case 123: 
     10669YY_RULE_SETUP 
     10670#line 250 "fortran.lex" 
    1226210671{return TOK_ATAN;} 
    1226310672   YY_BREAK 
    12264 case 123: 
    12265 YY_RULE_SETUP 
    12266 #line 249 "fortran.lex" 
     10673case 124: 
     10674YY_RULE_SETUP 
     10675#line 251 "fortran.lex" 
    1226710676{return TOK_CYCLE;} 
    1226810677   YY_BREAK 
    12269 case 124: 
    12270 YY_RULE_SETUP 
    12271 #line 250 "fortran.lex" 
     10678case 125: 
     10679YY_RULE_SETUP 
     10680#line 252 "fortran.lex" 
    1227210681{return TOK_ABS;} 
    1227310682   YY_BREAK 
    12274 case 125: 
    12275 YY_RULE_SETUP 
    12276 #line 251 "fortran.lex" 
     10683case 126: 
     10684YY_RULE_SETUP 
     10685#line 253 "fortran.lex" 
    1227710686{return TOK_MOD;} 
    1227810687   YY_BREAK 
    12279 case 126: 
    12280 YY_RULE_SETUP 
    12281 #line 252 "fortran.lex" 
     10688case 127: 
     10689YY_RULE_SETUP 
     10690#line 254 "fortran.lex" 
    1228210691{return TOK_SIGN;} 
    1228310692   YY_BREAK 
    12284 case 127: 
    12285 YY_RULE_SETUP 
    12286 #line 253 "fortran.lex" 
     10693case 128: 
     10694YY_RULE_SETUP 
     10695#line 255 "fortran.lex" 
    1228710696{return TOK_MINLOC;} 
    1228810697   YY_BREAK 
    12289 case 128: 
    12290 YY_RULE_SETUP 
    12291 #line 254 "fortran.lex" 
     10698case 129: 
     10699YY_RULE_SETUP 
     10700#line 256 "fortran.lex" 
    1229210701{return TOK_MAXLOC;} 
    1229310702   YY_BREAK 
    12294 case 129: 
    12295 YY_RULE_SETUP 
    12296 #line 255 "fortran.lex" 
     10703case 130: 
     10704YY_RULE_SETUP 
     10705#line 257 "fortran.lex" 
    1229710706{return TOK_MINVAL;} 
    1229810707   YY_BREAK 
    12299 case 130: 
    12300 YY_RULE_SETUP 
    12301 #line 256 "fortran.lex" 
    12302 {return TOK_INTERFACE;} 
    12303    YY_BREAK 
    1230410708case 131: 
    1230510709YY_RULE_SETUP 
    12306 #line 257 "fortran.lex" 
     10710#line 258 "fortran.lex" 
    1230710711{return TOK_BACKSPACE;} 
    1230810712   YY_BREAK 
    1230910713case 132: 
    12310 YY_RULE_SETUP 
    12311 #line 258 "fortran.lex" 
    12312 {return TOK_ENDINTERFACE;} 
    12313    YY_BREAK 
    12314 case 133: 
    1231510714YY_RULE_SETUP 
    1231610715#line 259 "fortran.lex" 
    1231710716{return TOK_LEFTAB;} 
    1231810717   YY_BREAK 
    12319 case 134: 
     10718case 133: 
    1232010719YY_RULE_SETUP 
    1232110720#line 260 "fortran.lex" 
    1232210721{return TOK_RIGHTAB;} 
    1232310722   YY_BREAK 
    12324 case 135: 
     10723case 134: 
     10724/* rule 134 can match eol */ 
    1232510725YY_RULE_SETUP 
    1232610726#line 261 "fortran.lex" 
    1232710727{return TOK_FORMAT;} 
    1232810728   YY_BREAK 
     10729case 135: 
     10730YY_RULE_SETUP 
     10731#line 262 "fortran.lex" 
     10732{strcpy(yylval.na,fortrantext);return TOK_DOUBLEPRECISION;} 
     10733   YY_BREAK 
    1232910734case 136: 
    1233010735YY_RULE_SETUP 
    12331 #line 262 "fortran.lex" 
    12332 {strcpy(yylval.na,yytext);return TOK_DOUBLEPRECISION;} 
     10736#line 263 "fortran.lex" 
     10737{strcpy(yylval.na,fortrantext);return TOK_DOUBLECOMPLEX;} 
    1233310738   YY_BREAK 
    1233410739case 137: 
    1233510740YY_RULE_SETUP 
    12336 #line 263 "fortran.lex" 
    12337 {strcpy(yylval.na,yytext);return TOK_DOUBLECOMPLEX;} 
     10741#line 264 "fortran.lex" 
     10742{strcpy(yylval.na,fortrantext);return TOK_SLASH;} 
    1233810743   YY_BREAK 
    1233910744case 138: 
    1234010745YY_RULE_SETUP 
    12341 #line 264 "fortran.lex" 
    12342 {strcpy(yylval.na,yytext);return TOK_SLASH;} 
     10746#line 265 "fortran.lex" 
     10747{strcpy(yylval.na,fortrantext);return TOK_DSLASH;} 
    1234310748   YY_BREAK 
    1234410749case 139: 
    12345 YY_RULE_SETUP 
    12346 #line 265 "fortran.lex" 
    12347 {strcpy(yylval.na,yytext);return TOK_DSLASH;} 
     10750/* rule 139 can match eol */ 
     10751YY_RULE_SETUP 
     10752#line 266 "fortran.lex" 
     10753{strcpy(yylval.na,fortrantext);return TOK_CHAR_CUT;} 
    1234810754   YY_BREAK 
    1234910755case 140: 
    1235010756YY_RULE_SETUP 
    12351 #line 266 "fortran.lex" 
    12352 {strcpy(yylval.na,yytext);return TOK_CHAR_CUT;} 
     10757#line 267 "fortran.lex" 
     10758{strcpy(yylval.na,fortrantext);return TOK_CHAR_CONSTANT;} 
    1235310759   YY_BREAK 
    1235410760case 141: 
    1235510761YY_RULE_SETUP 
    12356 #line 267 "fortran.lex" 
    12357 {strcpy(yylval.na,yytext);return TOK_CHAR_CONSTANT;} 
     10762#line 268 "fortran.lex" 
     10763{strcpy(yylval.na,fortrantext);return TOK_CHAR_MESSAGE;} 
    1235810764   YY_BREAK 
    1235910765case 142: 
    1236010766YY_RULE_SETUP 
    12361 #line 268 "fortran.lex" 
    12362 {strcpy(yylval.na,yytext);return TOK_CHAR_MESSAGE;} 
     10767#line 269 "fortran.lex" 
     10768{strcpy(yylval.na,fortrantext);return TOK_CHAR_INT;} 
    1236310769   YY_BREAK 
    1236410770case 143: 
    1236510771YY_RULE_SETUP 
    12366 #line 269 "fortran.lex" 
    12367 {strcpy(yylval.na,yytext);return TOK_CHAR_INT;} 
     10772#line 270 "fortran.lex" 
     10773{printf("debug interfacer\n");BEGIN(donottreat);} 
    1236810774   YY_BREAK 
    1236910775case 144: 
    12370 YY_RULE_SETUP 
    12371 #line 270 "fortran.lex" 
    12372 {strcpy(yylval.na,yytext);return TOK_NAME;} 
     10776/* rule 144 can match eol */ 
     10777YY_RULE_SETUP 
     10778#line 271 "fortran.lex" 
     10779{ 
     10780                  BEGIN(INITIAL); 
     10781                        if (infixed) BEGIN(fortran77style) ; 
     10782                        if (infree) BEGIN(fortran90style)  ; 
     10783                        line_num_fortran++;line_num_fortran_common++; 
     10784                        return '\n'; 
     10785                  } 
    1237310786   YY_BREAK 
    1237410787case 145: 
    1237510788YY_RULE_SETUP 
    12376 #line 271 "fortran.lex" 
    12377 {strcpy(yylval.na,yytext);return TOK_CSTREAL;} 
     10789#line 278 "fortran.lex" 
     10790{strcpy(yylval.na,fortrantext);return TOK_NAME;} 
    1237810791   YY_BREAK 
    1237910792case 146: 
    1238010793YY_RULE_SETUP 
    12381 #line 272 "fortran.lex" 
    12382 {strcpy(yylval.na,yytext);return TOK_CSTREALDP;} 
     10794#line 279 "fortran.lex" 
     10795{strcpy(yylval.na,fortrantext);return TOK_CSTREAL;} 
    1238310796   YY_BREAK 
    1238410797case 147: 
    1238510798YY_RULE_SETUP 
    12386 #line 273 "fortran.lex" 
    12387 {strcpy(yylval.na,yytext);return TOK_CSTREALQP;} 
     10799#line 280 "fortran.lex" 
     10800{strcpy(yylval.na,fortrantext);return TOK_CSTREALDP;} 
    1238810801   YY_BREAK 
    1238910802case 148: 
    12390 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */ 
    12391 yy_c_buf_p = yy_cp -= 1; 
    12392 YY_DO_BEFORE_ACTION; /* set up yytext again */ 
    12393 YY_RULE_SETUP 
    12394 #line 274 "fortran.lex" 
    12395 {strcpy(yylval.na,yytext);return TOK_CSTREAL;} 
     10803YY_RULE_SETUP 
     10804#line 281 "fortran.lex" 
     10805{strcpy(yylval.na,fortrantext);return TOK_CSTREALQP;} 
    1239610806   YY_BREAK 
    1239710807case 149: 
    12398 YY_RULE_SETUP 
    12399 #line 275 "fortran.lex" 
    12400 {strcpy(yylval.na,yytext);return TOK_CSTINT;} 
     10808/* rule 149 can match eol */ 
     10809*yy_cp = (yy_hold_char); /* undo effects of setting up fortrantext */ 
     10810(yy_c_buf_p) = yy_cp -= 1; 
     10811YY_DO_BEFORE_ACTION; /* set up fortrantext again */ 
     10812YY_RULE_SETUP 
     10813#line 282 "fortran.lex" 
     10814{strcpy(yylval.na,fortrantext);return TOK_CSTREAL;} 
    1240110815   YY_BREAK 
    1240210816case 150: 
    1240310817YY_RULE_SETUP 
    12404 #line 276 "fortran.lex" 
     10818#line 283 "fortran.lex" 
     10819{strcpy(yylval.na,fortrantext);return TOK_CSTINT;} 
     10820   YY_BREAK 
     10821case 151: 
     10822YY_RULE_SETUP 
     10823#line 284 "fortran.lex" 
    1240510824{} 
    1240610825   YY_BREAK 
    12407 case 151: 
    12408 YY_RULE_SETUP 
    12409 #line 277 "fortran.lex" 
     10826case 152: 
     10827YY_RULE_SETUP 
     10828#line 285 "fortran.lex" 
    1241010829{return TOK_QUOTE;} 
    1241110830   YY_BREAK 
    12412 case 152: 
    12413 YY_RULE_SETUP 
    12414 #line 278 "fortran.lex" 
     10831case 153: 
     10832YY_RULE_SETUP 
     10833#line 286 "fortran.lex" 
    1241510834{} 
    1241610835   YY_BREAK 
    12417 case 153: 
    12418 YY_RULE_SETUP 
    12419 #line 279 "fortran.lex" 
    12420 {strcpy(yylval.na,yytext);return (int) *yytext;} 
    12421    YY_BREAK 
    1242210836case 154: 
    1242310837YY_RULE_SETUP 
    12424 #line 280 "fortran.lex" 
     10838#line 287 "fortran.lex" 
     10839{strcpy(yylval.na,fortrantext);return (int) *fortrantext;} 
     10840   YY_BREAK 
     10841case 155: 
     10842YY_RULE_SETUP 
     10843#line 288 "fortran.lex" 
     10844{afterpercent = 1; strcpy(yylval.na,fortrantext);return (int) *fortrantext;} 
     10845   YY_BREAK 
     10846case 156: 
     10847YY_RULE_SETUP 
     10848#line 289 "fortran.lex" 
    1242510849{return TOK_SEMICOLON;} 
    1242610850   YY_BREAK 
    12427 case 155: 
    12428 YY_RULE_SETUP 
    12429 #line 281 "fortran.lex" 
    12430 {return (int) *yytext;} 
    12431    YY_BREAK 
    12432 case 156: 
    12433 YY_RULE_SETUP 
    12434 #line 282 "fortran.lex" 
    12435 {return (int) *yytext;} 
    12436    YY_BREAK 
    1243710851case 157: 
    1243810852YY_RULE_SETUP 
    12439 #line 283 "fortran.lex" 
    12440 {return (int) *yytext;} 
     10853#line 290 "fortran.lex" 
     10854{return (int) *fortrantext;} 
    1244110855   YY_BREAK 
    1244210856case 158: 
    1244310857YY_RULE_SETUP 
    12444 #line 284 "fortran.lex" 
    12445 {return (int) *yytext;} 
     10858#line 291 "fortran.lex" 
     10859{return (int) *fortrantext;} 
    1244610860   YY_BREAK 
    1244710861case 159: 
    1244810862YY_RULE_SETUP 
    12449 #line 285 "fortran.lex" 
    12450 {colnum=0;line_num_fortran++;line_num_fortran_common++; return (int) *yytext;} 
     10863#line 292 "fortran.lex" 
     10864{return (int) *fortrantext;} 
    1245110865   YY_BREAK 
    1245210866case 160: 
    12453 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */ 
    12454 yy_c_buf_p = yy_cp -= 1; 
    12455 YY_DO_BEFORE_ACTION; /* set up yytext again */ 
    12456 YY_RULE_SETUP 
    12457 #line 286 "fortran.lex" 
    12458  
     10867YY_RULE_SETUP 
     10868#line 293 "fortran.lex" 
     10869{return (int) *fortrantext;} 
    1245910870   YY_BREAK 
    1246010871case 161: 
    12461 YY_RULE_SETUP 
    12462 #line 287 "fortran.lex" 
     10872/* rule 161 can match eol */ 
     10873YY_RULE_SETUP 
     10874#line 294 "fortran.lex" 
     10875{colnum=0;line_num_fortran++;line_num_fortran_common++; return (int) *fortrantext;} 
     10876   YY_BREAK 
     10877case 162: 
     10878*yy_cp = (yy_hold_char); /* undo effects of setting up fortrantext */ 
     10879(yy_c_buf_p) = yy_cp -= 1; 
     10880YY_DO_BEFORE_ACTION; /* set up fortrantext again */ 
     10881YY_RULE_SETUP 
     10882#line 295 "fortran.lex" 
     10883 
     10884   YY_BREAK 
     10885case 163: 
     10886YY_RULE_SETUP 
     10887#line 296 "fortran.lex" 
    1246310888{if (newlinef90 == 0) return TOK_LABEL; else newlinef90 = 0;} 
    1246410889   YY_BREAK 
    12465 case 162: 
    12466 YY_RULE_SETUP 
    12467 #line 288 "fortran.lex" 
    12468  
    12469    YY_BREAK 
    12470 case 163: 
    12471 YY_RULE_SETUP 
    12472 #line 289 "fortran.lex" 
     10890case 164: 
     10891YY_RULE_SETUP 
     10892#line 297 "fortran.lex" 
     10893 
     10894   YY_BREAK 
     10895case 165: 
     10896YY_RULE_SETUP 
     10897#line 298 "fortran.lex" 
    1247310898{colnum=colnum-1+tabsize;} 
    1247410899   YY_BREAK 
    12475 case 164: 
    12476 YY_RULE_SETUP 
    12477 #line 290 "fortran.lex" 
     10900case 166: 
     10901YY_RULE_SETUP 
     10902#line 299 "fortran.lex" 
    1247810903; 
    1247910904   YY_BREAK 
    12480 case 165: 
    12481 YY_RULE_SETUP 
    12482 #line 291 "fortran.lex" 
     10905case 167: 
     10906/* rule 167 can match eol */ 
     10907YY_RULE_SETUP 
     10908#line 300 "fortran.lex" 
    1248310909{line_num_fortran++;line_num_fortran_common++;newlinef90=1;colnum=0;} 
    1248410910   YY_BREAK 
    12485 case 166: 
    12486 YY_RULE_SETUP 
    12487 #line 292 "fortran.lex" 
     10911case 168: 
     10912/* rule 168 can match eol */ 
     10913YY_RULE_SETUP 
     10914#line 301 "fortran.lex" 
    1248810915{line_num_fortran++;line_num_fortran_common++;colnum=0;} 
    1248910916   YY_BREAK 
    12490 case 167: 
    12491 YY_RULE_SETUP 
    12492 #line 293 "fortran.lex" 
     10917case 169: 
     10918/* rule 169 can match eol */ 
     10919YY_RULE_SETUP 
     10920#line 302 "fortran.lex" 
    1249310921{ 
    1249410922                           convert2lower(motparse1); 
     
    1249910927                           else 
    1250010928                           { 
    12501                               colnum=0;line_num_fortran++;line_num_fortran_common++; 
    12502                              if ( !strcasecmp(motparse1,"C$AGRIF_DO_NOT_TREAT\n")) return TOK_DONOTTREAT; 
     10929                            /*  colnum=0;line_num_fortran++;line_num_fortran_common++;*/ 
     10930                             if ( !strcasecmp(motparse1,"C$AGRIF_DO_NOT_TREAT\n"))  
     10931                             return TOK_DONOTTREAT; 
    1250310932                             if ( !strcasecmp(motparse1,"C$AGRIF_END_DO_NOT_TREAT\n")) return TOK_ENDDONOTTREAT; 
     10933                             unput('\n'); 
    1250410934                           } 
    1250510935                         } 
    1250610936   YY_BREAK 
    12507 case 168: 
    12508 YY_RULE_SETUP 
    12509 #line 306 "fortran.lex" 
    12510 BEGIN(donottreat); 
    12511    YY_BREAK 
    12512 case 169: 
    12513 YY_RULE_SETUP 
    12514 #line 307 "fortran.lex" 
    12515 BEGIN(INITIAL); 
    12516    YY_BREAK 
    1251710937case 170: 
    12518 YY_RULE_SETUP 
    12519 #line 308 "fortran.lex" 
    12520  
     10938/* rule 170 can match eol */ 
     10939YY_RULE_SETUP 
     10940#line 317 "fortran.lex" 
     10941{ 
     10942                           convert2lower(&motparse1[1]); 
     10943                           if ( strncasecmp(&motparse1[1],"contains",8) == 0 ) 
     10944                           { 
     10945                              return TOK_CONTAINS; 
     10946                           } 
     10947                           else 
     10948                           { 
     10949                             /* colnum=0;line_num_fortran++;line_num_fortran_common++;*/ 
     10950                             if ( !strcasecmp(&motparse1[1],"C$AGRIF_DO_NOT_TREAT\n"))  
     10951                             return TOK_DONOTTREAT; 
     10952                             if ( !strcasecmp(&motparse1[1],"C$AGRIF_END_DO_NOT_TREAT\n")) return TOK_ENDDONOTTREAT; 
     10953                             unput('\n'); 
     10954                           } 
     10955                         }                             
    1252110956   YY_BREAK 
    1252210957case 171: 
    12523 YY_RULE_SETUP 
    12524 #line 309 "fortran.lex" 
     10958/* rule 171 can match eol */ 
     10959YY_RULE_SETUP 
     10960#line 332 "fortran.lex" 
     10961{ 
     10962                  BEGIN(donottreat); 
     10963                  } 
     10964   YY_BREAK 
     10965case 172: 
     10966/* rule 172 can match eol */ 
     10967YY_RULE_SETUP 
     10968#line 335 "fortran.lex" 
     10969{ 
     10970                  BEGIN(INITIAL); 
     10971                        if (infixed) BEGIN(fortran77style) ; 
     10972                        if (infree) BEGIN(fortran90style)  ; 
     10973                        line_num_fortran++;line_num_fortran_common++; 
     10974                        return '\n'; 
     10975                  } 
     10976   YY_BREAK 
     10977case 173: 
     10978/* rule 173 can match eol */ 
     10979YY_RULE_SETUP 
     10980#line 342 "fortran.lex" 
     10981{line_num_fortran++;line_num_fortran_common++;} 
     10982   YY_BREAK 
     10983case 174: 
     10984/* rule 174 can match eol */ 
     10985YY_RULE_SETUP 
     10986#line 343 "fortran.lex" 
    1252510987{ 
    1252610988                             colnum = 0; 
     
    1252910991                          } 
    1253010992   YY_BREAK 
    12531 case 172: 
    12532 YY_RULE_SETUP 
    12533 #line 314 "fortran.lex" 
     10993case 175: 
     10994YY_RULE_SETUP 
     10995#line 348 "fortran.lex" 
    1253410996{ 
    1253510997                             colnum = 0; 
     
    1253811000                          } 
    1253911001   YY_BREAK 
    12540 case 173: 
    12541 YY_RULE_SETUP 
    12542 #line 319 "fortran.lex" 
     11002case 176: 
     11003YY_RULE_SETUP 
     11004#line 353 "fortran.lex" 
    1254311005ECHO; 
    1254411006   YY_BREAK 
    12545 #line 2933 "fortran.yy.c" 
     11007#line 4224 "fortran.yy.c" 
    1254611008case YY_STATE_EOF(INITIAL): 
    1254711009case YY_STATE_EOF(parameter): 
     
    1255511017      { 
    1255611018      /* Amount of text matched not including the EOB char. */ 
    12557       int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1; 
     11019      int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 
    1255811020 
    1255911021      /* Undo the effects of YY_DO_BEFORE_ACTION. */ 
    12560       *yy_cp = yy_hold_char; 
     11022      *yy_cp = (yy_hold_char); 
    1256111023      YY_RESTORE_YY_MORE_OFFSET 
    1256211024 
    12563       if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW ) 
     11025      if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 
    1256411026         { 
    1256511027         /* We're scanning a new file or input source.  It's 
    1256611028          * possible that this happened because the user 
    12567           * just pointed yyin at a new source and called 
    12568           * yylex().  If so, then we have to assure 
    12569           * consistency between yy_current_buffer and our 
     11029          * just pointed fortranin at a new source and called 
     11030          * fortranlex().  If so, then we have to assure 
     11031          * consistency between YY_CURRENT_BUFFER and our 
    1257011032          * globals.  Here is the right place to do so, because 
    1257111033          * this is the first action (other than possibly a 
    1257211034          * back-up) that will match for the new input source. 
    1257311035          */ 
    12574          yy_n_chars = yy_current_buffer->yy_n_chars; 
    12575          yy_current_buffer->yy_input_file = yyin; 
    12576          yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL; 
     11036         (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 
     11037         YY_CURRENT_BUFFER_LVALUE->yy_input_file = fortranin; 
     11038         YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 
    1257711039         } 
    1257811040 
     
    1258411046       * in input(). 
    1258511047       */ 
    12586       if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] ) 
     11048      if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 
    1258711049         { /* This was really a NUL. */ 
    1258811050         yy_state_type yy_next_state; 
    1258911051 
    12590          yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text; 
    12591  
    12592          yy_current_state = yy_get_previous_state(); 
     11052         (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 
     11053 
     11054         yy_current_state = yy_get_previous_state(  ); 
    1259311055 
    1259411056         /* Okay, we're now positioned to make the NUL 
     
    1260311065         yy_next_state = yy_try_NUL_trans( yy_current_state ); 
    1260411066 
    12605          yy_bp = yytext_ptr + YY_MORE_ADJ; 
     11067         yy_bp = (yytext_ptr) + YY_MORE_ADJ; 
    1260611068 
    1260711069         if ( yy_next_state ) 
    1260811070            { 
    1260911071            /* Consume the NUL. */ 
    12610             yy_cp = ++yy_c_buf_p; 
     11072            yy_cp = ++(yy_c_buf_p); 
    1261111073            yy_current_state = yy_next_state; 
    1261211074            goto yy_match; 
     
    1261511077         else 
    1261611078            { 
    12617             yy_cp = yy_c_buf_p; 
     11079            yy_cp = (yy_c_buf_p); 
    1261811080            goto yy_find_action; 
    1261911081            } 
    1262011082         } 
    1262111083 
    12622       else switch ( yy_get_next_buffer() ) 
     11084      else switch ( yy_get_next_buffer(  ) ) 
    1262311085         { 
    1262411086         case EOB_ACT_END_OF_FILE: 
    1262511087            { 
    12626             yy_did_buffer_switch_on_eof = 0; 
    12627  
    12628             if ( yywrap() ) 
     11088            (yy_did_buffer_switch_on_eof) = 0; 
     11089 
     11090            if ( fortranwrap( ) ) 
    1262911091               { 
    1263011092               /* Note: because we've taken care in 
    1263111093                * yy_get_next_buffer() to have set up 
    12632                 * yytext, we can now set up 
     11094                * fortrantext, we can now set up 
    1263311095                * yy_c_buf_p so that if some total 
    1263411096                * hoser (like flex itself) wants to 
     
    1263711099                * YY_NULL will get returned. 
    1263811100                */ 
    12639                yy_c_buf_p = yytext_ptr + YY_MORE_ADJ; 
     11101               (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 
    1264011102 
    1264111103               yy_act = YY_STATE_EOF(YY_START); 
     
    1264511107            else 
    1264611108               { 
    12647                if ( ! yy_did_buffer_switch_on_eof ) 
     11109               if ( ! (yy_did_buffer_switch_on_eof) ) 
    1264811110                  YY_NEW_FILE; 
    1264911111               } 
     
    1265211114 
    1265311115         case EOB_ACT_CONTINUE_SCAN: 
    12654             yy_c_buf_p = 
    12655                yytext_ptr + yy_amount_of_matched_text; 
    12656  
    12657             yy_current_state = yy_get_previous_state(); 
    12658  
    12659             yy_cp = yy_c_buf_p; 
    12660             yy_bp = yytext_ptr + YY_MORE_ADJ; 
     11116            (yy_c_buf_p) = 
     11117               (yytext_ptr) + yy_amount_of_matched_text; 
     11118 
     11119            yy_current_state = yy_get_previous_state(  ); 
     11120 
     11121            yy_cp = (yy_c_buf_p); 
     11122            yy_bp = (yytext_ptr) + YY_MORE_ADJ; 
    1266111123            goto yy_match; 
    1266211124 
    1266311125         case EOB_ACT_LAST_MATCH: 
    12664             yy_c_buf_p = 
    12665             &yy_current_buffer->yy_ch_buf[yy_n_chars]; 
    12666  
    12667             yy_current_state = yy_get_previous_state(); 
    12668  
    12669             yy_cp = yy_c_buf_p; 
    12670             yy_bp = yytext_ptr + YY_MORE_ADJ; 
     11126            (yy_c_buf_p) = 
     11127            &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 
     11128 
     11129            yy_current_state = yy_get_previous_state(  ); 
     11130 
     11131            yy_cp = (yy_c_buf_p); 
     11132            yy_bp = (yytext_ptr) + YY_MORE_ADJ; 
    1267111133            goto yy_find_action; 
    1267211134         } 
     
    1267911141   } /* end of action switch */ 
    1268011142      } /* end of scanning one token */ 
    12681    } /* end of yylex */ 
    12682  
     11143} /* end of fortranlex */ 
    1268311144 
    1268411145/* yy_get_next_buffer - try to read in a new buffer 
     
    1268911150 * EOB_ACT_END_OF_FILE - end of file 
    1269011151 */ 
    12691  
    12692 static int yy_get_next_buffer() 
    12693    { 
    12694    register char *dest = yy_current_buffer->yy_ch_buf; 
    12695    register char *source = yytext_ptr; 
     11152static int yy_get_next_buffer (void) 
     11153{ 
     11154      register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 
     11155   register char *source = (yytext_ptr); 
    1269611156   register int number_to_move, i; 
    1269711157   int ret_val; 
    1269811158 
    12699    if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] ) 
     11159   if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 
    1270011160      YY_FATAL_ERROR( 
    1270111161      "fatal flex scanner internal error--end of buffer missed" ); 
    1270211162 
    12703    if ( yy_current_buffer->yy_fill_buffer == 0 ) 
     11163   if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 
    1270411164      { /* Don't try to fill the buffer, so this is an EOF. */ 
    12705       if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 ) 
     11165      if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 
    1270611166         { 
    1270711167         /* We matched a single character, the EOB, so 
     
    1272311183 
    1272411184   /* First move last chars to start of buffer. */ 
    12725    number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1; 
     11185   number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; 
    1272611186 
    1272711187   for ( i = 0; i < number_to_move; ++i ) 
    1272811188      *(dest++) = *(source++); 
    1272911189 
    12730    if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 
     11190   if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 
    1273111191      /* don't do the read, it's not guaranteed to return an EOF, 
    1273211192       * just force an EOF 
    1273311193       */ 
    12734       yy_current_buffer->yy_n_chars = yy_n_chars = 0; 
     11194      YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 
    1273511195 
    1273611196   else 
    1273711197      { 
    12738       int num_to_read = 
    12739          yy_current_buffer->yy_buf_size - number_to_move - 1; 
     11198         yy_size_t num_to_read = 
     11199         YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 
    1274011200 
    1274111201      while ( num_to_read <= 0 ) 
    1274211202         { /* Not enough room in the buffer - grow it. */ 
    12743 #ifdef YY_USES_REJECT 
    12744          YY_FATAL_ERROR( 
    12745 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); 
    12746 #else 
    1274711203 
    1274811204         /* just a shorter name for the current buffer */ 
    12749          YY_BUFFER_STATE b = yy_current_buffer; 
     11205         YY_BUFFER_STATE b = YY_CURRENT_BUFFER; 
    1275011206 
    1275111207         int yy_c_buf_p_offset = 
    12752             (int) (yy_c_buf_p - b->yy_ch_buf); 
     11208            (int) ((yy_c_buf_p) - b->yy_ch_buf); 
    1275311209 
    1275411210         if ( b->yy_is_our_buffer ) 
    1275511211            { 
    12756             int new_size = b->yy_buf_size * 2; 
     11212            yy_size_t new_size = b->yy_buf_size * 2; 
    1275711213 
    1275811214            if ( new_size <= 0 ) 
     
    1276311219            b->yy_ch_buf = (char *) 
    1276411220               /* Include room in for 2 EOB chars. */ 
    12765                yy_flex_realloc( (void *) b->yy_ch_buf, 
    12766                       b->yy_buf_size + 2 ); 
     11221               fortranrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  ); 
    1276711222            } 
    1276811223         else 
     
    1277411229            "fatal error - scanner input buffer overflow" ); 
    1277511230 
    12776          yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset]; 
    12777  
    12778          num_to_read = yy_current_buffer->yy_buf_size - 
     11231         (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; 
     11232 
     11233         num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - 
    1277911234                  number_to_move - 1; 
    12780 #endif 
     11235 
    1278111236         } 
    1278211237 
     
    1278511240 
    1278611241      /* Read in more data. */ 
    12787       YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]), 
    12788          yy_n_chars, num_to_read ); 
    12789  
    12790       yy_current_buffer->yy_n_chars = yy_n_chars; 
     11242      YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 
     11243         (yy_n_chars), num_to_read ); 
     11244 
     11245      YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
    1279111246      } 
    1279211247 
    12793    if ( yy_n_chars == 0 ) 
     11248   if ( (yy_n_chars) == 0 ) 
    1279411249      { 
    1279511250      if ( number_to_move == YY_MORE_ADJ ) 
    1279611251         { 
    1279711252         ret_val = EOB_ACT_END_OF_FILE; 
    12798          yyrestart( yyin ); 
     11253         fortranrestart(fortranin ); 
    1279911254         } 
    1280011255 
     
    1280211257         { 
    1280311258         ret_val = EOB_ACT_LAST_MATCH; 
    12804          yy_current_buffer->yy_buffer_status = 
     11259         YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 
    1280511260            YY_BUFFER_EOF_PENDING; 
    1280611261         } 
     
    1281011265      ret_val = EOB_ACT_CONTINUE_SCAN; 
    1281111266 
    12812    yy_n_chars += number_to_move; 
    12813    yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR; 
    12814    yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR; 
    12815  
    12816    yytext_ptr = &yy_current_buffer->yy_ch_buf[0]; 
     11267   if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { 
     11268      /* Extend the array by 50%, plus the number we really need. */ 
     11269      yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); 
     11270      YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) fortranrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size  ); 
     11271      if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 
     11272         YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); 
     11273   } 
     11274 
     11275   (yy_n_chars) += number_to_move; 
     11276   YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 
     11277   YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 
     11278 
     11279   (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 
    1281711280 
    1281811281   return ret_val; 
    12819    } 
    12820  
     11282} 
    1282111283 
    1282211284/* yy_get_previous_state - get the state just before the EOB char was reached */ 
    1282311285 
    12824 static yy_state_type yy_get_previous_state() 
    12825    { 
     11286    static yy_state_type yy_get_previous_state (void) 
     11287{ 
    1282611288   register yy_state_type yy_current_state; 
    1282711289   register char *yy_cp; 
    12828  
    12829    yy_current_state = yy_start; 
     11290     
     11291   yy_current_state = (yy_start); 
    1283011292   yy_current_state += YY_AT_BOL(); 
    1283111293 
    12832    for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp ) 
     11294   for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 
    1283311295      { 
    1283411296      register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); 
    1283511297      if ( yy_accept[yy_current_state] ) 
    1283611298         { 
    12837          yy_last_accepting_state = yy_current_state; 
    12838          yy_last_accepting_cpos = yy_cp; 
     11299         (yy_last_accepting_state) = yy_current_state; 
     11300         (yy_last_accepting_cpos) = yy_cp; 
    1283911301         } 
    1284011302      while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 
    1284111303         { 
    1284211304         yy_current_state = (int) yy_def[yy_current_state]; 
    12843          if ( yy_current_state >= 1124 ) 
     11305         if ( yy_current_state >= 1162 ) 
    1284411306            yy_c = yy_meta[(unsigned int) yy_c]; 
    1284511307         } 
     
    1284811310 
    1284911311   return yy_current_state; 
    12850    } 
    12851  
     11312} 
    1285211313 
    1285311314/* yy_try_NUL_trans - try to make a transition on the NUL character 
     
    1285611317 * next_state = yy_try_NUL_trans( current_state ); 
    1285711318 */ 
    12858  
    12859 #ifdef YY_USE_PROTOS 
    12860 static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state ) 
    12861 #else 
    12862 static yy_state_type yy_try_NUL_trans( yy_current_state ) 
    12863 yy_state_type yy_current_state; 
    12864 #endif 
    12865    { 
     11319    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state ) 
     11320{ 
    1286611321   register int yy_is_jam; 
    12867    register char *yy_cp = yy_c_buf_p; 
     11322      register char *yy_cp = (yy_c_buf_p); 
    1286811323 
    1286911324   register YY_CHAR yy_c = 1; 
    1287011325   if ( yy_accept[yy_current_state] ) 
    1287111326      { 
    12872       yy_last_accepting_state = yy_current_state; 
    12873       yy_last_accepting_cpos = yy_cp; 
     11327      (yy_last_accepting_state) = yy_current_state; 
     11328      (yy_last_accepting_cpos) = yy_cp; 
    1287411329      } 
    1287511330   while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 
    1287611331      { 
    1287711332      yy_current_state = (int) yy_def[yy_current_state]; 
    12878       if ( yy_current_state >= 1124 ) 
     11333      if ( yy_current_state >= 1162 ) 
    1287911334         yy_c = yy_meta[(unsigned int) yy_c]; 
    1288011335      } 
    1288111336   yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 
    12882    yy_is_jam = (yy_current_state == 1123); 
     11337   yy_is_jam = (yy_current_state == 1161); 
    1288311338 
    1288411339   return yy_is_jam ? 0 : yy_current_state; 
    12885    } 
    12886  
    12887  
    12888 #ifndef YY_NO_UNPUT 
    12889 #ifdef YY_USE_PROTOS 
    12890 static void yyunput( int c, register char *yy_bp ) 
    12891 #else 
    12892 static void yyunput( c, yy_bp ) 
    12893 int c; 
    12894 register char *yy_bp; 
    12895 #endif 
    12896    { 
    12897    register char *yy_cp = yy_c_buf_p; 
    12898  
    12899    /* undo effects of setting up yytext */ 
    12900    *yy_cp = yy_hold_char; 
    12901  
    12902    if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) 
     11340} 
     11341 
     11342    static void yyunput (int c, register char * yy_bp ) 
     11343{ 
     11344   register char *yy_cp; 
     11345     
     11346    yy_cp = (yy_c_buf_p); 
     11347 
     11348   /* undo effects of setting up fortrantext */ 
     11349   *yy_cp = (yy_hold_char); 
     11350 
     11351   if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 
    1290311352      { /* need to shift things up to make room */ 
    1290411353      /* +2 for EOB chars. */ 
    12905       register int number_to_move = yy_n_chars + 2; 
    12906       register char *dest = &yy_current_buffer->yy_ch_buf[ 
    12907                yy_current_buffer->yy_buf_size + 2]; 
     11354      register yy_size_t number_to_move = (yy_n_chars) + 2; 
     11355      register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ 
     11356               YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; 
    1290811357      register char *source = 
    12909             &yy_current_buffer->yy_ch_buf[number_to_move]; 
    12910  
    12911       while ( source > yy_current_buffer->yy_ch_buf ) 
     11358            &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; 
     11359 
     11360      while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 
    1291211361         *--dest = *--source; 
    1291311362 
    1291411363      yy_cp += (int) (dest - source); 
    1291511364      yy_bp += (int) (dest - source); 
    12916       yy_current_buffer->yy_n_chars = 
    12917          yy_n_chars = yy_current_buffer->yy_buf_size; 
    12918  
    12919       if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) 
     11365      YY_CURRENT_BUFFER_LVALUE->yy_n_chars = 
     11366         (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; 
     11367 
     11368      if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 
    1292011369         YY_FATAL_ERROR( "flex scanner push-back overflow" ); 
    1292111370      } 
     
    1292311372   *--yy_cp = (char) c; 
    1292411373 
    12925  
    12926    yytext_ptr = yy_bp; 
    12927    yy_hold_char = *yy_cp; 
    12928    yy_c_buf_p = yy_cp; 
    12929    } 
    12930 #endif   /* ifndef YY_NO_UNPUT */ 
    12931  
    12932  
     11374   (yytext_ptr) = yy_bp; 
     11375   (yy_hold_char) = *yy_cp; 
     11376   (yy_c_buf_p) = yy_cp; 
     11377} 
     11378 
     11379#ifndef YY_NO_INPUT 
    1293311380#ifdef __cplusplus 
    12934 static int yyinput() 
     11381    static int yyinput (void) 
    1293511382#else 
    12936 static int input() 
     11383    static int input  (void) 
    1293711384#endif 
    12938    { 
     11385 
     11386{ 
    1293911387   int c; 
    12940  
    12941    *yy_c_buf_p = yy_hold_char; 
    12942  
    12943    if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR ) 
     11388     
     11389   *(yy_c_buf_p) = (yy_hold_char); 
     11390 
     11391   if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 
    1294411392      { 
    1294511393      /* yy_c_buf_p now points to the character we want to return. 
     
    1294711395       * valid NUL; if not, then we've hit the end of the buffer. 
    1294811396       */ 
    12949       if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] ) 
     11397      if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 
    1295011398         /* This was really a NUL. */ 
    12951          *yy_c_buf_p = '\0'; 
     11399         *(yy_c_buf_p) = '\0'; 
    1295211400 
    1295311401      else 
    1295411402         { /* need more input */ 
    12955          int offset = yy_c_buf_p - yytext_ptr; 
    12956          ++yy_c_buf_p; 
    12957  
    12958          switch ( yy_get_next_buffer() ) 
     11403         yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); 
     11404         ++(yy_c_buf_p); 
     11405 
     11406         switch ( yy_get_next_buffer(  ) ) 
    1295911407            { 
    1296011408            case EOB_ACT_LAST_MATCH: 
     
    1297011418 
    1297111419               /* Reset buffer status. */ 
    12972                yyrestart( yyin ); 
    12973  
    12974                /* fall through */ 
     11420               fortranrestart(fortranin ); 
     11421 
     11422               /*FALLTHROUGH*/ 
    1297511423 
    1297611424            case EOB_ACT_END_OF_FILE: 
    1297711425               { 
    12978                if ( yywrap() ) 
    12979                   return EOF; 
    12980  
    12981                if ( ! yy_did_buffer_switch_on_eof ) 
     11426               if ( fortranwrap( ) ) 
     11427                  return 0; 
     11428 
     11429               if ( ! (yy_did_buffer_switch_on_eof) ) 
    1298211430                  YY_NEW_FILE; 
    1298311431#ifdef __cplusplus 
     
    1298911437 
    1299011438            case EOB_ACT_CONTINUE_SCAN: 
    12991                yy_c_buf_p = yytext_ptr + offset; 
     11439               (yy_c_buf_p) = (yytext_ptr) + offset; 
    1299211440               break; 
    1299311441            } 
     
    1299511443      } 
    1299611444 
    12997    c = *(unsigned char *) yy_c_buf_p;  /* cast for 8-bit char's */ 
    12998    *yy_c_buf_p = '\0';  /* preserve yytext */ 
    12999    yy_hold_char = *++yy_c_buf_p; 
    13000  
    13001    yy_current_buffer->yy_at_bol = (c == '\n'); 
     11445   c = *(unsigned char *) (yy_c_buf_p);   /* cast for 8-bit char's */ 
     11446   *(yy_c_buf_p) = '\0';   /* preserve fortrantext */ 
     11447   (yy_hold_char) = *++(yy_c_buf_p); 
     11448 
     11449   YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n'); 
    1300211450 
    1300311451   return c; 
     11452} 
     11453#endif   /* ifndef YY_NO_INPUT */ 
     11454 
     11455/** Immediately switch to a different input stream. 
     11456 * @param input_file A readable stream. 
     11457 *  
     11458 * @note This function does not reset the start condition to @c INITIAL . 
     11459 */ 
     11460    void fortranrestart  (FILE * input_file ) 
     11461{ 
     11462     
     11463   if ( ! YY_CURRENT_BUFFER ){ 
     11464        fortranensure_buffer_stack (); 
     11465      YY_CURRENT_BUFFER_LVALUE = 
     11466            fortran_create_buffer(fortranin,YY_BUF_SIZE ); 
    1300411467   } 
    1300511468 
    13006  
    13007 #ifdef YY_USE_PROTOS 
    13008 void yyrestart( FILE *input_file ) 
    13009 #else 
    13010 void yyrestart( input_file ) 
    13011 FILE *input_file; 
    13012 #endif 
    13013    { 
    13014    if ( ! yy_current_buffer ) 
    13015       yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); 
    13016  
    13017    yy_init_buffer( yy_current_buffer, input_file ); 
    13018    yy_load_buffer_state(); 
    13019    } 
    13020  
    13021  
    13022 #ifdef YY_USE_PROTOS 
    13023 void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer ) 
    13024 #else 
    13025 void yy_switch_to_buffer( new_buffer ) 
    13026 YY_BUFFER_STATE new_buffer; 
    13027 #endif 
    13028    { 
    13029    if ( yy_current_buffer == new_buffer ) 
     11469   fortran_init_buffer(YY_CURRENT_BUFFER,input_file ); 
     11470   fortran_load_buffer_state( ); 
     11471} 
     11472 
     11473/** Switch to a different input buffer. 
     11474 * @param new_buffer The new input buffer. 
     11475 *  
     11476 */ 
     11477    void fortran_switch_to_buffer  (YY_BUFFER_STATE  new_buffer ) 
     11478{ 
     11479     
     11480   /* TODO. We should be able to replace this entire function body 
     11481    * with 
     11482    *    fortranpop_buffer_state(); 
     11483    *    fortranpush_buffer_state(new_buffer); 
     11484     */ 
     11485   fortranensure_buffer_stack (); 
     11486   if ( YY_CURRENT_BUFFER == new_buffer ) 
    1303011487      return; 
    1303111488 
    13032    if ( yy_current_buffer ) 
     11489   if ( YY_CURRENT_BUFFER ) 
    1303311490      { 
    1303411491      /* Flush out information for old buffer. */ 
    13035       *yy_c_buf_p = yy_hold_char; 
    13036       yy_current_buffer->yy_buf_pos = yy_c_buf_p; 
    13037       yy_current_buffer->yy_n_chars = yy_n_chars; 
     11492      *(yy_c_buf_p) = (yy_hold_char); 
     11493      YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 
     11494      YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
    1303811495      } 
    1303911496 
    13040    yy_current_buffer = new_buffer; 
    13041    yy_load_buffer_state(); 
     11497   YY_CURRENT_BUFFER_LVALUE = new_buffer; 
     11498   fortran_load_buffer_state( ); 
    1304211499 
    1304311500   /* We don't actually know whether we did this switch during 
    13044     * EOF (yywrap()) processing, but the only time this flag 
    13045     * is looked at is after yywrap() is called, so it's safe 
     11501    * EOF (fortranwrap()) processing, but the only time this flag 
     11502    * is looked at is after fortranwrap() is called, so it's safe 
    1304611503    * to go ahead and always set it. 
    1304711504    */ 
    13048    yy_did_buffer_switch_on_eof = 1; 
    13049    } 
    13050  
    13051  
    13052 #ifdef YY_USE_PROTOS 
    13053 void yy_load_buffer_state( void ) 
    13054 #else 
    13055 void yy_load_buffer_state() 
    13056 #endif 
    13057    { 
    13058    yy_n_chars = yy_current_buffer->yy_n_chars; 
    13059    yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos; 
    13060    yyin = yy_current_buffer->yy_input_file; 
    13061    yy_hold_char = *yy_c_buf_p; 
    13062    } 
    13063  
    13064  
    13065 #ifdef YY_USE_PROTOS 
    13066 YY_BUFFER_STATE yy_create_buffer( FILE *file, int size ) 
    13067 #else 
    13068 YY_BUFFER_STATE yy_create_buffer( file, size ) 
    13069 FILE *file; 
    13070 int size; 
    13071 #endif 
    13072    { 
     11505   (yy_did_buffer_switch_on_eof) = 1; 
     11506} 
     11507 
     11508static void fortran_load_buffer_state  (void) 
     11509{ 
     11510      (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 
     11511   (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 
     11512   fortranin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 
     11513   (yy_hold_char) = *(yy_c_buf_p); 
     11514} 
     11515 
     11516/** Allocate and initialize an input buffer state. 
     11517 * @param file A readable stream. 
     11518 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. 
     11519 *  
     11520 * @return the allocated buffer state. 
     11521 */ 
     11522    YY_BUFFER_STATE fortran_create_buffer  (FILE * file, int  size ) 
     11523{ 
    1307311524   YY_BUFFER_STATE b; 
    13074  
    13075    b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) ); 
     11525     
     11526   b = (YY_BUFFER_STATE) fortranalloc(sizeof( struct yy_buffer_state ) ); 
    1307611527   if ( ! b ) 
    13077       YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 
     11528      YY_FATAL_ERROR( "out of dynamic memory in fortran_create_buffer()" ); 
    1307811529 
    1307911530   b->yy_buf_size = size; 
     
    1308211533    * we need to put in 2 end-of-buffer characters. 
    1308311534    */ 
    13084    b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 ); 
     11535   b->yy_ch_buf = (char *) fortranalloc(b->yy_buf_size + 2 ); 
    1308511536   if ( ! b->yy_ch_buf ) 
    13086       YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 
     11537      YY_FATAL_ERROR( "out of dynamic memory in fortran_create_buffer()" ); 
    1308711538 
    1308811539   b->yy_is_our_buffer = 1; 
    1308911540 
    13090    yy_init_buffer( b, file ); 
     11541   fortran_init_buffer(b,file ); 
    1309111542 
    1309211543   return b; 
    13093    } 
    13094  
    13095  
    13096 #ifdef YY_USE_PROTOS 
    13097 void yy_delete_buffer( YY_BUFFER_STATE b ) 
    13098 #else 
    13099 void yy_delete_buffer( b ) 
    13100 YY_BUFFER_STATE b; 
    13101 #endif 
    13102    { 
     11544} 
     11545 
     11546/** Destroy the buffer. 
     11547 * @param b a buffer created with fortran_create_buffer() 
     11548 *  
     11549 */ 
     11550    void fortran_delete_buffer (YY_BUFFER_STATE  b ) 
     11551{ 
     11552     
    1310311553   if ( ! b ) 
    1310411554      return; 
    1310511555 
    13106    if ( b == yy_current_buffer ) 
    13107       yy_current_buffer = (YY_BUFFER_STATE) 0; 
     11556   if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 
     11557      YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 
    1310811558 
    1310911559   if ( b->yy_is_our_buffer ) 
    13110       yy_flex_free( (void *) b->yy_ch_buf ); 
    13111  
    13112    yy_flex_free( (void *) b ); 
    13113    } 
    13114  
    13115  
    13116 #ifndef YY_ALWAYS_INTERACTIVE 
    13117 #ifndef YY_NEVER_INTERACTIVE 
    13118 extern int isatty YY_PROTO(( int )); 
    13119 #endif 
    13120 #endif 
    13121  
    13122 #ifdef YY_USE_PROTOS 
    13123 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) 
    13124 #else 
    13125 void yy_init_buffer( b, file ) 
    13126 YY_BUFFER_STATE b; 
    13127 FILE *file; 
    13128 #endif 
    13129  
    13130  
    13131    { 
    13132    yy_flush_buffer( b ); 
     11560      fortranfree((void *) b->yy_ch_buf  ); 
     11561 
     11562   fortranfree((void *) b  ); 
     11563} 
     11564 
     11565#ifndef __cplusplus 
     11566extern int isatty (int ); 
     11567#endif /* __cplusplus */ 
     11568     
     11569/* Initializes or reinitializes a buffer. 
     11570 * This function is sometimes called more than once on the same buffer, 
     11571 * such as during a fortranrestart() or at EOF. 
     11572 */ 
     11573    static void fortran_init_buffer  (YY_BUFFER_STATE  b, FILE * file ) 
     11574 
     11575{ 
     11576   int oerrno = errno; 
     11577     
     11578   fortran_flush_buffer(b ); 
    1313311579 
    1313411580   b->yy_input_file = file; 
    1313511581   b->yy_fill_buffer = 1; 
    1313611582 
    13137 #if YY_ALWAYS_INTERACTIVE 
    13138    b->yy_is_interactive = 1; 
    13139 #else 
    13140 #if YY_NEVER_INTERACTIVE 
    13141    b->yy_is_interactive = 0; 
    13142 #else 
    13143    b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 
    13144 #endif 
    13145 #endif 
     11583    /* If b is the current buffer, then fortran_init_buffer was _probably_ 
     11584     * called from fortranrestart() or through yy_get_next_buffer. 
     11585     * In that case, we don't want to reset the lineno or column. 
     11586     */ 
     11587    if (b != YY_CURRENT_BUFFER){ 
     11588        b->yy_bs_lineno = 1; 
     11589        b->yy_bs_column = 0; 
    1314611590   } 
    1314711591 
    13148  
    13149 #ifdef YY_USE_PROTOS 
    13150 void yy_flush_buffer( YY_BUFFER_STATE b ) 
    13151 #else 
    13152 void yy_flush_buffer( b ) 
    13153 YY_BUFFER_STATE b; 
    13154 #endif 
    13155  
    13156    { 
     11592        b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 
     11593     
     11594   errno = oerrno; 
     11595} 
     11596 
     11597/** Discard all buffered characters. On the next scan, YY_INPUT will be called. 
     11598 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. 
     11599 *  
     11600 */ 
     11601    void fortran_flush_buffer (YY_BUFFER_STATE  b ) 
     11602{ 
    1315711603   if ( ! b ) 
    1315811604      return; 
     
    1317211618   b->yy_buffer_status = YY_BUFFER_NEW; 
    1317311619 
    13174    if ( b == yy_current_buffer ) 
    13175       yy_load_buffer_state(); 
     11620   if ( b == YY_CURRENT_BUFFER ) 
     11621      fortran_load_buffer_state( ); 
     11622} 
     11623 
     11624/** Pushes the new state onto the stack. The new state becomes 
     11625 *  the current state. This function will allocate the stack 
     11626 *  if necessary. 
     11627 *  @param new_buffer The new state. 
     11628 *   
     11629 */ 
     11630void fortranpush_buffer_state (YY_BUFFER_STATE new_buffer ) 
     11631{ 
     11632      if (new_buffer == NULL) 
     11633      return; 
     11634 
     11635   fortranensure_buffer_stack(); 
     11636 
     11637   /* This block is copied from fortran_switch_to_buffer. */ 
     11638   if ( YY_CURRENT_BUFFER ) 
     11639   { 
     11640      /* Flush out information for old buffer. */ 
     11641      *(yy_c_buf_p) = (yy_hold_char); 
     11642      YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 
     11643      YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
     11644      } 
     11645 
     11646   /* Only push if top exists. Otherwise, replace top. */ 
     11647   if (YY_CURRENT_BUFFER) 
     11648      (yy_buffer_stack_top)++; 
     11649   YY_CURRENT_BUFFER_LVALUE = new_buffer; 
     11650 
     11651   /* copied from fortran_switch_to_buffer. */ 
     11652   fortran_load_buffer_state( ); 
     11653   (yy_did_buffer_switch_on_eof) = 1; 
     11654} 
     11655 
     11656/** Removes and deletes the top of the stack, if present. 
     11657 *  The next element becomes the new top. 
     11658 *   
     11659 */ 
     11660void fortranpop_buffer_state (void) 
     11661{ 
     11662      if (!YY_CURRENT_BUFFER) 
     11663      return; 
     11664 
     11665   fortran_delete_buffer(YY_CURRENT_BUFFER ); 
     11666   YY_CURRENT_BUFFER_LVALUE = NULL; 
     11667   if ((yy_buffer_stack_top) > 0) 
     11668      --(yy_buffer_stack_top); 
     11669 
     11670   if (YY_CURRENT_BUFFER) { 
     11671      fortran_load_buffer_state( ); 
     11672      (yy_did_buffer_switch_on_eof) = 1; 
    1317611673   } 
    13177  
    13178  
    13179 #ifndef YY_NO_SCAN_BUFFER 
    13180 #ifdef YY_USE_PROTOS 
    13181 YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size ) 
    13182 #else 
    13183 YY_BUFFER_STATE yy_scan_buffer( base, size ) 
    13184 char *base; 
    13185 yy_size_t size; 
    13186 #endif 
    13187    { 
     11674} 
     11675 
     11676/* Allocates the stack if it does not exist. 
     11677 *  Guarantees space for at least one push. 
     11678 */ 
     11679static void fortranensure_buffer_stack (void) 
     11680{ 
     11681   yy_size_t num_to_alloc; 
     11682     
     11683   if (!(yy_buffer_stack)) { 
     11684 
     11685      /* First allocation is just for 2 elements, since we don't know if this 
     11686       * scanner will even need a stack. We use 2 instead of 1 to avoid an 
     11687       * immediate realloc on the next call. 
     11688         */ 
     11689      num_to_alloc = 1; 
     11690      (yy_buffer_stack) = (struct yy_buffer_state**)fortranalloc 
     11691                        (num_to_alloc * sizeof(struct yy_buffer_state*) 
     11692                        ); 
     11693      if ( ! (yy_buffer_stack) ) 
     11694         YY_FATAL_ERROR( "out of dynamic memory in fortranensure_buffer_stack()" ); 
     11695                           
     11696      memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 
     11697             
     11698      (yy_buffer_stack_max) = num_to_alloc; 
     11699      (yy_buffer_stack_top) = 0; 
     11700      return; 
     11701   } 
     11702 
     11703   if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 
     11704 
     11705      /* Increase the buffer to prepare for a possible push. */ 
     11706      int grow_size = 8 /* arbitrary grow size */; 
     11707 
     11708      num_to_alloc = (yy_buffer_stack_max) + grow_size; 
     11709      (yy_buffer_stack) = (struct yy_buffer_state**)fortranrealloc 
     11710                        ((yy_buffer_stack), 
     11711                        num_to_alloc * sizeof(struct yy_buffer_state*) 
     11712                        ); 
     11713      if ( ! (yy_buffer_stack) ) 
     11714         YY_FATAL_ERROR( "out of dynamic memory in fortranensure_buffer_stack()" ); 
     11715 
     11716      /* zero only the new slots.*/ 
     11717      memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 
     11718      (yy_buffer_stack_max) = num_to_alloc; 
     11719   } 
     11720} 
     11721 
     11722/** Setup the input buffer state to scan directly from a user-specified character buffer. 
     11723 * @param base the character buffer 
     11724 * @param size the size in bytes of the character buffer 
     11725 *  
     11726 * @return the newly allocated buffer state object.  
     11727 */ 
     11728YY_BUFFER_STATE fortran_scan_buffer  (char * base, yy_size_t  size ) 
     11729{ 
    1318811730   YY_BUFFER_STATE b; 
    13189  
     11731     
    1319011732   if ( size < 2 || 
    1319111733        base[size-2] != YY_END_OF_BUFFER_CHAR || 
     
    1319411736      return 0; 
    1319511737 
    13196    b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) ); 
     11738   b = (YY_BUFFER_STATE) fortranalloc(sizeof( struct yy_buffer_state ) ); 
    1319711739   if ( ! b ) 
    13198       YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); 
     11740      YY_FATAL_ERROR( "out of dynamic memory in fortran_scan_buffer()" ); 
    1319911741 
    1320011742   b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ 
     
    1320811750   b->yy_buffer_status = YY_BUFFER_NEW; 
    1320911751 
    13210    yy_switch_to_buffer( b ); 
     11752   fortran_switch_to_buffer(b ); 
    1321111753 
    1321211754   return b; 
    13213    } 
    13214 #endif 
    13215  
    13216  
    13217 #ifndef YY_NO_SCAN_STRING 
    13218 #ifdef YY_USE_PROTOS 
    13219 YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str ) 
    13220 #else 
    13221 YY_BUFFER_STATE yy_scan_string( yy_str ) 
    13222 yyconst char *yy_str; 
    13223 #endif 
    13224    { 
    13225    int len; 
    13226    for ( len = 0; yy_str[len]; ++len ) 
    13227       ; 
    13228  
    13229    return yy_scan_bytes( yy_str, len ); 
    13230    } 
    13231 #endif 
    13232  
    13233  
    13234 #ifndef YY_NO_SCAN_BYTES 
    13235 #ifdef YY_USE_PROTOS 
    13236 YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len ) 
    13237 #else 
    13238 YY_BUFFER_STATE yy_scan_bytes( bytes, len ) 
    13239 yyconst char *bytes; 
    13240 int len; 
    13241 #endif 
    13242    { 
     11755} 
     11756 
     11757/** Setup the input buffer state to scan a string. The next call to fortranlex() will 
     11758 * scan from a @e copy of @a str. 
     11759 * @param yystr a NUL-terminated string to scan 
     11760 *  
     11761 * @return the newly allocated buffer state object. 
     11762 * @note If you want to scan bytes that may contain NUL values, then use 
     11763 *       fortran_scan_bytes() instead. 
     11764 */ 
     11765YY_BUFFER_STATE fortran_scan_string (yyconst char * yystr ) 
     11766{ 
     11767     
     11768   return fortran_scan_bytes(yystr,strlen(yystr) ); 
     11769} 
     11770 
     11771/** Setup the input buffer state to scan the given bytes. The next call to fortranlex() will 
     11772 * scan from a @e copy of @a bytes. 
     11773 * @param bytes the byte buffer to scan 
     11774 * @param len the number of bytes in the buffer pointed to by @a bytes. 
     11775 *  
     11776 * @return the newly allocated buffer state object. 
     11777 */ 
     11778YY_BUFFER_STATE fortran_scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len ) 
     11779{ 
    1324311780   YY_BUFFER_STATE b; 
    1324411781   char *buf; 
    13245    yy_size_t n; 
    13246    int i; 
    13247  
     11782   yy_size_t n, i; 
     11783     
    1324811784   /* Get memory for full buffer, including space for trailing EOB's. */ 
    13249    n = len + 2; 
    13250    buf = (char *) yy_flex_alloc( n ); 
     11785   n = _yybytes_len + 2; 
     11786   buf = (char *) fortranalloc(n ); 
    1325111787   if ( ! buf ) 
    13252       YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); 
    13253  
    13254    for ( i = 0; i < len; ++i ) 
    13255       buf[i] = bytes[i]; 
    13256  
    13257    buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR; 
    13258  
    13259    b = yy_scan_buffer( buf, n ); 
     11788      YY_FATAL_ERROR( "out of dynamic memory in fortran_scan_bytes()" ); 
     11789 
     11790   for ( i = 0; i < _yybytes_len; ++i ) 
     11791      buf[i] = yybytes[i]; 
     11792 
     11793   buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; 
     11794 
     11795   b = fortran_scan_buffer(buf,n ); 
    1326011796   if ( ! b ) 
    13261       YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); 
     11797      YY_FATAL_ERROR( "bad buffer in fortran_scan_bytes()" ); 
    1326211798 
    1326311799   /* It's okay to grow etc. this buffer, and we should throw it 
     
    1326711803 
    1326811804   return b; 
    13269    } 
    13270 #endif 
    13271  
    13272  
    13273 #ifndef YY_NO_PUSH_STATE 
    13274 #ifdef YY_USE_PROTOS 
    13275 static void yy_push_state( int new_state ) 
    13276 #else 
    13277 static void yy_push_state( new_state ) 
    13278 int new_state; 
    13279 #endif 
    13280    { 
    13281    if ( yy_start_stack_ptr >= yy_start_stack_depth ) 
    13282       { 
    13283       yy_size_t new_size; 
    13284  
    13285       yy_start_stack_depth += YY_START_STACK_INCR; 
    13286       new_size = yy_start_stack_depth * sizeof( int ); 
    13287  
    13288       if ( ! yy_start_stack ) 
    13289          yy_start_stack = (int *) yy_flex_alloc( new_size ); 
    13290  
    13291       else 
    13292          yy_start_stack = (int *) yy_flex_realloc( 
    13293                (void *) yy_start_stack, new_size ); 
    13294  
    13295       if ( ! yy_start_stack ) 
    13296          YY_FATAL_ERROR( 
    13297          "out of memory expanding start-condition stack" ); 
    13298       } 
    13299  
    13300    yy_start_stack[yy_start_stack_ptr++] = YY_START; 
    13301  
    13302    BEGIN(new_state); 
    13303    } 
    13304 #endif 
    13305  
    13306  
    13307 #ifndef YY_NO_POP_STATE 
    13308 static void yy_pop_state() 
    13309    { 
    13310    if ( --yy_start_stack_ptr < 0 ) 
    13311       YY_FATAL_ERROR( "start-condition stack underflow" ); 
    13312  
    13313    BEGIN(yy_start_stack[yy_start_stack_ptr]); 
    13314    } 
    13315 #endif 
    13316  
    13317  
    13318 #ifndef YY_NO_TOP_STATE 
    13319 static int yy_top_state() 
    13320    { 
    13321    return yy_start_stack[yy_start_stack_ptr - 1]; 
    13322    } 
    13323 #endif 
     11805} 
    1332411806 
    1332511807#ifndef YY_EXIT_FAILURE 
     
    1332711809#endif 
    1332811810 
    13329 #ifdef YY_USE_PROTOS 
    13330 static void yy_fatal_error( yyconst char msg[] ) 
    13331 #else 
    13332 static void yy_fatal_error( msg ) 
    13333 char msg[]; 
    13334 #endif 
    13335    { 
    13336    (void) fprintf( stderr, "%s\n", msg ); 
     11811static void yy_fatal_error (yyconst char* msg ) 
     11812{ 
     11813      (void) fprintf( stderr, "%s\n", msg ); 
    1333711814   exit( YY_EXIT_FAILURE ); 
    13338    } 
    13339  
    13340  
     11815} 
    1334111816 
    1334211817/* Redefine yyless() so it works in section 3 code. */ 
     
    1334611821   do \ 
    1334711822      { \ 
    13348       /* Undo effects of setting up yytext. */ \ 
    13349       yytext[yyleng] = yy_hold_char; \ 
    13350       yy_c_buf_p = yytext + n; \ 
    13351       yy_hold_char = *yy_c_buf_p; \ 
    13352       *yy_c_buf_p = '\0'; \ 
    13353       yyleng = n; \ 
     11823      /* Undo effects of setting up fortrantext. */ \ 
     11824        int yyless_macro_arg = (n); \ 
     11825        YY_LESS_LINENO(yyless_macro_arg);\ 
     11826      fortrantext[fortranleng] = (yy_hold_char); \ 
     11827      (yy_c_buf_p) = fortrantext + yyless_macro_arg; \ 
     11828      (yy_hold_char) = *(yy_c_buf_p); \ 
     11829      *(yy_c_buf_p) = '\0'; \ 
     11830      fortranleng = yyless_macro_arg; \ 
    1335411831      } \ 
    1335511832   while ( 0 ) 
    1335611833 
    13357  
    13358 /* Internal utility routines. */ 
     11834/* Accessor  methods (get/set functions) to struct members. */ 
     11835 
     11836/** Get the current line number. 
     11837 *  
     11838 */ 
     11839int fortranget_lineno  (void) 
     11840{ 
     11841         
     11842    return fortranlineno; 
     11843} 
     11844 
     11845/** Get the input stream. 
     11846 *  
     11847 */ 
     11848FILE *fortranget_in  (void) 
     11849{ 
     11850        return fortranin; 
     11851} 
     11852 
     11853/** Get the output stream. 
     11854 *  
     11855 */ 
     11856FILE *fortranget_out  (void) 
     11857{ 
     11858        return fortranout; 
     11859} 
     11860 
     11861/** Get the length of the current token. 
     11862 *  
     11863 */ 
     11864yy_size_t fortranget_leng  (void) 
     11865{ 
     11866        return fortranleng; 
     11867} 
     11868 
     11869/** Get the current token. 
     11870 *  
     11871 */ 
     11872 
     11873char *fortranget_text  (void) 
     11874{ 
     11875        return fortrantext; 
     11876} 
     11877 
     11878/** Set the current line number. 
     11879 * @param line_number 
     11880 *  
     11881 */ 
     11882void fortranset_lineno (int  line_number ) 
     11883{ 
     11884     
     11885    fortranlineno = line_number; 
     11886} 
     11887 
     11888/** Set the input stream. This does not discard the current 
     11889 * input buffer. 
     11890 * @param in_str A readable stream. 
     11891 *  
     11892 * @see fortran_switch_to_buffer 
     11893 */ 
     11894void fortranset_in (FILE *  in_str ) 
     11895{ 
     11896        fortranin = in_str ; 
     11897} 
     11898 
     11899void fortranset_out (FILE *  out_str ) 
     11900{ 
     11901        fortranout = out_str ; 
     11902} 
     11903 
     11904int fortranget_debug  (void) 
     11905{ 
     11906        return fortran_flex_debug; 
     11907} 
     11908 
     11909void fortranset_debug (int  bdebug ) 
     11910{ 
     11911        fortran_flex_debug = bdebug ; 
     11912} 
     11913 
     11914static int yy_init_globals (void) 
     11915{ 
     11916        /* Initialization is the same as for the non-reentrant scanner. 
     11917     * This function is called from fortranlex_destroy(), so don't allocate here. 
     11918     */ 
     11919 
     11920    (yy_buffer_stack) = 0; 
     11921    (yy_buffer_stack_top) = 0; 
     11922    (yy_buffer_stack_max) = 0; 
     11923    (yy_c_buf_p) = (char *) 0; 
     11924    (yy_init) = 0; 
     11925    (yy_start) = 0; 
     11926 
     11927/* Defined in main.c */ 
     11928#ifdef YY_STDINIT 
     11929    fortranin = stdin; 
     11930    fortranout = stdout; 
     11931#else 
     11932    fortranin = (FILE *) 0; 
     11933    fortranout = (FILE *) 0; 
     11934#endif 
     11935 
     11936    /* For future reference: Set errno on error, since we are called by 
     11937     * fortranlex_init() 
     11938     */ 
     11939    return 0; 
     11940} 
     11941 
     11942/* fortranlex_destroy is for both reentrant and non-reentrant scanners. */ 
     11943int fortranlex_destroy  (void) 
     11944{ 
     11945     
     11946    /* Pop the buffer stack, destroying each element. */ 
     11947   while(YY_CURRENT_BUFFER){ 
     11948      fortran_delete_buffer(YY_CURRENT_BUFFER  ); 
     11949      YY_CURRENT_BUFFER_LVALUE = NULL; 
     11950      fortranpop_buffer_state(); 
     11951   } 
     11952 
     11953   /* Destroy the stack itself. */ 
     11954   fortranfree((yy_buffer_stack) ); 
     11955   (yy_buffer_stack) = NULL; 
     11956 
     11957    /* Reset the globals. This is important in a non-reentrant scanner so the next time 
     11958     * fortranlex() is called, initialization will occur. */ 
     11959    yy_init_globals( ); 
     11960 
     11961    return 0; 
     11962} 
     11963 
     11964/* 
     11965 * Internal utility routines. 
     11966 */ 
    1335911967 
    1336011968#ifndef yytext_ptr 
    13361 #ifdef YY_USE_PROTOS 
    13362 static void yy_flex_strncpy( char *s1, yyconst char *s2, int n ) 
    13363 #else 
    13364 static void yy_flex_strncpy( s1, s2, n ) 
    13365 char *s1; 
    13366 yyconst char *s2; 
    13367 int n; 
    13368 #endif 
    13369    { 
     11969static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) 
     11970{ 
    1337011971   register int i; 
    1337111972   for ( i = 0; i < n; ++i ) 
    1337211973      s1[i] = s2[i]; 
    13373    } 
     11974} 
    1337411975#endif 
    1337511976 
    1337611977#ifdef YY_NEED_STRLEN 
    13377 #ifdef YY_USE_PROTOS 
    13378 static int yy_flex_strlen( yyconst char *s ) 
    13379 #else 
    13380 static int yy_flex_strlen( s ) 
    13381 yyconst char *s; 
    13382 #endif 
    13383    { 
     11978static int yy_flex_strlen (yyconst char * s ) 
     11979{ 
    1338411980   register int n; 
    1338511981   for ( n = 0; s[n]; ++n ) 
     
    1338711983 
    1338811984   return n; 
    13389    } 
     11985} 
    1339011986#endif 
    1339111987 
    13392  
    13393 #ifdef YY_USE_PROTOS 
    13394 static void *yy_flex_alloc( yy_size_t size ) 
    13395 #else 
    13396 static void *yy_flex_alloc( size ) 
    13397 yy_size_t size; 
    13398 #endif 
    13399    { 
     11988void *fortranalloc (yy_size_t  size ) 
     11989{ 
    1340011990   return (void *) malloc( size ); 
    13401    } 
    13402  
    13403 #ifdef YY_USE_PROTOS 
    13404 static void *yy_flex_realloc( void *ptr, yy_size_t size ) 
    13405 #else 
    13406 static void *yy_flex_realloc( ptr, size ) 
    13407 void *ptr; 
    13408 yy_size_t size; 
    13409 #endif 
    13410    { 
     11991} 
     11992 
     11993void *fortranrealloc  (void * ptr, yy_size_t  size ) 
     11994{ 
    1341111995   /* The cast to (char *) in the following accommodates both 
    1341211996    * implementations that use char* generic pointers, and those 
     
    1341712001    */ 
    1341812002   return (void *) realloc( (char *) ptr, size ); 
    13419    } 
    13420  
    13421 #ifdef YY_USE_PROTOS 
    13422 static void yy_flex_free( void *ptr ) 
    13423 #else 
    13424 static void yy_flex_free( ptr ) 
    13425 void *ptr; 
    13426 #endif 
    13427    { 
    13428    free( ptr ); 
    13429    } 
    13430  
    13431 #if YY_MAIN 
    13432 int main() 
    13433    { 
    13434    yylex(); 
    13435    return 0; 
    13436    } 
    13437 #endif 
    13438 #line 319 "fortran.lex" 
     12003} 
     12004 
     12005void fortranfree (void * ptr ) 
     12006{ 
     12007   free( (char *) ptr );   /* see fortranrealloc() for (char *) cast */ 
     12008} 
     12009 
     12010#define YYTABLES_NAME "yytables" 
     12011 
     12012#line 353 "fortran.lex" 
     12013 
    1343912014 
    1344012015 
     
    1344312018   if (!strcasecmp(curfile,mainfile)) 
    1344412019   { 
    13445       printf("%s line %d, file %s\n",s,line_num_fortran,curfile); 
     12020      printf("%s line %d, file %s motclef = %s\n",s,line_num_fortran,curfile,fortrantext); 
    1344612021   } 
    1344712022   else 
    1344812023   { 
    13449       printf("%s line %d, file %s\n",s,line_num_fortran_common,curfile); 
     12024      printf("%s line %d, file %s motclef = %s curbuf = %s\n",s,line_num_fortran_common,curfile,fortrantext,curbuf); 
    1345012025   } 
    13451    /*exit(0);*/ 
     12026/*   exit(0);*/ 
    1345212027} 
    1345312028 
     
    1345512030{ 
    1345612031} 
     12032 
Note: See TracChangeset for help on using the changeset viewer.