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 12420 for vendors/AGRIF/dev/LIB – NEMO

Ignore:
Timestamp:
2020-02-20T13:42:35+01:00 (4 years ago)
Author:
smueller
Message:

Reintegration of the AGRIF development branch associated with NEMO development branch 2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles (/vendors/AGRIF/dev_r11615_ENHANCE-04_namelists_as_internalfiles_agrif) into /vendors/AGRIF/dev

Location:
vendors/AGRIF/dev/LIB
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • vendors/AGRIF/dev/LIB/fortran.c

    r5656 r12420  
    1 /* A Bison parser, made by GNU Bison 2.7.  */ 
     1/* A Bison parser, made by GNU Bison 3.4.2.  */ 
    22 
    33/* Bison implementation for Yacc-like parsers in C 
    4     
    5       Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. 
    6     
     4 
     5   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, 
     6   Inc. 
     7 
    78   This program is free software: you can redistribute it and/or modify 
    89   it under the terms of the GNU General Public License as published by 
    910   the Free Software Foundation, either version 3 of the License, or 
    1011   (at your option) any later version. 
    11     
     12 
    1213   This program is distributed in the hope that it will be useful, 
    1314   but WITHOUT ANY WARRANTY; without even the implied warranty of 
    1415   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
    1516   GNU General Public License for more details. 
    16     
     17 
    1718   You should have received a copy of the GNU General Public License 
    1819   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ 
     
    2728   Bison output files to be licensed under the GNU General Public 
    2829   License without this special exception. 
    29     
     30 
    3031   This special exception was added by the Free Software Foundation in 
    3132   version 2.2 of Bison.  */ 
     
    4142   USER NAME SPACE" below.  */ 
    4243 
     44/* Undocumented macros, especially those whose name start with YY_, 
     45   are private implementation details.  Do not rely on them.  */ 
     46 
    4347/* Identify Bison output.  */ 
    4448#define YYBISON 1 
    4549 
    4650/* Bison version.  */ 
     51#define YYBISON_VERSION "3.4.2" 
    4752 
    4853/* Skeleton name.  */ 
     
    6368#define yylex           fortran_lex 
    6469#define yyerror         fortran_error 
     70#define yydebug         fortran_debug 
     71#define yynerrs         fortran_nerrs 
     72 
    6573#define yylval          fortran_lval 
    6674#define yychar          fortran_char 
    67 #define yydebug         fortran_debug 
    68 #define yynerrs         fortran_nerrs 
    69  
    70 /* Copy the first part of user declarations.  */ 
    71 /* Line 371 of yacc.c  */ 
     75 
     76/* First part of user prologue.  */ 
    7277#line 36 "fortran.y" 
    7378 
     
    99104 
    100105 
    101 /* Line 371 of yacc.c  */ 
    102 #line 104 "fortran.tab.c" 
    103  
    104 # ifndef YY_NULL 
    105 #  if defined __cplusplus && 201103L <= __cplusplus 
    106 #   define YY_NULL nullptr 
     106#line 107 "fortran.tab.c" 
     107 
     108# ifndef YY_NULLPTR 
     109#  if defined __cplusplus 
     110#   if 201103L <= __cplusplus 
     111#    define YY_NULLPTR nullptr 
     112#   else 
     113#    define YY_NULLPTR 0 
     114#   endif 
    107115#  else 
    108 #   define YY_NULL 0 
     116#   define YY_NULLPTR ((void*)0) 
    109117#  endif 
    110118# endif 
     
    119127 
    120128 
    121 /* Enabling traces.  */ 
     129/* Debug traces.  */ 
    122130#ifndef YYDEBUG 
    123131# define YYDEBUG 1 
     
    127135#endif 
    128136 
    129 /* Tokens.  */ 
     137/* Token type.  */ 
    130138#ifndef YYTOKENTYPE 
    131139# define YYTOKENTYPE 
    132    /* Put the tokens into the symbol table, so that GDB and other debuggers 
    133       know about them.  */ 
    134    enum yytokentype { 
    135      TOK_NEQV = 258, 
    136      TOK_EQV = 259, 
    137      TOK_XOR = 260, 
    138      TOK_OR = 261, 
    139      TOK_AND = 262, 
    140      TOK_NOT = 263, 
    141      TOK_NE = 264, 
    142      TOK_EQ = 265, 
    143      TOK_GE = 266, 
    144      TOK_LE = 267, 
    145      TOK_GT = 268, 
    146      TOK_LT = 269, 
    147      TOK_DSLASH = 270, 
    148      TOK_SLASH = 271, 
    149      TOK_DASTER = 272, 
    150      TOK_SEMICOLON = 273, 
    151      TOK_PARAMETER = 274, 
    152      TOK_RESULT = 275, 
    153      TOK_ONLY = 276, 
    154      TOK_INCLUDE = 277, 
    155      TOK_SUBROUTINE = 278, 
    156      TOK_PROGRAM = 279, 
    157      TOK_FUNCTION = 280, 
    158      TOK_FORMAT = 281, 
    159      TOK_MAX = 282, 
    160      TOK_TANH = 283, 
    161      TOK_WHERE = 284, 
    162      TOK_ELSEWHEREPAR = 285, 
    163      TOK_ELSEWHERE = 286, 
    164      TOK_ENDWHERE = 287, 
    165      TOK_MAXVAL = 288, 
    166      TOK_TRIM = 289, 
    167      TOK_NULL_PTR = 290, 
    168      TOK_SUM = 291, 
    169      TOK_SQRT = 292, 
    170      TOK_CASE = 293, 
    171      TOK_SELECTCASE = 294, 
    172      TOK_FILE = 295, 
    173      TOK_UNIT = 296, 
    174      TOK_FMT = 297, 
    175      TOK_NML = 298, 
    176      TOK_END = 299, 
    177      TOK_EOR = 300, 
    178      TOK_ERR = 301, 
    179      TOK_EXIST = 302, 
    180      TOK_MIN = 303, 
    181      TOK_FLOAT = 304, 
    182      TOK_EXP = 305, 
    183      TOK_COS = 306, 
    184      TOK_COSH = 307, 
    185      TOK_ACOS = 308, 
    186      TOK_NINT = 309, 
    187      TOK_CYCLE = 310, 
    188      TOK_SIN = 311, 
    189      TOK_SINH = 312, 
    190      TOK_ASIN = 313, 
    191      TOK_EQUIVALENCE = 314, 
    192      TOK_BACKSPACE = 315, 
    193      TOK_LOG = 316, 
    194      TOK_TAN = 317, 
    195      TOK_ATAN = 318, 
    196      TOK_RECURSIVE = 319, 
    197      TOK_ABS = 320, 
    198      TOK_MOD = 321, 
    199      TOK_SIGN = 322, 
    200      TOK_MINLOC = 323, 
    201      TOK_MAXLOC = 324, 
    202      TOK_EXIT = 325, 
    203      TOK_MINVAL = 326, 
    204      TOK_PUBLIC = 327, 
    205      TOK_PRIVATE = 328, 
    206      TOK_ALLOCATABLE = 329, 
    207      TOK_RETURN = 330, 
    208      TOK_THEN = 331, 
    209      TOK_ELSEIF = 332, 
    210      TOK_ELSE = 333, 
    211      TOK_ENDIF = 334, 
    212      TOK_PRINT = 335, 
    213      TOK_PLAINGOTO = 336, 
    214      TOK_LOGICALIF = 337, 
    215      TOK_PLAINDO = 338, 
    216      TOK_CONTAINS = 339, 
    217      TOK_ENDDO = 340, 
    218      TOK_MODULE = 341, 
    219      TOK_ENDMODULE = 342, 
    220      TOK_WHILE = 343, 
    221      TOK_CONCURRENT = 344, 
    222      TOK_ALLOCATE = 345, 
    223      TOK_OPEN = 346, 
    224      TOK_CLOSE = 347, 
    225      TOK_INQUIRE = 348, 
    226      TOK_WRITE = 349, 
    227      TOK_FLUSH = 350, 
    228      TOK_READ = 351, 
    229      TOK_REWIND = 352, 
    230      TOK_DEALLOCATE = 353, 
    231      TOK_NULLIFY = 354, 
    232      TOK_DIMENSION = 355, 
    233      TOK_ENDSELECT = 356, 
    234      TOK_EXTERNAL = 357, 
    235      TOK_INTENT = 358, 
    236      TOK_INTRINSIC = 359, 
    237      TOK_NAMELIST = 360, 
    238      TOK_DEFAULT = 361, 
    239      TOK_OPTIONAL = 362, 
    240      TOK_POINTER = 363, 
    241      TOK_CONTINUE = 364, 
    242      TOK_SAVE = 365, 
    243      TOK_TARGET = 366, 
    244      TOK_IMPLICIT = 367, 
    245      TOK_NONE = 368, 
    246      TOK_CALL = 369, 
    247      TOK_STAT = 370, 
    248      TOK_POINT_TO = 371, 
    249      TOK_COMMON = 372, 
    250      TOK_GLOBAL = 373, 
    251      TOK_LEFTAB = 374, 
    252      TOK_RIGHTAB = 375, 
    253      TOK_PAUSE = 376, 
    254      TOK_PROCEDURE = 377, 
    255      TOK_STOP = 378, 
    256      TOK_REAL8 = 379, 
    257      TOK_FOURDOTS = 380, 
    258      TOK_HEXA = 381, 
    259      TOK_ASSIGNTYPE = 382, 
    260      TOK_OUT = 383, 
    261      TOK_INOUT = 384, 
    262      TOK_IN = 385, 
    263      TOK_USE = 386, 
    264      TOK_TRUE = 387, 
    265      TOK_FALSE = 388, 
    266      TOK_LABEL = 389, 
    267      TOK_TYPE = 390, 
    268      TOK_TYPEPAR = 391, 
    269      TOK_ENDTYPE = 392, 
    270      TOK_REAL = 393, 
    271      TOK_INTEGER = 394, 
    272      TOK_LOGICAL = 395, 
    273      TOK_DOUBLEPRECISION = 396, 
    274      TOK_ENDSUBROUTINE = 397, 
    275      TOK_ENDFUNCTION = 398, 
    276      TOK_ENDPROGRAM = 399, 
    277      TOK_ENDUNIT = 400, 
    278      TOK_CHARACTER = 401, 
    279      TOK_CHAR_CONSTANT = 402, 
    280      TOK_CHAR_CUT = 403, 
    281      TOK_DATA = 404, 
    282      TOK_CHAR_MESSAGE = 405, 
    283      TOK_CSTREAL = 406, 
    284      TOK_COMPLEX = 407, 
    285      TOK_DOUBLECOMPLEX = 408, 
    286      TOK_NAME = 409, 
    287      TOK_CSTINT = 410 
    288    }; 
     140  enum yytokentype 
     141  { 
     142    TOK_EQV = 258, 
     143    TOK_NEQV = 259, 
     144    TOK_OR = 260, 
     145    TOK_XOR = 261, 
     146    TOK_AND = 262, 
     147    TOK_NOT = 263, 
     148    TOK_LT = 264, 
     149    TOK_GT = 265, 
     150    TOK_LE = 266, 
     151    TOK_GE = 267, 
     152    TOK_EQ = 268, 
     153    TOK_NE = 269, 
     154    TOK_DSLASH = 270, 
     155    TOK_SLASH = 271, 
     156    TOK_DASTER = 272, 
     157    TOK_SEMICOLON = 273, 
     158    TOK_PARAMETER = 274, 
     159    TOK_RESULT = 275, 
     160    TOK_ONLY = 276, 
     161    TOK_INCLUDE = 277, 
     162    TOK_SUBROUTINE = 278, 
     163    TOK_PROGRAM = 279, 
     164    TOK_FUNCTION = 280, 
     165    TOK_FORMAT = 281, 
     166    TOK_MAX = 282, 
     167    TOK_TANH = 283, 
     168    TOK_WHERE = 284, 
     169    TOK_ELSEWHEREPAR = 285, 
     170    TOK_ELSEWHERE = 286, 
     171    TOK_ENDWHERE = 287, 
     172    TOK_MAXVAL = 288, 
     173    TOK_TRIM = 289, 
     174    TOK_NULL_PTR = 290, 
     175    TOK_SUM = 291, 
     176    TOK_SQRT = 292, 
     177    TOK_CASE = 293, 
     178    TOK_SELECTCASE = 294, 
     179    TOK_FILE = 295, 
     180    TOK_UNIT = 296, 
     181    TOK_FMT = 297, 
     182    TOK_NML = 298, 
     183    TOK_END = 299, 
     184    TOK_EOR = 300, 
     185    TOK_ERR = 301, 
     186    TOK_EXIST = 302, 
     187    TOK_MIN = 303, 
     188    TOK_FLOAT = 304, 
     189    TOK_EXP = 305, 
     190    TOK_COS = 306, 
     191    TOK_COSH = 307, 
     192    TOK_ACOS = 308, 
     193    TOK_NINT = 309, 
     194    TOK_CYCLE = 310, 
     195    TOK_SIN = 311, 
     196    TOK_SINH = 312, 
     197    TOK_ASIN = 313, 
     198    TOK_EQUIVALENCE = 314, 
     199    TOK_BACKSPACE = 315, 
     200    TOK_LOG = 316, 
     201    TOK_TAN = 317, 
     202    TOK_ATAN = 318, 
     203    TOK_RECURSIVE = 319, 
     204    TOK_ABS = 320, 
     205    TOK_MOD = 321, 
     206    TOK_SIGN = 322, 
     207    TOK_MINLOC = 323, 
     208    TOK_MAXLOC = 324, 
     209    TOK_EXIT = 325, 
     210    TOK_MINVAL = 326, 
     211    TOK_PUBLIC = 327, 
     212    TOK_PRIVATE = 328, 
     213    TOK_ALLOCATABLE = 329, 
     214    TOK_RETURN = 330, 
     215    TOK_THEN = 331, 
     216    TOK_ELSEIF = 332, 
     217    TOK_ELSE = 333, 
     218    TOK_ENDIF = 334, 
     219    TOK_PRINT = 335, 
     220    TOK_PLAINGOTO = 336, 
     221    TOK_LOGICALIF = 337, 
     222    TOK_PLAINDO = 338, 
     223    TOK_CONTAINS = 339, 
     224    TOK_ENDDO = 340, 
     225    TOK_MODULE = 341, 
     226    TOK_ENDMODULE = 342, 
     227    TOK_WHILE = 343, 
     228    TOK_CONCURRENT = 344, 
     229    TOK_ALLOCATE = 345, 
     230    TOK_OPEN = 346, 
     231    TOK_CLOSE = 347, 
     232    TOK_INQUIRE = 348, 
     233    TOK_WRITE = 349, 
     234    TOK_FLUSH = 350, 
     235    TOK_READ = 351, 
     236    TOK_REWIND = 352, 
     237    TOK_DEALLOCATE = 353, 
     238    TOK_NULLIFY = 354, 
     239    TOK_DIMENSION = 355, 
     240    TOK_ENDSELECT = 356, 
     241    TOK_EXTERNAL = 357, 
     242    TOK_INTENT = 358, 
     243    TOK_INTRINSIC = 359, 
     244    TOK_NAMELIST = 360, 
     245    TOK_DEFAULT = 361, 
     246    TOK_OPTIONAL = 362, 
     247    TOK_POINTER = 363, 
     248    TOK_CONTINUE = 364, 
     249    TOK_SAVE = 365, 
     250    TOK_TARGET = 366, 
     251    TOK_IMPLICIT = 367, 
     252    TOK_NONE = 368, 
     253    TOK_CALL = 369, 
     254    TOK_STAT = 370, 
     255    TOK_POINT_TO = 371, 
     256    TOK_COMMON = 372, 
     257    TOK_GLOBAL = 373, 
     258    TOK_LEFTAB = 374, 
     259    TOK_RIGHTAB = 375, 
     260    TOK_PAUSE = 376, 
     261    TOK_PROCEDURE = 377, 
     262    TOK_STOP = 378, 
     263    TOK_REAL8 = 379, 
     264    TOK_FOURDOTS = 380, 
     265    TOK_HEXA = 381, 
     266    TOK_ASSIGNTYPE = 382, 
     267    TOK_OUT = 383, 
     268    TOK_INOUT = 384, 
     269    TOK_IN = 385, 
     270    TOK_USE = 386, 
     271    TOK_TRUE = 387, 
     272    TOK_FALSE = 388, 
     273    TOK_LABEL = 389, 
     274    TOK_TYPE = 390, 
     275    TOK_TYPEPAR = 391, 
     276    TOK_ENDTYPE = 392, 
     277    TOK_REAL = 393, 
     278    TOK_INTEGER = 394, 
     279    TOK_LOGICAL = 395, 
     280    TOK_DOUBLEPRECISION = 396, 
     281    TOK_ENDSUBROUTINE = 397, 
     282    TOK_ENDFUNCTION = 398, 
     283    TOK_ENDPROGRAM = 399, 
     284    TOK_ENDUNIT = 400, 
     285    TOK_CHARACTER = 401, 
     286    TOK_CHAR_CONSTANT = 402, 
     287    TOK_CHAR_CUT = 403, 
     288    TOK_DATA = 404, 
     289    TOK_CHAR_MESSAGE = 405, 
     290    TOK_CSTREAL = 406, 
     291    TOK_COMPLEX = 407, 
     292    TOK_DOUBLECOMPLEX = 408, 
     293    TOK_NAME = 409, 
     294    TOK_CSTINT = 410 
     295  }; 
    289296#endif 
    290297 
    291  
     298/* Value type.  */ 
    292299#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 
    293 typedef union YYSTYPE 
     300union YYSTYPE 
    294301{ 
    295 /* Line 387 of yacc.c  */ 
    296302#line 65 "fortran.y" 
    297303 
     
    304310    variable    *v; 
    305311 
    306  
    307 /* Line 387 of yacc.c  */ 
    308 #line 310 "fortran.tab.c" 
    309 } YYSTYPE; 
     312#line 313 "fortran.tab.c" 
     313 
     314}; 
     315typedef union YYSTYPE YYSTYPE; 
    310316# define YYSTYPE_IS_TRIVIAL 1 
    311 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ 
    312317# define YYSTYPE_IS_DECLARED 1 
    313318#endif 
    314319 
     320 
    315321extern YYSTYPE fortran_lval; 
    316322 
    317 #ifdef YYPARSE_PARAM 
    318 #if defined __STDC__ || defined __cplusplus 
    319 int fortran_parse (void *YYPARSE_PARAM); 
    320 #else 
    321 int fortran_parse (); 
    322 #endif 
    323 #else /* ! YYPARSE_PARAM */ 
    324 #if defined __STDC__ || defined __cplusplus 
    325323int fortran_parse (void); 
    326 #else 
    327 int fortran_parse (); 
    328 #endif 
    329 #endif /* ! YYPARSE_PARAM */ 
    330  
    331  
    332  
    333 /* Copy the second part of user declarations.  */ 
    334  
    335 /* Line 390 of yacc.c  */ 
    336 #line 338 "fortran.tab.c" 
     324 
     325 
     326 
     327 
    337328 
    338329#ifdef short 
     
    348339#ifdef YYTYPE_INT8 
    349340typedef YYTYPE_INT8 yytype_int8; 
    350 #elif (defined __STDC__ || defined __C99__FUNC__ \ 
    351      || defined __cplusplus || defined _MSC_VER) 
     341#else 
    352342typedef signed char yytype_int8; 
    353 #else 
    354 typedef short int yytype_int8; 
    355343#endif 
    356344 
     
    358346typedef YYTYPE_UINT16 yytype_uint16; 
    359347#else 
    360 typedef unsigned short int yytype_uint16; 
     348typedef unsigned short yytype_uint16; 
    361349#endif 
    362350 
     
    364352typedef YYTYPE_INT16 yytype_int16; 
    365353#else 
    366 typedef short int yytype_int16; 
     354typedef short yytype_int16; 
    367355#endif 
    368356 
     
    372360# elif defined size_t 
    373361#  define YYSIZE_T size_t 
    374 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ 
    375      || defined __cplusplus || defined _MSC_VER) 
     362# elif ! defined YYSIZE_T 
    376363#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */ 
    377364#  define YYSIZE_T size_t 
    378365# else 
    379 #  define YYSIZE_T unsigned int 
     366#  define YYSIZE_T unsigned 
    380367# endif 
    381368#endif 
     
    395382#endif 
    396383 
     384#ifndef YY_ATTRIBUTE 
     385# if (defined __GNUC__                                               \ 
     386      && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \ 
     387     || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 
     388#  define YY_ATTRIBUTE(Spec) __attribute__(Spec) 
     389# else 
     390#  define YY_ATTRIBUTE(Spec) /* empty */ 
     391# endif 
     392#endif 
     393 
     394#ifndef YY_ATTRIBUTE_PURE 
     395# define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__)) 
     396#endif 
     397 
     398#ifndef YY_ATTRIBUTE_UNUSED 
     399# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 
     400#endif 
     401 
    397402/* Suppress unused-variable warnings by "using" E.  */ 
    398403#if ! defined lint || defined __GNUC__ 
     
    402407#endif 
    403408 
    404 /* Identity function, used to suppress warnings about constant conditions.  */ 
    405 #ifndef lint 
    406 # define YYID(N) (N) 
     409#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 
     410/* Suppress an incorrect diagnostic about yylval being uninitialized.  */ 
     411# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 
     412    _Pragma ("GCC diagnostic push") \ 
     413    _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 
     414    _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 
     415# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 
     416    _Pragma ("GCC diagnostic pop") 
    407417#else 
    408 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    409      || defined __cplusplus || defined _MSC_VER) 
    410 static int 
    411 YYID (int yyi) 
    412 #else 
    413 static int 
    414 YYID (yyi) 
    415     int yyi; 
     418# define YY_INITIAL_VALUE(Value) Value 
    416419#endif 
    417 { 
    418   return yyi; 
    419 } 
     420#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     421# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     422# define YY_IGNORE_MAYBE_UNINITIALIZED_END 
    420423#endif 
     424#ifndef YY_INITIAL_VALUE 
     425# define YY_INITIAL_VALUE(Value) /* Nothing. */ 
     426#endif 
     427 
     428 
     429#define YY_ASSERT(E) ((void) (0 && (E))) 
    421430 
    422431#if ! defined yyoverflow || YYERROR_VERBOSE 
     
    437446#   else 
    438447#    define YYSTACK_ALLOC alloca 
    439 #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ 
    440      || defined __cplusplus || defined _MSC_VER) 
     448#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 
    441449#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 
    442450      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */ 
     
    450458 
    451459# ifdef YYSTACK_ALLOC 
    452    /* Pacify GCC's `empty if-body' warning.  */ 
    453 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) 
     460   /* Pacify GCC's 'empty if-body' warning.  */ 
     461#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) 
    454462#  ifndef YYSTACK_ALLOC_MAXIMUM 
    455463    /* The OS might guarantee only one guard page at the bottom of the stack, 
     
    467475#  if (defined __cplusplus && ! defined EXIT_SUCCESS \ 
    468476       && ! ((defined YYMALLOC || defined malloc) \ 
    469         && (defined YYFREE || defined free))) 
     477             && (defined YYFREE || defined free))) 
    470478#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 
    471479#   ifndef EXIT_SUCCESS 
     
    475483#  ifndef YYMALLOC 
    476484#   define YYMALLOC malloc 
    477 #   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ 
    478      || defined __cplusplus || defined _MSC_VER) 
     485#   if ! defined malloc && ! defined EXIT_SUCCESS 
    479486void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ 
    480487#   endif 
     
    482489#  ifndef YYFREE 
    483490#   define YYFREE free 
    484 #   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ 
    485      || defined __cplusplus || defined _MSC_VER) 
     491#   if ! defined free && ! defined EXIT_SUCCESS 
    486492void free (void *); /* INFRINGES ON USER NAME SPACE */ 
    487493#   endif 
     
    493499#if (! defined yyoverflow \ 
    494500     && (! defined __cplusplus \ 
    495     || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 
     501        || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 
    496502 
    497503/* A type that is properly aligned for any stack member.  */ 
     
    518524   stack.  Advance YYPTR to a properly aligned location for the next 
    519525   stack.  */ 
    520 # define YYSTACK_RELOCATE(Stack_alloc, Stack)            \ 
    521     do                           \ 
    522       {                          \ 
    523    YYSIZE_T yynewbytes;                \ 
    524    YYCOPY (&yyptr->Stack_alloc, Stack, yysize);       \ 
    525    Stack = &yyptr->Stack_alloc;              \ 
    526    yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 
    527    yyptr += yynewbytes / sizeof (*yyptr);          \ 
    528       }                          \ 
    529     while (YYID (0)) 
     526# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \ 
     527    do                                                                  \ 
     528      {                                                                 \ 
     529        YYSIZE_T yynewbytes;                                            \ 
     530        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \ 
     531        Stack = &yyptr->Stack_alloc;                                    \ 
     532        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 
     533        yyptr += yynewbytes / sizeof (*yyptr);                          \ 
     534      }                                                                 \ 
     535    while (0) 
    530536 
    531537#endif 
     
    546552            (Dst)[yyi] = (Src)[yyi];            \ 
    547553        }                                       \ 
    548       while (YYID (0)) 
     554      while (0) 
    549555#  endif 
    550556# endif 
     
    554560#define YYFINAL  2 
    555561/* YYLAST -- Last index in YYTABLE.  */ 
    556 #define YYLAST   6268 
     562#define YYLAST   6446 
    557563 
    558564/* YYNTOKENS -- Number of terminals.  */ 
     
    561567#define YYNNTS  206 
    562568/* YYNRULES -- Number of rules.  */ 
    563 #define YYNRULES  597 
    564 /* YYNRULES -- Number of states.  */ 
    565 #define YYNSTATES  1051 
    566  
    567 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */ 
     569#define YYNRULES  598 
     570/* YYNSTATES -- Number of states.  */ 
     571#define YYNSTATES  1052 
     572 
    568573#define YYUNDEFTOK  2 
    569574#define YYMAXUTOK   410 
    570575 
    571 #define YYTRANSLATE(YYX)                  \ 
    572   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 
    573  
    574 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */ 
     576/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM 
     577   as returned by yylex, with out-of-bounds checking.  */ 
     578#define YYTRANSLATE(YYX)                                                \ 
     579  ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 
     580 
     581/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM 
     582   as returned by yylex.  */ 
    575583static const yytype_uint8 yytranslate[] = 
    576584{ 
     
    620628 
    621629#if YYDEBUG 
    622 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in 
    623    YYRHS.  */ 
    624 static const yytype_uint16 yyprhs[] = 
    625 { 
    626        0,     0,     3,     4,     7,     9,    11,    14,    16,    19, 
    627       21,    25,    28,    31,    33,    37,    41,    44,    47,    51, 
    628       53,    54,    55,    57,    58,    61,    66,    69,    75,    78, 
    629       80,    83,    85,    87,    88,    91,    95,    96,    99,   103, 
    630      105,   109,   111,   113,   116,   121,   124,   127,   132,   135, 
    631      137,   139,   141,   143,   145,   147,   149,   151,   153,   158, 
    632      162,   166,   169,   172,   173,   175,   177,   179,   181,   183, 
    633      185,   187,   189,   191,   193,   195,   197,   199,   201,   203, 
    634      205,   207,   209,   211,   213,   215,   217,   219,   221,   223, 
    635      225,   229,   233,   239,   241,   245,   249,   252,   257,   259, 
    636      263,   264,   266,   269,   273,   275,   277,   280,   282,   286, 
    637      291,   296,   305,   307,   311,   314,   318,   324,   328,   330, 
    638      331,   334,   336,   341,   345,   348,   352,   356,   360,   364, 
    639      365,   367,   370,   374,   380,   384,   386,   392,   398,   401, 
    640      405,   408,   412,   414,   416,   420,   424,   427,   431,   437, 
    641      439,   442,   444,   448,   451,   453,   457,   458,   460,   462, 
    642      466,   470,   473,   475,   479,   482,   485,   491,   498,   499, 
    643      502,   505,   509,   513,   514,   517,   522,   526,   530,   535, 
    644      538,   540,   542,   544,   546,   548,   550,   552,   553,   556, 
    645      558,   562,   563,   566,   570,   572,   576,   579,   583,   585, 
    646      587,   589,   591,   593,   594,   598,   599,   601,   605,   607, 
    647      611,   613,   615,   617,   620,   622,   627,   629,   631,   633, 
    648      635,   637,   639,   641,   643,   645,   647,   648,   652,   654, 
    649      658,   660,   662,   665,   668,   672,   674,   676,   678,   680, 
    650      682,   686,   690,   694,   699,   704,   708,   713,   718,   722, 
    651      727,   732,   737,   742,   747,   752,   757,   762,   767,   772, 
    652      777,   782,   787,   791,   796,   800,   805,   810,   812,   816, 
    653      818,   820,   822,   825,   828,   831,   833,   835,   838,   841, 
    654      844,   847,   850,   853,   856,   859,   862,   866,   870,   873, 
    655      876,   879,   882,   885,   888,   891,   894,   897,   900,   901, 
    656      903,   906,   909,   912,   914,   916,   918,   920,   921,   923, 
    657      926,   931,   937,   942,   947,   951,   953,   956,   958,   962, 
    658      964,   966,   970,   976,   981,   985,   988,   991,   993,   995, 
    659      997,   999,  1001,  1003,  1005,  1007,  1010,  1013,  1015,  1018, 
    660     1020,  1022,  1023,  1025,  1031,  1032,  1034,  1036,  1038,  1039, 
    661     1042,  1045,  1051,  1054,  1059,  1066,  1073,  1075,  1077,  1081, 
    662     1085,  1087,  1091,  1095,  1097,  1099,  1101,  1103,  1105,  1107, 
    663     1109,  1111,  1113,  1116,  1118,  1120,  1123,  1126,  1129,  1133, 
    664     1136,  1142,  1148,  1151,  1154,  1157,  1160,  1162,  1167,  1169, 
    665     1172,  1175,  1178,  1181,  1183,  1185,  1187,  1189,  1195,  1202, 
    666     1203,  1207,  1208,  1213,  1214,  1219,  1224,  1226,  1228,  1230, 
    667     1232,  1234,  1238,  1243,  1245,  1248,  1250,  1253,  1254,  1255, 
    668     1258,  1262,  1264,  1269,  1271,  1273,  1278,  1281,  1287,  1291, 
    669     1295,  1297,  1302,  1305,  1312,  1321,  1327,  1331,  1333,  1335, 
    670     1337,  1339,  1341,  1344,  1351,  1352,  1354,  1357,  1361,  1362, 
    671     1364,  1367,  1371,  1379,  1385,  1391,  1398,  1400,  1403,  1405, 
    672     1408,  1414,  1419,  1420,  1422,  1425,  1429,  1436,  1441,  1444, 
    673     1448,  1450,  1453,  1457,  1459,  1461,  1465,  1467,  1470,  1473, 
    674     1477,  1479,  1481,  1483,  1485,  1487,  1489,  1491,  1493,  1495, 
    675     1496,  1501,  1509,  1511,  1515,  1518,  1521,  1524,  1525,  1529, 
    676     1530,  1532,  1535,  1538,  1540,  1542,  1546,  1548,  1551,  1553, 
    677     1555,  1556,  1558,  1561,  1564,  1565,  1568,  1572,  1576,  1580, 
    678     1582,  1586,  1588,  1590,  1594,  1596,  1598,  1600,  1604,  1610, 
    679     1615,  1618,  1621,  1622,  1624,  1626,  1628,  1630,  1632,  1634, 
    680     1636,  1638,  1640,  1644,  1646,  1648,  1652,  1656,  1660,  1664, 
    681     1667,  1671,  1674,  1677,  1680,  1683,  1686,  1689,  1692,  1696, 
    682     1698,  1700,  1702,  1704,  1708,  1711,  1716,  1719,  1722,  1728, 
    683     1729,  1731,  1734,  1736,  1738,  1740,  1742,  1746,  1750,  1754, 
    684     1758,  1762,  1766,  1772,  1778,  1784,  1790,  1798,  1807,  1810, 
    685     1812,  1816,  1818,  1820,  1824,  1825,  1830,  1832 
    686 }; 
    687  
    688 /* YYRHS -- A `-1'-separated list of the rules' RHS.  */ 
    689 static const yytype_int16 yyrhs[] = 
    690 { 
    691      170,     0,    -1,    -1,   170,   171,    -1,   172,    -1,   173, 
    692       -1,   140,   173,    -1,     1,    -1,   166,   175,    -1,    24, 
    693       -1,   172,   166,   175,    -1,   172,    24,    -1,   172,   140, 
    694       -1,   174,    -1,   173,    24,   166,    -1,   173,    24,   174, 
    695       -1,   178,   175,    -1,   186,   175,    -1,    28,   181,   175, 
    696       -1,   282,    -1,    -1,    -1,    70,    -1,    -1,    26,   183, 
    697       -1,   176,    29,   180,   182,    -1,    30,   180,    -1,   176, 
    698       31,   180,   182,   177,    -1,    92,   160,    -1,   161,    -1, 
    699      179,   161,    -1,   160,    -1,   153,    -1,    -1,   162,   163, 
    700       -1,   162,   184,   163,    -1,    -1,   162,   163,    -1,   162, 
    701      184,   163,    -1,   185,    -1,   184,     3,   185,    -1,   160, 
    702       -1,    21,    -1,   228,   196,    -1,   141,   187,   195,   336, 
    703       -1,   143,   336,    -1,   114,   190,    -1,   198,   162,   221, 
    704      163,    -1,   198,   221,    -1,   215,    -1,   203,    -1,   225, 
    705       -1,   211,    -1,   213,    -1,   212,    -1,   276,    -1,   223, 
    706       -1,   209,    -1,    66,   162,   249,   163,    -1,   108,   195, 
    707      214,    -1,   110,   195,   189,    -1,    65,   191,    -1,   199, 
    708      166,    -1,    -1,   244,    -1,    42,    -1,    34,    -1,    39, 
    709       -1,    54,    -1,    77,    -1,    40,    -1,    43,    -1,    60, 
    710       -1,    55,    -1,    56,    -1,    57,    -1,    58,    -1,    59, 
    711       -1,    62,    -1,    63,    -1,    64,    -1,    67,    -1,    68, 
    712       -1,    69,    -1,    72,    -1,    73,    -1,    74,    -1,    75, 
    713       -1,   160,    -1,   188,    -1,   189,     3,   188,    -1,   162, 
    714      194,   163,    -1,   190,     3,   162,   194,   163,    -1,   192, 
    715       -1,   191,     3,   192,    -1,   162,   193,   163,    -1,   267, 
    716      245,    -1,   193,     3,   267,   245,    -1,   249,    -1,   194, 
    717        3,   249,    -1,    -1,   131,    -1,   226,   227,    -1,   197, 
    718      180,   182,    -1,    31,    -1,    25,    -1,   155,   200,    -1, 
    719      201,    -1,   200,   220,   201,    -1,   160,    22,   202,    22, 
    720       -1,   206,    22,   202,    22,    -1,   162,   257,     3,   368, 
    721      163,    22,   202,    22,    -1,   207,    -1,   207,     3,   202, 
    722       -1,   204,   205,    -1,   204,   219,   205,    -1,   203,   220, 
    723      219,   220,   205,    -1,   203,     3,   205,    -1,   116,    -1, 
    724       -1,   160,   245,    -1,   160,    -1,   160,   162,   249,   163, 
    725       -1,   206,     3,   206,    -1,   208,   268,    -1,   207,    19, 
    726      207,    -1,   207,    20,   207,    -1,   207,    21,   207,    -1, 
    727      207,   167,   207,    -1,    -1,   253,    -1,   111,   267,    -1, 
    728      111,   219,   267,    -1,   209,   220,   219,   220,   267,    -1, 
    729      209,     3,   267,    -1,   106,    -1,   210,   220,   160,   245, 
    730      233,    -1,   211,     3,   160,   245,   233,    -1,    79,   166, 
    731       -1,    79,   195,   214,    -1,    78,   166,    -1,    78,   195, 
    732      214,    -1,   160,    -1,   133,    -1,   214,     3,   160,    -1, 
    733      214,     3,   133,    -1,   216,   217,    -1,   216,   219,   217, 
    734       -1,   215,   220,   219,   220,   217,    -1,   123,    -1,   124, 
    735      123,    -1,   218,    -1,   217,     3,   218,    -1,   160,   245, 
    736       -1,    18,    -1,    22,   160,    22,    -1,    -1,     3,    -1, 
    737      222,    -1,   221,     3,   222,    -1,   160,     5,   249,    -1, 
    738      128,   224,    -1,   160,    -1,   224,     3,   160,    -1,   118, 
    739      119,    -1,   118,   130,    -1,   240,   160,   245,   233,   274, 
    740       -1,   226,     3,   160,   245,   233,   274,    -1,    -1,   232, 
    741      235,    -1,   231,   229,    -1,   232,    21,   161,    -1,   142, 
    742      237,   163,    -1,    -1,    21,   161,    -1,    21,   162,   230, 
    743      163,    -1,   162,   230,   163,    -1,   160,   238,   239,    -1, 
    744      160,     5,   238,   239,    -1,   238,   239,    -1,   152,    -1, 
    745      145,    -1,   146,    -1,   144,    -1,   158,    -1,   159,    -1, 
    746      147,    -1,    -1,    21,   234,    -1,   249,    -1,   162,    21, 
    747      163,    -1,    -1,    21,   236,    -1,   162,   237,   163,    -1, 
    748      249,    -1,   162,    21,   163,    -1,   160,   238,    -1,   160, 
    749        5,   238,    -1,   160,    -1,   161,    -1,   133,    -1,   249, 
    750       -1,    21,    -1,    -1,     3,   160,   238,    -1,    -1,   131, 
    751       -1,     3,   241,   131,    -1,   242,    -1,   241,     3,   242, 
    752       -1,    25,    -1,   244,    -1,    80,    -1,   106,   245,    -1, 
    753      108,    -1,   109,   162,   243,   163,    -1,   110,    -1,   113, 
    754       -1,   114,    -1,   116,    -1,   117,    -1,   136,    -1,   134, 
    755       -1,   135,    -1,    78,    -1,    79,    -1,    -1,   162,   246, 
    756      163,    -1,   247,    -1,   246,     3,   247,    -1,   248,    -1, 
    757        4,    -1,   249,     4,    -1,     4,   249,    -1,   249,     4, 
    758      248,    -1,    21,    -1,   249,    -1,   252,    -1,   275,    -1, 
    759      250,    -1,   162,   249,   163,    -1,    42,   251,   163,    -1, 
    760       33,   251,   163,    -1,    34,   162,   251,   163,    -1,    39, 
    761      162,   251,   163,    -1,    54,   251,   163,    -1,    77,   162, 
    762      251,   163,    -1,    40,   162,   249,   163,    -1,    43,   249, 
    763      163,    -1,   144,   162,   251,   163,    -1,    60,   162,   249, 
    764      163,    -1,    55,   162,   249,   163,    -1,    56,   162,   249, 
    765      163,    -1,    57,   162,   249,   163,    -1,    58,   162,   249, 
    766      163,    -1,    59,   162,   249,   163,    -1,    62,   162,   249, 
    767      163,    -1,    63,   162,   249,   163,    -1,    64,   162,   249, 
    768      163,    -1,    67,   162,   249,   163,    -1,    68,   162,   249, 
    769      163,    -1,    69,   162,   249,   163,    -1,    71,   249,   163, 
    770       -1,    72,   162,   251,   163,    -1,    73,   251,   163,    -1, 
    771       74,   162,   251,   163,    -1,    75,   162,   251,   163,    -1, 
    772      249,    -1,   251,     3,   249,    -1,   257,    -1,   268,    -1, 
    773      262,    -1,   249,   254,    -1,   253,   249,    -1,    11,   249, 
    774       -1,    19,    -1,    20,    -1,    19,   249,    -1,    20,   249, 
    775       -1,    21,   249,    -1,    23,   249,    -1,    13,   249,    -1, 
    776        7,   249,    -1,    16,   249,    -1,   165,   249,    -1,   164, 
    777      249,    -1,   165,     5,   249,    -1,   164,     5,   249,    -1, 
    778       17,   249,    -1,    14,   249,    -1,    15,   249,    -1,    12, 
    779      249,    -1,     6,   249,    -1,     8,   249,    -1,     9,   249, 
    780       -1,    10,   249,    -1,    22,   255,    -1,     5,   256,    -1, 
    781       -1,   249,    -1,     5,   249,    -1,    22,   249,    -1,     5, 
    782      249,    -1,   249,    -1,   267,    -1,   261,    -1,   259,    -1, 
    783       -1,   260,    -1,   260,   271,    -1,   261,   162,   263,   163, 
    784       -1,   261,   162,   263,   163,   271,    -1,   267,   162,   263, 
    785      163,    -1,   257,   168,   356,   257,    -1,   125,   366,   126, 
    786       -1,   258,    -1,   258,   264,    -1,   265,    -1,   264,     3, 
    787      265,    -1,   249,    -1,   266,    -1,   249,     4,   249,    -1, 
    788      249,     4,   249,     4,   249,    -1,     4,   249,     4,   249, 
    789       -1,     4,     4,   249,    -1,     4,   249,    -1,   249,     4, 
    790       -1,     4,    -1,   160,    -1,   138,    -1,   139,    -1,    41, 
    791       -1,   161,    -1,   157,    -1,   132,    -1,   268,   160,    -1, 
    792      269,   270,    -1,   153,    -1,   269,   153,    -1,   156,    -1, 
    793      154,    -1,    -1,   271,    -1,   162,   272,     4,   272,   163, 
    794       -1,    -1,   249,    -1,   166,    -1,   249,    -1,    -1,     5, 
    795      249,    -1,   122,   249,    -1,   162,   252,     3,   252,   163, 
    796       -1,   277,   160,    -1,   277,   160,     3,   278,    -1,   277, 
    797      160,     3,    27,     4,   166,    -1,   277,   160,     3,    27, 
    798        4,   280,    -1,   137,    -1,   279,    -1,   278,     3,   279, 
    799       -1,   160,   122,   160,    -1,   281,    -1,   280,     3,   281, 
    800       -1,   160,   122,   160,    -1,   160,    -1,   283,    -1,   331, 
    801       -1,   284,    -1,   300,    -1,   320,    -1,   310,    -1,   287, 
    802       -1,   115,    -1,   338,   340,    -1,   369,    -1,   341,    -1, 
    803      357,   352,    -1,   359,   350,    -1,   100,   352,    -1,   100, 
    804      352,   366,    -1,   103,   353,    -1,    96,   162,   370,   373, 
    805      163,    -1,   104,   162,   372,   373,   163,    -1,    76,   272, 
    806       -1,    81,   273,    -1,    61,   273,    -1,   348,   273,    -1, 
    807      339,    -1,   105,   162,   374,   163,    -1,   333,    -1,   334, 
    808      336,    -1,   332,   336,    -1,   335,   336,    -1,    93,   336, 
    809       -1,   319,    -1,   286,    -1,    90,    -1,   249,    -1,    35, 
    810      162,   294,   163,   293,    -1,   291,   172,   288,   289,   290, 
    811      297,    -1,    -1,   288,   292,   172,    -1,    -1,   289,   295, 
    812      172,   288,    -1,    -1,   290,   296,   172,   288,    -1,    35, 
    813      162,   294,   163,    -1,   293,    -1,   286,    -1,   287,    -1, 
    814      285,    -1,   249,    -1,    36,   294,   163,    -1,    36,   294, 
    815      163,   160,    -1,    37,    -1,    37,   160,    -1,    38,    -1, 
    816       38,   160,    -1,    -1,    -1,   299,   282,    -1,   299,   282, 
    817      172,    -1,   301,    -1,   302,   172,   307,   308,    -1,   303, 
    818       -1,   304,    -1,   160,     4,    89,   179,    -1,    89,   179, 
    819       -1,   160,     4,    89,   179,   305,    -1,    89,   179,   305, 
    820       -1,   160,     4,    89,    -1,    89,    -1,   160,     4,    89, 
    821      305,    -1,    89,   305,    -1,   220,   306,     5,   249,     3, 
    822      249,    -1,   220,   306,     5,   249,     3,   249,     3,   249, 
    823       -1,   220,    94,   162,   249,   163,    -1,   220,    95,   298, 
    824       -1,   267,    -1,   299,    -1,   309,    -1,   330,    -1,    91, 
    825       -1,    91,   160,    -1,   315,   172,   299,   311,   313,   318, 
    826       -1,    -1,   312,    -1,   311,   312,    -1,   316,   172,   299, 
    827       -1,    -1,   314,    -1,   313,   312,    -1,   317,   172,   299, 
    828       -1,   160,     4,    88,   162,   249,   163,    82,    -1,    88, 
    829      162,   249,   163,    82,    -1,    83,   162,   249,   163,    82, 
    830       -1,    83,   162,   249,   163,    82,   160,    -1,    84,    -1, 
    831       84,   160,    -1,    85,    -1,    85,   160,    -1,    88,   162, 
    832      249,   163,   284,    -1,   323,   172,   321,   325,    -1,    -1, 
    833      322,    -1,   321,   322,    -1,   324,   172,   299,    -1,   160, 
    834        4,    45,   162,   249,   163,    -1,    45,   162,   249,   163, 
    835       -1,    44,   326,    -1,    44,   326,   160,    -1,   107,    -1, 
    836      107,   160,    -1,   162,   327,   163,    -1,   112,    -1,   328, 
    837       -1,   327,     3,   328,    -1,   329,    -1,   329,     4,    -1, 
    838        4,   329,    -1,   329,     4,   329,    -1,   249,    -1,   115, 
    839       -1,    32,    -1,   148,    -1,   151,    -1,   150,    -1,   149, 
    840       -1,   166,    -1,   160,    -1,    -1,   267,   337,   245,   245, 
    841       -1,   338,   168,   356,   267,   337,   245,   245,    -1,   161, 
    842       -1,   339,     3,   161,    -1,     5,   249,    -1,   122,   249, 
    843       -1,   344,   342,    -1,    -1,   162,   343,   163,    -1,    -1, 
    844      346,    -1,   345,   101,    -1,   345,   160,    -1,   120,    -1, 
    845      347,    -1,   346,     3,   347,    -1,   249,    -1,    21,   161, 
    846       -1,   127,    -1,   129,    -1,    -1,   363,    -1,   352,   349, 
    847       -1,   358,   351,    -1,    -1,     3,   363,    -1,   162,   354, 
    848      163,    -1,   162,   267,   163,    -1,   162,   161,   163,    -1, 
    849      161,    -1,   162,   252,   163,    -1,   160,    -1,   355,    -1, 
    850      354,     3,   355,    -1,   360,    -1,    21,    -1,    23,    -1, 
    851      267,   249,   245,    -1,   267,   249,   168,   356,   338,    -1, 
    852      267,   162,   266,   163,    -1,   267,    21,    -1,   267,    23, 
    853       -1,    -1,    97,    -1,    98,    -1,   101,    -1,   361,    -1, 
    854       21,    -1,   102,    -1,    99,    -1,    86,    -1,   361,    -1, 
    855      162,   360,   163,    -1,   257,    -1,   268,    -1,   360,   362, 
    856      360,    -1,   360,    21,   360,    -1,   360,    22,   360,    -1, 
    857      360,    23,   360,    -1,   362,   360,    -1,   360,    18,   360, 
    858       -1,    46,   249,    -1,    47,   249,    -1,    49,   249,    -1, 
    859       48,   249,    -1,    53,   249,    -1,    52,   249,    -1,    50, 
    860      249,    -1,   160,     5,   249,    -1,   250,    -1,    19,    -1, 
    861       20,    -1,   364,    -1,   363,     3,   364,    -1,   257,   365, 
    862       -1,   162,   363,   163,   365,    -1,   250,   365,    -1,   268, 
    863      365,    -1,   162,   363,     3,   368,   163,    -1,    -1,   254, 
    864       -1,   365,   254,    -1,   275,    -1,   250,    -1,   252,    -1, 
    865      367,    -1,   252,     3,   249,    -1,   252,     3,   367,    -1, 
    866      367,     3,   249,    -1,   367,     3,   367,    -1,   366,     3, 
    867      249,    -1,   366,     3,   367,    -1,   162,   252,     3,   368, 
    868      163,    -1,   162,   366,     3,   368,   163,    -1,   162,   367, 
    869        3,   368,   163,    -1,   160,     5,   249,     3,   249,    -1, 
    870      160,     5,   249,     3,   249,     3,   249,    -1,    87,   162, 
    871      249,     3,   249,   163,     3,   249,    -1,    87,   161,    -1, 
    872      371,    -1,   370,     3,   371,    -1,   257,    -1,   371,    -1, 
    873      372,     3,   371,    -1,    -1,     3,   121,     5,   257,    -1, 
    874      267,    -1,   374,     3,   267,    -1 
    875 }; 
    876  
    877 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */ 
     630  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */ 
    878631static const yytype_uint16 yyrline[] = 
    879632{ 
     
    898651     987,   990,   991,   992,   993,   994,   995,   997,   998,  1001, 
    899652    1002,  1004,  1005,  1006,  1008,  1009,  1012,  1013,  1023,  1024, 
    900     1025,  1028,  1029,  1031,  1032,  1034,  1035,  1036,  1038,  1039, 
    901     1042,  1043,  1044,  1045,  1046,  1047,  1049,  1050,  1051,  1052, 
    902     1053,  1056,  1057,  1058,  1061,  1062,  1064,  1065,  1073,  1079, 
    903     1086,  1087,  1088,  1089,  1090,  1093,  1094,  1096,  1097,  1098, 
    904     1099,  1103,  1104,  1105,  1106,  1107,  1108,  1109,  1110,  1111, 
     653    1025,  1028,  1029,  1030,  1032,  1033,  1035,  1036,  1037,  1039, 
     654    1040,  1043,  1044,  1045,  1046,  1047,  1048,  1050,  1051,  1052, 
     655    1053,  1054,  1057,  1058,  1059,  1062,  1063,  1065,  1066,  1074, 
     656    1080,  1087,  1088,  1089,  1090,  1091,  1094,  1095,  1097,  1098, 
     657    1099,  1100,  1104,  1105,  1106,  1107,  1108,  1109,  1110,  1111, 
    905658    1112,  1113,  1114,  1115,  1116,  1117,  1118,  1119,  1120,  1121, 
    906     1122,  1123,  1124,  1125,  1126,  1127,  1128,  1130,  1131,  1133, 
    907     1134,  1135,  1136,  1137,  1138,  1140,  1141,  1145,  1146,  1147, 
     659    1122,  1123,  1124,  1125,  1126,  1127,  1128,  1129,  1131,  1132, 
     660    1134,  1135,  1136,  1137,  1138,  1139,  1141,  1142,  1146,  1147, 
    908661    1148,  1149,  1150,  1151,  1152,  1153,  1154,  1155,  1156,  1157, 
    909     1158,  1159,  1160,  1161,  1162,  1163,  1164,  1165,  1167,  1168, 
    910     1169,  1170,  1173,  1174,  1177,  1178,  1179,  1183,  1194,  1195, 
    911     1196,  1197,  1200,  1209,  1216,  1219,  1220,  1223,  1224,  1227, 
    912     1228,  1231,  1232,  1233,  1234,  1235,  1236,  1237,  1239,  1285, 
    913     1286,  1287,  1288,  1289,  1290,  1291,  1293,  1296,  1297,  1298, 
    914     1299,  1301,  1302,  1305,  1307,  1308,  1311,  1312,  1314,  1315, 
    915     1321,  1329,  1332,  1352,  1379,  1399,  1439,  1446,  1450,  1457, 
    916     1467,  1468,  1476,  1486,  1498,  1499,  1504,  1505,  1506,  1507, 
    917     1508,  1513,  1514,  1515,  1516,  1517,  1518,  1519,  1520,  1521, 
    918     1522,  1523,  1524,  1525,  1526,  1527,  1528,  1529,  1530,  1567, 
    919     1576,  1587,  1595,  1617,  1618,  1619,  1657,  1661,  1665,  1668, 
    920     1669,  1672,  1673,  1676,  1677,  1682,  1686,  1687,  1688,  1692, 
    921     1696,  1701,  1702,  1707,  1708,  1713,  1714,  1718,  1722,  1723, 
    922     1724,  1729,  1734,  1739,  1740,  1745,  1746,  1747,  1748,  1753, 
    923     1754,  1755,  1756,  1761,  1762,  1763,  1764,  1768,  1772,  1776, 
    924     1777,  1782,  1783,  1787,  1790,  1791,  1792,  1796,  1799,  1800, 
    925     1801,  1804,  1809,  1810,  1815,  1816,  1821,  1822,  1827,  1828, 
    926     1832,  1836,  1839,  1840,  1841,  1844,  1849,  1850,  1855,  1856, 
    927     1861,  1862,  1867,  1868,  1872,  1873,  1878,  1879,  1880,  1881, 
    928     1885,  1889,  1893,  1897,  1905,  1912,  1919,  1926,  1927,  1930, 
    929     1933,  1944,  1950,  1951,  1954,  1955,  1957,  1970,  1971,  1973, 
    930     1974,  1977,  1978,  2000,  2003,  2004,  2007,  2015,  2018,  2019, 
    931     2022,  2023,  2026,  2027,  2029,  2030,  2032,  2035,  2036,  2037, 
    932     2038,  2039,  2042,  2043,  2046,  2047,  2048,  2049,  2050,  2051, 
    933     2052,  2053,  2056,  2059,  2060,  2061,  2063,  2064,  2067,  2068, 
    934     2069,  2072,  2073,  2076,  2077,  2078,  2079,  2080,  2081,  2082, 
     662    1158,  1159,  1160,  1161,  1162,  1163,  1164,  1165,  1166,  1168, 
     663    1169,  1170,  1171,  1174,  1175,  1178,  1179,  1180,  1184,  1195, 
     664    1196,  1197,  1198,  1201,  1210,  1217,  1220,  1221,  1224,  1225, 
     665    1228,  1229,  1232,  1233,  1234,  1235,  1236,  1237,  1238,  1240, 
     666    1286,  1287,  1288,  1289,  1290,  1291,  1292,  1294,  1297,  1298, 
     667    1299,  1300,  1302,  1303,  1306,  1308,  1309,  1312,  1313,  1315, 
     668    1316,  1322,  1330,  1333,  1353,  1380,  1400,  1440,  1447,  1451, 
     669    1458,  1468,  1469,  1477,  1487,  1499,  1500,  1505,  1506,  1507, 
     670    1508,  1509,  1514,  1515,  1516,  1517,  1518,  1519,  1520,  1521, 
     671    1522,  1523,  1524,  1525,  1526,  1527,  1528,  1529,  1530,  1531, 
     672    1568,  1577,  1588,  1596,  1618,  1619,  1620,  1658,  1662,  1666, 
     673    1669,  1670,  1673,  1674,  1677,  1678,  1683,  1687,  1688,  1689, 
     674    1693,  1697,  1702,  1703,  1708,  1709,  1714,  1715,  1719,  1723, 
     675    1724,  1725,  1730,  1735,  1740,  1741,  1746,  1747,  1748,  1749, 
     676    1754,  1755,  1756,  1757,  1762,  1763,  1764,  1765,  1769,  1773, 
     677    1777,  1778,  1783,  1784,  1788,  1791,  1792,  1793,  1797,  1800, 
     678    1801,  1802,  1805,  1810,  1811,  1816,  1817,  1822,  1823,  1828, 
     679    1829,  1833,  1837,  1840,  1841,  1842,  1845,  1850,  1851,  1856, 
     680    1857,  1862,  1863,  1868,  1869,  1873,  1874,  1879,  1880,  1881, 
     681    1882,  1886,  1890,  1894,  1898,  1906,  1913,  1920,  1927,  1928, 
     682    1931,  1934,  1945,  1951,  1952,  1955,  1956,  1958,  1971,  1972, 
     683    1974,  1975,  1978,  1979,  2001,  2004,  2005,  2008,  2016,  2019, 
     684    2020,  2023,  2024,  2027,  2028,  2030,  2031,  2033,  2036,  2037, 
     685    2038,  2039,  2040,  2043,  2044,  2047,  2048,  2049,  2050,  2051, 
     686    2052,  2053,  2054,  2057,  2060,  2061,  2062,  2064,  2065,  2068, 
     687    2069,  2070,  2073,  2074,  2077,  2078,  2079,  2080,  2081,  2082, 
    935688    2083,  2084,  2085,  2086,  2087,  2088,  2089,  2090,  2091,  2092, 
    936     2094,  2095,  2097,  2098,  2104,  2105,  2106,  2107,  2108,  2110, 
    937     2111,  2112,  2115,  2116,  2117,  2118,  2119,  2120,  2121,  2122, 
    938     2123,  2124,  2127,  2128,  2129,  2131,  2132,  2134,  2135,  2138, 
    939     2139,  2142,  2145,  2146,  2148,  2149,  2152,  2153 
     689    2093,  2095,  2096,  2098,  2099,  2105,  2106,  2107,  2108,  2109, 
     690    2111,  2112,  2113,  2116,  2117,  2118,  2119,  2120,  2121,  2122, 
     691    2123,  2124,  2125,  2128,  2129,  2130,  2132,  2133,  2135,  2136, 
     692    2139,  2140,  2143,  2146,  2147,  2149,  2150,  2153,  2154 
    940693}; 
    941694#endif 
     
    946699static const char *const yytname[] = 
    947700{ 
    948   "$end", "error", "$undefined", "','", "':'", "'='", "TOK_NEQV", 
    949   "TOK_EQV", "TOK_XOR", "TOK_OR", "TOK_AND", "TOK_NOT", "TOK_NE", "TOK_EQ", 
    950   "TOK_GE", "TOK_LE", "TOK_GT", "TOK_LT", "TOK_DSLASH", "'+'", "'-'", 
    951   "'*'", "TOK_SLASH", "TOK_DASTER", "TOK_SEMICOLON", "TOK_PARAMETER", 
    952   "TOK_RESULT", "TOK_ONLY", "TOK_INCLUDE", "TOK_SUBROUTINE", "TOK_PROGRAM", 
    953   "TOK_FUNCTION", "TOK_FORMAT", "TOK_MAX", "TOK_TANH", "TOK_WHERE", 
    954   "TOK_ELSEWHEREPAR", "TOK_ELSEWHERE", "TOK_ENDWHERE", "TOK_MAXVAL", 
    955   "TOK_TRIM", "TOK_NULL_PTR", "TOK_SUM", "TOK_SQRT", "TOK_CASE", 
    956   "TOK_SELECTCASE", "TOK_FILE", "TOK_UNIT", "TOK_FMT", "TOK_NML", 
    957   "TOK_END", "TOK_EOR", "TOK_ERR", "TOK_EXIST", "TOK_MIN", "TOK_FLOAT", 
    958   "TOK_EXP", "TOK_COS", "TOK_COSH", "TOK_ACOS", "TOK_NINT", "TOK_CYCLE", 
    959   "TOK_SIN", "TOK_SINH", "TOK_ASIN", "TOK_EQUIVALENCE", "TOK_BACKSPACE", 
    960   "TOK_LOG", "TOK_TAN", "TOK_ATAN", "TOK_RECURSIVE", "TOK_ABS", "TOK_MOD", 
    961   "TOK_SIGN", "TOK_MINLOC", "TOK_MAXLOC", "TOK_EXIT", "TOK_MINVAL", 
    962   "TOK_PUBLIC", "TOK_PRIVATE", "TOK_ALLOCATABLE", "TOK_RETURN", "TOK_THEN", 
    963   "TOK_ELSEIF", "TOK_ELSE", "TOK_ENDIF", "TOK_PRINT", "TOK_PLAINGOTO", 
    964   "TOK_LOGICALIF", "TOK_PLAINDO", "TOK_CONTAINS", "TOK_ENDDO", 
    965   "TOK_MODULE", "TOK_ENDMODULE", "TOK_WHILE", "TOK_CONCURRENT", 
    966   "TOK_ALLOCATE", "TOK_OPEN", "TOK_CLOSE", "TOK_INQUIRE", "TOK_WRITE", 
    967   "TOK_FLUSH", "TOK_READ", "TOK_REWIND", "TOK_DEALLOCATE", "TOK_NULLIFY", 
     701  "$end", "error", "$undefined", "','", "':'", "'='", "TOK_EQV", 
     702  "TOK_NEQV", "TOK_OR", "TOK_XOR", "TOK_AND", "TOK_NOT", "TOK_LT", 
     703  "TOK_GT", "TOK_LE", "TOK_GE", "TOK_EQ", "TOK_NE", "TOK_DSLASH", "'+'", 
     704  "'-'", "'*'", "TOK_SLASH", "TOK_DASTER", "TOK_SEMICOLON", 
     705  "TOK_PARAMETER", "TOK_RESULT", "TOK_ONLY", "TOK_INCLUDE", 
     706  "TOK_SUBROUTINE", "TOK_PROGRAM", "TOK_FUNCTION", "TOK_FORMAT", "TOK_MAX", 
     707  "TOK_TANH", "TOK_WHERE", "TOK_ELSEWHEREPAR", "TOK_ELSEWHERE", 
     708  "TOK_ENDWHERE", "TOK_MAXVAL", "TOK_TRIM", "TOK_NULL_PTR", "TOK_SUM", 
     709  "TOK_SQRT", "TOK_CASE", "TOK_SELECTCASE", "TOK_FILE", "TOK_UNIT", 
     710  "TOK_FMT", "TOK_NML", "TOK_END", "TOK_EOR", "TOK_ERR", "TOK_EXIST", 
     711  "TOK_MIN", "TOK_FLOAT", "TOK_EXP", "TOK_COS", "TOK_COSH", "TOK_ACOS", 
     712  "TOK_NINT", "TOK_CYCLE", "TOK_SIN", "TOK_SINH", "TOK_ASIN", 
     713  "TOK_EQUIVALENCE", "TOK_BACKSPACE", "TOK_LOG", "TOK_TAN", "TOK_ATAN", 
     714  "TOK_RECURSIVE", "TOK_ABS", "TOK_MOD", "TOK_SIGN", "TOK_MINLOC", 
     715  "TOK_MAXLOC", "TOK_EXIT", "TOK_MINVAL", "TOK_PUBLIC", "TOK_PRIVATE", 
     716  "TOK_ALLOCATABLE", "TOK_RETURN", "TOK_THEN", "TOK_ELSEIF", "TOK_ELSE", 
     717  "TOK_ENDIF", "TOK_PRINT", "TOK_PLAINGOTO", "TOK_LOGICALIF", 
     718  "TOK_PLAINDO", "TOK_CONTAINS", "TOK_ENDDO", "TOK_MODULE", 
     719  "TOK_ENDMODULE", "TOK_WHILE", "TOK_CONCURRENT", "TOK_ALLOCATE", 
     720  "TOK_OPEN", "TOK_CLOSE", "TOK_INQUIRE", "TOK_WRITE", "TOK_FLUSH", 
     721  "TOK_READ", "TOK_REWIND", "TOK_DEALLOCATE", "TOK_NULLIFY", 
    968722  "TOK_DIMENSION", "TOK_ENDSELECT", "TOK_EXTERNAL", "TOK_INTENT", 
    969723  "TOK_INTRINSIC", "TOK_NAMELIST", "TOK_DEFAULT", "TOK_OPTIONAL", 
     
    1026780  "unpar_fexpr", "addop", "inlist", "inelt", "opt_operation", "outlist", 
    1027781  "other", "dospec", "goto", "allocation_list", "allocate_object", 
    1028   "allocate_object_list", "opt_stat_spec", "pointer_name_list", YY_NULL 
     782  "allocate_object_list", "opt_stat_spec", "pointer_name_list", YY_NULLPTR 
    1029783}; 
    1030784#endif 
    1031785 
    1032786# ifdef YYPRINT 
    1033 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to 
    1034    token YYLEX-NUM.  */ 
     787/* YYTOKNUM[NUM] -- (External) token number corresponding to the 
     788   (internal) symbol number NUM (which must be that of a token).  */ 
    1035789static const yytype_uint16 yytoknum[] = 
    1036790{ 
     
    1055809# endif 
    1056810 
    1057 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ 
    1058 static const yytype_uint16 yyr1[] = 
     811#define YYPACT_NINF -890 
     812 
     813#define yypact_value_is_default(Yystate) \ 
     814  (!!((Yystate) == (-890))) 
     815 
     816#define YYTABLE_NINF -543 
     817 
     818#define yytable_value_is_error(Yytable_value) \ 
     819  (!!((Yytable_value) == (-543))) 
     820 
     821  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 
     822     STATE-NUM.  */ 
     823static const yytype_int16 yypact[] = 
    1059824{ 
    1060        0,   169,   170,   170,   171,   171,   171,   171,   172,   172, 
    1061      172,   172,   172,   173,   173,   173,   174,   174,   174,   174, 
    1062      175,   176,   176,   177,   177,   178,   178,   178,   178,   179, 
    1063      179,   180,   181,   182,   182,   182,   183,   183,   183,   184, 
    1064      184,   185,   185,   186,   186,   186,   186,   186,   186,   186, 
    1065      186,   186,   186,   186,   186,   186,   186,   186,   186,   186, 
    1066      186,   186,   186,   187,   187,   188,   188,   188,   188,   188, 
    1067      188,   188,   188,   188,   188,   188,   188,   188,   188,   188, 
    1068      188,   188,   188,   188,   188,   188,   188,   188,   188,   189, 
    1069      189,   190,   190,   191,   191,   192,   193,   193,   194,   194, 
    1070      195,   195,   196,   196,   197,   198,   199,   200,   200,   201, 
    1071      201,   201,   202,   202,   203,   203,   203,   203,   204,   205, 
    1072      205,   206,   206,   206,   207,   207,   207,   207,   207,   208, 
    1073      208,   209,   209,   209,   209,   210,   211,   211,   212,   212, 
    1074      213,   213,   214,   214,   214,   214,   215,   215,   215,   216, 
    1075      216,   217,   217,   218,   219,   219,   220,   220,   221,   221, 
    1076      222,   223,   224,   224,   225,   225,   226,   226,   227,   228, 
    1077      228,   228,   228,   229,   229,   229,   229,   230,   230,   230, 
    1078      231,   232,   232,   232,   232,   232,   232,   233,   233,   234, 
    1079      234,   235,   235,   235,   236,   236,   237,   237,   237,   237, 
    1080      237,   238,   238,   239,   239,   240,   240,   240,   241,   241, 
    1081      242,   242,   242,   242,   242,   242,   242,   242,   242,   242, 
    1082      242,   243,   243,   243,   244,   244,   245,   245,   246,   246, 
    1083      247,   247,   247,   247,   247,   248,   248,   249,   249,   249, 
    1084      249,   250,   250,   250,   250,   250,   250,   250,   250,   250, 
    1085      250,   250,   250,   250,   250,   250,   250,   250,   250,   250, 
    1086      250,   250,   250,   250,   250,   250,   250,   251,   251,   252, 
    1087      252,   252,   252,   252,   252,   253,   253,   254,   254,   254, 
    1088      254,   254,   254,   254,   254,   254,   254,   254,   254,   254, 
    1089      254,   254,   254,   254,   254,   254,   254,   254,   255,   255, 
    1090      255,   255,   256,   256,   257,   257,   257,   258,   259,   259, 
    1091      259,   259,   260,   261,   262,   263,   263,   264,   264,   265, 
    1092      265,   266,   266,   266,   266,   266,   266,   266,   267,   268, 
    1093      268,   268,   268,   268,   268,   268,   268,   269,   269,   269, 
    1094      269,   270,   270,   271,   272,   272,   273,   273,   274,   274, 
    1095      274,   275,   276,   276,   276,   276,   277,   278,   278,   279, 
    1096      280,   280,   281,   281,   282,   282,   283,   283,   283,   283, 
    1097      283,   284,   284,   284,   284,   284,   284,   284,   284,   284, 
    1098      284,   284,   284,   284,   284,   284,   284,   284,   284,   284, 
    1099      284,   284,   284,   284,   284,   284,   285,   286,   287,   288, 
    1100      288,   289,   289,   290,   290,   291,   292,   292,   292,   293, 
    1101      294,   295,   295,   296,   296,   297,   297,   298,   299,   299, 
    1102      299,   300,   301,   302,   302,   303,   303,   303,   303,   304, 
    1103      304,   304,   304,   305,   305,   305,   305,   306,   307,   308, 
    1104      308,   309,   309,   310,   311,   311,   311,   312,   313,   313, 
    1105      313,   314,   315,   315,   316,   316,   317,   317,   318,   318, 
    1106      319,   320,   321,   321,   321,   322,   323,   323,   324,   324, 
    1107      325,   325,   326,   326,   327,   327,   328,   328,   328,   328, 
    1108      329,   330,   331,   332,   333,   334,   335,   336,   336,   337, 
    1109      338,   338,   339,   339,   340,   340,   341,   342,   342,   343, 
    1110      343,   344,   344,   345,   346,   346,   347,   347,   348,   348, 
    1111      349,   349,   350,   350,   351,   351,   352,   353,   353,   353, 
    1112      353,   353,   354,   354,   355,   355,   355,   355,   355,   355, 
    1113      355,   355,   356,   357,   357,   357,   358,   358,   359,   359, 
    1114      359,   360,   360,   361,   361,   361,   361,   361,   361,   361, 
    1115      361,   361,   361,   361,   361,   361,   361,   361,   361,   361, 
    1116      362,   362,   363,   363,   364,   364,   364,   364,   364,   365, 
    1117      365,   365,   366,   366,   366,   366,   366,   366,   366,   366, 
    1118      366,   366,   367,   367,   367,   368,   368,   369,   369,   370, 
    1119      370,   371,   372,   372,   373,   373,   374,   374 
     825    -890,   968,  -890,  -890,  -890,  -890,   -45,   -47,  -890,   -37, 
     826       5,  3882,     8,    37,  -890,  4701,     3,   228,  3882,  -890, 
     827     296,   171,    54,  -890,   201,   287,   237,  -890,  -890,  -890, 
     828     265,  -890,  -890,   415,   275,   284,  -890,   339,   339,    38, 
     829     349,  -890,  -890,    66,  -890,  -890,   299,  -890,   361,  -890, 
     830    -890,  5801,   411,   347,   287,  -890,  -890,  -890,  -890,  -890, 
     831    -890,  -890,  -890,  -890,    24,  -890,  -890,   524,  -890,  -890, 
     832    -890,   286,   516,  -890,   438,  -890,  -890,   322,   378,   469, 
     833     111,   507,   546,   548,  -890,  -890,   520,   258,  -890,  -890, 
     834      81,    85,   158,  -890,  -890,   400,  -890,  -890,  -890,  -890, 
     835    -890,    99,  -890,  -890,    99,  -890,  -890,  -890,    99,  -890, 
     836    -890,    99,  -890,   287,  -890,   287,   287,    36,   563,  -890, 
     837     423,     2,  3882,   265,  5520,  -890,  -890,  -890,  -890,  -890, 
     838    4701,  4701,  4701,  -890,  -890,  4701,   447,   459,   462,  -890, 
     839    4701,  4701,  4701,   463,   464,   466,   468,   470,   473,   474, 
     840     475,   477,   478,   487,   488,  4701,   489,  4701,   494,   496, 
     841     497,  4810,  -890,  -890,  -890,   498,  -890,  -890,  -890,  -890, 
     842    -890,  -890,  4701,  -890,  2531,  -890,  -890,  4701,   432,  -890, 
     843     499,   500,  -890,   501,   471,   259,  -890,  -890,   481,   631, 
     844    -890,  4701,  2531,  -890,  -890,  -890,   189,  -890,   189,  -890, 
     845    -890,  4701,  4701,  -890,  -890,    58,   253,  -890,  -890,  -890, 
     846    -890,  -890,   481,  5390,  4810,  -890,  -890,  4919,  -890,   481, 
     847     481,   189,  1245,  -890,   504,   481,  -890,  4701,   665,  -890, 
     848    -890,  -890,  -890,   666,   516,  -890,  -890,   339,  -890,  -890, 
     849    2553,  -890,   508,  -890,   117,   481,    42,  -890,   329,   104, 
     850    -890,  -890,  -890,  -890,  5664,   -47,   -47,  -890,  -890,   669, 
     851     510,   672,  -890,  -890,   518,   397,   514,  -890,   518,   481, 
     852     397,   523,   527,   397,   514,   677,  -890,   528,   776,  -890, 
     853    -890,  -890,   -47,   681,   530,   356,  2792,  -890,  5028,   347, 
     854    -890,   514,   690,   286,   286,   286,   406,  -890,  -890,  -890, 
     855    4701,  4701,  -890,  -890,   533,  4135,  -890,  -890,  -890,  -890, 
     856    -890,  -890,  -890,  -890,  4701,  4701,  4701,  4701,  4701,  4701, 
     857    4701,   691,  5390,  -890,   432,   471,  -890,  5924,   692,   571, 
     858     597,  5566,  -890,  2531,   534,  1354,   742,  2531,    46,  4701, 
     859    4701,  4701,    65,  1375,    69,  4701,  4701,  4701,  4701,  4701, 
     860    4701,  4701,  4701,  4701,  4701,  4701,  4701,  1536,  4701,    70, 
     861    4701,  4701,  4701,  4810,  2531,  1555,   807,  1638,   169,   695, 
     862    4701,  1657,   699,  3555,  4701,  4701,  4701,  4701,  4701,  4701, 
     863    4701,  4701,  4701,  4701,  4701,  4701,  4701,  4701,  3446,  4701, 
     864    3664,  3773,  -890,   164,  -890,  4701,  -890,  -890,  -890,  -890, 
     865    -890,  -890,  -890,    95,   514,     8,  1716,  -890,  -890,   702, 
     866     702,  1151,  1735,  -890,  -890,   544,  -890,  -890,   704,   432, 
     867     715,  -890,  -890,  -890,  5566,  4026,   115,  -890,   571,  -890, 
     868     722,   568,   569,   369,  -890,   730,  -890,   121,   702,  -890, 
     869    -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890, 
     870    -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890, 
     871    -890,  -890,  -890,  -890,   731,   685,  -890,   123,  2531,   573, 
     872     576,   287,  -890,  2901,  -890,  -890,  2531,  -890,   551,  4701, 
     873      34,    24,   577,   551,   578,   580,    93,  -890,  -890,  -890, 
     874     581,   581,  4701,   124,   510,  -890,   546,  3010,  -890,  -890, 
     875    -890,   546,   514,   514,   546,  -890,   528,   677,  -890,  -890, 
     876     514,  -890,   582,  -890,  -890,  -890,  -890,  -890,   125,  -890, 
     877    -890,   581,   579,  -890,   514,  -890,  2792,  2683,   575,   743, 
     878      63,  4244,  -890,  2531,   584,   514,   136,  4374,  6133,   240, 
     879    6057,   -17,    57,  -890,    99,  2531,  2531,   481,  -890,   587, 
     880    2531,   586,   748,  -890,  2531,  2531,  2531,  2531,  2531,  2531, 
     881    2531,  4701,   155,  5924,  2531,  1130,  1754,  -890,   749,  -890, 
     882    5924,  -890,  5566,  5566,  5566,  5566,  5566,   737,  4701,  -890, 
     883    4701,  -890,   134,   135,  1773,  -890,  -890,  -890,  1818,  1837, 
     884    1934,  1953,  1998,  2017,  2036,  2055,  2114,  2133,  2216,  2235, 
     885    -890,   137,  -890,   138,   139,   148,   763,   764,   782,  4810, 
     886    4810,  -890,  4810,   149,  -890,  4701,  4701,  2531,  -890,   388, 
     887     388,   419,   419,   742,   761,   761,   761,   761,   761,   761, 
     888     160,   160,   164,  4701,  4701,  2531,  -890,   164,  4701,   761, 
     889    4701,   761,   481,   741,  3119,   616,   626,   481,  -890,  -890, 
     890    -890,  -890,   291,  4701,  6209,  4701,  -890,  4701,   200,   627, 
     891     155,  -890,  -890,  3119,   707,  5390,  -890,  -890,  -890,  -890, 
     892     200,   628,   481,  -890,  1245,  -890,  4701,  -890,  4701,  -890, 
     893    -890,  -890,   770,    50,   547,  -890,  2294,   633,  -890,   632, 
     894    -890,   773,  4701,  4701,   107,  -890,   190,  -890,   771,  2531, 
     895    -890,  -890,   518,  4701,  -890,   150,  -890,  -890,  1417,   481, 
     896     775,   775,   528,  -890,  -890,   472,   776,  -890,  -890,   514, 
     897     775,   636,  2901,   743,  -890,   640,  -890,   639,  -890,  -890, 
     898     801,   686,   806,  -890,  2531,  -890,  -890,  -890,   789,    99, 
     899    -890,    99,   651,  -890,  -890,  -890,  -890,   670,   495,  -890, 
     900      99,  -890,  3228,   671,   673,  -890,  -890,   286,  -890,  -890, 
     901    -890,  4135,  2531,  -890,   151,  -890,  2531,  2531,  2531,  5924, 
     902     749,   535,   737,   737,   737,   590,  -890,  2531,  -890,  -890, 
     903    -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890, 
     904    -890,  -890,  -890,  -890,  -890,  -890,  -890,  5137,  5137,  5137, 
     905    2531,  -890,  2531,  -890,  2531,  -890,  -890,   675,   761,   761, 
     906     164,   761,   761,   432,  4701,  3337,  1437,   831,  -890,  -890, 
     907     499,  -890,   514,  -890,  -890,  2313,   674,  -890,   678,  -890, 
     908    2332,  1172,   830,  -890,  -890,  1255,   679,  -890,  -890,  -890, 
     909    -890,  -890,  -890,  -890,  2531,   152,  -890,   551,   551,   551, 
     910     551,   551,   471,  -890,   836,   680,  -890,  2351,  2396,  -890, 
     911    -890,  -890,  -890,   153,  -890,   682,  -890,  -890,  2531,  3010, 
     912    -890,  4483,  -890,  5246,  -890,  -890,   677,  -890,  -890,  -890, 
     913     683,  -890,   775,    75,  -890,   743,  -890,  2901,  -890,   294, 
     914     687,   688,  4701,   559,    99,   286,   286,  -890,  4701,   689, 
     915    -890,   429,  -890,    99,   286,  4701,  2531,   154,  -890,   846, 
     916    -890,  -890,  6133,   514,  -890,  5969,  2531,  -890,  -890,   836, 
     917     694,   696,   698,  -890,   700,  4701,  1457,  4701,  3119,  -890, 
     918    -890,   848,  4701,  4701,  -890,  4701,   481,  -890,   481,  -890, 
     919    -890,    60,    60,   697,    55,  4701,   843,  -890,   784,    71, 
     920    -890,   260,  -890,  -890,  -890,  2531,  4592,  -890,  2531,  -890, 
     921      75,  4701,  4701,  -890,  -890,  -890,   745,  -890,   849,  -890, 
     922    -890,  -890,   705,   693,   710,    99,  -890,   286,  2415,  -890, 
     923     713,  -890,  -890,   286,  6133,  -890,  3228,  -890,  4701,   514, 
     924     711,  2531,  -890,  -890,  -890,  -890,  2531,  4701,  1477,  -890, 
     925    4701,   714,  2512,  1193,   432,   712,  1214,   551,  -890,  -890, 
     926    -890,   156,   720,  -890,  2531,  2531,   718,   728,   735,  -890, 
     927    -890,   286,  4374,   809,  -890,  6133,  -890,  -890,  -890,  -890, 
     928    2531,  4701,  2531,  4701,  6285,  4701,  4701,   874,  -890,  -890, 
     929    -890,  -890,  -890,  4374,   738,  2531,  2531,  1235,  -890,  -890, 
     930    4701,  2531 
    1120931}; 
    1121932 
    1122 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */ 
    1123 static const yytype_uint8 yyr2[] = 
    1124 { 
    1125        0,     2,     0,     2,     1,     1,     2,     1,     2,     1, 
    1126        3,     2,     2,     1,     3,     3,     2,     2,     3,     1, 
    1127        0,     0,     1,     0,     2,     4,     2,     5,     2,     1, 
    1128        2,     1,     1,     0,     2,     3,     0,     2,     3,     1, 
    1129        3,     1,     1,     2,     4,     2,     2,     4,     2,     1, 
    1130        1,     1,     1,     1,     1,     1,     1,     1,     4,     3, 
    1131        3,     2,     2,     0,     1,     1,     1,     1,     1,     1, 
    1132        1,     1,     1,     1,     1,     1,     1,     1,     1,     1, 
    1133        1,     1,     1,     1,     1,     1,     1,     1,     1,     1, 
    1134        3,     3,     5,     1,     3,     3,     2,     4,     1,     3, 
    1135        0,     1,     2,     3,     1,     1,     2,     1,     3,     4, 
    1136        4,     8,     1,     3,     2,     3,     5,     3,     1,     0, 
    1137        2,     1,     4,     3,     2,     3,     3,     3,     3,     0, 
    1138        1,     2,     3,     5,     3,     1,     5,     5,     2,     3, 
    1139        2,     3,     1,     1,     3,     3,     2,     3,     5,     1, 
    1140        2,     1,     3,     2,     1,     3,     0,     1,     1,     3, 
    1141        3,     2,     1,     3,     2,     2,     5,     6,     0,     2, 
    1142        2,     3,     3,     0,     2,     4,     3,     3,     4,     2, 
    1143        1,     1,     1,     1,     1,     1,     1,     0,     2,     1, 
    1144        3,     0,     2,     3,     1,     3,     2,     3,     1,     1, 
    1145        1,     1,     1,     0,     3,     0,     1,     3,     1,     3, 
    1146        1,     1,     1,     2,     1,     4,     1,     1,     1,     1, 
    1147        1,     1,     1,     1,     1,     1,     0,     3,     1,     3, 
    1148        1,     1,     2,     2,     3,     1,     1,     1,     1,     1, 
    1149        3,     3,     3,     4,     4,     3,     4,     4,     3,     4, 
    1150        4,     4,     4,     4,     4,     4,     4,     4,     4,     4, 
    1151        4,     4,     3,     4,     3,     4,     4,     1,     3,     1, 
    1152        1,     1,     2,     2,     2,     1,     1,     2,     2,     2, 
    1153        2,     2,     2,     2,     2,     2,     3,     3,     2,     2, 
    1154        2,     2,     2,     2,     2,     2,     2,     2,     0,     1, 
    1155        2,     2,     2,     1,     1,     1,     1,     0,     1,     2, 
    1156        4,     5,     4,     4,     3,     1,     2,     1,     3,     1, 
    1157        1,     3,     5,     4,     3,     2,     2,     1,     1,     1, 
    1158        1,     1,     1,     1,     1,     2,     2,     1,     2,     1, 
    1159        1,     0,     1,     5,     0,     1,     1,     1,     0,     2, 
    1160        2,     5,     2,     4,     6,     6,     1,     1,     3,     3, 
    1161        1,     3,     3,     1,     1,     1,     1,     1,     1,     1, 
    1162        1,     1,     2,     1,     1,     2,     2,     2,     3,     2, 
    1163        5,     5,     2,     2,     2,     2,     1,     4,     1,     2, 
    1164        2,     2,     2,     1,     1,     1,     1,     5,     6,     0, 
    1165        3,     0,     4,     0,     4,     4,     1,     1,     1,     1, 
    1166        1,     3,     4,     1,     2,     1,     2,     0,     0,     2, 
    1167        3,     1,     4,     1,     1,     4,     2,     5,     3,     3, 
    1168        1,     4,     2,     6,     8,     5,     3,     1,     1,     1, 
    1169        1,     1,     2,     6,     0,     1,     2,     3,     0,     1, 
    1170        2,     3,     7,     5,     5,     6,     1,     2,     1,     2, 
    1171        5,     4,     0,     1,     2,     3,     6,     4,     2,     3, 
    1172        1,     2,     3,     1,     1,     3,     1,     2,     2,     3, 
    1173        1,     1,     1,     1,     1,     1,     1,     1,     1,     0, 
    1174        4,     7,     1,     3,     2,     2,     2,     0,     3,     0, 
    1175        1,     2,     2,     1,     1,     3,     1,     2,     1,     1, 
    1176        0,     1,     2,     2,     0,     2,     3,     3,     3,     1, 
    1177        3,     1,     1,     3,     1,     1,     1,     3,     5,     4, 
    1178        2,     2,     0,     1,     1,     1,     1,     1,     1,     1, 
    1179        1,     1,     3,     1,     1,     3,     3,     3,     3,     2, 
    1180        3,     2,     2,     2,     2,     2,     2,     2,     3,     1, 
    1181        1,     1,     1,     3,     2,     4,     2,     2,     5,     0, 
    1182        1,     2,     1,     1,     1,     1,     3,     3,     3,     3, 
    1183        3,     3,     5,     5,     5,     5,     7,     8,     2,     1, 
    1184        3,     1,     1,     3,     0,     4,     1,     3 
    1185 }; 
    1186  
    1187 /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. 
    1188    Performed when YYTABLE doesn't specify something else to do.  Zero 
    1189    means the default is an error.  */ 
     933  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. 
     934     Performed when YYTABLE does not specify something else to do.  Zero 
     935     means the default is an error.  */ 
    1190936static const yytype_uint16 yydefact[] = 
    1191937{ 
    1192        2,     0,     1,     7,     9,   105,     0,     0,   482,     0, 
    1193        0,     0,     0,     0,    22,   344,   100,   100,     0,   540, 
    1194        0,     0,   156,   395,     0,     0,     0,   533,   534,   539, 
    1195        0,   535,   538,     0,     0,     0,   135,   100,   100,     0, 
    1196        0,   371,   118,     0,   503,   149,     0,   508,     0,   509, 
    1197      356,    21,    63,     0,     0,   183,   181,   182,   186,   483, 
    1198      486,   485,   484,   180,     0,   184,   185,   328,   492,    20, 
     938       2,     0,     1,     7,     9,   105,     0,     0,   483,     0, 
     939       0,     0,     0,     0,    22,   345,   100,   100,     0,   541, 
     940       0,     0,   156,   396,     0,     0,     0,   534,   535,   540, 
     941       0,   536,   539,     0,     0,     0,   135,   100,   100,     0, 
     942       0,   372,   118,     0,   504,   149,     0,   509,     0,   510, 
     943     357,    21,    63,     0,     0,   183,   181,   182,   186,   484, 
     944     487,   486,   485,   180,     0,   184,   185,   329,   493,    20, 
    1199945       3,     4,     5,    13,     0,    20,    20,     0,     0,    50, 
    1200946     119,    57,   156,    52,    54,    53,    49,     0,    56,    51, 
    1201      205,   173,   191,   489,    55,     0,    19,   364,   366,   394, 
    1202      370,     0,   367,   421,     0,   423,   424,   369,     0,   393, 
    1203      368,     0,   365,     0,   388,     0,     0,     0,   386,   374, 
    1204      497,     0,     0,     0,     0,   373,    32,    20,    31,    26, 
    1205        0,     0,     0,   275,   276,     0,     0,     0,     0,   331, 
    1206        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1207        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1208        0,     0,   334,   329,   330,     0,   337,   340,   339,   333, 
    1209      328,   332,     0,   346,   347,   239,   237,     0,   269,   306, 
    1210      308,   305,   271,   304,   270,   341,   384,   238,     0,    61, 
    1211       93,     0,   345,   382,   101,   140,     0,   138,     0,   383, 
    1212      588,     0,     0,   157,    29,   156,     0,   432,    28,   488, 
    1213      487,   392,     0,     0,   377,   521,   519,     0,   379,     0, 
     947     206,   173,   191,   490,    55,     0,    19,   365,   367,   395, 
     948     371,     0,   368,   422,     0,   424,   425,   370,     0,   394, 
     949     369,     0,   366,     0,   389,     0,     0,     0,   387,   375, 
     950     498,     0,     0,     0,     0,   374,    32,    20,    31,    26, 
     951       0,     0,     0,   276,   277,     0,     0,     0,     0,   332, 
     952       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     953       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     954       0,     0,   335,   330,   331,     0,   338,   341,   340,   334, 
     955     329,   333,     0,   347,   348,   240,   238,     0,   270,   307, 
     956     309,   306,   272,   305,   271,   342,   385,   239,     0,    61, 
     957      93,     0,   346,   383,   101,   140,     0,   138,     0,   384, 
     958     589,     0,     0,   157,    29,   156,     0,   433,    28,   489, 
     959     488,   393,     0,     0,   378,   522,   520,     0,   380,     0, 
    1214960       0,     0,     0,   154,     0,     0,   131,     0,    46,   164, 
    1215      165,   150,   162,   161,     6,   224,   225,   100,    64,   200, 
     961     165,   150,   162,   161,     6,   225,   226,   100,    64,   200, 
    1216962     198,   199,     0,    45,   121,     0,   156,   107,     0,     0, 
    1217963       8,    11,    12,    20,    21,     0,     0,    16,    17,     0, 
    1218        0,    48,   158,    62,   119,     0,   226,   114,   119,   157, 
    1219        0,     0,     0,     0,   226,   146,   151,     0,     0,   104, 
    1220      206,    43,     0,   168,     0,     0,     0,   170,     0,     0, 
    1221      169,   226,   352,   399,   418,   418,   462,   390,   389,   391, 
    1222        0,     0,   532,   372,     0,   499,   496,   501,   502,   385, 
    1223      375,   560,   561,   537,     0,     0,     0,     0,     0,     0, 
    1224        0,   328,     0,   559,   543,   544,   376,   510,   514,     0, 
    1225      536,     0,    18,   410,     0,     0,   274,   267,     0,     0, 
    1226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1227        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1228        0,     0,     0,     0,     0,   573,   574,   572,     0,   575, 
    1229        0,     0,   237,     0,     0,     0,     0,     0,     0,     0, 
    1230        0,     0,     0,     0,     0,     0,     0,     0,   298,     0, 
    1231        0,     0,   272,   273,   532,   344,   309,   307,   307,   335, 
    1232      338,   336,   342,     0,   226,     0,     0,   143,   142,   141, 
    1233      139,     0,     0,    30,   428,     0,   417,   437,     0,   591, 
    1234      594,   589,   525,   526,     0,   304,     0,   522,   524,   541, 
    1235      378,   332,   237,   304,   592,   594,   596,     0,    59,    66, 
     964       0,    48,   158,    62,   119,     0,   227,   114,   119,   157, 
     965       0,     0,     0,     0,   227,   146,   151,     0,     0,   104, 
     966     207,    43,     0,   168,     0,     0,     0,   170,     0,     0, 
     967     169,   227,   353,   400,   419,   419,   463,   391,   390,   392, 
     968       0,     0,   533,   373,     0,   500,   497,   502,   503,   386, 
     969     376,   561,   562,   538,     0,     0,     0,     0,     0,     0, 
     970       0,   329,     0,   560,   544,   545,   377,   511,   515,     0, 
     971     537,     0,    18,   411,     0,     0,   275,   268,     0,     0, 
     972       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     973       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     974       0,     0,     0,     0,     0,   574,   575,   573,     0,   576, 
     975       0,     0,   238,     0,     0,     0,     0,     0,     0,     0, 
     976       0,     0,     0,     0,     0,     0,     0,     0,   299,     0, 
     977       0,     0,   273,   274,   533,   345,   310,   308,   308,   336, 
     978     339,   337,   343,     0,   227,     0,     0,   143,   142,   141, 
     979     139,     0,     0,    30,   429,     0,   418,   438,     0,   592, 
     980     595,   590,   526,   527,     0,   305,     0,   523,   525,   542, 
     981     379,   333,   238,   305,   593,   595,   597,     0,    59,    66, 
    1236982      67,    70,    65,    71,    68,    73,    74,    75,    76,    77, 
    1237983      72,    78,    79,    80,    81,    82,    83,    84,    85,    86, 
    1238984      87,    69,    88,    89,    60,     0,   132,     0,    98,     0, 
    1239        0,     0,     0,   202,   196,   201,   172,   129,     0,     0, 
    1240        0,     0,   129,     0,     0,   156,    10,    14,    15,    33, 
    1241       33,     0,     0,     0,   117,   156,     0,   120,   115,   134, 
    1242      156,   226,   226,   156,   153,     0,   147,   210,   212,   226, 
    1243      214,     0,   216,   217,   218,   219,   220,     0,   208,   211, 
    1244       33,     0,   102,   226,   174,     0,   328,     0,   203,   332, 
    1245        0,   192,   194,     0,   226,     0,   401,   438,     0,   444, 
    1246        0,     0,   463,     0,   494,   495,     0,   493,     0,   506, 
    1247        0,   500,   504,   551,   552,   554,   553,   557,   556,   555, 
    1248        0,   524,     0,   569,   569,   569,   512,   511,   562,     0, 
    1249      513,     0,     0,     0,     0,     0,   549,   405,   467,     0, 
    1250      242,     0,     0,     0,   241,   248,   245,     0,     0,     0, 
    1251        0,     0,     0,     0,     0,     0,     0,     0,     0,   262, 
    1252        0,   264,     0,     0,     0,   237,     0,     0,     0,     0, 
    1253      314,     0,     0,   240,     0,     0,   303,   297,   292,   282, 
    1254      293,   294,   295,   291,   281,   289,   290,   283,   288,   277, 
    1255      278,   279,     0,     0,   299,   296,   280,     0,   285,     0, 
    1256      284,     0,     0,   315,     0,     0,     0,    95,    96,    94, 
    1257       58,     0,     0,     0,     0,   436,     0,     0,     0,     0, 
    1258      530,   531,   307,   226,     0,   516,   518,   520,   517,     0, 
    1259        0,     0,   387,     0,   155,     0,    91,     0,   163,    44, 
    1260      197,     0,   112,     0,   130,     0,     0,   108,   121,   123, 
    1261        0,     0,     0,   156,   431,     0,    25,    23,   160,    47, 
    1262      159,   119,   231,   235,     0,   228,   230,   236,     0,   187, 
    1263      187,     0,   152,   213,     0,     0,   207,   103,   226,   187, 
    1264        0,     0,   203,   176,     0,   179,     0,   193,   490,     0, 
    1265        0,   353,   357,   396,   409,   407,   408,   403,     0,   406, 
    1266      419,   441,   481,   422,   439,   440,     0,   448,   445,     0, 
    1267      473,     0,   468,   470,   464,   461,   418,   489,   507,   498, 
    1268        0,   558,   542,     0,   570,   566,   564,   567,     0,   515, 
    1269      550,   546,   547,   548,   545,   397,   268,   243,   244,   247, 
    1270      251,   252,   253,   254,   255,   250,   256,   257,   258,   259, 
    1271      260,   261,   263,   265,   266,   246,     0,     0,     0,   576, 
    1272      577,   580,   581,   578,   579,   249,   237,   302,   300,   301, 
    1273      287,   286,   313,   344,   327,   319,   316,   317,   320,   310, 
    1274      312,   226,   145,   144,     0,     0,   453,     0,   460,     0, 
    1275        0,     0,   590,   380,     0,     0,   532,   527,   523,   593, 
    1276      381,   597,    90,    99,     0,   109,   129,   129,   129,   129, 
    1277      129,   124,   122,     0,     0,   110,     0,     0,   427,    42, 
    1278       41,    34,     0,    39,    36,    27,   116,   233,     0,   227, 
    1279      232,   133,     0,   136,   137,   148,   222,   223,   221,     0, 
    1280      209,   187,   348,   175,   203,   177,     0,   195,     0,     0, 
    1281        0,     0,     0,     0,   400,   420,   442,     0,   456,   446, 
    1282        0,   449,     0,   418,     0,   480,     0,   474,   476,   469, 
    1283      471,   465,   226,   505,     0,   569,   571,   563,   328,     0, 
    1284        0,     0,   351,     0,     0,   325,   326,     0,   311,    97, 
    1285        0,     0,     0,   435,     0,     0,   529,     0,    92,   113, 
    1286      125,   126,   127,   128,     0,     0,   466,     0,     0,    35, 
    1287        0,    24,   229,   234,   236,     0,   188,   189,   215,   348, 
    1288        0,     0,   166,   178,   204,   363,   354,   355,   360,   359, 
    1289      358,     0,   413,   415,     0,   398,   399,     0,   457,   458, 
    1290      450,   443,   418,   447,   478,     0,   472,   477,   226,     0, 
    1291      565,   582,   583,   584,   343,   324,     0,   321,   318,     0, 
    1292        0,     0,   433,   595,   528,     0,   129,   452,    40,    37, 
    1293        0,     0,   167,   349,   350,     0,     0,   411,   414,   416, 
    1294      399,   402,     0,   459,   451,   475,   479,   491,   568,   323, 
    1295        0,   587,     0,     0,     0,     0,     0,    38,   190,   362, 
    1296      361,   412,   404,   454,   322,   434,   585,   111,   455,     0, 
    1297      586 
     985       0,     0,   203,     0,   202,   196,   201,   172,   129,     0, 
     986       0,     0,     0,   129,     0,     0,   156,    10,    14,    15, 
     987      33,    33,     0,     0,     0,   117,   156,     0,   120,   115, 
     988     134,   156,   227,   227,   156,   153,     0,   147,   211,   213, 
     989     227,   215,     0,   217,   218,   219,   220,   221,     0,   209, 
     990     212,    33,     0,   102,   227,   174,     0,   329,     0,   204, 
     991     333,     0,   192,   194,     0,   227,     0,   402,   439,     0, 
     992     445,     0,     0,   464,     0,   495,   496,     0,   494,     0, 
     993     507,     0,   501,   505,   552,   553,   555,   554,   558,   557, 
     994     556,     0,   525,     0,   570,   570,   570,   513,   512,   563, 
     995       0,   514,     0,     0,     0,     0,     0,   550,   406,   468, 
     996       0,   243,     0,     0,     0,   242,   249,   246,     0,     0, 
     997       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     998     263,     0,   265,     0,     0,     0,   238,     0,     0,     0, 
     999       0,   315,     0,     0,   241,     0,     0,   304,   298,   283, 
     1000     293,   295,   294,   296,   289,   284,   291,   290,   282,   292, 
     1001     278,   279,   280,     0,     0,   300,   297,   281,     0,   286, 
     1002       0,   285,     0,     0,   316,     0,     0,     0,    95,    96, 
     1003      94,    58,     0,     0,     0,     0,   437,     0,     0,     0, 
     1004       0,   531,   532,   308,   227,     0,   517,   519,   521,   518, 
     1005       0,     0,     0,   388,     0,   155,     0,    91,     0,   163, 
     1006      44,   197,     0,   112,     0,   130,     0,     0,   108,   121, 
     1007     123,     0,     0,     0,   156,   432,     0,    25,    23,   160, 
     1008      47,   159,   119,   232,   236,     0,   229,   231,   237,     0, 
     1009     187,   187,     0,   152,   214,     0,     0,   208,   103,   227, 
     1010     187,     0,     0,   204,   176,     0,   179,     0,   193,   491, 
     1011       0,     0,   354,   358,   397,   410,   408,   409,   404,     0, 
     1012     407,   420,   442,   482,   423,   440,   441,     0,   449,   446, 
     1013       0,   474,     0,   469,   471,   465,   462,   419,   490,   508, 
     1014     499,     0,   559,   543,     0,   571,   567,   565,   568,     0, 
     1015     516,   551,   547,   548,   549,   546,   398,   269,   244,   245, 
     1016     248,   252,   253,   254,   255,   256,   251,   257,   258,   259, 
     1017     260,   261,   262,   264,   266,   267,   247,     0,     0,     0, 
     1018     577,   578,   581,   582,   579,   580,   250,   238,   303,   301, 
     1019     302,   288,   287,   314,   345,   328,   320,   317,   318,   321, 
     1020     311,   313,   227,   145,   144,     0,     0,   454,     0,   461, 
     1021       0,     0,     0,   591,   381,     0,     0,   533,   528,   524, 
     1022     594,   382,   598,    90,    99,     0,   109,   129,   129,   129, 
     1023     129,   129,   124,   122,     0,     0,   110,     0,     0,   428, 
     1024      42,    41,    34,     0,    39,    36,    27,   116,   234,     0, 
     1025     228,   233,   133,     0,   136,   137,   148,   223,   224,   222, 
     1026       0,   210,   187,   349,   175,   204,   177,     0,   195,     0, 
     1027       0,     0,     0,     0,     0,   401,   421,   443,     0,   457, 
     1028     447,     0,   450,     0,   419,     0,   481,     0,   475,   477, 
     1029     470,   472,   466,   227,   506,     0,   570,   572,   564,   329, 
     1030       0,     0,     0,   352,     0,     0,   326,   327,     0,   312, 
     1031      97,     0,     0,     0,   436,     0,     0,   530,     0,    92, 
     1032     113,   125,   126,   127,   128,     0,     0,   467,     0,     0, 
     1033      35,     0,    24,   230,   235,   237,     0,   188,   189,   216, 
     1034     349,     0,     0,   166,   178,   205,   364,   355,   356,   361, 
     1035     360,   359,     0,   414,   416,     0,   399,   400,     0,   458, 
     1036     459,   451,   444,   419,   448,   479,     0,   473,   478,   227, 
     1037       0,   566,   583,   584,   585,   344,   325,     0,   322,   319, 
     1038       0,     0,     0,   434,   596,   529,     0,   129,   453,    40, 
     1039      37,     0,     0,   167,   350,   351,     0,     0,   412,   415, 
     1040     417,   400,   403,     0,   460,   452,   476,   480,   492,   569, 
     1041     324,     0,   588,     0,     0,     0,     0,     0,    38,   190, 
     1042     363,   362,   413,   405,   455,   323,   435,   586,   111,   456, 
     1043       0,   587 
    12981044}; 
    12991045 
    1300 /* YYDEFGOTO[NTERM-NUM].  */ 
     1046  /* YYPGOTO[NTERM-NUM].  */ 
     1047static const yytype_int16 yypgoto[] = 
     1048{ 
     1049    -890,  -890,  -890,   -96,   850,   643,   -13,  -890,  -890,  -890, 
     1050     413,   161,  -890,  -320,  -890,   -51,   -46,  -890,  -890,   230, 
     1051    -890,  -890,  -890,   503,  -890,   224,    13,  -890,  -890,  -890, 
     1052    -890,  -890,   424,  -464,  -890,  -890,  -247,   427,  -286,  -890, 
     1053    -890,  -890,  -890,  -890,  -890,   -33,  -890,  -890,  -263,   404, 
     1054     -22,    23,   652,   417,  -890,  -890,  -890,  -890,  -890,  -890, 
     1055    -890,   389,  -890,  -890,  -672,  -890,  -890,  -890,   629,  -234, 
     1056    -680,  -890,  -890,   203,  -890,   868,  -236,  -890,    59,    52, 
     1057     -11,   -78,   -98,  -150,  -460,  -530,  -890,  -890,   -97,  -890, 
     1058    -890,  -890,  -890,  -890,   532,  -890,    -1,   267,     1,   -70, 
     1059    -890,  -890,  -182,  -370,    73,   -29,  -128,  -890,  -890,  -890, 
     1060      41,  -890,   -84,    28,  -890,  -628,  -890,  -521,  -513,  -889, 
     1061    -890,  -890,  -890,  -890,  -569,  -785,  -890,  -890,  -890,  -890, 
     1062    -294,  -890,  -890,  -890,  -890,  -890,  -195,  -890,  -890,  -890, 
     1063    -890,  -890,  -890,  -701,  -890,  -890,  -890,  -890,  -890,  -890, 
     1064    -890,  -890,  -890,   393,  -890,  -890,  -890,  -890,  -890,   -50, 
     1065    -828,  -890,  -890,  -890,  -890,  -890,  -890,   -26,   179,     0, 
     1066    -890,  -890,  -890,  -890,  -890,  -890,  -890,  -890,   180,  -890, 
     1067    -890,  -890,  -890,   479,  -890,  -890,   277,  -381,  -890,  -890, 
     1068    -890,   -39,   816,    -3,  -470,  -670,  -534,  -117,  -217,  -441, 
     1069    -890,  -890,  -199,  -890,   509,  -890 
     1070}; 
     1071 
     1072  /* YYDEFGOTO[NTERM-NUM].  */ 
    13011073static const yytype_int16 yydefgoto[] = 
    13021074{ 
    1303       -1,     1,    70,    71,    72,    73,   250,    74,   865,    75, 
    1304      205,   129,   127,   696,   951,   862,   863,    76,   237,   463, 
     1075      -1,     1,    70,    71,    72,    73,   250,    74,   866,    75, 
     1076     205,   129,   127,   697,   952,   863,   864,    76,   237,   463, 
    13051077     464,   228,   189,   190,   403,   467,   196,   281,   282,    77, 
    1306       78,   246,   247,   681,    79,    80,   267,   248,   682,   683, 
     1078      78,   246,   247,   682,    79,    80,   267,   248,   683,   684, 
    13071079      81,    82,    83,    84,    85,   409,    86,    87,   275,   276, 
    1308      225,   206,   261,   262,    88,   233,    89,   283,   522,    90, 
    1309      287,   527,    91,    92,   873,   956,   290,   531,   242,   528, 
    1310      725,   284,   517,   518,   879,   519,   497,   704,   705,   706, 
    1311      337,   175,   338,   176,   177,   392,   635,   617,   178,   643, 
    1312      179,   180,   181,   182,   645,   816,   817,   818,   183,   184, 
    1313      185,   401,   396,   193,   186,   962,   187,    94,    95,   731, 
    1314      732,   967,   968,   740,    97,    98,   734,    99,   100,   536, 
    1315      737,   892,   101,   738,   739,   334,   893,   974,   975,   655, 
    1316      537,   102,   103,   104,   105,   106,   207,   418,   538,   743, 
    1317      744,   107,   747,   748,   900,   901,   108,   749,   902,   981, 
    1318      109,   110,   541,   542,   111,   543,   755,   752,   906,   907, 
    1319      908,   745,   112,   113,   114,   115,   116,   211,   291,   117, 
    1320      118,   303,   119,   306,   550,   120,   121,   551,   552,   122, 
    1321      566,   326,   570,   214,   218,   426,   427,   546,   123,   328, 
    1322      124,   428,   429,   331,   567,   568,   765,   368,   369,   854, 
    1323      125,   420,   421,   435,   658,   437 
     1080     225,   206,   261,   262,    88,   233,    89,   283,   523,    90, 
     1081     287,   528,    91,    92,   874,   957,   290,   532,   242,   529, 
     1082     726,   284,   518,   519,   880,   520,   498,   705,   706,   707, 
     1083     337,   175,   338,   176,   177,   392,   636,   618,   178,   644, 
     1084     179,   180,   181,   182,   646,   817,   818,   819,   183,   184, 
     1085     185,   401,   396,   193,   186,   963,   187,    94,    95,   732, 
     1086     733,   968,   969,   741,    97,    98,   735,    99,   100,   537, 
     1087     738,   893,   101,   739,   740,   334,   894,   975,   976,   656, 
     1088     538,   102,   103,   104,   105,   106,   207,   418,   539,   744, 
     1089     745,   107,   748,   749,   901,   902,   108,   750,   903,   982, 
     1090     109,   110,   542,   543,   111,   544,   756,   753,   907,   908, 
     1091     909,   746,   112,   113,   114,   115,   116,   211,   291,   117, 
     1092     118,   303,   119,   306,   551,   120,   121,   552,   553,   122, 
     1093     567,   326,   571,   214,   218,   426,   427,   547,   123,   328, 
     1094     124,   428,   429,   331,   568,   569,   766,   368,   369,   855, 
     1095     125,   420,   421,   435,   659,   437 
    13241096}; 
    13251097 
    1326 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 
    1327    STATE-NUM.  */ 
    1328 #define YYPACT_NINF -845 
    1329 static const yytype_int16 yypact[] = 
    1330 { 
    1331     -845,   967,  -845,  -845,  -845,  -845,   -22,    45,  -845,    94, 
    1332      186,  3621,   199,   238,  -845,  4658,    16,    36,  3621,  -845, 
    1333      369,   256,    56,  -845,   299,   280,   268,  -845,  -845,  -845, 
    1334      306,  -845,  -845,   409,   311,   350,  -845,   357,   357,   119, 
    1335      354,  -845,  -845,    53,  -845,  -845,   420,  -845,   386,  -845, 
    1336     -845,  5758,   363,   274,   280,  -845,  -845,  -845,  -845,  -845, 
    1337     -845,  -845,  -845,  -845,   237,  -845,  -845,   549,  -845,  -845, 
    1338     -845,   122,   563,  -845,   440,  -845,  -845,   319,   433,   436, 
    1339      159,   495,   622,   624,  -845,  -845,   523,   329,  -845,  -845, 
    1340      398,   102,   163,  -845,  -845,   471,  -845,  -845,  -845,  -845, 
    1341     -845,   215,  -845,  -845,   215,  -845,  -845,  -845,   215,  -845, 
    1342     -845,   215,  -845,   280,  -845,   280,   280,    20,   630,  -845, 
    1343      472,    44,  3621,   306,  5477,  -845,  -845,  -845,  -845,  -845, 
    1344     4658,  4658,  4658,  -845,  -845,  4658,   473,   474,   477,  -845, 
    1345     4658,  4658,  4658,   478,   484,   486,   487,   488,   494,   496, 
    1346      497,   498,   499,   500,   501,  4658,   505,  4658,   507,   508, 
    1347      511,  4767,  -845,  -845,  -845,   512,  -845,  -845,  -845,  -845, 
    1348     -845,  -845,  4658,  -845,  2490,  -845,  -845,  4658,   470,  -845, 
    1349      513,   515,  -845,   516,   522,   270,  -845,  -845,   524,   654, 
    1350     -845,  4658,  2490,  -845,  -845,  -845,   277,  -845,   277,  -845, 
    1351     -845,  4658,  4658,  -845,  -845,   110,   326,  -845,  -845,  -845, 
    1352     -845,  -845,   524,  5347,  4767,  -845,  -845,  4876,  -845,   524, 
    1353      524,   277,  2573,  -845,   527,   524,  -845,  4658,   665,  -845, 
    1354     -845,  -845,  -845,   680,   563,  -845,  -845,   357,  -845,  -845, 
    1355     2967,  -845,   526,  -845,    88,   524,    32,  -845,   384,    82, 
    1356     -845,  -845,  -845,  -845,  5621,    45,    45,  -845,  -845,   687, 
    1357      533,   691,  -845,  -845,   535,   442,   534,  -845,   535,   524, 
    1358      442,   537,   539,   442,   534,   699,  -845,   545,   847,  -845, 
    1359     -845,  -845,    45,   714,   564,   434,  3874,  -845,  4985,   274, 
    1360     -845,   534,   727,   122,   122,   122,   258,  -845,  -845,  -845, 
    1361     4658,  4658,  -845,  -845,   571,  3983,  -845,  -845,  -845,  -845, 
    1362     -845,  -845,  -845,  -845,  4658,  4658,  4658,  4658,  4658,  4658, 
    1363     4658,   726,  5347,  -845,   470,   522,  -845,  1249,   730,   555, 
    1364      561,  5523,  -845,  2490,   572,  1332,   875,  2490,    38,  4658, 
    1365     4658,  4658,    48,  1353,    61,  4658,  4658,  4658,  4658,  4658, 
    1366     4658,  4658,  4658,  4658,  4658,  4658,  4658,  1514,  4658,    68, 
    1367     4658,  4658,  4658,  4767,  2490,  1533,   753,  1552,   278,   731, 
    1368     4658,  1616,   733,  3294,  4658,  4658,  4658,  4658,  4658,  4658, 
    1369     4658,  4658,  4658,  4658,  4658,  4658,  4658,  4658,  3076,  4658, 
    1370     3403,  3512,  -845,   185,  -845,  4658,  -845,  -845,  -845,  -845, 
    1371     -845,  -845,  -845,    69,   534,   199,  1635,  -845,  -845,   734, 
    1372      734,  1129,  1713,  -845,  -845,   576,  -845,  -845,   736,   470, 
    1373      739,  -845,  -845,  -845,  5523,  3765,    79,  -845,   555,  -845, 
    1374      740,   581,   582,   439,  -845,   743,  -845,   105,   734,  -845, 
    1375     -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845, 
    1376     -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845, 
    1377     -845,  -845,  -845,  -845,   744,   717,  -845,   106,  2490,   588, 
    1378      591,   280,  4092,  -845,  -845,  2490,  -845,   598,  4658,    31, 
    1379      237,   594,   598,   595,   602,   125,  -845,  -845,  -845,   609, 
    1380      609,  4658,   109,   533,  -845,   622,  2531,  -845,  -845,  -845, 
    1381      622,   534,   534,   622,  -845,   545,   699,  -845,  -845,   534, 
    1382     -845,   615,  -845,  -845,  -845,  -845,  -845,   123,  -845,  -845, 
    1383      609,   618,  -845,   534,  -845,  3874,  3185,   585,   750,    34, 
    1384     4201,  -845,  2490,   592,   534,    80,  4331,  5955,    78,  5879, 
    1385       13,    85,  -845,   215,  2490,  2490,   524,  -845,   619,  2490, 
    1386      616,   778,  -845,  2490,  2490,  2490,  2490,  2490,  2490,  2490, 
    1387     4658,   337,  1249,  2490,   706,  1732,  -845,   779,  -845,  1249, 
    1388     -845,  5523,  5523,  5523,  5523,  5523,   760,  4658,  -845,  4658, 
    1389     -845,   111,   115,  1751,  -845,  -845,  -845,  1796,  1815,  1834, 
    1390     1912,  1931,  1995,  2014,  2033,  2092,  2111,  2130,  2194,  -845, 
    1391      121,  -845,   130,   136,   149,   781,   785,   786,  4767,  4767, 
    1392     -845,  4767,   150,  -845,  4658,  4658,  2490,  -845,   542,   542, 
    1393      806,   806,   875,   887,   887,   887,   887,   887,   887,   164, 
    1394      164,   185,  4658,  4658,  2490,  -845,   185,  4658,   887,  4658, 
    1395      887,   524,   787,  2640,   627,   629,   524,  -845,  -845,  -845, 
    1396     -845,   295,  4658,  6031,  4658,  -845,  4658,    19,   631,   337, 
    1397     -845,  -845,  2640,    83,  5347,  -845,  -845,  -845,  -845,    19, 
    1398      632,   524,  -845,  2573,  -845,  4658,  -845,  4658,  -845,  -845, 
    1399     -845,   771,    42,   547,  -845,  2213,   636,  -845,   637,  -845, 
    1400      776,  4658,  4658,   135,  -845,   242,  -845,   774,  2490,  -845, 
    1401     -845,   535,  4658,  -845,   151,  -845,  -845,  1253,   524,   780, 
    1402      780,   545,  -845,  -845,   476,   847,  -845,  -845,   534,   780, 
    1403      641,  4092,   750,  -845,   645,  -845,   644,  -845,  -845,   804, 
    1404      688,   809,  -845,  2490,  -845,  -845,  -845,   773,   215,  -845, 
    1405      215,   653,  -845,  -845,  -845,  -845,   652,   536,  -845,   215, 
    1406     -845,  2749,   655,   664,  -845,  -845,   122,  -845,  -845,  -845, 
    1407     3983,  2490,  -845,   152,  -845,  2490,  2490,  2490,  1249,   779, 
    1408      570,   760,   760,   760,   593,  -845,  2490,  -845,  -845,  -845, 
    1409     -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845, 
    1410     -845,  -845,  -845,  -845,  -845,  -845,  5094,  5094,  5094,  2490, 
    1411     -845,  2490,  -845,  2490,  -845,  -845,   667,   887,   887,   185, 
    1412      887,   887,   470,  4658,  2858,  1415,   828,  -845,  -845,   513, 
    1413     -845,   534,  -845,  -845,  2291,   670,  -845,   671,  -845,  2310, 
    1414     1150,   829,  -845,  -845,  1233,   672,  -845,  -845,  -845,  -845, 
    1415     -845,  -845,  -845,  2490,   153,  -845,   598,   598,   598,   598, 
    1416      598,   522,  -845,   832,   676,  -845,  2329,  2374,  -845,  -845, 
    1417     -845,  -845,   154,  -845,   678,  -845,  -845,  2490,  2531,  -845, 
    1418     4440,  -845,  5203,  -845,  -845,   699,  -845,  -845,  -845,   679, 
    1419     -845,   780,   231,  -845,   750,  -845,  4092,  -845,   291,   681, 
    1420      683,  4658,   586,   215,   122,   122,  -845,  4658,   685,  -845, 
    1421      454,  -845,   215,   122,  4658,  2490,   155,  -845,   842,  -845, 
    1422     -845,  5955,   534,  -845,  1831,  2490,  -845,  -845,   832,   684, 
    1423      686,   689,  -845,   690,  4658,  1435,  4658,  2640,  -845,  -845, 
    1424      845,  4658,  4658,  -845,  4658,   524,  -845,   524,  -845,  -845, 
    1425       66,    66,   693,   143,  4658,   833,  -845,   768,    60,  -845, 
    1426      259,  -845,  -845,  -845,  2490,  4549,  -845,  2490,  -845,   231, 
    1427     4658,  4658,  -845,  -845,  -845,   729,  -845,   851,  -845,  -845, 
    1428     -845,   695,   696,   702,   215,  -845,   122,  2393,  -845,   703, 
    1429     -845,  -845,   122,  5955,  -845,  2749,  -845,  4658,   534,   701, 
    1430     2490,  -845,  -845,  -845,  -845,  2490,  4658,  1455,  -845,  4658, 
    1431      704,  2412,  1171,   470,   697,  1192,   598,  -845,  -845,  -845, 
    1432      157,   705,  -845,  2490,  2490,   709,   713,   716,  -845,  -845, 
    1433      122,  4331,   784,  -845,  5955,  -845,  -845,  -845,  -845,  2490, 
    1434     4658,  2490,  4658,  6107,  4658,  4658,   855,  -845,  -845,  -845, 
    1435     -845,  -845,  4331,   719,  2490,  2490,  1213,  -845,  -845,  4658, 
    1436     2490 
    1437 }; 
    1438  
    1439 /* YYPGOTO[NTERM-NUM].  */ 
    1440 static const yytype_int16 yypgoto[] = 
    1441 { 
    1442     -845,  -845,  -845,   -96,   830,   628,   -26,  -845,  -845,  -845, 
    1443      399,   156,  -845,   -94,  -845,   -67,   -63,  -845,  -845,   232, 
    1444     -845,  -845,  -845,   509,  -845,   234,    30,  -845,  -845,  -845, 
    1445     -845,  -845,   444,  -464,  -845,  -845,  -238,   438,  -242,  -845, 
    1446     -845,  -845,  -845,  -845,  -845,   -47,  -845,  -845,  -263,   417, 
    1447      -27,   -50,   668,   437,  -845,  -845,  -845,  -845,  -845,  -845, 
    1448     -845,   404,  -845,  -845,  -671,  -845,  -845,  -845,   642,  -231, 
    1449     -656,  -845,  -845,   217,  -845,   882,  -236,  -845,    67,    70, 
    1450      -11,   -78,    55,  -144,  -458,  -507,  -845,  -845,   -97,  -845, 
    1451     -845,  -845,  -845,  -845,   540,  -845,     9,   279,     1,   -70, 
    1452     -845,  -845,  -182,  -382,   365,   -20,  -128,  -845,  -845,  -845, 
    1453       52,  -845,   -73,    43,  -845,  -630,  -845,  -515,  -514,  -844, 
    1454     -845,  -845,  -845,  -845,  -566,  -718,  -845,  -845,  -845,  -845, 
    1455     -294,  -845,  -845,  -845,  -845,  -845,  -185,  -845,  -845,  -845, 
    1456     -845,  -845,  -845,  -663,  -845,  -845,  -845,  -845,  -845,  -845, 
    1457     -845,  -845,  -845,   405,  -845,  -845,  -845,  -845,  -845,   -40, 
    1458     -787,  -845,  -845,  -845,  -845,  -845,  -845,   -38,   190,    11, 
    1459     -845,  -845,  -845,  -845,  -845,  -845,  -845,  -845,   191,  -845, 
    1460     -845,  -845,  -845,   506,  -845,  -845,   288,  -384,  -845,  -845, 
    1461     -845,   -39,   834,  -250,  -126,  -699,  -522,  -140,  -287,  -465, 
    1462     -845,  -845,  -213,  -845,   519,  -845 
    1463 }; 
    1464  
    1465 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If 
    1466    positive, shift that token.  If negative, reduce the rule which 
    1467    number is the opposite.  If YYTABLE_NINF, syntax error.  */ 
    1468 #define YYTABLE_NINF -542 
     1098  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If 
     1099     positive, shift that token.  If negative, reduce the rule whose 
     1100     number is the opposite.  If YYTABLE_NINF, syntax error.  */ 
    14691101static const yytype_int16 yytable[] = 
    14701102{ 
    1471      174,   539,    93,   402,   192,   293,   434,   174,   294,   474, 
    1472      641,   775,   295,   642,   506,   296,   243,   366,   690,   684, 
    1473      414,   735,   736,   828,   684,   300,   494,   324,   372,   265, 
    1474      498,   270,   271,   367,   686,   203,   273,  -171,   504,   874, 
    1475      226,   579,   766,   767,    96,   846,   323,   198,   882,   257, 
    1476      258,   579,    93,   268,   325,   534,   764,   764,   764,   203, 
    1477      277,   847,   848,   849,   579,  -171,   885,   221,   222,   917, 
    1478      366,   579,   646,   432,   430,   297,   607,   298,   299,   575, 
    1479     -430,   859,   664,   365,   899,   329,   367,   849,   373,   374, 
    1480      375,   376,   377,   378,    96,   379,   380,   381,   382,   383, 
    1481      384,   332,   385,   386,   387,   388,   389,   729,   671,   675, 
    1482      477,   174,   493,   203,   579,   419,   324,   984,   579,   333, 
    1483      335,   336,   419,   285,   579,   750,   715,   483,   203,   540, 
    1484      343,   126,  1021,   579,  -426,   323,   365,   223,   203,   579, 
    1485      831,   224,   301,   325,   357,   307,   251,   194,   479,  -429, 
    1486      364,   410,   579,   579,   868,   914,   675,   948,   985,  -425, 
    1487      948,   371,   847,   848,   849,  -171,   393,   194,   648,   741, 
    1488      484,   485,   229,   971,   438,   751,  1042,   223,   575,   170, 
    1489      406,   224,   195,   230,   288,   387,   388,   389,   302,   404, 
    1490      411,   412,   753,   742,  -171,   342,   480,   344,  -106,   394, 
    1491     1026,   580,   197,   364,   308,   128,   364,   417,   389,   850, 
    1492      959,   584,   359,  1000,   425,   917,   468,   204,   433,   605, 
    1493      860,   436,  -430,   606,   586,   324,   466,   486,   963,   475, 
    1494      564,   601,   647,   850,   324,   367,   960,   980,   495,     4, 
    1495      730,   680,   665,   500,   323,   496,   503,   390,   391,   563, 
    1496      478,   836,   325,   323,   716,    93,   130,   565,   916,   916, 
    1497      916,   325,   252,   859,   286,   709,   710,   471,   672,   676, 
    1498      499,   413,   699,   713,   777,   475,  -426,   532,   778,   170, 
    1499      859,   609,   251,   561,   792,   365,   204,   719,   253,   544, 
    1500      545,  -429,   576,   793,   549,   722,   413,    96,   728,   794, 
    1501      694,  -425,   540,   553,   554,   555,   556,   557,   558,   559, 
    1502      850,   575,   795,   805,   869,   915,   938,   949,   986,   266, 
    1503     1037,   800,   802,   425,   804,   289,   575,   324,   390,   391, 
    1504      583,   919,   920,   921,   587,   588,   589,   590,   591,   592, 
    1505      593,   594,   595,   596,   597,   598,   323,   223,   131,   390, 
    1506      391,   224,   371,   961,   325,   571,   311,   312,   572,   573, 
    1507      574,   188,   616,   618,   619,   620,   621,   622,   623,   624, 
    1508      625,   626,   627,   628,   629,   630,   631,   634,   636,   638, 
    1509      640,    69,   939,   199,   192,   659,   372,   481,   684,   684, 
    1510      684,   684,   684,   990,   581,   582,   697,   244,   252,   245, 
    1511      191,   278,   860,   828,   610,   861,   482,   239,   764,   575, 
    1512      407,   489,   490,   600,   663,   602,   603,   604,   202,   860, 
    1513      415,   416,  1009,   400,   253,   612,   717,   837,   822,   279, 
    1514      212,   923,   395,   679,   240,   241,   763,   408,   520,   264, 
    1515      209,   235,   236,   769,   832,   701,   210,   756,   875,   989, 
    1516      708,   965,   937,   711,  -156,   823,   839,   966,  -156,   208, 
    1517      223,   475,   911,   866,   224,   564,   775,   685,   213,   255, 
    1518      806,   256,   564,   219,   324,   324,   324,   324,   324,   259, 
    1519      698,   260,   881,   916,   563,   707,   170,   309,   194,   274, 
    1520      884,   563,   565,   323,   323,   323,   323,   323,   269,   565, 
    1521      762,   325,   325,   325,   325,   325,   735,   736,   858,   800, 
    1522      802,   804,   220,  -156,   475,   475,   227,  -156,   372,   371, 
    1523      575,   575,   575,   575,   575,   733,   203,   735,   736,   280, 
    1524      200,   201,   770,   771,   772,   773,   774,   746,    93,   979, 
    1525       93,  -156,  1036,   231,   812,  -156,   232,   757,   684,   761, 
    1526      376,   377,   378,   249,   379,   380,   381,   382,   383,   384, 
    1527      419,   385,   386,   387,   388,   389,   733,   324,   776,   215, 
    1528      216,   217,   419,   571,   311,   312,   572,   573,   574,  -541, 
    1529     -541,  -541,  -541,  -541,  -541,   929,   323,   254,   139,   311, 
    1530      312,   572,   573,   574,   325,   524,   525,   799,   801,   263, 
    1531      803,   398,   668,   364,   807,   940,   941,   942,   943,   983, 
    1532      876,   877,   878,   851,   572,   573,   574,   133,   134,   746, 
    1533      898,   808,   809,   972,   973,   203,   810,   272,   811,   310, 
    1534      327,   292,   815,   304,   305,   339,   340,   928,   394,   341, 
    1535      345,   824,   894,   829,   895,   830,   346,   821,   347,   348, 
    1536      349,   834,   806,   903,    93,   964,   350,   405,   351,   352, 
    1537      353,   354,   355,   356,   843,   425,   468,   358,   469,   360, 
    1538      361,   564,   841,   362,   370,   395,   988,   397,   398,   162, 
    1539      856,   857,   399,   470,   170,   163,   164,   465,  1024,   476, 
    1540      563,   867,   491,   259,   493,   266,   496,   501,   565,   502, 
    1541      166,   167,   505,   168,   169,   274,   390,   391,   171,   871, 
    1542      475,   373,   374,   375,   376,   377,   378,   521,   379,   380, 
    1543      381,   382,   383,   384,   523,   385,   386,   387,   388,   389, 
    1544      535,   560,   547,   569,   611,   577,   614,   651,   654,   674, 
    1545      905,   656,   657,   609,   666,   667,   669,   673,   723,   549, 
    1546      677,   678,  1027,   724,   688,   727,   608,   691,  -237,  -237, 
    1547     -237,  -237,  -237,  -237,   692,  -237,  -237,  -237,  -237,  -237, 
    1548     -237,   695,  -237,  -237,  -237,  -237,  -237,   714,   718,   759, 
    1549      758,   760,   768,   574,   796,   799,   801,   803,   797,   798, 
    1550      819,   813,   820,   845,   833,   840,   853,   976,   855,   478, 
    1551      864,   872,   192,   925,   883,   886,   982,   887,   888,   891, 
    1552      889,   372,   890,   896,   897,   909,   378,   564,   379,   380, 
    1553      381,   382,   383,   384,   910,   385,   386,   387,   388,   389, 
    1554      922,   927,   931,   932,   935,   936,   563,   944,  1003,   945, 
    1555      950,   969,   958,   730,   565,   978,   987,   991,   999,   992, 
    1556     1007,  1015,   993,   994,  1016,  1006,  1018,   707,  1017,   954, 
    1557      850,   957,  1019,  1023,  1028,   302,  1043,  1032,  1038,  1039, 
    1558      390,   391,   507,   965,   394,   475,  1041,  1047,  1020,  1048, 
    1559      333,   234,   488,  1010,   693,  1008,   977,   379,   380,   381, 
    1560      382,   383,   384,   905,   385,   386,   387,   388,   389,  -542, 
    1561     -542,  -542,  -542,  -542,  -542,   842,   385,   386,   387,   388, 
    1562      389,   844,    93,   995,   649,   997,   815,  -237,  -237,   689, 
    1563      333,  1001,   712,  1002,   687,   235,   236,   508,   492,   720, 
    1564      700,   533,   880,  1005,   238,   952,   998,   644,    93,  1012, 
    1565      953,   835,   970,  1040,   371,  1025,   754,   912,  1004,  1013, 
    1566     1014,   913,   838,   509,   670,   510,   511,   512,   330,     0, 
    1567      513,   514,     0,   515,   516,     0,     0,     2,     3,     0, 
    1568      390,   391,     0,     0,   905,     0,   905,     0,     0,     0, 
    1569        0,     0,     0,     0,    93,  1029,     0,     0,  1031,     0, 
    1570        0,     4,     5,     0,     0,     6,   -21,     7,   -21,     8, 
    1571        0,     0,     9,     0,     0,     0,     0,     0,     0,     0, 
    1572      733,     0,    10,     0,     0,     0,     0,     0,     0,  1044, 
    1573        0,   733,     0,  1045,  1046,    93,     0,     0,    11,     0, 
    1574        0,   733,    12,    13,    93,     0,     0,    14,  1050,   390, 
    1575      391,     0,     0,    15,     0,    16,    17,     0,    18,     0, 
    1576        0,   390,   391,    19,    20,    21,    22,    23,     0,    24, 
    1577       25,     0,     0,    26,    27,    28,    29,    30,    31,    32, 
    1578       33,    34,    35,    36,     0,    37,     0,    38,    39,     0, 
    1579        0,    40,    41,    42,     0,    43,     0,    44,     0,     0, 
    1580       45,    46,     0,     0,    47,    48,    49,     0,     0,     0, 
    1581        0,     0,     0,     0,    50,     0,     0,    51,    52,    53, 
    1582       54,    55,    56,    57,    58,    59,    60,    61,    62,    63, 
    1583        0,     0,    64,     0,     0,    65,    66,    67,    68,     0, 
    1584        0,     0,   652,    69,   373,   374,   375,   376,   377,   378, 
    1585        0,   379,   380,   381,   382,   383,   384,     0,   385,   386, 
    1586      387,   388,   389,   934,     0,   373,   374,   375,   376,   377, 
     1103     174,   540,    93,   402,   192,   293,   475,   174,   294,   776, 
     1104     414,   366,   295,   642,   507,   296,   736,   495,   685,   691, 
     1105     434,   499,   372,   685,   737,   643,   829,   324,   243,    96, 
     1106     198,   767,   768,   367,   765,   765,   765,   687,   505,   875, 
     1107     226,   300,   342,   886,   344,   203,   323,   900,   883,   580, 
     1108     221,   222,    93,   847,   325,   535,   223,   203,   268,   359, 
     1109     224,   203,   257,   258,   366,   277,  -171,   432,   580,   848, 
     1110     849,   850,   580,   580,   848,   849,   850,   985,  -431,    96, 
     1111     961,   850,  -427,   365,   278,   329,   367,   297,  1022,   298, 
     1112     299,   199,   860,   764,  -171,   751,   203,   430,   647,   918, 
     1113     770,   541,   265,   307,   270,   271,   285,   972,   126,   273, 
     1114     203,   174,   279,   128,   332,   419,   324,  -430,   665,   333, 
     1115     335,   336,   419,     4,   672,   130,   676,   494,   716,   223, 
     1116     343,  -426,  1043,   224,   194,   323,   365,   580,   580,   478, 
     1117     580,   580,   580,   325,   357,   752,   608,  1001,   480,   484, 
     1118     364,   580,   580,   869,   915,   676,   949,   986,   301,   949, 
     1119    1027,   371,   308,   730,   754,   410,   393,   131,   649,   195, 
     1120     188,   698,   610,   572,   311,   312,   573,   574,   575,   288, 
     1121     406,   387,   388,   389,   244,   229,   245,   389,   438,   404, 
     1122     411,   412,   485,   486,  -171,   309,   230,   962,   170,   191, 
     1123     981,   718,   394,   364,   302,   964,   364,   417,  -106,   581, 
     1124     960,   860,   280,   606,   425,   204,   468,   851,   433,   413, 
     1125    -431,   436,   851,  -171,  -427,   324,   466,   851,   585,   476, 
     1126     565,   861,   587,   602,   324,   367,   917,   917,   917,   681, 
     1127     487,   582,   583,   496,   323,   918,   607,   286,   501,   564, 
     1128     471,   504,   325,   323,   204,    93,   717,   566,   648,  -430, 
     1129     601,   325,   603,   604,   605,    69,   710,   711,   413,   481, 
     1130     500,   266,   613,  -426,   714,   476,   223,   533,   666,   479, 
     1131     224,   860,    96,   562,   673,   365,   677,   700,   720,   545, 
     1132     546,   695,   577,   723,   550,   611,   731,   778,   779,   729, 
     1133     793,   794,   795,   554,   555,   556,   557,   558,   559,   560, 
     1134     251,   796,   806,   870,   916,   939,   950,   987,   763,  1038, 
     1135     289,   832,   407,   425,   390,   391,   576,   324,   390,   391, 
     1136     584,   742,   482,   202,   588,   589,   590,   591,   592,   593, 
     1137     594,   595,   596,   597,   598,   599,   323,   415,   416,   408, 
     1138     861,   483,   371,   862,   325,   743,   920,   921,   922,   194, 
     1139     170,   208,   617,   619,   620,   621,   622,   623,   624,   625, 
     1140     626,   627,   628,   629,   630,   631,   632,   635,   637,   639, 
     1141     641,   372,   991,   940,   192,   660,   765,   685,   685,   685, 
     1142     685,   685,   801,   803,   197,   805,   376,   377,   378,   212, 
     1143     379,   380,   381,   382,   383,   384,   829,   385,   386,   387, 
     1144     388,   389,   400,   170,   664,   223,   490,   491,   274,   224, 
     1145     861,   395,   231,  1010,   823,   576,   252,   213,   838,   378, 
     1146     251,   379,   380,   381,   382,   383,   384,   219,   385,   386, 
     1147     387,   388,   389,   521,   924,   680,   220,   209,   757,   876, 
     1148     541,   824,   253,   210,   966,   867,   938,   200,   201,   833, 
     1149     967,   917,   476,   912,   776,   807,   565,   255,   686,   256, 
     1150     194,   840,   264,   565,   990,   324,   324,   324,   324,   324, 
     1151     239,   699,   259,   882,   260,   564,   708,  -156,   885,   235, 
     1152     236,  -156,   564,   566,   323,   323,   323,   323,   323,   859, 
     1153     566,   736,   325,   325,   325,   325,   325,   240,   241,   737, 
     1154     269,   227,   747,   372,   980,   476,   476,   525,   526,   702, 
     1155     371,   232,   736,   203,   709,  -156,   734,   712,   249,  -156, 
     1156     737,   398,   669,   771,   772,   773,   774,   775,  -156,    93, 
     1157     254,    93,  -156,  1037,   263,   813,   252,   685,   758,   203, 
     1158     762,   272,   390,   391,   311,   312,   573,   574,   575,   576, 
     1159     292,   419,   941,   942,   943,   944,   304,   734,   324,   777, 
     1160     133,   134,   253,   419,   576,   215,   216,   217,   747,   899, 
     1161     801,   803,   805,   390,   391,   305,   930,   323,   139,   572, 
     1162     311,   312,   573,   574,   575,   325,   973,   974,   800,   802, 
     1163     394,   804,   310,   327,   364,   808,   877,   878,   879,   339, 
     1164     984,   573,   574,   575,   852,  -542,  -542,  -542,  -542,  -542, 
     1165    -542,   340,   809,   810,   341,   345,   346,   811,   347,   812, 
     1166     348,   399,   349,   816,   405,   350,   351,   352,   929,   353, 
     1167     354,   170,   825,   895,   830,   896,   831,   807,   822,   355, 
     1168     356,   358,   835,   965,   904,    93,   360,   576,   361,   362, 
     1169     370,   395,   397,   398,   465,   844,   425,   468,   469,   470, 
     1170     259,   477,   565,   842,   492,   494,   497,   989,   266,   162, 
     1171     506,   857,   858,   502,   522,   163,   164,   503,   274,  1025, 
     1172     524,   564,   868,   536,   548,   570,   561,   578,   612,   566, 
     1173     166,   167,   615,   168,   169,   652,   655,   675,   171,   657, 
     1174     872,   476,   373,   374,   375,   376,   377,   378,   658,   379, 
     1175     380,   381,   382,   383,   384,   610,   385,   386,   387,   388, 
     1176     389,   667,   668,   670,   674,   678,   679,   689,   724,   719, 
     1177     692,   906,   693,   696,   715,   814,   725,   728,   759,   760, 
     1178     550,   761,   769,  1028,   379,   380,   381,   382,   383,   384, 
     1179     575,   385,   386,   387,   388,   389,   797,   798,   576,   576, 
     1180     576,   576,   576,  -543,  -543,  -543,  -543,  -543,  -543,   820, 
     1181     385,   386,   387,   388,   389,   799,   800,   802,   804,   821, 
     1182     834,   841,   846,   854,   479,   856,   873,   865,   977,   884, 
     1183     887,   508,   888,   192,   926,   889,   372,   983,   890,   891, 
     1184     609,   897,  -238,  -238,  -238,  -238,  -238,  -238,   565,  -238, 
     1185    -238,  -238,  -238,  -238,  -238,   892,  -238,  -238,  -238,  -238, 
     1186    -238,   910,   898,   911,   928,   936,   932,   564,   923,  1004, 
     1187     933,   945,   937,   946,   951,   566,   959,   970,   731,   979, 
     1188     988,  1000,  1017,  1019,   235,   236,   509,   992,   708,   993, 
     1189     955,   994,   958,   995,   851,  1007,  1008,  1016,  1018,   497, 
     1190    1020,   390,   391,  1024,  1029,   837,   476,  1033,  1040,  1021, 
     1191     302,   333,   510,  1039,   511,   512,   513,   978,   966,   514, 
     1192     515,  1044,   516,   517,   906,  1042,  1048,   489,  1049,   694, 
     1193    1011,   234,   845,  1009,   843,   688,   390,   391,   650,   690, 
     1194     713,   701,   493,    93,   996,   721,   998,   816,   534,   881, 
     1195     238,   333,  1002,   954,  1003,   390,   391,   999,   953,   645, 
     1196     836,  1013,   971,  1041,  1006,   755,  1026,   913,  1005,    93, 
     1197     330,   914,   839,     0,   671,   371,     0,     0,     0,     0, 
     1198    1014,  1015,     0,     0,     0,     0,     0,     0,     0,     0, 
     1199       0,     0,     0,     0,     0,     0,     0,     0,     2,     3, 
     1200       0,  -238,  -238,     0,     0,   906,     0,   906,     0,     0, 
     1201       0,     0,     0,     0,     0,    93,  1030,     0,     0,  1032, 
     1202       0,     0,     4,     5,     0,     0,     6,   -21,     7,   -21, 
     1203       8,     0,     0,     9,     0,     0,     0,     0,     0,     0, 
     1204       0,   734,     0,    10,     0,     0,     0,     0,     0,     0, 
     1205    1045,     0,   734,     0,  1046,  1047,    93,     0,     0,    11, 
     1206       0,     0,   734,    12,    13,    93,     0,     0,    14,  1051, 
     1207       0,     0,     0,     0,    15,     0,    16,    17,     0,    18, 
     1208       0,     0,     0,     0,    19,    20,    21,    22,    23,     0, 
     1209      24,    25,     0,     0,    26,    27,    28,    29,    30,    31, 
     1210      32,    33,    34,    35,    36,     0,    37,     0,    38,    39, 
     1211       0,     0,    40,    41,    42,     0,    43,     0,    44,     0, 
     1212       0,    45,    46,     0,     0,    47,    48,    49,     0,     0, 
     1213       0,     0,     0,     0,     0,    50,     0,     0,    51,    52, 
     1214      53,    54,    55,    56,    57,    58,    59,    60,    61,    62, 
     1215      63,     0,     0,    64,     0,     0,    65,    66,    67,    68, 
     1216       0,     0,     0,     0,    69,   373,   374,   375,   376,   377, 
    15871217     378,     0,   379,   380,   381,   382,   383,   384,     0,   385, 
    1588      386,   387,   388,   389,  1034,     0,   373,   374,   375,   376, 
     1218     386,   387,   388,   389,   653,     0,   373,   374,   375,   376, 
    15891219     377,   378,     0,   379,   380,   381,   382,   383,   384,     0, 
    1590      385,   386,   387,   388,   389,  1035,     0,   373,   374,   375, 
     1220     385,   386,   387,   388,   389,   935,     0,   373,   374,   375, 
    15911221     376,   377,   378,     0,   379,   380,   381,   382,   383,   384, 
    1592        0,   385,   386,   387,   388,   389,  1049,     0,   373,   374, 
     1222       0,   385,   386,   387,   388,   389,  1035,     0,   373,   374, 
    15931223     375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
    1594      384,     0,   385,   386,   387,   388,   389,   926,   373,   374, 
    1595      375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
    1596      384,     0,   385,   386,   387,   388,   389,   870,   373,   374, 
    1597      375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
    1598      384,     0,   385,   386,   387,   388,   389,     0,     0,     0, 
    1599        0,     0,   135,   136,     0,     0,     0,     0,   137,   138, 
    1600      139,   140,   141,   390,   391,     0,     0,     0,     0,     0, 
    1601        0,     0,     0,   142,   143,   144,   145,   146,   147,   148, 
    1602        0,   149,   150,   151,   390,   391,   152,   153,   154,     0, 
    1603      155,   156,   157,   158,   159,     0,   160,     0,     0,     0, 
    1604        0,     0,     0,     0,     0,   390,   391,   373,   374,   375, 
    1605      376,   377,   378,     0,   379,   380,   381,   382,   383,   384, 
    1606        0,   385,   386,   387,   388,   389,   390,   391,   373,   374, 
    1607      375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
    1608      384,     0,   385,   386,   387,   388,   389,   390,   391,     0, 
    1609        0,   162,     0,     0,     0,     0,     0,   163,   164,     0, 
    1610        0,     0,     0,   165,     0,     0,   613,   390,   391,     0, 
    1611        0,     0,   166,   167,     0,   168,   169,     0,     0,   170, 
    1612      171,   562,     0,     0,     0,     0,     0,   390,   391,   926, 
     1224     384,     0,   385,   386,   387,   388,   389,  1036,     0,   373, 
     1225     374,   375,   376,   377,   378,     0,   379,   380,   381,   382, 
     1226     383,   384,     0,   385,   386,   387,   388,   389,  1050,     0, 
    16131227     373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
    1614      382,   383,   384,     0,   385,   386,   387,   388,   389,   996, 
     1228     382,   383,   384,     0,   385,   386,   387,   388,   389,   927, 
    16151229     373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
    1616      382,   383,   384,     0,   385,   386,   387,   388,   389,  1030, 
     1230     382,   383,   384,     0,   385,   386,   387,   388,   389,   439, 
     1231       0,     0,     0,     0,   440,   441,     0,   442,   443,     0, 
     1232       0,     0,     0,     0,   390,   391,     0,     0,   394,   444, 
     1233     445,   446,   447,   448,   449,   450,     0,   451,   452,   453, 
     1234       0,     0,   454,   455,   456,   390,   391,   457,   458,   459, 
     1235     460,     0,   461,     0,     0,     0,     0,     0,     0,     0, 
     1236       0,     0,     0,     0,     0,     0,   390,   391,     0,     0, 
     1237       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1238       0,     0,     0,     0,     0,     0,     0,   390,   391,   373, 
     1239     374,   375,   376,   377,   378,     0,   379,   380,   381,   382, 
     1240     383,   384,     0,   385,   386,   387,   388,   389,   390,   391, 
    16171241     373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
    1618      382,   383,   384,     0,   385,   386,   387,   388,   389,     0, 
    1619        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1620        0,     0,     0,     0,     0,   578,   390,   391,     0,     0, 
    1621        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1622        0,     0,     0,     0,     0,     0,   585,   390,   391,   373, 
    1623      374,   375,   376,   377,   378,     0,   379,   380,   381,   382, 
    1624      383,   384,     0,   385,   386,   387,   388,   389,  -239,  -239, 
    1625     -239,  -239,  -239,  -239,     0,  -239,  -239,  -239,  -239,  -239, 
    1626     -239,     0,  -239,  -239,  -239,  -239,  -239,  -238,  -238,  -238, 
    1627     -238,  -238,  -238,     0,  -238,  -238,  -238,  -238,  -238,  -238, 
    1628        0,  -238,  -238,  -238,  -238,  -238,     0,     0,     0,   390, 
    1629      391,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1630        0,     0,     0,     0,     0,     0,     0,     0,     0,   390, 
    1631      391,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1632        0,     0,     0,     0,     0,     0,     0,     0,     0,   390, 
     1242     382,   383,   384,     0,   385,   386,   387,   388,   389,   390, 
     1243     391,     0,     0,     0,     0,   462,     0,     0,     0,     0, 
     1244       0,     0,     0,     0,     0,     0,     0,     0,   614,   390, 
     1245     391,   871,   373,   374,   375,   376,   377,   378,     0,   379, 
     1246     380,   381,   382,   383,   384,     0,   385,   386,   387,   388, 
     1247     389,   927,   373,   374,   375,   376,   377,   378,     0,   379, 
     1248     380,   381,   382,   383,   384,     0,   385,   386,   387,   388, 
     1249     389,   997,   373,   374,   375,   376,   377,   378,     0,   379, 
     1250     380,   381,   382,   383,   384,     0,   385,   386,   387,   388, 
     1251     389,  1031,   373,   374,   375,   376,   377,   378,     0,   379, 
     1252     380,   381,   382,   383,   384,     0,   385,   386,   387,   388, 
     1253     389,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1254       0,     0,     0,     0,     0,     0,     0,   579,   390,   391, 
     1255       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1256       0,     0,     0,     0,     0,     0,     0,     0,   586,   390, 
    16331257     391,   373,   374,   375,   376,   377,   378,     0,   379,   380, 
    16341258     381,   382,   383,   384,     0,   385,   386,   387,   388,   389, 
    1635      373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
    1636      382,   383,   384,     0,   385,   386,   387,   388,   389,     0, 
    1637        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1638        0,     0,     0,     0,     0,     0,     0,   599,   390,   391, 
    1639        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1640        0,     0,     0,     0,     0,     0,  -239,  -239,  -239,     0, 
    1641        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1642        0,     0,     0,     0,     0,  -238,  -238,  -238,   373,   374, 
    1643      375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
    1644      384,     0,   385,   386,   387,   388,   389,   373,   374,   375, 
    1645      376,   377,   378,     0,   379,   380,   381,   382,   383,   384, 
    1646        0,   385,   386,   387,   388,   389,   373,   374,   375,   376, 
    1647      377,   378,     0,   379,   380,   381,   382,   383,   384,     0, 
    1648      385,   386,   387,   388,   389,     0,     0,     0,     0,   613, 
     1259    -240,  -240,  -240,  -240,  -240,  -240,     0,  -240,  -240,  -240, 
     1260    -240,  -240,  -240,     0,  -240,  -240,  -240,  -240,  -240,     0, 
     1261       0,   390,   391,     0,     0,     0,     0,     0,     0,     0, 
     1262       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1263       0,   390,   391,     0,     0,     0,     0,     0,     0,     0, 
     1264       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1265       0,   390,   391,     0,     0,     0,     0,     0,     0,     0, 
     1266       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1267       0,   390,   391,  -239,  -239,  -239,  -239,  -239,  -239,     0, 
     1268    -239,  -239,  -239,  -239,  -239,  -239,     0,  -239,  -239,  -239, 
     1269    -239,  -239,   373,   374,   375,   376,   377,   378,     0,   379, 
     1270     380,   381,   382,   383,   384,     0,   385,   386,   387,   388, 
     1271     389,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1272       0,     0,     0,     0,     0,     0,     0,     0,     0,   600, 
    16491273     390,   391,     0,     0,     0,     0,     0,     0,     0,     0, 
    1650        0,     0,     0,     0,     0,     0,     0,     0,   650,   390, 
    1651      391,   373,   374,   375,   376,   377,   378,     0,   379,   380, 
     1274       0,     0,     0,     0,     0,     0,     0,     0,  -240,  -240, 
     1275    -240,   373,   374,   375,   376,   377,   378,     0,   379,   380, 
    16521276     381,   382,   383,   384,     0,   385,   386,   387,   388,   389, 
    1653      373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
    1654      382,   383,   384,     0,   385,   386,   387,   388,   389,   373, 
    1655      374,   375,   376,   377,   378,     0,   379,   380,   381,   382, 
    1656      383,   384,     0,   385,   386,   387,   388,   389,     0,     0, 
    1657        0,     0,     0,     0,   135,   136,     0,     0,     0,     0, 
    1658      137,   138,   139,   140,   141,     0,   653,   390,   391,     0, 
    1659        0,     0,     0,     0,     0,   142,   143,   144,   145,   146, 
    1660      147,   148,   399,   149,   150,   151,   390,   391,   152,   153, 
    1661      154,     0,   155,   156,   157,   158,   159,     0,   160,     0, 
    1662        0,     0,     0,     0,   779,   390,   391,   373,   374,   375, 
    1663      376,   377,   378,     0,   379,   380,   381,   382,   383,   384, 
    1664        0,   385,   386,   387,   388,   389,   373,   374,   375,   376, 
    1665      377,   378,     0,   379,   380,   381,   382,   383,   384,     0, 
    1666      385,   386,   387,   388,   389,     0,     0,     0,     0,   780, 
    1667      390,   391,     0,   162,     0,     0,     0,     0,     0,   163, 
    1668      164,     0,     0,     0,     0,   165,     0,     0,   781,   390, 
    1669      391,     0,     0,     0,   166,   167,     0,   168,   169,     0, 
    1670        0,   918,   171,   562,     0,     0,     0,   782,   390,   391, 
    16711277     373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
    16721278     382,   383,   384,     0,   385,   386,   387,   388,   389,   373, 
     
    16751281     375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
    16761282     384,     0,   385,   386,   387,   388,   389,     0,     0,     0, 
    1677        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1678        0,     0,     0,     0,     0,   783,   390,   391,     0,     0, 
    1679        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1680        0,     0,     0,     0,   784,   390,   391,   373,   374,   375, 
    1681      376,   377,   378,     0,   379,   380,   381,   382,   383,   384, 
    1682        0,   385,   386,   387,   388,   389,   373,   374,   375,   376, 
    1683      377,   378,     0,   379,   380,   381,   382,   383,   384,     0, 
    1684      385,   386,   387,   388,   389,   373,   374,   375,   376,   377, 
    1685      378,     0,   379,   380,   381,   382,   383,   384,     0,   385, 
    1686      386,   387,   388,   389,     0,     0,     0,     0,   785,   390, 
     1283       0,  -239,  -239,  -239,     0,     0,     0,     0,     0,     0, 
     1284       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1285     614,   390,   391,   373,   374,   375,   376,   377,   378,     0, 
     1286     379,   380,   381,   382,   383,   384,     0,   385,   386,   387, 
     1287     388,   389,   373,   374,   375,   376,   377,   378,     0,   379, 
     1288     380,   381,   382,   383,   384,     0,   385,   386,   387,   388, 
     1289     389,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1290       0,     0,     0,     0,     0,     0,     0,     0,     0,   651, 
     1291     390,   391,     0,     0,     0,     0,     0,     0,     0,     0, 
     1292       0,     0,     0,     0,     0,     0,     0,     0,   654,   390, 
    16871293     391,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1688        0,     0,     0,     0,     0,     0,     0,   786,   390,   391, 
    1689        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1690        0,     0,     0,     0,     0,     0,   787,   390,   391,   373, 
     1294       0,     0,     0,     0,   399,     0,     0,     0,   390,   391, 
     1295       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1296       0,     0,     0,     0,     0,     0,   780,   390,   391,   373, 
    16911297     374,   375,   376,   377,   378,     0,   379,   380,   381,   382, 
    16921298     383,   384,     0,   385,   386,   387,   388,   389,   373,   374, 
    16931299     375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
    16941300     384,     0,   385,   386,   387,   388,   389,     0,     0,     0, 
    1695        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1696        0,     0,     0,     0,     0,   788,   390,   391,     0,     0, 
    1697        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1698        0,     0,     0,     0,   789,   390,   391,     0,     0,     0, 
    1699        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1700        0,     0,     0,   790,   390,   391,   373,   374,   375,   376, 
    1701      377,   378,     0,   379,   380,   381,   382,   383,   384,     0, 
    1702      385,   386,   387,   388,   389,   373,   374,   375,   376,   377, 
    1703      378,     0,   379,   380,   381,   382,   383,   384,     0,   385, 
    1704      386,   387,   388,   389,   373,   374,   375,   376,   377,   378, 
    1705        0,   379,   380,   381,   382,   383,   384,     0,   385,   386, 
    1706      387,   388,   389,     0,     0,     0,     0,   791,   390,   391, 
    1707        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1708        0,     0,     0,     0,     0,     0,   852,   390,   391,   373, 
     1301       0,   781,   390,   391,     0,     0,     0,     0,     0,     0, 
     1302       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1303     782,   390,   391,   373,   374,   375,   376,   377,   378,     0, 
     1304     379,   380,   381,   382,   383,   384,     0,   385,   386,   387, 
     1305     388,   389,   373,   374,   375,   376,   377,   378,     0,   379, 
     1306     380,   381,   382,   383,   384,     0,   385,   386,   387,   388, 
     1307     389,   373,   374,   375,   376,   377,   378,     0,   379,   380, 
     1308     381,   382,   383,   384,     0,   385,   386,   387,   388,   389, 
     1309     373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
     1310     382,   383,   384,     0,   385,   386,   387,   388,   389,     0, 
     1311       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1312       0,     0,     0,     0,     0,     0,     0,   783,   390,   391, 
     1313       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1314       0,     0,     0,     0,     0,     0,   784,   390,   391,   373, 
     1315     374,   375,   376,   377,   378,     0,   379,   380,   381,   382, 
     1316     383,   384,     0,   385,   386,   387,   388,   389,   373,   374, 
     1317     375,   376,   377,   378,     0,   379,   380,   381,   382,   383, 
     1318     384,     0,   385,   386,   387,   388,   389,     0,     0,     0, 
     1319       0,   785,   390,   391,     0,     0,     0,     0,     0,     0, 
     1320       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1321     786,   390,   391,     0,     0,     0,     0,     0,     0,     0, 
     1322       0,     0,     0,     0,     0,     0,     0,     0,     0,   787, 
     1323     390,   391,     0,     0,     0,     0,     0,     0,     0,     0, 
     1324       0,     0,     0,     0,     0,     0,     0,     0,   788,   390, 
     1325     391,   373,   374,   375,   376,   377,   378,     0,   379,   380, 
     1326     381,   382,   383,   384,     0,   385,   386,   387,   388,   389, 
     1327     373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
     1328     382,   383,   384,     0,   385,   386,   387,   388,   389,     0, 
     1329       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1330       0,     0,     0,     0,     0,     0,     0,   789,   390,   391, 
     1331       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1332       0,     0,     0,     0,     0,     0,   790,   390,   391,   373, 
    17091333     374,   375,   376,   377,   378,     0,   379,   380,   381,   382, 
    17101334     383,   384,     0,   385,   386,   387,   388,   389,   373,   374, 
     
    17121336     384,     0,   385,   386,   387,   388,   389,   373,   374,   375, 
    17131337     376,   377,   378,     0,   379,   380,   381,   382,   383,   384, 
    1714        0,   385,   386,   387,   388,   389,     0,     0,     0,     0, 
    1715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1716        0,     0,     0,     0,   930,   390,   391,     0,     0,     0, 
    1717        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1718        0,     0,     0,   933,   390,   391,     0,     0,     0,     0, 
    1719        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1720        0,     0,   946,   390,   391,   373,   374,   375,   376,   377, 
    1721      378,     0,   379,   380,   381,   382,   383,   384,     0,   385, 
    1722      386,   387,   388,   389,     0,     0,     0,     0,     0,     0, 
    1723        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1724        0,     0,     0,     0,     0,   702,     0,   947,   390,   391, 
    1725        0,     0,   132,     0,     0,     0,     0,     0,     0,     0, 
    1726      133,   134,   703,     0,     0,     0,  1022,   390,   391,     0, 
    1727        0,     0,     0,     0,   135,   136,     0,     0,     0,     0, 
    1728      137,   138,   139,   140,   141,  1033,   390,   391,     0,     0, 
    1729        0,     0,     0,     0,     0,   142,   143,   144,   145,   146, 
     1338       0,   385,   386,   387,   388,   389,   373,   374,   375,   376, 
     1339     377,   378,     0,   379,   380,   381,   382,   383,   384,     0, 
     1340     385,   386,   387,   388,   389,     0,     0,     0,     0,   791, 
     1341     390,   391,     0,     0,     0,     0,     0,     0,     0,     0, 
     1342       0,     0,     0,     0,     0,     0,     0,     0,   792,   390, 
     1343     391,   373,   374,   375,   376,   377,   378,     0,   379,   380, 
     1344     381,   382,   383,   384,     0,   385,   386,   387,   388,   389, 
     1345     373,   374,   375,   376,   377,   378,     0,   379,   380,   381, 
     1346     382,   383,   384,     0,   385,   386,   387,   388,   389,     0, 
     1347       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1348       0,     0,     0,     0,     0,     0,     0,   853,   390,   391, 
     1349       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1350       0,     0,     0,     0,     0,     0,   931,   390,   391,     0, 
     1351       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1352       0,     0,     0,     0,     0,   934,   390,   391,     0,     0, 
     1353       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1354       0,     0,     0,     0,   947,   390,   391,   373,   374,   375, 
     1355     376,   377,   378,     0,   379,   380,   381,   382,   383,   384, 
     1356       0,   385,   386,   387,   388,   389,   373,   374,   375,   376, 
     1357     377,   378,     0,   379,   380,   381,   382,   383,   384,     0, 
     1358     385,   386,   387,   388,   389,     0,     0,   472,   473,   948, 
     1359     390,   391,     0,     0,   132,     0,     0,     0,     0,     0, 
     1360       0,     0,   133,   134,   474,     0,     0,     0,  1023,   390, 
     1361     391,     0,     0,     0,     0,     0,   135,   136,     0,     0, 
     1362       0,     0,   137,   138,   139,   140,   141,     0,     0,     0, 
     1363       0,     0,     0,     0,     0,     0,     0,   142,   143,   144, 
     1364     145,   146,   147,   148,     0,   149,   150,   151,     0,     0, 
     1365     152,   153,   154,     0,   155,   156,   157,   158,   159,     0, 
     1366     160,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1367       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1368       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1369       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1370       0,     0,     0,     0,     0,  1034,   390,   391,   161,     0, 
     1371       0,     0,     0,     0,     0,   162,     0,   472,   722,     0, 
     1372       0,   163,   164,     0,   132,   390,   391,   165,     0,     0, 
     1373       0,     0,   133,   134,   474,     0,   166,   167,     0,   168, 
     1374     169,     0,     0,   170,   171,   172,   135,   136,     0,     0, 
     1375       0,     0,   137,   138,   139,   140,   141,     0,     0,     0, 
     1376       0,     0,     0,     0,     0,     0,     0,   142,   143,   144, 
     1377     145,   146,   147,   148,     0,   149,   150,   151,     0,     0, 
     1378     152,   153,   154,     0,   155,   156,   157,   158,   159,     0, 
     1379     160,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1380       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1381       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1382       0,     0,     0,     0,     0,     0,   472,     0,     0,     0, 
     1383       0,     0,     0,   132,     0,     0,     0,     0,   161,     0, 
     1384       0,   133,   134,   474,     0,   162,     0,     0,     0,     0, 
     1385       0,   163,   164,     0,     0,   135,   136,   165,     0,     0, 
     1386       0,   137,   138,   139,   140,   141,   166,   167,     0,   168, 
     1387     169,     0,     0,   170,   171,   172,   142,   143,   144,   145, 
     1388     146,   147,   148,     0,   149,   150,   151,     0,     0,   152, 
     1389     153,   154,     0,   155,   156,   157,   158,   159,     0,   160, 
     1390       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1391       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1392       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1393       0,     0,     0,     0,     0,   472,     0,     0,     0,     0, 
     1394       0,     0,   132,     0,     0,     0,     0,   161,     0,     0, 
     1395     133,   134,   474,     0,   162,     0,     0,     0,     0,     0, 
     1396     163,   164,     0,     0,   135,   136,   165,     0,     0,     0, 
     1397     137,   138,   139,   140,   141,   166,   167,     0,   168,   169, 
     1398       0,     0,   527,   171,   172,   142,   143,   144,   145,   146, 
    17301399     147,   148,     0,   149,   150,   151,     0,     0,   152,   153, 
    1731      154,     0,   155,   156,   157,   158,   159,   439,   160,     0, 
    1732        0,     0,   440,   441,     0,   442,   443,     0,     0,     0, 
    1733        0,     0,     0,     0,     0,     0,     0,   444,   445,   446, 
    1734      447,   448,   449,   450,     0,   451,   452,   453,     0,     0, 
    1735      454,   455,   456,     0,   814,   457,   458,   459,   460,     0, 
    1736      461,   132,     0,     0,   390,   391,   161,     0,     0,   133, 
    1737      134,     0,     0,   162,     0,     0,     0,     0,     0,   163, 
     1400     154,     0,   155,   156,   157,   158,   159,     0,   160,     0, 
     1401       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1402       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1403       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1404       0,     0,     0,     0,   703,     0,     0,     0,     0,     0, 
     1405       0,   132,     0,     0,     0,     0,   161,     0,     0,   133, 
     1406     134,   704,     0,   162,     0,     0,     0,     0,     0,   163, 
    17381407     164,     0,     0,   135,   136,   165,     0,     0,     0,   137, 
    17391408     138,   139,   140,   141,   166,   167,     0,   168,   169,     0, 
     
    17421411       0,   155,   156,   157,   158,   159,     0,   160,     0,     0, 
    17431412       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1744        0,     0,     0,   462,     0,     0,     0,     0,     0,     0, 
    1745        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1746        0,     0,     0,   904,     0,     0,     0,     0,     0,     0, 
     1413       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1414       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1415       0,     0,     0,   815,     0,     0,     0,     0,     0,     0, 
    17471416     132,     0,     0,     0,     0,   161,     0,     0,   133,   134, 
    17481417       0,     0,   162,     0,     0,     0,     0,     0,   163,   164, 
     
    17551424       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    17561425       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1757        0,     0,   924,     0,     0,     0,     0,     0,     0,   132, 
     1426       0,     0,   905,     0,     0,     0,     0,     0,     0,   132, 
    17581427       0,     0,     0,     0,   161,     0,     0,   133,   134,     0, 
    17591428       0,   162,     0,     0,     0,     0,     0,   163,   164,     0, 
     
    17661435       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    17671436       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1768        0,     0,   472,     0,     0,     0,     0,     0,   132,     0, 
    1769        0,     0,     0,   161,     0,     0,   133,   134,   473,     0, 
     1437       0,   925,     0,     0,     0,     0,     0,     0,   132,     0, 
     1438       0,     0,     0,   161,     0,     0,   133,   134,     0,     0, 
    17701439     162,     0,     0,     0,     0,     0,   163,   164,     0,     0, 
    17711440     135,   136,   165,     0,     0,     0,   137,   138,   139,   140, 
     
    17771446       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    17781447       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1779        0,   632,     0,     0,     0,     0,     0,   132,     0,     0, 
    1780        0,     0,   161,     0,     0,   133,   134,     0,   633,   162, 
     1448       0,   633,     0,     0,     0,     0,     0,   132,     0,     0, 
     1449       0,     0,   161,     0,     0,   133,   134,     0,   634,   162, 
    17811450       0,     0,     0,     0,     0,   163,   164,     0,     0,   135, 
    17821451     136,   165,     0,     0,     0,   137,   138,   139,   140,   141, 
     
    17881457       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    17891458       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1790      721,     0,     0,     0,     0,     0,   132,     0,     0,     0, 
    1791        0,   161,     0,     0,   133,   134,   473,     0,   162,     0, 
     1459     616,     0,     0,     0,     0,     0,   132,     0,     0,     0, 
     1460       0,   161,     0,     0,   133,   134,     0,     0,   162,     0, 
    17921461       0,     0,     0,     0,   163,   164,     0,     0,   135,   136, 
    17931462     165,     0,     0,     0,   137,   138,   139,   140,   141,   166, 
     
    17981467       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    17991468       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1800        0,     0,     0,     0,     0,     0,     0,     0,     0,   615, 
     1469       0,     0,     0,     0,     0,     0,     0,     0,     0,   638, 
    18011470       0,     0,     0,     0,     0,   132,     0,     0,     0,     0, 
    18021471     161,     0,     0,   133,   134,     0,     0,   162,     0,     0, 
     
    18091478       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    18101479       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1811        0,     0,     0,     0,     0,     0,     0,     0,   637,     0, 
     1480       0,     0,     0,     0,     0,     0,     0,     0,   640,     0, 
    18121481       0,     0,     0,     0,   132,     0,     0,     0,     0,   161, 
    18131482       0,     0,   133,   134,     0,     0,   162,     0,     0,     0, 
     
    18201489       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    18211490       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1822        0,     0,     0,     0,     0,     0,     0,   639,     0,     0, 
     1491       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    18231492       0,     0,     0,   132,     0,     0,     0,     0,   161,     0, 
    18241493       0,   133,   134,     0,     0,   162,     0,     0,     0,     0, 
     
    18321501       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    18331502       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1503       0,     0,     0,     0,     0,     0,     0,   161,     0,     0, 
     1504       0,     0,     0,     0,   162,     0,     0,     0,     0,     0, 
     1505     163,   164,     0,     0,     0,     0,   165,     0,     0,     0, 
     1506       0,     0,     0,     0,     0,   166,   167,   132,   168,   169, 
     1507       0,     0,   170,   171,   172,   133,   134,   661,   173,   662, 
     1508       0,     0,     0,     0,     0,     0,     0,     0,     0,   135, 
     1509     136,     0,     0,     0,     0,   137,   138,   139,   140,   141, 
     1510       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1511     142,   143,   144,   145,   146,   147,   148,     0,   149,   150, 
     1512     151,     0,     0,   152,   153,   154,     0,   155,   156,   157, 
     1513     158,   159,     0,   160,     0,     0,     0,     0,     0,     0, 
     1514       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1515       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1516       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1517       0,     0,     0,     0,     0,     0,   132,     0,     0,     0, 
     1518       0,   161,     0,     0,   133,   134,   549,     0,   162,     0, 
     1519       0,     0,     0,     0,   163,   164,     0,     0,   135,   136, 
     1520     165,     0,     0,     0,   137,   138,   139,   140,   141,   166, 
     1521     167,     0,   168,   169,     0,     0,   170,   171,   663,   142, 
     1522     143,   144,   145,   146,   147,   148,     0,   149,   150,   151, 
     1523       0,     0,   152,   153,   154,     0,   155,   156,   157,   158, 
     1524     159,     0,   160,     0,     0,     0,     0,     0,     0,     0, 
     1525       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1526       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1527       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1528       0,     0,     0,     0,     0,   132,     0,     0,     0,     0, 
     1529     161,     0,     0,   133,   134,   727,     0,   162,     0,     0, 
     1530       0,     0,     0,   163,   164,     0,     0,   135,   136,   165, 
     1531       0,     0,     0,   137,   138,   139,   140,   141,   166,   167, 
     1532       0,   168,   169,     0,     0,   170,   171,   172,   142,   143, 
     1533     144,   145,   146,   147,   148,     0,   149,   150,   151,     0, 
     1534       0,   152,   153,   154,     0,   155,   156,   157,   158,   159, 
     1535       0,   160,     0,     0,     0,     0,     0,     0,     0,     0, 
     1536       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1537       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1538       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1539       0,     0,     0,     0,     0,     0,     0,     0,     0,   161, 
     1540       0,     0,     0,     0,     0,     0,   162,     0,     0,     0, 
     1541       0,     0,   163,   164,     0,   132,     0,     0,   165,     0, 
     1542       0,     0,     0,   133,   134,     0,     0,   166,   167,     0, 
     1543     168,   169,     0,     0,   170,   171,   172,   135,   136,     9, 
     1544       0,     0,     0,   137,   138,   139,   140,   141,     0,     0, 
     1545       0,     0,     0,     0,     0,     0,     0,     0,   142,   143, 
     1546     144,   145,   146,   147,   148,     0,   149,   150,   151,     0, 
     1547       0,   152,   153,   154,     0,   155,   156,   157,   158,   159, 
     1548       0,   160,     0,     0,     0,     0,     0,     0,     0,     0, 
     1549       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1550       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1551       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1552       0,     0,     0,     0,   132,     0,     0,     0,     0,   161, 
     1553       0,     0,   133,   134,   704,     0,   162,     0,     0,     0, 
     1554       0,     0,   163,   164,     0,     0,   135,   136,   165,     0, 
     1555       0,     0,   137,   138,   139,   140,   141,   166,   167,     0, 
     1556     168,   169,     0,     0,   170,   171,   172,   142,   143,   144, 
     1557     145,   146,   147,   148,     0,   149,   150,   151,     0,     0, 
     1558     152,   153,   154,     0,   155,   156,   157,   158,   159,     0, 
     1559     160,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1560       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1561       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1562       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1563       0,     0,     0,   132,     0,     0,     0,     0,   161,     0, 
     1564       0,   133,   134,  1012,     0,   162,     0,     0,     0,     0, 
     1565       0,   163,   164,     0,     0,   135,   136,   165,     0,     0, 
     1566       0,   137,   138,   139,   140,   141,   166,   167,     0,   168, 
     1567     169,     0,     0,   170,   171,   172,   142,   143,   144,   145, 
     1568     146,   147,   148,     0,   149,   150,   151,     0,     0,   152, 
     1569     153,   154,     0,   155,   156,   157,   158,   159,     0,   160, 
     1570       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1571       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1572       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1573       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    18341574       0,     0,   132,     0,     0,     0,     0,   161,     0,     0, 
    18351575     133,   134,     0,     0,   162,     0,     0,     0,     0,     0, 
     
    18431583       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    18441584       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1845        0,     0,     0,     0,     0,     0,   161,     0,     0,     0, 
    1846        0,     0,     0,   162,     0,     0,     0,     0,     0,   163, 
    1847      164,     0,     0,     0,     0,   165,     0,     0,     0,     0, 
    1848        0,     0,     0,     0,   166,   167,   132,   168,   169,     0, 
    1849        0,   170,   171,   172,   133,   134,   660,   173,   661,     0, 
    1850        0,     0,     0,     0,     0,     0,     0,     0,   135,   136, 
    1851        0,     0,     0,     0,   137,   138,   139,   140,   141,     0, 
    1852        0,     0,     0,     0,     0,     0,     0,     0,     0,   142, 
    1853      143,   144,   145,   146,   147,   148,     0,   149,   150,   151, 
    1854        0,     0,   152,   153,   154,     0,   155,   156,   157,   158, 
    1855      159,     0,   160,     0,     0,     0,     0,     0,     0,     0, 
    1856        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1857        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1858        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1859        0,     0,     0,     0,     0,   132,     0,     0,     0,     0, 
    1860      161,     0,     0,   133,   134,   473,     0,   162,     0,     0, 
    1861        0,     0,     0,   163,   164,     0,     0,   135,   136,   165, 
    1862        0,     0,     0,   137,   138,   139,   140,   141,   166,   167, 
    1863        0,   168,   169,     0,     0,   170,   171,   662,   142,   143, 
    1864      144,   145,   146,   147,   148,     0,   149,   150,   151,     0, 
    1865        0,   152,   153,   154,     0,   155,   156,   157,   158,   159, 
    1866        0,   160,     0,     0,     0,     0,     0,     0,     0,     0, 
    1867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1868        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1869        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1870        0,     0,     0,     0,   132,     0,     0,     0,     0,   161, 
    1871        0,     0,   133,   134,   548,     0,   162,     0,     0,     0, 
    1872        0,     0,   163,   164,     0,     0,   135,   136,   165,     0, 
    1873        0,     0,   137,   138,   139,   140,   141,   166,   167,     0, 
    1874      168,   169,     0,     0,   526,   171,   172,   142,   143,   144, 
    1875      145,   146,   147,   148,     0,   149,   150,   151,     0,     0, 
    1876      152,   153,   154,     0,   155,   156,   157,   158,   159,     0, 
    1877      160,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1878        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1879        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1880        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1881        0,     0,     0,   132,     0,     0,     0,     0,   161,     0, 
    1882        0,   133,   134,   473,     0,   162,     0,     0,     0,     0, 
    1883        0,   163,   164,     0,     0,   135,   136,   165,     0,     0, 
    1884        0,   137,   138,   139,   140,   141,   166,   167,     0,   168, 
    1885      169,     0,     0,   170,   171,   172,   142,   143,   144,   145, 
    1886      146,   147,   148,     0,   149,   150,   151,     0,     0,   152, 
    1887      153,   154,     0,   155,   156,   157,   158,   159,     0,   160, 
    1888        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1889        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1890        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1891        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1892        0,     0,   132,     0,     0,     0,     0,   161,     0,     0, 
    1893      133,   134,   726,     0,   162,     0,     0,     0,     0,     0, 
    1894      163,   164,     0,     0,   135,   136,   165,     0,     0,     0, 
    1895      137,   138,   139,   140,   141,   166,   167,     0,   168,   169, 
    1896        0,     0,   170,   171,   172,   142,   143,   144,   145,   146, 
    1897      147,   148,     0,   149,   150,   151,     0,     0,   152,   153, 
    1898      154,     0,   155,   156,   157,   158,   159,     0,   160,     0, 
    1899        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1900        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1901        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1902        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1903        0,     0,     0,     0,     0,     0,   161,     0,     0,     0, 
    1904        0,     0,     0,   162,     0,     0,     0,     0,     0,   163, 
    1905      164,     0,   132,     0,     0,   165,     0,     0,     0,     0, 
    1906      133,   134,     0,     0,   166,   167,     0,   168,   169,     0, 
    1907        0,   170,   171,   172,   135,   136,     9,     0,     0,     0, 
    1908      137,   138,   139,   140,   141,     0,     0,     0,     0,     0, 
    1909        0,     0,     0,     0,     0,   142,   143,   144,   145,   146, 
    1910      147,   148,     0,   149,   150,   151,     0,     0,   152,   153, 
    1911      154,     0,   155,   156,   157,   158,   159,     0,   160,     0, 
    1912        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1913        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1914        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1915        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    19161585       0,   132,     0,     0,     0,     0,   161,     0,     0,   133, 
    1917      134,   703,     0,   162,     0,     0,     0,     0,     0,   163, 
     1586     134,     0,     0,   162,     0,     0,     0,     0,     0,   163, 
    19181587     164,     0,     0,   135,   136,   165,     0,     0,     0,   137, 
    19191588     138,   139,   140,   141,   166,   167,     0,   168,   169,     0, 
     
    19261595       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    19271596     132,     0,     0,     0,     0,   161,     0,     0,   133,   134, 
    1928     1011,     0,   162,     0,     0,     0,     0,     0,   163,   164, 
     1597       0,     0,   162,     0,     0,     0,     0,     0,   163,   164, 
    19291598       0,     0,   135,   136,   165,     0,     0,     0,   137,   138, 
    19301599     139,   140,   141,   166,   167,     0,   168,   169,     0,     0, 
    1931      170,   171,   172,   142,   143,   144,   145,   146,   147,   148, 
     1600     170,   171,   363,   142,   143,   144,   145,   146,   147,   148, 
    19321601       0,   149,   150,   151,     0,     0,   152,   153,   154,     0, 
    19331602     155,   156,   157,   158,   159,     0,   160,     0,     0,     0, 
     
    19401609       0,   135,   136,   165,     0,     0,     0,   137,   138,   139, 
    19411610     140,   141,   166,   167,     0,   168,   169,     0,     0,   170, 
    1942      171,   172,   142,   143,   144,   145,   146,   147,   148,     0, 
     1611     431,   172,   142,   143,   144,   145,   146,   147,   148,     0, 
    19431612     149,   150,   151,     0,     0,   152,   153,   154,     0,   155, 
    19441613     156,   157,   158,   159,     0,   160,     0,     0,     0,     0, 
     
    19501619     162,     0,     0,     0,     0,     0,   163,   164,     0,     0, 
    19511620     135,   136,   165,     0,     0,     0,   137,   138,   139,   140, 
    1952      141,   166,   167,     0,   168,   169,     0,     0,   170,   171, 
    1953      172,   142,   143,   144,   145,   146,   147,   148,     0,   149, 
     1621     141,   166,   167,     0,   168,   169,     0,     0,   170,   530, 
     1622     531,   142,   143,   144,   145,   146,   147,   148,     0,   149, 
    19541623     150,   151,     0,     0,   152,   153,   154,     0,   155,   156, 
    19551624     157,   158,   159,     0,   160,     0,     0,     0,     0,     0, 
     
    19611630       0,     0,     0,     0,     0,   163,   164,     0,     0,   135, 
    19621631     136,   165,     0,     0,     0,   137,   138,   139,   140,   141, 
    1963      166,   167,     0,   168,   169,     0,     0,   170,   171,   363, 
     1632     166,   167,     0,   168,   169,     0,     0,   919,   171,   363, 
    19641633     142,   143,   144,   145,   146,   147,   148,     0,   149,   150, 
    19651634     151,     0,     0,   152,   153,   154,     0,   155,   156,   157, 
     
    19681637       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    19691638       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1970        0,     0,     0,     0,     0,     0,   132,     0,     0,     0, 
    1971        0,   161,     0,     0,   133,   134,     0,     0,   162,     0, 
    1972        0,     0,     0,     0,   163,   164,     0,     0,   135,   136, 
    1973      165,     0,     0,     0,   137,   138,   139,   140,   141,   166, 
    1974      167,     0,   168,   169,     0,     0,   170,   431,   172,   142, 
    1975      143,   144,   145,   146,   147,   148,     0,   149,   150,   151, 
    1976        0,     0,   152,   153,   154,     0,   155,   156,   157,   158, 
    1977      159,     0,   160,     0,     0,     0,     0,     0,     0,     0, 
    1978        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1979        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1980        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1981        0,     0,     0,     0,     0,   132,     0,     0,     0,     0, 
    1982      161,     0,     0,   133,   134,     0,     0,   162,     0,     0, 
    1983        0,     0,     0,   163,   164,     0,     0,   135,   136,   165, 
    1984        0,     0,     0,   137,   138,   139,   140,   141,   166,   167, 
    1985        0,   168,   169,     0,     0,   170,   529,   530,   142,   143, 
    1986      144,   145,   146,   147,   148,     0,   149,   150,   151,     0, 
    1987        0,   152,   153,   154,     0,   155,   156,   157,   158,   159, 
    1988        0,   160,     0,     0,     0,     0,     0,     0,     0,     0, 
    1989        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1990        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1991        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    1992        0,     0,     0,     0,   132,     0,     0,     0,     0,   161, 
    1993        0,     0,   133,   134,     0,     0,   162,     0,     0,     0, 
    1994        0,     0,   163,   164,     0,     0,   135,   136,   165,     0, 
    1995        0,     0,   137,   138,   139,   140,   141,   166,   167,     0, 
    1996      168,   169,     0,     0,   918,   171,   363,   142,   143,   144, 
    1997      145,   146,   147,   148,     0,   149,   150,   151,     0,     0, 
    1998      152,   153,   154,     0,   155,   156,   157,   158,   159,     0, 
    1999      160,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2000        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2001        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2002        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2003        0,     0,     0,     0,     0,     0,     0,     0,   161,     0, 
    2004        0,     0,     0,     0,     0,   162,     0,     0,     0,     0, 
    2005        0,   163,   164,     0,     0,     0,     0,   165,     0,     0, 
    2006        0,     0,     0,     0,     0,     0,   166,   167,     0,   168, 
    2007      169,     0,     0,   170,   171,   955,   311,   312,   422,     0, 
    2008      423,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2009      135,   136,     0,     0,     0,     0,   137,   138,   139,   140, 
    2010      141,     0,     0,   314,   315,   316,   317,   318,     0,   319, 
    2011      320,   142,   143,   144,   145,   146,   147,   148,     0,   149, 
    2012      150,   151,     0,     0,   152,   153,   154,     0,   155,   156, 
    2013      157,   158,   159,     0,   160,     0,     0,     0,     0,     0, 
    2014        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2015        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2016        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2017        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2018        0,     0,     0,     0,     0,     0,     0,     0,     0,   162, 
    2019        0,     0,     0,     0,     0,   163,   164,     0,     0,     0, 
    2020        0,   165,     0,     0,     0,     0,   311,   312,   313,     0, 
    2021      166,   167,     0,   168,   169,     0,     0,   321,   171,   424, 
    2022      135,   136,     0,     0,     0,     0,   137,   138,   139,   140, 
    2023      141,     0,     0,   314,   315,   316,   317,   318,     0,   319, 
    2024      320,   142,   143,   144,   145,   146,   147,   148,     0,   149, 
    2025      150,   151,   311,   312,   152,   153,   154,     0,   155,   156, 
    2026      157,   158,   159,     0,   160,     0,   135,   136,     0,     0, 
    2027        0,     0,   137,   138,   139,   140,   141,     0,     0,   314, 
    2028      315,   316,   317,   318,     0,   319,   320,   142,   143,   144, 
    2029      145,   146,   147,   148,     0,   149,   150,   151,     0,     0, 
    2030      152,   153,   154,     0,   155,   156,   157,   158,   159,     0, 
    2031      160,     0,     0,     0,     0,     0,     0,     0,     0,   162, 
    2032        0,     0,     0,     0,     0,   163,   164,     0,     0,     0, 
    2033        0,   165,     0,     0,     0,     0,     0,     0,     0,     0, 
    2034      166,   167,     0,   168,   169,     0,     0,   321,   171,   322, 
    2035        0,     0,     0,     0,     0,     0,     5,     0,     0,     6, 
    2036        0,     7,     0,     8,     0,   162,     9,     0,     0,     0, 
    2037        0,   163,   164,     0,     0,     0,    10,   165,     0,     0, 
    2038        0,     0,     0,     0,     0,     0,   166,   167,     0,   168, 
    2039      169,     0,    11,   321,   171,   424,    12,    13,     0,     0, 
     1639       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1640       0,   161,     0,     0,     0,     0,     0,     0,   162,     0, 
     1641       0,     0,     0,     0,   163,   164,     0,     0,     0,     0, 
     1642     165,     0,     0,     0,     0,     0,     0,     0,     0,   166, 
     1643     167,     0,   168,   169,     0,     0,   170,   171,   956,   311, 
     1644     312,   422,     0,   423,     0,     0,     0,     0,     0,     0, 
     1645       0,     0,     0,   135,   136,     0,     0,     0,     0,   137, 
     1646     138,   139,   140,   141,     0,     0,   314,   315,   316,   317, 
     1647     318,     0,   319,   320,   142,   143,   144,   145,   146,   147, 
     1648     148,     0,   149,   150,   151,     0,     0,   152,   153,   154, 
     1649       0,   155,   156,   157,   158,   159,     0,   160,     0,     0, 
     1650       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1651       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1652       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1653       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1654       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1655       0,     0,   162,     0,     0,     0,     0,     0,   163,   164, 
     1656       0,     0,     0,     0,   165,     0,     0,     0,     0,   311, 
     1657     312,   313,     0,   166,   167,     0,   168,   169,     0,     0, 
     1658     321,   171,   424,   135,   136,     0,     0,     0,     0,   137, 
     1659     138,   139,   140,   141,     0,     0,   314,   315,   316,   317, 
     1660     318,     0,   319,   320,   142,   143,   144,   145,   146,   147, 
     1661     148,     0,   149,   150,   151,   311,   312,   152,   153,   154, 
     1662       0,   155,   156,   157,   158,   159,     0,   160,     0,   135, 
     1663     136,     0,     0,     0,     0,   137,   138,   139,   140,   141, 
     1664       0,     0,   314,   315,   316,   317,   318,     0,   319,   320, 
     1665     142,   143,   144,   145,   146,   147,   148,     0,   149,   150, 
     1666     151,     0,     0,   152,   153,   154,     0,   155,   156,   157, 
     1667     158,   159,     0,   160,     0,     0,     0,     0,     0,     0, 
     1668       0,     0,   162,     0,     0,     0,     0,     0,   163,   164, 
     1669       0,     0,     0,     0,   165,     0,     0,     0,     0,     0, 
     1670       0,     0,     0,   166,   167,     0,   168,   169,     0,     0, 
     1671     321,   171,   322,     0,     0,     0,     0,     0,     0,     5, 
     1672       0,     0,     6,     0,     7,     0,     8,     0,   162,     9, 
     1673       0,     0,     0,     0,   163,   164,     0,     0,     0,    10, 
     1674     165,     0,     0,     0,     0,     0,     0,     0,     0,   166, 
     1675     167,     0,   168,   169,     0,    11,   321,   171,   424,    12, 
     1676      13,     0,     0,     0,    14,     0,     0,     0,     0,     0, 
     1677      15,     0,    16,    17,     0,    18,     0,     0,     0,     0, 
     1678      19,    20,    21,    22,    23,     0,    24,    25,     0,     0, 
     1679      26,    27,    28,    29,    30,    31,    32,    33,    34,    35, 
     1680      36,     0,    37,     0,    38,    39,     0,     0,    40,    41, 
     1681      42,     0,    43,     0,    44,     0,     0,    45,    46,     0, 
     1682       0,    47,    48,    49,     0,     0,     0,     0,     0,     0, 
     1683       0,    50,     0,     0,     0,    52,    53,    54,    55,    56, 
     1684      57,    58,    59,    60,    61,    62,    63,     0,     0,    64, 
     1685       0,     0,    65,    66,    67,    68,     5,     0,     0,     6, 
     1686     488,     7,     0,     8,     0,     0,     9,     0,     0,     0, 
     1687       0,     0,     0,     0,     0,     0,    10,     0,     0,     0, 
     1688       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1689       0,     0,    11,     0,     0,     0,    12,    13,     0,     0, 
    20401690       0,    14,     0,     0,     0,     0,     0,    15,     0,    16, 
    20411691      17,     0,    18,     0,     0,     0,     0,    19,    20,    21, 
     
    20461696      49,     0,     0,     0,     0,     0,     0,     0,    50,     0, 
    20471697       0,     0,    52,    53,    54,    55,    56,    57,    58,    59, 
    2048       60,    61,    62,    63,     0,     0,    64,     0,     0,    65, 
    2049       66,    67,    68,     5,     0,     0,     6,   487,     7,     0, 
    2050        8,     0,     0,     9,     0,     0,     0,     0,     0,     0, 
    2051        0,     0,     0,    10,     0,     0,     0,     0,     0,     0, 
    2052        0,     0,     0,     0,     0,     0,     0,     0,     0,    11, 
    2053        0,     0,     0,    12,    13,     0,     0,     0,    14,     0, 
    2054        0,     0,     0,     0,    15,     0,    16,    17,     0,    18, 
    2055        0,     0,     0,     0,    19,    20,    21,    22,    23,     0, 
    2056       24,    25,     0,     0,    26,    27,    28,    29,    30,    31, 
    2057       32,    33,    34,    35,    36,     0,    37,     0,    38,    39, 
    2058        0,     0,    40,    41,    42,     0,    43,     0,    44,     0, 
    2059        0,    45,    46,     0,     0,    47,    48,    49,     0,     0, 
    2060        0,     0,     0,     0,     0,    50,     0,     0,     0,    52, 
    2061       53,    54,    55,    56,    57,    58,    59,    60,    61,    62, 
    2062       63,     8,     0,    64,     9,     0,    65,    66,    67,    68, 
    2063        0,     0,     0,     0,    10,     0,     0,     0,     0,     0, 
    2064        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1698      60,    61,    62,    63,     0,     0,    64,   135,   136,    65, 
     1699      66,    67,    68,   137,   138,   139,   140,   141,     0,     0, 
     1700       0,     0,     0,     0,     0,     0,     0,     0,   142,   143, 
     1701     144,   145,   146,   147,   148,     0,   149,   150,   151,     0, 
     1702       0,   152,   153,   154,     0,   155,   156,   157,   158,   159, 
     1703       0,   160,   135,   136,     0,     0,     0,     0,   137,   138, 
     1704     139,   140,   141,     0,     0,     0,     0,     0,     0,     0, 
     1705       0,     0,     0,   142,   143,   144,   145,   146,   147,   148, 
     1706       0,   149,   150,   151,     0,     0,   152,   153,   154,     0, 
     1707     155,   156,   157,   158,   159,     0,   160,     0,     0,     0, 
     1708       0,     0,     0,     0,     0,     0,   162,     0,     0,     0, 
     1709       0,     0,   163,   164,     0,     0,     0,     0,   165,     0, 
     1710       0,     0,     0,     0,     0,     0,     0,   166,   167,     0, 
     1711     168,   169,     0,     0,   170,   171,   563,     0,     0,     8, 
     1712       0,     0,     9,     0,     0,     0,     0,     0,     0,     0, 
     1713       0,   162,    10,     0,     0,     0,     0,   163,   164,     0, 
     1714       0,     0,     0,   165,     0,     0,     0,     0,    11,     0, 
     1715       0,     0,   166,   167,     0,   168,   169,     0,     0,   919, 
     1716     171,   563,     0,    15,     0,     0,     0,     0,    18,     0, 
     1717     747,     0,     0,    19,    20,    21,    22,    23,     0,     0, 
     1718      25,     0,     0,    26,    27,    28,    29,    30,    31,    32, 
     1719      33,    34,    35,     0,     0,     8,     0,     0,     9,     0, 
     1720       0,     0,    41,     0,     0,     0,     0,    44,    10,     0, 
     1721       0,     0,     0,     0,    47,     0,    49,     0,     0,     0, 
     1722       0,     0,     0,     0,    11,     0,     0,     0,     0,     0, 
     1723       0,     0,     0,     0,     0,    59,    60,    61,    62,    15, 
     1724       0,     0,     0,     0,    18,     0,     0,    67,    68,    19, 
     1725      20,    21,    22,    23,     0,     0,    25,     0,     0,    26, 
     1726      27,    28,    29,    30,    31,    32,    33,    34,    35,     0, 
     1727       0,     0,     0,     0,   826,     0,     0,     0,    41,     0, 
     1728       0,     0,     0,    44,     0,     0,     0,     0,     0,     0, 
     1729      47,     0,    49,     0,     0,     0,     0,     0,     0,     0, 
    20651730      11,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2066        0,     0,     0,     0,     0,    15,     0,     0,     0,     0, 
    2067       18,     0,   746,     0,     0,    19,    20,    21,    22,    23, 
     1731       0,    59,    60,    61,    62,    15,     0,     0,     0,     0, 
     1732      18,   827,     0,    67,    68,    19,    20,   828,     0,    23, 
    20681733       0,     0,    25,     0,     0,    26,    27,    28,    29,    30, 
    2069       31,    32,    33,    34,    35,     0,     0,     8,     0,     0, 
    2070        9,     0,     0,     0,    41,     0,     0,     0,     0,    44, 
    2071       10,     0,     0,     0,     0,     0,    47,     0,    49,     0, 
     1734      31,    32,    33,    34,    35,     0,     0,     0,     0,     0, 
     1735     826,     0,     0,     0,    41,     0,     0,     0,     0,    44, 
     1736       0,     0,     0,     0,     0,     0,    47,     0,    49,     0, 
    20721737       0,     0,     0,     0,     0,     0,    11,     0,     0,     0, 
    20731738       0,     0,     0,     0,     0,     0,     0,    59,    60,    61, 
    2074       62,    15,     0,     0,     0,     0,    18,     0,     0,    67, 
    2075       68,    19,    20,    21,    22,    23,     0,     0,    25,     0, 
     1739      62,    15,     0,     0,     0,     0,    18,     0,     0,   170, 
     1740      68,    19,    20,   828,     0,    23,     0,     0,    25,     0, 
    20761741       0,    26,    27,    28,    29,    30,    31,    32,    33,    34, 
    2077       35,     0,     0,     0,     0,     0,   825,     0,     0,     0, 
     1742      35,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    20781743      41,     0,     0,     0,     0,    44,     0,     0,     0,     0, 
    20791744       0,     0,    47,     0,    49,     0,     0,     0,     0,     0, 
    2080        0,     0,    11,     0,     0,     0,     0,     0,     0,     0, 
    2081        0,     0,     0,    59,    60,    61,    62,    15,     0,     0, 
    2082        0,     0,    18,   826,     0,    67,    68,    19,    20,   827, 
    2083        0,    23,     0,     0,    25,     0,     0,    26,    27,    28, 
    2084       29,    30,    31,    32,    33,    34,    35,     0,     0,     0, 
    2085        0,     0,   825,     0,     0,     0,    41,     0,     0,     0, 
    2086        0,    44,     0,     0,     0,     0,     0,     0,    47,     0, 
    2087       49,     0,     0,     0,     0,     0,     0,     0,    11,     0, 
    2088        0,     0,     0,     0,     0,     0,     0,     0,     0,    59, 
    2089       60,    61,    62,    15,     0,     0,     0,     0,    18,     0, 
    2090        0,   170,    68,    19,    20,   827,     0,    23,     0,     0, 
    2091       25,     0,     0,    26,    27,    28,    29,    30,    31,    32, 
    2092       33,    34,    35,     0,     0,     0,     0,     0,     0,     0, 
    2093        0,     0,    41,     0,     0,     0,     0,    44,     0,     0, 
    2094        0,     0,     0,     0,    47,     0,    49,     0,     0,     0, 
    2095        0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
    2096        0,     0,     0,     0,     0,    59,    60,    61,    62,     0, 
    2097        0,     0,     0,     0,     0,     0,     0,   170,    68 
     1745       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, 
     1746       0,     0,     0,    59,    60,    61,    62,     0,     0,     0, 
     1747       0,     0,     0,     0,     0,   170,    68 
    20981748}; 
    2099  
    2100 #define yypact_value_is_default(Yystate) \ 
    2101   (!!((Yystate) == (-845))) 
    2102  
    2103 #define yytable_value_is_error(Yytable_value) \ 
    2104   (!!((Yytable_value) == (-542))) 
    21051749 
    21061750static const yytype_int16 yycheck[] = 
    21071751{ 
    2108       11,   295,     1,   185,    15,   101,   219,    18,   104,   240, 
    2109      394,   577,   108,   395,   277,   111,    54,   161,   482,   477, 
    2110      205,   536,   536,   653,   482,     5,   264,   124,   172,    79, 
    2111      268,    81,    82,   161,     3,     3,    86,     3,   274,   710, 
    2112       39,     3,   564,   565,     1,     3,   124,    17,   719,    75, 
    2113       76,     3,    51,    80,   124,   291,   563,   564,   565,     3, 
    2114       87,    19,    20,    21,     3,    31,   722,    37,    38,   768, 
    2115      214,     3,     3,   217,   214,   113,   363,   115,   116,   329, 
    2116       24,    21,     3,   161,   747,   124,   214,    21,     5,     6, 
    2117        7,     8,     9,    10,    51,    12,    13,    14,    15,    16, 
    2118       17,   127,    19,    20,    21,    22,    23,    27,     3,     3, 
    2119       22,   122,     3,     3,     3,   212,   213,   904,     3,   130, 
    2120      131,   132,   219,    21,     3,   112,     3,    45,     3,    44, 
    2121      141,   153,   976,     3,    24,   213,   214,    18,     3,     3, 
    2122      121,    22,   122,   213,   155,   101,    24,   131,   245,    24, 
    2123      161,   198,     3,     3,     3,     3,     3,     3,     3,    24, 
    2124        3,   172,    19,    20,    21,   131,   177,   131,   404,    91, 
    2125       88,    89,   119,   891,   221,   162,  1020,    18,   428,   160, 
    2126      191,    22,   166,   130,    21,    21,    22,    23,   168,   188, 
    2127      201,   202,   107,   115,   160,   140,   246,   142,   166,   168, 
    2128      987,   163,   166,   214,   160,   160,   217,   206,    23,   167, 
    2129      881,   163,   157,   931,   213,   914,   227,   161,   217,   363, 
    2130      160,   220,   166,   363,   163,   322,   225,   253,   884,   240, 
    2131      327,   163,   163,   167,   331,   363,     5,   900,   265,    24, 
    2132      160,   472,   163,   270,   322,   162,   273,   164,   165,   327, 
    2133      162,   168,   322,   331,   131,   254,   162,   327,   765,   766, 
    2134      767,   331,   140,    21,   162,   501,   502,   237,   163,   163, 
    2135      269,   161,   163,   509,   163,   286,   166,   288,   163,   160, 
    2136       21,     3,    24,   322,   163,   363,   161,   523,   166,   300, 
    2137      301,   166,   331,   163,   305,   526,   161,   254,   534,   163, 
    2138      485,   166,    44,   314,   315,   316,   317,   318,   319,   320, 
    2139      167,   561,   163,   163,   163,   163,   163,   163,   163,   160, 
    2140      163,   608,   609,   322,   611,   162,   576,   424,   164,   165, 
    2141      341,   796,   797,   798,   345,   346,   347,   348,   349,   350, 
    2142      351,   352,   353,   354,   355,   356,   424,    18,   162,   164, 
    2143      165,    22,   363,   122,   424,    18,    19,    20,    21,    22, 
    2144       23,   162,   373,   374,   375,   376,   377,   378,   379,   380, 
     1752      11,   295,     1,   185,    15,   101,   240,    18,   104,   578, 
     1753     205,   161,   108,   394,   277,   111,   537,   264,   478,   483, 
     1754     219,   268,   172,   483,   537,   395,   654,   124,    54,     1, 
     1755      17,   565,   566,   161,   564,   565,   566,     3,   274,   711, 
     1756      39,     5,   140,   723,   142,     3,   124,   748,   720,     3, 
     1757      37,    38,    51,     3,   124,   291,    18,     3,    80,   157, 
     1758      22,     3,    75,    76,   214,    87,     3,   217,     3,    19, 
     1759      20,    21,     3,     3,    19,    20,    21,   905,    24,    51, 
     1760       5,    21,    24,   161,     3,   124,   214,   113,   977,   115, 
     1761     116,    18,    21,   563,    31,   112,     3,   214,     3,   769, 
     1762     570,    44,    79,   101,    81,    82,    21,   892,   153,    86, 
     1763       3,   122,    31,   160,   127,   212,   213,    24,     3,   130, 
     1764     131,   132,   219,    24,     3,   162,     3,     3,     3,    18, 
     1765     141,    24,  1021,    22,   131,   213,   214,     3,     3,    22, 
     1766       3,     3,     3,   213,   155,   162,   363,   932,   245,    45, 
     1767     161,     3,     3,     3,     3,     3,     3,     3,   122,     3, 
     1768     988,   172,   160,    27,   107,   198,   177,   162,   404,   166, 
     1769     162,   491,     3,    18,    19,    20,    21,    22,    23,    21, 
     1770     191,    21,    22,    23,   160,   119,   162,    23,   221,   188, 
     1771     201,   202,    88,    89,   131,   122,   130,   122,   160,   162, 
     1772     901,   521,   168,   214,   168,   885,   217,   206,   166,   163, 
     1773     882,    21,   131,   363,   213,   161,   227,   167,   217,   161, 
     1774     166,   220,   167,   160,   166,   322,   225,   167,   163,   240, 
     1775     327,   160,   163,   163,   331,   363,   766,   767,   768,   473, 
     1776     253,   339,   340,   265,   322,   915,   363,   162,   270,   327, 
     1777     237,   273,   322,   331,   161,   254,   131,   327,   163,   166, 
     1778     358,   331,   360,   361,   362,   166,   502,   503,   161,   246, 
     1779     269,   160,   370,   166,   510,   286,    18,   288,   163,   162, 
     1780      22,    21,   254,   322,   163,   363,   163,   163,   524,   300, 
     1781     301,   486,   331,   527,   305,   126,   160,   163,   163,   535, 
     1782     163,   163,   163,   314,   315,   316,   317,   318,   319,   320, 
     1783      24,   163,   163,   163,   163,   163,   163,   163,   163,   163, 
     1784     162,   121,   133,   322,   164,   165,   329,   424,   164,   165, 
     1785     341,    91,     3,   162,   345,   346,   347,   348,   349,   350, 
     1786     351,   352,   353,   354,   355,   356,   424,    94,    95,   160, 
     1787     160,    22,   363,   163,   424,   115,   797,   798,   799,   131, 
     1788     160,   160,   373,   374,   375,   376,   377,   378,   379,   380, 
    21451789     381,   382,   383,   384,   385,   386,   387,   388,   389,   390, 
    2146      391,   166,   846,    18,   395,   424,   530,     3,   846,   847, 
    2147      848,   849,   850,   915,   339,   340,   490,   160,   140,   162, 
    2148      162,     3,   160,  1033,   126,   163,    22,   133,   915,   659, 
    2149      133,   255,   256,   358,   425,   360,   361,   362,   162,   160, 
    2150       94,    95,   163,   153,   166,   370,   520,   663,   133,    31, 
    2151      162,   813,   162,   471,   160,   161,   562,   160,   282,     3, 
    2152      160,    78,    79,   569,   657,   495,   166,   543,   711,   914, 
    2153      500,   160,   836,   503,    18,   160,   669,   166,    22,   160, 
    2154       18,   472,   756,   701,    22,   562,  1032,   478,   162,    29, 
    2155      614,    31,   569,   162,   571,   572,   573,   574,   575,   160, 
    2156      491,   162,   718,   990,   562,   496,   160,   122,   131,   160, 
    2157      721,   569,   562,   571,   572,   573,   574,   575,     3,   569, 
    2158      163,   571,   572,   573,   574,   575,  1021,  1021,   693,   796, 
    2159      797,   798,   162,    18,   525,   526,   162,    22,   662,   530, 
    2160      770,   771,   772,   773,   774,   536,     3,  1042,  1042,   131, 
    2161      161,   162,   571,   572,   573,   574,   575,    83,   537,    85, 
    2162      539,    18,  1006,   123,   641,    22,   160,   546,  1006,   560, 
    2163        8,     9,    10,     4,    12,    13,    14,    15,    16,    17, 
    2164      657,    19,    20,    21,    22,    23,   577,   664,   579,   160, 
    2165      161,   162,   669,    18,    19,    20,    21,    22,    23,    18, 
    2166       19,    20,    21,    22,    23,   821,   664,    24,    41,    19, 
    2167       20,    21,    22,    23,   664,   161,   162,   608,   609,   166, 
    2168      611,   162,   163,   614,   615,   847,   848,   849,   850,   903, 
    2169      134,   135,   136,   683,    21,    22,    23,    19,    20,    83, 
    2170       84,   632,   633,    37,    38,     3,   637,     3,   639,   123, 
    2171      124,   160,   643,     3,   162,   162,   162,   819,   168,   162, 
    2172      162,   652,   738,   654,   740,   656,   162,   646,   162,   162, 
    2173      162,   662,   796,   749,   653,   886,   162,     3,   162,   162, 
    2174      162,   162,   162,   162,   675,   664,   677,   162,     3,   162, 
    2175      162,   768,   671,   162,   162,   162,   912,   162,   162,   132, 
    2176      691,   692,   160,     3,   160,   138,   139,   160,   982,   163, 
    2177      768,   702,     5,   160,     3,   160,   162,   160,   768,   160, 
    2178      153,   154,     3,   156,   157,   160,   164,   165,   161,   708, 
    2179      721,     5,     6,     7,     8,     9,    10,     3,    12,    13, 
    2180       14,    15,    16,    17,   160,    19,    20,    21,    22,    23, 
    2181        3,     5,   161,     3,     3,   163,     3,     3,   162,    22, 
    2182      751,     5,     3,     3,   163,   163,     3,     3,   163,   760, 
    2183      162,   160,   988,     3,   160,   163,     3,   162,     5,     6, 
    2184        7,     8,     9,    10,   162,    12,    13,    14,    15,    16, 
    2185       17,   162,    19,    20,    21,    22,    23,   162,   160,   163, 
    2186      161,     3,     3,    23,     3,   796,   797,   798,     3,     3, 
    2187      163,     4,   163,    22,   163,   163,   160,   893,    22,   162, 
    2188       26,    21,   813,   814,   163,   160,   902,   163,     4,    36, 
    2189      122,   955,     3,   160,   162,   160,    10,   914,    12,    13, 
    2190       14,    15,    16,    17,   160,    19,    20,    21,    22,    23, 
    2191      163,     3,   162,   162,     5,   163,   914,     5,   935,   163, 
    2192      162,   160,   163,   160,   914,   160,     4,   163,     3,   163, 
    2193       82,   122,   163,   163,     3,    22,   160,   868,   163,   870, 
    2194      167,   872,   160,   160,   163,   168,    82,   163,   163,   160, 
    2195      164,   165,    25,   160,   168,   886,   160,    22,   974,   160, 
    2196      891,    51,   254,   950,   485,   948,   897,    12,    13,    14, 
    2197       15,    16,    17,   904,    19,    20,    21,    22,    23,    12, 
    2198       13,    14,    15,    16,    17,   673,    19,    20,    21,    22, 
    2199       23,   677,   911,   924,   405,   926,   927,   164,   165,   481, 
    2200      931,   932,   505,   934,   480,    78,    79,    80,   260,   525, 
    2201      493,   289,   715,   944,    52,   868,   927,   397,   937,   959, 
    2202      870,   662,   890,  1016,   955,   985,   541,   757,   937,   960, 
    2203      961,   760,   664,   106,   435,   108,   109,   110,   124,    -1, 
    2204      113,   114,    -1,   116,   117,    -1,    -1,     0,     1,    -1, 
    2205      164,   165,    -1,    -1,   985,    -1,   987,    -1,    -1,    -1, 
    2206       -1,    -1,    -1,    -1,   983,   996,    -1,    -1,   999,    -1, 
    2207       -1,    24,    25,    -1,    -1,    28,    29,    30,    31,    32, 
    2208       -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2209     1021,    -1,    45,    -1,    -1,    -1,    -1,    -1,    -1,  1030, 
    2210       -1,  1032,    -1,  1034,  1035,  1024,    -1,    -1,    61,    -1, 
    2211       -1,  1042,    65,    66,  1033,    -1,    -1,    70,  1049,   164, 
    2212      165,    -1,    -1,    76,    -1,    78,    79,    -1,    81,    -1, 
    2213       -1,   164,   165,    86,    87,    88,    89,    90,    -1,    92, 
    2214       93,    -1,    -1,    96,    97,    98,    99,   100,   101,   102, 
    2215      103,   104,   105,   106,    -1,   108,    -1,   110,   111,    -1, 
    2216       -1,   114,   115,   116,    -1,   118,    -1,   120,    -1,    -1, 
    2217      123,   124,    -1,    -1,   127,   128,   129,    -1,    -1,    -1, 
    2218       -1,    -1,    -1,    -1,   137,    -1,    -1,   140,   141,   142, 
    2219      143,   144,   145,   146,   147,   148,   149,   150,   151,   152, 
    2220       -1,    -1,   155,    -1,    -1,   158,   159,   160,   161,    -1, 
    2221       -1,    -1,     3,   166,     5,     6,     7,     8,     9,    10, 
    2222       -1,    12,    13,    14,    15,    16,    17,    -1,    19,    20, 
    2223       21,    22,    23,     3,    -1,     5,     6,     7,     8,     9, 
     1790     391,   531,   916,   847,   395,   424,   916,   847,   848,   849, 
     1791     850,   851,   609,   610,   166,   612,     8,     9,    10,   162, 
     1792      12,    13,    14,    15,    16,    17,  1034,    19,    20,    21, 
     1793      22,    23,   153,   160,   425,    18,   255,   256,   160,    22, 
     1794     160,   162,   123,   163,   133,   428,   140,   162,   664,    10, 
     1795      24,    12,    13,    14,    15,    16,    17,   162,    19,    20, 
     1796      21,    22,    23,   282,   814,   471,   162,   160,   544,   712, 
     1797      44,   160,   166,   166,   160,   702,   837,   161,   162,   658, 
     1798     166,   991,   473,   757,  1033,   615,   563,    29,   479,    31, 
     1799     131,   670,     3,   570,   915,   572,   573,   574,   575,   576, 
     1800     133,   492,   160,   719,   162,   563,   497,    18,   722,    78, 
     1801      79,    22,   570,   563,   572,   573,   574,   575,   576,   694, 
     1802     570,  1022,   572,   573,   574,   575,   576,   160,   161,  1022, 
     1803       3,   162,    83,   663,    85,   526,   527,   161,   162,   496, 
     1804     531,   160,  1043,     3,   501,    18,   537,   504,     4,    22, 
     1805    1043,   162,   163,   572,   573,   574,   575,   576,    18,   538, 
     1806      24,   540,    22,  1007,   166,   642,   140,  1007,   547,     3, 
     1807     561,     3,   164,   165,    19,    20,    21,    22,    23,   562, 
     1808     160,   658,   848,   849,   850,   851,     3,   578,   665,   580, 
     1809      19,    20,   166,   670,   577,   160,   161,   162,    83,    84, 
     1810     797,   798,   799,   164,   165,   162,   822,   665,    41,    18, 
     1811      19,    20,    21,    22,    23,   665,    37,    38,   609,   610, 
     1812     168,   612,   123,   124,   615,   616,   134,   135,   136,   162, 
     1813     904,    21,    22,    23,   684,    18,    19,    20,    21,    22, 
     1814      23,   162,   633,   634,   162,   162,   162,   638,   162,   640, 
     1815     162,   160,   162,   644,     3,   162,   162,   162,   820,   162, 
     1816     162,   160,   653,   739,   655,   741,   657,   797,   647,   162, 
     1817     162,   162,   663,   887,   750,   654,   162,   660,   162,   162, 
     1818     162,   162,   162,   162,   160,   676,   665,   678,     3,     3, 
     1819     160,   163,   769,   672,     5,     3,   162,   913,   160,   132, 
     1820       3,   692,   693,   160,     3,   138,   139,   160,   160,   983, 
     1821     160,   769,   703,     3,   161,     3,     5,   163,     3,   769, 
     1822     153,   154,     3,   156,   157,     3,   162,    22,   161,     5, 
     1823     709,   722,     5,     6,     7,     8,     9,    10,     3,    12, 
     1824      13,    14,    15,    16,    17,     3,    19,    20,    21,    22, 
     1825      23,   163,   163,     3,     3,   162,   160,   160,   163,   160, 
     1826     162,   752,   162,   162,   162,     4,     3,   163,   161,   163, 
     1827     761,     3,     3,   989,    12,    13,    14,    15,    16,    17, 
     1828      23,    19,    20,    21,    22,    23,     3,     3,   771,   772, 
     1829     773,   774,   775,    12,    13,    14,    15,    16,    17,   163, 
     1830      19,    20,    21,    22,    23,     3,   797,   798,   799,   163, 
     1831     163,   163,    22,   160,   162,    22,    21,    26,   894,   163, 
     1832     160,    25,   163,   814,   815,     4,   956,   903,   122,     3, 
     1833       3,   160,     5,     6,     7,     8,     9,    10,   915,    12, 
     1834      13,    14,    15,    16,    17,    36,    19,    20,    21,    22, 
     1835      23,   160,   162,   160,     3,     5,   162,   915,   163,   936, 
     1836     162,     5,   163,   163,   162,   915,   163,   160,   160,   160, 
     1837       4,     3,     3,   160,    78,    79,    80,   163,   869,   163, 
     1838     871,   163,   873,   163,   167,    22,    82,   122,   163,   162, 
     1839     160,   164,   165,   160,   163,   168,   887,   163,   160,   975, 
     1840     168,   892,   106,   163,   108,   109,   110,   898,   160,   113, 
     1841     114,    82,   116,   117,   905,   160,    22,   254,   160,   486, 
     1842     951,    51,   678,   949,   674,   481,   164,   165,   405,   482, 
     1843     506,   494,   260,   912,   925,   526,   927,   928,   289,   716, 
     1844      52,   932,   933,   871,   935,   164,   165,   928,   869,   397, 
     1845     663,   960,   891,  1017,   945,   542,   986,   758,   938,   938, 
     1846     124,   761,   665,    -1,   435,   956,    -1,    -1,    -1,    -1, 
     1847     961,   962,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1848      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     0,     1, 
     1849      -1,   164,   165,    -1,    -1,   986,    -1,   988,    -1,    -1, 
     1850      -1,    -1,    -1,    -1,    -1,   984,   997,    -1,    -1,  1000, 
     1851      -1,    -1,    24,    25,    -1,    -1,    28,    29,    30,    31, 
     1852      32,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    -1, 
     1853      -1,  1022,    -1,    45,    -1,    -1,    -1,    -1,    -1,    -1, 
     1854    1031,    -1,  1033,    -1,  1035,  1036,  1025,    -1,    -1,    61, 
     1855      -1,    -1,  1043,    65,    66,  1034,    -1,    -1,    70,  1050, 
     1856      -1,    -1,    -1,    -1,    76,    -1,    78,    79,    -1,    81, 
     1857      -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,    -1, 
     1858      92,    93,    -1,    -1,    96,    97,    98,    99,   100,   101, 
     1859     102,   103,   104,   105,   106,    -1,   108,    -1,   110,   111, 
     1860      -1,    -1,   114,   115,   116,    -1,   118,    -1,   120,    -1, 
     1861      -1,   123,   124,    -1,    -1,   127,   128,   129,    -1,    -1, 
     1862      -1,    -1,    -1,    -1,    -1,   137,    -1,    -1,   140,   141, 
     1863     142,   143,   144,   145,   146,   147,   148,   149,   150,   151, 
     1864     152,    -1,    -1,   155,    -1,    -1,   158,   159,   160,   161, 
     1865      -1,    -1,    -1,    -1,   166,     5,     6,     7,     8,     9, 
    22241866      10,    -1,    12,    13,    14,    15,    16,    17,    -1,    19, 
    22251867      20,    21,    22,    23,     3,    -1,     5,     6,     7,     8, 
     
    22291871      -1,    19,    20,    21,    22,    23,     3,    -1,     5,     6, 
    22301872       7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2231       17,    -1,    19,    20,    21,    22,    23,     4,     5,     6, 
    2232        7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2233       17,    -1,    19,    20,    21,    22,    23,     4,     5,     6, 
    2234        7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2235       17,    -1,    19,    20,    21,    22,    23,    -1,    -1,    -1, 
    2236       -1,    -1,    33,    34,    -1,    -1,    -1,    -1,    39,    40, 
    2237       41,    42,    43,   164,   165,    -1,    -1,    -1,    -1,    -1, 
    2238       -1,    -1,    -1,    54,    55,    56,    57,    58,    59,    60, 
    2239       -1,    62,    63,    64,   164,   165,    67,    68,    69,    -1, 
    2240       71,    72,    73,    74,    75,    -1,    77,    -1,    -1,    -1, 
    2241       -1,    -1,    -1,    -1,    -1,   164,   165,     5,     6,     7, 
    2242        8,     9,    10,    -1,    12,    13,    14,    15,    16,    17, 
    2243       -1,    19,    20,    21,    22,    23,   164,   165,     5,     6, 
    2244        7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2245       17,    -1,    19,    20,    21,    22,    23,   164,   165,    -1, 
    2246       -1,   132,    -1,    -1,    -1,    -1,    -1,   138,   139,    -1, 
    2247       -1,    -1,    -1,   144,    -1,    -1,   163,   164,   165,    -1, 
    2248       -1,    -1,   153,   154,    -1,   156,   157,    -1,    -1,   160, 
    2249      161,   162,    -1,    -1,    -1,    -1,    -1,   164,   165,     4, 
     1873      17,    -1,    19,    20,    21,    22,    23,     3,    -1,     5, 
     1874       6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
     1875      16,    17,    -1,    19,    20,    21,    22,    23,     3,    -1, 
    22501876       5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
    22511877      15,    16,    17,    -1,    19,    20,    21,    22,    23,     4, 
    22521878       5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
    2253       15,    16,    17,    -1,    19,    20,    21,    22,    23,     4, 
     1879      15,    16,    17,    -1,    19,    20,    21,    22,    23,    34, 
     1880      -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    -1, 
     1881      -1,    -1,    -1,    -1,   164,   165,    -1,    -1,   168,    54, 
     1882      55,    56,    57,    58,    59,    60,    -1,    62,    63,    64, 
     1883      -1,    -1,    67,    68,    69,   164,   165,    72,    73,    74, 
     1884      75,    -1,    77,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1885      -1,    -1,    -1,    -1,    -1,    -1,   164,   165,    -1,    -1, 
     1886      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1887      -1,    -1,    -1,    -1,    -1,    -1,    -1,   164,   165,     5, 
     1888       6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
     1889      16,    17,    -1,    19,    20,    21,    22,    23,   164,   165, 
     1890       5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
     1891      15,    16,    17,    -1,    19,    20,    21,    22,    23,   164, 
     1892     165,    -1,    -1,    -1,    -1,   160,    -1,    -1,    -1,    -1, 
     1893      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164, 
     1894     165,     4,     5,     6,     7,     8,     9,    10,    -1,    12, 
     1895      13,    14,    15,    16,    17,    -1,    19,    20,    21,    22, 
     1896      23,     4,     5,     6,     7,     8,     9,    10,    -1,    12, 
     1897      13,    14,    15,    16,    17,    -1,    19,    20,    21,    22, 
     1898      23,     4,     5,     6,     7,     8,     9,    10,    -1,    12, 
     1899      13,    14,    15,    16,    17,    -1,    19,    20,    21,    22, 
     1900      23,     4,     5,     6,     7,     8,     9,    10,    -1,    12, 
     1901      13,    14,    15,    16,    17,    -1,    19,    20,    21,    22, 
     1902      23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1903      -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165, 
     1904      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1905      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164, 
     1906     165,     5,     6,     7,     8,     9,    10,    -1,    12,    13, 
     1907      14,    15,    16,    17,    -1,    19,    20,    21,    22,    23, 
    22541908       5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
    22551909      15,    16,    17,    -1,    19,    20,    21,    22,    23,    -1, 
     1910      -1,   164,   165,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    22561911      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2257       -1,    -1,    -1,    -1,    -1,   163,   164,   165,    -1,    -1, 
     1912      -1,   164,   165,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1913      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1914      -1,   164,   165,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1915      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1916      -1,   164,   165,     5,     6,     7,     8,     9,    10,    -1, 
     1917      12,    13,    14,    15,    16,    17,    -1,    19,    20,    21, 
     1918      22,    23,     5,     6,     7,     8,     9,    10,    -1,    12, 
     1919      13,    14,    15,    16,    17,    -1,    19,    20,    21,    22, 
     1920      23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1921      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163, 
     1922     164,   165,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1923      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164, 
     1924     165,     5,     6,     7,     8,     9,    10,    -1,    12,    13, 
     1925      14,    15,    16,    17,    -1,    19,    20,    21,    22,    23, 
     1926       5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
     1927      15,    16,    17,    -1,    19,    20,    21,    22,    23,     5, 
     1928       6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
     1929      16,    17,    -1,    19,    20,    21,    22,    23,     5,     6, 
     1930       7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
     1931      17,    -1,    19,    20,    21,    22,    23,    -1,    -1,    -1, 
     1932      -1,   163,   164,   165,    -1,    -1,    -1,    -1,    -1,    -1, 
     1933      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1934     163,   164,   165,     5,     6,     7,     8,     9,    10,    -1, 
     1935      12,    13,    14,    15,    16,    17,    -1,    19,    20,    21, 
     1936      22,    23,     5,     6,     7,     8,     9,    10,    -1,    12, 
     1937      13,    14,    15,    16,    17,    -1,    19,    20,    21,    22, 
     1938      23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1939      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163, 
     1940     164,   165,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1941      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164, 
     1942     165,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1943      -1,    -1,    -1,    -1,   160,    -1,    -1,    -1,   164,   165, 
    22581944      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    22591945      -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165,     5, 
     
    22611947      16,    17,    -1,    19,    20,    21,    22,    23,     5,     6, 
    22621948       7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2263       17,    -1,    19,    20,    21,    22,    23,     5,     6,     7, 
    2264        8,     9,    10,    -1,    12,    13,    14,    15,    16,    17, 
    2265       -1,    19,    20,    21,    22,    23,    -1,    -1,    -1,   164, 
    2266      165,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2267       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   164, 
    2268      165,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2269       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   164, 
     1949      17,    -1,    19,    20,    21,    22,    23,    -1,    -1,    -1, 
     1950      -1,   163,   164,   165,    -1,    -1,    -1,    -1,    -1,    -1, 
     1951      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1952     163,   164,   165,     5,     6,     7,     8,     9,    10,    -1, 
     1953      12,    13,    14,    15,    16,    17,    -1,    19,    20,    21, 
     1954      22,    23,     5,     6,     7,     8,     9,    10,    -1,    12, 
     1955      13,    14,    15,    16,    17,    -1,    19,    20,    21,    22, 
     1956      23,     5,     6,     7,     8,     9,    10,    -1,    12,    13, 
     1957      14,    15,    16,    17,    -1,    19,    20,    21,    22,    23, 
     1958       5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
     1959      15,    16,    17,    -1,    19,    20,    21,    22,    23,    -1, 
     1960      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1961      -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165, 
     1962      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1963      -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165,     5, 
     1964       6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
     1965      16,    17,    -1,    19,    20,    21,    22,    23,     5,     6, 
     1966       7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
     1967      17,    -1,    19,    20,    21,    22,    23,    -1,    -1,    -1, 
     1968      -1,   163,   164,   165,    -1,    -1,    -1,    -1,    -1,    -1, 
     1969      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1970     163,   164,   165,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1971      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163, 
     1972     164,   165,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1973      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164, 
    22701974     165,     5,     6,     7,     8,     9,    10,    -1,    12,    13, 
    22711975      14,    15,    16,    17,    -1,    19,    20,    21,    22,    23, 
     
    22751979      -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165, 
    22761980      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2277       -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165,    -1, 
    2278       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2279       -1,    -1,    -1,    -1,    -1,   163,   164,   165,     5,     6, 
     1981      -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165,     5, 
     1982       6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
     1983      16,    17,    -1,    19,    20,    21,    22,    23,     5,     6, 
    22801984       7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    22811985      17,    -1,    19,    20,    21,    22,    23,     5,     6,     7, 
     
    22891993      14,    15,    16,    17,    -1,    19,    20,    21,    22,    23, 
    22901994       5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
    2291       15,    16,    17,    -1,    19,    20,    21,    22,    23,     5, 
    2292        6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
    2293       16,    17,    -1,    19,    20,    21,    22,    23,    -1,    -1, 
    2294       -1,    -1,    -1,    -1,    33,    34,    -1,    -1,    -1,    -1, 
    2295       39,    40,    41,    42,    43,    -1,   163,   164,   165,    -1, 
    2296       -1,    -1,    -1,    -1,    -1,    54,    55,    56,    57,    58, 
    2297       59,    60,   160,    62,    63,    64,   164,   165,    67,    68, 
    2298       69,    -1,    71,    72,    73,    74,    75,    -1,    77,    -1, 
    2299       -1,    -1,    -1,    -1,   163,   164,   165,     5,     6,     7, 
    2300        8,     9,    10,    -1,    12,    13,    14,    15,    16,    17, 
    2301       -1,    19,    20,    21,    22,    23,     5,     6,     7,     8, 
    2302        9,    10,    -1,    12,    13,    14,    15,    16,    17,    -1, 
    2303       19,    20,    21,    22,    23,    -1,    -1,    -1,    -1,   163, 
    2304      164,   165,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138, 
    2305      139,    -1,    -1,    -1,    -1,   144,    -1,    -1,   163,   164, 
    2306      165,    -1,    -1,    -1,   153,   154,    -1,   156,   157,    -1, 
    2307       -1,   160,   161,   162,    -1,    -1,    -1,   163,   164,   165, 
    2308        5,     6,     7,     8,     9,    10,    -1,    12,    13,    14, 
    2309       15,    16,    17,    -1,    19,    20,    21,    22,    23,     5, 
    2310        6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
    2311       16,    17,    -1,    19,    20,    21,    22,    23,     5,     6, 
    2312        7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2313       17,    -1,    19,    20,    21,    22,    23,    -1,    -1,    -1, 
     1995      15,    16,    17,    -1,    19,    20,    21,    22,    23,    -1, 
     1996      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1997      -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165, 
     1998      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     1999      -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165,    -1, 
    23142000      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    23152001      -1,    -1,    -1,    -1,    -1,   163,   164,   165,    -1,    -1, 
     
    23192005      -1,    19,    20,    21,    22,    23,     5,     6,     7,     8, 
    23202006       9,    10,    -1,    12,    13,    14,    15,    16,    17,    -1, 
    2321       19,    20,    21,    22,    23,     5,     6,     7,     8,     9, 
    2322       10,    -1,    12,    13,    14,    15,    16,    17,    -1,    19, 
    2323       20,    21,    22,    23,    -1,    -1,    -1,    -1,   163,   164, 
    2324      165,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2325       -1,    -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165, 
    2326       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2327       -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165,     5, 
    2328        6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
    2329       16,    17,    -1,    19,    20,    21,    22,    23,     5,     6, 
    2330        7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2331       17,    -1,    19,    20,    21,    22,    23,    -1,    -1,    -1, 
    2332       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2333       -1,    -1,    -1,    -1,    -1,   163,   164,   165,    -1,    -1, 
    2334       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2335       -1,    -1,    -1,    -1,   163,   164,   165,    -1,    -1,    -1, 
    2336       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2337       -1,    -1,    -1,   163,   164,   165,     5,     6,     7,     8, 
    2338        9,    10,    -1,    12,    13,    14,    15,    16,    17,    -1, 
    2339       19,    20,    21,    22,    23,     5,     6,     7,     8,     9, 
    2340       10,    -1,    12,    13,    14,    15,    16,    17,    -1,    19, 
    2341       20,    21,    22,    23,     5,     6,     7,     8,     9,    10, 
    2342       -1,    12,    13,    14,    15,    16,    17,    -1,    19,    20, 
    2343       21,    22,    23,    -1,    -1,    -1,    -1,   163,   164,   165, 
    2344       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2345       -1,    -1,    -1,    -1,    -1,    -1,   163,   164,   165,     5, 
    2346        6,     7,     8,     9,    10,    -1,    12,    13,    14,    15, 
    2347       16,    17,    -1,    19,    20,    21,    22,    23,     5,     6, 
    2348        7,     8,     9,    10,    -1,    12,    13,    14,    15,    16, 
    2349       17,    -1,    19,    20,    21,    22,    23,     5,     6,     7, 
    2350        8,     9,    10,    -1,    12,    13,    14,    15,    16,    17, 
    2351       -1,    19,    20,    21,    22,    23,    -1,    -1,    -1,    -1, 
    2352       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2353       -1,    -1,    -1,    -1,   163,   164,   165,    -1,    -1,    -1, 
    2354       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2355       -1,    -1,    -1,   163,   164,   165,    -1,    -1,    -1,    -1, 
    2356       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2357       -1,    -1,   163,   164,   165,     5,     6,     7,     8,     9, 
    2358       10,    -1,    12,    13,    14,    15,    16,    17,    -1,    19, 
    2359       20,    21,    22,    23,    -1,    -1,    -1,    -1,    -1,    -1, 
    2360       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2361       -1,    -1,    -1,    -1,    -1,     4,    -1,   163,   164,   165, 
    2362       -1,    -1,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2363       19,    20,    21,    -1,    -1,    -1,   163,   164,   165,    -1, 
    2364       -1,    -1,    -1,    -1,    33,    34,    -1,    -1,    -1,    -1, 
    2365       39,    40,    41,    42,    43,   163,   164,   165,    -1,    -1, 
    2366       -1,    -1,    -1,    -1,    -1,    54,    55,    56,    57,    58, 
    2367       59,    60,    -1,    62,    63,    64,    -1,    -1,    67,    68, 
    2368       69,    -1,    71,    72,    73,    74,    75,    34,    77,    -1, 
    2369       -1,    -1,    39,    40,    -1,    42,    43,    -1,    -1,    -1, 
     2007      19,    20,    21,    22,    23,    -1,    -1,     4,     5,   163, 
     2008     164,   165,    -1,    -1,    11,    -1,    -1,    -1,    -1,    -1, 
     2009      -1,    -1,    19,    20,    21,    -1,    -1,    -1,   163,   164, 
     2010     165,    -1,    -1,    -1,    -1,    -1,    33,    34,    -1,    -1, 
     2011      -1,    -1,    39,    40,    41,    42,    43,    -1,    -1,    -1, 
    23702012      -1,    -1,    -1,    -1,    -1,    -1,    -1,    54,    55,    56, 
    23712013      57,    58,    59,    60,    -1,    62,    63,    64,    -1,    -1, 
    2372       67,    68,    69,    -1,     4,    72,    73,    74,    75,    -1, 
    2373       77,    11,    -1,    -1,   164,   165,   125,    -1,    -1,    19, 
    2374       20,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138, 
     2014      67,    68,    69,    -1,    71,    72,    73,    74,    75,    -1, 
     2015      77,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2016      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2017      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2018      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2019      -1,    -1,    -1,    -1,    -1,   163,   164,   165,   125,    -1, 
     2020      -1,    -1,    -1,    -1,    -1,   132,    -1,     4,     5,    -1, 
     2021      -1,   138,   139,    -1,    11,   164,   165,   144,    -1,    -1, 
     2022      -1,    -1,    19,    20,    21,    -1,   153,   154,    -1,   156, 
     2023     157,    -1,    -1,   160,   161,   162,    33,    34,    -1,    -1, 
     2024      -1,    -1,    39,    40,    41,    42,    43,    -1,    -1,    -1, 
     2025      -1,    -1,    -1,    -1,    -1,    -1,    -1,    54,    55,    56, 
     2026      57,    58,    59,    60,    -1,    62,    63,    64,    -1,    -1, 
     2027      67,    68,    69,    -1,    71,    72,    73,    74,    75,    -1, 
     2028      77,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2029      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2030      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2031      -1,    -1,    -1,    -1,    -1,    -1,     4,    -1,    -1,    -1, 
     2032      -1,    -1,    -1,    11,    -1,    -1,    -1,    -1,   125,    -1, 
     2033      -1,    19,    20,    21,    -1,   132,    -1,    -1,    -1,    -1, 
     2034      -1,   138,   139,    -1,    -1,    33,    34,   144,    -1,    -1, 
     2035      -1,    39,    40,    41,    42,    43,   153,   154,    -1,   156, 
     2036     157,    -1,    -1,   160,   161,   162,    54,    55,    56,    57, 
     2037      58,    59,    60,    -1,    62,    63,    64,    -1,    -1,    67, 
     2038      68,    69,    -1,    71,    72,    73,    74,    75,    -1,    77, 
     2039      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2040      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2041      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2042      -1,    -1,    -1,    -1,    -1,     4,    -1,    -1,    -1,    -1, 
     2043      -1,    -1,    11,    -1,    -1,    -1,    -1,   125,    -1,    -1, 
     2044      19,    20,    21,    -1,   132,    -1,    -1,    -1,    -1,    -1, 
     2045     138,   139,    -1,    -1,    33,    34,   144,    -1,    -1,    -1, 
     2046      39,    40,    41,    42,    43,   153,   154,    -1,   156,   157, 
     2047      -1,    -1,   160,   161,   162,    54,    55,    56,    57,    58, 
     2048      59,    60,    -1,    62,    63,    64,    -1,    -1,    67,    68, 
     2049      69,    -1,    71,    72,    73,    74,    75,    -1,    77,    -1, 
     2050      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2051      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2052      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2053      -1,    -1,    -1,    -1,     4,    -1,    -1,    -1,    -1,    -1, 
     2054      -1,    11,    -1,    -1,    -1,    -1,   125,    -1,    -1,    19, 
     2055      20,    21,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138, 
    23752056     139,    -1,    -1,    33,    34,   144,    -1,    -1,    -1,    39, 
    23762057      40,    41,    42,    43,   153,   154,    -1,   156,   157,    -1, 
     
    23792060      -1,    71,    72,    73,    74,    75,    -1,    77,    -1,    -1, 
    23802061      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2381       -1,    -1,    -1,   160,    -1,    -1,    -1,    -1,    -1,    -1, 
     2062      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    23822063      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    23832064      -1,    -1,    -1,     4,    -1,    -1,    -1,    -1,    -1,    -1, 
     
    24032084      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    24042085      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2405       -1,    -1,     5,    -1,    -1,    -1,    -1,    -1,    11,    -1, 
    2406       -1,    -1,    -1,   125,    -1,    -1,    19,    20,    21,    -1, 
     2086      -1,     4,    -1,    -1,    -1,    -1,    -1,    -1,    11,    -1, 
     2087      -1,    -1,    -1,   125,    -1,    -1,    19,    20,    -1,    -1, 
    24072088     132,    -1,    -1,    -1,    -1,    -1,   138,   139,    -1,    -1, 
    24082089      33,    34,   144,    -1,    -1,    -1,    39,    40,    41,    42, 
     
    24262107      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    24272108       5,    -1,    -1,    -1,    -1,    -1,    11,    -1,    -1,    -1, 
    2428       -1,   125,    -1,    -1,    19,    20,    21,    -1,   132,    -1, 
     2109      -1,   125,    -1,    -1,    19,    20,    -1,    -1,   132,    -1, 
    24292110      -1,    -1,    -1,    -1,   138,   139,    -1,    -1,    33,    34, 
    24302111     144,    -1,    -1,    -1,    39,    40,    41,    42,    43,   153, 
     
    24572138      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    24582139      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2459       -1,    -1,    -1,    -1,    -1,    -1,    -1,     5,    -1,    -1, 
     2140      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    24602141      -1,    -1,    -1,    11,    -1,    -1,    -1,    -1,   125,    -1, 
    24612142      -1,    19,    20,    -1,    -1,   132,    -1,    -1,    -1,    -1, 
     
    24692150      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    24702151      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2471       -1,    -1,    11,    -1,    -1,    -1,    -1,   125,    -1,    -1, 
    2472       19,    20,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1, 
    2473      138,   139,    -1,    -1,    33,    34,   144,    -1,    -1,    -1, 
    2474       39,    40,    41,    42,    43,   153,   154,    -1,   156,   157, 
    2475       -1,    -1,   160,   161,   162,    54,    55,    56,    57,    58, 
    2476       59,    60,    -1,    62,    63,    64,    -1,    -1,    67,    68, 
    2477       69,    -1,    71,    72,    73,    74,    75,    -1,    77,    -1, 
     2152      -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,    -1,    -1, 
     2153      -1,    -1,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1, 
     2154     138,   139,    -1,    -1,    -1,    -1,   144,    -1,    -1,    -1, 
     2155      -1,    -1,    -1,    -1,    -1,   153,   154,    11,   156,   157, 
     2156      -1,    -1,   160,   161,   162,    19,    20,    21,   166,    23, 
     2157      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    33, 
     2158      34,    -1,    -1,    -1,    -1,    39,    40,    41,    42,    43, 
     2159      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2160      54,    55,    56,    57,    58,    59,    60,    -1,    62,    63, 
     2161      64,    -1,    -1,    67,    68,    69,    -1,    71,    72,    73, 
     2162      74,    75,    -1,    77,    -1,    -1,    -1,    -1,    -1,    -1, 
    24782163      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    24792164      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    24802165      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2481       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2482       -1,    -1,    -1,    -1,    -1,    -1,   125,    -1,    -1,    -1, 
    2483       -1,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138, 
    2484      139,    -1,    -1,    -1,    -1,   144,    -1,    -1,    -1,    -1, 
    2485       -1,    -1,    -1,    -1,   153,   154,    11,   156,   157,    -1, 
    2486       -1,   160,   161,   162,    19,    20,    21,   166,    23,    -1, 
    2487       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    33,    34, 
    2488       -1,    -1,    -1,    -1,    39,    40,    41,    42,    43,    -1, 
    2489       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    54, 
     2166      -1,    -1,    -1,    -1,    -1,    -1,    11,    -1,    -1,    -1, 
     2167      -1,   125,    -1,    -1,    19,    20,    21,    -1,   132,    -1, 
     2168      -1,    -1,    -1,    -1,   138,   139,    -1,    -1,    33,    34, 
     2169     144,    -1,    -1,    -1,    39,    40,    41,    42,    43,   153, 
     2170     154,    -1,   156,   157,    -1,    -1,   160,   161,   162,    54, 
    24902171      55,    56,    57,    58,    59,    60,    -1,    62,    63,    64, 
    24912172      -1,    -1,    67,    68,    69,    -1,    71,    72,    73,    74, 
     
    24992180      -1,    -1,    -1,    39,    40,    41,    42,    43,   153,   154, 
    25002181      -1,   156,   157,    -1,    -1,   160,   161,   162,    54,    55, 
     2182      56,    57,    58,    59,    60,    -1,    62,    63,    64,    -1, 
     2183      -1,    67,    68,    69,    -1,    71,    72,    73,    74,    75, 
     2184      -1,    77,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2185      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2186      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2187      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2188      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   125, 
     2189      -1,    -1,    -1,    -1,    -1,    -1,   132,    -1,    -1,    -1, 
     2190      -1,    -1,   138,   139,    -1,    11,    -1,    -1,   144,    -1, 
     2191      -1,    -1,    -1,    19,    20,    -1,    -1,   153,   154,    -1, 
     2192     156,   157,    -1,    -1,   160,   161,   162,    33,    34,    35, 
     2193      -1,    -1,    -1,    39,    40,    41,    42,    43,    -1,    -1, 
     2194      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    54,    55, 
    25012195      56,    57,    58,    59,    60,    -1,    62,    63,    64,    -1, 
    25022196      -1,    67,    68,    69,    -1,    71,    72,    73,    74,    75, 
     
    25282222      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    25292223      -1,    -1,    11,    -1,    -1,    -1,    -1,   125,    -1,    -1, 
    2530       19,    20,    21,    -1,   132,    -1,    -1,    -1,    -1,    -1, 
     2224      19,    20,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1, 
    25312225     138,   139,    -1,    -1,    33,    34,   144,    -1,    -1,    -1, 
    25322226      39,    40,    41,    42,    43,   153,   154,    -1,   156,   157, 
     
    25382232      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    25392233      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2540       -1,    -1,    -1,    -1,    -1,    -1,   125,    -1,    -1,    -1, 
    2541       -1,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138, 
    2542      139,    -1,    11,    -1,    -1,   144,    -1,    -1,    -1,    -1, 
    2543       19,    20,    -1,    -1,   153,   154,    -1,   156,   157,    -1, 
    2544       -1,   160,   161,   162,    33,    34,    35,    -1,    -1,    -1, 
    2545       39,    40,    41,    42,    43,    -1,    -1,    -1,    -1,    -1, 
    2546       -1,    -1,    -1,    -1,    -1,    54,    55,    56,    57,    58, 
    2547       59,    60,    -1,    62,    63,    64,    -1,    -1,    67,    68, 
    2548       69,    -1,    71,    72,    73,    74,    75,    -1,    77,    -1, 
    2549       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2550       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2551       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2552       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    25532234      -1,    11,    -1,    -1,    -1,    -1,   125,    -1,    -1,    19, 
    2554       20,    21,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138, 
     2235      20,    -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138, 
    25552236     139,    -1,    -1,    33,    34,   144,    -1,    -1,    -1,    39, 
    25562237      40,    41,    42,    43,   153,   154,    -1,   156,   157,    -1, 
     
    25632244      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    25642245      11,    -1,    -1,    -1,    -1,   125,    -1,    -1,    19,    20, 
    2565       21,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138,   139, 
     2246      -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138,   139, 
    25662247      -1,    -1,    33,    34,   144,    -1,    -1,    -1,    39,    40, 
    25672248      41,    42,    43,   153,   154,    -1,   156,   157,    -1,    -1, 
     
    26052286      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    26062287      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2607       -1,    -1,    -1,    -1,    -1,    -1,    11,    -1,    -1,    -1, 
    2608       -1,   125,    -1,    -1,    19,    20,    -1,    -1,   132,    -1, 
    2609       -1,    -1,    -1,    -1,   138,   139,    -1,    -1,    33,    34, 
    2610      144,    -1,    -1,    -1,    39,    40,    41,    42,    43,   153, 
    2611      154,    -1,   156,   157,    -1,    -1,   160,   161,   162,    54, 
    2612       55,    56,    57,    58,    59,    60,    -1,    62,    63,    64, 
    2613       -1,    -1,    67,    68,    69,    -1,    71,    72,    73,    74, 
    2614       75,    -1,    77,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    26152288      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2616       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2617       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2618       -1,    -1,    -1,    -1,    -1,    11,    -1,    -1,    -1,    -1, 
    2619      125,    -1,    -1,    19,    20,    -1,    -1,   132,    -1,    -1, 
    2620       -1,    -1,    -1,   138,   139,    -1,    -1,    33,    34,   144, 
    2621       -1,    -1,    -1,    39,    40,    41,    42,    43,   153,   154, 
    2622       -1,   156,   157,    -1,    -1,   160,   161,   162,    54,    55, 
    2623       56,    57,    58,    59,    60,    -1,    62,    63,    64,    -1, 
    2624       -1,    67,    68,    69,    -1,    71,    72,    73,    74,    75, 
    2625       -1,    77,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2626       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2627       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2628       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2629       -1,    -1,    -1,    -1,    11,    -1,    -1,    -1,    -1,   125, 
    2630       -1,    -1,    19,    20,    -1,    -1,   132,    -1,    -1,    -1, 
    2631       -1,    -1,   138,   139,    -1,    -1,    33,    34,   144,    -1, 
    2632       -1,    -1,    39,    40,    41,    42,    43,   153,   154,    -1, 
    2633      156,   157,    -1,    -1,   160,   161,   162,    54,    55,    56, 
    2634       57,    58,    59,    60,    -1,    62,    63,    64,    -1,    -1, 
    2635       67,    68,    69,    -1,    71,    72,    73,    74,    75,    -1, 
    2636       77,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2637       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2638       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2639       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2640       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,    -1, 
    2641       -1,    -1,    -1,    -1,    -1,   132,    -1,    -1,    -1,    -1, 
    2642       -1,   138,   139,    -1,    -1,    -1,    -1,   144,    -1,    -1, 
    2643       -1,    -1,    -1,    -1,    -1,    -1,   153,   154,    -1,   156, 
    2644      157,    -1,    -1,   160,   161,   162,    19,    20,    21,    -1, 
    2645       23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2646       33,    34,    -1,    -1,    -1,    -1,    39,    40,    41,    42, 
    2647       43,    -1,    -1,    46,    47,    48,    49,    50,    -1,    52, 
    2648       53,    54,    55,    56,    57,    58,    59,    60,    -1,    62, 
    2649       63,    64,    -1,    -1,    67,    68,    69,    -1,    71,    72, 
    2650       73,    74,    75,    -1,    77,    -1,    -1,    -1,    -1,    -1, 
     2289      -1,   125,    -1,    -1,    -1,    -1,    -1,    -1,   132,    -1, 
     2290      -1,    -1,    -1,    -1,   138,   139,    -1,    -1,    -1,    -1, 
     2291     144,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   153, 
     2292     154,    -1,   156,   157,    -1,    -1,   160,   161,   162,    19, 
     2293      20,    21,    -1,    23,    -1,    -1,    -1,    -1,    -1,    -1, 
     2294      -1,    -1,    -1,    33,    34,    -1,    -1,    -1,    -1,    39, 
     2295      40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49, 
     2296      50,    -1,    52,    53,    54,    55,    56,    57,    58,    59, 
     2297      60,    -1,    62,    63,    64,    -1,    -1,    67,    68,    69, 
     2298      -1,    71,    72,    73,    74,    75,    -1,    77,    -1,    -1, 
    26512299      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    26522300      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    26532301      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    26542302      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2655       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   132, 
    2656       -1,    -1,    -1,    -1,    -1,   138,   139,    -1,    -1,    -1, 
    2657       -1,   144,    -1,    -1,    -1,    -1,    19,    20,    21,    -1, 
    2658      153,   154,    -1,   156,   157,    -1,    -1,   160,   161,   162, 
    2659       33,    34,    -1,    -1,    -1,    -1,    39,    40,    41,    42, 
    2660       43,    -1,    -1,    46,    47,    48,    49,    50,    -1,    52, 
    2661       53,    54,    55,    56,    57,    58,    59,    60,    -1,    62, 
    2662       63,    64,    19,    20,    67,    68,    69,    -1,    71,    72, 
    2663       73,    74,    75,    -1,    77,    -1,    33,    34,    -1,    -1, 
    2664       -1,    -1,    39,    40,    41,    42,    43,    -1,    -1,    46, 
    2665       47,    48,    49,    50,    -1,    52,    53,    54,    55,    56, 
    2666       57,    58,    59,    60,    -1,    62,    63,    64,    -1,    -1, 
    2667       67,    68,    69,    -1,    71,    72,    73,    74,    75,    -1, 
    2668       77,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   132, 
    2669       -1,    -1,    -1,    -1,    -1,   138,   139,    -1,    -1,    -1, 
    2670       -1,   144,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2671      153,   154,    -1,   156,   157,    -1,    -1,   160,   161,   162, 
    2672       -1,    -1,    -1,    -1,    -1,    -1,    25,    -1,    -1,    28, 
    2673       -1,    30,    -1,    32,    -1,   132,    35,    -1,    -1,    -1, 
    2674       -1,   138,   139,    -1,    -1,    -1,    45,   144,    -1,    -1, 
    2675       -1,    -1,    -1,    -1,    -1,    -1,   153,   154,    -1,   156, 
    2676      157,    -1,    61,   160,   161,   162,    65,    66,    -1,    -1, 
     2303      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2304      -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138,   139, 
     2305      -1,    -1,    -1,    -1,   144,    -1,    -1,    -1,    -1,    19, 
     2306      20,    21,    -1,   153,   154,    -1,   156,   157,    -1,    -1, 
     2307     160,   161,   162,    33,    34,    -1,    -1,    -1,    -1,    39, 
     2308      40,    41,    42,    43,    -1,    -1,    46,    47,    48,    49, 
     2309      50,    -1,    52,    53,    54,    55,    56,    57,    58,    59, 
     2310      60,    -1,    62,    63,    64,    19,    20,    67,    68,    69, 
     2311      -1,    71,    72,    73,    74,    75,    -1,    77,    -1,    33, 
     2312      34,    -1,    -1,    -1,    -1,    39,    40,    41,    42,    43, 
     2313      -1,    -1,    46,    47,    48,    49,    50,    -1,    52,    53, 
     2314      54,    55,    56,    57,    58,    59,    60,    -1,    62,    63, 
     2315      64,    -1,    -1,    67,    68,    69,    -1,    71,    72,    73, 
     2316      74,    75,    -1,    77,    -1,    -1,    -1,    -1,    -1,    -1, 
     2317      -1,    -1,   132,    -1,    -1,    -1,    -1,    -1,   138,   139, 
     2318      -1,    -1,    -1,    -1,   144,    -1,    -1,    -1,    -1,    -1, 
     2319      -1,    -1,    -1,   153,   154,    -1,   156,   157,    -1,    -1, 
     2320     160,   161,   162,    -1,    -1,    -1,    -1,    -1,    -1,    25, 
     2321      -1,    -1,    28,    -1,    30,    -1,    32,    -1,   132,    35, 
     2322      -1,    -1,    -1,    -1,   138,   139,    -1,    -1,    -1,    45, 
     2323     144,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   153, 
     2324     154,    -1,   156,   157,    -1,    61,   160,   161,   162,    65, 
     2325      66,    -1,    -1,    -1,    70,    -1,    -1,    -1,    -1,    -1, 
     2326      76,    -1,    78,    79,    -1,    81,    -1,    -1,    -1,    -1, 
     2327      86,    87,    88,    89,    90,    -1,    92,    93,    -1,    -1, 
     2328      96,    97,    98,    99,   100,   101,   102,   103,   104,   105, 
     2329     106,    -1,   108,    -1,   110,   111,    -1,    -1,   114,   115, 
     2330     116,    -1,   118,    -1,   120,    -1,    -1,   123,   124,    -1, 
     2331      -1,   127,   128,   129,    -1,    -1,    -1,    -1,    -1,    -1, 
     2332      -1,   137,    -1,    -1,    -1,   141,   142,   143,   144,   145, 
     2333     146,   147,   148,   149,   150,   151,   152,    -1,    -1,   155, 
     2334      -1,    -1,   158,   159,   160,   161,    25,    -1,    -1,    28, 
     2335     166,    30,    -1,    32,    -1,    -1,    35,    -1,    -1,    -1, 
     2336      -1,    -1,    -1,    -1,    -1,    -1,    45,    -1,    -1,    -1, 
     2337      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2338      -1,    -1,    61,    -1,    -1,    -1,    65,    66,    -1,    -1, 
    26772339      -1,    70,    -1,    -1,    -1,    -1,    -1,    76,    -1,    78, 
    26782340      79,    -1,    81,    -1,    -1,    -1,    -1,    86,    87,    88, 
     
    26832345     129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   137,    -1, 
    26842346      -1,    -1,   141,   142,   143,   144,   145,   146,   147,   148, 
    2685      149,   150,   151,   152,    -1,    -1,   155,    -1,    -1,   158, 
    2686      159,   160,   161,    25,    -1,    -1,    28,   166,    30,    -1, 
    2687       32,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    -1, 
    2688       -1,    -1,    -1,    45,    -1,    -1,    -1,    -1,    -1,    -1, 
    2689       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    61, 
    2690       -1,    -1,    -1,    65,    66,    -1,    -1,    -1,    70,    -1, 
    2691       -1,    -1,    -1,    -1,    76,    -1,    78,    79,    -1,    81, 
    2692       -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,    -1, 
    2693       92,    93,    -1,    -1,    96,    97,    98,    99,   100,   101, 
    2694      102,   103,   104,   105,   106,    -1,   108,    -1,   110,   111, 
    2695       -1,    -1,   114,   115,   116,    -1,   118,    -1,   120,    -1, 
    2696       -1,   123,   124,    -1,    -1,   127,   128,   129,    -1,    -1, 
    2697       -1,    -1,    -1,    -1,    -1,   137,    -1,    -1,    -1,   141, 
    2698      142,   143,   144,   145,   146,   147,   148,   149,   150,   151, 
    2699      152,    32,    -1,   155,    35,    -1,   158,   159,   160,   161, 
    2700       -1,    -1,    -1,    -1,    45,    -1,    -1,    -1,    -1,    -1, 
    2701       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2347     149,   150,   151,   152,    -1,    -1,   155,    33,    34,   158, 
     2348     159,   160,   161,    39,    40,    41,    42,    43,    -1,    -1, 
     2349      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    54,    55, 
     2350      56,    57,    58,    59,    60,    -1,    62,    63,    64,    -1, 
     2351      -1,    67,    68,    69,    -1,    71,    72,    73,    74,    75, 
     2352      -1,    77,    33,    34,    -1,    -1,    -1,    -1,    39,    40, 
     2353      41,    42,    43,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2354      -1,    -1,    -1,    54,    55,    56,    57,    58,    59,    60, 
     2355      -1,    62,    63,    64,    -1,    -1,    67,    68,    69,    -1, 
     2356      71,    72,    73,    74,    75,    -1,    77,    -1,    -1,    -1, 
     2357      -1,    -1,    -1,    -1,    -1,    -1,   132,    -1,    -1,    -1, 
     2358      -1,    -1,   138,   139,    -1,    -1,    -1,    -1,   144,    -1, 
     2359      -1,    -1,    -1,    -1,    -1,    -1,    -1,   153,   154,    -1, 
     2360     156,   157,    -1,    -1,   160,   161,   162,    -1,    -1,    32, 
     2361      -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
     2362      -1,   132,    45,    -1,    -1,    -1,    -1,   138,   139,    -1, 
     2363      -1,    -1,    -1,   144,    -1,    -1,    -1,    -1,    61,    -1, 
     2364      -1,    -1,   153,   154,    -1,   156,   157,    -1,    -1,   160, 
     2365     161,   162,    -1,    76,    -1,    -1,    -1,    -1,    81,    -1, 
     2366      83,    -1,    -1,    86,    87,    88,    89,    90,    -1,    -1, 
     2367      93,    -1,    -1,    96,    97,    98,    99,   100,   101,   102, 
     2368     103,   104,   105,    -1,    -1,    32,    -1,    -1,    35,    -1, 
     2369      -1,    -1,   115,    -1,    -1,    -1,    -1,   120,    45,    -1, 
     2370      -1,    -1,    -1,    -1,   127,    -1,   129,    -1,    -1,    -1, 
     2371      -1,    -1,    -1,    -1,    61,    -1,    -1,    -1,    -1,    -1, 
     2372      -1,    -1,    -1,    -1,    -1,   148,   149,   150,   151,    76, 
     2373      -1,    -1,    -1,    -1,    81,    -1,    -1,   160,   161,    86, 
     2374      87,    88,    89,    90,    -1,    -1,    93,    -1,    -1,    96, 
     2375      97,    98,    99,   100,   101,   102,   103,   104,   105,    -1, 
     2376      -1,    -1,    -1,    -1,    35,    -1,    -1,    -1,   115,    -1, 
     2377      -1,    -1,    -1,   120,    -1,    -1,    -1,    -1,    -1,    -1, 
     2378     127,    -1,   129,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    27022379      61,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2703       -1,    -1,    -1,    -1,    -1,    76,    -1,    -1,    -1,    -1, 
    2704       81,    -1,    83,    -1,    -1,    86,    87,    88,    89,    90, 
     2380      -1,   148,   149,   150,   151,    76,    -1,    -1,    -1,    -1, 
     2381      81,    82,    -1,   160,   161,    86,    87,    88,    -1,    90, 
    27052382      -1,    -1,    93,    -1,    -1,    96,    97,    98,    99,   100, 
    2706      101,   102,   103,   104,   105,    -1,    -1,    32,    -1,    -1, 
     2383     101,   102,   103,   104,   105,    -1,    -1,    -1,    -1,    -1, 
    27072384      35,    -1,    -1,    -1,   115,    -1,    -1,    -1,    -1,   120, 
    2708       45,    -1,    -1,    -1,    -1,    -1,   127,    -1,   129,    -1, 
     2385      -1,    -1,    -1,    -1,    -1,    -1,   127,    -1,   129,    -1, 
    27092386      -1,    -1,    -1,    -1,    -1,    -1,    61,    -1,    -1,    -1, 
    27102387      -1,    -1,    -1,    -1,    -1,    -1,    -1,   148,   149,   150, 
    27112388     151,    76,    -1,    -1,    -1,    -1,    81,    -1,    -1,   160, 
    2712      161,    86,    87,    88,    89,    90,    -1,    -1,    93,    -1, 
     2389     161,    86,    87,    88,    -1,    90,    -1,    -1,    93,    -1, 
    27132390      -1,    96,    97,    98,    99,   100,   101,   102,   103,   104, 
    2714      105,    -1,    -1,    -1,    -1,    -1,    35,    -1,    -1,    -1, 
     2391     105,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    27152392     115,    -1,    -1,    -1,    -1,   120,    -1,    -1,    -1,    -1, 
    27162393      -1,    -1,   127,    -1,   129,    -1,    -1,    -1,    -1,    -1, 
    2717       -1,    -1,    61,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2718       -1,    -1,    -1,   148,   149,   150,   151,    76,    -1,    -1, 
    2719       -1,    -1,    81,    82,    -1,   160,   161,    86,    87,    88, 
    2720       -1,    90,    -1,    -1,    93,    -1,    -1,    96,    97,    98, 
    2721       99,   100,   101,   102,   103,   104,   105,    -1,    -1,    -1, 
    2722       -1,    -1,    35,    -1,    -1,    -1,   115,    -1,    -1,    -1, 
    2723       -1,   120,    -1,    -1,    -1,    -1,    -1,    -1,   127,    -1, 
    2724      129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    61,    -1, 
    2725       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   148, 
    2726      149,   150,   151,    76,    -1,    -1,    -1,    -1,    81,    -1, 
    2727       -1,   160,   161,    86,    87,    88,    -1,    90,    -1,    -1, 
    2728       93,    -1,    -1,    96,    97,    98,    99,   100,   101,   102, 
    2729      103,   104,   105,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2730       -1,    -1,   115,    -1,    -1,    -1,    -1,   120,    -1,    -1, 
    2731       -1,    -1,    -1,    -1,   127,    -1,   129,    -1,    -1,    -1, 
    27322394      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, 
    2733       -1,    -1,    -1,    -1,    -1,   148,   149,   150,   151,    -1, 
    2734       -1,    -1,    -1,    -1,    -1,    -1,    -1,   160,   161 
     2395      -1,    -1,    -1,   148,   149,   150,   151,    -1,    -1,    -1, 
     2396      -1,    -1,    -1,    -1,    -1,   160,   161 
    27352397}; 
    27362398 
    2737 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 
    2738    symbol of state STATE-NUM.  */ 
     2399  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 
     2400     symbol of state STATE-NUM.  */ 
    27392401static const yytype_uint16 yystos[] = 
    27402402{ 
     
    27862448      60,    62,    63,    64,    67,    68,    69,    72,    73,    74, 
    27872449      75,    77,   160,   188,   189,   160,   267,   194,   249,     3, 
    2788        3,   195,     5,    21,   238,   249,   163,    22,   162,   257, 
    2789      220,     3,    22,    45,    88,    89,   175,   166,   174,   180, 
    2790      180,     5,   221,     3,   205,   219,   162,   245,   205,   267, 
    2791      219,   160,   160,   219,   245,     3,   217,    25,    80,   106, 
    2792      108,   109,   110,   113,   114,   116,   117,   241,   242,   244, 
    2793      180,     3,   227,   160,   161,   162,   160,   230,   238,   161, 
    2794      162,   236,   249,   237,   245,     3,   288,   299,   307,   299, 
    2795       44,   321,   322,   324,   249,   249,   356,   161,    21,   249, 
    2796      343,   346,   347,   249,   249,   249,   249,   249,   249,   249, 
    2797        5,   360,   162,   250,   257,   268,   349,   363,   364,     3, 
    2798      351,    18,    21,    22,    23,   362,   360,   163,   163,     3, 
    2799      163,   251,   251,   249,   163,   163,   163,   249,   249,   249, 
    2800      249,   249,   249,   249,   249,   249,   249,   249,   249,   163, 
    2801      251,   163,   251,   251,   251,   252,   366,   367,     3,     3, 
    2802      126,     3,   251,   163,     3,     5,   249,   256,   249,   249, 
     2450       3,   195,     4,     5,    21,   238,   249,   163,    22,   162, 
     2451     257,   220,     3,    22,    45,    88,    89,   175,   166,   174, 
     2452     180,   180,     5,   221,     3,   205,   219,   162,   245,   205, 
     2453     267,   219,   160,   160,   219,   245,     3,   217,    25,    80, 
     2454     106,   108,   109,   110,   113,   114,   116,   117,   241,   242, 
     2455     244,   180,     3,   227,   160,   161,   162,   160,   230,   238, 
     2456     161,   162,   236,   249,   237,   245,     3,   288,   299,   307, 
     2457     299,    44,   321,   322,   324,   249,   249,   356,   161,    21, 
     2458     249,   343,   346,   347,   249,   249,   249,   249,   249,   249, 
     2459     249,     5,   360,   162,   250,   257,   268,   349,   363,   364, 
     2460       3,   351,    18,    21,    22,    23,   362,   360,   163,   163, 
     2461       3,   163,   251,   251,   249,   163,   163,   163,   249,   249, 
    28032462     249,   249,   249,   249,   249,   249,   249,   249,   249,   249, 
    2804      249,   249,     5,    22,   249,   255,   249,     5,   249,     5, 
    2805      249,   356,   272,   258,   263,   263,     3,   163,   245,   192, 
    2806      163,     3,     3,   163,   162,   298,     5,     3,   373,   360, 
    2807       21,    23,   162,   249,     3,   163,   163,   163,   163,     3, 
    2808      373,     3,   163,     3,    22,     3,   163,   162,   160,   336, 
    2809      238,   202,   207,   208,   253,   249,     3,   201,   160,   206, 
    2810      202,   162,   162,   179,   305,   162,   182,   182,   249,   163, 
    2811      222,   220,     4,    21,   246,   247,   248,   249,   220,   245, 
    2812      245,   220,   218,   245,   162,     3,   131,   182,   160,   245, 
    2813      230,     5,   238,   163,     3,   239,    21,   163,   245,    27, 
    2814      160,   278,   279,   249,   285,   286,   287,   289,   292,   293, 
    2815      282,    91,   115,   308,   309,   330,    83,   311,   312,   316, 
    2816      112,   162,   326,   107,   322,   325,   172,   267,   161,   163, 
    2817        3,   249,   163,   363,   254,   365,   365,   365,     3,   363, 
    2818      360,   360,   360,   360,   360,   293,   249,   163,   163,   163, 
     2463     163,   251,   163,   251,   251,   251,   252,   366,   367,     3, 
     2464       3,   126,     3,   251,   163,     3,     5,   249,   256,   249, 
     2465     249,   249,   249,   249,   249,   249,   249,   249,   249,   249, 
     2466     249,   249,   249,     5,    22,   249,   255,   249,     5,   249, 
     2467       5,   249,   356,   272,   258,   263,   263,     3,   163,   245, 
     2468     192,   163,     3,     3,   163,   162,   298,     5,     3,   373, 
     2469     360,    21,    23,   162,   249,     3,   163,   163,   163,   163, 
     2470       3,   373,     3,   163,     3,    22,     3,   163,   162,   160, 
     2471     336,   238,   202,   207,   208,   253,   249,     3,   201,   160, 
     2472     206,   202,   162,   162,   179,   305,   162,   182,   182,   249, 
     2473     163,   222,   220,     4,    21,   246,   247,   248,   249,   220, 
     2474     245,   245,   220,   218,   245,   162,     3,   131,   182,   160, 
     2475     245,   230,     5,   238,   163,     3,   239,    21,   163,   245, 
     2476      27,   160,   278,   279,   249,   285,   286,   287,   289,   292, 
     2477     293,   282,    91,   115,   308,   309,   330,    83,   311,   312, 
     2478     316,   112,   162,   326,   107,   322,   325,   172,   267,   161, 
     2479     163,     3,   249,   163,   363,   254,   365,   365,   365,     3, 
     2480     363,   360,   360,   360,   360,   360,   293,   249,   163,   163, 
    28192481     163,   163,   163,   163,   163,   163,   163,   163,   163,   163, 
    2820      163,   163,   163,   163,   163,   163,     3,     3,     3,   249, 
    2821      367,   249,   367,   249,   367,   163,   252,   249,   249,   249, 
    2822      249,   249,   257,     4,     4,   249,   264,   265,   266,   163, 
    2823      163,   267,   133,   160,   249,    35,    82,    88,   284,   249, 
    2824      249,   121,   371,   163,   249,   266,   168,   245,   355,   371, 
    2825      163,   267,   188,   249,   194,    22,     3,    19,    20,    21, 
    2826      167,   268,   163,   160,   368,    22,   249,   249,   305,    21, 
    2827      160,   163,   184,   185,    26,   177,   205,   249,     3,   163, 
    2828        4,   267,    21,   233,   233,   217,   134,   135,   136,   243, 
    2829      242,   245,   233,   163,   238,   239,   160,   163,     4,   122, 
    2830        3,    36,   290,   295,   172,   172,   160,   162,    84,   312, 
    2831      313,   314,   317,   172,     4,   249,   327,   328,   329,   160, 
    2832      160,   299,   337,   347,     3,   163,   254,   364,   160,   368, 
    2833      368,   368,   163,   272,     4,   249,     4,     3,   271,   245, 
    2834      163,   162,   162,   163,     3,     5,   163,   356,   163,   202, 
    2835      207,   207,   207,   207,     5,   163,   163,   163,     3,   163, 
    2836      162,   183,   247,   248,   249,   162,   234,   249,   163,   233, 
    2837        5,   122,   274,   239,   238,   160,   166,   280,   281,   160, 
    2838      279,   294,    37,    38,   296,   297,   172,   249,   160,    85, 
    2839      312,   318,   172,   299,   329,     3,   163,     4,   245,   368, 
    2840      365,   163,   163,   163,   163,   249,     4,   249,   265,     3, 
    2841      294,   249,   249,   257,   338,   249,    22,    82,   185,   163, 
    2842      184,    21,   274,   249,   249,   122,     3,   163,   160,   160, 
    2843      172,   288,   163,   160,   299,   328,   329,   245,   163,   249, 
    2844        4,   249,   163,   163,     3,     3,   202,   163,   163,   160, 
    2845      281,   160,   288,    82,   249,   249,   249,    22,   160,     3, 
    2846      249 
     2482     163,   163,   163,   163,   163,   163,   163,     3,     3,     3, 
     2483     249,   367,   249,   367,   249,   367,   163,   252,   249,   249, 
     2484     249,   249,   249,   257,     4,     4,   249,   264,   265,   266, 
     2485     163,   163,   267,   133,   160,   249,    35,    82,    88,   284, 
     2486     249,   249,   121,   371,   163,   249,   266,   168,   245,   355, 
     2487     371,   163,   267,   188,   249,   194,    22,     3,    19,    20, 
     2488      21,   167,   268,   163,   160,   368,    22,   249,   249,   305, 
     2489      21,   160,   163,   184,   185,    26,   177,   205,   249,     3, 
     2490     163,     4,   267,    21,   233,   233,   217,   134,   135,   136, 
     2491     243,   242,   245,   233,   163,   238,   239,   160,   163,     4, 
     2492     122,     3,    36,   290,   295,   172,   172,   160,   162,    84, 
     2493     312,   313,   314,   317,   172,     4,   249,   327,   328,   329, 
     2494     160,   160,   299,   337,   347,     3,   163,   254,   364,   160, 
     2495     368,   368,   368,   163,   272,     4,   249,     4,     3,   271, 
     2496     245,   163,   162,   162,   163,     3,     5,   163,   356,   163, 
     2497     202,   207,   207,   207,   207,     5,   163,   163,   163,     3, 
     2498     163,   162,   183,   247,   248,   249,   162,   234,   249,   163, 
     2499     233,     5,   122,   274,   239,   238,   160,   166,   280,   281, 
     2500     160,   279,   294,    37,    38,   296,   297,   172,   249,   160, 
     2501      85,   312,   318,   172,   299,   329,     3,   163,     4,   245, 
     2502     368,   365,   163,   163,   163,   163,   249,     4,   249,   265, 
     2503       3,   294,   249,   249,   257,   338,   249,    22,    82,   185, 
     2504     163,   184,    21,   274,   249,   249,   122,     3,   163,   160, 
     2505     160,   172,   288,   163,   160,   299,   328,   329,   245,   163, 
     2506     249,     4,   249,   163,   163,     3,     3,   202,   163,   163, 
     2507     160,   281,   160,   288,    82,   249,   249,   249,    22,   160, 
     2508       3,   249 
    28472509}; 
    28482510 
    2849 #define yyerrok      (yyerrstatus = 0) 
    2850 #define yyclearin (yychar = YYEMPTY) 
    2851 #define YYEMPTY      (-2) 
    2852 #define YYEOF     0 
    2853  
    2854 #define YYACCEPT  goto yyacceptlab 
    2855 #define YYABORT      goto yyabortlab 
    2856 #define YYERROR      goto yyerrorlab 
    2857  
    2858  
    2859 /* Like YYERROR except do call yyerror.  This remains here temporarily 
    2860    to ease the transition to the new meaning of YYERROR, for GCC. 
    2861    Once GCC version 2 has supplanted version 1, this can go.  However, 
    2862    YYFAIL appears to be in use.  Nevertheless, it is formally deprecated 
    2863    in Bison 2.4.2's NEWS entry, where a plan to phase it out is 
    2864    discussed.  */ 
    2865  
    2866 #define YYFAIL    goto yyerrlab 
    2867 #if defined YYFAIL 
    2868   /* This is here to suppress warnings from the GCC cpp's 
    2869      -Wunused-macros.  Normally we don't worry about that warning, but 
    2870      some users do, and we want to make it easy for users to remove 
    2871      YYFAIL uses, which will produce warnings from Bison 2.5.  */ 
    2872 #endif 
     2511  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ 
     2512static const yytype_uint16 yyr1[] = 
     2513{ 
     2514       0,   169,   170,   170,   171,   171,   171,   171,   172,   172, 
     2515     172,   172,   172,   173,   173,   173,   174,   174,   174,   174, 
     2516     175,   176,   176,   177,   177,   178,   178,   178,   178,   179, 
     2517     179,   180,   181,   182,   182,   182,   183,   183,   183,   184, 
     2518     184,   185,   185,   186,   186,   186,   186,   186,   186,   186, 
     2519     186,   186,   186,   186,   186,   186,   186,   186,   186,   186, 
     2520     186,   186,   186,   187,   187,   188,   188,   188,   188,   188, 
     2521     188,   188,   188,   188,   188,   188,   188,   188,   188,   188, 
     2522     188,   188,   188,   188,   188,   188,   188,   188,   188,   189, 
     2523     189,   190,   190,   191,   191,   192,   193,   193,   194,   194, 
     2524     195,   195,   196,   196,   197,   198,   199,   200,   200,   201, 
     2525     201,   201,   202,   202,   203,   203,   203,   203,   204,   205, 
     2526     205,   206,   206,   206,   207,   207,   207,   207,   207,   208, 
     2527     208,   209,   209,   209,   209,   210,   211,   211,   212,   212, 
     2528     213,   213,   214,   214,   214,   214,   215,   215,   215,   216, 
     2529     216,   217,   217,   218,   219,   219,   220,   220,   221,   221, 
     2530     222,   223,   224,   224,   225,   225,   226,   226,   227,   228, 
     2531     228,   228,   228,   229,   229,   229,   229,   230,   230,   230, 
     2532     231,   232,   232,   232,   232,   232,   232,   233,   233,   234, 
     2533     234,   235,   235,   235,   236,   236,   237,   237,   237,   237, 
     2534     237,   238,   238,   238,   239,   239,   240,   240,   240,   241, 
     2535     241,   242,   242,   242,   242,   242,   242,   242,   242,   242, 
     2536     242,   242,   243,   243,   243,   244,   244,   245,   245,   246, 
     2537     246,   247,   247,   247,   247,   247,   248,   248,   249,   249, 
     2538     249,   249,   250,   250,   250,   250,   250,   250,   250,   250, 
     2539     250,   250,   250,   250,   250,   250,   250,   250,   250,   250, 
     2540     250,   250,   250,   250,   250,   250,   250,   250,   251,   251, 
     2541     252,   252,   252,   252,   252,   252,   253,   253,   254,   254, 
     2542     254,   254,   254,   254,   254,   254,   254,   254,   254,   254, 
     2543     254,   254,   254,   254,   254,   254,   254,   254,   254,   255, 
     2544     255,   255,   255,   256,   256,   257,   257,   257,   258,   259, 
     2545     259,   259,   259,   260,   261,   262,   263,   263,   264,   264, 
     2546     265,   265,   266,   266,   266,   266,   266,   266,   266,   267, 
     2547     268,   268,   268,   268,   268,   268,   268,   268,   269,   269, 
     2548     269,   269,   270,   270,   271,   272,   272,   273,   273,   274, 
     2549     274,   274,   275,   276,   276,   276,   276,   277,   278,   278, 
     2550     279,   280,   280,   281,   281,   282,   282,   283,   283,   283, 
     2551     283,   283,   284,   284,   284,   284,   284,   284,   284,   284, 
     2552     284,   284,   284,   284,   284,   284,   284,   284,   284,   284, 
     2553     284,   284,   284,   284,   284,   284,   284,   285,   286,   287, 
     2554     288,   288,   289,   289,   290,   290,   291,   292,   292,   292, 
     2555     293,   294,   295,   295,   296,   296,   297,   297,   298,   299, 
     2556     299,   299,   300,   301,   302,   302,   303,   303,   303,   303, 
     2557     304,   304,   304,   304,   305,   305,   305,   305,   306,   307, 
     2558     308,   308,   309,   309,   310,   311,   311,   311,   312,   313, 
     2559     313,   313,   314,   315,   315,   316,   316,   317,   317,   318, 
     2560     318,   319,   320,   321,   321,   321,   322,   323,   323,   324, 
     2561     324,   325,   325,   326,   326,   327,   327,   328,   328,   328, 
     2562     328,   329,   330,   331,   332,   333,   334,   335,   336,   336, 
     2563     337,   338,   338,   339,   339,   340,   340,   341,   342,   342, 
     2564     343,   343,   344,   344,   345,   346,   346,   347,   347,   348, 
     2565     348,   349,   349,   350,   350,   351,   351,   352,   353,   353, 
     2566     353,   353,   353,   354,   354,   355,   355,   355,   355,   355, 
     2567     355,   355,   355,   356,   357,   357,   357,   358,   358,   359, 
     2568     359,   359,   360,   360,   361,   361,   361,   361,   361,   361, 
     2569     361,   361,   361,   361,   361,   361,   361,   361,   361,   361, 
     2570     361,   362,   362,   363,   363,   364,   364,   364,   364,   364, 
     2571     365,   365,   365,   366,   366,   366,   366,   366,   366,   366, 
     2572     366,   366,   366,   367,   367,   367,   368,   368,   369,   369, 
     2573     370,   370,   371,   372,   372,   373,   373,   374,   374 
     2574}; 
     2575 
     2576  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */ 
     2577static const yytype_uint8 yyr2[] = 
     2578{ 
     2579       0,     2,     0,     2,     1,     1,     2,     1,     2,     1, 
     2580       3,     2,     2,     1,     3,     3,     2,     2,     3,     1, 
     2581       0,     0,     1,     0,     2,     4,     2,     5,     2,     1, 
     2582       2,     1,     1,     0,     2,     3,     0,     2,     3,     1, 
     2583       3,     1,     1,     2,     4,     2,     2,     4,     2,     1, 
     2584       1,     1,     1,     1,     1,     1,     1,     1,     4,     3, 
     2585       3,     2,     2,     0,     1,     1,     1,     1,     1,     1, 
     2586       1,     1,     1,     1,     1,     1,     1,     1,     1,     1, 
     2587       1,     1,     1,     1,     1,     1,     1,     1,     1,     1, 
     2588       3,     3,     5,     1,     3,     3,     2,     4,     1,     3, 
     2589       0,     1,     2,     3,     1,     1,     2,     1,     3,     4, 
     2590       4,     8,     1,     3,     2,     3,     5,     3,     1,     0, 
     2591       2,     1,     4,     3,     2,     3,     3,     3,     3,     0, 
     2592       1,     2,     3,     5,     3,     1,     5,     5,     2,     3, 
     2593       2,     3,     1,     1,     3,     3,     2,     3,     5,     1, 
     2594       2,     1,     3,     2,     1,     3,     0,     1,     1,     3, 
     2595       3,     2,     1,     3,     2,     2,     5,     6,     0,     2, 
     2596       2,     3,     3,     0,     2,     4,     3,     3,     4,     2, 
     2597       1,     1,     1,     1,     1,     1,     1,     0,     2,     1, 
     2598       3,     0,     2,     3,     1,     3,     2,     3,     1,     1, 
     2599       1,     1,     1,     1,     0,     3,     0,     1,     3,     1, 
     2600       3,     1,     1,     1,     2,     1,     4,     1,     1,     1, 
     2601       1,     1,     1,     1,     1,     1,     1,     0,     3,     1, 
     2602       3,     1,     1,     2,     2,     3,     1,     1,     1,     1, 
     2603       1,     3,     3,     3,     4,     4,     3,     4,     4,     3, 
     2604       4,     4,     4,     4,     4,     4,     4,     4,     4,     4, 
     2605       4,     4,     4,     3,     4,     3,     4,     4,     1,     3, 
     2606       1,     1,     1,     2,     2,     2,     1,     1,     2,     2, 
     2607       2,     2,     2,     2,     2,     2,     2,     3,     3,     2, 
     2608       2,     2,     2,     2,     2,     2,     2,     2,     2,     0, 
     2609       1,     2,     2,     2,     1,     1,     1,     1,     0,     1, 
     2610       2,     4,     5,     4,     4,     3,     1,     2,     1,     3, 
     2611       1,     1,     3,     5,     4,     3,     2,     2,     1,     1, 
     2612       1,     1,     1,     1,     1,     1,     2,     2,     1,     2, 
     2613       1,     1,     0,     1,     5,     0,     1,     1,     1,     0, 
     2614       2,     2,     5,     2,     4,     6,     6,     1,     1,     3, 
     2615       3,     1,     3,     3,     1,     1,     1,     1,     1,     1, 
     2616       1,     1,     1,     2,     1,     1,     2,     2,     2,     3, 
     2617       2,     5,     5,     2,     2,     2,     2,     1,     4,     1, 
     2618       2,     2,     2,     2,     1,     1,     1,     1,     5,     6, 
     2619       0,     3,     0,     4,     0,     4,     4,     1,     1,     1, 
     2620       1,     1,     3,     4,     1,     2,     1,     2,     0,     0, 
     2621       2,     3,     1,     4,     1,     1,     4,     2,     5,     3, 
     2622       3,     1,     4,     2,     6,     8,     5,     3,     1,     1, 
     2623       1,     1,     1,     2,     6,     0,     1,     2,     3,     0, 
     2624       1,     2,     3,     7,     5,     5,     6,     1,     2,     1, 
     2625       2,     5,     4,     0,     1,     2,     3,     6,     4,     2, 
     2626       3,     1,     2,     3,     1,     1,     3,     1,     2,     2, 
     2627       3,     1,     1,     1,     1,     1,     1,     1,     1,     1, 
     2628       0,     4,     7,     1,     3,     2,     2,     2,     0,     3, 
     2629       0,     1,     2,     2,     1,     1,     3,     1,     2,     1, 
     2630       1,     0,     1,     2,     2,     0,     2,     3,     3,     3, 
     2631       1,     3,     1,     1,     3,     1,     1,     1,     3,     5, 
     2632       4,     2,     2,     0,     1,     1,     1,     1,     1,     1, 
     2633       1,     1,     1,     3,     1,     1,     3,     3,     3,     3, 
     2634       2,     3,     2,     2,     2,     2,     2,     2,     2,     3, 
     2635       1,     1,     1,     1,     3,     2,     4,     2,     2,     5, 
     2636       0,     1,     2,     1,     1,     1,     1,     3,     3,     3, 
     2637       3,     3,     3,     5,     5,     5,     5,     7,     8,     2, 
     2638       1,     3,     1,     1,     3,     0,     4,     1,     3 
     2639}; 
     2640 
     2641 
     2642#define yyerrok         (yyerrstatus = 0) 
     2643#define yyclearin       (yychar = YYEMPTY) 
     2644#define YYEMPTY         (-2) 
     2645#define YYEOF           0 
     2646 
     2647#define YYACCEPT        goto yyacceptlab 
     2648#define YYABORT         goto yyabortlab 
     2649#define YYERROR         goto yyerrorlab 
     2650 
    28732651 
    28742652#define YYRECOVERING()  (!!yyerrstatus) 
    28752653 
    2876 #define YYBACKUP(Token, Value)                                  \ 
    2877 do                                                              \ 
    2878   if (yychar == YYEMPTY)                                        \ 
    2879     {                                                           \ 
    2880       yychar = (Token);                                         \ 
    2881       yylval = (Value);                                         \ 
    2882       YYPOPSTACK (yylen);                                       \ 
    2883       yystate = *yyssp;                                         \ 
    2884       goto yybackup;                                            \ 
    2885     }                                                           \ 
    2886   else                                                          \ 
    2887     {                                                           \ 
    2888       yyerror (YY_("syntax error: cannot back up")); \ 
    2889       YYERROR;                   \ 
    2890     }                      \ 
    2891 while (YYID (0)) 
     2654#define YYBACKUP(Token, Value)                                    \ 
     2655  do                                                              \ 
     2656    if (yychar == YYEMPTY)                                        \ 
     2657      {                                                           \ 
     2658        yychar = (Token);                                         \ 
     2659        yylval = (Value);                                         \ 
     2660        YYPOPSTACK (yylen);                                       \ 
     2661        yystate = *yyssp;                                         \ 
     2662        goto yybackup;                                            \ 
     2663      }                                                           \ 
     2664    else                                                          \ 
     2665      {                                                           \ 
     2666        yyerror (YY_("syntax error: cannot back up")); \ 
     2667        YYERROR;                                                  \ 
     2668      }                                                           \ 
     2669  while (0) 
    28922670 
    28932671/* Error token number */ 
    2894 #define YYTERROR  1 
    2895 #define YYERRCODE 256 
    2896  
     2672#define YYTERROR        1 
     2673#define YYERRCODE       256 
     2674 
     2675 
     2676 
     2677/* Enable debugging if requested.  */ 
     2678#if YYDEBUG 
     2679 
     2680# ifndef YYFPRINTF 
     2681#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */ 
     2682#  define YYFPRINTF fprintf 
     2683# endif 
     2684 
     2685# define YYDPRINTF(Args)                        \ 
     2686do {                                            \ 
     2687  if (yydebug)                                  \ 
     2688    YYFPRINTF Args;                             \ 
     2689} while (0) 
    28972690 
    28982691/* This macro is provided for backward compatibility. */ 
     
    29022695 
    29032696 
    2904 /* YYLEX -- calling `yylex' with the right arguments.  */ 
    2905 #ifdef YYLEX_PARAM 
    2906 # define YYLEX yylex (YYLEX_PARAM) 
    2907 #else 
    2908 # define YYLEX yylex () 
    2909 #endif 
    2910  
    2911 /* Enable debugging if requested.  */ 
    2912 #if YYDEBUG 
    2913  
    2914 # ifndef YYFPRINTF 
    2915 #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */ 
    2916 #  define YYFPRINTF fprintf 
    2917 # endif 
    2918  
    2919 # define YYDPRINTF(Args)         \ 
    2920 do {                 \ 
    2921   if (yydebug)             \ 
    2922     YYFPRINTF Args;           \ 
    2923 } while (YYID (0)) 
    2924  
    2925 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)           \ 
    2926 do {                            \ 
    2927   if (yydebug)                        \ 
    2928     {                           \ 
    2929       YYFPRINTF (stderr, "%s ", Title);                 \ 
    2930       yy_symbol_print (stderr,                    \ 
    2931         Type, Value); \ 
    2932       YYFPRINTF (stderr, "\n");                   \ 
    2933     }                           \ 
    2934 } while (YYID (0)) 
    2935  
    2936  
    2937 /*--------------------------------. 
    2938 | Print this symbol on YYOUTPUT.  | 
    2939 `--------------------------------*/ 
    2940  
    2941 /*ARGSUSED*/ 
    2942 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    2943      || defined __cplusplus || defined _MSC_VER) 
     2697# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \ 
     2698do {                                                                      \ 
     2699  if (yydebug)                                                            \ 
     2700    {                                                                     \ 
     2701      YYFPRINTF (stderr, "%s ", Title);                                   \ 
     2702      yy_symbol_print (stderr,                                            \ 
     2703                  Type, Value); \ 
     2704      YYFPRINTF (stderr, "\n");                                           \ 
     2705    }                                                                     \ 
     2706} while (0) 
     2707 
     2708 
     2709/*-----------------------------------. 
     2710| Print this symbol's value on YYO.  | 
     2711`-----------------------------------*/ 
     2712 
    29442713static void 
    2945 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 
    2946 #else 
    2947 static void 
    2948 yy_symbol_value_print (yyoutput, yytype, yyvaluep) 
    2949     FILE *yyoutput; 
    2950     int yytype; 
    2951     YYSTYPE const * const yyvaluep; 
    2952 #endif 
     2714yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep) 
    29532715{ 
    2954   FILE *yyo = yyoutput; 
    2955   YYUSE (yyo); 
     2716  FILE *yyoutput = yyo; 
     2717  YYUSE (yyoutput); 
    29562718  if (!yyvaluep) 
    29572719    return; 
    29582720# ifdef YYPRINT 
    29592721  if (yytype < YYNTOKENS) 
    2960     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); 
    2961 # else 
    2962   YYUSE (yyoutput); 
     2722    YYPRINT (yyo, yytoknum[yytype], *yyvaluep); 
    29632723# endif 
    2964   switch (yytype) 
    2965     { 
    2966       default: 
    2967         break; 
    2968     } 
     2724  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     2725  YYUSE (yytype); 
     2726  YY_IGNORE_MAYBE_UNINITIALIZED_END 
    29692727} 
    29702728 
    29712729 
    2972 /*--------------------------------. 
    2973 | Print this symbol on YYOUTPUT.  | 
    2974 `--------------------------------*/ 
    2975  
    2976 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    2977      || defined __cplusplus || defined _MSC_VER) 
     2730/*---------------------------. 
     2731| Print this symbol on YYO.  | 
     2732`---------------------------*/ 
     2733 
    29782734static void 
    2979 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 
    2980 #else 
    2981 static void 
    2982 yy_symbol_print (yyoutput, yytype, yyvaluep) 
    2983     FILE *yyoutput; 
    2984     int yytype; 
    2985     YYSTYPE const * const yyvaluep; 
    2986 #endif 
     2735yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep) 
    29872736{ 
    2988   if (yytype < YYNTOKENS) 
    2989     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); 
    2990   else 
    2991     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); 
    2992  
    2993   yy_symbol_value_print (yyoutput, yytype, yyvaluep); 
    2994   YYFPRINTF (yyoutput, ")"); 
     2737  YYFPRINTF (yyo, "%s %s (", 
     2738             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]); 
     2739 
     2740  yy_symbol_value_print (yyo, yytype, yyvaluep); 
     2741  YYFPRINTF (yyo, ")"); 
    29952742} 
    29962743 
     
    30002747`------------------------------------------------------------------*/ 
    30012748 
    3002 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    3003      || defined __cplusplus || defined _MSC_VER) 
    30042749static void 
    30052750yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) 
    3006 #else 
    3007 static void 
    3008 yy_stack_print (yybottom, yytop) 
    3009     yytype_int16 *yybottom; 
    3010     yytype_int16 *yytop; 
    3011 #endif 
    30122751{ 
    30132752  YYFPRINTF (stderr, "Stack now"); 
     
    30202759} 
    30212760 
    3022 # define YY_STACK_PRINT(Bottom, Top)            \ 
    3023 do {                       \ 
    3024   if (yydebug)                   \ 
    3025     yy_stack_print ((Bottom), (Top));           \ 
    3026 } while (YYID (0)) 
     2761# define YY_STACK_PRINT(Bottom, Top)                            \ 
     2762do {                                                            \ 
     2763  if (yydebug)                                                  \ 
     2764    yy_stack_print ((Bottom), (Top));                           \ 
     2765} while (0) 
    30272766 
    30282767 
     
    30312770`------------------------------------------------*/ 
    30322771 
    3033 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    3034      || defined __cplusplus || defined _MSC_VER) 
    30352772static void 
    3036 yy_reduce_print (YYSTYPE *yyvsp, int yyrule) 
    3037 #else 
    3038 static void 
    3039 yy_reduce_print (yyvsp, yyrule) 
    3040     YYSTYPE *yyvsp; 
    3041     int yyrule; 
    3042 #endif 
     2773yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule) 
    30432774{ 
     2775  unsigned long yylno = yyrline[yyrule]; 
    30442776  int yynrhs = yyr2[yyrule]; 
    30452777  int yyi; 
    3046   unsigned long int yylno = yyrline[yyrule]; 
    30472778  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", 
    3048         yyrule - 1, yylno); 
     2779             yyrule - 1, yylno); 
    30492780  /* The symbols being reduced.  */ 
    30502781  for (yyi = 0; yyi < yynrhs; yyi++) 
    30512782    { 
    30522783      YYFPRINTF (stderr, "   $%d = ", yyi + 1); 
    3053       yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], 
    3054              &(yyvsp[(yyi + 1) - (yynrhs)]) 
    3055                          ); 
     2784      yy_symbol_print (stderr, 
     2785                       yystos[yyssp[yyi + 1 - yynrhs]], 
     2786                       &yyvsp[(yyi + 1) - (yynrhs)] 
     2787                                              ); 
    30562788      YYFPRINTF (stderr, "\n"); 
    30572789    } 
    30582790} 
    30592791 
    3060 # define YY_REDUCE_PRINT(Rule)      \ 
    3061 do {              \ 
    3062   if (yydebug)          \ 
    3063     yy_reduce_print (yyvsp, Rule); \ 
    3064 } while (YYID (0)) 
     2792# define YY_REDUCE_PRINT(Rule)          \ 
     2793do {                                    \ 
     2794  if (yydebug)                          \ 
     2795    yy_reduce_print (yyssp, yyvsp, Rule); \ 
     2796} while (0) 
    30652797 
    30662798/* Nonzero means print parse trace.  It is left uninitialized so that 
     
    30762808 
    30772809/* YYINITDEPTH -- initial size of the parser's stacks.  */ 
    3078 #ifndef  YYINITDEPTH 
     2810#ifndef YYINITDEPTH 
    30792811# define YYINITDEPTH 200 
    30802812#endif 
     
    30992831#  else 
    31002832/* Return the length of YYSTR.  */ 
    3101 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    3102      || defined __cplusplus || defined _MSC_VER) 
    31032833static YYSIZE_T 
    31042834yystrlen (const char *yystr) 
    3105 #else 
    3106 static YYSIZE_T 
    3107 yystrlen (yystr) 
    3108     const char *yystr; 
    3109 #endif 
    31102835{ 
    31112836  YYSIZE_T yylen; 
     
    31232848/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in 
    31242849   YYDEST.  */ 
    3125 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    3126      || defined __cplusplus || defined _MSC_VER) 
    31272850static char * 
    31282851yystpcpy (char *yydest, const char *yysrc) 
    3129 #else 
    3130 static char * 
    3131 yystpcpy (yydest, yysrc) 
    3132     char *yydest; 
    3133     const char *yysrc; 
    3134 #endif 
    31352852{ 
    31362853  char *yyd = yydest; 
     
    31622879 
    31632880      for (;;) 
    3164    switch (*++yyp) 
    3165      { 
    3166      case '\'': 
    3167      case ',': 
    3168        goto do_not_strip_quotes; 
    3169  
    3170      case '\\': 
    3171        if (*++yyp != '\\') 
    3172          goto do_not_strip_quotes; 
    3173        /* Fall through.  */ 
    3174      default: 
    3175        if (yyres) 
    3176          yyres[yyn] = *yyp; 
    3177        yyn++; 
    3178        break; 
    3179  
    3180      case '"': 
    3181        if (yyres) 
    3182          yyres[yyn] = '\0'; 
    3183        return yyn; 
    3184      } 
     2881        switch (*++yyp) 
     2882          { 
     2883          case '\'': 
     2884          case ',': 
     2885            goto do_not_strip_quotes; 
     2886 
     2887          case '\\': 
     2888            if (*++yyp != '\\') 
     2889              goto do_not_strip_quotes; 
     2890            else 
     2891              goto append; 
     2892 
     2893          append: 
     2894          default: 
     2895            if (yyres) 
     2896              yyres[yyn] = *yyp; 
     2897            yyn++; 
     2898            break; 
     2899 
     2900          case '"': 
     2901            if (yyres) 
     2902              yyres[yyn] = '\0'; 
     2903            return yyn; 
     2904          } 
    31852905    do_not_strip_quotes: ; 
    31862906    } 
     
    31892909    return yystrlen (yystr); 
    31902910 
    3191   return yystpcpy (yyres, yystr) - yyres; 
     2911  return (YYSIZE_T) (yystpcpy (yyres, yystr) - yyres); 
    31922912} 
    31932913# endif 
     
    32052925                yytype_int16 *yyssp, int yytoken) 
    32062926{ 
    3207   YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]); 
     2927  YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); 
    32082928  YYSIZE_T yysize = yysize0; 
    32092929  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; 
    32102930  /* Internationalized format string. */ 
    3211   const char *yyformat = YY_NULL; 
     2931  const char *yyformat = YY_NULLPTR; 
    32122932  /* Arguments of yyformat. */ 
    32132933  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; 
     
    32172937 
    32182938  /* There are many possibilities here to consider: 
    3219      - Assume YYFAIL is not used.  It's too flawed to consider.  See 
    3220        <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html> 
    3221        for details.  YYERROR is fine as it does not invoke this 
    3222        function. 
    32232939     - If this state is a consistent state with a default action, then 
    32242940       the only way this function was invoked is if the default action 
     
    32702986                yyarg[yycount++] = yytname[yyx]; 
    32712987                { 
    3272                   YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]); 
    3273                   if (! (yysize <= yysize1 
    3274                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) 
     2988                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); 
     2989                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) 
     2990                    yysize = yysize1; 
     2991                  else 
    32752992                    return 2; 
    3276                   yysize = yysize1; 
    32772993                } 
    32782994              } 
     
    32863002        yyformat = S;                       \ 
    32873003      break 
     3004    default: /* Avoid compiler warnings. */ 
    32883005      YYCASE_(0, YY_("syntax error")); 
    32893006      YYCASE_(1, YY_("syntax error, unexpected %s")); 
     
    32973014  { 
    32983015    YYSIZE_T yysize1 = yysize + yystrlen (yyformat); 
    3299     if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) 
     3016    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) 
     3017      yysize = yysize1; 
     3018    else 
    33003019      return 2; 
    3301     yysize = yysize1; 
    33023020  } 
    33033021 
     
    33373055`-----------------------------------------------*/ 
    33383056 
    3339 /*ARGSUSED*/ 
    3340 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    3341      || defined __cplusplus || defined _MSC_VER) 
    33423057static void 
    33433058yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) 
    3344 #else 
    3345 static void 
    3346 yydestruct (yymsg, yytype, yyvaluep) 
    3347     const char *yymsg; 
    3348     int yytype; 
    3349     YYSTYPE *yyvaluep; 
    3350 #endif 
    33513059{ 
    33523060  YYUSE (yyvaluep); 
    3353  
    33543061  if (!yymsg) 
    33553062    yymsg = "Deleting"; 
    33563063  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); 
    33573064 
    3358   switch (yytype) 
    3359     { 
    3360  
    3361       default: 
    3362         break; 
    3363     } 
     3065  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     3066  YYUSE (yytype); 
     3067  YY_IGNORE_MAYBE_UNINITIALIZED_END 
    33643068} 
    33653069 
     
    33703074int yychar; 
    33713075 
    3372  
    3373 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
    3374 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
    3375 # define YY_IGNORE_MAYBE_UNINITIALIZED_END 
    3376 #endif 
    3377 #ifndef YY_INITIAL_VALUE 
    3378 # define YY_INITIAL_VALUE(Value) /* Nothing. */ 
    3379 #endif 
    3380  
    33813076/* The semantic value of the lookahead symbol.  */ 
    3382 YYSTYPE yylval YY_INITIAL_VALUE(yyval_default); 
    3383  
     3077YYSTYPE yylval; 
    33843078/* Number of syntax errors so far.  */ 
    33853079int yynerrs; 
     
    33903084`----------*/ 
    33913085 
    3392 #ifdef YYPARSE_PARAM 
    3393 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    3394      || defined __cplusplus || defined _MSC_VER) 
    3395 int 
    3396 yyparse (void *YYPARSE_PARAM) 
    3397 #else 
    3398 int 
    3399 yyparse (YYPARSE_PARAM) 
    3400     void *YYPARSE_PARAM; 
    3401 #endif 
    3402 #else /* ! YYPARSE_PARAM */ 
    3403 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    3404      || defined __cplusplus || defined _MSC_VER) 
    34053086int 
    34063087yyparse (void) 
    3407 #else 
    3408 int 
    3409 yyparse () 
    3410  
    3411 #endif 
    3412 #endif 
    34133088{ 
    34143089    int yystate; 
     
    34173092 
    34183093    /* The stacks and their tools: 
    3419        `yyss': related to states. 
    3420        `yyvs': related to semantic values. 
     3094       'yyss': related to states. 
     3095       'yyvs': related to semantic values. 
    34213096 
    34223097       Refer to the stacks through separate pointers, to allow yyoverflow 
     
    34683143  goto yysetstate; 
    34693144 
     3145 
    34703146/*------------------------------------------------------------. 
    3471 | yynewstate -- Push a new state, which is found in yystate.  | 
     3147| yynewstate -- push a new state, which is found in yystate.  | 
    34723148`------------------------------------------------------------*/ 
    3473  yynewstate: 
     3149yynewstate: 
    34743150  /* In all cases, when you get here, the value and location stacks 
    34753151     have just been pushed.  So pushing a state here evens the stacks.  */ 
    34763152  yyssp++; 
    34773153 
    3478  yysetstate: 
    3479   *yyssp = yystate; 
     3154 
     3155/*--------------------------------------------------------------------. 
     3156| yynewstate -- set current state (the top of the stack) to yystate.  | 
     3157`--------------------------------------------------------------------*/ 
     3158yysetstate: 
     3159  YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 
     3160  YY_ASSERT (0 <= yystate && yystate < YYNSTATES); 
     3161  *yyssp = (yytype_int16) yystate; 
    34803162 
    34813163  if (yyss + yystacksize - 1 <= yyssp) 
     3164#if !defined yyoverflow && !defined YYSTACK_RELOCATE 
     3165    goto yyexhaustedlab; 
     3166#else 
    34823167    { 
    34833168      /* Get the current used size of the three stacks, in elements.  */ 
    3484       YYSIZE_T yysize = yyssp - yyss + 1; 
    3485  
    3486 #ifdef yyoverflow 
     3169      YYSIZE_T yysize = (YYSIZE_T) (yyssp - yyss + 1); 
     3170 
     3171# if defined yyoverflow 
    34873172      { 
    3488    /* Give user a chance to reallocate the stack.  Use copies of 
    3489       these so that the &'s don't force the real ones into 
    3490       memory.  */ 
    3491    YYSTYPE *yyvs1 = yyvs; 
    3492    yytype_int16 *yyss1 = yyss; 
    3493  
    3494    /* Each stack pointer address is followed by the size of the 
    3495       data in use in that stack, in bytes.  This used to be a 
    3496       conditional around just the two extra args, but that might 
    3497       be undefined if yyoverflow is a macro.  */ 
    3498    yyoverflow (YY_("memory exhausted"), 
    3499           &yyss1, yysize * sizeof (*yyssp), 
    3500           &yyvs1, yysize * sizeof (*yyvsp), 
    3501           &yystacksize); 
    3502  
    3503    yyss = yyss1; 
    3504    yyvs = yyvs1; 
     3173        /* Give user a chance to reallocate the stack.  Use copies of 
     3174           these so that the &'s don't force the real ones into 
     3175           memory.  */ 
     3176        YYSTYPE *yyvs1 = yyvs; 
     3177        yytype_int16 *yyss1 = yyss; 
     3178 
     3179        /* Each stack pointer address is followed by the size of the 
     3180           data in use in that stack, in bytes.  This used to be a 
     3181           conditional around just the two extra args, but that might 
     3182           be undefined if yyoverflow is a macro.  */ 
     3183        yyoverflow (YY_("memory exhausted"), 
     3184                    &yyss1, yysize * sizeof (*yyssp), 
     3185                    &yyvs1, yysize * sizeof (*yyvsp), 
     3186                    &yystacksize); 
     3187        yyss = yyss1; 
     3188        yyvs = yyvs1; 
    35053189      } 
    3506 #else /* no yyoverflow */ 
    3507 # ifndef YYSTACK_RELOCATE 
    3508       goto yyexhaustedlab; 
    3509 # else 
     3190# else /* defined YYSTACK_RELOCATE */ 
    35103191      /* Extend the stack our own way.  */ 
    35113192      if (YYMAXDEPTH <= yystacksize) 
    3512    goto yyexhaustedlab; 
     3193        goto yyexhaustedlab; 
    35133194      yystacksize *= 2; 
    35143195      if (YYMAXDEPTH < yystacksize) 
    3515    yystacksize = YYMAXDEPTH; 
     3196        yystacksize = YYMAXDEPTH; 
    35163197 
    35173198      { 
    3518    yytype_int16 *yyss1 = yyss; 
    3519    union yyalloc *yyptr = 
    3520      (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 
    3521    if (! yyptr) 
    3522      goto yyexhaustedlab; 
    3523    YYSTACK_RELOCATE (yyss_alloc, yyss); 
    3524    YYSTACK_RELOCATE (yyvs_alloc, yyvs); 
    3525 #  undef YYSTACK_RELOCATE 
    3526    if (yyss1 != yyssa) 
    3527      YYSTACK_FREE (yyss1); 
     3199        yytype_int16 *yyss1 = yyss; 
     3200        union yyalloc *yyptr = 
     3201          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 
     3202        if (! yyptr) 
     3203          goto yyexhaustedlab; 
     3204        YYSTACK_RELOCATE (yyss_alloc, yyss); 
     3205        YYSTACK_RELOCATE (yyvs_alloc, yyvs); 
     3206# undef YYSTACK_RELOCATE 
     3207        if (yyss1 != yyssa) 
     3208          YYSTACK_FREE (yyss1); 
    35283209      } 
    35293210# endif 
    3530 #endif /* no yyoverflow */ 
    35313211 
    35323212      yyssp = yyss + yysize - 1; 
     
    35343214 
    35353215      YYDPRINTF ((stderr, "Stack size increased to %lu\n", 
    3536         (unsigned long int) yystacksize)); 
     3216                  (unsigned long) yystacksize)); 
    35373217 
    35383218      if (yyss + yystacksize - 1 <= yyssp) 
    3539    YYABORT; 
     3219        YYABORT; 
    35403220    } 
    3541  
    3542   YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 
     3221#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */ 
    35433222 
    35443223  if (yystate == YYFINAL) 
     
    35463225 
    35473226  goto yybackup; 
     3227 
    35483228 
    35493229/*-----------. 
     
    35513231`-----------*/ 
    35523232yybackup: 
    3553  
    35543233  /* Do appropriate processing given the current state.  Read a 
    35553234     lookahead token if we need one and don't already have one.  */ 
     
    35663245    { 
    35673246      YYDPRINTF ((stderr, "Reading a token: ")); 
    3568       yychar = YYLEX; 
     3247      yychar = yylex (); 
    35693248    } 
    35703249 
     
    36093288  *++yyvsp = yylval; 
    36103289  YY_IGNORE_MAYBE_UNINITIALIZED_END 
    3611  
    36123290  goto yynewstate; 
    36133291 
     
    36243302 
    36253303/*-----------------------------. 
    3626 | yyreduce -- Do a reduction.  | 
     3304| yyreduce -- do a reduction.  | 
    36273305`-----------------------------*/ 
    36283306yyreduce: 
     
    36313309 
    36323310  /* If YYLEN is nonzero, implement the default value of the action: 
    3633      `$$ = $1'. 
     3311     '$$ = $1'. 
    36343312 
    36353313     Otherwise, the following line sets YYVAL to garbage. 
     
    36443322  switch (yyn) 
    36453323    { 
    3646         case 7: 
    3647 /* Line 1807 of yacc.c  */ 
     3324  case 7: 
    36483325#line 319 "fortran.y" 
    36493326    {yyerrok;yyclearin;} 
     3327#line 3328 "fortran.tab.c" 
    36503328    break; 
    36513329 
    36523330  case 18: 
    3653 /* Line 1807 of yacc.c  */ 
    36543331#line 337 "fortran.y" 
    36553332    { 
     
    36603337            } 
    36613338        } 
     3339#line 3340 "fortran.tab.c" 
    36623340    break; 
    36633341 
    36643342  case 20: 
    3665 /* Line 1807 of yacc.c  */ 
    36663343#line 347 "fortran.y" 
    36673344    { pos_cur = setposcur(); } 
     3345#line 3346 "fortran.tab.c" 
    36683346    break; 
    36693347 
    36703348  case 21: 
    3671 /* Line 1807 of yacc.c  */ 
    36723349#line 350 "fortran.y" 
    36733350    { isrecursive = 0; } 
     3351#line 3352 "fortran.tab.c" 
    36743352    break; 
    36753353 
    36763354  case 22: 
    3677 /* Line 1807 of yacc.c  */ 
    36783355#line 351 "fortran.y" 
    36793356    { isrecursive = 1; } 
     3357#line 3358 "fortran.tab.c" 
    36803358    break; 
    36813359 
    36823360  case 23: 
    3683 /* Line 1807 of yacc.c  */ 
    36843361#line 354 "fortran.y" 
    36853362    { is_result_present = 0; } 
     3363#line 3364 "fortran.tab.c" 
    36863364    break; 
    36873365 
    36883366  case 24: 
    3689 /* Line 1807 of yacc.c  */ 
    36903367#line 355 "fortran.y" 
    36913368    { is_result_present = 1; } 
     3369#line 3370 "fortran.tab.c" 
    36923370    break; 
    36933371 
    36943372  case 25: 
    3695 /* Line 1807 of yacc.c  */ 
    36963373#line 359 "fortran.y" 
    36973374    { 
    36983375            insubroutinedeclare = 1; 
    36993376            if ( firstpass ) 
    3700                 Add_SubroutineArgument_Var_1((yyvsp[(4) - (4)].l)); 
     3377                Add_SubroutineArgument_Var_1((yyvsp[0].l)); 
    37013378            else 
    37023379                WriteBeginof_SubLoop(); 
    37033380        } 
     3381#line 3382 "fortran.tab.c" 
    37043382    break; 
    37053383 
    37063384  case 26: 
    3707 /* Line 1807 of yacc.c  */ 
    37083385#line 367 "fortran.y" 
    37093386    { 
     
    37153392                WriteBeginof_SubLoop(); 
    37163393        } 
     3394#line 3395 "fortran.tab.c" 
    37173395    break; 
    37183396 
    37193397  case 27: 
    3720 /* Line 1807 of yacc.c  */ 
    37213398#line 376 "fortran.y" 
    37223399    { 
     
    37273404            if ( firstpass ) 
    37283405            { 
    3729                 Add_SubroutineArgument_Var_1((yyvsp[(4) - (5)].l)); 
     3406                Add_SubroutineArgument_Var_1((yyvsp[-1].l)); 
    37303407                if ( ! is_result_present ) 
    3731                     Add_FunctionType_Var_1((yyvsp[(3) - (5)].na)); 
     3408                    Add_FunctionType_Var_1((yyvsp[-2].na)); 
    37323409            } 
    37333410            else 
     
    37363413                WriteBeginof_SubLoop(); 
    37373414        } 
     3415#line 3416 "fortran.tab.c" 
    37383416    break; 
    37393417 
    37403418  case 28: 
    3741 /* Line 1807 of yacc.c  */ 
    37423419#line 393 "fortran.y" 
    37433420    { 
    37443421            GlobalDeclaration = 0; 
    3745             strcpy(curmodulename,(yyvsp[(2) - (2)].na)); 
     3422            strcpy(curmodulename,(yyvsp[0].na)); 
    37463423            strcpy(subroutinename,""); 
    3747             Add_NameOfModule_1((yyvsp[(2) - (2)].na)); 
     3424            Add_NameOfModule_1((yyvsp[0].na)); 
    37483425            if ( inmoduledeclare == 0 ) 
    37493426            { 
     
    37563433            } 
    37573434        } 
     3435#line 3436 "fortran.tab.c" 
    37583436    break; 
    37593437 
    37603438  case 31: 
    3761 /* Line 1807 of yacc.c  */ 
    37623439#line 415 "fortran.y" 
    3763     { strcpy((yyval.na), (yyvsp[(1) - (1)].na)); strcpy(subroutinename, (yyvsp[(1) - (1)].na)); } 
     3440    { strcpy((yyval.na), (yyvsp[0].na)); strcpy(subroutinename, (yyvsp[0].na)); } 
     3441#line 3442 "fortran.tab.c" 
    37643442    break; 
    37653443 
    37663444  case 32: 
    3767 /* Line 1807 of yacc.c  */ 
    37683445#line 417 "fortran.y" 
    3769     { Add_Include_1((yyvsp[(1) - (1)].na)); } 
     3446    { Add_Include_1((yyvsp[0].na)); } 
     3447#line 3448 "fortran.tab.c" 
    37703448    break; 
    37713449 
    37723450  case 33: 
    3773 /* Line 1807 of yacc.c  */ 
    37743451#line 419 "fortran.y" 
    37753452    { if ( firstpass ) (yyval.l)=NULL; } 
     3453#line 3454 "fortran.tab.c" 
    37763454    break; 
    37773455 
    37783456  case 34: 
    3779 /* Line 1807 of yacc.c  */ 
    37803457#line 420 "fortran.y" 
    37813458    { if ( firstpass ) (yyval.l)=NULL; } 
     3459#line 3460 "fortran.tab.c" 
    37823460    break; 
    37833461 
    37843462  case 35: 
    3785 /* Line 1807 of yacc.c  */ 
    37863463#line 421 "fortran.y" 
    3787     { if ( firstpass ) (yyval.l)=(yyvsp[(2) - (3)].l); } 
     3464    { if ( firstpass ) (yyval.l)=(yyvsp[-1].l); } 
     3465#line 3466 "fortran.tab.c" 
    37883466    break; 
    37893467 
    37903468  case 38: 
    3791 /* Line 1807 of yacc.c  */ 
    37923469#line 425 "fortran.y" 
    3793     { if ( firstpass ) Add_SubroutineArgument_Var_1((yyvsp[(2) - (3)].l)); } 
     3470    { if ( firstpass ) Add_SubroutineArgument_Var_1((yyvsp[-1].l)); } 
     3471#line 3472 "fortran.tab.c" 
    37943472    break; 
    37953473 
    37963474  case 39: 
    3797 /* Line 1807 of yacc.c  */ 
    37983475#line 428 "fortran.y" 
    37993476    { 
     
    38023479                strcpy(nameinttypenameback,nameinttypename); 
    38033480                strcpy(nameinttypename,""); 
    3804                 curvar = createvar((yyvsp[(1) - (1)].na),NULL); 
     3481                curvar = createvar((yyvsp[0].na),NULL); 
    38053482                strcpy(nameinttypename,nameinttypenameback); 
    38063483                curlistvar = insertvar(NULL,curvar); 
     
    38083485            } 
    38093486        } 
     3487#line 3488 "fortran.tab.c" 
    38103488    break; 
    38113489 
    38123490  case 40: 
    3813 /* Line 1807 of yacc.c  */ 
    38143491#line 440 "fortran.y" 
    38153492    { 
     
    38183495                strcpy(nameinttypenameback,nameinttypename); 
    38193496                strcpy(nameinttypename,""); 
    3820                 curvar = createvar((yyvsp[(3) - (3)].na),NULL); 
     3497                curvar = createvar((yyvsp[0].na),NULL); 
    38213498                strcpy(nameinttypename,nameinttypenameback); 
    3822                 (yyval.l) = insertvar((yyvsp[(1) - (3)].l),curvar); 
     3499                (yyval.l) = insertvar((yyvsp[-2].l),curvar); 
    38233500            } 
    38243501        } 
     3502#line 3503 "fortran.tab.c" 
    38253503    break; 
    38263504 
    38273505  case 41: 
    3828 /* Line 1807 of yacc.c  */ 
    38293506#line 451 "fortran.y" 
    3830     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));  } 
     3507    { strcpy((yyval.na),(yyvsp[0].na));  } 
     3508#line 3509 "fortran.tab.c" 
    38313509    break; 
    38323510 
    38333511  case 42: 
    3834 /* Line 1807 of yacc.c  */ 
    38353512#line 452 "fortran.y" 
    38363513    { strcpy((yyval.na),"*"); } 
     3514#line 3515 "fortran.tab.c" 
    38373515    break; 
    38383516 
    38393517  case 44: 
    3840 /* Line 1807 of yacc.c  */ 
    38413518#line 455 "fortran.y" 
    38423519    { inside_type_declare = 1; } 
     3520#line 3521 "fortran.tab.c" 
    38433521    break; 
    38443522 
    38453523  case 45: 
    3846 /* Line 1807 of yacc.c  */ 
    38473524#line 456 "fortran.y" 
    38483525    { inside_type_declare = 0; } 
     3526#line 3527 "fortran.tab.c" 
    38493527    break; 
    38503528 
    38513529  case 47: 
    3852 /* Line 1807 of yacc.c  */ 
    38533530#line 459 "fortran.y" 
    38543531    { 
     
    38573534                if ( firstpass ) 
    38583535                { 
    3859                     if ( insubroutinedeclare )  Add_Parameter_Var_1((yyvsp[(3) - (4)].l)); 
    3860                     else                        Add_GlobalParameter_Var_1((yyvsp[(3) - (4)].l)); 
     3536                    if ( insubroutinedeclare )  Add_Parameter_Var_1((yyvsp[-1].l)); 
     3537                    else                        Add_GlobalParameter_Var_1((yyvsp[-1].l)); 
    38613538                } 
    38623539                else 
     
    38683545            VariableIsParameter =  0 ; 
    38693546        } 
     3547#line 3548 "fortran.tab.c" 
    38703548    break; 
    38713549 
    38723550  case 48: 
    3873 /* Line 1807 of yacc.c  */ 
    38743551#line 476 "fortran.y" 
    38753552    { 
     
    38783555                if ( firstpass ) 
    38793556                { 
    3880                     if ( insubroutinedeclare )  Add_Parameter_Var_1((yyvsp[(2) - (2)].l)); 
    3881                     else                        Add_GlobalParameter_Var_1((yyvsp[(2) - (2)].l)); 
     3557                    if ( insubroutinedeclare )  Add_Parameter_Var_1((yyvsp[0].l)); 
     3558                    else                        Add_GlobalParameter_Var_1((yyvsp[0].l)); 
    38823559                } 
    38833560                else 
     
    38893566            VariableIsParameter =  0 ; 
    38903567        } 
     3568#line 3569 "fortran.tab.c" 
    38913569    break; 
    38923570 
    38933571  case 50: 
    3894 /* Line 1807 of yacc.c  */ 
    38953572#line 494 "fortran.y" 
    38963573    { 
     
    38983575            RemoveWordSET_0(fortran_out,pos_cursave,pos_end-pos_cursave); 
    38993576        } 
     3577#line 3578 "fortran.tab.c" 
    39003578    break; 
    39013579 
    39023580  case 52: 
    3903 /* Line 1807 of yacc.c  */ 
    39043581#line 500 "fortran.y" 
    39053582    { 
     
    39113588                if ( firstpass ) 
    39123589                { 
    3913                     Add_Globliste_1((yyvsp[(1) - (1)].l)); 
     3590                    Add_Globliste_1((yyvsp[0].l)); 
    39143591                    /* if variableparamlists has been declared in a subroutine   */ 
    3915                     if ( insubroutinedeclare )     Add_Dimension_Var_1((yyvsp[(1) - (1)].l)); 
     3592                    if ( insubroutinedeclare )     Add_Dimension_Var_1((yyvsp[0].l)); 
    39163593                } 
    39173594                else 
     
    39393616            strcpy(c_selectorname,""); 
    39403617        } 
     3618#line 3619 "fortran.tab.c" 
    39413619    break; 
    39423620 
    39433621  case 53: 
    3944 /* Line 1807 of yacc.c  */ 
    39453622#line 537 "fortran.y" 
    39463623    { 
    39473624            if (firstpass == 0) 
    39483625            { 
    3949                 if ((yyvsp[(1) - (1)].lnn)) 
     3626                if ((yyvsp[0].lnn)) 
    39503627                { 
    3951                     removeglobfromlist(&((yyvsp[(1) - (1)].lnn))); 
     3628                    removeglobfromlist(&((yyvsp[0].lnn))); 
    39523629                    pos_end = setposcur(); 
    39533630                    RemoveWordSET_0(fortran_out,pos_cur,pos_end-pos_cur); 
    3954                     writelistpublic((yyvsp[(1) - (1)].lnn)); 
     3631                    writelistpublic((yyvsp[0].lnn)); 
    39553632                } 
    39563633            } 
    39573634        } 
     3635#line 3636 "fortran.tab.c" 
    39583636    break; 
    39593637 
    39603638  case 62: 
    3961 /* Line 1807 of yacc.c  */ 
    39623639#line 558 "fortran.y" 
    39633640    { 
     
    39723649            } 
    39733650        } 
     3651#line 3652 "fortran.tab.c" 
    39743652    break; 
    39753653 
    39763654  case 64: 
    3977 /* Line 1807 of yacc.c  */ 
    39783655#line 572 "fortran.y" 
    39793656    { 
     
    39813658            PrivateDeclare = 0 ; 
    39823659        } 
     3660#line 3661 "fortran.tab.c" 
    39833661    break; 
    39843662 
    39853663  case 102: 
    3986 /* Line 1807 of yacc.c  */ 
    39873664#line 630 "fortran.y" 
    39883665    { 
     
    39943671                pos_end = setposcur(); 
    39953672                RemoveWordSET_0(fortran_out,pos_cur_decl,pos_end-pos_cur_decl); 
    3996                 ReWriteDeclarationAndAddTosubroutine_01((yyvsp[(1) - (2)].l)); 
     3673                ReWriteDeclarationAndAddTosubroutine_01((yyvsp[-1].l)); 
    39973674                pos_cur_decl = setposcur(); 
    39983675                if ( firstpass == 0 && GlobalDeclaration == 0 
     
    40053682                    pos_cur_decl = setposcur(); 
    40063683                } 
    4007                 (yyval.l) = (yyvsp[(1) - (2)].l); 
     3684                (yyval.l) = (yyvsp[-1].l); 
    40083685 
    40093686                if ( firstpass ) 
    40103687                { 
    4011                     Add_Globliste_1((yyvsp[(1) - (2)].l)); 
     3688                    Add_Globliste_1((yyvsp[-1].l)); 
    40123689                    if ( insubroutinedeclare ) 
    40133690                    { 
    4014                         if ( pointerdeclare ) Add_Pointer_Var_From_List_1((yyvsp[(1) - (2)].l)); 
    4015                         Add_Parameter_Var_1((yyvsp[(1) - (2)].l)); 
     3691                        if ( pointerdeclare ) Add_Pointer_Var_From_List_1((yyvsp[-1].l)); 
     3692                        Add_Parameter_Var_1((yyvsp[-1].l)); 
    40163693                    } 
    40173694                    else 
    4018                         Add_GlobalParameter_Var_1((yyvsp[(1) - (2)].l)); 
     3695                        Add_GlobalParameter_Var_1((yyvsp[-1].l)); 
    40193696 
    40203697                    /* If there's a SAVE declaration in module's subroutines we should    */ 
     
    40233700                    if ( aftercontainsdeclare && SaveDeclare ) 
    40243701                    { 
    4025                         if ( inmodulemeet ) Add_SubroutineDeclarationSave_Var_1((yyvsp[(1) - (2)].l)); 
    4026                         else                Add_Save_Var_dcl_1((yyvsp[(1) - (2)].l)); 
     3702                        if ( inmodulemeet ) Add_SubroutineDeclarationSave_Var_1((yyvsp[-1].l)); 
     3703                        else                Add_Save_Var_dcl_1((yyvsp[-1].l)); 
    40273704                    } 
    40283705                } 
     
    40513728            GlobalDeclarationType = 0; 
    40523729        } 
     3730#line 3731 "fortran.tab.c" 
    40533731    break; 
    40543732 
    40553733  case 103: 
    4056 /* Line 1807 of yacc.c  */ 
    40573734#line 696 "fortran.y" 
    40583735    { 
     
    40613738            if ( firstpass ) 
    40623739            { 
    4063                 Add_SubroutineArgument_Var_1((yyvsp[(3) - (3)].l)); 
    4064                 Add_FunctionType_Var_1((yyvsp[(2) - (3)].na)); 
     3740                Add_SubroutineArgument_Var_1((yyvsp[0].l)); 
     3741                Add_FunctionType_Var_1((yyvsp[-1].na)); 
    40653742            } 
    40663743            else 
     
    40693746            strcpy(nameinttypename,""); 
    40703747        } 
     3748#line 3749 "fortran.tab.c" 
    40713749    break; 
    40723750 
    40733751  case 104: 
    4074 /* Line 1807 of yacc.c  */ 
    40753752#line 710 "fortran.y" 
    40763753    { functiondeclarationisdone = 1; } 
     3754#line 3755 "fortran.tab.c" 
    40773755    break; 
    40783756 
    40793757  case 105: 
    4080 /* Line 1807 of yacc.c  */ 
    40813758#line 712 "fortran.y" 
    40823759    { VariableIsParameter = 1; pos_curparameter = setposcur()-9; } 
     3760#line 3761 "fortran.tab.c" 
    40833761    break; 
    40843762 
    40853763  case 109: 
    4086 /* Line 1807 of yacc.c  */ 
    40873764#line 724 "fortran.y" 
    40883765    { 
    4089             createstringfromlistname(ligne,(yyvsp[(3) - (4)].lnn)); 
    4090             if (firstpass == 1) Add_Data_Var_1(&List_Data_Var,(yyvsp[(1) - (4)].na),ligne); 
    4091             else                Add_Data_Var_1(&List_Data_Var_Cur,(yyvsp[(1) - (4)].na),ligne); 
     3766            createstringfromlistname(ligne,(yyvsp[-1].lnn)); 
     3767            if (firstpass == 1) Add_Data_Var_1(&List_Data_Var,(yyvsp[-3].na),ligne); 
     3768            else                Add_Data_Var_1(&List_Data_Var_Cur,(yyvsp[-3].na),ligne); 
    40923769        } 
     3770#line 3771 "fortran.tab.c" 
    40933771    break; 
    40943772 
    40953773  case 110: 
    4096 /* Line 1807 of yacc.c  */ 
    40973774#line 730 "fortran.y" 
    40983775    { 
    4099             if (firstpass == 1)  Add_Data_Var_Names_01(&List_Data_Var,(yyvsp[(1) - (4)].lnn),(yyvsp[(3) - (4)].lnn)); 
    4100             else                 Add_Data_Var_Names_01(&List_Data_Var_Cur,(yyvsp[(1) - (4)].lnn),(yyvsp[(3) - (4)].lnn)); 
     3776            if (firstpass == 1)  Add_Data_Var_Names_01(&List_Data_Var,(yyvsp[-3].lnn),(yyvsp[-1].lnn)); 
     3777            else                 Add_Data_Var_Names_01(&List_Data_Var_Cur,(yyvsp[-3].lnn),(yyvsp[-1].lnn)); 
    41013778        } 
     3779#line 3780 "fortran.tab.c" 
    41023780    break; 
    41033781 
    41043782  case 111: 
    4105 /* Line 1807 of yacc.c  */ 
    41063783#line 735 "fortran.y" 
    41073784    { 
    4108             createstringfromlistname(ligne,(yyvsp[(7) - (8)].lnn)); 
     3785            createstringfromlistname(ligne,(yyvsp[-1].lnn)); 
    41093786            printf("###################################################################################################################\n"); 
    41103787            printf("## CONV Error : data_implied_do statements (R537) are not yet supported. Please complain to the proper authorities.\n"); 
    41113788            printf("l.%4d -- data_stmt_set : ( lhs , dospec ) /data_stmt_value_list/ -- lhs=|%s| dospec=|%s| data_stmt_value_list=|%s|\n", 
    4112                 line_num_input,(yyvsp[(2) - (8)].na),(yyvsp[(4) - (8)].na),ligne); 
     3789                line_num_input,(yyvsp[-6].na),(yyvsp[-4].na),ligne); 
    41133790            printf("## But, are you SURE you NEED a DATA construct ?\n"); 
    41143791            printf("###################################################################################################################\n"); 
    41153792            exit(1); 
    41163793        } 
     3794#line 3795 "fortran.tab.c" 
    41173795    break; 
    41183796 
    41193797  case 112: 
    4120 /* Line 1807 of yacc.c  */ 
    41213798#line 748 "fortran.y" 
    4122     { (yyval.lnn) = Insertname(NULL,(yyvsp[(1) - (1)].na),0); } 
     3799    { (yyval.lnn) = Insertname(NULL,(yyvsp[0].na),0); } 
     3800#line 3801 "fortran.tab.c" 
    41233801    break; 
    41243802 
    41253803  case 113: 
    4126 /* Line 1807 of yacc.c  */ 
    41273804#line 749 "fortran.y" 
    4128     { (yyval.lnn) = Insertname((yyvsp[(3) - (3)].lnn),(yyvsp[(1) - (3)].na),1);   } 
     3805    { (yyval.lnn) = Insertname((yyvsp[0].lnn),(yyvsp[-2].na),1);   } 
     3806#line 3807 "fortran.tab.c" 
    41293807    break; 
    41303808 
    41313809  case 118: 
    4132 /* Line 1807 of yacc.c  */ 
    41333810#line 758 "fortran.y" 
    41343811    { pos_cursave = setposcur()-4; } 
     3812#line 3813 "fortran.tab.c" 
    41353813    break; 
    41363814 
    41373815  case 120: 
    4138 /* Line 1807 of yacc.c  */ 
    41393816#line 761 "fortran.y" 
    4140     { if ( ! inside_type_declare ) Add_Save_Var_1((yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].d)); } 
     3817    { if ( ! inside_type_declare ) Add_Save_Var_1((yyvsp[-1].na),(yyvsp[0].d)); } 
     3818#line 3819 "fortran.tab.c" 
    41413819    break; 
    41423820 
    41433821  case 121: 
    4144 /* Line 1807 of yacc.c  */ 
    41453822#line 764 "fortran.y" 
    4146     { (yyval.lnn) = Insertname(NULL,(yyvsp[(1) - (1)].na),0); } 
     3823    { (yyval.lnn) = Insertname(NULL,(yyvsp[0].na),0); } 
     3824#line 3825 "fortran.tab.c" 
    41473825    break; 
    41483826 
    41493827  case 122: 
    4150 /* Line 1807 of yacc.c  */ 
    41513828#line 765 "fortran.y" 
    41523829    { printf("l.%4d -- INSTRUCTION NON TRAITEE : INITIALISATION DE DATA AVEC EXPRESSION\n",line_num_input); exit(0); } 
     3830#line 3831 "fortran.tab.c" 
    41533831    break; 
    41543832 
    41553833  case 123: 
    4156 /* Line 1807 of yacc.c  */ 
    41573834#line 766 "fortran.y" 
    4158     { (yyval.lnn) = concat_listname((yyvsp[(1) - (3)].lnn),(yyvsp[(3) - (3)].lnn)); } 
     3835    { (yyval.lnn) = concat_listname((yyvsp[-2].lnn),(yyvsp[0].lnn)); } 
     3836#line 3837 "fortran.tab.c" 
    41593837    break; 
    41603838 
    41613839  case 124: 
    4162 /* Line 1807 of yacc.c  */ 
    41633840#line 769 "fortran.y" 
    4164     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na));  } 
     3841    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na));  } 
     3842#line 3843 "fortran.tab.c" 
    41653843    break; 
    41663844 
    41673845  case 125: 
    4168 /* Line 1807 of yacc.c  */ 
    41693846#line 770 "fortran.y" 
    4170     { sprintf((yyval.na),"%s+%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     3847    { sprintf((yyval.na),"%s+%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     3848#line 3849 "fortran.tab.c" 
    41713849    break; 
    41723850 
    41733851  case 126: 
    4174 /* Line 1807 of yacc.c  */ 
    41753852#line 771 "fortran.y" 
    4176     { sprintf((yyval.na),"%s-%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     3853    { sprintf((yyval.na),"%s-%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     3854#line 3855 "fortran.tab.c" 
    41773855    break; 
    41783856 
    41793857  case 127: 
    4180 /* Line 1807 of yacc.c  */ 
    41813858#line 772 "fortran.y" 
    4182     { sprintf((yyval.na),"%s*%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     3859    { sprintf((yyval.na),"%s*%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     3860#line 3861 "fortran.tab.c" 
    41833861    break; 
    41843862 
    41853863  case 128: 
    4186 /* Line 1807 of yacc.c  */ 
    41873864#line 773 "fortran.y" 
    4188     { sprintf((yyval.na),"%s/%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     3865    { sprintf((yyval.na),"%s/%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     3866#line 3867 "fortran.tab.c" 
    41893867    break; 
    41903868 
    41913869  case 129: 
    4192 /* Line 1807 of yacc.c  */ 
    41933870#line 775 "fortran.y" 
    41943871    { strcpy((yyval.na),""); } 
     3872#line 3873 "fortran.tab.c" 
    41953873    break; 
    41963874 
    41973875  case 130: 
    4198 /* Line 1807 of yacc.c  */ 
    41993876#line 776 "fortran.y" 
    4200     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     3877    { strcpy((yyval.na),(yyvsp[0].na)); } 
     3878#line 3879 "fortran.tab.c" 
    42013879    break; 
    42023880 
    42033881  case 135: 
    4204 /* Line 1807 of yacc.c  */ 
    42053882#line 786 "fortran.y" 
    42063883    { 
     
    42083885            pos_curdimension = setposcur()-9; 
    42093886        } 
     3887#line 3888 "fortran.tab.c" 
    42103888    break; 
    42113889 
    42123890  case 136: 
    4213 /* Line 1807 of yacc.c  */ 
    42143891#line 793 "fortran.y" 
    42153892    { 
    4216             printf("l.%4d -- dimension : before_dimension opt_comma TOK_NAME = |%s| -- MHCHECK\n",line_num_input,(yyvsp[(3) - (5)].na)); 
     3893            printf("l.%4d -- dimension : before_dimension opt_comma TOK_NAME = |%s| -- MHCHECK\n",line_num_input,(yyvsp[-2].na)); 
    42173894            if ( inside_type_declare ) break; 
    4218             curvar = createvar((yyvsp[(3) - (5)].na),(yyvsp[(4) - (5)].d)); 
     3895            curvar = createvar((yyvsp[-2].na),(yyvsp[-1].d)); 
    42193896            CreateAndFillin_Curvar("", curvar); 
    42203897            curlistvar=insertvar(NULL, curvar); 
     
    42223899            strcpy(vallengspec,""); 
    42233900        } 
     3901#line 3902 "fortran.tab.c" 
    42243902    break; 
    42253903 
    42263904  case 137: 
    4227 /* Line 1807 of yacc.c  */ 
    42283905#line 803 "fortran.y" 
    42293906    { 
    4230             printf("l.%4d -- dimension : dimension ',' TOK_NAME dims lengspec = |%s| -- MHCHECK\n",line_num_input,(yyvsp[(3) - (5)].na)); 
     3907            printf("l.%4d -- dimension : dimension ',' TOK_NAME dims lengspec = |%s| -- MHCHECK\n",line_num_input,(yyvsp[-2].na)); 
    42313908            if ( inside_type_declare ) break; 
    4232             curvar = createvar((yyvsp[(3) - (5)].na),(yyvsp[(4) - (5)].d)); 
     3909            curvar = createvar((yyvsp[-2].na),(yyvsp[-1].d)); 
    42333910            CreateAndFillin_Curvar("", curvar); 
    4234             curlistvar = insertvar((yyvsp[(1) - (5)].l), curvar); 
     3911            curlistvar = insertvar((yyvsp[-4].l), curvar); 
    42353912            (yyval.l) = curlistvar; 
    42363913            strcpy(vallengspec,""); 
    42373914        } 
     3915#line 3916 "fortran.tab.c" 
    42383916    break; 
    42393917 
    42403918  case 140: 
    4241 /* Line 1807 of yacc.c  */ 
    42423919#line 818 "fortran.y" 
    42433920    { (yyval.lnn) = (listname *) NULL; } 
     3921#line 3922 "fortran.tab.c" 
    42443922    break; 
    42453923 
    42463924  case 141: 
    4247 /* Line 1807 of yacc.c  */ 
    42483925#line 819 "fortran.y" 
    4249     { (yyval.lnn) = (yyvsp[(3) - (3)].lnn); } 
     3926    { (yyval.lnn) = (yyvsp[0].lnn); } 
     3927#line 3928 "fortran.tab.c" 
    42503928    break; 
    42513929 
    42523930  case 142: 
    4253 /* Line 1807 of yacc.c  */ 
    42543931#line 822 "fortran.y" 
    4255     { (yyval.lnn) = Insertname(NULL,(yyvsp[(1) - (1)].na),0); } 
     3932    { (yyval.lnn) = Insertname(NULL,(yyvsp[0].na),0); } 
     3933#line 3934 "fortran.tab.c" 
    42563934    break; 
    42573935 
    42583936  case 143: 
    4259 /* Line 1807 of yacc.c  */ 
    42603937#line 823 "fortran.y" 
    4261     { (yyval.lnn) = Insertname(NULL,(yyvsp[(1) - (1)].na),0); } 
     3938    { (yyval.lnn) = Insertname(NULL,(yyvsp[0].na),0); } 
     3939#line 3940 "fortran.tab.c" 
    42623940    break; 
    42633941 
    42643942  case 144: 
    4265 /* Line 1807 of yacc.c  */ 
    42663943#line 824 "fortran.y" 
    4267     { (yyval.lnn) = Insertname((yyvsp[(1) - (3)].lnn),(yyvsp[(3) - (3)].na),0);   } 
     3944    { (yyval.lnn) = Insertname((yyvsp[-2].lnn),(yyvsp[0].na),0);   } 
     3945#line 3946 "fortran.tab.c" 
    42683946    break; 
    42693947 
    42703948  case 145: 
    4271 /* Line 1807 of yacc.c  */ 
    42723949#line 825 "fortran.y" 
    4273     { (yyval.lnn) = Insertname((yyvsp[(1) - (3)].lnn),(yyvsp[(3) - (3)].na),0);   } 
     3950    { (yyval.lnn) = Insertname((yyvsp[-2].lnn),(yyvsp[0].na),0);   } 
     3951#line 3952 "fortran.tab.c" 
    42743952    break; 
    42753953 
    42763954  case 146: 
    4277 /* Line 1807 of yacc.c  */ 
    42783955#line 829 "fortran.y" 
    42793956    { 
     
    42823959            RemoveWordSET_0(fortran_out,pos_curcommon,pos_end-pos_curcommon); 
    42833960        } 
     3961#line 3962 "fortran.tab.c" 
    42843962    break; 
    42853963 
    42863964  case 147: 
    4287 /* Line 1807 of yacc.c  */ 
    42883965#line 835 "fortran.y" 
    42893966    { 
    42903967            if ( inside_type_declare ) break; 
    4291             sprintf(charusemodule,"%s",(yyvsp[(2) - (3)].na)); 
    4292             Add_NameOfCommon_1((yyvsp[(2) - (3)].na),subroutinename); 
     3968            sprintf(charusemodule,"%s",(yyvsp[-1].na)); 
     3969            Add_NameOfCommon_1((yyvsp[-1].na),subroutinename); 
    42933970            pos_end = setposcur(); 
    42943971            RemoveWordSET_0(fortran_out,pos_curcommon,pos_end-pos_curcommon); 
    42953972        } 
     3973#line 3974 "fortran.tab.c" 
    42963974    break; 
    42973975 
    42983976  case 148: 
    4299 /* Line 1807 of yacc.c  */ 
    43003977#line 843 "fortran.y" 
    43013978    { 
    43023979            if ( inside_type_declare ) break; 
    4303             sprintf(charusemodule,"%s",(yyvsp[(3) - (5)].na)); 
    4304             Add_NameOfCommon_1((yyvsp[(3) - (5)].na),subroutinename); 
     3980            sprintf(charusemodule,"%s",(yyvsp[-2].na)); 
     3981            Add_NameOfCommon_1((yyvsp[-2].na),subroutinename); 
    43053982            pos_end = setposcur(); 
    43063983            RemoveWordSET_0(fortran_out,pos_curcommon,pos_end-pos_curcommon); 
    43073984        } 
     3985#line 3986 "fortran.tab.c" 
    43083986    break; 
    43093987 
    43103988  case 149: 
    4311 /* Line 1807 of yacc.c  */ 
    43123989#line 852 "fortran.y" 
    43133990    { positioninblock = 0; pos_curcommon = setposcur()-6;   } 
     3991#line 3992 "fortran.tab.c" 
    43143992    break; 
    43153993 
    43163994  case 150: 
    4317 /* Line 1807 of yacc.c  */ 
    43183995#line 853 "fortran.y" 
    43193996    { positioninblock = 0; pos_curcommon = setposcur()-6-7; } 
     3997#line 3998 "fortran.tab.c" 
    43203998    break; 
    43213999 
    43224000  case 151: 
    4323 /* Line 1807 of yacc.c  */ 
    43244001#line 856 "fortran.y" 
    43254002    { if ( ! inside_type_declare ) Add_Common_var_1(); } 
     4003#line 4004 "fortran.tab.c" 
    43264004    break; 
    43274005 
    43284006  case 152: 
    4329 /* Line 1807 of yacc.c  */ 
    43304007#line 857 "fortran.y" 
    43314008    { if ( ! inside_type_declare ) Add_Common_var_1(); } 
     4009#line 4010 "fortran.tab.c" 
    43324010    break; 
    43334011 
    43344012  case 153: 
    4335 /* Line 1807 of yacc.c  */ 
    43364013#line 861 "fortran.y" 
    43374014    { 
    43384015            positioninblock = positioninblock + 1 ; 
    4339             strcpy(commonvar,(yyvsp[(1) - (2)].na)); 
    4340             commondim = (yyvsp[(2) - (2)].d); 
     4016            strcpy(commonvar,(yyvsp[-1].na)); 
     4017            commondim = (yyvsp[0].d); 
    43414018        } 
     4019#line 4020 "fortran.tab.c" 
    43424020    break; 
    43434021 
    43444022  case 154: 
    4345 /* Line 1807 of yacc.c  */ 
    43464023#line 869 "fortran.y" 
    43474024    { 
     
    43504027            strcpy(commonblockname,""); 
    43514028        } 
     4029#line 4030 "fortran.tab.c" 
    43524030    break; 
    43534031 
    43544032  case 155: 
    4355 /* Line 1807 of yacc.c  */ 
    43564033#line 875 "fortran.y" 
    43574034    { 
    4358             strcpy((yyval.na),(yyvsp[(2) - (3)].na)); 
     4035            strcpy((yyval.na),(yyvsp[-1].na)); 
    43594036            positioninblock=0; 
    4360             strcpy(commonblockname,(yyvsp[(2) - (3)].na)); 
     4037            strcpy(commonblockname,(yyvsp[-1].na)); 
    43614038        } 
     4039#line 4040 "fortran.tab.c" 
    43624040    break; 
    43634041 
    43644042  case 158: 
    4365 /* Line 1807 of yacc.c  */ 
    43664043#line 885 "fortran.y" 
    4367     { (yyval.l)=insertvar(NULL,(yyvsp[(1) - (1)].v)); } 
     4044    { (yyval.l)=insertvar(NULL,(yyvsp[0].v)); } 
     4045#line 4046 "fortran.tab.c" 
    43684046    break; 
    43694047 
    43704048  case 159: 
    4371 /* Line 1807 of yacc.c  */ 
    43724049#line 886 "fortran.y" 
    4373     { (yyval.l)=insertvar((yyvsp[(1) - (3)].l),(yyvsp[(3) - (3)].v));   } 
     4050    { (yyval.l)=insertvar((yyvsp[-2].l),(yyvsp[0].v));   } 
     4051#line 4052 "fortran.tab.c" 
    43744052    break; 
    43754053 
    43764054  case 160: 
    4377 /* Line 1807 of yacc.c  */ 
    43784055#line 890 "fortran.y" 
    43794056    { 
     
    43824059            Init_Variable(curvar); 
    43834060            curvar->v_VariableIsParameter = 1; 
    4384             strcpy(curvar->v_nomvar,(yyvsp[(1) - (3)].na)); 
     4061            strcpy(curvar->v_nomvar,(yyvsp[-2].na)); 
    43854062            strcpy(curvar->v_subroutinename,subroutinename); 
    43864063            strcpy(curvar->v_modulename,curmodulename); 
    4387             strcpy(curvar->v_initialvalue,(yyvsp[(3) - (3)].na)); 
     4064            strcpy(curvar->v_initialvalue,(yyvsp[0].na)); 
    43884065            strcpy(curvar->v_commoninfile,cur_filename); 
    4389             Save_Length((yyvsp[(3) - (3)].na),14); 
     4066            Save_Length((yyvsp[0].na),14); 
    43904067            (yyval.v) = curvar; 
    43914068        } 
     4069#line 4070 "fortran.tab.c" 
    43924070    break; 
    43934071 
    43944072  case 164: 
    4395 /* Line 1807 of yacc.c  */ 
    43964073#line 913 "fortran.y" 
    43974074    { 
     
    44034080            } 
    44044081        } 
     4082#line 4083 "fortran.tab.c" 
    44054083    break; 
    44064084 
    44074085  case 166: 
    4408 /* Line 1807 of yacc.c  */ 
    44094086#line 924 "fortran.y" 
    44104087    { 
    44114088            if ( ! inside_type_declare ) 
    44124089            { 
    4413                 if (dimsgiven == 1) curvar = createvar((yyvsp[(2) - (5)].na),curdim); 
    4414                 else                curvar = createvar((yyvsp[(2) - (5)].na),(yyvsp[(3) - (5)].d)); 
     4090                if (dimsgiven == 1) curvar = createvar((yyvsp[-3].na),curdim); 
     4091                else                curvar = createvar((yyvsp[-3].na),(yyvsp[-2].d)); 
    44154092                CreateAndFillin_Curvar(DeclType, curvar); 
    44164093                curlistvar = insertvar(NULL, curvar); 
     
    44294106            strcpy(vallengspec,""); 
    44304107        } 
     4108#line 4109 "fortran.tab.c" 
    44314109    break; 
    44324110 
    44334111  case 167: 
    4434 /* Line 1807 of yacc.c  */ 
    44354112#line 946 "fortran.y" 
    44364113    { 
    44374114            if ( ! inside_type_declare ) 
    44384115            { 
    4439                 if (dimsgiven == 1) curvar = createvar((yyvsp[(3) - (6)].na), curdim); 
    4440                 else                curvar = createvar((yyvsp[(3) - (6)].na), (yyvsp[(4) - (6)].d)); 
    4441                 CreateAndFillin_Curvar((yyvsp[(1) - (6)].l)->var->v_typevar,curvar); 
    4442                 strcpy(curvar->v_typevar, (yyvsp[(1) - (6)].l)->var->v_typevar); 
     4116                if (dimsgiven == 1) curvar = createvar((yyvsp[-3].na), curdim); 
     4117                else                curvar = createvar((yyvsp[-3].na), (yyvsp[-2].d)); 
     4118                CreateAndFillin_Curvar((yyvsp[-5].l)->var->v_typevar,curvar); 
     4119                strcpy(curvar->v_typevar, (yyvsp[-5].l)->var->v_typevar); 
    44434120                curvar->v_catvar = get_cat_var(curvar); 
    4444                 curlistvar = insertvar((yyvsp[(1) - (6)].l), curvar); 
     4121                curlistvar = insertvar((yyvsp[-5].l), curvar); 
    44454122                if (!strcasecmp(DeclType,"character")) 
    44464123                { 
     
    44574134            strcpy(vallengspec,""); 
    44584135        } 
     4136#line 4137 "fortran.tab.c" 
    44594137    break; 
    44604138 
    44614139  case 168: 
    4462 /* Line 1807 of yacc.c  */ 
    44634140#line 970 "fortran.y" 
    44644141    { dimsgiven = 0; } 
     4142#line 4143 "fortran.tab.c" 
    44654143    break; 
    44664144 
    44674145  case 169: 
    4468 /* Line 1807 of yacc.c  */ 
    44694146#line 972 "fortran.y" 
    4470     { strcpy(DeclType,(yyvsp[(1) - (2)].na));  } 
     4147    { strcpy(DeclType,(yyvsp[-1].na));  } 
     4148#line 4149 "fortran.tab.c" 
    44714149    break; 
    44724150 
    44734151  case 170: 
    4474 /* Line 1807 of yacc.c  */ 
    44754152#line 973 "fortran.y" 
    44764153    { strcpy(DeclType,"character");  } 
     4154#line 4155 "fortran.tab.c" 
    44774155    break; 
    44784156 
    44794157  case 171: 
    4480 /* Line 1807 of yacc.c  */ 
    44814158#line 974 "fortran.y" 
    4482     { strcpy(DeclType,(yyvsp[(1) - (3)].na)); strcpy(nameinttypename,(yyvsp[(3) - (3)].na));  } 
     4159    { strcpy(DeclType,(yyvsp[-2].na)); strcpy(nameinttypename,(yyvsp[0].na));  } 
     4160#line 4161 "fortran.tab.c" 
    44834161    break; 
    44844162 
    44854163  case 172: 
    4486 /* Line 1807 of yacc.c  */ 
    44874164#line 975 "fortran.y" 
    44884165    { strcpy(DeclType,"type"); GlobalDeclarationType = 1;  } 
     4166#line 4167 "fortran.tab.c" 
    44894167    break; 
    44904168 
    44914169  case 174: 
    4492 /* Line 1807 of yacc.c  */ 
    44934170#line 978 "fortran.y" 
    4494     { c_selectorgiven = 1; strcpy(c_selectorname,(yyvsp[(2) - (2)].na)); } 
     4171    { c_selectorgiven = 1; strcpy(c_selectorname,(yyvsp[0].na)); } 
     4172#line 4173 "fortran.tab.c" 
    44954173    break; 
    44964174 
    44974175  case 175: 
    4498 /* Line 1807 of yacc.c  */ 
    44994176#line 979 "fortran.y" 
    45004177    { c_star = 1;} 
     4178#line 4179 "fortran.tab.c" 
    45014179    break; 
    45024180 
    45034181  case 180: 
    4504 /* Line 1807 of yacc.c  */ 
    45054182#line 987 "fortran.y" 
    45064183    { pos_cur_decl = setposcur()-9; } 
     4184#line 4185 "fortran.tab.c" 
    45074185    break; 
    45084186 
    45094187  case 181: 
    4510 /* Line 1807 of yacc.c  */ 
    45114188#line 990 "fortran.y" 
    45124189    { strcpy((yyval.na),"integer"); pos_cur_decl = setposcur()-7; } 
     4190#line 4191 "fortran.tab.c" 
    45134191    break; 
    45144192 
    45154193  case 182: 
    4516 /* Line 1807 of yacc.c  */ 
    45174194#line 991 "fortran.y" 
    45184195    { strcpy((yyval.na),"logical"); pos_cur_decl = setposcur()-7; } 
     4196#line 4197 "fortran.tab.c" 
    45194197    break; 
    45204198 
    45214199  case 183: 
    4522 /* Line 1807 of yacc.c  */ 
    45234200#line 992 "fortran.y" 
    45244201    { strcpy((yyval.na),"real");    pos_cur_decl = setposcur()-4; } 
     4202#line 4203 "fortran.tab.c" 
    45254203    break; 
    45264204 
    45274205  case 184: 
    4528 /* Line 1807 of yacc.c  */ 
    45294206#line 993 "fortran.y" 
    45304207    { strcpy((yyval.na),"complex"); pos_cur_decl = setposcur()-7; } 
     4208#line 4209 "fortran.tab.c" 
    45314209    break; 
    45324210 
    45334211  case 185: 
    4534 /* Line 1807 of yacc.c  */ 
    45354212#line 994 "fortran.y" 
    45364213    { strcpy((yyval.na),"double complex"); pos_cur_decl = setposcur()-14; } 
     4214#line 4215 "fortran.tab.c" 
    45374215    break; 
    45384216 
    45394217  case 186: 
    4540 /* Line 1807 of yacc.c  */ 
    45414218#line 995 "fortran.y" 
    45424219    { pos_cur_decl = setposcur()-16; strcpy((yyval.na),"real"); strcpy(nameinttypename,"8"); } 
     4220#line 4221 "fortran.tab.c" 
    45434221    break; 
    45444222 
    45454223  case 188: 
    4546 /* Line 1807 of yacc.c  */ 
    45474224#line 998 "fortran.y" 
    4548     {strcpy(vallengspec,(yyvsp[(2) - (2)].na));} 
     4225    {strcpy(vallengspec,(yyvsp[0].na));} 
     4226#line 4227 "fortran.tab.c" 
    45494227    break; 
    45504228 
    45514229  case 189: 
    4552 /* Line 1807 of yacc.c  */ 
    45534230#line 1001 "fortran.y" 
    4554     { sprintf((yyval.na),"*%s",(yyvsp[(1) - (1)].na)); } 
     4231    { sprintf((yyval.na),"*%s",(yyvsp[0].na)); } 
     4232#line 4233 "fortran.tab.c" 
    45554233    break; 
    45564234 
    45574235  case 190: 
    4558 /* Line 1807 of yacc.c  */ 
    45594236#line 1002 "fortran.y" 
    45604237    { strcpy((yyval.na),"*(*)"); } 
     4238#line 4239 "fortran.tab.c" 
    45614239    break; 
    45624240 
    45634241  case 197: 
    4564 /* Line 1807 of yacc.c  */ 
    45654242#line 1014 "fortran.y" 
    45664243    { 
    4567             if ( strstr((yyvsp[(3) - (3)].na),"0.d0") ) 
     4244            if ( strstr((yyvsp[0].na),"0.d0") ) 
    45684245            { 
    45694246                strcpy(nameinttypename,"8"); 
     
    45714248            } 
    45724249            else 
    4573                 sprintf(NamePrecision,"%s = %s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); 
     4250                sprintf(NamePrecision,"%s = %s",(yyvsp[-2].na),(yyvsp[0].na)); 
    45744251        } 
     4252#line 4253 "fortran.tab.c" 
    45754253    break; 
    45764254 
    45774255  case 198: 
    4578 /* Line 1807 of yacc.c  */ 
    45794256#line 1023 "fortran.y" 
    4580     { strcpy(NamePrecision,(yyvsp[(1) - (1)].na)); } 
     4257    { strcpy(NamePrecision,(yyvsp[0].na)); } 
     4258#line 4259 "fortran.tab.c" 
    45814259    break; 
    45824260 
    45834261  case 199: 
    4584 /* Line 1807 of yacc.c  */ 
    45854262#line 1024 "fortran.y" 
    4586     { strcpy(NamePrecision,(yyvsp[(1) - (1)].na)); } 
     4263    { strcpy(NamePrecision,(yyvsp[0].na)); } 
     4264#line 4265 "fortran.tab.c" 
    45874265    break; 
    45884266 
    45894267  case 200: 
    4590 /* Line 1807 of yacc.c  */ 
    45914268#line 1025 "fortran.y" 
    4592     { strcpy(NamePrecision,(yyvsp[(1) - (1)].na)); } 
     4269    { strcpy(NamePrecision,(yyvsp[0].na)); } 
     4270#line 4271 "fortran.tab.c" 
    45934271    break; 
    45944272 
    45954273  case 201: 
    4596 /* Line 1807 of yacc.c  */ 
    45974274#line 1028 "fortran.y" 
    4598     { strcpy(CharacterSize,(yyvsp[(1) - (1)].na));  strcpy((yyval.na),(yyvsp[(1) - (1)].na));  } 
     4275    { strcpy(CharacterSize,(yyvsp[0].na));  strcpy((yyval.na),(yyvsp[0].na));  } 
     4276#line 4277 "fortran.tab.c" 
    45994277    break; 
    46004278 
    46014279  case 202: 
    4602 /* Line 1807 of yacc.c  */ 
    46034280#line 1029 "fortran.y" 
    46044281    { strcpy(CharacterSize,"*"); strcpy((yyval.na),"*"); } 
    4605     break; 
    4606  
    4607   case 210: 
    4608 /* Line 1807 of yacc.c  */ 
    4609 #line 1042 "fortran.y" 
     4282#line 4283 "fortran.tab.c" 
     4283    break; 
     4284 
     4285  case 203: 
     4286#line 1030 "fortran.y" 
     4287    { strcpy(CharacterSize,":"); strcpy((yyval.na),":"); } 
     4288#line 4289 "fortran.tab.c" 
     4289    break; 
     4290 
     4291  case 211: 
     4292#line 1043 "fortran.y" 
    46104293    { VariableIsParameter = 1; } 
    4611     break; 
    4612  
    4613   case 212: 
    4614 /* Line 1807 of yacc.c  */ 
    4615 #line 1044 "fortran.y" 
     4294#line 4295 "fortran.tab.c" 
     4295    break; 
     4296 
     4297  case 213: 
     4298#line 1045 "fortran.y" 
    46164299    { Allocatabledeclare = 1; } 
    4617     break; 
    4618  
    4619   case 213: 
    4620 /* Line 1807 of yacc.c  */ 
    4621 #line 1045 "fortran.y" 
    4622     { dimsgiven = 1; curdim = (yyvsp[(2) - (2)].d); } 
     4300#line 4301 "fortran.tab.c" 
    46234301    break; 
    46244302 
    46254303  case 214: 
    4626 /* Line 1807 of yacc.c  */ 
    46274304#line 1046 "fortran.y" 
     4305    { dimsgiven = 1; curdim = (yyvsp[0].d); } 
     4306#line 4307 "fortran.tab.c" 
     4307    break; 
     4308 
     4309  case 215: 
     4310#line 1047 "fortran.y" 
    46284311    { ExternalDeclare = 1; } 
    4629     break; 
    4630  
    4631   case 215: 
    4632 /* Line 1807 of yacc.c  */ 
    4633 #line 1048 "fortran.y" 
    4634     { strcpy(IntentSpec,(yyvsp[(3) - (4)].na)); } 
    4635     break; 
    4636  
    4637   case 217: 
    4638 /* Line 1807 of yacc.c  */ 
    4639 #line 1050 "fortran.y" 
     4312#line 4313 "fortran.tab.c" 
     4313    break; 
     4314 
     4315  case 216: 
     4316#line 1049 "fortran.y" 
     4317    { strcpy(IntentSpec,(yyvsp[-1].na)); } 
     4318#line 4319 "fortran.tab.c" 
     4319    break; 
     4320 
     4321  case 218: 
     4322#line 1051 "fortran.y" 
    46404323    { optionaldeclare = 1 ; } 
    4641     break; 
    4642  
    4643   case 218: 
    4644 /* Line 1807 of yacc.c  */ 
    4645 #line 1051 "fortran.y" 
     4324#line 4325 "fortran.tab.c" 
     4325    break; 
     4326 
     4327  case 219: 
     4328#line 1052 "fortran.y" 
    46464329    { pointerdeclare = 1 ; } 
    4647     break; 
    4648  
    4649   case 219: 
    4650 /* Line 1807 of yacc.c  */ 
    4651 #line 1052 "fortran.y" 
     4330#line 4331 "fortran.tab.c" 
     4331    break; 
     4332 
     4333  case 220: 
     4334#line 1053 "fortran.y" 
    46524335    { SaveDeclare = 1 ; } 
    4653     break; 
    4654  
    4655   case 220: 
    4656 /* Line 1807 of yacc.c  */ 
    4657 #line 1053 "fortran.y" 
     4336#line 4337 "fortran.tab.c" 
     4337    break; 
     4338 
     4339  case 221: 
     4340#line 1054 "fortran.y" 
    46584341    { Targetdeclare = 1; } 
    4659     break; 
    4660  
    4661   case 221: 
    4662 /* Line 1807 of yacc.c  */ 
    4663 #line 1056 "fortran.y" 
    4664     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4342#line 4343 "fortran.tab.c" 
    46654343    break; 
    46664344 
    46674345  case 222: 
    4668 /* Line 1807 of yacc.c  */ 
    46694346#line 1057 "fortran.y" 
    4670     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4347    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4348#line 4349 "fortran.tab.c" 
    46714349    break; 
    46724350 
    46734351  case 223: 
    4674 /* Line 1807 of yacc.c  */ 
    46754352#line 1058 "fortran.y" 
    4676     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4353    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4354#line 4355 "fortran.tab.c" 
    46774355    break; 
    46784356 
    46794357  case 224: 
    4680 /* Line 1807 of yacc.c  */ 
    4681 #line 1061 "fortran.y" 
     4358#line 1059 "fortran.y" 
     4359    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4360#line 4361 "fortran.tab.c" 
     4361    break; 
     4362 
     4363  case 225: 
     4364#line 1062 "fortran.y" 
    46824365    { PublicDeclare = 1;  } 
    4683     break; 
    4684  
    4685   case 225: 
    4686 /* Line 1807 of yacc.c  */ 
    4687 #line 1062 "fortran.y" 
     4366#line 4367 "fortran.tab.c" 
     4367    break; 
     4368 
     4369  case 226: 
     4370#line 1063 "fortran.y" 
    46884371    { PrivateDeclare = 1; } 
    4689     break; 
    4690  
    4691   case 226: 
    4692 /* Line 1807 of yacc.c  */ 
    4693 #line 1064 "fortran.y" 
     4372#line 4373 "fortran.tab.c" 
     4373    break; 
     4374 
     4375  case 227: 
     4376#line 1065 "fortran.y" 
    46944377    { (yyval.d) = (listdim*) NULL; } 
    4695     break; 
    4696  
    4697   case 227: 
    4698 /* Line 1807 of yacc.c  */ 
    4699 #line 1066 "fortran.y" 
     4378#line 4379 "fortran.tab.c" 
     4379    break; 
     4380 
     4381  case 228: 
     4382#line 1067 "fortran.y" 
    47004383    { 
    47014384            (yyval.d) = (listdim*) NULL; 
    47024385            if ( inside_type_declare ) break; 
    4703             if ( created_dimensionlist == 1 || agrif_parentcall == 1 )  (yyval.d)=(yyvsp[(2) - (3)].d); 
     4386            if ( created_dimensionlist == 1 || agrif_parentcall == 1 )  (yyval.d)=(yyvsp[-1].d); 
    47044387        } 
    4705     break; 
    4706  
    4707   case 228: 
    4708 /* Line 1807 of yacc.c  */ 
    4709 #line 1074 "fortran.y" 
     4388#line 4389 "fortran.tab.c" 
     4389    break; 
     4390 
     4391  case 229: 
     4392#line 1075 "fortran.y" 
    47104393    { 
    47114394            (yyval.d) = (listdim*) NULL; 
    47124395            if ( inside_type_declare ) break; 
    4713             if ( created_dimensionlist == 1 || agrif_parentcall == 1 )  (yyval.d)=insertdim(NULL,(yyvsp[(1) - (1)].dim1)); 
     4396            if ( created_dimensionlist == 1 || agrif_parentcall == 1 )  (yyval.d)=insertdim(NULL,(yyvsp[0].dim1)); 
    47144397        } 
    4715     break; 
    4716  
    4717   case 229: 
    4718 /* Line 1807 of yacc.c  */ 
    4719 #line 1080 "fortran.y" 
     4398#line 4399 "fortran.tab.c" 
     4399    break; 
     4400 
     4401  case 230: 
     4402#line 1081 "fortran.y" 
    47204403    { 
    47214404            (yyval.d) = (listdim*) NULL; 
    47224405            if ( inside_type_declare ) break; 
    4723             if ( (!inside_type_declare) && created_dimensionlist == 1 ) (yyval.d)=insertdim((yyvsp[(1) - (3)].d),(yyvsp[(3) - (3)].dim1)); 
     4406            if ( (!inside_type_declare) && created_dimensionlist == 1 ) (yyval.d)=insertdim((yyvsp[-2].d),(yyvsp[0].dim1)); 
    47244407        } 
    4725     break; 
    4726  
    4727   case 230: 
    4728 /* Line 1807 of yacc.c  */ 
    4729 #line 1086 "fortran.y" 
    4730     { strcpy((yyval.dim1).first,"1"); strcpy((yyval.dim1).last,(yyvsp[(1) - (1)].na)); Save_Length((yyvsp[(1) - (1)].na),1); } 
     4408#line 4409 "fortran.tab.c" 
    47314409    break; 
    47324410 
    47334411  case 231: 
    4734 /* Line 1807 of yacc.c  */ 
    47354412#line 1087 "fortran.y" 
     4413    { strcpy((yyval.dim1).first,"1"); strcpy((yyval.dim1).last,(yyvsp[0].na)); Save_Length((yyvsp[0].na),1); } 
     4414#line 4415 "fortran.tab.c" 
     4415    break; 
     4416 
     4417  case 232: 
     4418#line 1088 "fortran.y" 
    47364419    { strcpy((yyval.dim1).first,"");  strcpy((yyval.dim1).last,"");                    } 
    4737     break; 
    4738  
    4739   case 232: 
    4740 /* Line 1807 of yacc.c  */ 
    4741 #line 1088 "fortran.y" 
    4742     { strcpy((yyval.dim1).first,(yyvsp[(1) - (2)].na));  Save_Length((yyvsp[(1) - (2)].na),2); strcpy((yyval.dim1).last,""); } 
     4420#line 4421 "fortran.tab.c" 
    47434421    break; 
    47444422 
    47454423  case 233: 
    4746 /* Line 1807 of yacc.c  */ 
    47474424#line 1089 "fortran.y" 
    4748     { strcpy((yyval.dim1).first,"");  strcpy((yyval.dim1).last,(yyvsp[(2) - (2)].na)); Save_Length((yyvsp[(2) - (2)].na),1); } 
     4425    { strcpy((yyval.dim1).first,(yyvsp[-1].na));  Save_Length((yyvsp[-1].na),2); strcpy((yyval.dim1).last,""); } 
     4426#line 4427 "fortran.tab.c" 
    47494427    break; 
    47504428 
    47514429  case 234: 
    4752 /* Line 1807 of yacc.c  */ 
    47534430#line 1090 "fortran.y" 
    4754     { strcpy((yyval.dim1).first,(yyvsp[(1) - (3)].na));  Save_Length((yyvsp[(1) - (3)].na),2); strcpy((yyval.dim1).last,(yyvsp[(3) - (3)].na)); Save_Length((yyvsp[(3) - (3)].na),1); } 
     4431    { strcpy((yyval.dim1).first,"");  strcpy((yyval.dim1).last,(yyvsp[0].na)); Save_Length((yyvsp[0].na),1); } 
     4432#line 4433 "fortran.tab.c" 
    47554433    break; 
    47564434 
    47574435  case 235: 
    4758 /* Line 1807 of yacc.c  */ 
    4759 #line 1093 "fortran.y" 
     4436#line 1091 "fortran.y" 
     4437    { strcpy((yyval.dim1).first,(yyvsp[-2].na));  Save_Length((yyvsp[-2].na),2); strcpy((yyval.dim1).last,(yyvsp[0].na)); Save_Length((yyvsp[0].na),1); } 
     4438#line 4439 "fortran.tab.c" 
     4439    break; 
     4440 
     4441  case 236: 
     4442#line 1094 "fortran.y" 
    47604443    { strcpy((yyval.na),"*"); } 
    4761     break; 
    4762  
    4763   case 236: 
    4764 /* Line 1807 of yacc.c  */ 
    4765 #line 1094 "fortran.y" 
    4766     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));  } 
     4444#line 4445 "fortran.tab.c" 
    47674445    break; 
    47684446 
    47694447  case 237: 
    4770 /* Line 1807 of yacc.c  */ 
    4771 #line 1096 "fortran.y" 
    4772     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4448#line 1095 "fortran.y" 
     4449    { strcpy((yyval.na),(yyvsp[0].na));  } 
     4450#line 4451 "fortran.tab.c" 
    47734451    break; 
    47744452 
    47754453  case 238: 
    4776 /* Line 1807 of yacc.c  */ 
    47774454#line 1097 "fortran.y" 
    4778     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4455    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4456#line 4457 "fortran.tab.c" 
    47794457    break; 
    47804458 
    47814459  case 239: 
    4782 /* Line 1807 of yacc.c  */ 
    47834460#line 1098 "fortran.y" 
    4784     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4461    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4462#line 4463 "fortran.tab.c" 
    47854463    break; 
    47864464 
    47874465  case 240: 
    4788 /* Line 1807 of yacc.c  */ 
    47894466#line 1099 "fortran.y" 
    4790     { sprintf((yyval.na),"(%s)",(yyvsp[(2) - (3)].na)); } 
     4467    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4468#line 4469 "fortran.tab.c" 
    47914469    break; 
    47924470 
    47934471  case 241: 
    4794 /* Line 1807 of yacc.c  */ 
    4795 #line 1103 "fortran.y" 
    4796     { sprintf((yyval.na),"SUM(%s)",(yyvsp[(2) - (3)].na));} 
     4472#line 1100 "fortran.y" 
     4473    { sprintf((yyval.na),"(%s)",(yyvsp[-1].na)); } 
     4474#line 4475 "fortran.tab.c" 
    47974475    break; 
    47984476 
    47994477  case 242: 
    4800 /* Line 1807 of yacc.c  */ 
    48014478#line 1104 "fortran.y" 
    4802     { sprintf((yyval.na),"MAX(%s)",(yyvsp[(2) - (3)].na));} 
     4479    { sprintf((yyval.na),"SUM(%s)",(yyvsp[-1].na));} 
     4480#line 4481 "fortran.tab.c" 
    48034481    break; 
    48044482 
    48054483  case 243: 
    4806 /* Line 1807 of yacc.c  */ 
    48074484#line 1105 "fortran.y" 
    4808     { sprintf((yyval.na),"TANH(%s)",(yyvsp[(3) - (4)].na));} 
     4485    { sprintf((yyval.na),"MAX(%s)",(yyvsp[-1].na));} 
     4486#line 4487 "fortran.tab.c" 
    48094487    break; 
    48104488 
    48114489  case 244: 
    4812 /* Line 1807 of yacc.c  */ 
    48134490#line 1106 "fortran.y" 
    4814     { sprintf((yyval.na),"MAXVAL(%s)",(yyvsp[(3) - (4)].na));} 
     4491    { sprintf((yyval.na),"TANH(%s)",(yyvsp[-1].na));} 
     4492#line 4493 "fortran.tab.c" 
    48154493    break; 
    48164494 
    48174495  case 245: 
    4818 /* Line 1807 of yacc.c  */ 
    48194496#line 1107 "fortran.y" 
    4820     { sprintf((yyval.na),"MIN(%s)",(yyvsp[(2) - (3)].na));} 
     4497    { sprintf((yyval.na),"MAXVAL(%s)",(yyvsp[-1].na));} 
     4498#line 4499 "fortran.tab.c" 
    48214499    break; 
    48224500 
    48234501  case 246: 
    4824 /* Line 1807 of yacc.c  */ 
    48254502#line 1108 "fortran.y" 
    4826     { sprintf((yyval.na),"MINVAL(%s)",(yyvsp[(3) - (4)].na));} 
     4503    { sprintf((yyval.na),"MIN(%s)",(yyvsp[-1].na));} 
     4504#line 4505 "fortran.tab.c" 
    48274505    break; 
    48284506 
    48294507  case 247: 
    4830 /* Line 1807 of yacc.c  */ 
    48314508#line 1109 "fortran.y" 
    4832     { sprintf((yyval.na),"TRIM(%s)",(yyvsp[(3) - (4)].na));} 
     4509    { sprintf((yyval.na),"MINVAL(%s)",(yyvsp[-1].na));} 
     4510#line 4511 "fortran.tab.c" 
    48334511    break; 
    48344512 
    48354513  case 248: 
    4836 /* Line 1807 of yacc.c  */ 
    48374514#line 1110 "fortran.y" 
    4838     { sprintf((yyval.na),"SQRT(%s)",(yyvsp[(2) - (3)].na));} 
     4515    { sprintf((yyval.na),"TRIM(%s)",(yyvsp[-1].na));} 
     4516#line 4517 "fortran.tab.c" 
    48394517    break; 
    48404518 
    48414519  case 249: 
    4842 /* Line 1807 of yacc.c  */ 
    48434520#line 1111 "fortran.y" 
    4844     { sprintf((yyval.na),"REAL(%s)",(yyvsp[(3) - (4)].na));} 
     4521    { sprintf((yyval.na),"SQRT(%s)",(yyvsp[-1].na));} 
     4522#line 4523 "fortran.tab.c" 
    48454523    break; 
    48464524 
    48474525  case 250: 
    4848 /* Line 1807 of yacc.c  */ 
    48494526#line 1112 "fortran.y" 
    4850     { sprintf((yyval.na),"NINT(%s)",(yyvsp[(3) - (4)].na));} 
     4527    { sprintf((yyval.na),"REAL(%s)",(yyvsp[-1].na));} 
     4528#line 4529 "fortran.tab.c" 
    48514529    break; 
    48524530 
    48534531  case 251: 
    4854 /* Line 1807 of yacc.c  */ 
    48554532#line 1113 "fortran.y" 
    4856     { sprintf((yyval.na),"FLOAT(%s)",(yyvsp[(3) - (4)].na));} 
     4533    { sprintf((yyval.na),"NINT(%s)",(yyvsp[-1].na));} 
     4534#line 4535 "fortran.tab.c" 
    48574535    break; 
    48584536 
    48594537  case 252: 
    4860 /* Line 1807 of yacc.c  */ 
    48614538#line 1114 "fortran.y" 
    4862     { sprintf((yyval.na),"EXP(%s)",(yyvsp[(3) - (4)].na));} 
     4539    { sprintf((yyval.na),"FLOAT(%s)",(yyvsp[-1].na));} 
     4540#line 4541 "fortran.tab.c" 
    48634541    break; 
    48644542 
    48654543  case 253: 
    4866 /* Line 1807 of yacc.c  */ 
    48674544#line 1115 "fortran.y" 
    4868     { sprintf((yyval.na),"COS(%s)",(yyvsp[(3) - (4)].na));} 
     4545    { sprintf((yyval.na),"EXP(%s)",(yyvsp[-1].na));} 
     4546#line 4547 "fortran.tab.c" 
    48694547    break; 
    48704548 
    48714549  case 254: 
    4872 /* Line 1807 of yacc.c  */ 
    48734550#line 1116 "fortran.y" 
    4874     { sprintf((yyval.na),"COSH(%s)",(yyvsp[(3) - (4)].na));} 
     4551    { sprintf((yyval.na),"COS(%s)",(yyvsp[-1].na));} 
     4552#line 4553 "fortran.tab.c" 
    48754553    break; 
    48764554 
    48774555  case 255: 
    4878 /* Line 1807 of yacc.c  */ 
    48794556#line 1117 "fortran.y" 
    4880     { sprintf((yyval.na),"ACOS(%s)",(yyvsp[(3) - (4)].na));} 
     4557    { sprintf((yyval.na),"COSH(%s)",(yyvsp[-1].na));} 
     4558#line 4559 "fortran.tab.c" 
    48814559    break; 
    48824560 
    48834561  case 256: 
    4884 /* Line 1807 of yacc.c  */ 
    48854562#line 1118 "fortran.y" 
    4886     { sprintf((yyval.na),"SIN(%s)",(yyvsp[(3) - (4)].na));} 
     4563    { sprintf((yyval.na),"ACOS(%s)",(yyvsp[-1].na));} 
     4564#line 4565 "fortran.tab.c" 
    48874565    break; 
    48884566 
    48894567  case 257: 
    4890 /* Line 1807 of yacc.c  */ 
    48914568#line 1119 "fortran.y" 
    4892     { sprintf((yyval.na),"SINH(%s)",(yyvsp[(3) - (4)].na));} 
     4569    { sprintf((yyval.na),"SIN(%s)",(yyvsp[-1].na));} 
     4570#line 4571 "fortran.tab.c" 
    48934571    break; 
    48944572 
    48954573  case 258: 
    4896 /* Line 1807 of yacc.c  */ 
    48974574#line 1120 "fortran.y" 
    4898     { sprintf((yyval.na),"ASIN(%s)",(yyvsp[(3) - (4)].na));} 
     4575    { sprintf((yyval.na),"SINH(%s)",(yyvsp[-1].na));} 
     4576#line 4577 "fortran.tab.c" 
    48994577    break; 
    49004578 
    49014579  case 259: 
    4902 /* Line 1807 of yacc.c  */ 
    49034580#line 1121 "fortran.y" 
    4904     { sprintf((yyval.na),"LOG(%s)",(yyvsp[(3) - (4)].na));} 
     4581    { sprintf((yyval.na),"ASIN(%s)",(yyvsp[-1].na));} 
     4582#line 4583 "fortran.tab.c" 
    49054583    break; 
    49064584 
    49074585  case 260: 
    4908 /* Line 1807 of yacc.c  */ 
    49094586#line 1122 "fortran.y" 
    4910     { sprintf((yyval.na),"TAN(%s)",(yyvsp[(3) - (4)].na));} 
     4587    { sprintf((yyval.na),"LOG(%s)",(yyvsp[-1].na));} 
     4588#line 4589 "fortran.tab.c" 
    49114589    break; 
    49124590 
    49134591  case 261: 
    4914 /* Line 1807 of yacc.c  */ 
    49154592#line 1123 "fortran.y" 
    4916     { sprintf((yyval.na),"ATAN(%s)",(yyvsp[(3) - (4)].na));} 
     4593    { sprintf((yyval.na),"TAN(%s)",(yyvsp[-1].na));} 
     4594#line 4595 "fortran.tab.c" 
    49174595    break; 
    49184596 
    49194597  case 262: 
    4920 /* Line 1807 of yacc.c  */ 
    49214598#line 1124 "fortran.y" 
    4922     { sprintf((yyval.na),"ABS(%s)",(yyvsp[(2) - (3)].na));} 
     4599    { sprintf((yyval.na),"ATAN(%s)",(yyvsp[-1].na));} 
     4600#line 4601 "fortran.tab.c" 
    49234601    break; 
    49244602 
    49254603  case 263: 
    4926 /* Line 1807 of yacc.c  */ 
    49274604#line 1125 "fortran.y" 
    4928     { sprintf((yyval.na),"MOD(%s)",(yyvsp[(3) - (4)].na));} 
     4605    { sprintf((yyval.na),"ABS(%s)",(yyvsp[-1].na));} 
     4606#line 4607 "fortran.tab.c" 
    49294607    break; 
    49304608 
    49314609  case 264: 
    4932 /* Line 1807 of yacc.c  */ 
    49334610#line 1126 "fortran.y" 
    4934     { sprintf((yyval.na),"SIGN(%s)",(yyvsp[(2) - (3)].na));} 
     4611    { sprintf((yyval.na),"MOD(%s)",(yyvsp[-1].na));} 
     4612#line 4613 "fortran.tab.c" 
    49354613    break; 
    49364614 
    49374615  case 265: 
    4938 /* Line 1807 of yacc.c  */ 
    49394616#line 1127 "fortran.y" 
    4940     { sprintf((yyval.na),"MINLOC(%s)",(yyvsp[(3) - (4)].na));} 
     4617    { sprintf((yyval.na),"SIGN(%s)",(yyvsp[-1].na));} 
     4618#line 4619 "fortran.tab.c" 
    49414619    break; 
    49424620 
    49434621  case 266: 
    4944 /* Line 1807 of yacc.c  */ 
    49454622#line 1128 "fortran.y" 
    4946     { sprintf((yyval.na),"MAXLOC(%s)",(yyvsp[(3) - (4)].na));} 
     4623    { sprintf((yyval.na),"MINLOC(%s)",(yyvsp[-1].na));} 
     4624#line 4625 "fortran.tab.c" 
    49474625    break; 
    49484626 
    49494627  case 267: 
    4950 /* Line 1807 of yacc.c  */ 
    4951 #line 1130 "fortran.y" 
    4952     {strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     4628#line 1129 "fortran.y" 
     4629    { sprintf((yyval.na),"MAXLOC(%s)",(yyvsp[-1].na));} 
     4630#line 4631 "fortran.tab.c" 
    49534631    break; 
    49544632 
    49554633  case 268: 
    4956 /* Line 1807 of yacc.c  */ 
    49574634#line 1131 "fortran.y" 
    4958     { sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     4635    {strcpy((yyval.na),(yyvsp[0].na));} 
     4636#line 4637 "fortran.tab.c" 
    49594637    break; 
    49604638 
    49614639  case 269: 
    4962 /* Line 1807 of yacc.c  */ 
    4963 #line 1133 "fortran.y" 
    4964     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4640#line 1132 "fortran.y" 
     4641    { sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     4642#line 4643 "fortran.tab.c" 
    49654643    break; 
    49664644 
    49674645  case 270: 
    4968 /* Line 1807 of yacc.c  */ 
    49694646#line 1134 "fortran.y" 
    4970     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4647    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4648#line 4649 "fortran.tab.c" 
    49714649    break; 
    49724650 
    49734651  case 271: 
    4974 /* Line 1807 of yacc.c  */ 
    49754652#line 1135 "fortran.y" 
    4976     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4653    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4654#line 4655 "fortran.tab.c" 
    49774655    break; 
    49784656 
    49794657  case 272: 
    4980 /* Line 1807 of yacc.c  */ 
    49814658#line 1136 "fortran.y" 
    4982     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4659    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4660#line 4661 "fortran.tab.c" 
    49834661    break; 
    49844662 
    49854663  case 273: 
    4986 /* Line 1807 of yacc.c  */ 
    49874664#line 1137 "fortran.y" 
    4988     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4665    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4666#line 4667 "fortran.tab.c" 
    49894667    break; 
    49904668 
    49914669  case 274: 
    4992 /* Line 1807 of yacc.c  */ 
    49934670#line 1138 "fortran.y" 
    4994     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4671    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4672#line 4673 "fortran.tab.c" 
    49954673    break; 
    49964674 
    49974675  case 275: 
    4998 /* Line 1807 of yacc.c  */ 
    4999 #line 1140 "fortran.y" 
     4676#line 1139 "fortran.y" 
     4677    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4678#line 4679 "fortran.tab.c" 
     4679    break; 
     4680 
     4681  case 276: 
     4682#line 1141 "fortran.y" 
    50004683    { strcpy((yyval.na),"+"); } 
    5001     break; 
    5002  
    5003   case 276: 
    5004 /* Line 1807 of yacc.c  */ 
    5005 #line 1141 "fortran.y" 
     4684#line 4685 "fortran.tab.c" 
     4685    break; 
     4686 
     4687  case 277: 
     4688#line 1142 "fortran.y" 
    50064689    { strcpy((yyval.na),"-"); } 
    5007     break; 
    5008  
    5009   case 277: 
    5010 /* Line 1807 of yacc.c  */ 
    5011 #line 1145 "fortran.y" 
    5012     { sprintf((yyval.na),"+%s",(yyvsp[(2) - (2)].na)); } 
     4690#line 4691 "fortran.tab.c" 
    50134691    break; 
    50144692 
    50154693  case 278: 
    5016 /* Line 1807 of yacc.c  */ 
    50174694#line 1146 "fortran.y" 
    5018     { sprintf((yyval.na),"-%s",(yyvsp[(2) - (2)].na)); } 
     4695    { sprintf((yyval.na),"+%s",(yyvsp[0].na)); } 
     4696#line 4697 "fortran.tab.c" 
    50194697    break; 
    50204698 
    50214699  case 279: 
    5022 /* Line 1807 of yacc.c  */ 
    50234700#line 1147 "fortran.y" 
    5024     { sprintf((yyval.na),"*%s",(yyvsp[(2) - (2)].na)); } 
     4701    { sprintf((yyval.na),"-%s",(yyvsp[0].na)); } 
     4702#line 4703 "fortran.tab.c" 
    50254703    break; 
    50264704 
    50274705  case 280: 
    5028 /* Line 1807 of yacc.c  */ 
    50294706#line 1148 "fortran.y" 
    5030     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4707    { sprintf((yyval.na),"*%s",(yyvsp[0].na)); } 
     4708#line 4709 "fortran.tab.c" 
    50314709    break; 
    50324710 
    50334711  case 281: 
    5034 /* Line 1807 of yacc.c  */ 
    50354712#line 1149 "fortran.y" 
    5036     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4713    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4714#line 4715 "fortran.tab.c" 
    50374715    break; 
    50384716 
    50394717  case 282: 
    5040 /* Line 1807 of yacc.c  */ 
    50414718#line 1150 "fortran.y" 
    5042     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4719    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4720#line 4721 "fortran.tab.c" 
    50434721    break; 
    50444722 
    50454723  case 283: 
    5046 /* Line 1807 of yacc.c  */ 
    50474724#line 1151 "fortran.y" 
    5048     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4725    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4726#line 4727 "fortran.tab.c" 
    50494727    break; 
    50504728 
    50514729  case 284: 
    5052 /* Line 1807 of yacc.c  */ 
    50534730#line 1152 "fortran.y" 
    5054     { sprintf((yyval.na)," > %s",(yyvsp[(2) - (2)].na)); } 
     4731    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4732#line 4733 "fortran.tab.c" 
    50554733    break; 
    50564734 
    50574735  case 285: 
    5058 /* Line 1807 of yacc.c  */ 
    50594736#line 1153 "fortran.y" 
    5060     { sprintf((yyval.na)," < %s",(yyvsp[(2) - (2)].na)); } 
     4737    { sprintf((yyval.na)," > %s",(yyvsp[0].na)); } 
     4738#line 4739 "fortran.tab.c" 
    50614739    break; 
    50624740 
    50634741  case 286: 
    5064 /* Line 1807 of yacc.c  */ 
    50654742#line 1154 "fortran.y" 
    5066     { sprintf((yyval.na)," >= %s",(yyvsp[(3) - (3)].na)); } 
     4743    { sprintf((yyval.na)," < %s",(yyvsp[0].na)); } 
     4744#line 4745 "fortran.tab.c" 
    50674745    break; 
    50684746 
    50694747  case 287: 
    5070 /* Line 1807 of yacc.c  */ 
    50714748#line 1155 "fortran.y" 
    5072     { sprintf((yyval.na)," <= %s",(yyvsp[(3) - (3)].na)); } 
     4749    { sprintf((yyval.na)," >= %s",(yyvsp[0].na)); } 
     4750#line 4751 "fortran.tab.c" 
    50734751    break; 
    50744752 
    50754753  case 288: 
    5076 /* Line 1807 of yacc.c  */ 
    50774754#line 1156 "fortran.y" 
    5078     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4755    { sprintf((yyval.na)," <= %s",(yyvsp[0].na)); } 
     4756#line 4757 "fortran.tab.c" 
    50794757    break; 
    50804758 
    50814759  case 289: 
    5082 /* Line 1807 of yacc.c  */ 
    50834760#line 1157 "fortran.y" 
    5084     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4761    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4762#line 4763 "fortran.tab.c" 
    50854763    break; 
    50864764 
    50874765  case 290: 
    5088 /* Line 1807 of yacc.c  */ 
    50894766#line 1158 "fortran.y" 
    5090     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4767    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4768#line 4769 "fortran.tab.c" 
    50914769    break; 
    50924770 
    50934771  case 291: 
    5094 /* Line 1807 of yacc.c  */ 
    50954772#line 1159 "fortran.y" 
    5096     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4773    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4774#line 4775 "fortran.tab.c" 
    50974775    break; 
    50984776 
    50994777  case 292: 
    5100 /* Line 1807 of yacc.c  */ 
    51014778#line 1160 "fortran.y" 
    5102     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4779    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4780#line 4781 "fortran.tab.c" 
    51034781    break; 
    51044782 
    51054783  case 293: 
    5106 /* Line 1807 of yacc.c  */ 
    51074784#line 1161 "fortran.y" 
    5108     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4785    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4786#line 4787 "fortran.tab.c" 
    51094787    break; 
    51104788 
    51114789  case 294: 
    5112 /* Line 1807 of yacc.c  */ 
    51134790#line 1162 "fortran.y" 
    5114     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4791    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4792#line 4793 "fortran.tab.c" 
    51154793    break; 
    51164794 
    51174795  case 295: 
    5118 /* Line 1807 of yacc.c  */ 
    51194796#line 1163 "fortran.y" 
    5120     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4797    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4798#line 4799 "fortran.tab.c" 
    51214799    break; 
    51224800 
    51234801  case 296: 
    5124 /* Line 1807 of yacc.c  */ 
    51254802#line 1164 "fortran.y" 
    5126     { sprintf((yyval.na),"%s",(yyvsp[(2) - (2)].na)); } 
     4803    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4804#line 4805 "fortran.tab.c" 
    51274805    break; 
    51284806 
    51294807  case 297: 
    5130 /* Line 1807 of yacc.c  */ 
    51314808#line 1165 "fortran.y" 
    5132     { sprintf((yyval.na),"%s",(yyvsp[(2) - (2)].na)); } 
     4809    { sprintf((yyval.na),"%s",(yyvsp[0].na)); } 
     4810#line 4811 "fortran.tab.c" 
    51334811    break; 
    51344812 
    51354813  case 298: 
    5136 /* Line 1807 of yacc.c  */ 
    5137 #line 1167 "fortran.y" 
     4814#line 1166 "fortran.y" 
     4815    { sprintf((yyval.na),"%s",(yyvsp[0].na)); } 
     4816#line 4817 "fortran.tab.c" 
     4817    break; 
     4818 
     4819  case 299: 
     4820#line 1168 "fortran.y" 
    51384821    { strcpy((yyval.na),""); } 
    5139     break; 
    5140  
    5141   case 299: 
    5142 /* Line 1807 of yacc.c  */ 
    5143 #line 1168 "fortran.y" 
    5144     { sprintf((yyval.na),"/%s",(yyvsp[(1) - (1)].na)); } 
     4822#line 4823 "fortran.tab.c" 
    51454823    break; 
    51464824 
    51474825  case 300: 
    5148 /* Line 1807 of yacc.c  */ 
    51494826#line 1169 "fortran.y" 
    5150     { sprintf((yyval.na),"/= %s",(yyvsp[(2) - (2)].na));} 
     4827    { sprintf((yyval.na),"/%s",(yyvsp[0].na)); } 
     4828#line 4829 "fortran.tab.c" 
    51514829    break; 
    51524830 
    51534831  case 301: 
    5154 /* Line 1807 of yacc.c  */ 
    51554832#line 1170 "fortran.y" 
    5156     { sprintf((yyval.na),"//%s",(yyvsp[(2) - (2)].na)); } 
     4833    { sprintf((yyval.na),"/= %s",(yyvsp[0].na));} 
     4834#line 4835 "fortran.tab.c" 
    51574835    break; 
    51584836 
    51594837  case 302: 
    5160 /* Line 1807 of yacc.c  */ 
    5161 #line 1173 "fortran.y" 
    5162     { sprintf((yyval.na),"==%s",(yyvsp[(2) - (2)].na)); } 
     4838#line 1171 "fortran.y" 
     4839    { sprintf((yyval.na),"//%s",(yyvsp[0].na)); } 
     4840#line 4841 "fortran.tab.c" 
    51634841    break; 
    51644842 
    51654843  case 303: 
    5166 /* Line 1807 of yacc.c  */ 
    51674844#line 1174 "fortran.y" 
    5168     { sprintf((yyval.na),"= %s",(yyvsp[(1) - (1)].na)); } 
     4845    { sprintf((yyval.na),"==%s",(yyvsp[0].na)); } 
     4846#line 4847 "fortran.tab.c" 
    51694847    break; 
    51704848 
    51714849  case 304: 
    5172 /* Line 1807 of yacc.c  */ 
    5173 #line 1177 "fortran.y" 
    5174     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4850#line 1175 "fortran.y" 
     4851    { sprintf((yyval.na),"= %s",(yyvsp[0].na)); } 
     4852#line 4853 "fortran.tab.c" 
    51754853    break; 
    51764854 
    51774855  case 305: 
    5178 /* Line 1807 of yacc.c  */ 
    51794856#line 1178 "fortran.y" 
    5180     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4857    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4858#line 4859 "fortran.tab.c" 
    51814859    break; 
    51824860 
    51834861  case 306: 
    5184 /* Line 1807 of yacc.c  */ 
    51854862#line 1179 "fortran.y" 
    5186     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4863    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4864#line 4865 "fortran.tab.c" 
    51874865    break; 
    51884866 
    51894867  case 307: 
    5190 /* Line 1807 of yacc.c  */ 
    5191 #line 1183 "fortran.y" 
     4868#line 1180 "fortran.y" 
     4869    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4870#line 4871 "fortran.tab.c" 
     4871    break; 
     4872 
     4873  case 308: 
     4874#line 1184 "fortran.y" 
    51924875    { 
    51934876            agrif_parentcall = 0; 
     
    51994882            } 
    52004883        } 
    5201     break; 
    5202  
    5203   case 308: 
    5204 /* Line 1807 of yacc.c  */ 
    5205 #line 1194 "fortran.y" 
    5206     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); if ( incalldeclare == 0 ) inagrifcallargument = 0;   } 
     4884#line 4885 "fortran.tab.c" 
    52074885    break; 
    52084886 
    52094887  case 309: 
    5210 /* Line 1807 of yacc.c  */ 
    52114888#line 1195 "fortran.y" 
    5212     { sprintf((yyval.na)," %s %s ",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
     4889    { strcpy((yyval.na),(yyvsp[0].na)); if ( incalldeclare == 0 ) inagrifcallargument = 0;   } 
     4890#line 4891 "fortran.tab.c" 
    52134891    break; 
    52144892 
    52154893  case 310: 
    5216 /* Line 1807 of yacc.c  */ 
    52174894#line 1196 "fortran.y" 
    5218     { sprintf((yyval.na)," %s ( %s )",(yyvsp[(1) - (4)].na),(yyvsp[(3) - (4)].na)); } 
     4895    { sprintf((yyval.na)," %s %s ",(yyvsp[-1].na),(yyvsp[0].na)); } 
     4896#line 4897 "fortran.tab.c" 
    52194897    break; 
    52204898 
    52214899  case 311: 
    5222 /* Line 1807 of yacc.c  */ 
    52234900#line 1197 "fortran.y" 
    5224     { sprintf((yyval.na)," %s ( %s ) %s ",(yyvsp[(1) - (5)].na),(yyvsp[(3) - (5)].na),(yyvsp[(5) - (5)].na)); } 
     4901    { sprintf((yyval.na)," %s ( %s )",(yyvsp[-3].na),(yyvsp[-1].na)); } 
     4902#line 4903 "fortran.tab.c" 
    52254903    break; 
    52264904 
    52274905  case 312: 
    5228 /* Line 1807 of yacc.c  */ 
    5229 #line 1201 "fortran.y" 
     4906#line 1198 "fortran.y" 
     4907    { sprintf((yyval.na)," %s ( %s ) %s ",(yyvsp[-4].na),(yyvsp[-2].na),(yyvsp[0].na)); } 
     4908#line 4909 "fortran.tab.c" 
     4909    break; 
     4910 
     4911  case 313: 
     4912#line 1202 "fortran.y" 
    52304913    { 
    52314914            if ( inside_type_declare ) break; 
    5232             sprintf((yyval.na)," %s ( %s )",(yyvsp[(1) - (4)].na),(yyvsp[(3) - (4)].na)); 
    5233             ModifyTheAgrifFunction_0((yyvsp[(3) - (4)].na)); 
     4915            sprintf((yyval.na)," %s ( %s )",(yyvsp[-3].na),(yyvsp[-1].na)); 
     4916            ModifyTheAgrifFunction_0((yyvsp[-1].na)); 
    52344917            agrif_parentcall = 0; 
    52354918        } 
    5236     break; 
    5237  
    5238   case 313: 
    5239 /* Line 1807 of yacc.c  */ 
    5240 #line 1210 "fortran.y" 
     4919#line 4920 "fortran.tab.c" 
     4920    break; 
     4921 
     4922  case 314: 
     4923#line 1211 "fortran.y" 
    52414924    { 
    5242             sprintf((yyval.na)," %s %% %s ",(yyvsp[(1) - (4)].na),(yyvsp[(4) - (4)].na)); 
     4925            sprintf((yyval.na)," %s %% %s ",(yyvsp[-3].na),(yyvsp[0].na)); 
    52434926            if ( incalldeclare == 0 ) inagrifcallargument = 0; 
    52444927        } 
    5245     break; 
    5246  
    5247   case 314: 
    5248 /* Line 1807 of yacc.c  */ 
    5249 #line 1216 "fortran.y" 
    5250     { sprintf((yyval.na),"(/%s/)",(yyvsp[(2) - (3)].na)); } 
     4928#line 4929 "fortran.tab.c" 
    52514929    break; 
    52524930 
    52534931  case 315: 
    5254 /* Line 1807 of yacc.c  */ 
    5255 #line 1219 "fortran.y" 
     4932#line 1217 "fortran.y" 
     4933    { sprintf((yyval.na),"(/%s/)",(yyvsp[-1].na)); } 
     4934#line 4935 "fortran.tab.c" 
     4935    break; 
     4936 
     4937  case 316: 
     4938#line 1220 "fortran.y" 
    52564939    { strcpy((yyval.na)," "); } 
    5257     break; 
    5258  
    5259   case 316: 
    5260 /* Line 1807 of yacc.c  */ 
    5261 #line 1220 "fortran.y" 
    5262     { strcpy((yyval.na),(yyvsp[(2) - (2)].na)); } 
     4940#line 4941 "fortran.tab.c" 
    52634941    break; 
    52644942 
    52654943  case 317: 
    5266 /* Line 1807 of yacc.c  */ 
    5267 #line 1223 "fortran.y" 
    5268     {  strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     4944#line 1221 "fortran.y" 
     4945    { strcpy((yyval.na),(yyvsp[0].na)); } 
     4946#line 4947 "fortran.tab.c" 
    52694947    break; 
    52704948 
    52714949  case 318: 
    5272 /* Line 1807 of yacc.c  */ 
    52734950#line 1224 "fortran.y" 
    5274     {  sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     4951    {  strcpy((yyval.na),(yyvsp[0].na)); } 
     4952#line 4953 "fortran.tab.c" 
    52754953    break; 
    52764954 
    52774955  case 319: 
    5278 /* Line 1807 of yacc.c  */ 
    5279 #line 1227 "fortran.y" 
    5280     {strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     4956#line 1225 "fortran.y" 
     4957    {  sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     4958#line 4959 "fortran.tab.c" 
    52814959    break; 
    52824960 
    52834961  case 320: 
    5284 /* Line 1807 of yacc.c  */ 
    52854962#line 1228 "fortran.y" 
    5286     {strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     4963    {strcpy((yyval.na),(yyvsp[0].na));} 
     4964#line 4965 "fortran.tab.c" 
    52874965    break; 
    52884966 
    52894967  case 321: 
    5290 /* Line 1807 of yacc.c  */ 
    5291 #line 1231 "fortran.y" 
    5292     {  sprintf((yyval.na),"%s :%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na));} 
     4968#line 1229 "fortran.y" 
     4969    {strcpy((yyval.na),(yyvsp[0].na));} 
     4970#line 4971 "fortran.tab.c" 
    52934971    break; 
    52944972 
    52954973  case 322: 
    5296 /* Line 1807 of yacc.c  */ 
    52974974#line 1232 "fortran.y" 
    5298     {  sprintf((yyval.na),"%s :%s :%s",(yyvsp[(1) - (5)].na),(yyvsp[(3) - (5)].na),(yyvsp[(5) - (5)].na));} 
     4975    {  sprintf((yyval.na),"%s :%s",(yyvsp[-2].na),(yyvsp[0].na));} 
     4976#line 4977 "fortran.tab.c" 
    52994977    break; 
    53004978 
    53014979  case 323: 
    5302 /* Line 1807 of yacc.c  */ 
    53034980#line 1233 "fortran.y" 
    5304     {  sprintf((yyval.na),":%s :%s",(yyvsp[(2) - (4)].na),(yyvsp[(4) - (4)].na));} 
     4981    {  sprintf((yyval.na),"%s :%s :%s",(yyvsp[-4].na),(yyvsp[-2].na),(yyvsp[0].na));} 
     4982#line 4983 "fortran.tab.c" 
    53054983    break; 
    53064984 
    53074985  case 324: 
    5308 /* Line 1807 of yacc.c  */ 
    53094986#line 1234 "fortran.y" 
    5310     {  sprintf((yyval.na),": : %s",(yyvsp[(3) - (3)].na));} 
     4987    {  sprintf((yyval.na),":%s :%s",(yyvsp[-2].na),(yyvsp[0].na));} 
     4988#line 4989 "fortran.tab.c" 
    53114989    break; 
    53124990 
    53134991  case 325: 
    5314 /* Line 1807 of yacc.c  */ 
    53154992#line 1235 "fortran.y" 
    5316     {  sprintf((yyval.na),":%s",(yyvsp[(2) - (2)].na));} 
     4993    {  sprintf((yyval.na),": : %s",(yyvsp[0].na));} 
     4994#line 4995 "fortran.tab.c" 
    53174995    break; 
    53184996 
    53194997  case 326: 
    5320 /* Line 1807 of yacc.c  */ 
    53214998#line 1236 "fortran.y" 
    5322     {  sprintf((yyval.na),"%s :",(yyvsp[(1) - (2)].na));} 
     4999    {  sprintf((yyval.na),":%s",(yyvsp[0].na));} 
     5000#line 5001 "fortran.tab.c" 
    53235001    break; 
    53245002 
    53255003  case 327: 
    5326 /* Line 1807 of yacc.c  */ 
    53275004#line 1237 "fortran.y" 
     5005    {  sprintf((yyval.na),"%s :",(yyvsp[-1].na));} 
     5006#line 5007 "fortran.tab.c" 
     5007    break; 
     5008 
     5009  case 328: 
     5010#line 1238 "fortran.y" 
    53285011    {  sprintf((yyval.na),":");} 
    5329     break; 
    5330  
    5331   case 328: 
    5332 /* Line 1807 of yacc.c  */ 
    5333 #line 1240 "fortran.y" 
     5012#line 5013 "fortran.tab.c" 
     5013    break; 
     5014 
     5015  case 329: 
     5016#line 1241 "fortran.y" 
    53345017    { 
    53355018            if ( afterpercent == 0 ) 
    53365019            { 
    5337                 if ( Agrif_in_Tok_NAME((yyvsp[(1) - (1)].na)) ) Add_SubroutineWhereAgrifUsed_1(subroutinename, curmodulename); 
    5338                 if ( !strcasecmp((yyvsp[(1) - (1)].na),"Agrif_Parent") )   agrif_parentcall = 1; 
    5339                 if ( VariableIsFunction((yyvsp[(1) - (1)].na)) ) 
     5020                if ( Agrif_in_Tok_NAME((yyvsp[0].na)) ) Add_SubroutineWhereAgrifUsed_1(subroutinename, curmodulename); 
     5021                if ( !strcasecmp((yyvsp[0].na),"Agrif_Parent") )   agrif_parentcall = 1; 
     5022                if ( VariableIsFunction((yyvsp[0].na)) ) 
    53405023                { 
    53415024                    if ( inagrifcallargument == 1 ) 
    53425025                    { 
    5343                         if ( !strcasecmp((yyvsp[(1) - (1)].na),identcopy) ) 
     5026                        if ( !strcasecmp((yyvsp[0].na),identcopy) ) 
    53445027                        { 
    53455028                            strcpy(sameagrifname,identcopy); 
     
    53475030                        } 
    53485031                    } 
    5349                     strcpy(identcopy,(yyvsp[(1) - (1)].na)); 
     5032                    strcpy(identcopy,(yyvsp[0].na)); 
    53505033                    pointedvar = 0; 
    53515034 
    5352                     if (variscoupled_0((yyvsp[(1) - (1)].na))) strcpy(truename, getcoupledname_0((yyvsp[(1) - (1)].na))); 
    5353                     else                    strcpy(truename, (yyvsp[(1) - (1)].na)); 
     5035                    if (variscoupled_0((yyvsp[0].na))) strcpy(truename, getcoupledname_0((yyvsp[0].na))); 
     5036                    else                    strcpy(truename, (yyvsp[0].na)); 
    53545037 
    53555038                    if ( VarIsNonGridDepend(truename) == 0 && (! Variableshouldberemoved(truename)) ) 
     
    53575040                        if ( inagrifcallargument == 1 || varispointer_0(truename) == 1 ) 
    53585041                        { 
    5359                             if ( (IsinListe(List_UsedInSubroutine_Var,(yyvsp[(1) - (1)].na)) == 1) || (inagrifcallargument == 1) ) 
     5042                            if ( (IsinListe(List_UsedInSubroutine_Var,(yyvsp[0].na)) == 1) || (inagrifcallargument == 1) ) 
    53605043                            { 
    5361                                 if (varistyped_0(truename) == 0)    ModifyTheVariableName_0(truename,strlen((yyvsp[(1) - (1)].na))); 
     5044                                if (varistyped_0(truename) == 0)    ModifyTheVariableName_0(truename,strlen((yyvsp[0].na))); 
    53625045                            } 
    53635046                        } 
     
    53755058            } 
    53765059        } 
    5377     break; 
    5378  
    5379   case 329: 
    5380 /* Line 1807 of yacc.c  */ 
    5381 #line 1285 "fortran.y" 
     5060#line 5061 "fortran.tab.c" 
     5061    break; 
     5062 
     5063  case 330: 
     5064#line 1286 "fortran.y" 
    53825065    { strcpy((yyval.na),".TRUE.");} 
    5383     break; 
    5384  
    5385   case 330: 
    5386 /* Line 1807 of yacc.c  */ 
    5387 #line 1286 "fortran.y" 
     5066#line 5067 "fortran.tab.c" 
     5067    break; 
     5068 
     5069  case 331: 
     5070#line 1287 "fortran.y" 
    53885071    { strcpy((yyval.na),".FALSE.");} 
    5389     break; 
    5390  
    5391   case 331: 
    5392 /* Line 1807 of yacc.c  */ 
    5393 #line 1287 "fortran.y" 
     5072#line 5073 "fortran.tab.c" 
     5073    break; 
     5074 
     5075  case 332: 
     5076#line 1288 "fortran.y" 
    53945077    { strcpy((yyval.na),"NULL()"); } 
    5395     break; 
    5396  
    5397   case 332: 
    5398 /* Line 1807 of yacc.c  */ 
    5399 #line 1288 "fortran.y" 
    5400     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     5078#line 5079 "fortran.tab.c" 
    54015079    break; 
    54025080 
    54035081  case 333: 
    5404 /* Line 1807 of yacc.c  */ 
    54055082#line 1289 "fortran.y" 
    5406     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     5083    { strcpy((yyval.na),(yyvsp[0].na)); } 
     5084#line 5085 "fortran.tab.c" 
    54075085    break; 
    54085086 
    54095087  case 334: 
    5410 /* Line 1807 of yacc.c  */ 
    54115088#line 1290 "fortran.y" 
    5412     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     5089    { strcpy((yyval.na),(yyvsp[0].na)); } 
     5090#line 5091 "fortran.tab.c" 
    54135091    break; 
    54145092 
    54155093  case 335: 
    5416 /* Line 1807 of yacc.c  */ 
    5417 #line 1292 "fortran.y" 
    5418     { sprintf((yyval.na),"%s%s",(yyvsp[(1) - (2)].na),(yyvsp[(2) - (2)].na)); } 
    5419     break; 
    5420  
    5421   case 337: 
    5422 /* Line 1807 of yacc.c  */ 
    5423 #line 1296 "fortran.y" 
    5424     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
    5425     break; 
    5426  
    5427   case 339: 
    5428 /* Line 1807 of yacc.c  */ 
    5429 #line 1298 "fortran.y" 
    5430     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     5094#line 1291 "fortran.y" 
     5095    { strcpy((yyval.na),(yyvsp[0].na)); } 
     5096#line 5097 "fortran.tab.c" 
     5097    break; 
     5098 
     5099  case 336: 
     5100#line 1293 "fortran.y" 
     5101    { sprintf((yyval.na),"%s%s",(yyvsp[-1].na),(yyvsp[0].na)); } 
     5102#line 5103 "fortran.tab.c" 
     5103    break; 
     5104 
     5105  case 338: 
     5106#line 1297 "fortran.y" 
     5107    { strcpy((yyval.na),(yyvsp[0].na));} 
     5108#line 5109 "fortran.tab.c" 
    54315109    break; 
    54325110 
    54335111  case 340: 
    5434 /* Line 1807 of yacc.c  */ 
    54355112#line 1299 "fortran.y" 
    5436     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     5113    { strcpy((yyval.na),(yyvsp[0].na));} 
     5114#line 5115 "fortran.tab.c" 
    54375115    break; 
    54385116 
    54395117  case 341: 
    5440 /* Line 1807 of yacc.c  */ 
    5441 #line 1301 "fortran.y" 
     5118#line 1300 "fortran.y" 
     5119    { strcpy((yyval.na),(yyvsp[0].na));} 
     5120#line 5121 "fortran.tab.c" 
     5121    break; 
     5122 
     5123  case 342: 
     5124#line 1302 "fortran.y" 
    54425125    { strcpy((yyval.na)," ");} 
    5443     break; 
    5444  
    5445   case 342: 
    5446 /* Line 1807 of yacc.c  */ 
    5447 #line 1302 "fortran.y" 
    5448     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     5126#line 5127 "fortran.tab.c" 
    54495127    break; 
    54505128 
    54515129  case 343: 
    5452 /* Line 1807 of yacc.c  */ 
    5453 #line 1305 "fortran.y" 
    5454     { sprintf((yyval.na),"(%s :%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na));} 
     5130#line 1303 "fortran.y" 
     5131    { strcpy((yyval.na),(yyvsp[0].na));} 
     5132#line 5133 "fortran.tab.c" 
    54555133    break; 
    54565134 
    54575135  case 344: 
    5458 /* Line 1807 of yacc.c  */ 
    5459 #line 1307 "fortran.y" 
     5136#line 1306 "fortran.y" 
     5137    { sprintf((yyval.na),"(%s :%s)",(yyvsp[-3].na),(yyvsp[-1].na));} 
     5138#line 5139 "fortran.tab.c" 
     5139    break; 
     5140 
     5141  case 345: 
     5142#line 1308 "fortran.y" 
    54605143    { strcpy((yyval.na)," ");} 
    5461     break; 
    5462  
    5463   case 345: 
    5464 /* Line 1807 of yacc.c  */ 
    5465 #line 1308 "fortran.y" 
    5466     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     5144#line 5145 "fortran.tab.c" 
    54675145    break; 
    54685146 
    54695147  case 346: 
    5470 /* Line 1807 of yacc.c  */ 
    5471 #line 1311 "fortran.y" 
     5148#line 1309 "fortran.y" 
     5149    { strcpy((yyval.na),(yyvsp[0].na));} 
     5150#line 5151 "fortran.tab.c" 
     5151    break; 
     5152 
     5153  case 347: 
     5154#line 1312 "fortran.y" 
    54725155    { strcpy((yyval.na)," ");} 
    5473     break; 
    5474  
    5475   case 347: 
    5476 /* Line 1807 of yacc.c  */ 
    5477 #line 1312 "fortran.y" 
    5478     { strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     5156#line 5157 "fortran.tab.c" 
    54795157    break; 
    54805158 
    54815159  case 348: 
    5482 /* Line 1807 of yacc.c  */ 
    5483 #line 1314 "fortran.y" 
     5160#line 1313 "fortran.y" 
     5161    { strcpy((yyval.na),(yyvsp[0].na));} 
     5162#line 5163 "fortran.tab.c" 
     5163    break; 
     5164 
     5165  case 349: 
     5166#line 1315 "fortran.y" 
    54845167    { InitialValueGiven = 0; } 
    5485     break; 
    5486  
    5487   case 349: 
    5488 /* Line 1807 of yacc.c  */ 
    5489 #line 1316 "fortran.y" 
     5168#line 5169 "fortran.tab.c" 
     5169    break; 
     5170 
     5171  case 350: 
     5172#line 1317 "fortran.y" 
    54905173    { 
    54915174            if ( inside_type_declare ) break; 
    5492             strcpy(InitValue,(yyvsp[(2) - (2)].na)); 
     5175            strcpy(InitValue,(yyvsp[0].na)); 
    54935176            InitialValueGiven = 1; 
    54945177        } 
    5495     break; 
    5496  
    5497   case 350: 
    5498 /* Line 1807 of yacc.c  */ 
    5499 #line 1322 "fortran.y" 
     5178#line 5179 "fortran.tab.c" 
     5179    break; 
     5180 
     5181  case 351: 
     5182#line 1323 "fortran.y" 
    55005183    { 
    55015184            if ( inside_type_declare ) break; 
    5502             strcpy(InitValue,(yyvsp[(2) - (2)].na)); 
     5185            strcpy(InitValue,(yyvsp[0].na)); 
    55035186            InitialValueGiven = 2; 
    55045187        } 
    5505     break; 
    5506  
    5507   case 351: 
    5508 /* Line 1807 of yacc.c  */ 
    5509 #line 1329 "fortran.y" 
    5510     {sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na)); } 
     5188#line 5189 "fortran.tab.c" 
    55115189    break; 
    55125190 
    55135191  case 352: 
    5514 /* Line 1807 of yacc.c  */ 
    5515 #line 1333 "fortran.y" 
     5192#line 1330 "fortran.y" 
     5193    {sprintf((yyval.na),"(%s,%s)",(yyvsp[-3].na),(yyvsp[-1].na)); } 
     5194#line 5195 "fortran.tab.c" 
     5195    break; 
     5196 
     5197  case 353: 
     5198#line 1334 "fortran.y" 
    55165199    { 
    55175200            /* if variables has been declared in a subroutine       */ 
    5518             sprintf(charusemodule, "%s", (yyvsp[(2) - (2)].na)); 
     5201            sprintf(charusemodule, "%s", (yyvsp[0].na)); 
    55195202            if ( firstpass ) 
    55205203            { 
    5521                 Add_NameOfModuleUsed_1((yyvsp[(2) - (2)].na)); 
     5204                Add_NameOfModuleUsed_1((yyvsp[0].na)); 
    55225205            } 
    55235206            else 
    55245207            { 
    55255208                if ( insubroutinedeclare ) 
    5526                     copyuse_0((yyvsp[(2) - (2)].na)); 
     5209                    copyuse_0((yyvsp[0].na)); 
    55275210 
    55285211                if ( inmoduledeclare == 0 ) 
     
    55335216            } 
    55345217        } 
    5535     break; 
    5536  
    5537   case 353: 
    5538 /* Line 1807 of yacc.c  */ 
    5539 #line 1353 "fortran.y" 
     5218#line 5219 "fortran.tab.c" 
     5219    break; 
     5220 
     5221  case 354: 
     5222#line 1354 "fortran.y" 
    55405223    { 
    55415224            if ( firstpass ) 
     
    55435226                if ( insubroutinedeclare ) 
    55445227                { 
    5545                     Add_CouplePointed_Var_1((yyvsp[(2) - (4)].na),(yyvsp[(4) - (4)].lc)); 
    5546                     coupletmp = (yyvsp[(4) - (4)].lc); 
     5228                    Add_CouplePointed_Var_1((yyvsp[-2].na),(yyvsp[0].lc)); 
     5229                    coupletmp = (yyvsp[0].lc); 
    55475230                    strcpy(ligne,""); 
    55485231                    while ( coupletmp ) 
     
    55545237                        if ( coupletmp ) strcat(ligne,","); 
    55555238                    } 
    5556                     sprintf(charusemodule,"%s",(yyvsp[(2) - (4)].na)); 
     5239                    sprintf(charusemodule,"%s",(yyvsp[-2].na)); 
    55575240                } 
    5558                 Add_NameOfModuleUsed_1((yyvsp[(2) - (4)].na)); 
     5241                Add_NameOfModuleUsed_1((yyvsp[-2].na)); 
    55595242            } 
    55605243            if ( inmoduledeclare == 0 ) 
     
    55645247            } 
    55655248        } 
    5566     break; 
    5567  
    5568   case 354: 
    5569 /* Line 1807 of yacc.c  */ 
    5570 #line 1380 "fortran.y" 
     5249#line 5250 "fortran.tab.c" 
     5250    break; 
     5251 
     5252  case 355: 
     5253#line 1381 "fortran.y" 
    55715254    { 
    55725255            /* if variables has been declared in a subroutine       */ 
    5573             sprintf(charusemodule,"%s",(yyvsp[(2) - (6)].na)); 
     5256            sprintf(charusemodule,"%s",(yyvsp[-4].na)); 
    55745257            if ( firstpass ) 
    55755258            { 
    5576                 Add_NameOfModuleUsed_1((yyvsp[(2) - (6)].na)); 
     5259                Add_NameOfModuleUsed_1((yyvsp[-4].na)); 
    55775260            } 
    55785261            else 
    55795262            { 
    55805263                if ( insubroutinedeclare ) 
    5581                     copyuseonly_0((yyvsp[(2) - (6)].na)); 
     5264                    copyuseonly_0((yyvsp[-4].na)); 
    55825265 
    55835266                if ( inmoduledeclare == 0 ) 
     
    55885271            } 
    55895272        } 
    5590     break; 
    5591  
    5592   case 355: 
    5593 /* Line 1807 of yacc.c  */ 
    5594 #line 1400 "fortran.y" 
     5273#line 5274 "fortran.tab.c" 
     5274    break; 
     5275 
     5276  case 356: 
     5277#line 1401 "fortran.y" 
    55955278    { 
    55965279            /* if variables has been declared in a subroutine      */ 
     
    55995282                if ( insubroutinedeclare ) 
    56005283                { 
    5601                     Add_CouplePointed_Var_1((yyvsp[(2) - (6)].na),(yyvsp[(6) - (6)].lc)); 
    5602                     coupletmp = (yyvsp[(6) - (6)].lc); 
     5284                    Add_CouplePointed_Var_1((yyvsp[-4].na),(yyvsp[0].lc)); 
     5285                    coupletmp = (yyvsp[0].lc); 
    56035286                    strcpy(ligne,""); 
    56045287                    while ( coupletmp ) 
     
    56105293                        if ( coupletmp ) strcat(ligne,","); 
    56115294                    } 
    5612                     sprintf(charusemodule,"%s",(yyvsp[(2) - (6)].na)); 
     5295                    sprintf(charusemodule,"%s",(yyvsp[-4].na)); 
    56135296                } 
    5614                 Add_NameOfModuleUsed_1((yyvsp[(2) - (6)].na)); 
     5297                Add_NameOfModuleUsed_1((yyvsp[-4].na)); 
    56155298            } 
    56165299            else /* if ( firstpass == 0 ) */ 
     
    56205303                    pos_end = setposcur(); 
    56215304                    RemoveWordSET_0(fortran_out,pos_curuse,pos_end-pos_curuse); 
    5622                     if (oldfortran_out)  variableisglobalinmodule((yyvsp[(6) - (6)].lc),(yyvsp[(2) - (6)].na),oldfortran_out,pos_curuseold); 
     5305                    if (oldfortran_out)  variableisglobalinmodule((yyvsp[0].lc),(yyvsp[-4].na),oldfortran_out,pos_curuseold); 
    56235306                } 
    56245307                else 
     
    56265309                    /* if we are in the module declare and if the    */ 
    56275310                    /* onlylist is a list of global variable         */ 
    5628                     variableisglobalinmodule((yyvsp[(6) - (6)].lc), (yyvsp[(2) - (6)].na), fortran_out,pos_curuse); 
     5311                    variableisglobalinmodule((yyvsp[0].lc), (yyvsp[-4].na), fortran_out,pos_curuse); 
    56295312                } 
    56305313            } 
    56315314        } 
    5632     break; 
    5633  
    5634   case 356: 
    5635 /* Line 1807 of yacc.c  */ 
    5636 #line 1440 "fortran.y" 
     5315#line 5316 "fortran.tab.c" 
     5316    break; 
     5317 
     5318  case 357: 
     5319#line 1441 "fortran.y" 
    56375320    { 
    5638             pos_curuse = setposcur()-strlen((yyvsp[(1) - (1)].na)); 
     5321            pos_curuse = setposcur()-strlen((yyvsp[0].na)); 
    56395322            if (firstpass == 0 && oldfortran_out) pos_curuseold = setposcurname(oldfortran_out); 
    56405323        } 
    5641     break; 
    5642  
    5643   case 357: 
    5644 /* Line 1807 of yacc.c  */ 
    5645 #line 1447 "fortran.y" 
     5324#line 5325 "fortran.tab.c" 
     5325    break; 
     5326 
     5327  case 358: 
     5328#line 1448 "fortran.y" 
    56465329    { 
    5647             (yyval.lc) = (yyvsp[(1) - (1)].lc); 
     5330            (yyval.lc) = (yyvsp[0].lc); 
    56485331        } 
    5649     break; 
    5650  
    5651   case 358: 
    5652 /* Line 1807 of yacc.c  */ 
    5653 #line 1451 "fortran.y" 
     5332#line 5333 "fortran.tab.c" 
     5333    break; 
     5334 
     5335  case 359: 
     5336#line 1452 "fortran.y" 
    56545337    { 
    56555338            /* insert the variable in the list $1                 */ 
    5656             (yyvsp[(3) - (3)].lc)->suiv = (yyvsp[(1) - (3)].lc); 
    5657             (yyval.lc) = (yyvsp[(3) - (3)].lc); 
     5339            (yyvsp[0].lc)->suiv = (yyvsp[-2].lc); 
     5340            (yyval.lc) = (yyvsp[0].lc); 
    56585341        } 
    5659     break; 
    5660  
    5661   case 359: 
    5662 /* Line 1807 of yacc.c  */ 
    5663 #line 1458 "fortran.y" 
     5342#line 5343 "fortran.tab.c" 
     5343    break; 
     5344 
     5345  case 360: 
     5346#line 1459 "fortran.y" 
    56645347    { 
    56655348            coupletmp = (listcouple *) calloc(1,sizeof(listcouple)); 
    5666             strcpy(coupletmp->c_namevar,(yyvsp[(1) - (3)].na)); 
    5667             strcpy(coupletmp->c_namepointedvar,(yyvsp[(3) - (3)].na)); 
     5349            strcpy(coupletmp->c_namevar,(yyvsp[-2].na)); 
     5350            strcpy(coupletmp->c_namepointedvar,(yyvsp[0].na)); 
    56685351            coupletmp->suiv = NULL; 
    56695352            (yyval.lc) = coupletmp; 
    56705353        } 
    5671     break; 
    5672  
    5673   case 360: 
    5674 /* Line 1807 of yacc.c  */ 
    5675 #line 1467 "fortran.y" 
    5676     {  (yyval.lc) = (yyvsp[(1) - (1)].lc); } 
     5354#line 5355 "fortran.tab.c" 
    56775355    break; 
    56785356 
    56795357  case 361: 
    5680 /* Line 1807 of yacc.c  */ 
    5681 #line 1469 "fortran.y" 
     5358#line 1468 "fortran.y" 
     5359    {  (yyval.lc) = (yyvsp[0].lc); } 
     5360#line 5361 "fortran.tab.c" 
     5361    break; 
     5362 
     5363  case 362: 
     5364#line 1470 "fortran.y" 
    56825365    { 
    56835366            /* insert the variable in the list $1                 */ 
    5684             (yyvsp[(3) - (3)].lc)->suiv = (yyvsp[(1) - (3)].lc); 
    5685             (yyval.lc) = (yyvsp[(3) - (3)].lc); 
     5367            (yyvsp[0].lc)->suiv = (yyvsp[-2].lc); 
     5368            (yyval.lc) = (yyvsp[0].lc); 
    56865369        } 
    5687     break; 
    5688  
    5689   case 362: 
    5690 /* Line 1807 of yacc.c  */ 
    5691 #line 1477 "fortran.y" 
     5370#line 5371 "fortran.tab.c" 
     5371    break; 
     5372 
     5373  case 363: 
     5374#line 1478 "fortran.y" 
    56925375    { 
    56935376            coupletmp = (listcouple *)calloc(1,sizeof(listcouple)); 
    5694             strcpy(coupletmp->c_namevar,(yyvsp[(1) - (3)].na)); 
    5695             strcpy(coupletmp->c_namepointedvar,(yyvsp[(3) - (3)].na)); 
     5377            strcpy(coupletmp->c_namevar,(yyvsp[-2].na)); 
     5378            strcpy(coupletmp->c_namepointedvar,(yyvsp[0].na)); 
    56965379            coupletmp->suiv = NULL; 
    56975380            (yyval.lc) = coupletmp; 
    56985381            pointedvar = 1; 
    5699             Add_UsedInSubroutine_Var_1((yyvsp[(1) - (3)].na)); 
     5382            Add_UsedInSubroutine_Var_1((yyvsp[-2].na)); 
    57005383        } 
    5701     break; 
    5702  
    5703   case 363: 
    5704 /* Line 1807 of yacc.c  */ 
    5705 #line 1487 "fortran.y" 
     5384#line 5385 "fortran.tab.c" 
     5385    break; 
     5386 
     5387  case 364: 
     5388#line 1488 "fortran.y" 
    57065389    { 
    57075390            coupletmp = (listcouple *)calloc(1,sizeof(listcouple)); 
    5708             strcpy(coupletmp->c_namevar,(yyvsp[(1) - (1)].na)); 
     5391            strcpy(coupletmp->c_namevar,(yyvsp[0].na)); 
    57095392            strcpy(coupletmp->c_namepointedvar,""); 
    57105393            coupletmp->suiv = NULL; 
    57115394            (yyval.lc) = coupletmp; 
    57125395        } 
    5713     break; 
    5714  
    5715   case 380: 
    5716 /* Line 1807 of yacc.c  */ 
    5717 #line 1522 "fortran.y" 
    5718     { inallocate = 0; } 
     5396#line 5397 "fortran.tab.c" 
    57195397    break; 
    57205398 
    57215399  case 381: 
    5722 /* Line 1807 of yacc.c  */ 
    57235400#line 1523 "fortran.y" 
    57245401    { inallocate = 0; } 
    5725     break; 
    5726  
    5727   case 388: 
    5728 /* Line 1807 of yacc.c  */ 
    5729 #line 1531 "fortran.y" 
     5402#line 5403 "fortran.tab.c" 
     5403    break; 
     5404 
     5405  case 382: 
     5406#line 1524 "fortran.y" 
     5407    { inallocate = 0; } 
     5408#line 5409 "fortran.tab.c" 
     5409    break; 
     5410 
     5411  case 389: 
     5412#line 1532 "fortran.y" 
    57305413    { 
    57315414            GlobalDeclaration = 0 ; 
     
    57645447            strcpy(subroutinename,""); 
    57655448        } 
    5766     break; 
    5767  
    5768   case 389: 
    5769 /* Line 1807 of yacc.c  */ 
    5770 #line 1568 "fortran.y" 
     5449#line 5450 "fortran.tab.c" 
     5450    break; 
     5451 
     5452  case 390: 
     5453#line 1569 "fortran.y" 
    57715454    { 
    57725455            insubroutinedeclare = 0; 
     
    57775460            strcpy(subroutinename,""); 
    57785461        } 
    5779     break; 
    5780  
    5781   case 390: 
    5782 /* Line 1807 of yacc.c  */ 
    5783 #line 1577 "fortran.y" 
     5462#line 5463 "fortran.tab.c" 
     5463    break; 
     5464 
     5465  case 391: 
     5466#line 1578 "fortran.y" 
    57845467    { 
    57855468            if ( strcasecmp(subroutinename,"") ) 
     
    57925475            } 
    57935476        } 
    5794     break; 
    5795  
    5796   case 391: 
    5797 /* Line 1807 of yacc.c  */ 
    5798 #line 1588 "fortran.y" 
     5477#line 5478 "fortran.tab.c" 
     5478    break; 
     5479 
     5480  case 392: 
     5481#line 1589 "fortran.y" 
    57995482    { 
    58005483            insubroutinedeclare = 0; 
     
    58045487            strcpy(subroutinename,""); 
    58055488        } 
    5806     break; 
    5807  
    5808   case 392: 
    5809 /* Line 1807 of yacc.c  */ 
    5810 #line 1596 "fortran.y" 
     5489#line 5490 "fortran.tab.c" 
     5490    break; 
     5491 
     5492  case 393: 
     5493#line 1597 "fortran.y" 
    58115494    { 
    58125495            /* if we never meet the contains keyword               */ 
    58135496            if ( firstpass == 0 ) 
    58145497            { 
    5815                 RemoveWordCUR_0(fortran_out, strlen((yyvsp[(2) - (2)].na))+11);    // Remove word "end module" 
     5498                RemoveWordCUR_0(fortran_out, strlen((yyvsp[0].na))+11);    // Remove word "end module" 
    58165499                if ( inmoduledeclare && ! aftercontainsdeclare ) 
    58175500                { 
     
    58305513            GlobalDeclaration = 0 ; 
    58315514        } 
    5832     break; 
    5833  
    5834   case 395: 
    5835 /* Line 1807 of yacc.c  */ 
    5836 #line 1620 "fortran.y" 
     5515#line 5516 "fortran.tab.c" 
     5516    break; 
     5517 
     5518  case 396: 
     5519#line 1621 "fortran.y" 
    58375520    { 
    58385521            if ( inside_type_declare ) break; 
     
    58635546            else printf("l.%4d -- TOK_CONTAINS -- MHCHECK\n",line_num_input); 
    58645547        } 
    5865     break; 
    5866  
    5867   case 483: 
    5868 /* Line 1807 of yacc.c  */ 
    5869 #line 1898 "fortran.y" 
     5548#line 5549 "fortran.tab.c" 
     5549    break; 
     5550 
     5551  case 484: 
     5552#line 1899 "fortran.y" 
    58705553    { 
    5871             strcpy((yyval.na),(yyvsp[(1) - (1)].na)); 
    5872             pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].na)); 
     5554            strcpy((yyval.na),(yyvsp[0].na)); 
     5555            pos_endsubroutine = setposcur()-strlen((yyvsp[0].na)); 
    58735556            functiondeclarationisdone = 0; 
    58745557        } 
    5875     break; 
    5876  
    5877   case 484: 
    5878 /* Line 1807 of yacc.c  */ 
    5879 #line 1906 "fortran.y" 
     5558#line 5559 "fortran.tab.c" 
     5559    break; 
     5560 
     5561  case 485: 
     5562#line 1907 "fortran.y" 
    58805563    { 
    5881             strcpy((yyval.na),(yyvsp[(1) - (1)].na)); 
    5882             pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].na)); 
     5564            strcpy((yyval.na),(yyvsp[0].na)); 
     5565            pos_endsubroutine = setposcur()-strlen((yyvsp[0].na)); 
    58835566        } 
    5884     break; 
    5885  
    5886   case 485: 
    5887 /* Line 1807 of yacc.c  */ 
    5888 #line 1913 "fortran.y" 
     5567#line 5568 "fortran.tab.c" 
     5568    break; 
     5569 
     5570  case 486: 
     5571#line 1914 "fortran.y" 
    58895572    { 
    5890             strcpy((yyval.na),(yyvsp[(1) - (1)].na)); 
    5891             pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].na)); 
     5573            strcpy((yyval.na),(yyvsp[0].na)); 
     5574            pos_endsubroutine = setposcur()-strlen((yyvsp[0].na)); 
    58925575        } 
    5893     break; 
    5894  
    5895   case 486: 
    5896 /* Line 1807 of yacc.c  */ 
    5897 #line 1920 "fortran.y" 
     5576#line 5577 "fortran.tab.c" 
     5577    break; 
     5578 
     5579  case 487: 
     5580#line 1921 "fortran.y" 
    58985581    { 
    5899             strcpy((yyval.na),(yyvsp[(1) - (1)].na)); 
    5900             pos_endsubroutine = setposcur()-strlen((yyvsp[(1) - (1)].na)); 
     5582            strcpy((yyval.na),(yyvsp[0].na)); 
     5583            pos_endsubroutine = setposcur()-strlen((yyvsp[0].na)); 
    59015584        } 
    5902     break; 
    5903  
    5904   case 487: 
    5905 /* Line 1807 of yacc.c  */ 
    5906 #line 1926 "fortran.y" 
     5585#line 5586 "fortran.tab.c" 
     5586    break; 
     5587 
     5588  case 488: 
     5589#line 1927 "fortran.y" 
    59075590    {strcpy((yyval.na),"");} 
    5908     break; 
    5909  
    5910   case 488: 
    5911 /* Line 1807 of yacc.c  */ 
    5912 #line 1927 "fortran.y" 
    5913     {strcpy((yyval.na),(yyvsp[(1) - (1)].na));} 
     5591#line 5592 "fortran.tab.c" 
    59145592    break; 
    59155593 
    59165594  case 489: 
    5917 /* Line 1807 of yacc.c  */ 
    5918 #line 1930 "fortran.y" 
     5595#line 1928 "fortran.y" 
     5596    {strcpy((yyval.na),(yyvsp[0].na));} 
     5597#line 5598 "fortran.tab.c" 
     5598    break; 
     5599 
     5600  case 490: 
     5601#line 1931 "fortran.y" 
    59195602    { created_dimensionlist = 0; } 
    5920     break; 
    5921  
    5922   case 490: 
    5923 /* Line 1807 of yacc.c  */ 
    5924 #line 1934 "fortran.y" 
     5603#line 5604 "fortran.tab.c" 
     5604    break; 
     5605 
     5606  case 491: 
     5607#line 1935 "fortran.y" 
    59255608    { 
    59265609            created_dimensionlist = 1; 
    5927             if ( ((yyvsp[(3) - (4)].d) == NULL) || ((yyvsp[(4) - (4)].d) == NULL) ) break; 
     5610            if ( ((yyvsp[-1].d) == NULL) || ((yyvsp[0].d) == NULL) ) break; 
    59285611            if  ( agrif_parentcall == 1 ) 
    59295612            { 
    5930                 ModifyTheAgrifFunction_0((yyvsp[(3) - (4)].d)->dim.last); 
     5613                ModifyTheAgrifFunction_0((yyvsp[-1].d)->dim.last); 
    59315614                agrif_parentcall = 0; 
    59325615                fprintf(fortran_out," = "); 
    59335616            } 
    59345617        } 
    5935     break; 
    5936  
    5937   case 491: 
    5938 /* Line 1807 of yacc.c  */ 
    5939 #line 1945 "fortran.y" 
     5618#line 5619 "fortran.tab.c" 
     5619    break; 
     5620 
     5621  case 492: 
     5622#line 1946 "fortran.y" 
    59405623    { 
    59415624            created_dimensionlist = 1; 
    59425625        } 
    5943     break; 
    5944  
    5945   case 496: 
    5946 /* Line 1807 of yacc.c  */ 
    5947 #line 1958 "fortran.y" 
     5626#line 5627 "fortran.tab.c" 
     5627    break; 
     5628 
     5629  case 497: 
     5630#line 1959 "fortran.y" 
    59485631    { 
    59495632            inagrifcallargument = 0 ; 
     
    59575640            Instanciation_0(sameagrifname); 
    59585641        } 
    5959     break; 
    5960  
    5961   case 502: 
    5962 /* Line 1807 of yacc.c  */ 
    5963 #line 1979 "fortran.y" 
     5642#line 5643 "fortran.tab.c" 
     5643    break; 
     5644 
     5645  case 503: 
     5646#line 1980 "fortran.y" 
    59645647    { 
    5965             if (!strcasecmp((yyvsp[(2) - (2)].na),"MPI_Init") )    callmpiinit = 1; 
     5648            if (!strcasecmp((yyvsp[0].na),"MPI_Init") )    callmpiinit = 1; 
    59665649            else                                callmpiinit = 0; 
    59675650 
    5968             if (!strcasecmp((yyvsp[(2) - (2)].na),"Agrif_Init_Grids") ) 
     5651            if (!strcasecmp((yyvsp[0].na),"Agrif_Init_Grids") ) 
    59695652            { 
    59705653                callagrifinitgrids = 1; 
     
    59755658                callagrifinitgrids = 0; 
    59765659            } 
    5977             if ( Vartonumber((yyvsp[(2) - (2)].na)) == 1 ) 
     5660            if ( Vartonumber((yyvsp[0].na)) == 1 ) 
    59785661            { 
    59795662                incalldeclare = 1; 
     
    59825665            } 
    59835666        } 
    5984     break; 
    5985  
    5986   case 503: 
    5987 /* Line 1807 of yacc.c  */ 
    5988 #line 2000 "fortran.y" 
     5667#line 5668 "fortran.tab.c" 
     5668    break; 
     5669 
     5670  case 504: 
     5671#line 2001 "fortran.y" 
    59895672    { pos_curcall=setposcur()-4; } 
    5990     break; 
    5991  
    5992   case 506: 
    5993 /* Line 1807 of yacc.c  */ 
    5994 #line 2008 "fortran.y" 
     5673#line 5674 "fortran.tab.c" 
     5674    break; 
     5675 
     5676  case 507: 
     5677#line 2009 "fortran.y" 
    59955678    { 
    59965679            if ( callmpiinit == 1 ) 
    59975680            { 
    5998                 strcpy(mpiinitvar,(yyvsp[(1) - (1)].na)); 
     5681                strcpy(mpiinitvar,(yyvsp[0].na)); 
    59995682                if ( firstpass == 1 )  Add_UsedInSubroutine_Var_1 (mpiinitvar); 
    60005683            } 
    60015684        } 
    6002     break; 
    6003  
    6004   case 532: 
    6005 /* Line 1807 of yacc.c  */ 
    6006 #line 2056 "fortran.y" 
     5685#line 5686 "fortran.tab.c" 
     5686    break; 
     5687 
     5688  case 533: 
     5689#line 2057 "fortran.y" 
    60075690    { afterpercent = 1; } 
    6008     break; 
    6009  
    6010   case 572: 
    6011 /* Line 1807 of yacc.c  */ 
    6012 #line 2115 "fortran.y" 
    6013     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     5691#line 5692 "fortran.tab.c" 
    60145692    break; 
    60155693 
    60165694  case 573: 
    6017 /* Line 1807 of yacc.c  */ 
    60185695#line 2116 "fortran.y" 
    6019     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     5696    { strcpy((yyval.na),(yyvsp[0].na)); } 
     5697#line 5698 "fortran.tab.c" 
    60205698    break; 
    60215699 
    60225700  case 574: 
    6023 /* Line 1807 of yacc.c  */ 
    60245701#line 2117 "fortran.y" 
    6025     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     5702    { strcpy((yyval.na),(yyvsp[0].na)); } 
     5703#line 5704 "fortran.tab.c" 
    60265704    break; 
    60275705 
    60285706  case 575: 
    6029 /* Line 1807 of yacc.c  */ 
    60305707#line 2118 "fortran.y" 
    6031     { strcpy((yyval.na),(yyvsp[(1) - (1)].na)); } 
     5708    { strcpy((yyval.na),(yyvsp[0].na)); } 
     5709#line 5710 "fortran.tab.c" 
    60325710    break; 
    60335711 
    60345712  case 576: 
    6035 /* Line 1807 of yacc.c  */ 
    60365713#line 2119 "fortran.y" 
    6037     { sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     5714    { strcpy((yyval.na),(yyvsp[0].na)); } 
     5715#line 5716 "fortran.tab.c" 
    60385716    break; 
    60395717 
    60405718  case 577: 
    6041 /* Line 1807 of yacc.c  */ 
    60425719#line 2120 "fortran.y" 
    6043     { sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     5720    { sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     5721#line 5722 "fortran.tab.c" 
    60445722    break; 
    60455723 
    60465724  case 578: 
    6047 /* Line 1807 of yacc.c  */ 
    60485725#line 2121 "fortran.y" 
    6049     { sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     5726    { sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     5727#line 5728 "fortran.tab.c" 
    60505728    break; 
    60515729 
    60525730  case 579: 
    6053 /* Line 1807 of yacc.c  */ 
    60545731#line 2122 "fortran.y" 
    6055     { sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     5732    { sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     5733#line 5734 "fortran.tab.c" 
    60565734    break; 
    60575735 
    60585736  case 580: 
    6059 /* Line 1807 of yacc.c  */ 
    60605737#line 2123 "fortran.y" 
    6061     { sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     5738    { sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     5739#line 5740 "fortran.tab.c" 
    60625740    break; 
    60635741 
    60645742  case 581: 
    6065 /* Line 1807 of yacc.c  */ 
    60665743#line 2124 "fortran.y" 
    6067     { sprintf((yyval.na),"%s,%s",(yyvsp[(1) - (3)].na),(yyvsp[(3) - (3)].na)); } 
     5744    { sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     5745#line 5746 "fortran.tab.c" 
    60685746    break; 
    60695747 
    60705748  case 582: 
    6071 /* Line 1807 of yacc.c  */ 
    6072 #line 2127 "fortran.y" 
    6073     { sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na)); } 
     5749#line 2125 "fortran.y" 
     5750    { sprintf((yyval.na),"%s,%s",(yyvsp[-2].na),(yyvsp[0].na)); } 
     5751#line 5752 "fortran.tab.c" 
    60745752    break; 
    60755753 
    60765754  case 583: 
    6077 /* Line 1807 of yacc.c  */ 
    60785755#line 2128 "fortran.y" 
    6079     { sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na)); } 
     5756    { sprintf((yyval.na),"(%s,%s)",(yyvsp[-3].na),(yyvsp[-1].na)); } 
     5757#line 5758 "fortran.tab.c" 
    60805758    break; 
    60815759 
    60825760  case 584: 
    6083 /* Line 1807 of yacc.c  */ 
    60845761#line 2129 "fortran.y" 
    6085     { sprintf((yyval.na),"(%s,%s)",(yyvsp[(2) - (5)].na),(yyvsp[(4) - (5)].na)); } 
     5762    { sprintf((yyval.na),"(%s,%s)",(yyvsp[-3].na),(yyvsp[-1].na)); } 
     5763#line 5764 "fortran.tab.c" 
    60865764    break; 
    60875765 
    60885766  case 585: 
    6089 /* Line 1807 of yacc.c  */ 
    6090 #line 2131 "fortran.y" 
    6091     { sprintf((yyval.na),"%s=%s,%s)",(yyvsp[(1) - (5)].na),(yyvsp[(3) - (5)].na),(yyvsp[(5) - (5)].na));} 
     5767#line 2130 "fortran.y" 
     5768    { sprintf((yyval.na),"(%s,%s)",(yyvsp[-3].na),(yyvsp[-1].na)); } 
     5769#line 5770 "fortran.tab.c" 
    60925770    break; 
    60935771 
    60945772  case 586: 
    6095 /* Line 1807 of yacc.c  */ 
    60965773#line 2132 "fortran.y" 
    6097     { sprintf((yyval.na),"%s=%s,%s,%s)",(yyvsp[(1) - (7)].na),(yyvsp[(3) - (7)].na),(yyvsp[(5) - (7)].na),(yyvsp[(7) - (7)].na));} 
    6098     break; 
    6099  
    6100   case 591: 
    6101 /* Line 1807 of yacc.c  */ 
    6102 #line 2142 "fortran.y" 
    6103     { Add_Allocate_Var_1((yyvsp[(1) - (1)].na),curmodulename); } 
    6104     break; 
    6105  
    6106  
    6107 /* Line 1807 of yacc.c  */ 
    6108 #line 6110 "fortran.tab.c" 
     5774    { sprintf((yyval.na),"%s=%s,%s)",(yyvsp[-4].na),(yyvsp[-2].na),(yyvsp[0].na));} 
     5775#line 5776 "fortran.tab.c" 
     5776    break; 
     5777 
     5778  case 587: 
     5779#line 2133 "fortran.y" 
     5780    { sprintf((yyval.na),"%s=%s,%s,%s)",(yyvsp[-6].na),(yyvsp[-4].na),(yyvsp[-2].na),(yyvsp[0].na));} 
     5781#line 5782 "fortran.tab.c" 
     5782    break; 
     5783 
     5784  case 592: 
     5785#line 2143 "fortran.y" 
     5786    { Add_Allocate_Var_1((yyvsp[0].na),curmodulename); } 
     5787#line 5788 "fortran.tab.c" 
     5788    break; 
     5789 
     5790 
     5791#line 5792 "fortran.tab.c" 
     5792 
    61095793      default: break; 
    61105794    } 
     
    61285812  *++yyvsp = yyval; 
    61295813 
    6130   /* Now `shift' the result of the reduction.  Determine what state 
     5814  /* Now 'shift' the result of the reduction.  Determine what state 
    61315815     that goes to, based on the state we popped back to and the rule 
    61325816     number reduced by.  */ 
    6133  
    6134   yyn = yyr1[yyn]; 
    6135  
    6136   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; 
    6137   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) 
    6138     yystate = yytable[yystate]; 
    6139   else 
    6140     yystate = yydefgoto[yyn - YYNTOKENS]; 
     5817  { 
     5818    const int yylhs = yyr1[yyn] - YYNTOKENS; 
     5819    const int yyi = yypgoto[yylhs] + *yyssp; 
     5820    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp 
     5821               ? yytable[yyi] 
     5822               : yydefgoto[yylhs]); 
     5823  } 
    61415824 
    61425825  goto yynewstate; 
    61435826 
    61445827 
    6145 /*------------------------------------. 
    6146 | yyerrlab -- here on detecting error | 
    6147 `------------------------------------*/ 
     5828/*--------------------------------------. 
     5829| yyerrlab -- here on detecting error. | 
     5830`--------------------------------------*/ 
    61485831yyerrlab: 
    61495832  /* Make sure we have latest lookahead translation.  See comments at 
     
    61965879    { 
    61975880      /* If just tried and failed to reuse lookahead token after an 
    6198     error, discard it.  */ 
     5881        error, discard it.  */ 
    61995882 
    62005883      if (yychar <= YYEOF) 
    6201    { 
    6202      /* Return failure if at end of input.  */ 
    6203      if (yychar == YYEOF) 
    6204        YYABORT; 
    6205    } 
     5884        { 
     5885          /* Return failure if at end of input.  */ 
     5886          if (yychar == YYEOF) 
     5887            YYABORT; 
     5888        } 
    62065889      else 
    6207    { 
    6208      yydestruct ("Error: discarding", 
    6209             yytoken, &yylval); 
    6210      yychar = YYEMPTY; 
    6211    } 
     5890        { 
     5891          yydestruct ("Error: discarding", 
     5892                      yytoken, &yylval); 
     5893          yychar = YYEMPTY; 
     5894        } 
    62125895    } 
    62135896 
     
    62215904`---------------------------------------------------*/ 
    62225905yyerrorlab: 
    6223  
    6224   /* Pacify compilers like GCC when the user code never invokes 
    6225      YYERROR and the label yyerrorlab therefore never appears in user 
    6226      code.  */ 
    6227   if (/*CONSTCOND*/ 0) 
    6228      goto yyerrorlab; 
    6229  
    6230   /* Do not reclaim the symbols of the rule which action triggered 
     5906  /* Pacify compilers when the user code never invokes YYERROR and the 
     5907     label yyerrorlab therefore never appears in user code.  */ 
     5908  if (0) 
     5909    YYERROR; 
     5910 
     5911  /* Do not reclaim the symbols of the rule whose action triggered 
    62315912     this YYERROR.  */ 
    62325913  YYPOPSTACK (yylen); 
     
    62415922`-------------------------------------------------------------*/ 
    62425923yyerrlab1: 
    6243   yyerrstatus = 3;   /* Each real token shifted decrements this.  */ 
     5924  yyerrstatus = 3;      /* Each real token shifted decrements this.  */ 
    62445925 
    62455926  for (;;) 
     
    62475928      yyn = yypact[yystate]; 
    62485929      if (!yypact_value_is_default (yyn)) 
    6249    { 
    6250      yyn += YYTERROR; 
    6251      if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) 
    6252        { 
    6253          yyn = yytable[yyn]; 
    6254          if (0 < yyn) 
    6255       break; 
    6256        } 
    6257    } 
     5930        { 
     5931          yyn += YYTERROR; 
     5932          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) 
     5933            { 
     5934              yyn = yytable[yyn]; 
     5935              if (0 < yyn) 
     5936                break; 
     5937            } 
     5938        } 
    62585939 
    62595940      /* Pop the current state because it cannot handle the error token.  */ 
    62605941      if (yyssp == yyss) 
    6261    YYABORT; 
     5942        YYABORT; 
    62625943 
    62635944 
    62645945      yydestruct ("Error: popping", 
    6265         yystos[yystate], yyvsp); 
     5946                  yystos[yystate], yyvsp); 
    62665947      YYPOPSTACK (1); 
    62675948      yystate = *yyssp; 
     
    62885969  goto yyreturn; 
    62895970 
     5971 
    62905972/*-----------------------------------. 
    62915973| yyabortlab -- YYABORT comes here.  | 
     
    62945976  yyresult = 1; 
    62955977  goto yyreturn; 
     5978 
    62965979 
    62975980#if !defined yyoverflow || YYERROR_VERBOSE 
     
    63055988#endif 
    63065989 
     5990 
     5991/*-----------------------------------------------------. 
     5992| yyreturn -- parsing is finished, return the result.  | 
     5993`-----------------------------------------------------*/ 
    63075994yyreturn: 
    63085995  if (yychar != YYEMPTY) 
     
    63146001                  yytoken, &yylval); 
    63156002    } 
    6316   /* Do not reclaim the symbols of the rule which action triggered 
     6003  /* Do not reclaim the symbols of the rule whose action triggered 
    63176004     this YYABORT or YYACCEPT.  */ 
    63186005  YYPOPSTACK (yylen); 
     
    63216008    { 
    63226009      yydestruct ("Cleanup: popping", 
    6323         yystos[*yyssp], yyvsp); 
     6010                  yystos[*yyssp], yyvsp); 
    63246011      YYPOPSTACK (1); 
    63256012    } 
     
    63326019    YYSTACK_FREE (yymsg); 
    63336020#endif 
    6334   /* Make sure YYID is used.  */ 
    6335   return YYID (yyresult); 
     6021  return yyresult; 
    63366022} 
    6337  
    6338  
    6339 /* Line 2055 of yacc.c  */ 
    6340 #line 2156 "fortran.y" 
     6023#line 2157 "fortran.y" 
    63416024 
    63426025 
     
    64776160typedef int32_t flex_int32_t; 
    64786161typedef uint32_t flex_uint32_t; 
    6479 typedef uint64_t flex_uint64_t; 
    64806162#else 
    64816163typedef signed char flex_int8_t; 
     
    65846266#endif 
    65856267 
    6586 #ifndef YY_TYPEDEF_YY_SIZE_T 
    6587 #define YY_TYPEDEF_YY_SIZE_T 
    6588 typedef size_t yy_size_t; 
    6589 #endif 
    6590  
    6591 extern yy_size_t fortran_leng; 
     6268extern int fortran_leng; 
    65926269 
    65936270extern FILE *fortran_in, *fortran_out; 
     
    66156292#define unput(c) yyunput( c, (yytext_ptr)  ) 
    66166293 
     6294#ifndef YY_TYPEDEF_YY_SIZE_T 
     6295#define YY_TYPEDEF_YY_SIZE_T 
     6296typedef size_t yy_size_t; 
     6297#endif 
     6298 
    66176299#ifndef YY_STRUCT_YY_BUFFER_STATE 
    66186300#define YY_STRUCT_YY_BUFFER_STATE 
     
    66326314    * characters. 
    66336315    */ 
    6634    yy_size_t yy_n_chars; 
     6316   int yy_n_chars; 
    66356317 
    66366318   /* Whether we "own" the buffer - i.e., we know we created it, 
     
    67026384/* yy_hold_char holds the character lost when fortran_text is formed. */ 
    67036385static char yy_hold_char; 
    6704 static yy_size_t yy_n_chars;     /* number of characters read into yy_ch_buf */ 
    6705 yy_size_t fortran_leng; 
     6386static int yy_n_chars;     /* number of characters read into yy_ch_buf */ 
     6387int fortran_leng; 
    67066388 
    67076389/* Points to current character in buffer. */ 
     
    67316413YY_BUFFER_STATE fortran__scan_buffer (char *base,yy_size_t size  ); 
    67326414YY_BUFFER_STATE fortran__scan_string (yyconst char *yy_str  ); 
    6733 YY_BUFFER_STATE fortran__scan_bytes (yyconst char *bytes,yy_size_t len  ); 
     6415YY_BUFFER_STATE fortran__scan_bytes (yyconst char *bytes,int len  ); 
    67346416 
    67356417void *fortran_alloc (yy_size_t  ); 
     
    67896471#define YY_DO_BEFORE_ACTION \ 
    67906472   (yytext_ptr) = yy_bp; \ 
    6791    fortran_leng = (yy_size_t) (yy_cp - yy_bp); \ 
     6473   fortran_leng = (size_t) (yy_cp - yy_bp); \ 
    67926474   (yy_hold_char) = *yy_cp; \ 
    67936475   *yy_cp = '\0'; \ 
     
    82337915void out_of_donottreat(void); 
    82347916 
    8235 #line 1826 "fortran.yy.c" 
     7917#line 1825 "fortran.yy.c" 
    82367918 
    82377919#define INITIAL 0 
     
    82777959void fortran_set_out  (FILE * out_str  ); 
    82787960 
    8279 yy_size_t fortran_get_leng (void ); 
     7961int fortran_get_leng (void ); 
    82807962 
    82817963char *fortran_get_text (void ); 
     
    83278009 * we now use fwrite(). 
    83288010 */ 
    8329 #define ECHO fwrite( fortran_text, fortran_leng, 1, fortran_out ) 
     8011#define ECHO do { if (fwrite( fortran_text, fortran_leng, 1, fortran_out )) {} } while (0) 
    83308012#endif 
    83318013 
     
    83388020      { \ 
    83398021      int c = '*'; \ 
    8340       yy_size_t n; \ 
     8022      unsigned n; \ 
    83418023      for ( n = 0; n < max_size && \ 
    83428024              (c = getc( fortran_in )) != EOF && c != '\n'; ++n ) \ 
     
    84288110  if (infree)  BEGIN(fortran90style) ; 
    84298111 
    8430 #line 2021 "fortran.yy.c" 
     8112#line 2020 "fortran.yy.c" 
    84318113 
    84328114   if ( !(yy_init) ) 
     
    94229104ECHO; 
    94239105   YY_BREAK 
    9424 #line 3015 "fortran.yy.c" 
     9106#line 3014 "fortran.yy.c" 
    94259107case YY_STATE_EOF(INITIAL): 
    94269108case YY_STATE_EOF(parameter): 
     
    96139295   else 
    96149296      { 
    9615          yy_size_t num_to_read = 
     9297         int num_to_read = 
    96169298         YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 
    96179299 
     
    96279309         if ( b->yy_is_our_buffer ) 
    96289310            { 
    9629             yy_size_t new_size = b->yy_buf_size * 2; 
     9311            int new_size = b->yy_buf_size * 2; 
    96309312 
    96319313            if ( new_size <= 0 ) 
     
    96589340      /* Read in more data. */ 
    96599341      YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 
    9660          (yy_n_chars), num_to_read ); 
     9342         (yy_n_chars), (size_t) num_to_read ); 
    96619343 
    96629344      YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
     
    97699451      { /* need to shift things up to make room */ 
    97709452      /* +2 for EOB chars. */ 
    9771       register yy_size_t number_to_move = (yy_n_chars) + 2; 
     9453      register int number_to_move = (yy_n_chars) + 2; 
    97729454      register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ 
    97739455               YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; 
     
    98189500      else 
    98199501         { /* need more input */ 
    9820          yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); 
     9502         int offset = (yy_c_buf_p) - (yytext_ptr); 
    98219503         ++(yy_c_buf_p); 
    98229504 
     
    98429524               { 
    98439525               if ( fortran_wrap( ) ) 
    9844                   return 0; 
     9526                  return EOF; 
    98459527 
    98469528               if ( ! (yy_did_buffer_switch_on_eof) ) 
     
    100969778static void fortran_ensure_buffer_stack (void) 
    100979779{ 
    10098    yy_size_t num_to_alloc; 
     9780   int num_to_alloc; 
    100999781     
    101009782   if (!(yy_buffer_stack)) { 
     
    101939875 * @return the newly allocated buffer state object. 
    101949876 */ 
    10195 YY_BUFFER_STATE fortran__scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len ) 
     9877YY_BUFFER_STATE fortran__scan_bytes  (yyconst char * yybytes, int  _yybytes_len ) 
    101969878{ 
    101979879   YY_BUFFER_STATE b; 
    101989880   char *buf; 
    10199    yy_size_t n, i; 
     9881   yy_size_t n; 
     9882   int i; 
    102009883     
    102019884   /* Get memory for full buffer, including space for trailing EOB's. */ 
     
    102799962 *  
    102809963 */ 
    10281 yy_size_t fortran_get_leng  (void) 
     9964int fortran_get_leng  (void) 
    102829965{ 
    102839966        return fortran_leng; 
  • vendors/AGRIF/dev/LIB/main.c

    r5656 r12420  
    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 
     1/* A Bison parser, made by GNU Bison 3.4.2.  */ 
     2 
     3/* Bison implementation for Yacc-like parsers in C 
     4 
     5   Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation, 
     6   Inc. 
     7 
     8   This program is free software: you can redistribute it and/or modify 
    99   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. 
     10   the Free Software Foundation, either version 3 of the License, or 
     11   (at your option) any later version. 
    1212 
    1313   This program is distributed in the hope that it will be useful, 
     
    1717 
    1818   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.  */ 
     19   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ 
    2220 
    2321/* As a special exception, you may create a larger work that contains 
     
    4442   USER NAME SPACE" below.  */ 
    4543 
     44/* Undocumented macros, especially those whose name start with YY_, 
     45   are private implementation details.  Do not rely on them.  */ 
     46 
    4647/* Identify Bison output.  */ 
    4748#define YYBISON 1 
    4849 
    4950/* Bison version.  */ 
    50 #define YYBISON_VERSION "2.3" 
     51#define YYBISON_VERSION "3.4.2" 
    5152 
    5253/* Skeleton name.  */ 
     
    5657#define YYPURE 0 
    5758 
    58 /* Using locations.  */ 
    59 #define YYLSP_NEEDED 0 
     59/* Push parsers.  */ 
     60#define YYPUSH 0 
     61 
     62/* Pull parsers.  */ 
     63#define YYPULL 1 
     64 
    6065 
    6166/* Substitute the variable and function names.  */ 
    62 #define yyparse convert_parse 
    63 #define yylex   convert_lex 
    64 #define yyerror convert_error 
    65 #define yylval  convert_lval 
    66 #define yychar  convert_char 
    67 #define yydebug convert_debug 
    68 #define yynerrs convert_nerrs 
    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_SEP = 258, 
    78      TOK_KIND = 259, 
    79      TOK_EQUAL = 260, 
    80      TOK_USE = 261, 
    81      TOK_MODULEMAIN = 262, 
    82      TOK_NOTGRIDDEP = 263, 
    83      TOK_USEITEM = 264, 
    84      TOK_NAME = 265, 
    85      TOK_CSTINT = 266, 
    86      TOK_PROBTYPE = 267 
    87    }; 
    88 #endif 
    89 /* Tokens.  */ 
    90 #define TOK_SEP 258 
    91 #define TOK_KIND 259 
    92 #define TOK_EQUAL 260 
    93 #define TOK_USE 261 
    94 #define TOK_MODULEMAIN 262 
    95 #define TOK_NOTGRIDDEP 263 
    96 #define TOK_USEITEM 264 
    97 #define TOK_NAME 265 
    98 #define TOK_CSTINT 266 
    99 #define TOK_PROBTYPE 267 
    100  
    101  
    102  
    103  
    104 /* Copy the first part of user declarations.  */ 
     67#define yyparse         convert_parse 
     68#define yylex           convert_lex 
     69#define yyerror         convert_error 
     70#define yydebug         convert_debug 
     71#define yynerrs         convert_nerrs 
     72 
     73#define yylval          convert_lval 
     74#define yychar          convert_char 
     75 
     76/* First part of user prologue.  */ 
    10577#line 35 "convert.y" 
    10678 
     
    12092 
    12193 
    122  
    123 /* Enabling traces.  */ 
    124 #ifndef YYDEBUG 
    125 # define YYDEBUG 1 
    126 #endif 
     94#line 95 "convert.tab.c" 
     95 
     96# ifndef YY_NULLPTR 
     97#  if defined __cplusplus 
     98#   if 201103L <= __cplusplus 
     99#    define YY_NULLPTR nullptr 
     100#   else 
     101#    define YY_NULLPTR 0 
     102#   endif 
     103#  else 
     104#   define YY_NULLPTR ((void*)0) 
     105#  endif 
     106# endif 
    127107 
    128108/* Enabling verbose error messages.  */ 
     
    134114#endif 
    135115 
    136 /* Enabling the token table.  */ 
    137 #ifndef YYTOKEN_TABLE 
    138 # define YYTOKEN_TABLE 0 
    139 #endif 
    140  
     116 
     117/* Debug traces.  */ 
     118#ifndef YYDEBUG 
     119# define YYDEBUG 1 
     120#endif 
     121#if YYDEBUG 
     122extern int convert_debug; 
     123#endif 
     124 
     125/* Token type.  */ 
     126#ifndef YYTOKENTYPE 
     127# define YYTOKENTYPE 
     128  enum yytokentype 
     129  { 
     130    TOK_SEP = 258, 
     131    TOK_KIND = 259, 
     132    TOK_EQUAL = 260, 
     133    TOK_USE = 261, 
     134    TOK_MODULEMAIN = 262, 
     135    TOK_NOTGRIDDEP = 263, 
     136    TOK_USEITEM = 264, 
     137    TOK_NAME = 265, 
     138    TOK_CSTINT = 266, 
     139    TOK_PROBTYPE = 267 
     140  }; 
     141#endif 
     142 
     143/* Value type.  */ 
    141144#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 
    142 typedef union YYSTYPE 
     145union YYSTYPE 
     146{ 
    143147#line 52 "convert.y" 
    144 { 
     148 
    145149    char na[LONG_M]; 
    146 } 
    147 /* Line 193 of yacc.c.  */ 
    148 #line 149 "convert.tab.c" 
    149    YYSTYPE; 
    150 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ 
     150 
     151#line 152 "convert.tab.c" 
     152 
     153}; 
     154typedef union YYSTYPE YYSTYPE; 
     155# define YYSTYPE_IS_TRIVIAL 1 
    151156# define YYSTYPE_IS_DECLARED 1 
    152 # define YYSTYPE_IS_TRIVIAL 1 
    153 #endif 
    154  
    155  
    156  
    157 /* Copy the second part of user declarations.  */ 
    158  
    159  
    160 /* Line 216 of yacc.c.  */ 
    161 #line 162 "convert.tab.c" 
     157#endif 
     158 
     159 
     160extern YYSTYPE convert_lval; 
     161 
     162int convert_parse (void); 
     163 
     164 
     165 
     166 
    162167 
    163168#ifdef short 
     
    173178#ifdef YYTYPE_INT8 
    174179typedef YYTYPE_INT8 yytype_int8; 
    175 #elif (defined __STDC__ || defined __C99__FUNC__ \ 
    176      || defined __cplusplus || defined _MSC_VER) 
     180#else 
    177181typedef signed char yytype_int8; 
    178 #else 
    179 typedef short int yytype_int8; 
    180182#endif 
    181183 
     
    183185typedef YYTYPE_UINT16 yytype_uint16; 
    184186#else 
    185 typedef unsigned short int yytype_uint16; 
     187typedef unsigned short yytype_uint16; 
    186188#endif 
    187189 
     
    189191typedef YYTYPE_INT16 yytype_int16; 
    190192#else 
    191 typedef short int yytype_int16; 
     193typedef short yytype_int16; 
    192194#endif 
    193195 
     
    197199# elif defined size_t 
    198200#  define YYSIZE_T size_t 
    199 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ 
    200      || defined __cplusplus || defined _MSC_VER) 
     201# elif ! defined YYSIZE_T 
    201202#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */ 
    202203#  define YYSIZE_T size_t 
    203204# else 
    204 #  define YYSIZE_T unsigned int 
     205#  define YYSIZE_T unsigned 
    205206# endif 
    206207#endif 
     
    212213#  if ENABLE_NLS 
    213214#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */ 
    214 #   define YY_(msgid) dgettext ("bison-runtime", msgid) 
     215#   define YY_(Msgid) dgettext ("bison-runtime", Msgid) 
    215216#  endif 
    216217# endif 
    217218# ifndef YY_ 
    218 #  define YY_(msgid) msgid 
     219#  define YY_(Msgid) Msgid 
    219220# endif 
     221#endif 
     222 
     223#ifndef YY_ATTRIBUTE 
     224# if (defined __GNUC__                                               \ 
     225      && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \ 
     226     || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 
     227#  define YY_ATTRIBUTE(Spec) __attribute__(Spec) 
     228# else 
     229#  define YY_ATTRIBUTE(Spec) /* empty */ 
     230# endif 
     231#endif 
     232 
     233#ifndef YY_ATTRIBUTE_PURE 
     234# define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__)) 
     235#endif 
     236 
     237#ifndef YY_ATTRIBUTE_UNUSED 
     238# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 
    220239#endif 
    221240 
    222241/* Suppress unused-variable warnings by "using" E.  */ 
    223242#if ! defined lint || defined __GNUC__ 
    224 # define YYUSE(e) ((void) (e)) 
     243# define YYUSE(E) ((void) (E)) 
    225244#else 
    226 # define YYUSE(e) /* empty */ 
    227 #endif 
    228  
    229 /* Identity function, used to suppress warnings about constant conditions.  */ 
    230 #ifndef lint 
    231 # define YYID(n) (n) 
     245# define YYUSE(E) /* empty */ 
     246#endif 
     247 
     248#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 
     249/* Suppress an incorrect diagnostic about yylval being uninitialized.  */ 
     250# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 
     251    _Pragma ("GCC diagnostic push") \ 
     252    _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 
     253    _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 
     254# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 
     255    _Pragma ("GCC diagnostic pop") 
    232256#else 
    233 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    234      || defined __cplusplus || defined _MSC_VER) 
    235 static int 
    236 YYID (int i) 
    237 #else 
    238 static int 
    239 YYID (i) 
    240     int i; 
    241 #endif 
    242 { 
    243   return i; 
    244 } 
    245 #endif 
     257# define YY_INITIAL_VALUE(Value) Value 
     258#endif 
     259#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     260# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     261# define YY_IGNORE_MAYBE_UNINITIALIZED_END 
     262#endif 
     263#ifndef YY_INITIAL_VALUE 
     264# define YY_INITIAL_VALUE(Value) /* Nothing. */ 
     265#endif 
     266 
     267 
     268#define YY_ASSERT(E) ((void) (0 && (E))) 
    246269 
    247270#if ! defined yyoverflow || YYERROR_VERBOSE 
     
    262285#   else 
    263286#    define YYSTACK_ALLOC alloca 
    264 #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 
    265      || defined __cplusplus || defined _MSC_VER) 
     287#    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 
    266288#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 
    267 #     ifndef _STDLIB_H 
    268 #      define _STDLIB_H 1 
     289      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */ 
     290#     ifndef EXIT_SUCCESS 
     291#      define EXIT_SUCCESS 0 
    269292#     endif 
    270293#    endif 
     
    274297 
    275298# ifdef YYSTACK_ALLOC 
    276    /* Pacify GCC's `empty if-body' warning.  */ 
    277 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) 
     299   /* Pacify GCC's 'empty if-body' warning.  */ 
     300#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) 
    278301#  ifndef YYSTACK_ALLOC_MAXIMUM 
    279302    /* The OS might guarantee only one guard page at the bottom of the stack, 
     
    289312#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 
    290313#  endif 
    291 #  if (defined __cplusplus && ! defined _STDLIB_H \ 
     314#  if (defined __cplusplus && ! defined EXIT_SUCCESS \ 
    292315       && ! ((defined YYMALLOC || defined malloc) \ 
    293         && (defined YYFREE || defined free))) 
     316             && (defined YYFREE || defined free))) 
    294317#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 
    295 #   ifndef _STDLIB_H 
    296 #    define _STDLIB_H 1 
     318#   ifndef EXIT_SUCCESS 
     319#    define EXIT_SUCCESS 0 
    297320#   endif 
    298321#  endif 
    299322#  ifndef YYMALLOC 
    300323#   define YYMALLOC malloc 
    301 #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 
    302      || defined __cplusplus || defined _MSC_VER) 
     324#   if ! defined malloc && ! defined EXIT_SUCCESS 
    303325void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ 
    304326#   endif 
     
    306328#  ifndef YYFREE 
    307329#   define YYFREE free 
    308 #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 
    309      || defined __cplusplus || defined _MSC_VER) 
     330#   if ! defined free && ! defined EXIT_SUCCESS 
    310331void free (void *); /* INFRINGES ON USER NAME SPACE */ 
    311332#   endif 
     
    317338#if (! defined yyoverflow \ 
    318339     && (! defined __cplusplus \ 
    319     || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 
     340        || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 
    320341 
    321342/* A type that is properly aligned for any stack member.  */ 
    322343union yyalloc 
    323344{ 
    324   yytype_int16 yyss; 
    325   YYSTYPE yyvs; 
    326   }; 
     345  yytype_int16 yyss_alloc; 
     346  YYSTYPE yyvs_alloc; 
     347}; 
    327348 
    328349/* The size of the maximum gap between one aligned stack and the next.  */ 
     
    335356      + YYSTACK_GAP_MAXIMUM) 
    336357 
    337 /* Copy COUNT objects from FROM to TO.  The source and destination do 
    338    not overlap.  */ 
    339 # ifndef YYCOPY 
    340 #  if defined __GNUC__ && 1 < __GNUC__ 
    341 #   define YYCOPY(To, From, Count) \ 
    342       __builtin_memcpy (To, From, (Count) * sizeof (*(From))) 
    343 #  else 
    344 #   define YYCOPY(To, From, Count)     \ 
    345       do             \ 
    346    {              \ 
    347      YYSIZE_T yyi;            \ 
    348      for (yyi = 0; yyi < (Count); yyi++)  \ 
    349        (To)[yyi] = (From)[yyi];     \ 
    350    }              \ 
    351       while (YYID (0)) 
    352 #  endif 
    353 # endif 
     358# define YYCOPY_NEEDED 1 
    354359 
    355360/* Relocate STACK from its old location to the new one.  The 
     
    358363   stack.  Advance YYPTR to a properly aligned location for the next 
    359364   stack.  */ 
    360 # define YYSTACK_RELOCATE(Stack)             \ 
    361     do                           \ 
    362       {                          \ 
    363    YYSIZE_T yynewbytes;                \ 
    364    YYCOPY (&yyptr->Stack, Stack, yysize);          \ 
    365    Stack = &yyptr->Stack;                 \ 
    366    yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 
    367    yyptr += yynewbytes / sizeof (*yyptr);          \ 
    368       }                          \ 
    369     while (YYID (0)) 
    370  
    371 #endif 
     365# define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \ 
     366    do                                                                  \ 
     367      {                                                                 \ 
     368        YYSIZE_T yynewbytes;                                            \ 
     369        YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \ 
     370        Stack = &yyptr->Stack_alloc;                                    \ 
     371        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 
     372        yyptr += yynewbytes / sizeof (*yyptr);                          \ 
     373      }                                                                 \ 
     374    while (0) 
     375 
     376#endif 
     377 
     378#if defined YYCOPY_NEEDED && YYCOPY_NEEDED 
     379/* Copy COUNT objects from SRC to DST.  The source and destination do 
     380   not overlap.  */ 
     381# ifndef YYCOPY 
     382#  if defined __GNUC__ && 1 < __GNUC__ 
     383#   define YYCOPY(Dst, Src, Count) \ 
     384      __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) 
     385#  else 
     386#   define YYCOPY(Dst, Src, Count)              \ 
     387      do                                        \ 
     388        {                                       \ 
     389          YYSIZE_T yyi;                         \ 
     390          for (yyi = 0; yyi < (Count); yyi++)   \ 
     391            (Dst)[yyi] = (Src)[yyi];            \ 
     392        }                                       \ 
     393      while (0) 
     394#  endif 
     395# endif 
     396#endif /* !YYCOPY_NEEDED */ 
    372397 
    373398/* YYFINAL -- State number of the termination state.  */ 
     
    382407/* YYNRULES -- Number of rules.  */ 
    383408#define YYNRULES  11 
    384 /* YYNRULES -- Number of states.  */ 
     409/* YYNSTATES -- Number of states.  */ 
    385410#define YYNSTATES  29 
    386411 
    387 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */ 
    388412#define YYUNDEFTOK  2 
    389413#define YYMAXUTOK   267 
    390414 
    391 #define YYTRANSLATE(YYX)                  \ 
    392   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 
    393  
    394 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */ 
     415/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM 
     416   as returned by yylex, with out-of-bounds checking.  */ 
     417#define YYTRANSLATE(YYX)                                                \ 
     418  ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 
     419 
     420/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM 
     421   as returned by yylex.  */ 
    395422static const yytype_uint8 yytranslate[] = 
    396423{ 
     
    425452 
    426453#if YYDEBUG 
    427 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in 
    428    YYRHS.  */ 
    429 static const yytype_uint8 yyprhs[] = 
    430 { 
    431        0,     0,     3,     4,     7,     9,    13,    19,    27,    31, 
    432       37,    42 
    433 }; 
    434  
    435 /* YYRHS -- A `-1'-separated list of the rules' RHS.  */ 
    436 static const yytype_int8 yyrhs[] = 
    437 { 
    438       17,     0,    -1,    -1,    17,    18,    -1,    15,    -1,    12, 
    439       10,    14,    -1,    12,    10,    13,    10,    14,    -1,    12, 
    440       10,    13,    10,    13,    10,    14,    -1,     7,    10,    14, 
    441       -1,     4,    10,     5,    11,    14,    -1,     8,     3,    10, 
    442       14,    -1,     6,     9,    14,    -1 
    443 }; 
    444  
    445 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */ 
     454  /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */ 
    446455static const yytype_uint8 yyrline[] = 
    447456{ 
     
    451460#endif 
    452461 
    453 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE 
     462#if YYDEBUG || YYERROR_VERBOSE || 0 
    454463/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. 
    455464   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */ 
     
    459468  "TOK_USE", "TOK_MODULEMAIN", "TOK_NOTGRIDDEP", "TOK_USEITEM", "TOK_NAME", 
    460469  "TOK_CSTINT", "TOK_PROBTYPE", "','", "';'", "'\\n'", "$accept", "input", 
    461   "line", 0 
     470  "line", YY_NULLPTR 
    462471}; 
    463472#endif 
    464473 
    465474# ifdef YYPRINT 
    466 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to 
    467    token YYLEX-NUM.  */ 
     475/* YYTOKNUM[NUM] -- (External) token number corresponding to the 
     476   (internal) symbol number NUM (which must be that of a token).  */ 
    468477static const yytype_uint16 yytoknum[] = 
    469478{ 
     
    473482# endif 
    474483 
    475 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ 
    476 static const yytype_uint8 yyr1[] = 
    477 { 
    478        0,    16,    17,    17,    18,    18,    18,    18,    18,    18, 
    479       18,    18 
     484#define YYPACT_NINF -13 
     485 
     486#define yypact_value_is_default(Yystate) \ 
     487  (!!((Yystate) == (-13))) 
     488 
     489#define YYTABLE_NINF -1 
     490 
     491#define yytable_value_is_error(Yytable_value) \ 
     492  0 
     493 
     494  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 
     495     STATE-NUM.  */ 
     496static const yytype_int8 yypact[] = 
     497{ 
     498     -13,     0,   -13,    -7,     2,    -5,    10,     4,   -13,   -13, 
     499      11,     3,     5,     8,   -12,     9,   -13,   -13,     7,    12, 
     500     -13,    13,   -13,    -4,   -13,    14,   -13,    15,   -13 
    480501}; 
    481502 
    482 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */ 
    483 static const yytype_uint8 yyr2[] = 
    484 { 
    485        0,     2,     0,     2,     1,     3,     5,     7,     3,     5, 
    486        4,     3 
    487 }; 
    488  
    489 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state 
    490    STATE-NUM when YYTABLE doesn't specify something else to do.  Zero 
    491    means the default is an error.  */ 
     503  /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. 
     504     Performed when YYTABLE does not specify something else to do.  Zero 
     505     means the default is an error.  */ 
    492506static const yytype_uint8 yydefact[] = 
    493507{ 
     
    497511}; 
    498512 
    499 /* YYDEFGOTO[NTERM-NUM].  */ 
     513  /* YYPGOTO[NTERM-NUM].  */ 
     514static const yytype_int8 yypgoto[] = 
     515{ 
     516     -13,   -13,   -13 
     517}; 
     518 
     519  /* YYDEFGOTO[NTERM-NUM].  */ 
    500520static const yytype_int8 yydefgoto[] = 
    501521{ 
     
    503523}; 
    504524 
    505 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 
    506    STATE-NUM.  */ 
    507 #define YYPACT_NINF -13 
    508 static const yytype_int8 yypact[] = 
    509 { 
    510      -13,     0,   -13,    -7,     2,    -5,    10,     4,   -13,   -13, 
    511       11,     3,     5,     8,   -12,     9,   -13,   -13,     7,    12, 
    512      -13,    13,   -13,    -4,   -13,    14,   -13,    15,   -13 
    513 }; 
    514  
    515 /* YYPGOTO[NTERM-NUM].  */ 
    516 static const yytype_int8 yypgoto[] = 
    517 { 
    518      -13,   -13,   -13 
    519 }; 
    520  
    521 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If 
    522    positive, shift that token.  If negative, reduce the rule which 
    523    number is the opposite.  If zero, do what YYDEFACT says. 
    524    If YYTABLE_NINF, syntax error.  */ 
    525 #define YYTABLE_NINF -1 
     525  /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If 
     526     positive, shift that token.  If negative, reduce the rule whose 
     527     number is the opposite.  If YYTABLE_NINF, syntax error.  */ 
    526528static const yytype_uint8 yytable[] = 
    527529{ 
     
    538540}; 
    539541 
    540 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 
    541    symbol of state STATE-NUM.  */ 
     542  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 
     543     symbol of state STATE-NUM.  */ 
    542544static const yytype_uint8 yystos[] = 
    543545{ 
     
    547549}; 
    548550 
    549 #define yyerrok      (yyerrstatus = 0) 
    550 #define yyclearin (yychar = YYEMPTY) 
    551 #define YYEMPTY      (-2) 
    552 #define YYEOF     0 
    553  
    554 #define YYACCEPT  goto yyacceptlab 
    555 #define YYABORT      goto yyabortlab 
    556 #define YYERROR      goto yyerrorlab 
    557  
    558  
    559 /* Like YYERROR except do call yyerror.  This remains here temporarily 
    560    to ease the transition to the new meaning of YYERROR, for GCC. 
    561    Once GCC version 2 has supplanted version 1, this can go.  */ 
    562  
    563 #define YYFAIL    goto yyerrlab 
     551  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ 
     552static const yytype_uint8 yyr1[] = 
     553{ 
     554       0,    16,    17,    17,    18,    18,    18,    18,    18,    18, 
     555      18,    18 
     556}; 
     557 
     558  /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */ 
     559static const yytype_uint8 yyr2[] = 
     560{ 
     561       0,     2,     0,     2,     1,     3,     5,     7,     3,     5, 
     562       4,     3 
     563}; 
     564 
     565 
     566#define yyerrok         (yyerrstatus = 0) 
     567#define yyclearin       (yychar = YYEMPTY) 
     568#define YYEMPTY         (-2) 
     569#define YYEOF           0 
     570 
     571#define YYACCEPT        goto yyacceptlab 
     572#define YYABORT         goto yyabortlab 
     573#define YYERROR         goto yyerrorlab 
     574 
    564575 
    565576#define YYRECOVERING()  (!!yyerrstatus) 
    566577 
    567 #define YYBACKUP(Token, Value)               \ 
    568 do                      \ 
    569   if (yychar == YYEMPTY && yylen == 1)          \ 
    570     {                      \ 
    571       yychar = (Token);                \ 
    572       yylval = (Value);                \ 
    573       yytoken = YYTRANSLATE (yychar);           \ 
    574       YYPOPSTACK (1);                  \ 
    575       goto yybackup;                \ 
    576     }                      \ 
    577   else                        \ 
    578     {                      \ 
    579       yyerror (YY_("syntax error: cannot back up")); \ 
    580       YYERROR;                   \ 
    581     }                      \ 
    582 while (YYID (0)) 
    583  
    584  
    585 #define YYTERROR  1 
    586 #define YYERRCODE 256 
    587  
    588  
    589 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. 
    590    If N is 0, then set CURRENT to the empty location which ends 
    591    the previous symbol: RHS[0] (always defined).  */ 
    592  
    593 #define YYRHSLOC(Rhs, K) ((Rhs)[K]) 
    594 #ifndef YYLLOC_DEFAULT 
    595 # define YYLLOC_DEFAULT(Current, Rhs, N)           \ 
    596     do                           \ 
    597       if (YYID (N))                                                    \ 
    598    {                       \ 
    599      (Current).first_line   = YYRHSLOC (Rhs, 1).first_line; \ 
    600      (Current).first_column = YYRHSLOC (Rhs, 1).first_column;  \ 
    601      (Current).last_line    = YYRHSLOC (Rhs, N).last_line;     \ 
    602      (Current).last_column  = YYRHSLOC (Rhs, N).last_column;   \ 
    603    }                       \ 
    604       else                       \ 
    605    {                       \ 
    606      (Current).first_line   = (Current).last_line   =    \ 
    607        YYRHSLOC (Rhs, 0).last_line;          \ 
    608      (Current).first_column = (Current).last_column =    \ 
    609        YYRHSLOC (Rhs, 0).last_column;           \ 
    610    }                       \ 
    611     while (YYID (0)) 
    612 #endif 
    613  
    614  
    615 /* YY_LOCATION_PRINT -- Print the location on the stream. 
    616    This macro was not mandated originally: define only if we know 
    617    we won't break user code: when these are the locations we know.  */ 
    618  
    619 #ifndef YY_LOCATION_PRINT 
    620 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL 
    621 #  define YY_LOCATION_PRINT(File, Loc)       \ 
    622      fprintf (File, "%d.%d-%d.%d",        \ 
    623          (Loc).first_line, (Loc).first_column,  \ 
    624          (Loc).last_line,  (Loc).last_column) 
    625 # else 
    626 #  define YY_LOCATION_PRINT(File, Loc) ((void) 0) 
    627 # endif 
    628 #endif 
    629  
    630  
    631 /* YYLEX -- calling `yylex' with the right arguments.  */ 
    632  
    633 #ifdef YYLEX_PARAM 
    634 # define YYLEX yylex (YYLEX_PARAM) 
    635 #else 
    636 # define YYLEX yylex () 
    637 #endif 
     578#define YYBACKUP(Token, Value)                                    \ 
     579  do                                                              \ 
     580    if (yychar == YYEMPTY)                                        \ 
     581      {                                                           \ 
     582        yychar = (Token);                                         \ 
     583        yylval = (Value);                                         \ 
     584        YYPOPSTACK (yylen);                                       \ 
     585        yystate = *yyssp;                                         \ 
     586        goto yybackup;                                            \ 
     587      }                                                           \ 
     588    else                                                          \ 
     589      {                                                           \ 
     590        yyerror (YY_("syntax error: cannot back up")); \ 
     591        YYERROR;                                                  \ 
     592      }                                                           \ 
     593  while (0) 
     594 
     595/* Error token number */ 
     596#define YYTERROR        1 
     597#define YYERRCODE       256 
     598 
     599 
    638600 
    639601/* Enable debugging if requested.  */ 
     
    645607# endif 
    646608 
    647 # define YYDPRINTF(Args)         \ 
    648 do {                 \ 
    649   if (yydebug)             \ 
    650     YYFPRINTF Args;           \ 
    651 } while (YYID (0)) 
    652  
    653 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)           \ 
    654 do {                            \ 
    655   if (yydebug)                        \ 
    656     {                           \ 
    657       YYFPRINTF (stderr, "%s ", Title);                 \ 
    658       yy_symbol_print (stderr,                    \ 
    659         Type, Value); \ 
    660       YYFPRINTF (stderr, "\n");                   \ 
    661     }                           \ 
    662 } while (YYID (0)) 
    663  
    664  
    665 /*--------------------------------. 
    666 | Print this symbol on YYOUTPUT.  | 
    667 `--------------------------------*/ 
    668  
    669 /*ARGSUSED*/ 
    670 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    671      || defined __cplusplus || defined _MSC_VER) 
     609# define YYDPRINTF(Args)                        \ 
     610do {                                            \ 
     611  if (yydebug)                                  \ 
     612    YYFPRINTF Args;                             \ 
     613} while (0) 
     614 
     615/* This macro is provided for backward compatibility. */ 
     616#ifndef YY_LOCATION_PRINT 
     617# define YY_LOCATION_PRINT(File, Loc) ((void) 0) 
     618#endif 
     619 
     620 
     621# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \ 
     622do {                                                                      \ 
     623  if (yydebug)                                                            \ 
     624    {                                                                     \ 
     625      YYFPRINTF (stderr, "%s ", Title);                                   \ 
     626      yy_symbol_print (stderr,                                            \ 
     627                  Type, Value); \ 
     628      YYFPRINTF (stderr, "\n");                                           \ 
     629    }                                                                     \ 
     630} while (0) 
     631 
     632 
     633/*-----------------------------------. 
     634| Print this symbol's value on YYO.  | 
     635`-----------------------------------*/ 
     636 
    672637static void 
    673 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 
    674 #else 
    675 static void 
    676 yy_symbol_value_print (yyoutput, yytype, yyvaluep) 
    677     FILE *yyoutput; 
    678     int yytype; 
    679     YYSTYPE const * const yyvaluep; 
    680 #endif 
    681 { 
     638yy_symbol_value_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep) 
     639{ 
     640  FILE *yyoutput = yyo; 
     641  YYUSE (yyoutput); 
    682642  if (!yyvaluep) 
    683643    return; 
    684644# ifdef YYPRINT 
    685645  if (yytype < YYNTOKENS) 
    686     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); 
    687 # else 
    688   YYUSE (yyoutput); 
     646    YYPRINT (yyo, yytoknum[yytype], *yyvaluep); 
    689647# endif 
    690   switch (yytype) 
    691     { 
    692       default: 
    693    break; 
    694     } 
    695 } 
    696  
    697  
    698 /*--------------------------------. 
    699 | Print this symbol on YYOUTPUT.  | 
    700 `--------------------------------*/ 
    701  
    702 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    703      || defined __cplusplus || defined _MSC_VER) 
     648  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     649  YYUSE (yytype); 
     650  YY_IGNORE_MAYBE_UNINITIALIZED_END 
     651} 
     652 
     653 
     654/*---------------------------. 
     655| Print this symbol on YYO.  | 
     656`---------------------------*/ 
     657 
    704658static void 
    705 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) 
    706 #else 
    707 static void 
    708 yy_symbol_print (yyoutput, yytype, yyvaluep) 
    709     FILE *yyoutput; 
    710     int yytype; 
    711     YYSTYPE const * const yyvaluep; 
    712 #endif 
    713 { 
    714   if (yytype < YYNTOKENS) 
    715     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); 
    716   else 
    717     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); 
    718  
    719   yy_symbol_value_print (yyoutput, yytype, yyvaluep); 
    720   YYFPRINTF (yyoutput, ")"); 
     659yy_symbol_print (FILE *yyo, int yytype, YYSTYPE const * const yyvaluep) 
     660{ 
     661  YYFPRINTF (yyo, "%s %s (", 
     662             yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]); 
     663 
     664  yy_symbol_value_print (yyo, yytype, yyvaluep); 
     665  YYFPRINTF (yyo, ")"); 
    721666} 
    722667 
     
    726671`------------------------------------------------------------------*/ 
    727672 
    728 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    729      || defined __cplusplus || defined _MSC_VER) 
    730673static void 
    731 yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) 
    732 #else 
    733 static void 
    734 yy_stack_print (bottom, top) 
    735     yytype_int16 *bottom; 
    736     yytype_int16 *top; 
    737 #endif 
     674yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) 
    738675{ 
    739676  YYFPRINTF (stderr, "Stack now"); 
    740   for (; bottom <= top; ++bottom) 
    741     YYFPRINTF (stderr, " %d", *bottom); 
     677  for (; yybottom <= yytop; yybottom++) 
     678    { 
     679      int yybot = *yybottom; 
     680      YYFPRINTF (stderr, " %d", yybot); 
     681    } 
    742682  YYFPRINTF (stderr, "\n"); 
    743683} 
    744684 
    745 # define YY_STACK_PRINT(Bottom, Top)            \ 
    746 do {                       \ 
    747   if (yydebug)                   \ 
    748     yy_stack_print ((Bottom), (Top));           \ 
    749 } while (YYID (0)) 
     685# define YY_STACK_PRINT(Bottom, Top)                            \ 
     686do {                                                            \ 
     687  if (yydebug)                                                  \ 
     688    yy_stack_print ((Bottom), (Top));                           \ 
     689} while (0) 
    750690 
    751691 
     
    754694`------------------------------------------------*/ 
    755695 
    756 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    757      || defined __cplusplus || defined _MSC_VER) 
    758696static void 
    759 yy_reduce_print (YYSTYPE *yyvsp, int yyrule) 
    760 #else 
    761 static void 
    762 yy_reduce_print (yyvsp, yyrule) 
    763     YYSTYPE *yyvsp; 
    764     int yyrule; 
    765 #endif 
    766 { 
     697yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule) 
     698{ 
     699  unsigned long yylno = yyrline[yyrule]; 
    767700  int yynrhs = yyr2[yyrule]; 
    768701  int yyi; 
    769   unsigned long int yylno = yyrline[yyrule]; 
    770702  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", 
    771         yyrule - 1, yylno); 
     703             yyrule - 1, yylno); 
    772704  /* The symbols being reduced.  */ 
    773705  for (yyi = 0; yyi < yynrhs; yyi++) 
    774706    { 
    775       fprintf (stderr, "   $%d = ", yyi + 1); 
    776       yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], 
    777              &(yyvsp[(yyi + 1) - (yynrhs)]) 
    778                          ); 
    779       fprintf (stderr, "\n"); 
     707      YYFPRINTF (stderr, "   $%d = ", yyi + 1); 
     708      yy_symbol_print (stderr, 
     709                       yystos[yyssp[yyi + 1 - yynrhs]], 
     710                       &yyvsp[(yyi + 1) - (yynrhs)] 
     711                                              ); 
     712      YYFPRINTF (stderr, "\n"); 
    780713    } 
    781714} 
    782715 
    783 # define YY_REDUCE_PRINT(Rule)      \ 
    784 do {              \ 
    785   if (yydebug)          \ 
    786     yy_reduce_print (yyvsp, Rule); \ 
    787 } while (YYID (0)) 
     716# define YY_REDUCE_PRINT(Rule)          \ 
     717do {                                    \ 
     718  if (yydebug)                          \ 
     719    yy_reduce_print (yyssp, yyvsp, Rule); \ 
     720} while (0) 
    788721 
    789722/* Nonzero means print parse trace.  It is left uninitialized so that 
     
    799732 
    800733/* YYINITDEPTH -- initial size of the parser's stacks.  */ 
    801 #ifndef  YYINITDEPTH 
     734#ifndef YYINITDEPTH 
    802735# define YYINITDEPTH 200 
    803736#endif 
     
    813746# define YYMAXDEPTH 10000 
    814747#endif 
    815  
    816  
    817748 
    818749 
     
    824755#  else 
    825756/* Return the length of YYSTR.  */ 
    826 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    827      || defined __cplusplus || defined _MSC_VER) 
    828757static YYSIZE_T 
    829758yystrlen (const char *yystr) 
    830 #else 
    831 static YYSIZE_T 
    832 yystrlen (yystr) 
    833     const char *yystr; 
    834 #endif 
    835759{ 
    836760  YYSIZE_T yylen; 
     
    848772/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in 
    849773   YYDEST.  */ 
    850 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    851      || defined __cplusplus || defined _MSC_VER) 
    852774static char * 
    853775yystpcpy (char *yydest, const char *yysrc) 
    854 #else 
    855 static char * 
    856 yystpcpy (yydest, yysrc) 
    857     char *yydest; 
    858     const char *yysrc; 
    859 #endif 
    860776{ 
    861777  char *yyd = yydest; 
     
    887803 
    888804      for (;;) 
    889    switch (*++yyp) 
    890      { 
    891      case '\'': 
    892      case ',': 
    893        goto do_not_strip_quotes; 
    894  
    895      case '\\': 
    896        if (*++yyp != '\\') 
    897          goto do_not_strip_quotes; 
    898        /* Fall through.  */ 
    899      default: 
    900        if (yyres) 
    901          yyres[yyn] = *yyp; 
    902        yyn++; 
    903        break; 
    904  
    905      case '"': 
    906        if (yyres) 
    907          yyres[yyn] = '\0'; 
    908        return yyn; 
    909      } 
     805        switch (*++yyp) 
     806          { 
     807          case '\'': 
     808          case ',': 
     809            goto do_not_strip_quotes; 
     810 
     811          case '\\': 
     812            if (*++yyp != '\\') 
     813              goto do_not_strip_quotes; 
     814            else 
     815              goto append; 
     816 
     817          append: 
     818          default: 
     819            if (yyres) 
     820              yyres[yyn] = *yyp; 
     821            yyn++; 
     822            break; 
     823 
     824          case '"': 
     825            if (yyres) 
     826              yyres[yyn] = '\0'; 
     827            return yyn; 
     828          } 
    910829    do_not_strip_quotes: ; 
    911830    } 
     
    914833    return yystrlen (yystr); 
    915834 
    916   return yystpcpy (yyres, yystr) - yyres; 
     835  return (YYSIZE_T) (yystpcpy (yyres, yystr) - yyres); 
    917836} 
    918837# endif 
    919838 
    920 /* Copy into YYRESULT an error message about the unexpected token 
    921    YYCHAR while in state YYSTATE.  Return the number of bytes copied, 
    922    including the terminating null byte.  If YYRESULT is null, do not 
    923    copy anything; just return the number of bytes that would be 
    924    copied.  As a special case, return 0 if an ordinary "syntax error" 
    925    message will do.  Return YYSIZE_MAXIMUM if overflow occurs during 
    926    size calculation.  */ 
    927 static YYSIZE_T 
    928 yysyntax_error (char *yyresult, int yystate, int yychar) 
    929 { 
    930   int yyn = yypact[yystate]; 
    931  
    932   if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) 
    933     return 0; 
    934   else 
     839/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message 
     840   about the unexpected token YYTOKEN for the state stack whose top is 
     841   YYSSP. 
     842 
     843   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is 
     844   not large enough to hold the message.  In that case, also set 
     845   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the 
     846   required number of bytes is too large to store.  */ 
     847static int 
     848yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, 
     849                yytype_int16 *yyssp, int yytoken) 
     850{ 
     851  YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); 
     852  YYSIZE_T yysize = yysize0; 
     853  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; 
     854  /* Internationalized format string. */ 
     855  const char *yyformat = YY_NULLPTR; 
     856  /* Arguments of yyformat. */ 
     857  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; 
     858  /* Number of reported tokens (one for the "unexpected", one per 
     859     "expected"). */ 
     860  int yycount = 0; 
     861 
     862  /* There are many possibilities here to consider: 
     863     - If this state is a consistent state with a default action, then 
     864       the only way this function was invoked is if the default action 
     865       is an error action.  In that case, don't check for expected 
     866       tokens because there are none. 
     867     - The only way there can be no lookahead present (in yychar) is if 
     868       this state is a consistent state with a default action.  Thus, 
     869       detecting the absence of a lookahead is sufficient to determine 
     870       that there is no unexpected or expected token to report.  In that 
     871       case, just report a simple "syntax error". 
     872     - Don't assume there isn't a lookahead just because this state is a 
     873       consistent state with a default action.  There might have been a 
     874       previous inconsistent state, consistent state with a non-default 
     875       action, or user semantic action that manipulated yychar. 
     876     - Of course, the expected token list depends on states to have 
     877       correct lookahead information, and it depends on the parser not 
     878       to perform extra reductions after fetching a lookahead from the 
     879       scanner and before detecting a syntax error.  Thus, state merging 
     880       (from LALR or IELR) and default reductions corrupt the expected 
     881       token list.  However, the list is correct for canonical LR with 
     882       one exception: it will still contain any token that will not be 
     883       accepted due to an error action in a later state. 
     884  */ 
     885  if (yytoken != YYEMPTY) 
    935886    { 
    936       int yytype = YYTRANSLATE (yychar); 
    937       YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); 
    938       YYSIZE_T yysize = yysize0; 
    939       YYSIZE_T yysize1; 
    940       int yysize_overflow = 0; 
    941       enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; 
    942       char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; 
    943       int yyx; 
    944  
    945 # if 0 
    946       /* This is so xgettext sees the translatable formats that are 
    947     constructed on the fly.  */ 
    948       YY_("syntax error, unexpected %s"); 
    949       YY_("syntax error, unexpected %s, expecting %s"); 
    950       YY_("syntax error, unexpected %s, expecting %s or %s"); 
    951       YY_("syntax error, unexpected %s, expecting %s or %s or %s"); 
    952       YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); 
    953 # endif 
    954       char *yyfmt; 
    955       char const *yyf; 
    956       static char const yyunexpected[] = "syntax error, unexpected %s"; 
    957       static char const yyexpecting[] = ", expecting %s"; 
    958       static char const yyor[] = " or %s"; 
    959       char yyformat[sizeof yyunexpected 
    960           + sizeof yyexpecting - 1 
    961           + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) 
    962              * (sizeof yyor - 1))]; 
    963       char const *yyprefix = yyexpecting; 
    964  
    965       /* Start YYX at -YYN if negative to avoid negative indexes in 
    966     YYCHECK.  */ 
    967       int yyxbegin = yyn < 0 ? -yyn : 0; 
    968  
    969       /* Stay within bounds of both yycheck and yytname.  */ 
    970       int yychecklim = YYLAST - yyn + 1; 
    971       int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; 
    972       int yycount = 1; 
    973  
    974       yyarg[0] = yytname[yytype]; 
    975       yyfmt = yystpcpy (yyformat, yyunexpected); 
    976  
    977       for (yyx = yyxbegin; yyx < yyxend; ++yyx) 
    978    if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) 
    979      { 
    980        if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) 
    981          { 
    982       yycount = 1; 
    983       yysize = yysize0; 
    984       yyformat[sizeof yyunexpected - 1] = '\0'; 
    985       break; 
    986          } 
    987        yyarg[yycount++] = yytname[yyx]; 
    988        yysize1 = yysize + yytnamerr (0, yytname[yyx]); 
    989        yysize_overflow |= (yysize1 < yysize); 
    990        yysize = yysize1; 
    991        yyfmt = yystpcpy (yyfmt, yyprefix); 
    992        yyprefix = yyor; 
    993      } 
    994  
    995       yyf = YY_(yyformat); 
    996       yysize1 = yysize + yystrlen (yyf); 
    997       yysize_overflow |= (yysize1 < yysize); 
     887      int yyn = yypact[*yyssp]; 
     888      yyarg[yycount++] = yytname[yytoken]; 
     889      if (!yypact_value_is_default (yyn)) 
     890        { 
     891          /* Start YYX at -YYN if negative to avoid negative indexes in 
     892             YYCHECK.  In other words, skip the first -YYN actions for 
     893             this state because they are default actions.  */ 
     894          int yyxbegin = yyn < 0 ? -yyn : 0; 
     895          /* Stay within bounds of both yycheck and yytname.  */ 
     896          int yychecklim = YYLAST - yyn + 1; 
     897          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; 
     898          int yyx; 
     899 
     900          for (yyx = yyxbegin; yyx < yyxend; ++yyx) 
     901            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR 
     902                && !yytable_value_is_error (yytable[yyx + yyn])) 
     903              { 
     904                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) 
     905                  { 
     906                    yycount = 1; 
     907                    yysize = yysize0; 
     908                    break; 
     909                  } 
     910                yyarg[yycount++] = yytname[yyx]; 
     911                { 
     912                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); 
     913                  if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) 
     914                    yysize = yysize1; 
     915                  else 
     916                    return 2; 
     917                } 
     918              } 
     919        } 
     920    } 
     921 
     922  switch (yycount) 
     923    { 
     924# define YYCASE_(N, S)                      \ 
     925      case N:                               \ 
     926        yyformat = S;                       \ 
     927      break 
     928    default: /* Avoid compiler warnings. */ 
     929      YYCASE_(0, YY_("syntax error")); 
     930      YYCASE_(1, YY_("syntax error, unexpected %s")); 
     931      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); 
     932      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); 
     933      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); 
     934      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); 
     935# undef YYCASE_ 
     936    } 
     937 
     938  { 
     939    YYSIZE_T yysize1 = yysize + yystrlen (yyformat); 
     940    if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) 
    998941      yysize = yysize1; 
    999  
    1000       if (yysize_overflow) 
    1001    return YYSIZE_MAXIMUM; 
    1002  
    1003       if (yyresult) 
    1004    { 
    1005      /* Avoid sprintf, as that infringes on the user's name space. 
    1006         Don't have undefined behavior even if the translation 
    1007         produced a string with the wrong number of "%s"s.  */ 
    1008      char *yyp = yyresult; 
    1009      int yyi = 0; 
    1010      while ((*yyp = *yyf) != '\0') 
    1011        { 
    1012          if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) 
    1013       { 
    1014         yyp += yytnamerr (yyp, yyarg[yyi++]); 
    1015         yyf += 2; 
    1016       } 
    1017          else 
    1018       { 
    1019         yyp++; 
    1020         yyf++; 
    1021       } 
    1022        } 
    1023    } 
    1024       return yysize; 
     942    else 
     943      return 2; 
     944  } 
     945 
     946  if (*yymsg_alloc < yysize) 
     947    { 
     948      *yymsg_alloc = 2 * yysize; 
     949      if (! (yysize <= *yymsg_alloc 
     950             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) 
     951        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; 
     952      return 1; 
    1025953    } 
     954 
     955  /* Avoid sprintf, as that infringes on the user's name space. 
     956     Don't have undefined behavior even if the translation 
     957     produced a string with the wrong number of "%s"s.  */ 
     958  { 
     959    char *yyp = *yymsg; 
     960    int yyi = 0; 
     961    while ((*yyp = *yyformat) != '\0') 
     962      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) 
     963        { 
     964          yyp += yytnamerr (yyp, yyarg[yyi++]); 
     965          yyformat += 2; 
     966        } 
     967      else 
     968        { 
     969          yyp++; 
     970          yyformat++; 
     971        } 
     972  } 
     973  return 0; 
    1026974} 
    1027975#endif /* YYERROR_VERBOSE */ 
    1028  
    1029  
    1030976 
    1031977/*-----------------------------------------------. 
     
    1033979`-----------------------------------------------*/ 
    1034980 
    1035 /*ARGSUSED*/ 
    1036 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    1037      || defined __cplusplus || defined _MSC_VER) 
    1038981static void 
    1039982yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) 
    1040 #else 
    1041 static void 
    1042 yydestruct (yymsg, yytype, yyvaluep) 
    1043     const char *yymsg; 
    1044     int yytype; 
    1045     YYSTYPE *yyvaluep; 
    1046 #endif 
    1047983{ 
    1048984  YYUSE (yyvaluep); 
    1049  
    1050985  if (!yymsg) 
    1051986    yymsg = "Deleting"; 
    1052987  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); 
    1053988 
    1054   switch (yytype) 
    1055     { 
    1056  
    1057       default: 
    1058    break; 
    1059     } 
    1060 } 
    1061  
    1062  
    1063  
    1064 /* Prevent warnings from -Wmissing-prototypes.  */ 
    1065  
    1066 #ifdef YYPARSE_PARAM 
    1067 #if defined __STDC__ || defined __cplusplus 
    1068 int yyparse (void *YYPARSE_PARAM); 
    1069 #else 
    1070 int yyparse (); 
    1071 #endif 
    1072 #else /* ! YYPARSE_PARAM */ 
    1073 #if defined __STDC__ || defined __cplusplus 
    1074 int yyparse (void); 
    1075 #else 
    1076 int yyparse (); 
    1077 #endif 
    1078 #endif /* ! YYPARSE_PARAM */ 
    1079  
    1080  
    1081  
    1082 /* The look-ahead symbol.  */ 
     989  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
     990  YYUSE (yytype); 
     991  YY_IGNORE_MAYBE_UNINITIALIZED_END 
     992} 
     993 
     994 
     995 
     996 
     997/* The lookahead symbol.  */ 
    1083998int yychar; 
    1084999 
    1085 /* The semantic value of the look-ahead symbol.  */ 
     1000/* The semantic value of the lookahead symbol.  */ 
    10861001YYSTYPE yylval; 
    1087  
    10881002/* Number of syntax errors so far.  */ 
    10891003int yynerrs; 
    1090  
    10911004 
    10921005 
     
    10951008`----------*/ 
    10961009 
    1097 #ifdef YYPARSE_PARAM 
    1098 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    1099      || defined __cplusplus || defined _MSC_VER) 
    1100 int 
    1101 yyparse (void *YYPARSE_PARAM) 
    1102 #else 
    1103 int 
    1104 yyparse (YYPARSE_PARAM) 
    1105     void *YYPARSE_PARAM; 
    1106 #endif 
    1107 #else /* ! YYPARSE_PARAM */ 
    1108 #if (defined __STDC__ || defined __C99__FUNC__ \ 
    1109      || defined __cplusplus || defined _MSC_VER) 
    11101010int 
    11111011yyparse (void) 
    1112 #else 
    1113 int 
    1114 yyparse () 
    1115  
    1116 #endif 
    1117 #endif 
    1118 { 
    1119    
    1120   int yystate; 
     1012{ 
     1013    int yystate; 
     1014    /* Number of tokens to shift before error messages enabled.  */ 
     1015    int yyerrstatus; 
     1016 
     1017    /* The stacks and their tools: 
     1018       'yyss': related to states. 
     1019       'yyvs': related to semantic values. 
     1020 
     1021       Refer to the stacks through separate pointers, to allow yyoverflow 
     1022       to reallocate them elsewhere.  */ 
     1023 
     1024    /* The state stack.  */ 
     1025    yytype_int16 yyssa[YYINITDEPTH]; 
     1026    yytype_int16 *yyss; 
     1027    yytype_int16 *yyssp; 
     1028 
     1029    /* The semantic value stack.  */ 
     1030    YYSTYPE yyvsa[YYINITDEPTH]; 
     1031    YYSTYPE *yyvs; 
     1032    YYSTYPE *yyvsp; 
     1033 
     1034    YYSIZE_T yystacksize; 
     1035 
    11211036  int yyn; 
    11221037  int yyresult; 
    1123   /* Number of tokens to shift before error messages enabled.  */ 
    1124   int yyerrstatus; 
    1125   /* Look-ahead token as an internal (translated) token number.  */ 
     1038  /* Lookahead token as an internal (translated) token number.  */ 
    11261039  int yytoken = 0; 
     1040  /* The variables used to return semantic value and location from the 
     1041     action routines.  */ 
     1042  YYSTYPE yyval; 
     1043 
    11271044#if YYERROR_VERBOSE 
    11281045  /* Buffer for error messages, and its allocated size.  */ 
     
    11321049#endif 
    11331050 
    1134   /* Three stacks and their tools: 
    1135      `yyss': related to states, 
    1136      `yyvs': related to semantic values, 
    1137      `yyls': related to locations. 
    1138  
    1139      Refer to the stacks thru separate pointers, to allow yyoverflow 
    1140      to reallocate them elsewhere.  */ 
    1141  
    1142   /* The state stack.  */ 
    1143   yytype_int16 yyssa[YYINITDEPTH]; 
    1144   yytype_int16 *yyss = yyssa; 
    1145   yytype_int16 *yyssp; 
    1146  
    1147   /* The semantic value stack.  */ 
    1148   YYSTYPE yyvsa[YYINITDEPTH]; 
    1149   YYSTYPE *yyvs = yyvsa; 
    1150   YYSTYPE *yyvsp; 
    1151  
    1152  
    1153  
    11541051#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N)) 
    1155  
    1156   YYSIZE_T yystacksize = YYINITDEPTH; 
    1157  
    1158   /* The variables used to return semantic value and location from the 
    1159      action routines.  */ 
    1160   YYSTYPE yyval; 
    1161  
    11621052 
    11631053  /* The number of symbols on the RHS of the reduced rule. 
     
    11651055  int yylen = 0; 
    11661056 
     1057  yyssp = yyss = yyssa; 
     1058  yyvsp = yyvs = yyvsa; 
     1059  yystacksize = YYINITDEPTH; 
     1060 
    11671061  YYDPRINTF ((stderr, "Starting parse\n")); 
    11681062 
     
    11701064  yyerrstatus = 0; 
    11711065  yynerrs = 0; 
    1172   yychar = YYEMPTY;     /* Cause a token to be read.  */ 
    1173  
    1174   /* Initialize stack pointers. 
    1175      Waste one element of value and location stack 
    1176      so that they stay on the same level as the state stack. 
    1177      The wasted elements are never initialized.  */ 
    1178  
    1179   yyssp = yyss; 
    1180   yyvsp = yyvs; 
    1181  
     1066  yychar = YYEMPTY; /* Cause a token to be read.  */ 
    11821067  goto yysetstate; 
    11831068 
     1069 
    11841070/*------------------------------------------------------------. 
    1185 | yynewstate -- Push a new state, which is found in yystate.  | 
     1071| yynewstate -- push a new state, which is found in yystate.  | 
    11861072`------------------------------------------------------------*/ 
    1187  yynewstate: 
     1073yynewstate: 
    11881074  /* In all cases, when you get here, the value and location stacks 
    11891075     have just been pushed.  So pushing a state here evens the stacks.  */ 
    11901076  yyssp++; 
    11911077 
    1192  yysetstate: 
    1193   *yyssp = yystate; 
     1078 
     1079/*--------------------------------------------------------------------. 
     1080| yynewstate -- set current state (the top of the stack) to yystate.  | 
     1081`--------------------------------------------------------------------*/ 
     1082yysetstate: 
     1083  YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 
     1084  YY_ASSERT (0 <= yystate && yystate < YYNSTATES); 
     1085  *yyssp = (yytype_int16) yystate; 
    11941086 
    11951087  if (yyss + yystacksize - 1 <= yyssp) 
     1088#if !defined yyoverflow && !defined YYSTACK_RELOCATE 
     1089    goto yyexhaustedlab; 
     1090#else 
    11961091    { 
    11971092      /* Get the current used size of the three stacks, in elements.  */ 
    1198       YYSIZE_T yysize = yyssp - yyss + 1; 
    1199  
    1200 #ifdef yyoverflow 
     1093      YYSIZE_T yysize = (YYSIZE_T) (yyssp - yyss + 1); 
     1094 
     1095# if defined yyoverflow 
    12011096      { 
    1202    /* Give user a chance to reallocate the stack.  Use copies of 
    1203       these so that the &'s don't force the real ones into 
    1204       memory.  */ 
    1205    YYSTYPE *yyvs1 = yyvs; 
    1206    yytype_int16 *yyss1 = yyss; 
    1207  
    1208  
    1209    /* Each stack pointer address is followed by the size of the 
    1210       data in use in that stack, in bytes.  This used to be a 
    1211       conditional around just the two extra args, but that might 
    1212       be undefined if yyoverflow is a macro.  */ 
    1213    yyoverflow (YY_("memory exhausted"), 
    1214           &yyss1, yysize * sizeof (*yyssp), 
    1215           &yyvs1, yysize * sizeof (*yyvsp), 
    1216  
    1217           &yystacksize); 
    1218  
    1219    yyss = yyss1; 
    1220    yyvs = yyvs1; 
     1097        /* Give user a chance to reallocate the stack.  Use copies of 
     1098           these so that the &'s don't force the real ones into 
     1099           memory.  */ 
     1100        YYSTYPE *yyvs1 = yyvs; 
     1101        yytype_int16 *yyss1 = yyss; 
     1102 
     1103        /* Each stack pointer address is followed by the size of the 
     1104           data in use in that stack, in bytes.  This used to be a 
     1105           conditional around just the two extra args, but that might 
     1106           be undefined if yyoverflow is a macro.  */ 
     1107        yyoverflow (YY_("memory exhausted"), 
     1108                    &yyss1, yysize * sizeof (*yyssp), 
     1109                    &yyvs1, yysize * sizeof (*yyvsp), 
     1110                    &yystacksize); 
     1111        yyss = yyss1; 
     1112        yyvs = yyvs1; 
    12211113      } 
    1222 #else /* no yyoverflow */ 
    1223 # ifndef YYSTACK_RELOCATE 
    1224       goto yyexhaustedlab; 
    1225 # else 
     1114# else /* defined YYSTACK_RELOCATE */ 
    12261115      /* Extend the stack our own way.  */ 
    12271116      if (YYMAXDEPTH <= yystacksize) 
    1228    goto yyexhaustedlab; 
     1117        goto yyexhaustedlab; 
    12291118      yystacksize *= 2; 
    12301119      if (YYMAXDEPTH < yystacksize) 
    1231    yystacksize = YYMAXDEPTH; 
     1120        yystacksize = YYMAXDEPTH; 
    12321121 
    12331122      { 
    1234    yytype_int16 *yyss1 = yyss; 
    1235    union yyalloc *yyptr = 
    1236      (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 
    1237    if (! yyptr) 
    1238      goto yyexhaustedlab; 
    1239    YYSTACK_RELOCATE (yyss); 
    1240    YYSTACK_RELOCATE (yyvs); 
    1241  
    1242 #  undef YYSTACK_RELOCATE 
    1243    if (yyss1 != yyssa) 
    1244      YYSTACK_FREE (yyss1); 
     1123        yytype_int16 *yyss1 = yyss; 
     1124        union yyalloc *yyptr = 
     1125          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 
     1126        if (! yyptr) 
     1127          goto yyexhaustedlab; 
     1128        YYSTACK_RELOCATE (yyss_alloc, yyss); 
     1129        YYSTACK_RELOCATE (yyvs_alloc, yyvs); 
     1130# undef YYSTACK_RELOCATE 
     1131        if (yyss1 != yyssa) 
     1132          YYSTACK_FREE (yyss1); 
    12451133      } 
    12461134# endif 
    1247 #endif /* no yyoverflow */ 
    12481135 
    12491136      yyssp = yyss + yysize - 1; 
    12501137      yyvsp = yyvs + yysize - 1; 
    12511138 
    1252  
    12531139      YYDPRINTF ((stderr, "Stack size increased to %lu\n", 
    1254         (unsigned long int) yystacksize)); 
     1140                  (unsigned long) yystacksize)); 
    12551141 
    12561142      if (yyss + yystacksize - 1 <= yyssp) 
    1257    YYABORT; 
     1143        YYABORT; 
    12581144    } 
    1259  
    1260   YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 
     1145#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */ 
     1146 
     1147  if (yystate == YYFINAL) 
     1148    YYACCEPT; 
    12611149 
    12621150  goto yybackup; 
     1151 
    12631152 
    12641153/*-----------. 
     
    12661155`-----------*/ 
    12671156yybackup: 
    1268  
    12691157  /* Do appropriate processing given the current state.  Read a 
    1270      look-ahead token if we need one and don't already have one.  */ 
    1271  
    1272   /* First try to decide what to do without reference to look-ahead token.  */ 
     1158     lookahead token if we need one and don't already have one.  */ 
     1159 
     1160  /* First try to decide what to do without reference to lookahead token.  */ 
    12731161  yyn = yypact[yystate]; 
    1274   if (yyn == YYPACT_NINF) 
     1162  if (yypact_value_is_default (yyn)) 
    12751163    goto yydefault; 
    12761164 
    1277   /* Not known => get a look-ahead token if don't already have one.  */ 
    1278  
    1279   /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */ 
     1165  /* Not known => get a lookahead token if don't already have one.  */ 
     1166 
     1167  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */ 
    12801168  if (yychar == YYEMPTY) 
    12811169    { 
    12821170      YYDPRINTF ((stderr, "Reading a token: ")); 
    1283       yychar = YYLEX; 
     1171      yychar = yylex (); 
    12841172    } 
    12851173 
     
    13031191  if (yyn <= 0) 
    13041192    { 
    1305       if (yyn == 0 || yyn == YYTABLE_NINF) 
    1306    goto yyerrlab; 
     1193      if (yytable_value_is_error (yyn)) 
     1194        goto yyerrlab; 
    13071195      yyn = -yyn; 
    13081196      goto yyreduce; 
    13091197    } 
    1310  
    1311   if (yyn == YYFINAL) 
    1312     YYACCEPT; 
    13131198 
    13141199  /* Count tokens shifted since error; after three, turn off error 
     
    13171202    yyerrstatus--; 
    13181203 
    1319   /* Shift the look-ahead token.  */ 
     1204  /* Shift the lookahead token.  */ 
    13201205  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); 
    13211206 
    1322   /* Discard the shifted token unless it is eof.  */ 
    1323   if (yychar != YYEOF) 
    1324     yychar = YYEMPTY; 
     1207  /* Discard the shifted token.  */ 
     1208  yychar = YYEMPTY; 
    13251209 
    13261210  yystate = yyn; 
     1211  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
    13271212  *++yyvsp = yylval; 
    1328  
     1213  YY_IGNORE_MAYBE_UNINITIALIZED_END 
    13291214  goto yynewstate; 
    13301215 
     
    13411226 
    13421227/*-----------------------------. 
    1343 | yyreduce -- Do a reduction.  | 
     1228| yyreduce -- do a reduction.  | 
    13441229`-----------------------------*/ 
    13451230yyreduce: 
     
    13481233 
    13491234  /* If YYLEN is nonzero, implement the default value of the action: 
    1350      `$$ = $1'. 
     1235     '$$ = $1'. 
    13511236 
    13521237     Otherwise, the following line sets YYVAL to garbage. 
     
    13611246  switch (yyn) 
    13621247    { 
    1363         case 5: 
     1248  case 5: 
    13641249#line 76 "convert.y" 
    1365     { initdimprob(1,(yyvsp[(2) - (3)].na),"0","0"); ;} 
     1250    { initdimprob(1,(yyvsp[-1].na),"0","0"); } 
     1251#line 1252 "convert.tab.c" 
    13661252    break; 
    13671253 
    13681254  case 6: 
    13691255#line 77 "convert.y" 
    1370     { initdimprob(2,(yyvsp[(2) - (5)].na), (yyvsp[(4) - (5)].na),"0"); ;} 
     1256    { initdimprob(2,(yyvsp[-3].na), (yyvsp[-1].na),"0"); } 
     1257#line 1258 "convert.tab.c" 
    13711258    break; 
    13721259 
    13731260  case 7: 
    13741261#line 78 "convert.y" 
    1375     { initdimprob(3,(yyvsp[(2) - (7)].na), (yyvsp[(4) - (7)].na), (yyvsp[(6) - (7)].na)); ;} 
     1262    { initdimprob(3,(yyvsp[-5].na), (yyvsp[-3].na), (yyvsp[-1].na)); } 
     1263#line 1264 "convert.tab.c" 
    13761264    break; 
    13771265 
     
    13791267#line 80 "convert.y" 
    13801268    { 
    1381             listofmodules = Addtolistnom((yyvsp[(2) - (3)].na),listofmodules,0); 
    1382             Addmoduletothelist((yyvsp[(2) - (3)].na)); 
    1383         ;} 
     1269            listofmodules = Addtolistnom((yyvsp[-1].na),listofmodules,0); 
     1270            Addmoduletothelist((yyvsp[-1].na)); 
     1271        } 
     1272#line 1273 "convert.tab.c" 
    13841273    break; 
    13851274 
     
    13871276#line 85 "convert.y" 
    13881277    { 
    1389             if (!strcasecmp((yyvsp[(4) - (5)].na),"4")) 
     1278            if (!strcasecmp((yyvsp[-1].na),"4")) 
    13901279            { 
    1391                 listofkind = Addtolistnom((yyvsp[(2) - (5)].na),listofkind,4); 
     1280                listofkind = Addtolistnom((yyvsp[-3].na),listofkind,4); 
    13921281            } 
    1393             else if (!strcasecmp((yyvsp[(4) - (5)].na),"8")) 
     1282            else if (!strcasecmp((yyvsp[-1].na),"8")) 
    13941283            { 
    1395                 listofkind = Addtolistnom((yyvsp[(2) - (5)].na),listofkind,8); 
     1284                listofkind = Addtolistnom((yyvsp[-3].na),listofkind,8); 
    13961285            } 
    13971286            else 
    13981287            { 
    1399                 printf("##\n## Unknown kind type : %s (must be 4 or 8)\n##",(yyvsp[(4) - (5)].na)); 
     1288                printf("##\n## Unknown kind type : %s (must be 4 or 8)\n##",(yyvsp[-1].na)); 
    14001289                exit(0); 
    14011290            } 
    1402         ;} 
     1291        } 
     1292#line 1293 "convert.tab.c" 
    14031293    break; 
    14041294 
     
    14061296#line 101 "convert.y" 
    14071297    { 
    1408             Add_NotGridDepend_Var_1((yyvsp[(3) - (4)].na)); 
    1409         ;} 
     1298            Add_NotGridDepend_Var_1((yyvsp[-1].na)); 
     1299        } 
     1300#line 1301 "convert.tab.c" 
    14101301    break; 
    14111302 
     
    14131304#line 105 "convert.y" 
    14141305    { 
    1415             if (!strcasecmp((yyvsp[(2) - (3)].na),"FIXED_GRIDS"))      fixedgrids = 1; 
    1416             if (!strcasecmp((yyvsp[(2) - (3)].na),"ONLY_FIXED_GRIDS")) onlyfixedgrids = 1; 
    1417         ;} 
     1306            if (!strcasecmp((yyvsp[-1].na),"FIXED_GRIDS"))      fixedgrids = 1; 
     1307            if (!strcasecmp((yyvsp[-1].na),"ONLY_FIXED_GRIDS")) onlyfixedgrids = 1; 
     1308        } 
     1309#line 1310 "convert.tab.c" 
    14181310    break; 
    14191311 
    14201312 
    1421 /* Line 1267 of yacc.c.  */ 
    1422 #line 1420 "convert.tab.c" 
     1313#line 1314 "convert.tab.c" 
     1314 
    14231315      default: break; 
    14241316    } 
     1317  /* User semantic actions sometimes alter yychar, and that requires 
     1318     that yytoken be updated with the new translation.  We take the 
     1319     approach of translating immediately before every use of yytoken. 
     1320     One alternative is translating here after every semantic action, 
     1321     but that translation would be missed if the semantic action invokes 
     1322     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or 
     1323     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an 
     1324     incorrect destructor might then be invoked immediately.  In the 
     1325     case of YYERROR or YYBACKUP, subsequent parser actions might lead 
     1326     to an incorrect destructor call or verbose syntax error message 
     1327     before the lookahead is translated.  */ 
    14251328  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); 
    14261329 
     
    14311334  *++yyvsp = yyval; 
    14321335 
    1433  
    1434   /* Now `shift' the result of the reduction.  Determine what state 
     1336  /* Now 'shift' the result of the reduction.  Determine what state 
    14351337     that goes to, based on the state we popped back to and the rule 
    14361338     number reduced by.  */ 
    1437  
    1438   yyn = yyr1[yyn]; 
    1439  
    1440   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; 
    1441   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) 
    1442     yystate = yytable[yystate]; 
    1443   else 
    1444     yystate = yydefgoto[yyn - YYNTOKENS]; 
     1339  { 
     1340    const int yylhs = yyr1[yyn] - YYNTOKENS; 
     1341    const int yyi = yypgoto[yylhs] + *yyssp; 
     1342    yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp 
     1343               ? yytable[yyi] 
     1344               : yydefgoto[yylhs]); 
     1345  } 
    14451346 
    14461347  goto yynewstate; 
    14471348 
    14481349 
    1449 /*------------------------------------. 
    1450 | yyerrlab -- here on detecting error | 
    1451 `------------------------------------*/ 
     1350/*--------------------------------------. 
     1351| yyerrlab -- here on detecting error. | 
     1352`--------------------------------------*/ 
    14521353yyerrlab: 
     1354  /* Make sure we have latest lookahead translation.  See comments at 
     1355     user semantic actions for why this is necessary.  */ 
     1356  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); 
     1357 
    14531358  /* If not already recovering from an error, report this error.  */ 
    14541359  if (!yyerrstatus) 
     
    14581363      yyerror (YY_("syntax error")); 
    14591364#else 
     1365# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ 
     1366                                        yyssp, yytoken) 
    14601367      { 
    1461    YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); 
    1462    if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) 
    1463      { 
    1464        YYSIZE_T yyalloc = 2 * yysize; 
    1465        if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) 
    1466          yyalloc = YYSTACK_ALLOC_MAXIMUM; 
    1467        if (yymsg != yymsgbuf) 
    1468          YYSTACK_FREE (yymsg); 
    1469        yymsg = (char *) YYSTACK_ALLOC (yyalloc); 
    1470        if (yymsg) 
    1471          yymsg_alloc = yyalloc; 
    1472        else 
    1473          { 
    1474       yymsg = yymsgbuf; 
    1475       yymsg_alloc = sizeof yymsgbuf; 
    1476          } 
    1477      } 
    1478  
    1479    if (0 < yysize && yysize <= yymsg_alloc) 
    1480      { 
    1481        (void) yysyntax_error (yymsg, yystate, yychar); 
    1482        yyerror (yymsg); 
    1483      } 
    1484    else 
    1485      { 
    1486        yyerror (YY_("syntax error")); 
    1487        if (yysize != 0) 
    1488          goto yyexhaustedlab; 
    1489      } 
     1368        char const *yymsgp = YY_("syntax error"); 
     1369        int yysyntax_error_status; 
     1370        yysyntax_error_status = YYSYNTAX_ERROR; 
     1371        if (yysyntax_error_status == 0) 
     1372          yymsgp = yymsg; 
     1373        else if (yysyntax_error_status == 1) 
     1374          { 
     1375            if (yymsg != yymsgbuf) 
     1376              YYSTACK_FREE (yymsg); 
     1377            yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); 
     1378            if (!yymsg) 
     1379              { 
     1380                yymsg = yymsgbuf; 
     1381                yymsg_alloc = sizeof yymsgbuf; 
     1382                yysyntax_error_status = 2; 
     1383              } 
     1384            else 
     1385              { 
     1386                yysyntax_error_status = YYSYNTAX_ERROR; 
     1387                yymsgp = yymsg; 
     1388              } 
     1389          } 
     1390        yyerror (yymsgp); 
     1391        if (yysyntax_error_status == 2) 
     1392          goto yyexhaustedlab; 
    14901393      } 
     1394# undef YYSYNTAX_ERROR 
    14911395#endif 
    14921396    } 
     
    14961400  if (yyerrstatus == 3) 
    14971401    { 
    1498       /* If just tried and failed to reuse look-ahead token after an 
    1499     error, discard it.  */ 
     1402      /* If just tried and failed to reuse lookahead token after an 
     1403        error, discard it.  */ 
    15001404 
    15011405      if (yychar <= YYEOF) 
    1502    { 
    1503      /* Return failure if at end of input.  */ 
    1504      if (yychar == YYEOF) 
    1505        YYABORT; 
    1506    } 
     1406        { 
     1407          /* Return failure if at end of input.  */ 
     1408          if (yychar == YYEOF) 
     1409            YYABORT; 
     1410        } 
    15071411      else 
    1508    { 
    1509      yydestruct ("Error: discarding", 
    1510             yytoken, &yylval); 
    1511      yychar = YYEMPTY; 
    1512    } 
     1412        { 
     1413          yydestruct ("Error: discarding", 
     1414                      yytoken, &yylval); 
     1415          yychar = YYEMPTY; 
     1416        } 
    15131417    } 
    15141418 
    1515   /* Else will try to reuse look-ahead token after shifting the error 
     1419  /* Else will try to reuse lookahead token after shifting the error 
    15161420     token.  */ 
    15171421  goto yyerrlab1; 
     
    15221426`---------------------------------------------------*/ 
    15231427yyerrorlab: 
    1524  
    1525   /* Pacify compilers like GCC when the user code never invokes 
    1526      YYERROR and the label yyerrorlab therefore never appears in user 
    1527      code.  */ 
    1528   if (/*CONSTCOND*/ 0) 
    1529      goto yyerrorlab; 
    1530  
    1531   /* Do not reclaim the symbols of the rule which action triggered 
     1428  /* Pacify compilers when the user code never invokes YYERROR and the 
     1429     label yyerrorlab therefore never appears in user code.  */ 
     1430  if (0) 
     1431    YYERROR; 
     1432 
     1433  /* Do not reclaim the symbols of the rule whose action triggered 
    15321434     this YYERROR.  */ 
    15331435  YYPOPSTACK (yylen); 
     
    15421444`-------------------------------------------------------------*/ 
    15431445yyerrlab1: 
    1544   yyerrstatus = 3;   /* Each real token shifted decrements this.  */ 
     1446  yyerrstatus = 3;      /* Each real token shifted decrements this.  */ 
    15451447 
    15461448  for (;;) 
    15471449    { 
    15481450      yyn = yypact[yystate]; 
    1549       if (yyn != YYPACT_NINF) 
    1550    { 
    1551      yyn += YYTERROR; 
    1552      if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) 
    1553        { 
    1554          yyn = yytable[yyn]; 
    1555          if (0 < yyn) 
    1556       break; 
    1557        } 
    1558    } 
     1451      if (!yypact_value_is_default (yyn)) 
     1452        { 
     1453          yyn += YYTERROR; 
     1454          if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) 
     1455            { 
     1456              yyn = yytable[yyn]; 
     1457              if (0 < yyn) 
     1458                break; 
     1459            } 
     1460        } 
    15591461 
    15601462      /* Pop the current state because it cannot handle the error token.  */ 
    15611463      if (yyssp == yyss) 
    1562    YYABORT; 
     1464        YYABORT; 
    15631465 
    15641466 
    15651467      yydestruct ("Error: popping", 
    1566         yystos[yystate], yyvsp); 
     1468                  yystos[yystate], yyvsp); 
    15671469      YYPOPSTACK (1); 
    15681470      yystate = *yyssp; 
     
    15701472    } 
    15711473 
    1572   if (yyn == YYFINAL) 
    1573     YYACCEPT; 
    1574  
     1474  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 
    15751475  *++yyvsp = yylval; 
     1476  YY_IGNORE_MAYBE_UNINITIALIZED_END 
    15761477 
    15771478 
     
    15901491  goto yyreturn; 
    15911492 
     1493 
    15921494/*-----------------------------------. 
    15931495| yyabortlab -- YYABORT comes here.  | 
     
    15971499  goto yyreturn; 
    15981500 
    1599 #ifndef yyoverflow 
     1501 
     1502#if !defined yyoverflow || YYERROR_VERBOSE 
    16001503/*-------------------------------------------------. 
    16011504| yyexhaustedlab -- memory exhaustion comes here.  | 
     
    16071510#endif 
    16081511 
     1512 
     1513/*-----------------------------------------------------. 
     1514| yyreturn -- parsing is finished, return the result.  | 
     1515`-----------------------------------------------------*/ 
    16091516yyreturn: 
    1610   if (yychar != YYEOF && yychar != YYEMPTY) 
    1611      yydestruct ("Cleanup: discarding lookahead", 
    1612        yytoken, &yylval); 
    1613   /* Do not reclaim the symbols of the rule which action triggered 
     1517  if (yychar != YYEMPTY) 
     1518    { 
     1519      /* Make sure we have latest lookahead translation.  See comments at 
     1520         user semantic actions for why this is necessary.  */ 
     1521      yytoken = YYTRANSLATE (yychar); 
     1522      yydestruct ("Cleanup: discarding lookahead", 
     1523                  yytoken, &yylval); 
     1524    } 
     1525  /* Do not reclaim the symbols of the rule whose action triggered 
    16141526     this YYABORT or YYACCEPT.  */ 
    16151527  YYPOPSTACK (yylen); 
     
    16181530    { 
    16191531      yydestruct ("Cleanup: popping", 
    1620         yystos[*yyssp], yyvsp); 
     1532                  yystos[*yyssp], yyvsp); 
    16211533      YYPOPSTACK (1); 
    16221534    } 
     
    16291541    YYSTACK_FREE (yymsg); 
    16301542#endif 
    1631   /* Make sure YYID is used.  */ 
    1632   return YYID (yyresult); 
    1633 } 
    1634  
    1635  
     1543  return yyresult; 
     1544} 
    16361545#line 110 "convert.y" 
    16371546 
     
    19891898    return 0; 
    19901899} 
    1991  
    19921900#line 2 "convert.yy.c" 
    19931901 
     
    20581966typedef int32_t flex_int32_t; 
    20591967typedef uint32_t flex_uint32_t; 
    2060 typedef uint64_t flex_uint64_t; 
    20611968#else 
    20621969typedef signed char flex_int8_t; 
     
    21652072#endif 
    21662073 
    2167 #ifndef YY_TYPEDEF_YY_SIZE_T 
    2168 #define YY_TYPEDEF_YY_SIZE_T 
    2169 typedef size_t yy_size_t; 
    2170 #endif 
    2171  
    2172 extern yy_size_t convert_leng; 
     2074extern int convert_leng; 
    21732075 
    21742076extern FILE *convert_in, *convert_out; 
     
    21962098#define unput(c) yyunput( c, (yytext_ptr)  ) 
    21972099 
     2100#ifndef YY_TYPEDEF_YY_SIZE_T 
     2101#define YY_TYPEDEF_YY_SIZE_T 
     2102typedef size_t yy_size_t; 
     2103#endif 
     2104 
    21982105#ifndef YY_STRUCT_YY_BUFFER_STATE 
    21992106#define YY_STRUCT_YY_BUFFER_STATE 
     
    22132120    * characters. 
    22142121    */ 
    2215    yy_size_t yy_n_chars; 
     2122   int yy_n_chars; 
    22162123 
    22172124   /* Whether we "own" the buffer - i.e., we know we created it, 
     
    22832190/* yy_hold_char holds the character lost when convert_text is formed. */ 
    22842191static char yy_hold_char; 
    2285 static yy_size_t yy_n_chars;     /* number of characters read into yy_ch_buf */ 
    2286 yy_size_t convert_leng; 
     2192static int yy_n_chars;     /* number of characters read into yy_ch_buf */ 
     2193int convert_leng; 
    22872194 
    22882195/* Points to current character in buffer. */ 
     
    23122219YY_BUFFER_STATE convert__scan_buffer (char *base,yy_size_t size  ); 
    23132220YY_BUFFER_STATE convert__scan_string (yyconst char *yy_str  ); 
    2314 YY_BUFFER_STATE convert__scan_bytes (yyconst char *bytes,yy_size_t len  ); 
     2221YY_BUFFER_STATE convert__scan_bytes (yyconst char *bytes,int len  ); 
    23152222 
    23162223void *convert_alloc (yy_size_t  ); 
     
    23702277#define YY_DO_BEFORE_ACTION \ 
    23712278   (yytext_ptr) = yy_bp; \ 
    2372    convert_leng = (yy_size_t) (yy_cp - yy_bp); \ 
     2279   convert_leng = (size_t) (yy_cp - yy_bp); \ 
    23732280   (yy_hold_char) = *yy_cp; \ 
    23742281   *yy_cp = '\0'; \ 
     
    25832490 
    25842491#define YY_NO_INPUT 
    2585 #line 595 "convert.yy.c" 
     2492#line 594 "convert.yy.c" 
    25862493 
    25872494#define INITIAL 0 
     
    26232530void convert_set_out  (FILE * out_str  ); 
    26242531 
    2625 yy_size_t convert_get_leng (void ); 
     2532int convert_get_leng (void ); 
    26262533 
    26272534char *convert_get_text (void ); 
     
    26732580 * we now use fwrite(). 
    26742581 */ 
    2675 #define ECHO fwrite( convert_text, convert_leng, 1, convert_out ) 
     2582#define ECHO do { if (fwrite( convert_text, convert_leng, 1, convert_out )) {} } while (0) 
    26762583#endif 
    26772584 
     
    26842591      { \ 
    26852592      int c = '*'; \ 
    2686       yy_size_t n; \ 
     2593      unsigned n; \ 
    26872594      for ( n = 0; n < max_size && \ 
    26882595              (c = getc( convert_in )) != EOF && c != '\n'; ++n ) \ 
     
    27682675#line 54 "convert.lex" 
    27692676 
    2770 #line 780 "convert.yy.c" 
     2677#line 779 "convert.yy.c" 
    27712678 
    27722679   if ( !(yy_init) ) 
     
    29272834ECHO; 
    29282835   YY_BREAK 
    2929 #line 939 "convert.yy.c" 
     2836#line 938 "convert.yy.c" 
    29302837case YY_STATE_EOF(INITIAL): 
    29312838case YY_STATE_EOF(character): 
     
    31143021   else 
    31153022      { 
    3116          yy_size_t num_to_read = 
     3023         int num_to_read = 
    31173024         YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 
    31183025 
     
    31283035         if ( b->yy_is_our_buffer ) 
    31293036            { 
    3130             yy_size_t new_size = b->yy_buf_size * 2; 
     3037            int new_size = b->yy_buf_size * 2; 
    31313038 
    31323039            if ( new_size <= 0 ) 
     
    31593066      /* Read in more data. */ 
    31603067      YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 
    3161          (yy_n_chars), num_to_read ); 
     3068         (yy_n_chars), (size_t) num_to_read ); 
    31623069 
    31633070      YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
     
    32693176      { /* need to shift things up to make room */ 
    32703177      /* +2 for EOB chars. */ 
    3271       register yy_size_t number_to_move = (yy_n_chars) + 2; 
     3178      register int number_to_move = (yy_n_chars) + 2; 
    32723179      register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ 
    32733180               YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; 
     
    33183225      else 
    33193226         { /* need more input */ 
    3320          yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); 
     3227         int offset = (yy_c_buf_p) - (yytext_ptr); 
    33213228         ++(yy_c_buf_p); 
    33223229 
     
    33423249               { 
    33433250               if ( convert_wrap( ) ) 
    3344                   return 0; 
     3251                  return EOF; 
    33453252 
    33463253               if ( ! (yy_did_buffer_switch_on_eof) ) 
     
    35943501static void convert_ensure_buffer_stack (void) 
    35953502{ 
    3596    yy_size_t num_to_alloc; 
     3503   int num_to_alloc; 
    35973504     
    35983505   if (!(yy_buffer_stack)) { 
     
    36913598 * @return the newly allocated buffer state object. 
    36923599 */ 
    3693 YY_BUFFER_STATE convert__scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len ) 
     3600YY_BUFFER_STATE convert__scan_bytes  (yyconst char * yybytes, int  _yybytes_len ) 
    36943601{ 
    36953602   YY_BUFFER_STATE b; 
    36963603   char *buf; 
    3697    yy_size_t n, i; 
     3604   yy_size_t n; 
     3605   int i; 
    36983606     
    36993607   /* Get memory for full buffer, including space for trailing EOB's. */ 
     
    37773685 *  
    37783686 */ 
    3779 yy_size_t convert_get_leng  (void) 
     3687int convert_get_leng  (void) 
    37803688{ 
    37813689        return convert_leng; 
  • vendors/AGRIF/dev/LIB/toamr.c

    r5656 r12420  
    158158    { 
    159159        WARNING_CharSize(var); 
     160        if (!strcasecmp(var->v_dimchar  ,":") && var->v_nbdim == 0 ) 
     161        { 
     162        sprintf (tname_2, "%% carrayu"); 
     163        } else { 
    160164        sprintf (tname_2, "%% carray%d", var->v_nbdim); 
     165        } 
    161166    } 
    162167 
     
    210215        { 
    211216            WARNING_CharSize(var); 
    212             sprintf(tname_2, "%% carray%d", var->v_nbdim); 
     217            if (!strcasecmp(var->v_dimchar  ,":") && var->v_nbdim == 0 ) 
     218            { 
     219            sprintf (tname_2, "%% carrayu"); 
     220            } else { 
     221            sprintf (tname_2, "%% carray%d", var->v_nbdim); 
     222            } 
    213223        } 
    214224        strcat(tname_1, tname_2); 
Note: See TracChangeset for help on using the changeset viewer.