00001
00002
00003
00004 #define YYBISON 1
00005
00006 # define EMBEDDED_SQL_BEGIN 257
00007 # define EMBEDDED_SQL_END 258
00008 # define LEXICAL_ERROR 259
00009 # define EMBEDDED_N_ADIC_FUNCTION_CALL 260
00010 # define EMBEDDED_ARRAY 261
00011 # define EMBEDDED_VARIABLE_NAME 262
00012 # define CHARACTER_STRING_LITERAL 263
00013 # define NATIONAL_CHARACTER_STRING_LITERAL 264
00014 # define BIT_STRING_LITERAL 265
00015 # define HEX_STRING_LITERAL 266
00016 # define UNSIGNED_INTEGER 267
00017 # define REAL_EXACT_NUMERIC_LITERAL 268
00018 # define APPROXIMATE_NUMERIC_LITERAL 269
00019 # define DATE_STRING 270
00020 # define TIME_STRING 271
00021 # define TIMESTAMP_STRING 272
00022 # define INTERVAL_STRING 273
00023 # define FOURTH_LEVEL_IDENTIFIER 274
00024 # define THIRD_LEVEL_IDENTIFIER 275
00025 # define SECOND_LEVEL_IDENTIFIER 276
00026 # define FOURTH_LEVEL_ASTERISK 277
00027 # define THIRD_LEVEL_ASTERISK 278
00028 # define SECOND_LEVEL_ASTERISK 279
00029 # define IDENTIFIER_BODY 280
00030 # define DELIMITED_IDENTIFIER 281
00031 # define MULTI_HOST_IDENTIFIER 282
00032 # define NOT_EQUALS_OPERATOR 283
00033 # define GREATER_THAN_OR_EQUALS_OPERATOR 284
00034 # define LESS_THAN_OR_EQUALS_OPERATOR 285
00035 # define CONCATENATION_OPERATOR 286
00036 # define RW_ABSOLUTE 287
00037 # define RW_ACTION 288
00038 # define RW_ADD 289
00039 # define RW_ALLOCATE 290
00040 # define RW_ALL 291
00041 # define RW_ALTER 292
00042 # define RW_AND 293
00043 # define RW_ANY 294
00044 # define RW_ASC 295
00045 # define RW_ASSERTION 296
00046 # define RW_AS 297
00047 # define RW_AT 298
00048 # define RW_AUTHORIZATION 299
00049 # define RW_AVG 300
00050 # define RW_BETWEEN 301
00051 # define RW_BIT_LENGTH 302
00052 # define RW_BIT 303
00053 # define RW_BOTH 304
00054 # define RW_BY 305
00055 # define RW_CASCADED 306
00056 # define RW_CASCADE 307
00057 # define RW_CASE 308
00058 # define RW_CAST 309
00059 # define RW_CATALOG 310
00060 # define RW_CHARACTER_LENGTH 311
00061 # define RW_CHARACTER 312
00062 # define RW_CHAR_LENGTH 313
00063 # define RW_CHAR 314
00064 # define RW_CHECK 315
00065 # define RW_CLOSE 316
00066 # define RW_COALESCE 317
00067 # define RW_COLLATE 318
00068 # define RW_COLLATION 319
00069 # define RW_COLUMN 320
00070 # define RW_COMMIT 321
00071 # define RW_CONDITION 322
00072 # define RW_CONNECTION 323
00073 # define RW_CONNECT 324
00074 # define RW_CONSTRAINTS 325
00075 # define RW_CONSTRAINT 326
00076 # define RW_CONTINUE 327
00077 # define RW_CONVERT 328
00078 # define RW_CORRESPONDING 329
00079 # define RW_COUNT 330
00080 # define RW_CREATE 331
00081 # define RW_CROSS 332
00082 # define RW_CURRENT_DATE 333
00083 # define RW_CURRENT_TIMESTAMP 334
00084 # define RW_CURRENT_TIME 335
00085 # define RW_CURRENT_USER 336
00086 # define RW_CURRENT 337
00087 # define RW_CURSOR 338
00088 # define RW_DATE 339
00089 # define RW_DAY 340
00090 # define RW_DEALLOCATE 341
00091 # define RW_DECIMAL 342
00092 # define RW_DECLARE 343
00093 # define RW_DEC 344
00094 # define RW_DEFAULT 345
00095 # define RW_DEFERRABLE 346
00096 # define RW_DEFERRED 347
00097 # define RW_DELETE 348
00098 # define RW_DESCRIBE 349
00099 # define RW_DESCRIPTOR 350
00100 # define RW_DESC 351
00101 # define RW_DIAGNOSTICS 352
00102 # define RW_DISCONNECT 353
00103 # define RW_DISTINCT 354
00104 # define RW_DOMAIN 355
00105 # define RW_DOUBLE 356
00106 # define RW_DROP 357
00107 # define RW_ELSE 358
00108 # define RW_END 359
00109 # define RW_ESCAPE 360
00110 # define RW_EXCEPTION 361
00111 # define RW_EXCEPT 362
00112 # define RW_EXECUTE 363
00113 # define RW_EXISTS 364
00114 # define RW_EXTRACT 365
00115 # define RW_FALSE 366
00116 # define RW_FETCH 367
00117 # define RW_FIRST 368
00118 # define RW_FLOAT 369
00119 # define RW_FOREIGN 370
00120 # define RW_FOR 371
00121 # define RW_FOUND 372
00122 # define RW_FROM 373
00123 # define RW_FULL 374
00124 # define RW_GET 375
00125 # define RW_GLOBAL 376
00126 # define RW_GOTO 377
00127 # define RW_GO 378
00128 # define RW_GRANT 379
00129 # define RW_GROUP 380
00130 # define RW_HAVING 381
00131 # define RW_HOUR 382
00132 # define RW_IMMEDIATE 383
00133 # define RW_INDICATOR 384
00134 # define RW_INITIALLY 385
00135 # define RW_INNER 386
00136 # define RW_INPUT 387
00137 # define RW_INSENSITIVE 388
00138 # define RW_INSERT 389
00139 # define RW_INTEGER 390
00140 # define RW_INTERSECT 391
00141 # define RW_INTERVAL 392
00142 # define RW_INTO 393
00143 # define RW_INT 394
00144 # define RW_IN 395
00145 # define RW_ISOLATION 396
00146 # define RW_IS 397
00147 # define RW_JOIN 398
00148 # define RW_KEY 399
00149 # define RW_LAST 400
00150 # define RW_LEADING 401
00151 # define RW_LEFT 402
00152 # define RW_LEVEL 403
00153 # define RW_LIKE 404
00154 # define RW_LOCAL 405
00155 # define RW_LOWER 406
00156 # define RW_MATCH 407
00157 # define RW_MAX 408
00158 # define RW_MIN 409
00159 # define RW_MINUTE 410
00160 # define RW_MONTH 411
00161 # define RW_NAMES 412
00162 # define RW_NATIONAL 413
00163 # define RW_NATURAL 414
00164 # define RW_NCHAR 415
00165 # define RW_NEXT 416
00166 # define RW_NOT_LIKE 417
00167 # define RW_NOT 418
00168 # define RW_NO 419
00169 # define RW_NULLIF 420
00170 # define RW_NULL 421
00171 # define RW_NUMERIC 422
00172 # define RW_OCTET_LENGTH 423
00173 # define RW_OF 424
00174 # define RW_ONLY 425
00175 # define RW_ON 426
00176 # define RW_OPEN 427
00177 # define RW_OPTION 428
00178 # define RW_ORDER 429
00179 # define RW_OR 430
00180 # define RW_OUTER 431
00181 # define RW_OUTPUT 432
00182 # define RW_OVERLAPS 433
00183 # define RW_PARTIAL 434
00184 # define RW_POSITION 435
00185 # define RW_PRECISION 436
00186 # define RW_PREPARE 437
00187 # define RW_PRESERVE 438
00188 # define RW_PRIMARY 439
00189 # define RW_PRIOR 440
00190 # define RW_PRIVILEGES 441
00191 # define RW_PUBLIC 442
00192 # define RW_READ 443
00193 # define RW_REAL 444
00194 # define RW_REFERENCES 445
00195 # define RW_RELATIVE 446
00196 # define RW_RESTRICT 447
00197 # define RW_REVOKE 448
00198 # define RW_RIGHT 449
00199 # define RW_ROLLBACK 450
00200 # define RW_ROWS 451
00201 # define RW_SCHEMA 452
00202 # define RW_SCROLL 453
00203 # define RW_SECOND 454
00204 # define RW_SELECT 455
00205 # define RW_SESSION_USER 456
00206 # define RW_SESSION 457
00207 # define RW_SET 458
00208 # define RW_SIZE 459
00209 # define RW_SMALLINT 460
00210 # define RW_SOME 461
00211 # define RW_SQLERROR 462
00212 # define RW_SQL 463
00213 # define RW_SUBSTRING 464
00214 # define RW_SUM 465
00215 # define RW_SYSTEM_USER 466
00216 # define RW_TABLE 467
00217 # define RW_TEMPORARY 468
00218 # define RW_THEN 469
00219 # define RW_THROW 470
00220 # define RW_TIMESTAMP 471
00221 # define RW_TIMEZONE_HOUR 472
00222 # define RW_TIMEZONE_MINUTE 473
00223 # define RW_TIME 474
00224 # define RW_TO 475
00225 # define RW_TRAILING 476
00226 # define RW_TRANSACTION 477
00227 # define RW_TRANSLATE 478
00228 # define RW_TRANSLATION 479
00229 # define RW_TRIM 480
00230 # define RW_TRUE 481
00231 # define RW_UNION 482
00232 # define RW_UNIQUE 483
00233 # define RW_UNKNOWN 484
00234 # define RW_UPDATE 485
00235 # define RW_UPPER 486
00236 # define RW_USAGE 487
00237 # define RW_USER 488
00238 # define RW_USING 489
00239 # define RW_VALUES 490
00240 # define RW_VALUE 491
00241 # define RW_VARCHAR 492
00242 # define RW_VARYING 493
00243 # define RW_VIEW 494
00244 # define RW_WHENEVER 495
00245 # define RW_WHEN 496
00246 # define RW_WHERE 497
00247 # define RW_WITH 498
00248 # define RW_WORK 499
00249 # define RW_WRITE 500
00250 # define RW_YEAR 501
00251 # define RW_ZONE 502
00252 # define NRW_CATALOG_NAME 503
00253 # define NRW_CHARACTER_SET_CATALOG 504
00254 # define NRW_CHARACTER_SET_NAME 505
00255 # define NRW_CHARACTER_SET_SCHEMA 506
00256 # define NRW_CLASS_ORIGIN 507
00257 # define NRW_COLLATION_CATALOG 508
00258 # define NRW_COLLATION_NAME 509
00259 # define NRW_COLLATION_SCHEMA 510
00260 # define NRW_COLUMN_NAME 511
00261 # define NRW_COMMAND_FUNCTION 512
00262 # define NRW_COMMITTED 513
00263 # define NRW_CONDITION_NUMBER 514
00264 # define NRW_CONNECTION_NAME 515
00265 # define NRW_CONSTRAINT_CATALOG 516
00266 # define NRW_CONSTRAINT_NAME 517
00267 # define NRW_CONSTRAINT_SCHEMA 518
00268 # define NRW_CURSOR_NAME 519
00269 # define NRW_DATA 520
00270 # define NRW_DATETIME_INTERVAL_CODE 521
00271 # define NRW_DATETIME_INTERVAL_PRECISION 522
00272 # define NRW_DYNAMIC_FUNCTION 523
00273 # define NRW_LENGTH 524
00274 # define NRW_MESSAGE_LENGTH 525
00275 # define NRW_MESSAGE_OCTET_LENGTH 526
00276 # define NRW_MESSAGE_TEXT 527
00277 # define NRW_MORE 528
00278 # define NRW_NAME 529
00279 # define NRW_NULLABLE 530
00280 # define NRW_NUMBER 531
00281 # define NRW_REPEATABLE 532
00282 # define NRW_RETURNED_LENGTH 533
00283 # define NRW_RETURNED_OCTET_LENGTH 534
00284 # define NRW_RETURNED_SQLSTATE 535
00285 # define NRW_ROW_COUNT 536
00286 # define NRW_SCALE 537
00287 # define NRW_SCHEMA_NAME 538
00288 # define NRW_SERIALIZABLE 539
00289 # define NRW_SERVER_NAME 540
00290 # define NRW_SUBCLASS_ORIGIN 541
00291 # define NRW_TABLE_NAME 542
00292 # define NRW_TYPE 543
00293 # define NRW_UNCOMMITTED 544
00294 # define NRW_UNNAMED 545
00295 # define LEFT_PAREN 546
00296 # define RIGHT_PAREN 547
00297 # define ASTERISK 548
00298 # define PLUS_SIGN 549
00299 # define COMMA 550
00300 # define MINUS_SIGN 551
00301 # define SOLIDUS 552
00302 # define SEMICOLON 553
00303 # define LESS_THAN_OPERATOR 554
00304 # define EQUALS_OPERATOR 555
00305 # define GREATER_THAN_OPERATOR 556
00306 # define QUESTION_MARK 557
00307
00308 #line 177 "uesql_parser.yy"
00309
00310
00311 #include <cstdlib>
00312 #include "application.hh"
00313 #include "defs.hh"
00314 #include "stack_value.hh"
00315
00316
00317
00318
00319
00320
00321 extern TApplication* ptApplication;
00322
00323
00324
00325
00326
00327
00329 int yylex (void);
00330
00332 int yyparse (void);
00333
00335 void yyerror (const char*);
00336
00337 #ifndef YYSTYPE
00338 # define YYSTYPE int
00339 # define YYSTYPE_IS_TRIVIAL 1
00340 #endif
00341 #ifndef YYDEBUG
00342 # define YYDEBUG 1
00343 #endif
00344
00345
00346
00347 #define YYFINAL 1533
00348 #define YYFLAG -32768
00349 #define YYNTBASE 304
00350
00351
00352 #define YYTRANSLATE(x) ((unsigned)(x) <= 557 ? yytranslate[x] : 691)
00353
00354
00355 static const short yytranslate[] =
00356 {
00357 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00358 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00359 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00360 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00361 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00362 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00363 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00364 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00365 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00366 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00367 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00368 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00369 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00370 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00371 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00372 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00373 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00374 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00375 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00376 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00377 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00378 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00379 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00380 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00381 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00382 2, 2, 2, 2, 2, 2, 1, 3, 4, 5,
00383 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
00384 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
00385 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
00386 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
00387 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
00388 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
00389 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
00390 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
00391 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
00392 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
00393 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
00394 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
00395 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
00396 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
00397 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
00398 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
00399 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
00400 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
00401 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
00402 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
00403 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
00404 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
00405 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
00406 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
00407 246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
00408 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
00409 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
00410 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
00411 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
00412 296, 297, 298, 299, 300, 301, 302, 303
00413 };
00414
00415 #if YYDEBUG
00416 static const short yyprhs[] =
00417 {
00418 0, 0, 3, 4, 8, 11, 13, 17, 19, 22,
00419 24, 26, 28, 31, 35, 37, 40, 42, 44, 46,
00420 48, 51, 54, 56, 58, 60, 62, 64, 66, 68,
00421 70, 72, 76, 78, 80, 84, 86, 90, 92, 94,
00422 96, 98, 100, 104, 106, 110, 114, 116, 118, 120,
00423 122, 124, 126, 128, 130, 132, 134, 136, 138, 140,
00424 142, 144, 146, 148, 150, 156, 158, 163, 165, 167,
00425 172, 176, 180, 184, 187, 189, 191, 193, 197, 199,
00426 201, 205, 211, 215, 219, 221, 223, 226, 228, 231,
00427 233, 238, 243, 247, 249, 251, 253, 257, 259, 263,
00428 265, 267, 269, 272, 275, 279, 282, 285, 288, 290,
00429 294, 296, 303, 308, 317, 321, 323, 327, 329, 331,
00430 333, 335, 340, 345, 347, 350, 352, 358, 362, 370,
00431 377, 383, 387, 389, 392, 399, 405, 410, 412, 414,
00432 416, 418, 421, 424, 428, 430, 433, 441, 448, 455,
00433 461, 465, 468, 471, 473, 477, 482, 485, 489, 493,
00434 495, 499, 502, 505, 507, 509, 511, 513, 515, 517,
00435 519, 521, 523, 525, 527, 529, 531, 533, 535, 537,
00436 539, 541, 543, 545, 547, 549, 551, 553, 555, 557,
00437 559, 560, 562, 564, 566, 568, 570, 572, 574, 576,
00438 578, 580, 582, 584, 586, 588, 590, 592, 594, 596,
00439 598, 600, 602, 604, 606, 617, 625, 629, 631, 641,
00440 648, 651, 653, 656, 659, 662, 666, 672, 677, 682,
00441 687, 691, 694, 697, 700, 705, 707, 709, 711, 713,
00442 716, 718, 727, 735, 743, 750, 758, 765, 772, 778,
00443 786, 793, 800, 806, 813, 819, 825, 830, 834, 837,
00444 840, 842, 847, 860, 872, 881, 891, 900, 906, 908,
00445 910, 912, 917, 922, 925, 930, 934, 937, 940, 945,
00446 949, 951, 953, 957, 960, 965, 967, 969, 971, 973,
00447 975, 980, 987, 993, 998, 1002, 1005, 1007, 1009, 1011,
00448 1016, 1018, 1020, 1023, 1026, 1028, 1030, 1034, 1038, 1040,
00449 1043, 1046, 1049, 1054, 1056, 1059, 1061, 1065, 1068, 1071,
00450 1073, 1075, 1077, 1079, 1082, 1084, 1086, 1088, 1090, 1092,
00451 1094, 1096, 1099, 1101, 1107, 1112, 1117, 1121, 1127, 1132,
00452 1137, 1141, 1146, 1150, 1154, 1157, 1162, 1166, 1170, 1173,
00453 1177, 1180, 1183, 1185, 1188, 1190, 1192, 1194, 1197, 1200,
00454 1205, 1210, 1217, 1223, 1228, 1232, 1234, 1238, 1240, 1242,
00455 1247, 1249, 1251, 1254, 1256, 1261, 1265, 1269, 1271, 1274,
00456 1276, 1278, 1280, 1282, 1284, 1286, 1289, 1293, 1296, 1298,
00457 1302, 1305, 1308, 1310, 1313, 1316, 1319, 1322, 1324, 1328,
00458 1330, 1332, 1334, 1339, 1341, 1346, 1348, 1353, 1355, 1357,
00459 1359, 1361, 1363, 1367, 1369, 1374, 1376, 1378, 1383, 1385,
00460 1390, 1392, 1399, 1404, 1406, 1408, 1410, 1412, 1414, 1416,
00461 1418, 1420, 1422, 1424, 1426, 1430, 1432, 1436, 1439, 1441,
00462 1446, 1450, 1452, 1454, 1456, 1458, 1460, 1464, 1466, 1470,
00463 1472, 1474, 1480, 1486, 1491, 1496, 1501, 1505, 1508, 1511,
00464 1516, 1518, 1520, 1522, 1524, 1526, 1531, 1535, 1541, 1545,
00465 1551, 1555, 1557, 1559, 1561, 1566, 1570, 1572, 1576, 1580,
00466 1582, 1589, 1595, 1599, 1601, 1603, 1605, 1607, 1609, 1611,
00467 1613, 1615, 1617, 1619, 1621, 1623, 1625, 1627, 1629, 1631,
00468 1633, 1635, 1637, 1641, 1643, 1645, 1647, 1653, 1658, 1663,
00469 1667, 1673, 1678, 1683, 1687, 1689, 1691, 1693, 1699, 1704,
00470 1709, 1713, 1715, 1717, 1719, 1723, 1725, 1727, 1729, 1732,
00471 1738, 1740, 1742, 1747, 1751, 1755, 1757, 1759, 1761, 1763,
00472 1765, 1767, 1769, 1772, 1774, 1777, 1779, 1782, 1786, 1790,
00473 1792, 1795, 1797, 1800, 1802, 1804, 1808, 1813, 1820, 1826,
00474 1832, 1838, 1843, 1848, 1853, 1857, 1859, 1861, 1864, 1869,
00475 1871, 1874, 1876, 1878, 1880, 1882, 1884, 1886, 1890, 1892,
00476 1895, 1900, 1904, 1908, 1912, 1915, 1918, 1921, 1923, 1926,
00477 1930, 1932, 1934, 1938, 1940, 1944, 1946, 1948, 1950, 1952,
00478 1954, 1956, 1958, 1962, 1966, 1973, 1975, 1979, 1983, 1987,
00479 1990, 1992, 1995, 1997, 1999, 2001, 2003, 2005, 2009, 2013,
00480 2017, 2019, 2022, 2024, 2026, 2028, 2031, 2033, 2037, 2039,
00481 2041, 2043, 2045, 2049, 2052, 2054, 2056, 2058, 2060, 2062,
00482 2066, 2068, 2070, 2072, 2074, 2078, 2082, 2084, 2088, 2092,
00483 2095, 2097, 2099, 2101, 2103, 2105, 2107, 2109, 2111, 2113,
00484 2115, 2117, 2119, 2123, 2125, 2132, 2134, 2136, 2138, 2140,
00485 2142, 2144, 2148, 2150, 2157, 2162, 2164, 2166, 2169, 2171,
00486 2177, 2182, 2185, 2187, 2192, 2196, 2201, 2206, 2209, 2211,
00487 2213, 2215, 2217, 2219, 2221, 2223, 2225, 2227, 2232, 2234,
00488 2239, 2241, 2243, 2245, 2247, 2249, 2251, 2253, 2255, 2264,
00489 2271, 2276, 2281, 2288, 2295, 2300, 2305, 2309, 2313, 2316,
00490 2318, 2320, 2322, 2324, 2326, 2328, 2330, 2339, 2346, 2348,
00491 2350, 2352, 2354, 2356, 2363, 2365, 2367, 2369, 2374, 2379,
00492 2384, 2389, 2396, 2398, 2400, 2402, 2404, 2406, 2408, 2413,
00493 2415, 2421, 2426, 2428, 2430, 2432, 2434, 2436, 2438, 2440,
00494 2442, 2444, 2446, 2448, 2455, 2461, 2465, 2468, 2470, 2477,
00495 2483, 2487, 2490, 2492, 2494, 2496, 2500, 2502, 2504, 2506,
00496 2508, 2510, 2512, 2514, 2516, 2518, 2520, 2522, 2524, 2526,
00497 2528, 2530, 2532, 2534, 2536, 2538, 2540, 2542, 2544, 2546,
00498 2548, 2550, 2555, 2557, 2562, 2564, 2570, 2576, 2581, 2587,
00499 2590, 2596, 2599, 2604, 2606, 2613, 2620, 2626, 2632, 2637,
00500 2639, 2641, 2643, 2650, 2655, 2657, 2664, 2669, 2671, 2678,
00501 2683, 2685, 2687, 2689, 2691, 2696, 2698, 2700, 2703, 2705,
00502 2707, 2709, 2711, 2719, 2724, 2729, 2731, 2739, 2744, 2749,
00503 2751, 2753, 2755, 2757, 2760, 2762, 2764, 2766, 2768, 2770,
00504 2772, 2774, 2776, 2778, 2780, 2782, 2784, 2786, 2788, 2790,
00505 2792, 2794, 2796, 2798, 2800, 2802, 2804, 2807, 2809, 2812,
00506 2814, 2817, 2819, 2821, 2823, 2825, 2827, 2829, 2831, 2833,
00507 2835, 2837, 2839, 2841, 2843, 2845, 2847, 2849, 2851, 2853,
00508 2855, 2857, 2860, 2862, 2864, 2866, 2868, 2870, 2872, 2874,
00509 2876, 2878, 2880, 2882, 2885, 2888, 2891, 2896, 2900, 2902,
00510 2904, 2906, 2908, 2910, 2912, 2914, 2916, 2918, 2920, 2922,
00511 2924, 2926, 2928, 2930, 2932, 2934, 2936, 2938, 2940, 2942,
00512 2944, 2946, 2948, 2950, 2952, 2954, 2956, 2958, 2960, 2962,
00513 2964, 2966, 2968, 2970, 2972, 2974, 2976, 2978, 2980, 2982,
00514 2984, 2986, 2988
00515 };
00516 static const short yyrhs[] =
00517 {
00518 304, 305, 0, 0, 3, 315, 4, 0, 306, 316,
00519 0, 316, 0, 241, 308, 309, 0, 208, 0, 164,
00520 118, 0, 73, 0, 310, 0, 312, 0, 123, 311,
00521 0, 124, 221, 311, 0, 314, 0, 216, 313, 0,
00522 28, 0, 690, 0, 690, 0, 306, 0, 317, 318,
00523 0, 1, 318, 0, 1, 0, 375, 0, 330, 0,
00524 307, 0, 383, 0, 299, 0, 6, 0, 7, 0,
00525 8, 0, 121, 98, 321, 0, 322, 0, 326, 0,
00526 322, 296, 323, 0, 323, 0, 638, 301, 324, 0,
00527 277, 0, 274, 0, 258, 0, 269, 0, 282, 0,
00528 325, 296, 327, 0, 327, 0, 107, 329, 325, 0,
00529 638, 301, 328, 0, 260, 0, 281, 0, 253, 0,
00530 287, 0, 286, 0, 261, 0, 262, 0, 264, 0,
00531 263, 0, 249, 0, 284, 0, 288, 0, 257, 0,
00532 265, 0, 273, 0, 271, 0, 272, 0, 636, 0,
00533 89, 331, 68, 243, 477, 0, 637, 0, 204, 220,
00534 248, 333, 0, 549, 0, 151, 0, 204, 203, 45,
00535 633, 0, 204, 158, 633, 0, 204, 198, 633, 0,
00536 204, 56, 633, 0, 99, 339, 0, 341, 0, 37,
00537 0, 83, 0, 204, 69, 341, 0, 91, 0, 673,
00538 0, 70, 221, 343, 0, 674, 43, 673, 234, 675,
00539 0, 674, 43, 673, 0, 674, 234, 675, 0, 674,
00540 0, 91, 0, 196, 245, 0, 196, 0, 67, 245,
00541 0, 67, 0, 204, 71, 348, 93, 0, 204, 71,
00542 348, 129, 0, 347, 296, 669, 0, 669, 0, 37,
00543 0, 347, 0, 349, 296, 351, 0, 351, 0, 204,
00544 223, 349, 0, 353, 0, 352, 0, 355, 0, 189,
00545 171, 0, 189, 246, 0, 142, 149, 354, 0, 189,
00546 290, 0, 189, 259, 0, 278, 189, 0, 285, 0,
00547 98, 205, 356, 0, 636, 0, 231, 660, 204, 359,
00548 243, 477, 0, 231, 660, 204, 359, 0, 231, 660,
00549 204, 359, 243, 83, 170, 668, 0, 359, 296, 360,
00550 0, 360, 0, 362, 301, 361, 0, 575, 0, 547,
00551 0, 91, 0, 666, 0, 135, 139, 660, 364, 0,
00552 292, 365, 293, 509, 0, 509, 0, 91, 236, 0,
00553 632, 0, 94, 119, 660, 243, 477, 0, 94, 119,
00554 660, 0, 94, 119, 660, 243, 83, 170, 668, 0,
00555 201, 627, 521, 139, 369, 541, 0, 201, 521, 139,
00556 369, 541, 0, 369, 296, 637, 0, 637, 0, 62,
00557 668, 0, 113, 372, 119, 668, 139, 373, 0, 113,
00558 119, 668, 139, 373, 0, 113, 668, 139, 373, 0,
00559 162, 0, 186, 0, 114, 0, 146, 0, 33, 636,
00560 0, 192, 636, 0, 373, 296, 637, 0, 637, 0,
00561 173, 668, 0, 89, 668, 134, 199, 84, 117, 376,
00562 0, 89, 668, 134, 84, 117, 376, 0, 89, 668,
00563 199, 84, 117, 376, 0, 89, 668, 84, 117, 376,
00564 0, 509, 378, 377, 0, 509, 378, 0, 509, 377,
00565 0, 509, 0, 117, 189, 171, 0, 117, 231, 170,
00566 632, 0, 117, 231, 0, 175, 51, 379, 0, 379,
00567 296, 380, 0, 380, 0, 381, 463, 382, 0, 381,
00568 463, 0, 381, 382, 0, 381, 0, 666, 0, 13,
00569 0, 41, 0, 97, 0, 384, 0, 387, 0, 389,
00570 0, 390, 0, 391, 0, 392, 0, 385, 0, 386,
00571 0, 456, 0, 449, 0, 411, 0, 395, 0, 408,
00572 0, 398, 0, 453, 0, 423, 0, 414, 0, 410,
00573 0, 393, 0, 405, 0, 400, 0, 397, 0, 0,
00574 374, 0, 371, 0, 370, 0, 368, 0, 388, 0,
00575 366, 0, 367, 0, 363, 0, 358, 0, 357, 0,
00576 350, 0, 346, 0, 345, 0, 344, 0, 342, 0,
00577 340, 0, 338, 0, 337, 0, 336, 0, 335, 0,
00578 334, 0, 332, 0, 320, 0, 194, 125, 174, 117,
00579 464, 172, 396, 119, 394, 454, 0, 194, 464, 172,
00580 396, 119, 394, 454, 0, 394, 296, 468, 0, 468,
00581 0, 125, 464, 172, 396, 221, 394, 244, 125, 174,
00582 0, 125, 464, 172, 396, 221, 394, 0, 213, 660,
00583 0, 660, 0, 101, 661, 0, 65, 670, 0, 225,
00584 671, 0, 103, 42, 669, 0, 77, 42, 669, 399,
00585 461, 0, 77, 42, 669, 399, 0, 61, 292, 477,
00586 293, 0, 103, 101, 661, 454, 0, 103, 72, 669,
00587 0, 35, 409, 0, 103, 91, 0, 204, 441, 0,
00588 38, 101, 661, 406, 0, 404, 0, 403, 0, 402,
00589 0, 401, 0, 407, 409, 0, 409, 0, 77, 101,
00590 661, 43, 642, 441, 407, 463, 0, 77, 101, 661,
00591 642, 441, 407, 463, 0, 77, 101, 661, 43, 642,
00592 441, 407, 0, 77, 101, 661, 642, 441, 407, 0,
00593 77, 101, 661, 43, 642, 407, 463, 0, 77, 101,
00594 661, 642, 407, 463, 0, 77, 101, 661, 43, 642,
00595 407, 0, 77, 101, 661, 642, 407, 0, 77, 101,
00596 661, 43, 642, 441, 463, 0, 77, 101, 661, 642,
00597 441, 463, 0, 77, 101, 661, 43, 642, 441, 0,
00598 77, 101, 661, 642, 441, 0, 77, 101, 661, 43,
00599 642, 463, 0, 77, 101, 661, 642, 463, 0, 77,
00600 101, 661, 43, 642, 0, 77, 101, 661, 642, 0,
00601 460, 425, 461, 0, 460, 425, 0, 425, 461, 0,
00602 425, 0, 103, 240, 660, 454, 0, 77, 240, 660,
00603 292, 413, 293, 43, 509, 244, 412, 61, 174, 0,
00604 77, 240, 660, 292, 413, 293, 43, 509, 244, 61,
00605 174, 0, 77, 240, 660, 292, 413, 293, 43, 509,
00606 0, 77, 240, 660, 43, 509, 244, 412, 61, 174,
00607 0, 77, 240, 660, 43, 509, 244, 61, 174, 0,
00608 77, 240, 660, 43, 509, 0, 52, 0, 151, 0,
00609 632, 0, 103, 213, 660, 454, 0, 103, 72, 669,
00610 454, 0, 35, 439, 0, 103, 66, 666, 454, 0,
00611 103, 666, 454, 0, 103, 91, 0, 204, 441, 0,
00612 38, 66, 666, 421, 0, 38, 666, 421, 0, 419,
00613 0, 418, 0, 35, 66, 444, 0, 35, 444, 0,
00614 38, 213, 660, 424, 0, 422, 0, 420, 0, 417,
00615 0, 416, 0, 415, 0, 61, 292, 477, 293, 0,
00616 116, 145, 292, 429, 293, 427, 0, 191, 430, 153,
00617 428, 432, 0, 191, 430, 153, 428, 0, 191, 430,
00618 432, 0, 191, 430, 0, 120, 0, 180, 0, 431,
00619 0, 660, 292, 431, 293, 0, 660, 0, 632, 0,
00620 433, 434, 0, 434, 433, 0, 433, 0, 434, 0,
00621 172, 231, 435, 0, 172, 94, 435, 0, 53, 0,
00622 204, 167, 0, 204, 91, 0, 165, 34, 0, 437,
00623 292, 438, 293, 0, 229, 0, 185, 145, 0, 632,
00624 0, 460, 440, 461, 0, 460, 440, 0, 440, 461,
00625 0, 440, 0, 436, 0, 426, 0, 425, 0, 91,
00626 442, 0, 676, 0, 595, 0, 234, 0, 82, 0,
00627 202, 0, 212, 0, 167, 0, 443, 445, 0, 445,
00628 0, 666, 642, 441, 443, 463, 0, 666, 642, 441,
00629 443, 0, 666, 642, 443, 463, 0, 666, 642, 443,
00630 0, 666, 661, 441, 443, 463, 0, 666, 661, 441,
00631 443, 0, 666, 661, 443, 463, 0, 666, 661, 443,
00632 0, 666, 642, 441, 463, 0, 666, 642, 441, 0,
00633 666, 642, 463, 0, 666, 642, 0, 666, 661, 441,
00634 463, 0, 666, 661, 441, 0, 666, 661, 463, 0,
00635 666, 661, 0, 460, 446, 461, 0, 460, 446, 0,
00636 446, 461, 0, 446, 0, 164, 167, 0, 437, 0,
00637 427, 0, 425, 0, 122, 214, 0, 151, 214, 0,
00638 172, 67, 94, 197, 0, 172, 67, 184, 197, 0,
00639 77, 447, 213, 660, 451, 448, 0, 77, 447, 213,
00640 660, 451, 0, 77, 213, 660, 451, 0, 450, 296,
00641 452, 0, 452, 0, 292, 450, 293, 0, 444, 0,
00642 439, 0, 103, 198, 662, 454, 0, 53, 0, 193,
00643 0, 455, 459, 0, 459, 0, 77, 198, 457, 455,
00644 0, 77, 198, 457, 0, 662, 45, 458, 0, 662,
00645 0, 45, 458, 0, 659, 0, 408, 0, 449, 0,
00646 411, 0, 395, 0, 398, 0, 72, 669, 0, 462,
00647 164, 92, 0, 462, 92, 0, 462, 0, 164, 92,
00648 462, 0, 164, 92, 0, 92, 462, 0, 92, 0,
00649 131, 93, 0, 131, 129, 0, 64, 670, 0, 37,
00650 187, 0, 465, 0, 465, 296, 466, 0, 466, 0,
00651 201, 0, 94, 0, 135, 292, 467, 293, 0, 135,
00652 0, 231, 292, 467, 293, 0, 231, 0, 191, 292,
00653 467, 293, 0, 191, 0, 233, 0, 632, 0, 188,
00654 0, 659, 0, 470, 221, 471, 0, 472, 0, 474,
00655 292, 476, 293, 0, 474, 0, 474, 0, 200, 292,
00656 475, 293, 0, 200, 0, 474, 292, 476, 293, 0,
00657 474, 0, 200, 292, 476, 296, 475, 293, 0, 200,
00658 292, 476, 293, 0, 200, 0, 474, 0, 200, 0,
00659 247, 0, 157, 0, 86, 0, 128, 0, 156, 0,
00660 13, 0, 13, 0, 478, 0, 477, 176, 478, 0,
00661 479, 0, 478, 39, 479, 0, 164, 480, 0, 480,
00662 0, 482, 143, 164, 481, 0, 482, 143, 481, 0,
00663 482, 0, 227, 0, 112, 0, 230, 0, 504, 0,
00664 292, 477, 293, 0, 641, 0, 484, 179, 485, 0,
00665 544, 0, 544, 0, 544, 153, 229, 180, 507, 0,
00666 544, 153, 229, 120, 507, 0, 544, 153, 229, 507,
00667 0, 544, 153, 180, 507, 0, 544, 153, 120, 507,
00668 0, 544, 153, 507, 0, 229, 507, 0, 110, 507,
00669 0, 544, 503, 490, 507, 0, 491, 0, 492, 0,
00670 37, 0, 207, 0, 40, 0, 544, 143, 164, 167,
00671 0, 544, 143, 167, 0, 495, 163, 496, 106, 497,
00672 0, 495, 163, 496, 0, 495, 150, 496, 106, 497,
00673 0, 495, 150, 496, 0, 563, 0, 563, 0, 563,
00674 0, 544, 164, 141, 499, 0, 544, 141, 499, 0,
00675 507, 0, 292, 500, 293, 0, 500, 296, 575, 0,
00676 575, 0, 544, 164, 47, 544, 39, 544, 0, 544,
00677 47, 544, 39, 544, 0, 544, 503, 544, 0, 301,
00678 0, 29, 0, 300, 0, 302, 0, 31, 0, 30,
00679 0, 502, 0, 501, 0, 498, 0, 494, 0, 493,
00680 0, 489, 0, 488, 0, 487, 0, 486, 0, 483,
00681 0, 508, 0, 508, 0, 508, 0, 292, 509, 293,
00682 0, 510, 0, 530, 0, 512, 0, 509, 228, 37,
00683 517, 511, 0, 509, 228, 37, 511, 0, 509, 228,
00684 517, 511, 0, 509, 228, 511, 0, 509, 108, 37,
00685 517, 511, 0, 509, 108, 37, 511, 0, 509, 108,
00686 517, 511, 0, 509, 108, 511, 0, 512, 0, 530,
00687 0, 514, 0, 511, 137, 37, 517, 513, 0, 511,
00688 137, 37, 513, 0, 511, 137, 517, 513, 0, 511,
00689 137, 513, 0, 514, 0, 530, 0, 515, 0, 292,
00690 510, 293, 0, 519, 0, 542, 0, 516, 0, 213,
00691 660, 0, 75, 51, 292, 518, 293, 0, 75, 0,
00692 632, 0, 201, 627, 521, 541, 0, 201, 521, 541,
00693 0, 520, 296, 522, 0, 522, 0, 294, 0, 520,
00694 0, 523, 0, 23, 0, 24, 0, 25, 0, 575,
00695 524, 0, 575, 0, 43, 666, 0, 666, 0, 127,
00696 477, 0, 126, 51, 527, 0, 527, 296, 528, 0,
00697 528, 0, 628, 463, 0, 628, 0, 243, 477, 0,
00698 531, 0, 532, 0, 292, 530, 293, 0, 629, 78,
00699 144, 629, 0, 629, 160, 536, 144, 629, 533, 0,
00700 629, 160, 536, 144, 629, 0, 629, 160, 144, 629,
00701 533, 0, 629, 536, 144, 629, 533, 0, 629, 160,
00702 144, 629, 0, 629, 536, 144, 629, 0, 629, 144,
00703 629, 533, 0, 629, 144, 629, 0, 534, 0, 535,
00704 0, 172, 477, 0, 235, 292, 538, 293, 0, 132,
00705 0, 537, 177, 0, 537, 0, 228, 0, 148, 0,
00706 195, 0, 120, 0, 632, 0, 539, 296, 629, 0,
00707 629, 0, 119, 539, 0, 540, 529, 526, 525, 0,
00708 540, 529, 526, 0, 540, 529, 525, 0, 540, 526,
00709 525, 0, 540, 529, 0, 540, 526, 0, 540, 525,
00710 0, 540, 0, 236, 543, 0, 543, 296, 544, 0,
00711 544, 0, 546, 0, 292, 545, 293, 0, 506, 0,
00712 545, 296, 546, 0, 546, 0, 575, 0, 547, 0,
00713 548, 0, 167, 0, 91, 0, 550, 0, 553, 295,
00714 554, 0, 553, 297, 554, 0, 292, 556, 297, 557,
00715 293, 469, 0, 551, 0, 555, 294, 573, 0, 555,
00716 298, 573, 0, 572, 294, 551, 0, 682, 552, 0,
00717 552, 0, 576, 469, 0, 576, 0, 549, 0, 550,
00718 0, 550, 0, 557, 0, 549, 295, 557, 0, 556,
00719 295, 550, 0, 556, 297, 550, 0, 558, 0, 559,
00720 560, 0, 559, 0, 576, 0, 595, 0, 44, 561,
00721 0, 151, 0, 220, 248, 549, 0, 563, 0, 567,
00722 0, 564, 0, 565, 0, 563, 32, 565, 0, 566,
00723 463, 0, 566, 0, 576, 0, 599, 0, 568, 0,
00724 569, 0, 567, 32, 569, 0, 570, 0, 576, 0,
00725 599, 0, 572, 0, 571, 295, 572, 0, 571, 297,
00726 572, 0, 573, 0, 572, 294, 573, 0, 572, 298,
00727 573, 0, 682, 574, 0, 574, 0, 576, 0, 614,
00728 0, 571, 0, 562, 0, 556, 0, 549, 0, 634,
00729 0, 628, 0, 624, 0, 505, 0, 580, 0, 292,
00730 575, 293, 0, 577, 0, 55, 292, 578, 43, 579,
00731 293, 0, 575, 0, 167, 0, 661, 0, 642, 0,
00732 582, 0, 583, 0, 581, 296, 575, 0, 575, 0,
00733 166, 292, 575, 296, 575, 293, 0, 63, 292, 581,
00734 293, 0, 585, 0, 587, 0, 584, 588, 0, 588,
00735 0, 54, 591, 584, 590, 105, 0, 54, 591, 584,
00736 105, 0, 586, 589, 0, 589, 0, 54, 586, 590,
00737 105, 0, 54, 586, 105, 0, 242, 592, 215, 593,
00738 0, 242, 477, 215, 593, 0, 104, 593, 0, 575,
00739 0, 575, 0, 594, 0, 167, 0, 575, 0, 596,
00740 0, 597, 0, 598, 0, 79, 0, 81, 292, 653,
00741 293, 0, 81, 0, 80, 292, 654, 293, 0, 80,
00742 0, 600, 0, 610, 0, 601, 0, 602, 0, 603,
00743 0, 604, 0, 605, 0, 210, 292, 563, 119, 612,
00744 117, 613, 293, 0, 210, 292, 563, 119, 612, 293,
00745 0, 232, 292, 563, 293, 0, 152, 292, 563, 293,
00746 0, 74, 292, 563, 235, 672, 293, 0, 224, 292,
00747 563, 235, 671, 293, 0, 226, 292, 606, 293, 0,
00748 608, 609, 119, 607, 0, 608, 119, 607, 0, 609,
00749 119, 607, 0, 119, 607, 0, 607, 0, 563, 0,
00750 147, 0, 222, 0, 50, 0, 563, 0, 611, 0,
00751 210, 292, 567, 119, 612, 117, 613, 293, 0, 210,
00752 292, 567, 119, 612, 293, 0, 571, 0, 571, 0,
00753 615, 0, 620, 0, 616, 0, 181, 292, 563, 141,
00754 563, 293, 0, 617, 0, 618, 0, 619, 0, 59,
00755 292, 562, 293, 0, 57, 292, 562, 293, 0, 169,
00756 292, 562, 293, 0, 48, 292, 562, 293, 0, 111,
00757 292, 621, 119, 623, 293, 0, 473, 0, 622, 0,
00758 218, 0, 219, 0, 556, 0, 549, 0, 76, 292,
00759 294, 293, 0, 625, 0, 626, 292, 627, 575, 293,
00760 0, 626, 292, 575, 293, 0, 46, 0, 154, 0,
00761 155, 0, 211, 0, 76, 0, 100, 0, 37, 0,
00762 20, 0, 21, 0, 22, 0, 666, 0, 660, 43,
00763 667, 292, 631, 293, 0, 660, 667, 292, 631, 293,
00764 0, 660, 43, 667, 0, 660, 667, 0, 660, 0,
00765 630, 43, 667, 292, 631, 293, 0, 630, 667, 292,
00766 631, 293, 0, 630, 43, 667, 0, 630, 667, 0,
00767 530, 0, 507, 0, 632, 0, 632, 296, 666, 0,
00768 666, 0, 676, 0, 635, 0, 677, 0, 635, 0,
00769 639, 0, 640, 0, 234, 0, 82, 0, 202, 0,
00770 212, 0, 237, 0, 319, 0, 676, 0, 640, 0,
00771 319, 0, 303, 0, 319, 0, 319, 0, 643, 0,
00772 644, 0, 645, 0, 646, 0, 652, 0, 656, 0,
00773 58, 292, 649, 293, 0, 58, 0, 60, 292, 649,
00774 293, 0, 60, 0, 58, 239, 292, 649, 293, 0,
00775 60, 239, 292, 649, 293, 0, 238, 292, 649, 293,
00776 0, 159, 58, 292, 649, 293, 0, 159, 58, 0,
00777 159, 60, 292, 649, 293, 0, 159, 60, 0, 161,
00778 292, 649, 293, 0, 161, 0, 159, 58, 239, 292,
00779 649, 293, 0, 159, 60, 239, 292, 649, 293, 0,
00780 161, 239, 292, 649, 293, 0, 49, 239, 292, 649,
00781 293, 0, 49, 292, 649, 293, 0, 49, 0, 647,
00782 0, 648, 0, 168, 292, 650, 296, 651, 293, 0,
00783 168, 292, 650, 293, 0, 168, 0, 88, 292, 650,
00784 296, 651, 293, 0, 88, 292, 650, 293, 0, 88,
00785 0, 90, 292, 650, 296, 651, 293, 0, 90, 292,
00786 650, 293, 0, 90, 0, 136, 0, 140, 0, 206,
00787 0, 115, 292, 650, 293, 0, 115, 0, 190, 0,
00788 102, 182, 0, 13, 0, 13, 0, 13, 0, 85,
00789 0, 220, 292, 653, 293, 244, 220, 248, 0, 220,
00790 292, 653, 293, 0, 220, 244, 220, 248, 0, 220,
00791 0, 217, 292, 654, 293, 244, 220, 248, 0, 217,
00792 292, 654, 293, 0, 217, 244, 220, 248, 0, 217,
00793 0, 655, 0, 655, 0, 13, 0, 138, 469, 0,
00794 658, 0, 689, 0, 27, 0, 657, 0, 319, 0,
00795 664, 0, 664, 0, 22, 0, 663, 0, 657, 0,
00796 319, 0, 21, 0, 22, 0, 665, 0, 657, 0,
00797 657, 0, 657, 0, 657, 0, 319, 0, 692, 0,
00798 693, 0, 657, 0, 696, 636, 0, 636, 0, 696,
00799 636, 0, 636, 0, 696, 636, 0, 636, 0, 122,
00800 0, 151, 0, 664, 0, 664, 0, 664, 0, 664,
00801 0, 636, 0, 636, 0, 636, 0, 679, 0, 678,
00802 0, 680, 0, 678, 0, 9, 0, 10, 0, 11,
00803 0, 12, 0, 684, 0, 688, 0, 682, 680, 0,
00804 680, 0, 681, 0, 683, 0, 14, 0, 13, 0,
00805 295, 0, 297, 0, 15, 0, 685, 0, 686, 0,
00806 687, 0, 85, 16, 0, 220, 17, 0, 217, 18,
00807 0, 138, 682, 19, 469, 0, 138, 19, 469, 0,
00808 690, 0, 249, 0, 250, 0, 251, 0, 252, 0,
00809 253, 0, 254, 0, 255, 0, 256, 0, 257, 0,
00810 258, 0, 259, 0, 260, 0, 261, 0, 262, 0,
00811 263, 0, 264, 0, 265, 0, 266, 0, 267, 0,
00812 268, 0, 269, 0, 270, 0, 271, 0, 272, 0,
00813 273, 0, 274, 0, 275, 0, 276, 0, 277, 0,
00814 278, 0, 279, 0, 280, 0, 281, 0, 282, 0,
00815 283, 0, 284, 0, 285, 0, 286, 0, 287, 0,
00816 288, 0, 289, 0, 290, 0, 291, 0, 26, 0
00817 };
00818
00819 #endif
00820
00821 #if YYDEBUG
00822
00823 static const short yyrline[] =
00824 {
00825 0, 572, 574, 577, 646, 654, 669, 679, 685, 692,
00826 698, 704, 713, 720, 728, 732, 741, 743, 753, 766,
00827 774, 789, 790, 796, 798, 802, 803, 806, 810, 818,
00828 825, 844, 854, 862, 871, 880, 889, 900, 906, 911,
00829 916, 921, 931, 940, 949, 959, 969, 975, 980, 985,
00830 990, 995, 1000, 1005, 1010, 1015, 1020, 1025, 1030, 1035,
00831 1040, 1045, 1050, 1057, 1077, 1088, 1912, 1921, 1928, 1941,
00832 1960, 1979, 1998, 2017, 2026, 2033, 2038, 2051, 2060, 2066,
00833 2080, 2089, 2098, 2105, 2112, 2118, 2135, 2141, 2154, 2160,
00834 2177, 2185, 2197, 2206, 2215, 2221, 2239, 2248, 2257, 2267,
00835 2274, 2280, 2288, 2294, 2301, 2310, 2316, 2321, 2326, 2333,
00836 2342, 2361, 2370, 2385, 2398, 2407, 2416, 2426, 2433, 2439,
00837 2446, 2461, 2471, 2480, 2486, 2493, 2509, 2517, 2531, 2547,
00838 2559, 2571, 2580, 2595, 2611, 2622, 2630, 2639, 2645, 2650,
00839 2655, 2660, 2666, 2674, 2683, 2697, 2711, 2721, 2729, 2737,
00840 2746, 2757, 2765, 2774, 2783, 2789, 2795, 2802, 2811, 2820,
00841 2829, 2838, 2845, 2852, 2860, 2867, 2875, 2881, 2895, 2902,
00842 2908, 2914, 2920, 2934, 2942, 2944, 2951, 2953, 2954, 2955,
00843 2956, 2957, 2964, 2966, 2967, 2968, 2969, 2970, 2971, 2972,
00844 2975, 2976, 2977, 2978, 2979, 2980, 2983, 2985, 2986, 2987,
00845 2988, 2991, 2993, 2994, 2995, 2998, 3000, 3001, 3004, 3006,
00846 3007, 3008, 3009, 3042, 3056, 3067, 3089, 3098, 3107, 3118,
00847 3132, 3139, 3145, 3151, 3157, 3171, 3187, 3196, 3205, 3220,
00848 3236, 3251, 3266, 3280, 3295, 3305, 3307, 3308, 3309, 3321,
00849 3330, 3339, 3351, 3362, 3372, 3382, 3392, 3402, 3411, 3420,
00850 3430, 3440, 3449, 3458, 3467, 3476, 3483, 3492, 3501, 3508,
00851 3515, 3529, 3545, 3558, 3569, 3579, 3589, 3598, 3608, 3614,
00852 3621, 3637, 3653, 3669, 3684, 3692, 3707, 3721, 3736, 3744,
00853 3753, 3755, 3764, 3771, 3785, 3796, 3798, 3799, 3800, 3801,
00854 3810, 3825, 3835, 3844, 3851, 3858, 3866, 3872, 3879, 3889,
00855 3898, 3906, 3916, 3924, 3931, 3937, 3945, 3954, 3963, 3969,
00856 3974, 3979, 3992, 4003, 4009, 4016, 4032, 4041, 4048, 4055,
00857 4063, 4070, 4076, 4090, 4099, 4106, 4112, 4117, 4122, 4127,
00858 4132, 4148, 4157, 4166, 4177, 4186, 4195, 4203, 4214, 4224,
00859 4234, 4243, 4252, 4260, 4268, 4275, 4285, 4294, 4303, 4313,
00860 4322, 4329, 4336, 4344, 4350, 4356, 4362, 4380, 4386, 4396,
00861 4402, 4409, 4423, 4434, 4447, 4457, 4467, 4478, 4486, 4500,
00862 4510, 4516, 4532, 4541, 4553, 4562, 4570, 4578, 4584, 4592,
00863 4601, 4608, 4614, 4620, 4626, 4644, 4653, 4660, 4666, 4672,
00864 4678, 4683, 4689, 4696, 4702, 4715, 4730, 4736, 4745, 4754,
00865 4763, 4769, 4774, 4780, 4785, 4791, 4796, 4802, 4807, 4814,
00866 4824, 4830, 4844, 4852, 4860, 4868, 4876, 4883, 4889, 4896,
00867 4905, 4911, 4919, 4925, 4932, 4939, 4946, 4952, 4957, 4962,
00868 4967, 4974, 4983, 5004, 5011, 5020, 5027, 5036, 5043, 5051,
00869 5059, 5066, 5074, 5080, 5085, 5095, 5102, 5108, 5123, 5133,
00870 5143, 5159, 5168, 5176, 5184, 5192, 5200, 5216, 5232, 5247,
00871 5259, 5266, 5274, 5282, 5288, 5301, 5308, 5326, 5335, 5342,
00872 5350, 5359, 5368, 5377, 5392, 5400, 5409, 5417, 5426, 5435,
00873 5456, 5465, 5481, 5493, 5499, 5504, 5509, 5514, 5519, 5533,
00874 5535, 5536, 5537, 5538, 5539, 5540, 5541, 5542, 5543, 5557,
00875 5567, 5577, 5587, 5603, 5611, 5620, 5628, 5637, 5645, 5654,
00876 5662, 5671, 5679, 5688, 5698, 5706, 5715, 5723, 5732, 5740,
00877 5749, 5759, 5767, 5776, 5784, 5793, 5795, 5796, 5799, 5808,
00878 5816, 5823, 5850, 5860, 5873, 5883, 5893, 5900, 5910, 5917,
00879 5926, 5934, 5943, 5951, 5959, 5966, 5982, 5998, 6008, 6017,
00880 6026, 6034, 6049, 6065, 6072, 6079, 6094, 6110, 6120, 6128,
00881 6136, 6145, 6152, 6160, 6168, 6177, 6184, 6192, 6201, 6211,
00882 6217, 6223, 6229, 6236, 6242, 6247, 6254, 6273, 6282, 6291,
00883 6307, 6317, 6325, 6333, 6341, 6348, 6355, 6362, 6377, 6387,
00884 6396, 6412, 6420, 6427, 6436, 6445, 6454, 6461, 6467, 6475,
00885 6483, 6501, 6508, 6515, 6522, 6532, 6539, 6546, 6553, 6562,
00886 6570, 6578, 6586, 6594, 6603, 6612, 6627, 6634, 6641, 6648,
00887 6657, 6666, 6674, 6682, 6689, 6697, 6706, 6712, 6726, 6733,
00888 6741, 6748, 6756, 6766, 6774, 6782, 6789, 6797, 6804, 6812,
00889 6822, 6831, 6838, 6852, 6859, 6866, 6875, 6882, 6889, 6898,
00890 6906, 6914, 6921, 6935, 6942, 6948, 6955, 6964, 6971, 6977,
00891 6983, 6990, 6997, 7003, 7018, 7028, 7035, 7042, 7049, 7063,
00892 7070, 7081, 7090, 7105, 7113, 7122, 7124, 7130, 7139, 7148,
00893 7157, 7169, 7178, 7187, 7195, 7203, 7213, 7223, 7232, 7241,
00894 7250, 7257, 7264, 7279, 7285, 7290, 7297, 7305, 7313, 7320,
00895 7328, 7342, 7349, 7357, 7359, 7360, 7361, 7362, 7365, 7377,
00896 7388, 7395, 7403, 7415, 7427, 7436, 7445, 7452, 7459, 7465,
00897 7473, 7482, 7488, 7493, 7500, 7509, 7518, 7530, 7541, 7550,
00898 7565, 7567, 7568, 7577, 7589, 7591, 7592, 7595, 7602, 7610,
00899 7619, 7628, 7638, 7640, 7643, 7649, 7656, 7663, 7678, 7684,
00900 7692, 7701, 7710, 7716, 7721, 7726, 7731, 7738, 7744, 7768,
00901 7778, 7786, 7793, 7807, 7818, 7827, 7835, 7842, 7848, 7858,
00902 7867, 7875, 7882, 7890, 7900, 7910, 7919, 7934, 7941, 7949,
00903 7956, 7968, 7975, 7981, 7986, 7991, 7996, 8001, 8012, 8019,
00904 8031, 8044, 8053, 8061, 8074, 8092, 8094, 8095, 8096, 8097,
00905 8098, 8101, 8108, 8113, 8119, 8124, 8130, 8136, 8144, 8151,
00906 8156, 8162, 8167, 8173, 8178, 8184, 8190, 8198, 8205, 8211,
00907 8218, 8220, 8223, 8231, 8237, 8242, 8249, 8255, 8260, 8267,
00908 8273, 8278, 8283, 8288, 8295, 8302, 8307, 8312, 8319, 8328,
00909 8337, 8346, 8352, 8358, 8364, 8369, 8374, 8380, 8386, 8391,
00910 8398, 8407, 8416, 8425, 8444, 8448, 8455, 8471, 8478, 8487,
00911 8496, 8515, 8523, 8531, 8538, 8557, 8566, 8573, 8581, 8590,
00912 8599, 8608, 8615, 8624, 8631, 8639, 8648, 8656, 8681, 8689,
00913 8697, 8705, 8713, 8719, 8726, 8735, 8744, 8753, 8762, 8771,
00914 8780, 8803, 8810, 8818, 8825, 8833, 8840, 8846, 8852, 8858,
00915 8864, 8872, 8880, 8888, 8895, 8903, 8910, 8918, 8924, 8931,
00916 8940, 8948, 8954, 8962, 8971, 8980, 8989, 8998, 9014, 9025,
00917 9027, 9028, 9029, 9030, 9031, 9032, 9033, 9034, 9035, 9036,
00918 9037, 9038, 9039, 9040, 9041, 9042, 9043, 9044, 9045, 9046,
00919 9047, 9048, 9049, 9050, 9051, 9052, 9053, 9054, 9055, 9056,
00920 9057, 9058, 9059, 9060, 9061, 9062, 9063, 9064, 9065, 9066,
00921 9067, 9068, 9069
00922 };
00923 #endif
00924
00925
00926 #if (YYDEBUG) || defined YYERROR_VERBOSE
00927
00928
00929 static const char *const yytname[] =
00930 {
00931 "$", "error", "$undefined.", "EMBEDDED_SQL_BEGIN", "EMBEDDED_SQL_END",
00932 "LEXICAL_ERROR", "EMBEDDED_N_ADIC_FUNCTION_CALL", "EMBEDDED_ARRAY",
00933 "EMBEDDED_VARIABLE_NAME", "CHARACTER_STRING_LITERAL",
00934 "NATIONAL_CHARACTER_STRING_LITERAL", "BIT_STRING_LITERAL",
00935 "HEX_STRING_LITERAL", "UNSIGNED_INTEGER", "REAL_EXACT_NUMERIC_LITERAL",
00936 "APPROXIMATE_NUMERIC_LITERAL", "DATE_STRING", "TIME_STRING",
00937 "TIMESTAMP_STRING", "INTERVAL_STRING", "FOURTH_LEVEL_IDENTIFIER",
00938 "THIRD_LEVEL_IDENTIFIER", "SECOND_LEVEL_IDENTIFIER",
00939 "FOURTH_LEVEL_ASTERISK", "THIRD_LEVEL_ASTERISK",
00940 "SECOND_LEVEL_ASTERISK", "IDENTIFIER_BODY", "DELIMITED_IDENTIFIER",
00941 "MULTI_HOST_IDENTIFIER", "NOT_EQUALS_OPERATOR",
00942 "GREATER_THAN_OR_EQUALS_OPERATOR", "LESS_THAN_OR_EQUALS_OPERATOR",
00943 "CONCATENATION_OPERATOR", "RW_ABSOLUTE", "RW_ACTION", "RW_ADD",
00944 "RW_ALLOCATE", "RW_ALL", "RW_ALTER", "RW_AND", "RW_ANY", "RW_ASC",
00945 "RW_ASSERTION", "RW_AS", "RW_AT", "RW_AUTHORIZATION", "RW_AVG",
00946 "RW_BETWEEN", "RW_BIT_LENGTH", "RW_BIT", "RW_BOTH", "RW_BY",
00947 "RW_CASCADED", "RW_CASCADE", "RW_CASE", "RW_CAST", "RW_CATALOG",
00948 "RW_CHARACTER_LENGTH", "RW_CHARACTER", "RW_CHAR_LENGTH", "RW_CHAR",
00949 "RW_CHECK", "RW_CLOSE", "RW_COALESCE", "RW_COLLATE", "RW_COLLATION",
00950 "RW_COLUMN", "RW_COMMIT", "RW_CONDITION", "RW_CONNECTION", "RW_CONNECT",
00951 "RW_CONSTRAINTS", "RW_CONSTRAINT", "RW_CONTINUE", "RW_CONVERT",
00952 "RW_CORRESPONDING", "RW_COUNT", "RW_CREATE", "RW_CROSS",
00953 "RW_CURRENT_DATE", "RW_CURRENT_TIMESTAMP", "RW_CURRENT_TIME",
00954 "RW_CURRENT_USER", "RW_CURRENT", "RW_CURSOR", "RW_DATE", "RW_DAY",
00955 "RW_DEALLOCATE", "RW_DECIMAL", "RW_DECLARE", "RW_DEC", "RW_DEFAULT",
00956 "RW_DEFERRABLE", "RW_DEFERRED", "RW_DELETE", "RW_DESCRIBE",
00957 "RW_DESCRIPTOR", "RW_DESC", "RW_DIAGNOSTICS", "RW_DISCONNECT",
00958 "RW_DISTINCT", "RW_DOMAIN", "RW_DOUBLE", "RW_DROP", "RW_ELSE", "RW_END",
00959 "RW_ESCAPE", "RW_EXCEPTION", "RW_EXCEPT", "RW_EXECUTE", "RW_EXISTS",
00960 "RW_EXTRACT", "RW_FALSE", "RW_FETCH", "RW_FIRST", "RW_FLOAT",
00961 "RW_FOREIGN", "RW_FOR", "RW_FOUND", "RW_FROM", "RW_FULL", "RW_GET",
00962 "RW_GLOBAL", "RW_GOTO", "RW_GO", "RW_GRANT", "RW_GROUP", "RW_HAVING",
00963 "RW_HOUR", "RW_IMMEDIATE", "RW_INDICATOR", "RW_INITIALLY", "RW_INNER",
00964 "RW_INPUT", "RW_INSENSITIVE", "RW_INSERT", "RW_INTEGER", "RW_INTERSECT",
00965 "RW_INTERVAL", "RW_INTO", "RW_INT", "RW_IN", "RW_ISOLATION", "RW_IS",
00966 "RW_JOIN", "RW_KEY", "RW_LAST", "RW_LEADING", "RW_LEFT", "RW_LEVEL",
00967 "RW_LIKE", "RW_LOCAL", "RW_LOWER", "RW_MATCH", "RW_MAX", "RW_MIN",
00968 "RW_MINUTE", "RW_MONTH", "RW_NAMES", "RW_NATIONAL", "RW_NATURAL",
00969 "RW_NCHAR", "RW_NEXT", "RW_NOT_LIKE", "RW_NOT", "RW_NO", "RW_NULLIF",
00970 "RW_NULL", "RW_NUMERIC", "RW_OCTET_LENGTH", "RW_OF", "RW_ONLY", "RW_ON",
00971 "RW_OPEN", "RW_OPTION", "RW_ORDER", "RW_OR", "RW_OUTER", "RW_OUTPUT",
00972 "RW_OVERLAPS", "RW_PARTIAL", "RW_POSITION", "RW_PRECISION",
00973 "RW_PREPARE", "RW_PRESERVE", "RW_PRIMARY", "RW_PRIOR", "RW_PRIVILEGES",
00974 "RW_PUBLIC", "RW_READ", "RW_REAL", "RW_REFERENCES", "RW_RELATIVE",
00975 "RW_RESTRICT", "RW_REVOKE", "RW_RIGHT", "RW_ROLLBACK", "RW_ROWS",
00976 "RW_SCHEMA", "RW_SCROLL", "RW_SECOND", "RW_SELECT", "RW_SESSION_USER",
00977 "RW_SESSION", "RW_SET", "RW_SIZE", "RW_SMALLINT", "RW_SOME",
00978 "RW_SQLERROR", "RW_SQL", "RW_SUBSTRING", "RW_SUM", "RW_SYSTEM_USER",
00979 "RW_TABLE", "RW_TEMPORARY", "RW_THEN", "RW_THROW", "RW_TIMESTAMP",
00980 "RW_TIMEZONE_HOUR", "RW_TIMEZONE_MINUTE", "RW_TIME", "RW_TO",
00981 "RW_TRAILING", "RW_TRANSACTION", "RW_TRANSLATE", "RW_TRANSLATION",
00982 "RW_TRIM", "RW_TRUE", "RW_UNION", "RW_UNIQUE", "RW_UNKNOWN",
00983 "RW_UPDATE", "RW_UPPER", "RW_USAGE", "RW_USER", "RW_USING", "RW_VALUES",
00984 "RW_VALUE", "RW_VARCHAR", "RW_VARYING", "RW_VIEW", "RW_WHENEVER",
00985 "RW_WHEN", "RW_WHERE", "RW_WITH", "RW_WORK", "RW_WRITE", "RW_YEAR",
00986 "RW_ZONE", "NRW_CATALOG_NAME", "NRW_CHARACTER_SET_CATALOG",
00987 "NRW_CHARACTER_SET_NAME", "NRW_CHARACTER_SET_SCHEMA",
00988 "NRW_CLASS_ORIGIN", "NRW_COLLATION_CATALOG", "NRW_COLLATION_NAME",
00989 "NRW_COLLATION_SCHEMA", "NRW_COLUMN_NAME", "NRW_COMMAND_FUNCTION",
00990 "NRW_COMMITTED", "NRW_CONDITION_NUMBER", "NRW_CONNECTION_NAME",
00991 "NRW_CONSTRAINT_CATALOG", "NRW_CONSTRAINT_NAME",
00992 "NRW_CONSTRAINT_SCHEMA", "NRW_CURSOR_NAME", "NRW_DATA",
00993 "NRW_DATETIME_INTERVAL_CODE", "NRW_DATETIME_INTERVAL_PRECISION",
00994 "NRW_DYNAMIC_FUNCTION", "NRW_LENGTH", "NRW_MESSAGE_LENGTH",
00995 "NRW_MESSAGE_OCTET_LENGTH", "NRW_MESSAGE_TEXT", "NRW_MORE", "NRW_NAME",
00996 "NRW_NULLABLE", "NRW_NUMBER", "NRW_REPEATABLE", "NRW_RETURNED_LENGTH",
00997 "NRW_RETURNED_OCTET_LENGTH", "NRW_RETURNED_SQLSTATE", "NRW_ROW_COUNT",
00998 "NRW_SCALE", "NRW_SCHEMA_NAME", "NRW_SERIALIZABLE", "NRW_SERVER_NAME",
00999 "NRW_SUBCLASS_ORIGIN", "NRW_TABLE_NAME", "NRW_TYPE", "NRW_UNCOMMITTED",
01000 "NRW_UNNAMED", "LEFT_PAREN", "RIGHT_PAREN", "ASTERISK", "PLUS_SIGN",
01001 "COMMA", "MINUS_SIGN", "SOLIDUS", "SEMICOLON", "LESS_THAN_OPERATOR",
01002 "EQUALS_OPERATOR", "GREATER_THAN_OPERATOR", "QUESTION_MARK",
01003 "C_host_program", "embedded_SQL_program", "embedded_SQL_C_program",
01004 "embedded_exception_declaration", "condition", "condition_action",
01005 "go_to", "goto_target", "throw", "exception_target",
01006 "host_label_identifier", "embedded_SQL_host_program",
01007 "embedded_SQL_statement", "statement_or_declaration", "SQL_terminator",
01008 "embedded_variable_name", "get_diagnostics_statement",
01009 "sql_diagnostics_information", "statement_information",
01010 "statement_information_item", "statement_information_item_name",
01011 "condition_information_item_list", "condition_information",
01012 "condition_information_item", "condition_information_item_name",
01013 "condition_number", "declare_search_condition", "search_condition_name",
01014 "set_local_time_zone_statement", "set_time_zone_value",
01015 "set_session_authorization_identifier_statement", "set_names_statement",
01016 "set_schema_statement", "set_catalog_statement", "disconnect_statement",
01017 "disconnect_object", "set_connection_statement", "connection_object",
01018 "connect_statement", "connection_target", "rollback_statement",
01019 "commit_statement", "set_constraints_mode_statement",
01020 "constraint_name_list_1", "constraint_name_list",
01021 "transaction_mode_list", "set_transaction_statement",
01022 "transaction_mode", "transaction_access_mode", "isolation_level",
01023 "level_of_isolation", "diagnostics_size", "number_of_conditions",
01024 "update_statement.searched", "update_statement.positioned",
01025 "set_clause_list", "set_clause", "update_source", "object_column",
01026 "insert_statement", "insert_columns_and_source", "insert_column_list",
01027 "delete_statement.searched", "delete_statement.positioned",
01028 "select_statement.single_row", "select_target_list", "close_statement",
01029 "fetch_statement", "fetch_orientation", "fetch_target_list",
01030 "open_statement", "declare_cursor", "cursor_specification",
01031 "updatability_clause", "order_by_clause", "sort_specification_list",
01032 "sort_specification", "sort_key", "ordering_specification",
01033 "SQL_procedure_statement", "SQL_schema_statement",
01034 "SQL_schema_definition_statement", "SQL_schema_manipulation_statement",
01035 "SQL_data_statement", "SQL_data_change_statement",
01036 "SQL_transaction_statement", "SQL_connection_statement",
01037 "SQL_session_statement", "SQL_diagnostics_statement",
01038 "revoke_statement", "grantee_list", "grant_statement", "object_name",
01039 "drop_assertion_statement", "assertion_definition", "assertion_check",
01040 "drop_domain_statement", "drop_domain_constraint_definition",
01041 "add_domain_constraint_definition", "drop_domain_default_clause",
01042 "set_domain_default_clause", "alter_domain_statement",
01043 "alter_domain_action", "domain_constraint_list", "domain_definition",
01044 "domain_constraint", "drop_view_statement", "view_definition",
01045 "levels_clause", "view_column_list", "drop_table_statement",
01046 "drop_table_constraint_definition", "add_table_constraint_definition",
01047 "drop_column_definition", "drop_column_default_clause",
01048 "set_column_default_clause", "alter_column_definition",
01049 "alter_column_action", "add_column_definition", "alter_table_statement",
01050 "alter_table_action", "check_constraint_definition",
01051 "referential_constraint_definition", "references_specification",
01052 "match_type", "referencing_columns", "referenced_table_and_columns",
01053 "reference_column_list", "referential_triggered_action", "update_rule",
01054 "delete_rule", "referential_action", "unique_constraint_definition",
01055 "unique_specification", "unique_column_list",
01056 "table_constraint_definition", "table_constraint", "default_clause",
01057 "default_option", "column_constraint_definition_list",
01058 "column_definition", "column_constraint_definition",
01059 "column_constraint", "first_part_table_definition",
01060 "last_part_table_definition", "table_definition",
01061 "middle_part_table_element_list", "table_element_list", "table_element",
01062 "drop_schema_statement", "drop_behavior", "schema_element_list",
01063 "schema_definition", "schema_name_clause",
01064 "schema_authorization_identifier", "schema_element",
01065 "constraint_name_definition", "constraint_attributes",
01066 "constraint_check_time", "collate_clause", "privileges", "action_list",
01067 "action", "privilege_column_list", "grantee", "interval_qualifier",
01068 "start_field", "end_field", "single_datetime_field", "datetime_field",
01069 "non_second_datetime_field", "interval_fractional_seconds_precision",
01070 "interval_leading_field_precision", "search_condition", "boolean_term",
01071 "boolean_factor", "boolean_test", "truth_value", "boolean_primary",
01072 "overlaps_predicate", "row_value_constructor_1",
01073 "row_value_constructor_2", "match_predicate", "unique_predicate",
01074 "exists_predicate", "quantified_comparison_predicate", "quantifier",
01075 "all", "some", "null_predicate", "like_predicate", "match_value",
01076 "pattern", "escape_character", "in_predicate", "in_predicate_value",
01077 "in_value_list", "between_predicate", "comparison_predicate", "comp_op",
01078 "predicate", "scalar_subquery", "row_subquery", "table_subquery",
01079 "subquery", "query_expression", "non_join_query_expression",
01080 "query_term", "non_join_query_term", "query_primary",
01081 "non_join_query_primary", "simple_table", "explicit_table",
01082 "corresponding_spec", "corresponding_column_list",
01083 "query_specification", "select_sublist_list", "select_list",
01084 "select_sublist", "derived_column", "as_clause", "having_clause",
01085 "group_by_clause", "grouping_column_reference_list",
01086 "grouping_column_reference", "where_clause", "joined_table",
01087 "cross_join", "qualified_join", "join_specification", "join_condition",
01088 "named_columns_join", "join_type", "outer_join_type",
01089 "join_column_list", "table_reference_list", "from_clause",
01090 "table_expression", "table_value_constructor",
01091 "table_value_constructor_list", "row_value_constructor",
01092 "row_value_constructor_list", "row_value_constructor_element",
01093 "null_specification", "default_specification",
01094 "interval_value_expression", "interval_term", "interval_factor",
01095 "interval_primary", "interval_value_expression_1", "interval_term_1",
01096 "interval_term_2", "datetime_value_expression", "datetime_term",
01097 "datetime_factor", "datetime_primary", "time_zone",
01098 "time_zone_specifier", "string_value_expression",
01099 "character_value_expression", "concatenation", "character_factor",
01100 "character_primary", "bit_value_expression", "bit_concatenation",
01101 "bit_factor", "bit_primary", "numeric_value_expression", "term",
01102 "factor", "numeric_primary", "value_expression",
01103 "value_expression_primary", "cast_specification", "cast_operand",
01104 "cast_target", "case_expression", "value_expression_list",
01105 "case_abbreviation", "case_specification", "simple_when_clause_list",
01106 "simple_case", "searched_when_clause_list", "searched_case",
01107 "simple_when_clause", "searched_when_clause", "else_clause",
01108 "case_operand", "when_operand", "result", "result_expression",
01109 "datetime_value_function", "current_date_value_function",
01110 "current_time_value_function", "current_timestamp_value_function",
01111 "string_value_function", "character_value_function",
01112 "character_substring_function", "fold", "form_of_use_conversion",
01113 "character_translation", "trim_function", "trim_operands",
01114 "trim_source", "trim_specification", "trim_character",
01115 "bit_value_function", "bit_substring_function", "start_position",
01116 "string_length", "numeric_value_function", "position_expression",
01117 "length_expression", "char_length_expression",
01118 "octet_length_expression", "bit_length_expression",
01119 "extract_expression", "extract_field", "time_zone_field",
01120 "extract_source", "set_function_specification", "general_set_function",
01121 "set_function_type", "set_quantifier", "column_reference",
01122 "table_reference", "derived_table", "derived_column_list",
01123 "column_name_list", "value_specification",
01124 "unsigned_value_specification", "general_value_specification",
01125 "simple_value_specification", "target_specification",
01126 "simple_target_specification", "dynamic_parameter_specification",
01127 "variable_specification", "search_condition_value_specification",
01128 "data_type", "character_string_type", "national_character_string_type",
01129 "bit_string_type", "numeric_type", "exact_numeric_type",
01130 "approximate_numeric_type", "length", "precision", "scale",
01131 "datetime_type", "time_precision", "timestamp_precision",
01132 "time_fractional_seconds_precision", "interval_type", "identifier",
01133 "actual_identifier", "authorization_identifier", "table_name",
01134 "domain_name", "schema_name", "unqualified_schema_name",
01135 "qualified_name", "qualified_identifier", "column_name",
01136 "correlation_name", "cursor_name", "constraint_name", "collation_name",
01137 "translation_name", "form_of_use_conversion_name", "connection_name",
01138 "schema_location", "user_login", "literal", "unsigned_literal",
01139 "general_literal", "signed_numeric_literal", "unsigned_numeric_literal",
01140 "exact_numeric_literal", "sign", "approximate_numeric_literal",
01141 "datetime_literal", "date_literal", "time_literal", "timestamp_literal",
01142 "interval_literal", "regular_identifier", "identifier_body", 0
01143 };
01144 #endif
01145
01146
01147 static const short yyr1[] =
01148 {
01149 0, 304, 304, 305, 306, 306, 307, 308, 308, 309,
01150 309, 309, 310, 310, 311, 312, 313, 313, 314, 315,
01151 316, 316, 316, 317, 317, 317, 317, 318, 319, 319,
01152 319, 320, 321, 321, 322, 322, 323, 324, 324, 324,
01153 324, 324, 325, 325, 326, 327, 328, 328, 328, 328,
01154 328, 328, 328, 328, 328, 328, 328, 328, 328, 328,
01155 328, 328, 328, 329, 330, 331, 332, 333, 333, 334,
01156 335, 336, 337, 338, 339, 339, 339, 340, 341, 341,
01157 342, 343, 343, 343, 343, 343, 344, 344, 345, 345,
01158 346, 346, 347, 347, 348, 348, 349, 349, 350, 351,
01159 351, 351, 352, 352, 353, 354, 354, 354, 354, 355,
01160 356, 357, 357, 358, 359, 359, 360, 361, 361, 361,
01161 362, 363, 364, 364, 364, 365, 366, 366, 367, 368,
01162 368, 369, 369, 370, 371, 371, 371, 372, 372, 372,
01163 372, 372, 372, 373, 373, 374, 375, 375, 375, 375,
01164 376, 376, 376, 376, 377, 377, 377, 378, 379, 379,
01165 380, 380, 380, 380, 381, 381, 382, 382, 383, 383,
01166 383, 383, 383, 383, 384, 384, 385, 385, 385, 385,
01167 385, 385, 386, 386, 386, 386, 386, 386, 386, 386,
01168 387, 387, 387, 387, 387, 387, 388, 388, 388, 388,
01169 388, 389, 389, 389, 389, 390, 390, 390, 391, 391,
01170 391, 391, 391, 392, 393, 393, 394, 394, 395, 395,
01171 396, 396, 396, 396, 396, 397, 398, 398, 399, 400,
01172 401, 402, 403, 404, 405, 406, 406, 406, 406, 407,
01173 407, 408, 408, 408, 408, 408, 408, 408, 408, 408,
01174 408, 408, 408, 408, 408, 408, 408, 409, 409, 409,
01175 409, 410, 411, 411, 411, 411, 411, 411, 412, 412,
01176 413, 414, 415, 416, 417, 417, 418, 419, 420, 420,
01177 421, 421, 422, 422, 423, 424, 424, 424, 424, 424,
01178 425, 426, 427, 427, 427, 427, 428, 428, 429, 430,
01179 430, 431, 432, 432, 432, 432, 433, 434, 435, 435,
01180 435, 435, 436, 437, 437, 438, 439, 439, 439, 439,
01181 440, 440, 440, 441, 442, 442, 442, 442, 442, 442,
01182 442, 443, 443, 444, 444, 444, 444, 444, 444, 444,
01183 444, 444, 444, 444, 444, 444, 444, 444, 444, 445,
01184 445, 445, 445, 446, 446, 446, 446, 447, 447, 448,
01185 448, 449, 449, 449, 450, 450, 451, 452, 452, 453,
01186 454, 454, 455, 455, 456, 456, 457, 457, 457, 458,
01187 459, 459, 459, 459, 459, 460, 461, 461, 461, 461,
01188 461, 461, 461, 462, 462, 463, 464, 464, 465, 465,
01189 466, 466, 466, 466, 466, 466, 466, 466, 466, 467,
01190 468, 468, 469, 469, 470, 470, 471, 471, 471, 472,
01191 472, 472, 472, 472, 473, 473, 474, 474, 474, 474,
01192 474, 475, 476, 477, 477, 478, 478, 479, 479, 480,
01193 480, 480, 481, 481, 481, 482, 482, 482, 483, 484,
01194 485, 486, 486, 486, 486, 486, 486, 487, 488, 489,
01195 490, 490, 491, 492, 492, 493, 493, 494, 494, 494,
01196 494, 495, 496, 497, 498, 498, 499, 499, 500, 500,
01197 501, 501, 502, 503, 503, 503, 503, 503, 503, 504,
01198 504, 504, 504, 504, 504, 504, 504, 504, 504, 505,
01199 506, 507, 508, 509, 509, 510, 510, 510, 510, 510,
01200 510, 510, 510, 510, 511, 511, 512, 512, 512, 512,
01201 512, 513, 513, 514, 514, 515, 515, 515, 516, 517,
01202 517, 518, 519, 519, 520, 520, 521, 521, 522, 522,
01203 522, 522, 523, 523, 524, 524, 525, 526, 527, 527,
01204 528, 528, 529, 530, 530, 530, 531, 532, 532, 532,
01205 532, 532, 532, 532, 532, 533, 533, 534, 535, 536,
01206 536, 536, 536, 537, 537, 537, 538, 539, 539, 540,
01207 541, 541, 541, 541, 541, 541, 541, 541, 542, 543,
01208 543, 544, 544, 544, 545, 545, 546, 546, 546, 547,
01209 548, 549, 549, 549, 549, 550, 550, 550, 550, 551,
01210 551, 552, 552, 553, 554, 555, 556, 556, 556, 556,
01211 557, 558, 558, 559, 559, 560, 561, 561, 562, 562,
01212 563, 563, 564, 565, 565, 566, 566, 567, 567, 568,
01213 569, 570, 570, 571, 571, 571, 572, 572, 572, 573,
01214 573, 574, 574, 575, 575, 575, 575, 576, 576, 576,
01215 576, 576, 576, 576, 577, 578, 578, 579, 579, 580,
01216 580, 581, 581, 582, 582, 583, 583, 584, 584, 585,
01217 585, 586, 586, 587, 587, 588, 589, 590, 591, 592,
01218 593, 593, 594, 595, 595, 595, 596, 597, 597, 598,
01219 598, 599, 599, 600, 600, 600, 600, 600, 601, 601,
01220 602, 602, 603, 604, 605, 606, 606, 606, 606, 606,
01221 607, 608, 608, 608, 609, 610, 611, 611, 612, 613,
01222 614, 614, 614, 615, 616, 616, 616, 617, 617, 618,
01223 619, 620, 621, 621, 622, 622, 623, 623, 624, 624,
01224 625, 625, 626, 626, 626, 626, 626, 627, 627, 628,
01225 628, 628, 628, 629, 629, 629, 629, 629, 629, 629,
01226 629, 629, 629, 630, 631, 632, 632, 633, 633, 634,
01227 634, 635, 635, 635, 635, 635, 635, 635, 636, 636,
01228 637, 638, 639, 640, 641, 642, 642, 642, 642, 642,
01229 642, 643, 643, 643, 643, 643, 643, 643, 644, 644,
01230 644, 644, 644, 644, 644, 644, 644, 645, 645, 645,
01231 646, 646, 647, 647, 647, 647, 647, 647, 647, 647,
01232 647, 647, 647, 647, 648, 648, 648, 648, 649, 650,
01233 651, 652, 652, 652, 652, 652, 652, 652, 652, 652,
01234 653, 654, 655, 656, 657, 658, 658, 659, 659, 660,
01235 661, 662, 662, 663, 663, 664, 664, 664, 665, 666,
01236 667, 668, 668, 691, 691, 692, 693, 693, 694, 694,
01237 695, 695, 696, 696, 669, 670, 671, 672, 673, 674,
01238 675, 676, 676, 677, 677, 678, 678, 678, 678, 678,
01239 678, 679, 679, 680, 680, 681, 681, 682, 682, 683,
01240 684, 684, 684, 685, 686, 687, 688, 688, 689, 690,
01241 690, 690, 690, 690, 690, 690, 690, 690, 690, 690,
01242 690, 690, 690, 690, 690, 690, 690, 690, 690, 690,
01243 690, 690, 690, 690, 690, 690, 690, 690, 690, 690,
01244 690, 690, 690, 690, 690, 690, 690, 690, 690, 690,
01245 690, 690, 690
01246 };
01247
01248
01249 static const short yyr2[] =
01250 {
01251 0, 2, 0, 3, 2, 1, 3, 1, 2, 1,
01252 1, 1, 2, 3, 1, 2, 1, 1, 1, 1,
01253 2, 2, 1, 1, 1, 1, 1, 1, 1, 1,
01254 1, 3, 1, 1, 3, 1, 3, 1, 1, 1,
01255 1, 1, 3, 1, 3, 3, 1, 1, 1, 1,
01256 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01257 1, 1, 1, 1, 5, 1, 4, 1, 1, 4,
01258 3, 3, 3, 2, 1, 1, 1, 3, 1, 1,
01259 3, 5, 3, 3, 1, 1, 2, 1, 2, 1,
01260 4, 4, 3, 1, 1, 1, 3, 1, 3, 1,
01261 1, 1, 2, 2, 3, 2, 2, 2, 1, 3,
01262 1, 6, 4, 8, 3, 1, 3, 1, 1, 1,
01263 1, 4, 4, 1, 2, 1, 5, 3, 7, 6,
01264 5, 3, 1, 2, 6, 5, 4, 1, 1, 1,
01265 1, 2, 2, 3, 1, 2, 7, 6, 6, 5,
01266 3, 2, 2, 1, 3, 4, 2, 3, 3, 1,
01267 3, 2, 2, 1, 1, 1, 1, 1, 1, 1,
01268 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01269 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01270 0, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01271 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
01272 1, 1, 1, 1, 10, 7, 3, 1, 9, 6,
01273 2, 1, 2, 2, 2, 3, 5, 4, 4, 4,
01274 3, 2, 2, 2, 4, 1, 1, 1, 1, 2,
01275 1, 8, 7, 7, 6, 7, 6,