sql_yacc.cpp
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:979k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. /* A Bison parser, made by GNU Bison 1.875c.  */
  2. /* Skeleton parser for Yacc-like parsing with Bison,
  3.    Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
  4.    This program is free software; you can redistribute it and/or modify
  5.    it under the terms of the GNU General Public License as published by
  6.    the Free Software Foundation; either version 2, or (at your option)
  7.    any later version.
  8.    This program is distributed in the hope that it will be useful,
  9.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  10.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  11.    GNU General Public License for more details.
  12.    You should have received a copy of the GNU General Public License
  13.    along with this program; if not, write to the Free Software
  14.    Foundation, Inc., 59 Temple Place - Suite 330,
  15.    Boston, MA 02111-1307, USA.  */
  16. /* As a special exception, when this file is copied by Bison into a
  17.    Bison output file, you may use that output file without restriction.
  18.    This special exception was added by the Free Software Foundation
  19.    in version 1.24 of Bison.  */
  20. /* Written by Richard Stallman by simplifying the original so called
  21.    ``semantic'' parser.  */
  22. /* All symbols defined below should begin with yy or YY, to avoid
  23.    infringing on user name space.  This should be done even for local
  24.    variables, as they might otherwise be expanded by user macros.
  25.    There are some unavoidable exceptions within include files to
  26.    define necessary library symbols; they are noted "INFRINGES ON
  27.    USER NAME SPACE" below.  */
  28. /* Identify Bison output.  */
  29. #define YYBISON 1
  30. /* Skeleton name.  */
  31. #define YYSKELETON_NAME "yacc.c"
  32. /* Pure parsers.  */
  33. #define YYPURE 1
  34. /* Using locations.  */
  35. #define YYLSP_NEEDED 0
  36. /* Tokens.  */
  37. #ifndef YYTOKENTYPE
  38. # define YYTOKENTYPE
  39.    /* Put the tokens into the symbol table, so that GDB and other debuggers
  40.       know about them.  */
  41.    enum yytokentype {
  42.      END_OF_INPUT = 258,
  43.      CLOSE_SYM = 259,
  44.      HANDLER_SYM = 260,
  45.      LAST_SYM = 261,
  46.      NEXT_SYM = 262,
  47.      PREV_SYM = 263,
  48.      DIV_SYM = 264,
  49.      EQ = 265,
  50.      EQUAL_SYM = 266,
  51.      SOUNDS_SYM = 267,
  52.      GE = 268,
  53.      GT_SYM = 269,
  54.      LE = 270,
  55.      LT = 271,
  56.      NE = 272,
  57.      IS = 273,
  58.      MOD_SYM = 274,
  59.      SHIFT_LEFT = 275,
  60.      SHIFT_RIGHT = 276,
  61.      SET_VAR = 277,
  62.      ABORT_SYM = 278,
  63.      ADD = 279,
  64.      AFTER_SYM = 280,
  65.      ALTER = 281,
  66.      ANALYZE_SYM = 282,
  67.      ANY_SYM = 283,
  68.      AVG_SYM = 284,
  69.      BEGIN_SYM = 285,
  70.      BINLOG_SYM = 286,
  71.      CHANGE = 287,
  72.      CLIENT_SYM = 288,
  73.      COMMENT_SYM = 289,
  74.      COMMIT_SYM = 290,
  75.      CONSISTENT_SYM = 291,
  76.      COUNT_SYM = 292,
  77.      CREATE = 293,
  78.      CROSS = 294,
  79.      CUBE_SYM = 295,
  80.      DELETE_SYM = 296,
  81.      DUAL_SYM = 297,
  82.      DO_SYM = 298,
  83.      DROP = 299,
  84.      EVENTS_SYM = 300,
  85.      EXECUTE_SYM = 301,
  86.      EXPANSION_SYM = 302,
  87.      FLUSH_SYM = 303,
  88.      HELP_SYM = 304,
  89.      INSERT = 305,
  90.      RELAY_THREAD = 306,
  91.      KILL_SYM = 307,
  92.      LOAD = 308,
  93.      LOCKS_SYM = 309,
  94.      LOCK_SYM = 310,
  95.      MASTER_SYM = 311,
  96.      MAX_SYM = 312,
  97.      MIN_SYM = 313,
  98.      NONE_SYM = 314,
  99.      OPTIMIZE = 315,
  100.      PURGE = 316,
  101.      REPAIR = 317,
  102.      REPLICATION = 318,
  103.      RESET_SYM = 319,
  104.      ROLLBACK_SYM = 320,
  105.      ROLLUP_SYM = 321,
  106.      SAVEPOINT_SYM = 322,
  107.      SELECT_SYM = 323,
  108.      SHOW = 324,
  109.      SLAVE = 325,
  110.      SNAPSHOT_SYM = 326,
  111.      SQL_THREAD = 327,
  112.      START_SYM = 328,
  113.      STD_SYM = 329,
  114.      VARIANCE_SYM = 330,
  115.      STOP_SYM = 331,
  116.      SUM_SYM = 332,
  117.      ADDDATE_SYM = 333,
  118.      SUPER_SYM = 334,
  119.      TRUNCATE_SYM = 335,
  120.      UNLOCK_SYM = 336,
  121.      UNTIL_SYM = 337,
  122.      UPDATE_SYM = 338,
  123.      ACTION = 339,
  124.      AGGREGATE_SYM = 340,
  125.      ALL = 341,
  126.      AND_SYM = 342,
  127.      AS = 343,
  128.      ASC = 344,
  129.      AUTO_INC = 345,
  130.      AVG_ROW_LENGTH = 346,
  131.      BACKUP_SYM = 347,
  132.      BERKELEY_DB_SYM = 348,
  133.      BINARY = 349,
  134.      BIT_SYM = 350,
  135.      BOOL_SYM = 351,
  136.      BOOLEAN_SYM = 352,
  137.      BOTH = 353,
  138.      BTREE_SYM = 354,
  139.      BY = 355,
  140.      BYTE_SYM = 356,
  141.      CACHE_SYM = 357,
  142.      CASCADE = 358,
  143.      CAST_SYM = 359,
  144.      CHARSET = 360,
  145.      CHECKSUM_SYM = 361,
  146.      CHECK_SYM = 362,
  147.      COMMITTED_SYM = 363,
  148.      COLLATE_SYM = 364,
  149.      COLLATION_SYM = 365,
  150.      COLUMNS = 366,
  151.      COLUMN_SYM = 367,
  152.      CONCURRENT = 368,
  153.      CONSTRAINT = 369,
  154.      CONVERT_SYM = 370,
  155.      CURRENT_USER = 371,
  156.      DATABASES = 372,
  157.      DATA_SYM = 373,
  158.      DEFAULT = 374,
  159.      DELAYED_SYM = 375,
  160.      DELAY_KEY_WRITE_SYM = 376,
  161.      DESC = 377,
  162.      DESCRIBE = 378,
  163.      DES_KEY_FILE = 379,
  164.      DISABLE_SYM = 380,
  165.      DISCARD = 381,
  166.      DISTINCT = 382,
  167.      DUPLICATE_SYM = 383,
  168.      DYNAMIC_SYM = 384,
  169.      ENABLE_SYM = 385,
  170.      ENCLOSED = 386,
  171.      ESCAPED = 387,
  172.      DIRECTORY_SYM = 388,
  173.      ESCAPE_SYM = 389,
  174.      EXISTS = 390,
  175.      EXTENDED_SYM = 391,
  176.      FALSE_SYM = 392,
  177.      FILE_SYM = 393,
  178.      FIRST_SYM = 394,
  179.      FIXED_SYM = 395,
  180.      FLOAT_NUM = 396,
  181.      FORCE_SYM = 397,
  182.      FOREIGN = 398,
  183.      FROM = 399,
  184.      FULL = 400,
  185.      FULLTEXT_SYM = 401,
  186.      GLOBAL_SYM = 402,
  187.      GRANT = 403,
  188.      GRANTS = 404,
  189.      GREATEST_SYM = 405,
  190.      GROUP = 406,
  191.      HAVING = 407,
  192.      HASH_SYM = 408,
  193.      HEX_NUM = 409,
  194.      HIGH_PRIORITY = 410,
  195.      HOSTS_SYM = 411,
  196.      IDENT = 412,
  197.      IDENT_QUOTED = 413,
  198.      IGNORE_SYM = 414,
  199.      IMPORT = 415,
  200.      INDEX_SYM = 416,
  201.      INDEXES = 417,
  202.      INFILE = 418,
  203.      INNER_SYM = 419,
  204.      INNOBASE_SYM = 420,
  205.      INTO = 421,
  206.      IN_SYM = 422,
  207.      ISOLATION = 423,
  208.      JOIN_SYM = 424,
  209.      KEYS = 425,
  210.      KEY_SYM = 426,
  211.      LEADING = 427,
  212.      LEAST_SYM = 428,
  213.      LEAVES = 429,
  214.      LEVEL_SYM = 430,
  215.      LEX_HOSTNAME = 431,
  216.      LIKE = 432,
  217.      LINES = 433,
  218.      LOCAL_SYM = 434,
  219.      LOG_SYM = 435,
  220.      LOGS_SYM = 436,
  221.      LONG_NUM = 437,
  222.      LONG_SYM = 438,
  223.      LOW_PRIORITY = 439,
  224.      MASTER_HOST_SYM = 440,
  225.      MASTER_USER_SYM = 441,
  226.      MASTER_LOG_FILE_SYM = 442,
  227.      MASTER_LOG_POS_SYM = 443,
  228.      MASTER_PASSWORD_SYM = 444,
  229.      MASTER_PORT_SYM = 445,
  230.      MASTER_CONNECT_RETRY_SYM = 446,
  231.      MASTER_SERVER_ID_SYM = 447,
  232.      MASTER_SSL_SYM = 448,
  233.      MASTER_SSL_CA_SYM = 449,
  234.      MASTER_SSL_CAPATH_SYM = 450,
  235.      MASTER_SSL_CERT_SYM = 451,
  236.      MASTER_SSL_CIPHER_SYM = 452,
  237.      MASTER_SSL_KEY_SYM = 453,
  238.      RELAY_LOG_FILE_SYM = 454,
  239.      RELAY_LOG_POS_SYM = 455,
  240.      MATCH = 456,
  241.      MAX_ROWS = 457,
  242.      MAX_CONNECTIONS_PER_HOUR = 458,
  243.      MAX_QUERIES_PER_HOUR = 459,
  244.      MAX_UPDATES_PER_HOUR = 460,
  245.      MEDIUM_SYM = 461,
  246.      MIN_ROWS = 462,
  247.      NAMES_SYM = 463,
  248.      NATIONAL_SYM = 464,
  249.      NATURAL = 465,
  250.      NDBCLUSTER_SYM = 466,
  251.      NEW_SYM = 467,
  252.      NCHAR_SYM = 468,
  253.      NCHAR_STRING = 469,
  254.      NVARCHAR_SYM = 470,
  255.      NOT = 471,
  256.      NO_SYM = 472,
  257.      NULL_SYM = 473,
  258.      NUM = 474,
  259.      OFFSET_SYM = 475,
  260.      ON = 476,
  261.      ONE_SHOT_SYM = 477,
  262.      OPEN_SYM = 478,
  263.      OPTION = 479,
  264.      OPTIONALLY = 480,
  265.      OR_SYM = 481,
  266.      OR_OR_CONCAT = 482,
  267.      ORDER_SYM = 483,
  268.      OUTER = 484,
  269.      OUTFILE = 485,
  270.      DUMPFILE = 486,
  271.      PACK_KEYS_SYM = 487,
  272.      PARTIAL = 488,
  273.      PRIMARY_SYM = 489,
  274.      PRIVILEGES = 490,
  275.      PROCESS = 491,
  276.      PROCESSLIST_SYM = 492,
  277.      QUERY_SYM = 493,
  278.      RAID_0_SYM = 494,
  279.      RAID_STRIPED_SYM = 495,
  280.      RAID_TYPE = 496,
  281.      RAID_CHUNKS = 497,
  282.      RAID_CHUNKSIZE = 498,
  283.      READ_SYM = 499,
  284.      REAL_NUM = 500,
  285.      REFERENCES = 501,
  286.      REGEXP = 502,
  287.      RELOAD = 503,
  288.      RENAME = 504,
  289.      REPEATABLE_SYM = 505,
  290.      REQUIRE_SYM = 506,
  291.      RESOURCES = 507,
  292.      RESTORE_SYM = 508,
  293.      RESTRICT = 509,
  294.      REVOKE = 510,
  295.      ROWS_SYM = 511,
  296.      ROW_FORMAT_SYM = 512,
  297.      ROW_SYM = 513,
  298.      RTREE_SYM = 514,
  299.      SET = 515,
  300.      SEPARATOR_SYM = 516,
  301.      SERIAL_SYM = 517,
  302.      SERIALIZABLE_SYM = 518,
  303.      SESSION_SYM = 519,
  304.      SIMPLE_SYM = 520,
  305.      SHUTDOWN = 521,
  306.      SPATIAL_SYM = 522,
  307.      SSL_SYM = 523,
  308.      STARTING = 524,
  309.      STATUS_SYM = 525,
  310.      STORAGE_SYM = 526,
  311.      STRAIGHT_JOIN = 527,
  312.      SUBJECT_SYM = 528,
  313.      TABLES = 529,
  314.      TABLE_SYM = 530,
  315.      TABLESPACE = 531,
  316.      TEMPORARY = 532,
  317.      TERMINATED = 533,
  318.      TEXT_STRING = 534,
  319.      TO_SYM = 535,
  320.      TRAILING = 536,
  321.      TRANSACTION_SYM = 537,
  322.      TRUE_SYM = 538,
  323.      TYPE_SYM = 539,
  324.      TYPES_SYM = 540,
  325.      FUNC_ARG0 = 541,
  326.      FUNC_ARG1 = 542,
  327.      FUNC_ARG2 = 543,
  328.      FUNC_ARG3 = 544,
  329.      UDF_RETURNS_SYM = 545,
  330.      UDF_SONAME_SYM = 546,
  331.      UDF_SYM = 547,
  332.      UNCOMMITTED_SYM = 548,
  333.      UNDERSCORE_CHARSET = 549,
  334.      UNICODE_SYM = 550,
  335.      UNION_SYM = 551,
  336.      UNIQUE_SYM = 552,
  337.      USAGE = 553,
  338.      USE_FRM = 554,
  339.      USE_SYM = 555,
  340.      USING = 556,
  341.      VALUE_SYM = 557,
  342.      VALUES = 558,
  343.      VARIABLES = 559,
  344.      WHERE = 560,
  345.      WITH = 561,
  346.      WRITE_SYM = 562,
  347.      NO_WRITE_TO_BINLOG = 563,
  348.      X509_SYM = 564,
  349.      XOR = 565,
  350.      COMPRESSED_SYM = 566,
  351.      ERRORS = 567,
  352.      WARNINGS = 568,
  353.      ASCII_SYM = 569,
  354.      BIGINT = 570,
  355.      BLOB_SYM = 571,
  356.      CHAR_SYM = 572,
  357.      CHANGED = 573,
  358.      COALESCE = 574,
  359.      DATETIME = 575,
  360.      DATE_SYM = 576,
  361.      DECIMAL_SYM = 577,
  362.      DOUBLE_SYM = 578,
  363.      ENUM = 579,
  364.      FAST_SYM = 580,
  365.      FLOAT_SYM = 581,
  366.      GEOMETRY_SYM = 582,
  367.      INT_SYM = 583,
  368.      LIMIT = 584,
  369.      LONGBLOB = 585,
  370.      LONGTEXT = 586,
  371.      MEDIUMBLOB = 587,
  372.      MEDIUMINT = 588,
  373.      MEDIUMTEXT = 589,
  374.      NUMERIC_SYM = 590,
  375.      PRECISION = 591,
  376.      PREPARE_SYM = 592,
  377.      DEALLOCATE_SYM = 593,
  378.      QUICK = 594,
  379.      REAL = 595,
  380.      SIGNED_SYM = 596,
  381.      SMALLINT = 597,
  382.      STRING_SYM = 598,
  383.      TEXT_SYM = 599,
  384.      TIMESTAMP = 600,
  385.      TIME_SYM = 601,
  386.      TINYBLOB = 602,
  387.      TINYINT = 603,
  388.      TINYTEXT = 604,
  389.      ULONGLONG_NUM = 605,
  390.      UNSIGNED = 606,
  391.      VARBINARY = 607,
  392.      VARCHAR = 608,
  393.      VARYING = 609,
  394.      ZEROFILL = 610,
  395.      AGAINST = 611,
  396.      ATAN = 612,
  397.      BETWEEN_SYM = 613,
  398.      BIT_AND = 614,
  399.      BIT_OR = 615,
  400.      BIT_XOR = 616,
  401.      CASE_SYM = 617,
  402.      CONCAT = 618,
  403.      CONCAT_WS = 619,
  404.      CONVERT_TZ_SYM = 620,
  405.      CURDATE = 621,
  406.      CURTIME = 622,
  407.      DATABASE = 623,
  408.      DATE_ADD_INTERVAL = 624,
  409.      DATE_SUB_INTERVAL = 625,
  410.      DAY_HOUR_SYM = 626,
  411.      DAY_MICROSECOND_SYM = 627,
  412.      DAY_MINUTE_SYM = 628,
  413.      DAY_SECOND_SYM = 629,
  414.      DAY_SYM = 630,
  415.      DECODE_SYM = 631,
  416.      DES_ENCRYPT_SYM = 632,
  417.      DES_DECRYPT_SYM = 633,
  418.      ELSE = 634,
  419.      ELT_FUNC = 635,
  420.      ENCODE_SYM = 636,
  421.      ENGINE_SYM = 637,
  422.      ENGINES_SYM = 638,
  423.      ENCRYPT = 639,
  424.      EXPORT_SET = 640,
  425.      EXTRACT_SYM = 641,
  426.      FIELD_FUNC = 642,
  427.      FORMAT_SYM = 643,
  428.      FOR_SYM = 644,
  429.      FROM_UNIXTIME = 645,
  430.      GEOMCOLLFROMTEXT = 646,
  431.      GEOMFROMTEXT = 647,
  432.      GEOMFROMWKB = 648,
  433.      GEOMETRYCOLLECTION = 649,
  434.      GROUP_CONCAT_SYM = 650,
  435.      GROUP_UNIQUE_USERS = 651,
  436.      GET_FORMAT = 652,
  437.      HOUR_MICROSECOND_SYM = 653,
  438.      HOUR_MINUTE_SYM = 654,
  439.      HOUR_SECOND_SYM = 655,
  440.      HOUR_SYM = 656,
  441.      IDENTIFIED_SYM = 657,
  442.      IF = 658,
  443.      INSERT_METHOD = 659,
  444.      INTERVAL_SYM = 660,
  445.      LAST_INSERT_ID = 661,
  446.      LEFT = 662,
  447.      LINEFROMTEXT = 663,
  448.      LINESTRING = 664,
  449.      LOCATE = 665,
  450.      MAKE_SET_SYM = 666,
  451.      MASTER_POS_WAIT = 667,
  452.      MICROSECOND_SYM = 668,
  453.      MINUTE_MICROSECOND_SYM = 669,
  454.      MINUTE_SECOND_SYM = 670,
  455.      MINUTE_SYM = 671,
  456.      MODE_SYM = 672,
  457.      MODIFY_SYM = 673,
  458.      MONTH_SYM = 674,
  459.      MLINEFROMTEXT = 675,
  460.      MPOINTFROMTEXT = 676,
  461.      MPOLYFROMTEXT = 677,
  462.      MULTILINESTRING = 678,
  463.      MULTIPOINT = 679,
  464.      MULTIPOLYGON = 680,
  465.      NOW_SYM = 681,
  466.      OLD_PASSWORD = 682,
  467.      PASSWORD = 683,
  468.      PARAM_MARKER = 684,
  469.      POINTFROMTEXT = 685,
  470.      POINT_SYM = 686,
  471.      POLYFROMTEXT = 687,
  472.      POLYGON = 688,
  473.      POSITION_SYM = 689,
  474.      PROCEDURE = 690,
  475.      RAND = 691,
  476.      REPLACE = 692,
  477.      RIGHT = 693,
  478.      ROUND = 694,
  479.      SECOND_SYM = 695,
  480.      SECOND_MICROSECOND_SYM = 696,
  481.      SHARE_SYM = 697,
  482.      SUBDATE_SYM = 698,
  483.      SUBSTRING = 699,
  484.      SUBSTRING_INDEX = 700,
  485.      TRIM = 701,
  486.      UDA_CHAR_SUM = 702,
  487.      UDA_FLOAT_SUM = 703,
  488.      UDA_INT_SUM = 704,
  489.      UDF_CHAR_FUNC = 705,
  490.      UDF_FLOAT_FUNC = 706,
  491.      UDF_INT_FUNC = 707,
  492.      UNIQUE_USERS = 708,
  493.      UNIX_TIMESTAMP = 709,
  494.      USER = 710,
  495.      UTC_DATE_SYM = 711,
  496.      UTC_TIME_SYM = 712,
  497.      UTC_TIMESTAMP_SYM = 713,
  498.      WEEK_SYM = 714,
  499.      WHEN_SYM = 715,
  500.      WORK_SYM = 716,
  501.      YEAR_MONTH_SYM = 717,
  502.      YEAR_SYM = 718,
  503.      YEARWEEK = 719,
  504.      BENCHMARK_SYM = 720,
  505.      END = 721,
  506.      THEN_SYM = 722,
  507.      SQL_BIG_RESULT = 723,
  508.      SQL_CACHE_SYM = 724,
  509.      SQL_CALC_FOUND_ROWS = 725,
  510.      SQL_NO_CACHE_SYM = 726,
  511.      SQL_SMALL_RESULT = 727,
  512.      SQL_BUFFER_RESULT = 728,
  513.      ISSUER_SYM = 729,
  514.      CIPHER_SYM = 730,
  515.      BEFORE_SYM = 731,
  516.      NEG = 732
  517.    };
  518. #endif
  519. #define END_OF_INPUT 258
  520. #define CLOSE_SYM 259
  521. #define HANDLER_SYM 260
  522. #define LAST_SYM 261
  523. #define NEXT_SYM 262
  524. #define PREV_SYM 263
  525. #define DIV_SYM 264
  526. #define EQ 265
  527. #define EQUAL_SYM 266
  528. #define SOUNDS_SYM 267
  529. #define GE 268
  530. #define GT_SYM 269
  531. #define LE 270
  532. #define LT 271
  533. #define NE 272
  534. #define IS 273
  535. #define MOD_SYM 274
  536. #define SHIFT_LEFT 275
  537. #define SHIFT_RIGHT 276
  538. #define SET_VAR 277
  539. #define ABORT_SYM 278
  540. #define ADD 279
  541. #define AFTER_SYM 280
  542. #define ALTER 281
  543. #define ANALYZE_SYM 282
  544. #define ANY_SYM 283
  545. #define AVG_SYM 284
  546. #define BEGIN_SYM 285
  547. #define BINLOG_SYM 286
  548. #define CHANGE 287
  549. #define CLIENT_SYM 288
  550. #define COMMENT_SYM 289
  551. #define COMMIT_SYM 290
  552. #define CONSISTENT_SYM 291
  553. #define COUNT_SYM 292
  554. #define CREATE 293
  555. #define CROSS 294
  556. #define CUBE_SYM 295
  557. #define DELETE_SYM 296
  558. #define DUAL_SYM 297
  559. #define DO_SYM 298
  560. #define DROP 299
  561. #define EVENTS_SYM 300
  562. #define EXECUTE_SYM 301
  563. #define EXPANSION_SYM 302
  564. #define FLUSH_SYM 303
  565. #define HELP_SYM 304
  566. #define INSERT 305
  567. #define RELAY_THREAD 306
  568. #define KILL_SYM 307
  569. #define LOAD 308
  570. #define LOCKS_SYM 309
  571. #define LOCK_SYM 310
  572. #define MASTER_SYM 311
  573. #define MAX_SYM 312
  574. #define MIN_SYM 313
  575. #define NONE_SYM 314
  576. #define OPTIMIZE 315
  577. #define PURGE 316
  578. #define REPAIR 317
  579. #define REPLICATION 318
  580. #define RESET_SYM 319
  581. #define ROLLBACK_SYM 320
  582. #define ROLLUP_SYM 321
  583. #define SAVEPOINT_SYM 322
  584. #define SELECT_SYM 323
  585. #define SHOW 324
  586. #define SLAVE 325
  587. #define SNAPSHOT_SYM 326
  588. #define SQL_THREAD 327
  589. #define START_SYM 328
  590. #define STD_SYM 329
  591. #define VARIANCE_SYM 330
  592. #define STOP_SYM 331
  593. #define SUM_SYM 332
  594. #define ADDDATE_SYM 333
  595. #define SUPER_SYM 334
  596. #define TRUNCATE_SYM 335
  597. #define UNLOCK_SYM 336
  598. #define UNTIL_SYM 337
  599. #define UPDATE_SYM 338
  600. #define ACTION 339
  601. #define AGGREGATE_SYM 340
  602. #define ALL 341
  603. #define AND_SYM 342
  604. #define AS 343
  605. #define ASC 344
  606. #define AUTO_INC 345
  607. #define AVG_ROW_LENGTH 346
  608. #define BACKUP_SYM 347
  609. #define BERKELEY_DB_SYM 348
  610. #define BINARY 349
  611. #define BIT_SYM 350
  612. #define BOOL_SYM 351
  613. #define BOOLEAN_SYM 352
  614. #define BOTH 353
  615. #define BTREE_SYM 354
  616. #define BY 355
  617. #define BYTE_SYM 356
  618. #define CACHE_SYM 357
  619. #define CASCADE 358
  620. #define CAST_SYM 359
  621. #define CHARSET 360
  622. #define CHECKSUM_SYM 361
  623. #define CHECK_SYM 362
  624. #define COMMITTED_SYM 363
  625. #define COLLATE_SYM 364
  626. #define COLLATION_SYM 365
  627. #define COLUMNS 366
  628. #define COLUMN_SYM 367
  629. #define CONCURRENT 368
  630. #define CONSTRAINT 369
  631. #define CONVERT_SYM 370
  632. #define CURRENT_USER 371
  633. #define DATABASES 372
  634. #define DATA_SYM 373
  635. #define DEFAULT 374
  636. #define DELAYED_SYM 375
  637. #define DELAY_KEY_WRITE_SYM 376
  638. #define DESC 377
  639. #define DESCRIBE 378
  640. #define DES_KEY_FILE 379
  641. #define DISABLE_SYM 380
  642. #define DISCARD 381
  643. #define DISTINCT 382
  644. #define DUPLICATE_SYM 383
  645. #define DYNAMIC_SYM 384
  646. #define ENABLE_SYM 385
  647. #define ENCLOSED 386
  648. #define ESCAPED 387
  649. #define DIRECTORY_SYM 388
  650. #define ESCAPE_SYM 389
  651. #define EXISTS 390
  652. #define EXTENDED_SYM 391
  653. #define FALSE_SYM 392
  654. #define FILE_SYM 393
  655. #define FIRST_SYM 394
  656. #define FIXED_SYM 395
  657. #define FLOAT_NUM 396
  658. #define FORCE_SYM 397
  659. #define FOREIGN 398
  660. #define FROM 399
  661. #define FULL 400
  662. #define FULLTEXT_SYM 401
  663. #define GLOBAL_SYM 402
  664. #define GRANT 403
  665. #define GRANTS 404
  666. #define GREATEST_SYM 405
  667. #define GROUP 406
  668. #define HAVING 407
  669. #define HASH_SYM 408
  670. #define HEX_NUM 409
  671. #define HIGH_PRIORITY 410
  672. #define HOSTS_SYM 411
  673. #define IDENT 412
  674. #define IDENT_QUOTED 413
  675. #define IGNORE_SYM 414
  676. #define IMPORT 415
  677. #define INDEX_SYM 416
  678. #define INDEXES 417
  679. #define INFILE 418
  680. #define INNER_SYM 419
  681. #define INNOBASE_SYM 420
  682. #define INTO 421
  683. #define IN_SYM 422
  684. #define ISOLATION 423
  685. #define JOIN_SYM 424
  686. #define KEYS 425
  687. #define KEY_SYM 426
  688. #define LEADING 427
  689. #define LEAST_SYM 428
  690. #define LEAVES 429
  691. #define LEVEL_SYM 430
  692. #define LEX_HOSTNAME 431
  693. #define LIKE 432
  694. #define LINES 433
  695. #define LOCAL_SYM 434
  696. #define LOG_SYM 435
  697. #define LOGS_SYM 436
  698. #define LONG_NUM 437
  699. #define LONG_SYM 438
  700. #define LOW_PRIORITY 439
  701. #define MASTER_HOST_SYM 440
  702. #define MASTER_USER_SYM 441
  703. #define MASTER_LOG_FILE_SYM 442
  704. #define MASTER_LOG_POS_SYM 443
  705. #define MASTER_PASSWORD_SYM 444
  706. #define MASTER_PORT_SYM 445
  707. #define MASTER_CONNECT_RETRY_SYM 446
  708. #define MASTER_SERVER_ID_SYM 447
  709. #define MASTER_SSL_SYM 448
  710. #define MASTER_SSL_CA_SYM 449
  711. #define MASTER_SSL_CAPATH_SYM 450
  712. #define MASTER_SSL_CERT_SYM 451
  713. #define MASTER_SSL_CIPHER_SYM 452
  714. #define MASTER_SSL_KEY_SYM 453
  715. #define RELAY_LOG_FILE_SYM 454
  716. #define RELAY_LOG_POS_SYM 455
  717. #define MATCH 456
  718. #define MAX_ROWS 457
  719. #define MAX_CONNECTIONS_PER_HOUR 458
  720. #define MAX_QUERIES_PER_HOUR 459
  721. #define MAX_UPDATES_PER_HOUR 460
  722. #define MEDIUM_SYM 461
  723. #define MIN_ROWS 462
  724. #define NAMES_SYM 463
  725. #define NATIONAL_SYM 464
  726. #define NATURAL 465
  727. #define NDBCLUSTER_SYM 466
  728. #define NEW_SYM 467
  729. #define NCHAR_SYM 468
  730. #define NCHAR_STRING 469
  731. #define NVARCHAR_SYM 470
  732. #define NOT 471
  733. #define NO_SYM 472
  734. #define NULL_SYM 473
  735. #define NUM 474
  736. #define OFFSET_SYM 475
  737. #define ON 476
  738. #define ONE_SHOT_SYM 477
  739. #define OPEN_SYM 478
  740. #define OPTION 479
  741. #define OPTIONALLY 480
  742. #define OR_SYM 481
  743. #define OR_OR_CONCAT 482
  744. #define ORDER_SYM 483
  745. #define OUTER 484
  746. #define OUTFILE 485
  747. #define DUMPFILE 486
  748. #define PACK_KEYS_SYM 487
  749. #define PARTIAL 488
  750. #define PRIMARY_SYM 489
  751. #define PRIVILEGES 490
  752. #define PROCESS 491
  753. #define PROCESSLIST_SYM 492
  754. #define QUERY_SYM 493
  755. #define RAID_0_SYM 494
  756. #define RAID_STRIPED_SYM 495
  757. #define RAID_TYPE 496
  758. #define RAID_CHUNKS 497
  759. #define RAID_CHUNKSIZE 498
  760. #define READ_SYM 499
  761. #define REAL_NUM 500
  762. #define REFERENCES 501
  763. #define REGEXP 502
  764. #define RELOAD 503
  765. #define RENAME 504
  766. #define REPEATABLE_SYM 505
  767. #define REQUIRE_SYM 506
  768. #define RESOURCES 507
  769. #define RESTORE_SYM 508
  770. #define RESTRICT 509
  771. #define REVOKE 510
  772. #define ROWS_SYM 511
  773. #define ROW_FORMAT_SYM 512
  774. #define ROW_SYM 513
  775. #define RTREE_SYM 514
  776. #define SET 515
  777. #define SEPARATOR_SYM 516
  778. #define SERIAL_SYM 517
  779. #define SERIALIZABLE_SYM 518
  780. #define SESSION_SYM 519
  781. #define SIMPLE_SYM 520
  782. #define SHUTDOWN 521
  783. #define SPATIAL_SYM 522
  784. #define SSL_SYM 523
  785. #define STARTING 524
  786. #define STATUS_SYM 525
  787. #define STORAGE_SYM 526
  788. #define STRAIGHT_JOIN 527
  789. #define SUBJECT_SYM 528
  790. #define TABLES 529
  791. #define TABLE_SYM 530
  792. #define TABLESPACE 531
  793. #define TEMPORARY 532
  794. #define TERMINATED 533
  795. #define TEXT_STRING 534
  796. #define TO_SYM 535
  797. #define TRAILING 536
  798. #define TRANSACTION_SYM 537
  799. #define TRUE_SYM 538
  800. #define TYPE_SYM 539
  801. #define TYPES_SYM 540
  802. #define FUNC_ARG0 541
  803. #define FUNC_ARG1 542
  804. #define FUNC_ARG2 543
  805. #define FUNC_ARG3 544
  806. #define UDF_RETURNS_SYM 545
  807. #define UDF_SONAME_SYM 546
  808. #define UDF_SYM 547
  809. #define UNCOMMITTED_SYM 548
  810. #define UNDERSCORE_CHARSET 549
  811. #define UNICODE_SYM 550
  812. #define UNION_SYM 551
  813. #define UNIQUE_SYM 552
  814. #define USAGE 553
  815. #define USE_FRM 554
  816. #define USE_SYM 555
  817. #define USING 556
  818. #define VALUE_SYM 557
  819. #define VALUES 558
  820. #define VARIABLES 559
  821. #define WHERE 560
  822. #define WITH 561
  823. #define WRITE_SYM 562
  824. #define NO_WRITE_TO_BINLOG 563
  825. #define X509_SYM 564
  826. #define XOR 565
  827. #define COMPRESSED_SYM 566
  828. #define ERRORS 567
  829. #define WARNINGS 568
  830. #define ASCII_SYM 569
  831. #define BIGINT 570
  832. #define BLOB_SYM 571
  833. #define CHAR_SYM 572
  834. #define CHANGED 573
  835. #define COALESCE 574
  836. #define DATETIME 575
  837. #define DATE_SYM 576
  838. #define DECIMAL_SYM 577
  839. #define DOUBLE_SYM 578
  840. #define ENUM 579
  841. #define FAST_SYM 580
  842. #define FLOAT_SYM 581
  843. #define GEOMETRY_SYM 582
  844. #define INT_SYM 583
  845. #define LIMIT 584
  846. #define LONGBLOB 585
  847. #define LONGTEXT 586
  848. #define MEDIUMBLOB 587
  849. #define MEDIUMINT 588
  850. #define MEDIUMTEXT 589
  851. #define NUMERIC_SYM 590
  852. #define PRECISION 591
  853. #define PREPARE_SYM 592
  854. #define DEALLOCATE_SYM 593
  855. #define QUICK 594
  856. #define REAL 595
  857. #define SIGNED_SYM 596
  858. #define SMALLINT 597
  859. #define STRING_SYM 598
  860. #define TEXT_SYM 599
  861. #define TIMESTAMP 600
  862. #define TIME_SYM 601
  863. #define TINYBLOB 602
  864. #define TINYINT 603
  865. #define TINYTEXT 604
  866. #define ULONGLONG_NUM 605
  867. #define UNSIGNED 606
  868. #define VARBINARY 607
  869. #define VARCHAR 608
  870. #define VARYING 609
  871. #define ZEROFILL 610
  872. #define AGAINST 611
  873. #define ATAN 612
  874. #define BETWEEN_SYM 613
  875. #define BIT_AND 614
  876. #define BIT_OR 615
  877. #define BIT_XOR 616
  878. #define CASE_SYM 617
  879. #define CONCAT 618
  880. #define CONCAT_WS 619
  881. #define CONVERT_TZ_SYM 620
  882. #define CURDATE 621
  883. #define CURTIME 622
  884. #define DATABASE 623
  885. #define DATE_ADD_INTERVAL 624
  886. #define DATE_SUB_INTERVAL 625
  887. #define DAY_HOUR_SYM 626
  888. #define DAY_MICROSECOND_SYM 627
  889. #define DAY_MINUTE_SYM 628
  890. #define DAY_SECOND_SYM 629
  891. #define DAY_SYM 630
  892. #define DECODE_SYM 631
  893. #define DES_ENCRYPT_SYM 632
  894. #define DES_DECRYPT_SYM 633
  895. #define ELSE 634
  896. #define ELT_FUNC 635
  897. #define ENCODE_SYM 636
  898. #define ENGINE_SYM 637
  899. #define ENGINES_SYM 638
  900. #define ENCRYPT 639
  901. #define EXPORT_SET 640
  902. #define EXTRACT_SYM 641
  903. #define FIELD_FUNC 642
  904. #define FORMAT_SYM 643
  905. #define FOR_SYM 644
  906. #define FROM_UNIXTIME 645
  907. #define GEOMCOLLFROMTEXT 646
  908. #define GEOMFROMTEXT 647
  909. #define GEOMFROMWKB 648
  910. #define GEOMETRYCOLLECTION 649
  911. #define GROUP_CONCAT_SYM 650
  912. #define GROUP_UNIQUE_USERS 651
  913. #define GET_FORMAT 652
  914. #define HOUR_MICROSECOND_SYM 653
  915. #define HOUR_MINUTE_SYM 654
  916. #define HOUR_SECOND_SYM 655
  917. #define HOUR_SYM 656
  918. #define IDENTIFIED_SYM 657
  919. #define IF 658
  920. #define INSERT_METHOD 659
  921. #define INTERVAL_SYM 660
  922. #define LAST_INSERT_ID 661
  923. #define LEFT 662
  924. #define LINEFROMTEXT 663
  925. #define LINESTRING 664
  926. #define LOCATE 665
  927. #define MAKE_SET_SYM 666
  928. #define MASTER_POS_WAIT 667
  929. #define MICROSECOND_SYM 668
  930. #define MINUTE_MICROSECOND_SYM 669
  931. #define MINUTE_SECOND_SYM 670
  932. #define MINUTE_SYM 671
  933. #define MODE_SYM 672
  934. #define MODIFY_SYM 673
  935. #define MONTH_SYM 674
  936. #define MLINEFROMTEXT 675
  937. #define MPOINTFROMTEXT 676
  938. #define MPOLYFROMTEXT 677
  939. #define MULTILINESTRING 678
  940. #define MULTIPOINT 679
  941. #define MULTIPOLYGON 680
  942. #define NOW_SYM 681
  943. #define OLD_PASSWORD 682
  944. #define PASSWORD 683
  945. #define PARAM_MARKER 684
  946. #define POINTFROMTEXT 685
  947. #define POINT_SYM 686
  948. #define POLYFROMTEXT 687
  949. #define POLYGON 688
  950. #define POSITION_SYM 689
  951. #define PROCEDURE 690
  952. #define RAND 691
  953. #define REPLACE 692
  954. #define RIGHT 693
  955. #define ROUND 694
  956. #define SECOND_SYM 695
  957. #define SECOND_MICROSECOND_SYM 696
  958. #define SHARE_SYM 697
  959. #define SUBDATE_SYM 698
  960. #define SUBSTRING 699
  961. #define SUBSTRING_INDEX 700
  962. #define TRIM 701
  963. #define UDA_CHAR_SUM 702
  964. #define UDA_FLOAT_SUM 703
  965. #define UDA_INT_SUM 704
  966. #define UDF_CHAR_FUNC 705
  967. #define UDF_FLOAT_FUNC 706
  968. #define UDF_INT_FUNC 707
  969. #define UNIQUE_USERS 708
  970. #define UNIX_TIMESTAMP 709
  971. #define USER 710
  972. #define UTC_DATE_SYM 711
  973. #define UTC_TIME_SYM 712
  974. #define UTC_TIMESTAMP_SYM 713
  975. #define WEEK_SYM 714
  976. #define WHEN_SYM 715
  977. #define WORK_SYM 716
  978. #define YEAR_MONTH_SYM 717
  979. #define YEAR_SYM 718
  980. #define YEARWEEK 719
  981. #define BENCHMARK_SYM 720
  982. #define END 721
  983. #define THEN_SYM 722
  984. #define SQL_BIG_RESULT 723
  985. #define SQL_CACHE_SYM 724
  986. #define SQL_CALC_FOUND_ROWS 725
  987. #define SQL_NO_CACHE_SYM 726
  988. #define SQL_SMALL_RESULT 727
  989. #define SQL_BUFFER_RESULT 728
  990. #define ISSUER_SYM 729
  991. #define CIPHER_SYM 730
  992. #define BEFORE_SYM 731
  993. #define NEG 732
  994. /* Copy the first part of user declarations.  */
  995. #line 19 "sql_yacc.yy"
  996. /* thd is passed as an arg to yyparse(), and subsequently to yylex().
  997. ** The type will be void*, so it must be  cast to (THD*) when used.
  998. ** Use the YYTHD macro for this.
  999. */
  1000. #define YYPARSE_PARAM yythd
  1001. #define YYLEX_PARAM yythd
  1002. #define YYTHD ((THD *)yythd)
  1003. #define MYSQL_YACC
  1004. #define YYINITDEPTH 100
  1005. #define YYMAXDEPTH 3200 /* Because of 64K stack */
  1006. #define Lex (YYTHD->lex)
  1007. #define Select Lex->current_select
  1008. #include "mysql_priv.h"
  1009. #include "slave.h"
  1010. #include "lex_symbol.h"
  1011. #include "item_create.h"
  1012. #include <myisam.h>
  1013. #include <myisammrg.h>
  1014. int yylex(void *yylval, void *yythd);
  1015. #define yyoverflow(A,B,C,D,E,F) {ulong val= *(F); if(my_yyoverflow((B), (D), &val)) { yyerror((char*) (A)); return 2; } else { *(F)= (YYSIZE_T)val; }}
  1016. #define WARN_DEPRECATED(A,B) 
  1017.   push_warning_printf(((THD *)yythd), MYSQL_ERROR::WARN_LEVEL_WARN, 
  1018.       ER_WARN_DEPRECATED_SYNTAX, 
  1019.       ER(ER_WARN_DEPRECATED_SYNTAX), (A), (B)); 
  1020. inline Item *or_or_concat(THD *thd, Item* A, Item* B)
  1021. {
  1022.   return (thd->variables.sql_mode & MODE_PIPES_AS_CONCAT ?
  1023.           (Item*) new Item_func_concat(A,B) : (Item*) new Item_cond_or(A,B));
  1024. }
  1025. /* Enabling traces.  */
  1026. #ifndef YYDEBUG
  1027. # define YYDEBUG 0
  1028. #endif
  1029. /* Enabling verbose error messages.  */
  1030. #ifdef YYERROR_VERBOSE
  1031. # undef YYERROR_VERBOSE
  1032. # define YYERROR_VERBOSE 1
  1033. #else
  1034. # define YYERROR_VERBOSE 0
  1035. #endif
  1036. #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
  1037. #line 56 "sql_yacc.yy"
  1038. typedef union YYSTYPE {
  1039.   int  num;
  1040.   ulong ulong_num;
  1041.   ulonglong ulonglong_number;
  1042.   LEX_STRING lex_str;
  1043.   LEX_STRING *lex_str_ptr;
  1044.   LEX_SYMBOL symbol;
  1045.   Table_ident *table;
  1046.   char *simple_string;
  1047.   Item *item;
  1048.   Item_num *item_num;
  1049.   List<Item> *item_list;
  1050.   List<String> *string_list;
  1051.   String *string;
  1052.   key_part_spec *key_part;
  1053.   TABLE_LIST *table_list;
  1054.   udf_func *udf;
  1055.   LEX_USER *lex_user;
  1056.   struct sys_var_with_base variable;
  1057.   Key::Keytype key_type;
  1058.   enum ha_key_alg key_alg;
  1059.   enum db_type db_type;
  1060.   enum row_type row_type;
  1061.   enum ha_rkey_function ha_rkey_mode;
  1062.   enum enum_tx_isolation tx_isolation;
  1063.   enum Cast_target cast_type;
  1064.   enum Item_udftype udf_type;
  1065.   CHARSET_INFO *charset;
  1066.   thr_lock_type lock_type;
  1067.   interval_type interval;
  1068.   timestamp_type date_time_type;
  1069.   st_select_lex *select_lex;
  1070.   chooser_compare_func_creator boolfunc2creator;
  1071. } YYSTYPE;
  1072. /* Line 191 of yacc.c.  */
  1073. #line 1103 "sql_yacc.cc"
  1074. # define yystype YYSTYPE /* obsolescent; will be withdrawn */
  1075. # define YYSTYPE_IS_DECLARED 1
  1076. # define YYSTYPE_IS_TRIVIAL 1
  1077. #endif
  1078. /* Copy the second part of user declarations.  */
  1079. #line 91 "sql_yacc.yy"
  1080. bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
  1081. /* Line 214 of yacc.c.  */
  1082. #line 1118 "sql_yacc.cc"
  1083. #if ! defined (yyoverflow) || YYERROR_VERBOSE
  1084. # ifndef YYFREE
  1085. #  define YYFREE free
  1086. # endif
  1087. # ifndef YYMALLOC
  1088. #  define YYMALLOC malloc
  1089. # endif
  1090. /* The parser invokes alloca or malloc; define the necessary symbols.  */
  1091. # ifdef YYSTACK_USE_ALLOCA
  1092. #  if YYSTACK_USE_ALLOCA
  1093. #   define YYSTACK_ALLOC alloca
  1094. #  endif
  1095. # else
  1096. #  if defined (alloca) || defined (_ALLOCA_H)
  1097. #   define YYSTACK_ALLOC alloca
  1098. #  else
  1099. #   ifdef __GNUC__
  1100. #    define YYSTACK_ALLOC __builtin_alloca
  1101. #   endif
  1102. #  endif
  1103. # endif
  1104. # ifdef YYSTACK_ALLOC
  1105.    /* Pacify GCC's `empty if-body' warning. */
  1106. #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
  1107. # else
  1108. #  if defined (__STDC__) || defined (__cplusplus)
  1109. #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
  1110. #   define YYSIZE_T size_t
  1111. #  endif
  1112. #  define YYSTACK_ALLOC YYMALLOC
  1113. #  define YYSTACK_FREE YYFREE
  1114. # endif
  1115. #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
  1116. #if (! defined (yyoverflow) 
  1117.      && (! defined (__cplusplus) 
  1118.  || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
  1119. /* A type that is properly aligned for any stack member.  */
  1120. union yyalloc
  1121. {
  1122.   short yyss;
  1123.   YYSTYPE yyvs;
  1124.   };
  1125. /* The size of the maximum gap between one aligned stack and the next.  */
  1126. # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
  1127. /* The size of an array large to enough to hold all stacks, each with
  1128.    N elements.  */
  1129. # define YYSTACK_BYTES(N) 
  1130.      ((N) * (sizeof (short) + sizeof (YYSTYPE))
  1131.       + YYSTACK_GAP_MAXIMUM)
  1132. /* Copy COUNT objects from FROM to TO.  The source and destination do
  1133.    not overlap.  */
  1134. # ifndef YYCOPY
  1135. #  if defined (__GNUC__) && 1 < __GNUC__
  1136. #   define YYCOPY(To, From, Count) 
  1137.       __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
  1138. #  else
  1139. #   define YYCOPY(To, From, Count)
  1140.       do
  1141. {
  1142.   register YYSIZE_T yyi;
  1143.   for (yyi = 0; yyi < (Count); yyi++)
  1144.     (To)[yyi] = (From)[yyi];
  1145. }
  1146.       while (0)
  1147. #  endif
  1148. # endif
  1149. /* Relocate STACK from its old location to the new one.  The
  1150.    local variables YYSIZE and YYSTACKSIZE give the old and new number of
  1151.    elements in the stack, and YYPTR gives the new location of the
  1152.    stack.  Advance YYPTR to a properly aligned location for the next
  1153.    stack.  */
  1154. # define YYSTACK_RELOCATE(Stack)
  1155.     do
  1156.       {
  1157. YYSIZE_T yynewbytes;
  1158. YYCOPY (&yyptr->Stack, Stack, yysize);
  1159. Stack = &yyptr->Stack;
  1160. yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; 
  1161. yyptr += yynewbytes / sizeof (*yyptr);
  1162.       }
  1163.     while (0)
  1164. #endif
  1165. #if defined (__STDC__) || defined (__cplusplus)
  1166.    typedef signed char yysigned_char;
  1167. #else
  1168.    typedef short yysigned_char;
  1169. #endif
  1170. /* YYFINAL -- State number of the termination state. */
  1171. #define YYFINAL  548
  1172. /* YYLAST -- Last index in YYTABLE.  */
  1173. #define YYLAST   39302
  1174. /* YYNTOKENS -- Number of terminals. */
  1175. #define YYNTOKENS  495
  1176. /* YYNNTS -- Number of nonterminals. */
  1177. #define YYNNTS  496
  1178. /* YYNRULES -- Number of rules. */
  1179. #define YYNRULES  1677
  1180. /* YYNRULES -- Number of states. */
  1181. #define YYNSTATES  3112
  1182. /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
  1183. #define YYUNDEFTOK  2
  1184. #define YYMAXUTOK   732
  1185. #define YYTRANSLATE(YYX) 
  1186.   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
  1187. /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
  1188. static const unsigned short yytranslate[] =
  1189. {
  1190.        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1191.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1192.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1193.        2,     2,     2,   490,     2,     2,     2,   483,   478,     2,
  1194.      487,   488,   481,   480,   489,   479,   494,   482,     2,     2,
  1195.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1196.        2,     2,     2,     2,   493,     2,     2,     2,     2,     2,
  1197.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1198.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1199.        2,     2,     2,     2,   484,     2,     2,     2,     2,     2,
  1200.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1201.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1202.        2,     2,     2,   491,   477,   492,   485,     2,     2,     2,
  1203.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1204.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1205.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1206.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1207.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1208.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1209.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1210.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1211.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1212.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1213.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1214.        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
  1215.        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
  1216.        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
  1217.       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
  1218.       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
  1219.       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
  1220.       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
  1221.       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
  1222.       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
  1223.       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
  1224.       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
  1225.       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
  1226.      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
  1227.      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
  1228.      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
  1229.      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
  1230.      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
  1231.      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
  1232.      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
  1233.      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
  1234.      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
  1235.      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
  1236.      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
  1237.      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
  1238.      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
  1239.      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
  1240.      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
  1241.      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
  1242.      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
  1243.      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
  1244.      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
  1245.      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
  1246.      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
  1247.      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
  1248.      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
  1249.      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
  1250.      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
  1251.      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
  1252.      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
  1253.      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
  1254.      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
  1255.      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
  1256.      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
  1257.      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
  1258.      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
  1259.      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
  1260.      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
  1261.      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
  1262.      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
  1263.      475,   476,   486
  1264. };
  1265. #if YYDEBUG
  1266. /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
  1267.    YYRHS.  */
  1268. static const unsigned short yyprhs[] =
  1269. {
  1270.        0,     0,     3,     5,     8,    10,    12,    14,    16,    18,
  1271.       20,    22,    24,    26,    28,    30,    32,    34,    36,    38,
  1272.       40,    42,    44,    46,    48,    50,    52,    54,    56,    58,
  1273.       60,    62,    64,    66,    68,    70,    72,    74,    76,    78,
  1274.       80,    82,    84,    86,    88,    90,    92,    94,    96,    98,
  1275.      102,   104,   106,   111,   113,   116,   117,   122,   123,   126,
  1276.      130,   132,   135,   138,   139,   145,   147,   151,   155,   159,
  1277.      163,   167,   171,   175,   179,   183,   187,   191,   195,   197,
  1278.      201,   205,   209,   213,   214,   222,   223,   235,   236,   243,
  1279.      244,   254,   257,   260,   263,   268,   273,   274,   279,   280,
  1280.      281,   287,   288,   296,   297,   298,   305,   306,   308,   309,
  1281.      311,   313,   316,   318,   320,   321,   323,   325,   328,   330,
  1282.      331,   335,   336,   338,   340,   343,   345,   348,   352,   356,
  1283.      360,   364,   368,   372,   376,   380,   384,   388,   392,   396,
  1284.      400,   404,   408,   412,   416,   422,   424,   426,   430,   435,
  1285.      440,   445,   450,   452,   454,   456,   458,   460,   462,   464,
  1286.      466,   468,   470,   472,   474,   477,   478,   480,   482,   484,
  1287.      486,   488,   492,   494,   496,   499,   502,   509,   517,   526,
  1288.      529,   532,   533,   535,   538,   539,   541,   544,   545,   550,
  1289.      554,   558,   562,   565,   567,   569,   575,   578,   583,   585,
  1290.      590,   592,   598,   603,   608,   612,   614,   616,   619,   621,
  1291.      623,   626,   628,   630,   632,   635,   639,   642,   646,   649,
  1292.      652,   656,   660,   664,   665,   672,   673,   680,   683,   685,
  1293.      687,   689,   691,   693,   695,   697,   699,   701,   703,   705,
  1294.      708,   711,   713,   716,   718,   721,   725,   728,   730,   732,
  1295.      734,   736,   738,   740,   742,   745,   746,   750,   752,   758,
  1296.      759,   761,   764,   766,   768,   770,   772,   773,   777,   778,
  1297.      780,   781,   783,   786,   788,   790,   793,   796,   801,   803,
  1298.      807,   810,   812,   815,   818,   820,   823,   826,   828,   831,
  1299.      833,   835,   837,   839,   841,   843,   845,   847,   849,   851,
  1300.      852,   855,   857,   859,   860,   862,   863,   865,   867,   869,
  1301.      872,   873,   875,   876,   881,   883,   888,   892,   894,   895,
  1302.      897,   900,   902,   906,   910,   913,   916,   919,   921,   923,
  1303.      926,   929,   932,   934,   937,   940,   943,   946,   948,   950,
  1304.      951,   953,   955,   957,   959,   960,   962,   964,   966,   967,
  1305.      970,   973,   975,   977,   979,   984,   987,   989,   994,   995,
  1306.      997,   998,  1001,  1003,  1007,  1008,  1015,  1016,  1022,  1023,
  1307.     1025,  1026,  1029,  1032,  1034,  1038,  1041,  1045,  1048,  1053,
  1308.     1054,  1061,  1062,  1063,  1072,  1077,  1082,  1086,  1090,  1093,
  1309.     1096,  1103,  1109,  1113,  1119,  1121,  1123,  1124,  1126,  1127,
  1310.     1129,  1130,  1132,  1134,  1135,  1138,  1140,  1141,  1143,  1145,
  1311.     1147,  1148,  1154,  1158,  1159,  1165,  1169,  1173,  1174,  1178,
  1312.     1179,  1182,  1184,  1188,  1189,  1191,  1193,  1194,  1197,  1199,
  1313.     1203,  1204,  1211,  1212,  1219,  1220,  1226,  1227,  1229,  1231,
  1314.     1232,  1239,  1240,  1242,  1244,  1247,  1249,  1251,  1253,  1254,
  1315.     1261,  1262,  1268,  1269,  1271,  1273,  1276,  1278,  1280,  1282,
  1316.     1284,  1286,  1287,  1294,  1295,  1297,  1299,  1300,  1305,  1307,
  1317.     1311,  1315,  1321,  1323,  1327,  1330,  1332,  1334,  1335,  1342,
  1318.     1344,  1348,  1352,  1353,  1356,  1357,  1362,  1363,  1366,  1368,
  1319.     1371,  1376,  1379,  1383,  1384,  1388,  1389,  1390,  1397,  1400,
  1320.     1402,  1404,  1407,  1410,  1419,  1424,  1425,  1427,  1430,  1432,
  1321.     1434,  1436,  1438,  1440,  1442,  1444,  1446,  1448,  1450,  1452,
  1322.     1453,  1456,  1461,  1465,  1467,  1469,  1474,  1475,  1476,  1478,
  1323.     1480,  1481,  1484,  1487,  1489,  1491,  1492,  1495,  1497,  1499,
  1324.     1501,  1503,  1505,  1507,  1509,  1511,  1513,  1515,  1521,  1528,
  1325.     1532,  1537,  1543,  1550,  1554,  1558,  1562,  1566,  1571,  1576,
  1326.     1582,  1586,  1591,  1595,  1600,  1604,  1608,  1613,  1617,  1621,
  1327.     1625,  1629,  1633,  1637,  1641,  1645,  1649,  1653,  1657,  1661,
  1328.     1666,  1671,  1677,  1684,  1688,  1692,  1696,  1700,  1705,  1710,
  1329.     1716,  1720,  1725,  1729,  1734,  1738,  1742,  1747,  1751,  1755,
  1330.     1759,  1763,  1767,  1771,  1775,  1779,  1783,  1787,  1791,  1795,
  1331.     1800,  1805,  1807,  1813,  1820,  1824,  1829,  1835,  1842,  1846,
  1332.     1850,  1854,  1859,  1864,  1870,  1874,  1879,  1883,  1888,  1892,
  1333.     1896,  1901,  1905,  1909,  1913,  1917,  1921,  1925,  1929,  1933,
  1334.     1937,  1941,  1945,  1949,  1954,  1959,  1961,  1964,  1966,  1970,
  1335.     1972,  1974,  1979,  1982,  1988,  1990,  1993,  1996,  1999,  2002,
  1336.     2005,  2009,  2015,  2022,  2025,  2027,  2032,  2040,  2045,  2048,
  1337.     2055,  2062,  2069,  2076,  2081,  2086,  2090,  2095,  2102,  2111,
  1338.     2118,  2127,  2132,  2139,  2144,  2151,  2156,  2161,  2166,  2171,
  1339.     2178,  2187,  2190,  2193,  2198,  2201,  2209,  2217,  2221,  2226,
  1340.     2231,  2238,  2245,  2250,  2257,  2264,  2271,  2276,  2283,  2288,
  1341.     2295,  2304,  2315,  2328,  2335,  2340,  2347,  2354,  2356,  2363,
  1342.     2368,  2377,  2388,  2393,  2395,  2399,  2404,  2411,  2418,  2427,
  1343.     2434,  2441,  2446,  2453,  2460,  2469,  2474,  2479,  2486,  2491,
  1344.     2494,  2499,  2504,  2509,  2516,  2521,  2525,  2534,  2541,  2546,
  1345.     2553,  2560,  2569,  2574,  2583,  2590,  2599,  2606,  2615,  2620,
  1346.     2625,  2632,  2637,  2645,  2653,  2661,  2668,  2675,  2682,  2689,
  1347.     2696,  2701,  2706,  2711,  2716,  2721,  2726,  2737,  2741,  2746,
  1348.     2750,  2753,  2756,  2759,  2764,  2771,  2776,  2781,  2788,  2795,
  1349.     2802,  2807,  2814,  2819,  2826,  2831,  2836,  2841,  2846,  2853,
  1350.     2858,  2865,  2870,  2877,  2882,  2887,  2894,  2899,  2906,  2911,
  1351.     2918,  2923,  2928,  2935,  2940,  2947,  2948,  2952,  2956,  2957,
  1352.     2959,  2960,  2963,  2968,  2973,  2978,  2983,  2989,  2994,  2995,
  1353.     2996,  3004,  3015,  3020,  3025,  3030,  3035,  3040,  3041,  3050,
  1354.     3051,  3053,  3054,  3057,  3058,  3060,  3061,  3065,  3068,  3072,
  1355.     3075,  3077,  3080,  3082,  3085,  3087,  3089,  3091,  3092,  3095,
  1356.     3097,  3101,  3103,  3107,  3108,  3111,  3113,  3117,  3118,  3120,
  1357.     3121,  3124,  3125,  3128,  3132,  3138,  3140,  3144,  3148,  3152,
  1358.     3158,  3159,  3168,  3176,  3177,  3188,  3195,  3203,  3204,  3215,
  1359.     3222,  3227,  3229,  3232,  3235,  3236,  3241,  3252,  3258,  3262,
  1360.     3265,  3269,  3270,  3271,  3277,  3278,  3280,  3281,  3284,  3287,
  1361.     3290,  3291,  3297,  3298,  3300,  3304,  3306,  3308,  3310,  3314,
  1362.     3316,  3318,  3320,  3322,  3324,  3326,  3328,  3330,  3332,  3334,
  1363.     3336,  3338,  3340,  3342,  3344,  3346,  3348,  3350,  3352,  3354,
  1364.     3356,  3358,  3359,  3361,  3363,  3364,  3367,  3368,  3370,  3371,
  1365.     3372,  3376,  3377,  3378,  3382,  3385,  3386,  3387,  3392,  3397,
  1366.     3400,  3401,  3404,  3407,  3408,  3410,  3411,  3416,  3421,  3424,
  1367.     3425,  3427,  3429,  3430,  3432,  3433,  3435,  3438,  3440,  3444,
  1368.     3448,  3449,  3452,  3454,  3456,  3458,  3460,  3462,  3464,  3466,
  1369.     3468,  3470,  3472,  3473,  3474,  3481,  3482,  3484,  3488,  3490,
  1370.     3493,  3494,  3497,  3501,  3503,  3506,  3507,  3514,  3518,  3521,
  1371.     3522,  3526,  3533,  3534,  3541,  3546,  3550,  3551,  3556,  3558,
  1372.     3562,  3564,  3565,  3568,  3569,  3571,  3572,  3573,  3582,  3583,
  1373.     3584,  3591,  3592,  3594,  3596,  3598,  3600,  3602,  3605,  3607,
  1374.     3609,  3611,  3615,  3620,  3621,  3625,  3626,  3630,  3633,  3637,
  1375.     3639,  3642,  3645,  3646,  3650,  3651,  3657,  3661,  3663,  3667,
  1376.     3669,  3673,  3675,  3677,  3678,  3680,  3681,  3686,  3687,  3689,
  1377.     3693,  3695,  3697,  3699,  3700,  3701,  3708,  3709,  3710,  3722,
  1378.     3726,  3728,  3732,  3736,  3738,  3742,  3743,  3745,  3746,  3751,
  1379.     3752,  3759,  3760,  3761,  3768,  3769,  3770,  3778,  3780,  3784,
  1380.     3788,  3794,  3795,  3798,  3799,  3802,  3804,  3806,  3808,  3812,
  1381.     3813,  3815,  3816,  3820,  3823,  3827,  3832,  3837,  3838,  3843,
  1382.     3850,  3867,  3870,  3873,  3874,  3881,  3886,  3889,  3892,  3895,
  1383.     3897,  3903,  3909,  3912,  3915,  3918,  3921,  3924,  3928,  3931,
  1384.     3934,  3937,  3939,  3941,  3945,  3950,  3954,  3957,  3960,  3962,
  1385.     3964,  3966,  3968,  3969,  3971,  3972,  3975,  3976,  3979,  3980,
  1386.     3982,  3984,  3986,  3987,  3990,  3991,  3994,  3995,  4000,  4001,
  1387.     4006,  4008,  4010,  4011,  4013,  4014,  4016,  4018,  4019,  4024,
  1388.     4028,  4030,  4031,  4035,  4040,  4043,  4045,  4047,  4049,  4051,
  1389.     4053,  4055,  4057,  4059,  4060,  4062,  4063,  4067,  4071,  4073,
  1390.     4075,  4077,  4080,  4081,  4085,  4089,  4092,  4095,  4098,  4101,
  1391.     4102,  4118,  4124,  4129,  4130,  4132,  4133,  4135,  4137,  4138,
  1392.     4140,  4142,  4143,  4146,  4149,  4151,  4155,  4160,  4164,  4168,
  1393.     4169,  4172,  4175,  4177,  4181,  4185,  4186,  4190,  4192,  4194,
  1394.     4197,  4200,  4202,  4204,  4206,  4208,  4211,  4214,  4216,  4218,
  1395.     4220,  4222,  4224,  4226,  4229,  4232,  4235,  4238,  4240,  4242,
  1396.     4244,  4246,  4248,  4250,  4252,  4256,  4262,  4264,  4266,  4270,
  1397.     4275,  4281,  4283,  4289,  4293,  4296,  4298,  4302,  4305,  4307,
  1398.     4309,  4311,  4313,  4315,  4317,  4319,  4321,  4323,  4325,  4327,
  1399.     4331,  4334,  4336,  4338,  4340,  4342,  4344,  4346,  4348,  4350,
  1400.     4352,  4354,  4356,  4358,  4360,  4362,  4364,  4366,  4368,  4370,
  1401.     4372,  4374,  4376,  4378,  4380,  4382,  4384,  4386,  4388,  4390,
  1402.     4392,  4394,  4396,  4398,  4400,  4402,  4404,  4406,  4408,  4410,
  1403.     4412,  4414,  4416,  4418,  4420,  4422,  4424,  4426,  4428,  4430,
  1404.     4432,  4434,  4436,  4438,  4440,  4442,  4444,  4446,  4448,  4450,
  1405.     4452,  4454,  4456,  4458,  4460,  4462,  4464,  4466,  4468,  4470,
  1406.     4472,  4474,  4476,  4478,  4480,  4482,  4484,  4486,  4488,  4490,
  1407.     4492,  4494,  4496,  4498,  4500,  4502,  4504,  4506,  4508,  4510,
  1408.     4512,  4514,  4516,  4518,  4520,  4522,  4524,  4526,  4528,  4530,
  1409.     4532,  4534,  4536,  4538,  4540,  4542,  4544,  4546,  4548,  4550,
  1410.     4552,  4554,  4556,  4558,  4560,  4562,  4564,  4566,  4568,  4570,
  1411.     4572,  4574,  4576,  4578,  4580,  4582,  4584,  4586,  4588,  4590,
  1412.     4592,  4594,  4596,  4598,  4600,  4602,  4604,  4606,  4608,  4610,
  1413.     4612,  4614,  4616,  4618,  4620,  4622,  4624,  4626,  4628,  4630,
  1414.     4632,  4634,  4636,  4638,  4640,  4642,  4644,  4646,  4648,  4650,
  1415.     4652,  4654,  4656,  4658,  4660,  4662,  4664,  4666,  4668,  4670,
  1416.     4672,  4674,  4676,  4678,  4680,  4682,  4684,  4686,  4688,  4690,
  1417.     4692,  4694,  4696,  4698,  4700,  4702,  4704,  4706,  4708,  4710,
  1418.     4712,  4714,  4716,  4718,  4720,  4722,  4724,  4726,  4728,  4730,
  1419.     4732,  4734,  4736,  4738,  4740,  4742,  4744,  4746,  4748,  4750,
  1420.     4752,  4753,  4758,  4759,  4761,  4763,  4767,  4770,  4773,  4775,
  1421.     4777,  4779,  4781,  4782,  4784,  4785,  4787,  4789,  4791,  4792,
  1422.     4795,  4798,  4801,  4805,  4810,  4815,  4822,  4825,  4829,  4833,
  1423.     4839,  4841,  4845,  4849,  4852,  4855,  4858,  4860,  4862,  4867,
  1424.     4872,  4874,  4876,  4878,  4880,  4882,  4883,  4888,  4890,  4892,
  1425.     4894,  4898,  4902,  4904,  4906,  4909,  4912,  4915,  4920,  4924,
  1426.     4925,  4933,  4935,  4938,  4940,  4942,  4944,  4946,  4948,  4950,
  1427.     4951,  4957,  4959,  4961,  4963,  4965,  4967,  4968,  4972,  4978,
  1428.     4986,  4987,  4997,  4999,  5002,  5003,  5005,  5007,  5011,  5012,
  1429.     5016,  5017,  5021,  5022,  5026,  5027,  5031,  5033,  5035,  5037,
  1430.     5039,  5041,  5043,  5045,  5047,  5049,  5051,  5053,  5056,  5059,
  1431.     5061,  5065,  5068,  5071,  5074,  5075,  5077,  5081,  5083,  5086,
  1432.     5089,  5092,  5094,  5098,  5102,  5104,  5106,  5110,  5115,  5121,
  1433.     5123,  5124,  5128,  5132,  5134,  5136,  5137,  5140,  5143,  5146,
  1434.     5149,  5150,  5153,  5156,  5158,  5161,  5164,  5167,  5170,  5171,
  1435.     5175,  5176,  5178,  5180,  5182,  5187,  5190,  5191,  5193,  5194,
  1436.     5199,  5201,  5203,  5204,  5205,  5208,  5211,  5213,  5214,  5216,
  1437.     5218,  5222,  5224,  5228,  5230,  5234,  5236,  5239
  1438. };
  1439. /* YYRHS -- A `-1'-separated list of the rules' RHS. */
  1440. static const short yyrhs[] =
  1441. {
  1442.      496,     0,    -1,     3,    -1,   497,     3,    -1,   611,    -1,
  1443.      649,    -1,   639,    -1,   969,    -1,   508,    -1,   651,    -1,
  1444.      641,    -1,   972,    -1,   513,    -1,   498,    -1,   831,    -1,
  1445.      860,    -1,   785,    -1,   787,    -1,   502,    -1,   866,    -1,
  1446.      946,    -1,   936,    -1,   507,    -1,   794,    -1,   880,    -1,
  1447.      882,    -1,   929,    -1,   656,    -1,   663,    -1,   667,    -1,
  1448.      500,    -1,   876,    -1,   659,    -1,   644,    -1,   797,    -1,
  1449.      872,    -1,   637,    -1,   943,    -1,   973,    -1,   974,    -1,
  1450.      675,    -1,   914,    -1,   846,    -1,   626,    -1,   629,    -1,
  1451.      844,    -1,   935,    -1,   823,    -1,   881,    -1,   499,   337,
  1452.      910,    -1,   338,    -1,    44,    -1,   337,   910,   144,   501,
  1453.       -1,   908,    -1,   493,   911,    -1,    -1,    46,   910,   503,
  1454.      504,    -1,    -1,   301,   505,    -1,   505,   489,   506,    -1,
  1455.      506,    -1,   493,   911,    -1,    49,   911,    -1,    -1,    32,
  1456.       56,   280,   509,   510,    -1,   511,    -1,   510,   489,   511,
  1457.       -1,   185,    10,   908,    -1,   186,    10,   908,    -1,   189,
  1458.       10,   908,    -1,   190,    10,   772,    -1,   191,    10,   772,
  1459.       -1,   193,    10,   772,    -1,   194,    10,   908,    -1,   195,
  1460.       10,   908,    -1,   196,    10,   908,    -1,   197,    10,   908,
  1461.       -1,   198,    10,   908,    -1,   512,    -1,   187,    10,   908,
  1462.       -1,   188,    10,   773,    -1,   199,    10,   908,    -1,   200,
  1463.       10,   772,    -1,    -1,    38,   531,   275,   534,   905,   514,
  1464.      518,    -1,    -1,    38,   603,   161,   910,   604,   221,   905,
  1465.      515,   487,   606,   488,    -1,    -1,    38,   368,   534,   910,
  1466.      516,   528,    -1,    -1,    38,   546,   292,   907,   517,   290,
  1467.      547,   291,   908,    -1,   487,   519,    -1,   535,   521,    -1,
  1468.      177,   905,    -1,   487,   177,   905,   488,    -1,   548,   488,
  1469.      535,   521,    -1,    -1,   524,   488,   520,   978,    -1,    -1,
  1470.       -1,   886,   527,   524,   522,   975,    -1,    -1,   886,   527,
  1471.      487,   524,   488,   523,   978,    -1,    -1,    -1,    68,   525,
  1472.      685,   689,   526,   545,    -1,    -1,    88,    -1,    -1,   529,
  1473.       -1,   530,    -1,   529,   530,    -1,   540,    -1,   539,    -1,
  1474.       -1,   532,    -1,   533,    -1,   533,   532,    -1,   277,    -1,
  1475.       -1,   403,   216,   135,    -1,    -1,   537,    -1,   538,    -1,
  1476.      538,   536,    -1,   538,    -1,   538,   537,    -1,   538,   489,
  1477.      537,    -1,   382,   815,   541,    -1,   284,   815,   541,    -1,
  1478.      202,   815,   773,    -1,   207,   815,   773,    -1,    91,   815,
  1479.      772,    -1,   428,   815,   908,    -1,    34,   815,   908,    -1,
  1480.       90,   815,   773,    -1,   232,   815,   772,    -1,   232,   815,
  1481.      119,    -1,   106,   815,   772,    -1,   121,   815,   772,    -1,
  1482.      257,   815,   542,    -1,   241,   815,   543,    -1,   242,   815,
  1483.      772,    -1,   243,   815,   772,    -1,   296,   815,   487,   790,
  1484.      488,    -1,   539,    -1,   540,    -1,   404,   815,   544,    -1,
  1485.      118,   133,   815,   908,    -1,   161,   133,   815,   908,    -1,
  1486.      587,   579,   815,   581,    -1,   587,   109,   815,   586,    -1,
  1487.      911,    -1,   119,    -1,   140,    -1,   129,    -1,   311,    -1,
  1488.      240,    -1,   239,    -1,   772,    -1,   217,    -1,   139,    -1,
  1489.        6,    -1,   768,    -1,   684,   688,    -1,    -1,    85,    -1,
  1490.      343,    -1,   340,    -1,   328,    -1,   549,    -1,   548,   489,
  1491.      549,    -1,   550,    -1,   551,    -1,   556,   552,    -1,   556,
  1492.      590,    -1,   598,   608,   604,   487,   606,   488,    -1,   554,
  1493.      599,   608,   604,   487,   606,   488,    -1,   554,   143,   171,
  1494.      608,   487,   606,   488,   590,    -1,   555,   552,    -1,   554,
  1495.      553,    -1,    -1,   553,    -1,   107,   696,    -1,    -1,   555,
  1496.       -1,   114,   608,    -1,    -1,   904,   557,   558,   575,    -1,
  1497.      566,   573,   570,    -1,   567,   574,   570,    -1,   326,   568,
  1498.      570,    -1,    95,   573,    -1,    96,    -1,    97,    -1,   562,
  1499.      487,   219,   488,   588,    -1,   562,   588,    -1,   563,   487,
  1500.      219,   488,    -1,   563,    -1,    94,   487,   219,   488,    -1,
  1501.       94,    -1,   564,   487,   219,   488,   588,    -1,   565,   487,
  1502.      219,   488,    -1,   352,   487,   219,   488,    -1,   463,   573,
  1503.      570,    -1,   321,    -1,   346,    -1,   345,   573,    -1,   320,
  1504.       -1,   347,    -1,   316,   573,    -1,   561,    -1,   332,    -1,
  1505.      330,    -1,   183,   352,    -1,   183,   564,   588,    -1,   349,
  1506.      588,    -1,   344,   573,   588,    -1,   334,   588,    -1,   331,
  1507.      588,    -1,   322,   568,   570,    -1,   335,   568,   570,    -1,
  1508.      140,   568,   570,    -1,    -1,   324,   559,   487,   610,   488,
  1509.      588,    -1,    -1,   260,   560,   487,   610,   488,   588,    -1,
  1510.      183,   588,    -1,   262,    -1,   327,    -1,   394,    -1,   431,
  1511.       -1,   424,    -1,   409,    -1,   423,    -1,   433,    -1,   425,
  1512.       -1,   317,    -1,   213,    -1,   209,   317,    -1,   562,   354,
  1513.       -1,   353,    -1,   209,   353,    -1,   215,    -1,   213,   353,
  1514.       -1,   209,   317,   354,    -1,   213,   354,    -1,   328,    -1,
  1515.      348,    -1,   342,    -1,   333,    -1,   315,    -1,   340,    -1,
  1516.      323,    -1,   323,   336,    -1,    -1,   487,   219,   488,    -1,
  1517.      569,    -1,   487,   219,   489,   219,   488,    -1,    -1,   571,
  1518.       -1,   571,   572,    -1,   572,    -1,   341,    -1,   351,    -1,
  1519.      355,    -1,    -1,   487,   219,   488,    -1,    -1,   569,    -1,
  1520.       -1,   576,    -1,   576,   577,    -1,   577,    -1,   218,    -1,
  1521.      216,   218,    -1,   119,   578,    -1,   221,    83,   426,   695,
  1522.       -1,    90,    -1,   262,   119,   302,    -1,   589,   171,    -1,
  1523.      297,    -1,   297,   171,    -1,    34,   908,    -1,    94,    -1,
  1524.      109,   584,    -1,   426,   695,    -1,   897,    -1,   317,   260,
  1525.       -1,   105,    -1,   911,    -1,    94,    -1,   580,    -1,   119,
  1526.       -1,   911,    -1,    94,    -1,   582,    -1,   119,    -1,   911,
  1527.       -1,    -1,   109,   586,    -1,   584,    -1,   119,    -1,    -1,
  1528.      119,    -1,    -1,   314,    -1,   101,    -1,   295,    -1,   579,
  1529.      580,    -1,    -1,   234,    -1,    -1,   246,   905,   591,   592,
  1530.       -1,   594,    -1,   487,   593,   488,   594,    -1,   593,   489,
  1531.      910,    -1,   910,    -1,    -1,   595,    -1,   595,   596,    -1,
  1532.      596,    -1,   221,    41,   597,    -1,   221,    83,   597,    -1,
  1533.      201,   145,    -1,   201,   233,    -1,   201,   265,    -1,   254,
  1534.       -1,   103,    -1,   260,   218,    -1,   217,    84,    -1,   260,
  1535.      119,    -1,   600,    -1,   146,   601,    -1,   267,   601,    -1,
  1536.      234,   171,    -1,   297,   601,    -1,   171,    -1,   161,    -1,
  1537.       -1,   600,    -1,   170,    -1,   161,    -1,   162,    -1,    -1,
  1538.      297,    -1,   146,    -1,   267,    -1,    -1,   301,   605,    -1,
  1539.      284,   605,    -1,    99,    -1,   259,    -1,   153,    -1,   606,
  1540.      489,   607,   766,    -1,   607,   766,    -1,   910,    -1,   910,
  1541.      487,   219,   488,    -1,    -1,   904,    -1,    -1,   494,   910,
  1542.       -1,   895,    -1,   610,   489,   895,    -1,    -1,    26,   622,
  1543.      275,   905,   612,   615,    -1,    -1,    26,   368,   614,   613,
  1544.      528,    -1,    -1,   910,    -1,    -1,   126,   276,    -1,   160,
  1545.      276,    -1,   617,    -1,   615,   489,   617,    -1,    24,   621,
  1546.       -1,   616,   550,   624,    -1,    24,   551,    -1,   616,   487,
  1547.      548,   488,    -1,    -1,    32,   621,   904,   618,   556,   624,
  1548.       -1,    -1,    -1,   418,   621,   904,   619,   558,   575,   620,
  1549.      624,    -1,    44,   621,   904,   623,    -1,    44,   143,   171,
  1550.      608,    -1,    44,   234,   171,    -1,    44,   600,   904,    -1,
  1551.      125,   170,    -1,   130,   170,    -1,    26,   621,   904,   260,
  1552.      119,   897,    -1,    26,   621,   904,    44,   119,    -1,   249,
  1553.      625,   905,    -1,   115,   280,   579,   581,   585,    -1,   536,
  1554.       -1,   763,    -1,    -1,   112,    -1,    -1,   159,    -1,    -1,
  1555.      254,    -1,   103,    -1,    -1,    25,   910,    -1,   139,    -1,
  1556.       -1,   280,    -1,    10,    -1,    88,    -1,    -1,    73,    70,
  1557.      631,   627,   635,    -1,    76,    70,   631,    -1,    -1,    70,
  1558.       73,   631,   628,   635,    -1,    70,    76,   631,    -1,    73,
  1559.      282,   630,    -1,    -1,   306,    36,    71,    -1,    -1,   632,
  1560.      633,    -1,   634,    -1,   633,   489,   634,    -1,    -1,    72,
  1561.       -1,    51,    -1,    -1,    82,   636,    -1,   512,    -1,   636,
  1562.      489,   512,    -1,    -1,   253,   931,   638,   790,   144,   908,
  1563.       -1,    -1,    92,   931,   640,   790,   280,   908,    -1,    -1,
  1564.      106,   931,   642,   790,   643,    -1,    -1,   339,    -1,   136,
  1565.       -1,    -1,    62,   658,   931,   645,   790,   646,    -1,    -1,
  1566.      647,    -1,   648,    -1,   648,   647,    -1,   339,    -1,   136,
  1567.       -1,   299,    -1,    -1,    27,   658,   931,   650,   790,   653,
  1568.       -1,    -1,   107,   931,   652,   790,   653,    -1,    -1,   654,
  1569.       -1,   655,    -1,   655,   654,    -1,   339,    -1,   325,    -1,
  1570.      206,    -1,   136,    -1,   318,    -1,    -1,    60,   658,   931,
  1571.      657,   790,   653,    -1,    -1,   308,    -1,   179,    -1,    -1,
  1572.      249,   931,   660,   661,    -1,   662,    -1,   661,   489,   662,
  1573.       -1,   905,   280,   905,    -1,   102,   161,   664,   167,   666,
  1574.       -1,   665,    -1,   664,   489,   665,    -1,   905,   671,    -1,
  1575.      910,    -1,   119,    -1,    -1,    53,   161,   166,   102,   668,
  1576.      669,    -1,   670,    -1,   669,   489,   670,    -1,   905,   671,
  1577.      674,    -1,    -1,   672,   673,    -1,    -1,   601,   487,   747,
  1578.      488,    -1,    -1,   159,   174,    -1,   676,    -1,    68,   678,
  1579.       -1,   487,   677,   488,   978,    -1,    68,   680,    -1,   487,
  1580.      677,   488,    -1,    -1,   680,   679,   975,    -1,    -1,    -1,
  1581.      681,   685,   689,   682,   683,   688,    -1,   762,   768,    -1,
  1582.      783,    -1,   684,    -1,   783,   684,    -1,   684,   783,    -1,
  1583.      144,   731,   754,   759,   756,   762,   768,   774,    -1,   144,
  1584.       42,   754,   768,    -1,    -1,   686,    -1,   686,   687,    -1,
  1585.      687,    -1,   272,    -1,   155,    -1,   127,    -1,   472,    -1,
  1586.      468,    -1,   473,    -1,   470,    -1,   471,    -1,   469,    -1,
  1587.       86,    -1,    -1,   389,    83,    -1,    55,   167,   442,   417,
  1588.       -1,   689,   489,   690,    -1,   690,    -1,   481,    -1,   691,
  1589.      693,   692,   694,    -1,    -1,    -1,   901,    -1,   696,    -1,
  1590.       -1,    88,   910,    -1,    88,   908,    -1,   910,    -1,   908,
  1591.       -1,    -1,   487,   488,    -1,   699,    -1,   703,    -1,    10,
  1592.       -1,    13,    -1,    14,    -1,    15,    -1,    16,    -1,    17,
  1593.       -1,    86,    -1,    28,    -1,   696,   167,   487,   719,   488,
  1594.       -1,   696,   216,   167,   487,   719,   488,    -1,   696,   167,
  1595.      987,    -1,   696,   216,   167,   987,    -1,   696,   358,   701,
  1596.       87,   696,    -1,   696,   216,   358,   701,    87,   696,    -1,
  1597.      696,   227,   696,    -1,   696,   226,   696,    -1,   696,   310,
  1598.      696,    -1,   696,    87,   696,    -1,   696,    12,   177,   696,
  1599.       -1,   696,   177,   703,   758,    -1,   696,   216,   177,   703,
  1600.      758,    -1,   696,   247,   696,    -1,   696,   216,   247,   696,
  1601.       -1,   696,    18,   218,    -1,   696,    18,   216,   218,    -1,
  1602.      696,    11,   696,    -1,   696,   697,   696,    -1,   696,   697,
  1603.      698,   987,    -1,   696,    20,   696,    -1,   696,    21,   696,
  1604.       -1,   696,   480,   696,    -1,   696,   479,   696,    -1,   696,
  1605.      481,   696,    -1,   696,   482,   696,    -1,   696,     9,   696,
  1606.       -1,   696,    19,   696,    -1,   696,   477,   696,    -1,   696,
  1607.      484,   696,    -1,   696,   478,   696,    -1,   696,   483,   696,
  1608.       -1,   696,   480,   702,   749,    -1,   696,   479,   702,   749,
  1609.       -1,   700,   358,   701,    87,   696,    -1,   700,   216,   358,
  1610.      701,    87,   696,    -1,   700,   227,   696,    -1,   700,   226,
  1611.      696,    -1,   700,   310,   696,    -1,   700,    87,   696,    -1,
  1612.      700,    12,   177,   696,    -1,   700,   177,   703,   758,    -1,
  1613.      700,   216,   177,   703,   758,    -1,   700,   247,   696,    -1,
  1614.      700,   216,   247,   696,    -1,   700,    18,   218,    -1,   700,
  1615.       18,   216,   218,    -1,   700,    11,   696,    -1,   700,   697,
  1616.      696,    -1,   700,   697,   698,   987,    -1,   700,    20,   696,
  1617.       -1,   700,    21,   696,    -1,   700,   480,   696,    -1,   700,
  1618.      479,   696,    -1,   700,   481,   696,    -1,   700,   482,   696,
  1619.       -1,   700,     9,   696,    -1,   700,   477,   696,    -1,   700,
  1620.      484,   696,    -1,   700,   478,   696,    -1,   700,   483,   696,
  1621.       -1,   700,    19,   696,    -1,   700,   480,   702,   749,    -1,
  1622.      700,   479,   702,   749,    -1,   703,    -1,   701,   167,   487,
  1623.      719,   488,    -1,   701,   216,   167,   487,   719,   488,    -1,
  1624.      701,   167,   987,    -1,   701,   216,   167,   987,    -1,   701,
  1625.      358,   701,    87,   696,    -1,   701,   216,   358,   701,    87,
  1626.      696,    -1,   701,   227,   696,    -1,   701,   226,   696,    -1,
  1627.      701,   310,   696,    -1,   701,    12,   177,   696,    -1,   701,
  1628.      177,   703,   758,    -1,   701,   216,   177,   703,   758,    -1,
  1629.      701,   247,   696,    -1,   701,   216,   247,   696,    -1,   701,
  1630.       18,   218,    -1,   701,    18,   216,   218,    -1,   701,    11,
  1631.      696,    -1,   701,   697,   696,    -1,   701,   697,   698,   987,
  1632.       -1,   701,    20,   696,    -1,   701,    21,   696,    -1,   701,
  1633.      480,   696,    -1,   701,   479,   696,    -1,   701,   481,   696,
  1634.       -1,   701,   482,   696,    -1,   701,     9,   696,    -1,   701,
  1635.      477,   696,    -1,   701,   484,   696,    -1,   701,   478,   696,
  1636.       -1,   701,   483,   696,    -1,   701,    19,   696,    -1,   701,
  1637.      480,   702,   749,    -1,   701,   479,   702,   749,    -1,   703,
  1638.       -1,   405,   696,    -1,   903,    -1,   703,   109,   911,    -1,
  1639.      898,    -1,   896,    -1,   493,   911,    22,   696,    -1,   493,
  1640.      911,    -1,   493,   493,   922,   911,   609,    -1,   709,    -1,
  1641.      480,   696,    -1,   479,   696,    -1,   485,   696,    -1,   216,
  1642.      696,    -1,   490,   696,    -1,   487,   696,   488,    -1,   487,
  1643.      696,   489,   719,   488,    -1,   258,   487,   696,   489,   719,
  1644.      488,    -1,   135,   985,    -1,   983,    -1,   491,   910,   696,
  1645.      492,    -1,   201,   722,   356,   487,   696,   705,   488,    -1,
  1646.      314,   487,   696,   488,    -1,    94,   696,    -1,   104,   487,
  1647.      696,    88,   718,   488,    -1,   362,   726,   460,   728,   727,
  1648.      466,    -1,   115,   487,   696,   489,   718,   488,    -1,   115,
  1649.      487,   696,   301,   580,   488,    -1,   119,   487,   903,   488,
  1650.       -1,   303,   487,   903,   488,    -1,   286,   487,   488,    -1,
  1651.      287,   487,   696,   488,    -1,   288,   487,   696,   489,   696,
  1652.      488,    -1,   289,   487,   696,   489,   696,   489,   696,   488,
  1653.       -1,    78,   487,   696,   489,   696,   488,    -1,    78,   487,
  1654.      696,   489,   405,   696,   749,   488,    -1,   357,   487,   696,
  1655.      488,    -1,   357,   487,   696,   489,   696,   488,    -1,   317,
  1656.      487,   719,   488,    -1,   317,   487,   719,   301,   580,   488,
  1657.       -1,   105,   487,   696,   488,    -1,   319,   487,   719,   488,
  1658.       -1,   110,   487,   696,   488,    -1,   363,   487,   719,   488,
  1659.       -1,   364,   487,   696,   489,   719,   488,    -1,   365,   487,
  1660.      696,   489,   696,   489,   696,   488,    -1,   366,   695,    -1,
  1661.      367,   695,    -1,   367,   487,   696,   488,    -1,   116,   695,
  1662.       -1,   369,   487,   696,   489,   702,   749,   488,    -1,   370,
  1663.      487,   696,   489,   702,   749,   488,    -1,   368,   487,   488,
  1664.       -1,   321,   487,   696,   488,    -1,   375,   487,   696,   488,
  1665.       -1,   380,   487,   696,   489,   719,   488,    -1,   411,   487,
  1666.      696,   489,   719,   488,    -1,   384,   487,   696,   488,    -1,
  1667.      384,   487,   696,   489,   696,   488,    -1,   376,   487,   696,
  1668.      489,   909,   488,    -1,   381,   487,   696,   489,   909,   488,
  1669.       -1,   378,   487,   696,   488,    -1,   378,   487,   696,   489,
  1670.      696,   488,    -1,   377,   487,   696,   488,    -1,   377,   487,
  1671.      696,   489,   696,   488,    -1,   385,   487,   696,   489,   696,
  1672.      489,   696,   488,    -1,   385,   487,   696,   489,   696,   489,
  1673.      696,   489,   696,   488,    -1,   385,   487,   696,   489,   696,
  1674.      489,   696,   489,   696,   489,   696,   488,    -1,   388,   487,
  1675.      696,   489,   219,   488,    -1,   390,   487,   696,   488,    -1,
  1676.      390,   487,   696,   489,   696,   488,    -1,   387,   487,   696,
  1677.      489,   719,   488,    -1,   704,    -1,   397,   487,   750,   489,
  1678.      696,   488,    -1,   401,   487,   696,   488,    -1,   403,   487,
  1679.      696,   489,   696,   489,   696,   488,    -1,    50,   487,   696,
  1680.      489,   696,   489,   696,   489,   696,   488,    -1,   702,   749,
  1681.      480,   696,    -1,   702,    -1,   406,   487,   488,    -1,   406,
  1682.      487,   696,   488,    -1,   407,   487,   696,   489,   696,   488,
  1683.       -1,   410,   487,   696,   489,   696,   488,    -1,   410,   487,
  1684.      696,   489,   696,   489,   696,   488,    -1,   150,   487,   696,
  1685.      489,   719,   488,    -1,   173,   487,   696,   489,   719,   488,
  1686.       -1,   180,   487,   696,   488,    -1,   180,   487,   696,   489,
  1687.      696,   488,    -1,   412,   487,   696,   489,   696,   488,    -1,
  1688.      412,   487,   696,   489,   696,   489,   696,   488,    -1,   413,
  1689.      487,   696,   488,    -1,   416,   487,   696,   488,    -1,    19,
  1690.      487,   696,   489,   696,   488,    -1,   419,   487,   696,   488,
  1691.       -1,   426,   695,    -1,   426,   487,   696,   488,    -1,   428,
  1692.      487,   696,   488,    -1,   427,   487,   696,   488,    -1,   434,
  1693.      487,   700,   167,   696,   488,    -1,   436,   487,   696,   488,
  1694.       -1,   436,   487,   488,    -1,   437,   487,   696,   489,   696,
  1695.      489,   696,   488,    -1,   438,   487,   696,   489,   696,   488,
  1696.       -1,   439,   487,   696,   488,    -1,   439,   487,   696,   489,
  1697.      696,   488,    -1,   443,   487,   696,   489,   696,   488,    -1,
  1698.      443,   487,   696,   489,   405,   696,   749,   488,    -1,   440,
  1699.      487,   696,   488,    -1,   444,   487,   696,   489,   696,   489,
  1700.      696,   488,    -1,   444,   487,   696,   489,   696,   488,    -1,
  1701.      444,   487,   696,   144,   696,   389,   696,   488,    -1,   444,
  1702.      487,   696,   144,   696,   488,    -1,   445,   487,   696,   489,
  1703.      696,   489,   696,   488,    -1,   346,   487,   696,   488,    -1,
  1704.      345,   487,   696,   488,    -1,   345,   487,   696,   489,   696,
  1705.      488,    -1,   446,   487,   696,   488,    -1,   446,   487,   172,
  1706.      696,   144,   696,   488,    -1,   446,   487,   281,   696,   144,
  1707.      696,   488,    -1,   446,   487,    98,   696,   144,   696,   488,
  1708.       -1,   446,   487,   172,   144,   696,   488,    -1,   446,   487,
  1709.      281,   144,   696,   488,    -1,   446,   487,    98,   144,   696,
  1710.      488,    -1,   446,   487,   696,   144,   696,   488,    -1,    80,
  1711.      487,   696,   489,   696,   488,    -1,   447,   487,   707,   488,
  1712.       -1,   448,   487,   707,   488,    -1,   449,   487,   707,   488,
  1713.       -1,   450,   487,   706,   488,    -1,   451,   487,   706,   488,
  1714.       -1,   452,   487,   706,   488,    -1,   453,   487,   894,   489,
  1715.      219,   489,   219,   489,   719,   488,    -1,   454,   487,   488,
  1716.       -1,   454,   487,   696,   488,    -1,   455,   487,   488,    -1,
  1717.      456,   695,    -1,   457,   695,    -1,   458,   695,    -1,   459,
  1718.      487,   696,   488,    -1,   459,   487,   696,   489,   696,   488,
  1719.       -1,   463,   487,   696,   488,    -1,   464,   487,   696,   488,
  1720.       -1,   464,   487,   696,   489,   696,   488,    -1,   465,   487,
  1721.      772,   489,   696,   488,    -1,   386,   487,   749,   144,   696,
  1722.      488,    -1,   392,   487,   696,   488,    -1,   392,   487,   696,
  1723.      489,   696,   488,    -1,   393,   487,   696,   488,    -1,   393,
  1724.      487,   696,   489,   696,   488,    -1,   394,   487,   719,   488,
  1725.       -1,   409,   487,   719,   488,    -1,   423,   487,   719,   488,
  1726.       -1,   420,   487,   696,   488,    -1,   420,   487,   696,   489,
  1727.      696,   488,    -1,   421,   487,   696,   488,    -1,   421,   487,
  1728.      696,   489,   696,   488,    -1,   422,   487,   696,   488,    -1,
  1729.      422,   487,   696,   489,   696,   488,    -1,   424,   487,   719,
  1730.      488,    -1,   425,   487,   719,   488,    -1,   431,   487,   696,
  1731.      489,   696,   488,    -1,   430,   487,   696,   488,    -1,   430,
  1732.      487,   696,   489,   696,   488,    -1,   432,   487,   696,   488,
  1733.       -1,   432,   487,   696,   489,   696,   488,    -1,   433,   487,
  1734.      719,   488,    -1,   391,   487,   696,   488,    -1,   391,   487,
  1735.      696,   489,   696,   488,    -1,   408,   487,   696,   488,    -1,
  1736.      408,   487,   696,   489,   696,   488,    -1,    -1,   306,   238,
  1737.       47,    -1,   167,    97,   417,    -1,    -1,   719,    -1,    -1,
  1738.      708,   706,    -1,    29,   487,   716,   488,    -1,   359,   487,
  1739.      716,   488,    -1,   360,   487,   716,   488,    -1,   361,   487,
  1740.      716,   488,    -1,    37,   487,   753,   481,   488,    -1,    37,
  1741.      487,   716,   488,    -1,    -1,    -1,    37,   487,   127,   710,
  1742.      719,   711,   488,    -1,   396,   487,   894,   489,   219,   489,
  1743.      219,   489,   716,   488,    -1,    58,   487,   716,   488,    -1,
  1744.       57,   487,   716,   488,    -1,    74,   487,   716,   488,    -1,
  1745.       75,   487,   716,   488,    -1,    77,   487,   716,   488,    -1,
  1746.       -1,   395,   487,   713,   712,   719,   715,   714,   488,    -1,
  1747.       -1,   127,    -1,    -1,   261,   895,    -1,    -1,   763,    -1,
  1748.       -1,   753,   717,   696,    -1,    94,   573,    -1,   317,   573,
  1749.      588,    -1,   213,   573,    -1,   341,    -1,   341,   328,    -1,
  1750.      351,    -1,   351,   328,    -1,   321,    -1,   346,    -1,   320,
  1751.       -1,    -1,   720,   721,    -1,   696,    -1,   721,   489,   696,
  1752.       -1,   723,    -1,   487,   723,   488,    -1,    -1,   724,   725,
  1753.       -1,   903,    -1,   725,   489,   903,    -1,    -1,   696,    -1,
  1754.       -1,   379,   696,    -1,    -1,   729,   730,    -1,   696,   467,
  1755.      696,    -1,   730,   460,   696,   467,   696,    -1,   736,    -1,
  1756.      731,   489,   731,    -1,   731,   735,   731,    -1,   731,   272,
  1757.      731,    -1,   731,   735,   731,   221,   696,    -1,    -1,   731,
  1758.      735,   731,   301,   732,   487,   748,   488,    -1,   731,   407,
  1759.      742,   169,   731,   221,   696,    -1,    -1,   731,   407,   742,
  1760.      169,   731,   733,   301,   487,   748,   488,    -1,   731,   210,
  1761.      407,   742,   169,   731,    -1,   731,   438,   742,   169,   731,
  1762.      221,   696,    -1,    -1,   731,   438,   742,   169,   731,   734,
  1763.      301,   487,   748,   488,    -1,   731,   210,   438,   742,   169,
  1764.      731,    -1,   731,   210,   169,   731,    -1,   169,    -1,   164,
  1765.      169,    -1,    39,   169,    -1,    -1,   737,   905,   752,   743,
  1766.       -1,   491,   910,   736,   407,   229,   169,   736,   221,   696,
  1767.      492,    -1,   487,   738,   978,   488,   752,    -1,   487,   731,
  1768.      488,    -1,    68,   739,    -1,   487,   738,   488,    -1,    -1,
  1769.       -1,   740,   685,   689,   741,   545,    -1,    -1,   229,    -1,
  1770.       -1,   300,   744,    -1,   142,   744,    -1,   159,   744,    -1,
  1771.       -1,   600,   745,   487,   746,   488,    -1,    -1,   747,    -1,
  1772.      747,   489,   910,    -1,   910,    -1,   234,    -1,   910,    -1,
  1773.      748,   489,   910,    -1,   371,    -1,   372,    -1,   373,    -1,
  1774.      374,    -1,   375,    -1,   398,    -1,   399,    -1,   400,    -1,
  1775.      401,    -1,   413,    -1,   414,    -1,   415,    -1,   416,    -1,
  1776.      419,    -1,   441,    -1,   440,    -1,   462,    -1,   463,    -1,
  1777.      321,    -1,   346,    -1,   320,    -1,   345,    -1,    -1,    88,
  1778.       -1,    10,    -1,    -1,   751,   910,    -1,    -1,    86,    -1,
  1779.       -1,    -1,   305,   755,   696,    -1,    -1,    -1,   152,   757,
  1780.      696,    -1,   134,   703,    -1,    -1,    -1,   151,   100,   760,
  1781.      761,    -1,   760,   489,   902,   766,    -1,   902,   766,    -1,
  1782.       -1,   306,    40,    -1,   306,    66,    -1,    -1,   763,    -1,
  1783.       -1,   228,   100,   764,   765,    -1,   765,   489,   902,   766,
  1784.       -1,   902,   766,    -1,    -1,    89,    -1,   122,    -1,    -1,
  1785.      769,    -1,    -1,   769,    -1,   329,   770,    -1,   772,    -1,
  1786.      772,   489,   772,    -1,   772,   220,   772,    -1,    -1,   329,
  1787.      773,    -1,   219,    -1,   182,    -1,   350,    -1,   245,    -1,
  1788.      141,    -1,   219,    -1,   350,    -1,   182,    -1,   245,    -1,
  1789.      141,    -1,    -1,    -1,   435,   910,   775,   487,   776,   488,
  1790.       -1,    -1,   777,    -1,   777,   489,   778,    -1,   778,    -1,
  1791.      691,   696,    -1,    -1,   780,   781,    -1,   781,   489,   782,
  1792.       -1,   782,    -1,   493,   911,    -1,    -1,   166,   230,   908,
  1793.      784,   887,   890,    -1,   166,   231,   908,    -1,   166,   779,
  1794.       -1,    -1,    43,   786,   719,    -1,    44,   793,   931,   792,
  1795.      790,   623,    -1,    -1,    44,   161,   910,   221,   905,   788,
  1796.       -1,    44,   368,   792,   910,    -1,    44,   292,   907,    -1,
  1797.       -1,    44,   455,   789,   960,    -1,   791,    -1,   790,   489,
  1798.      791,    -1,   905,    -1,    -1,   403,   135,    -1,    -1,   277,
  1799.       -1,    -1,    -1,    50,   795,   800,   622,   802,   796,   804,
  1800.      821,    -1,    -1,    -1,   437,   798,   801,   802,   799,   804,
  1801.       -1,    -1,   184,    -1,   120,    -1,   155,    -1,   830,    -1,
  1802.      120,    -1,   166,   803,    -1,   803,    -1,   791,    -1,   808,
  1803.       -1,   487,   488,   808,    -1,   487,   807,   488,   808,    -1,
  1804.       -1,   260,   805,   812,    -1,    -1,   487,   807,   488,    -1,
  1805.      487,   488,    -1,   807,   489,   900,    -1,   900,    -1,   303,
  1806.      811,    -1,   302,   811,    -1,    -1,   524,   809,   975,    -1,
  1807.       -1,   487,   524,   488,   810,   978,    -1,   811,   489,   816,
  1808.       -1,   816,    -1,   812,   489,   813,    -1,   813,    -1,   903,
  1809.      814,   820,    -1,    10,    -1,    22,    -1,    -1,   814,    -1,
  1810.       -1,   487,   817,   818,   488,    -1,    -1,   819,    -1,   819,
  1811.      489,   820,    -1,   820,    -1,   696,    -1,   119,    -1,    -1,
  1812.       -1,   221,   128,   822,   171,    83,   828,    -1,    -1,    -1,
  1813.       83,   824,   830,   622,   731,   260,   826,   825,   754,   762,
  1814.      771,    -1,   826,   489,   827,    -1,   827,    -1,   903,   814,
  1815.      820,    -1,   828,   489,   829,    -1,   829,    -1,   903,   814,
  1816.      820,    -1,    -1,   184,    -1,    -1,    41,   832,   842,   833,
  1817.       -1,    -1,   144,   905,   834,   754,   762,   771,    -1,    -1,
  1818.       -1,   839,   835,   144,   731,   836,   754,    -1,    -1,    -1,
  1819.      144,   839,   837,   301,   731,   838,   754,    -1,   840,    -1,
  1820.      839,   489,   840,    -1,   910,   841,   752,    -1,   910,   494,
  1821.      910,   841,   752,    -1,    -1,   494,   481,    -1,    -1,   843,
  1822.      842,    -1,   339,    -1,   184,    -1,   159,    -1,    80,   845,
  1823.      791,    -1,    -1,   275,    -1,    -1,    69,   847,   848,    -1,
  1824.      117,   855,    -1,   274,   854,   855,    -1,   275,   270,   854,
  1825.      855,    -1,   223,   274,   854,   855,    -1,    -1,   382,   541,
  1826.      849,   851,    -1,   856,   111,   857,   905,   854,   855,    -1,
  1827.      212,    56,   389,    70,   306,   187,    10,   908,    87,   188,
  1828.       10,   773,    87,   192,    10,   772,    -1,   852,   181,    -1,
  1829.       70,   156,    -1,    -1,    31,    45,   858,   859,   850,   767,
  1830.       -1,   602,   857,   905,   854,    -1,   112,   285,    -1,   275,
  1831.      285,    -1,   853,   383,    -1,   235,    -1,    37,   487,   481,
  1832.      488,   313,    -1,    37,   487,   481,   488,   312,    -1,   313,
  1833.      767,    -1,   312,   767,    -1,   270,   855,    -1,   165,   270,
  1834.       -1,   856,   237,    -1,   921,   304,   855,    -1,   579,   855,
  1835.       -1,   110,   855,    -1,    93,   181,    -1,   181,    -1,   149,
  1836.       -1,   149,   389,   912,    -1,    38,   368,   534,   910,    -1,
  1837.       38,   275,   905,    -1,    56,   270,    -1,    70,   270,    -1,
  1838.      270,    -1,   181,    -1,    56,    -1,    94,    -1,    -1,   271,
  1839.       -1,    -1,   857,   910,    -1,    -1,   177,   908,    -1,    -1,
  1840.      145,    -1,   144,    -1,   167,    -1,    -1,   167,   908,    -1,
  1841.       -1,   144,   773,    -1,    -1,   863,   905,   861,   865,    -1,
  1842.       -1,   863,   864,   862,   675,    -1,   122,    -1,   123,    -1,
  1843.       -1,   136,    -1,    -1,   895,    -1,   910,    -1,    -1,    48,
  1844.      658,   867,   868,    -1,   868,   489,   869,    -1,   869,    -1,
  1845.       -1,   931,   870,   871,    -1,   274,   306,   244,    55,    -1,
  1846.      238,   102,    -1,   156,    -1,   235,    -1,   181,    -1,   270,
  1847.       -1,    70,    -1,    56,    -1,   124,    -1,   252,    -1,    -1,
  1848.      790,    -1,    -1,    64,   873,   874,    -1,   874,   489,   875,
  1849.       -1,   875,    -1,    70,    -1,    56,    -1,   238,   102,    -1,
  1850.       -1,    61,   877,   878,    -1,   852,   181,   879,    -1,   280,
  1851.      908,    -1,   476,   696,    -1,    52,   696,    -1,   300,   910,
  1852.       -1,    -1,    53,   118,   885,   884,   163,   908,   883,   886,
  1853.      166,   275,   905,   887,   890,   893,   806,    -1,    53,   275,
  1854.      905,   144,    56,    -1,    53,   118,   144,    56,    -1,    -1,
  1855.      179,    -1,    -1,   113,    -1,   184,    -1,    -1,   437,    -1,
  1856.      159,    -1,    -1,   111,   888,    -1,   888,   889,    -1,   889,
  1857.       -1,   278,   100,   895,    -1,   225,   131,   100,   895,    -1,
  1858.      131,   100,   895,    -1,   132,   100,   895,    -1,    -1,   178,
  1859.      891,    -1,   891,   892,    -1,   892,    -1,   278,   100,   895,
  1860.       -1,   269,   100,   895,    -1,    -1,   159,   219,   178,    -1,
  1861.      909,    -1,   214,    -1,   294,   279,    -1,   894,   909,    -1,
  1862.      909,    -1,   154,    -1,   429,    -1,   898,    -1,   480,   899,
  1863.       -1,   479,   899,    -1,   894,    -1,   899,    -1,   218,    -1,
  1864.      137,    -1,   283,    -1,   154,    -1,   294,   154,    -1,   321,
  1865.      894,    -1,   346,   894,    -1,   345,   894,    -1,   219,    -1,
  1866.      182,    -1,   350,    -1,   245,    -1,   141,    -1,   903,    -1,
  1867.      901,    -1,   910,   494,   481,    -1,   910,   494,   910,   494,
  1868.      481,    -1,   696,    -1,   910,    -1,   910,   494,   910,    -1,
  1869.      494,   910,   494,   910,    -1,   910,   494,   910,   494,   910,
  1870.       -1,   910,    -1,   910,   494,   910,   494,   910,    -1,   910,
  1871.      494,   910,    -1,   494,   910,    -1,   910,    -1,   910,   494,
  1872.      910,    -1,   494,   910,    -1,   910,    -1,   157,    -1,   158,
  1873.       -1,   279,    -1,   279,    -1,   907,    -1,   913,    -1,   910,
  1874.       -1,   908,    -1,   176,    -1,   911,    -1,   911,   493,   911,
  1875.       -1,   116,   695,    -1,    84,    -1,    78,    -1,    25,    -1,
  1876.      356,    -1,    85,    -1,    28,    -1,   314,    -1,    90,    -1,
  1877.       91,    -1,    29,    -1,    92,    -1,    30,    -1,    93,    -1,
  1878.       31,    -1,    95,    -1,    96,    -1,    97,    -1,   101,    -1,
  1879.       99,    -1,   102,    -1,   318,    -1,   105,    -1,   106,    -1,
  1880.      475,    -1,    33,    -1,     4,    -1,   110,    -1,    34,    -1,
  1881.      108,    -1,    35,    -1,   311,    -1,   113,    -1,    36,    -1,
  1882.       40,    -1,   118,    -1,   320,    -1,   321,    -1,   375,    -1,
  1883.      338,    -1,   121,    -1,   124,    -1,   133,    -1,   126,    -1,
  1884.       43,    -1,   231,    -1,   128,    -1,   129,    -1,   466,    -1,
  1885.      324,    -1,   382,    -1,   383,    -1,   312,    -1,   134,    -1,
  1886.       45,    -1,    46,    -1,    47,    -1,   136,    -1,   325,    -1,
  1887.      125,    -1,   130,    -1,   145,    -1,   138,    -1,   139,    -1,
  1888.      140,    -1,    48,    -1,   327,    -1,   394,    -1,   397,    -1,
  1889.      149,    -1,   147,    -1,     5,    -1,   153,    -1,    49,    -1,
  1890.      156,    -1,   401,    -1,   402,    -1,   160,    -1,   162,    -1,
  1891.      168,    -1,   474,    -1,   165,    -1,   404,    -1,    51,    -1,
  1892.        6,    -1,   174,    -1,   175,    -1,   409,    -1,   179,    -1,
  1893.       54,    -1,   181,    -1,   202,    -1,    56,    -1,   185,    -1,
  1894.      190,    -1,   187,    -1,   188,    -1,   186,    -1,   189,    -1,
  1895.      192,    -1,   191,    -1,   193,    -1,   194,    -1,   195,    -1,
  1896.      196,    -1,   197,    -1,   198,    -1,   203,    -1,   204,    -1,
  1897.      205,    -1,   206,    -1,   413,    -1,   416,    -1,   207,    -1,
  1898.      418,    -1,   417,    -1,   419,    -1,   423,    -1,   424,    -1,
  1899.      425,    -1,   208,    -1,   209,    -1,   213,    -1,   211,    -1,
  1900.        7,    -1,   212,    -1,   217,    -1,    59,    -1,   215,    -1,
  1901.      220,    -1,   427,    -1,   222,    -1,   223,    -1,   232,    -1,
  1902.      233,    -1,   428,    -1,   431,    -1,   433,    -1,   337,    -1,
  1903.        8,    -1,   236,    -1,   237,    -1,   238,    -1,   339,    -1,
  1904.      239,    -1,   242,    -1,   243,    -1,   240,    -1,   241,    -1,
  1905.      199,    -1,   200,    -1,   248,    -1,    62,    -1,   250,    -1,
  1906.       63,    -1,    64,    -1,   252,    -1,   253,    -1,    65,    -1,
  1907.       66,    -1,   256,    -1,   257,    -1,   258,    -1,   259,    -1,
  1908.       67,    -1,   440,    -1,   262,    -1,   263,    -1,   264,    -1,
  1909.      341,    -1,   265,    -1,   442,    -1,   266,    -1,    70,    -1,
  1910.       71,    -1,    12,    -1,   469,    -1,   473,    -1,   471,    -1,
  1911.       72,    -1,    73,    -1,   270,    -1,    76,    -1,   271,    -1,
  1912.      343,    -1,   443,    -1,   273,    -1,    79,    -1,   276,    -1,
  1913.      277,    -1,   344,    -1,   282,    -1,    80,    -1,   345,    -1,
  1914.      346,    -1,   284,    -1,   285,    -1,   290,    -1,   292,    -1,
  1915.      293,    -1,   295,    -1,    82,    -1,   455,    -1,   299,    -1,
  1916.      304,    -1,   302,    -1,   313,    -1,   461,    -1,   309,    -1,
  1917.      463,    -1,    -1,   260,   916,   915,   917,    -1,    -1,   224,
  1918.       -1,   918,    -1,   917,   489,   918,    -1,   919,   923,    -1,
  1919.      920,   924,    -1,   920,    -1,   147,    -1,   179,    -1,   264,
  1920.       -1,    -1,   222,    -1,    -1,   147,    -1,   179,    -1,   264,
  1921.       -1,    -1,   147,   494,    -1,   179,   494,    -1,   264,   494,
  1922.       -1,   925,   814,   928,    -1,   282,   168,   175,   926,    -1,
  1923.      493,   911,   814,   696,    -1,   493,   493,   922,   925,   814,
  1924.      928,    -1,   579,   583,    -1,   208,   581,   585,    -1,   428,
  1925.      814,   927,    -1,   428,   389,   912,   814,   927,    -1,   910,
  1926.       -1,   910,   494,   910,    -1,   119,   494,   910,    -1,   244,
  1927.      293,    -1,   244,   108,    -1,   250,   244,    -1,   263,    -1,
  1928.      279,    -1,   428,   487,   279,   488,    -1,   427,   487,   279,
  1929.      488,    -1,   696,    -1,   119,    -1,   221,    -1,    86,    -1,
  1930.       94,    -1,    -1,    55,   931,   930,   932,    -1,   275,    -1,
  1931.      274,    -1,   933,    -1,   932,   489,   933,    -1,   905,   752,
  1932.      934,    -1,   244,    -1,   307,    -1,   184,   307,    -1,   244,
  1933.      179,    -1,    81,   931,    -1,     5,   905,   223,   752,    -1,
  1934.        5,   906,     4,    -1,    -1,     5,   906,   244,   937,   938,
  1935.      754,   768,    -1,   939,    -1,   910,   940,    -1,   139,    -1,
  1936.        7,    -1,   139,    -1,     7,    -1,     8,    -1,     6,    -1,
  1937.       -1,   942,   941,   487,   819,   488,    -1,    10,    -1,    13,
  1938.       -1,    15,    -1,    14,    -1,    16,    -1,    -1,   255,   944,
  1939.      945,    -1,   948,   221,   959,   144,   960,    -1,    86,   949,
  1940.      489,   148,   224,   144,   960,    -1,    -1,   148,   947,   948,
  1941.      221,   959,   280,   960,   965,   966,    -1,   950,    -1,    86,
  1942.      949,    -1,    -1,   235,    -1,   951,    -1,   950,   489,   951,
  1943.       -1,    -1,    68,   952,   962,    -1,    -1,    50,   953,   962,
  1944.       -1,    -1,    83,   954,   962,    -1,    -1,   246,   955,   962,
  1945.       -1,    41,    -1,   298,    -1,   161,    -1,    26,    -1,    38,
  1946.       -1,    44,    -1,    46,    -1,   248,    -1,   266,    -1,   236,
  1947.       -1,   138,    -1,   148,   224,    -1,    69,   117,    -1,    79,
  1948.       -1,    38,   277,   274,    -1,    55,   274,    -1,    63,    70,
  1949.       -1,    63,    33,    -1,    -1,    87,    -1,   958,   956,   957,
  1950.       -1,   958,    -1,   273,   279,    -1,   474,   279,    -1,   475,
  1951.      279,    -1,   481,    -1,   910,   494,   481,    -1,   481,   494,
  1952.      481,    -1,   905,    -1,   961,    -1,   960,   489,   961,    -1,
  1953.      912,   402,   100,   279,    -1,   912,   402,   100,   428,   279,
  1954.       -1,   912,    -1,    -1,   487,   963,   488,    -1,   963,   489,
  1955.      964,    -1,   964,    -1,   910,    -1,    -1,   251,   957,    -1,
  1956.      251,   268,    -1,   251,   309,    -1,   251,    59,    -1,    -1,
  1957.      306,   967,    -1,   967,   968,    -1,   968,    -1,   148,   224,
  1958.       -1,   204,   772,    -1,   205,   772,    -1,   203,   772,    -1,
  1959.       -1,    30,   970,   971,    -1,    -1,   461,    -1,    35,    -1,
  1960.       65,    -1,    65,   280,    67,   910,    -1,    67,   910,    -1,
  1961.       -1,   976,    -1,    -1,   296,   982,   977,   676,    -1,   976,
  1962.       -1,   979,    -1,    -1,    -1,   980,   981,    -1,   763,   767,
  1963.       -1,   769,    -1,    -1,   127,    -1,    86,    -1,   989,   984,
  1964.      990,    -1,   678,    -1,   989,   986,   990,    -1,   678,    -1,
  1965.      989,   988,   990,    -1,   678,    -1,   487,    68,    -1,   488,
  1966.       -1
  1967. };
  1968. /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
  1969. static const unsigned short yyrline[] =
  1970. {
  1971.        0,   746,   746,   760,   763,   764,   765,   766,   767,   768,
  1972.      769,   770,   771,   772,   773,   774,   775,   776,   777,   778,
  1973.      779,   780,   781,   782,   783,   784,   785,   786,   787,   788,
  1974.      789,   790,   791,   792,   793,   794,   795,   796,   797,   798,
  1975.      799,   800,   801,   802,   803,   804,   805,   806,   807,   811,
  1976.      825,   826,   831,   845,   852,   862,   861,   877,   879,   883,
  1977.      884,   887,   899,   910,   909,   920,   921,   924,   929,   934,
  1978.      939,   944,   948,   953,   957,   961,   965,   969,   974,   978,
  1979.      982,   998,  1002,  1014,  1013,  1037,  1036,  1056,  1055,  1068,
  1980.     1067,  1083,  1084,  1085,  1091,  1100,  1101,  1101,  1105,  1107,
  1981.     1106,  1109,  1108,  1114,  1126,  1113,  1134,  1135,  1138,  1139,
  1982.     1142,  1143,  1146,  1147,  1150,  1151,  1154,  1155,  1158,  1161,
  1983.     1162,  1164,  1166,  1169,  1170,  1173,  1174,  1175,  1178,  1179,
  1984.     1180,  1181,  1182,  1183,  1184,  1185,  1186,  1187,  1188,  1189,
  1985.     1190,  1191,  1192,  1193,  1194,  1207,  1208,  1209,  1210,  1212,
  1986.     1215,  1232,  1248,  1258,  1259,  1260,  1261,  1264,  1265,  1266,
  1987.     1269,  1270,  1271,  1274,  1275,  1278,  1279,  1282,  1283,  1284,
  1988.     1287,  1288,  1292,  1293,  1297,  1298,  1305,  1311,  1319,  1333,
  1989.     1337,  1343,  1345,  1349,  1353,  1354,  1358,  1363,  1362,  1384,
  1990.     1385,  1386,  1387,  1389,  1391,  1393,  1395,  1397,  1400,  1403,
  1991.     1406,  1409,  1411,  1414,  1417,  1418,  1419,  1420,  1433,  1434,
  1992.     1436,  1438,  1450,  1452,  1454,  1456,  1457,  1458,  1459,  1460,
  1993.     1461,  1463,  1465,  1467,  1467,  1469,  1469,  1471,  1472,  1481,
  1994.     1482,  1483,  1484,  1485,  1486,  1487,  1488,  1492,  1496,  1497,
  1995.     1501,  1502,  1506,  1507,  1508,  1509,  1510,  1514,  1515,  1516,
  1996.     1517,  1518,  1521,  1523,  1524,  1528,  1529,  1530,  1533,  1540,
  1997.     1541,  1544,  1545,  1548,  1549,  1550,  1553,  1554,  1557,  1558,
  1998.     1561,  1562,  1565,  1566,  1569,  1570,  1571,  1572,  1574,  1575,
  1999.     1581,  1587,  1593,  1599,  1600,  1601,  1617,  1618,  1622,  1623,
  2000.     1627,  1635,  1639,  1640,  1644,  1653,  1657,  1658,  1661,  1671,
  2001.     1672,  1676,  1677,  1680,  1681,  1684,  1685,  1686,  1687,  1695,
  2002.     1697,  1699,  1704,  1703,  1715,  1716,  1719,  1720,  1724,  1725,
  2003.     1728,  1729,  1732,  1733,  1734,  1735,  1736,  1739,  1740,  1741,
  2004.     1742,  1743,  1746,  1747,  1748,  1760,  1761,  1764,  1765,  1768,
  2005.     1769,  1773,  1774,  1775,  1778,  1779,  1780,  1781,  1794,  1795,
  2006.     1796,  1799,  1800,  1804,  1807,  1808,  1811,  1812,  1827,  1828,
  2007.     1831,  1832,  1835,  1836,  1844,  1843,  1869,  1868,  1882,  1883,
  2008.     1886,  1887,  1888,  1889,  1890,  1893,  1901,  1902,  1908,  1910,
  2009.     1909,  1918,  1928,  1917,  1940,  1948,  1949,  1957,  1965,  1966,
  2010.     1967,  1974,  1982,  1995,  2016,  2022,  2030,  2031,  2034,  2035,
  2011.     2039,  2040,  2041,  2044,  2045,  2046,  2049,  2050,  2051,  2052,
  2012.     2060,  2059,  2070,  2078,  2077,  2087,  2097,  2105,  2106,  2113,
  2013.     2113,  2119,  2120,  2124,  2125,  2126,  2130,  2131,  2147,  2148,
  2014.     2153,  2152,  2163,  2162,  2173,  2172,  2182,  2183,  2184,  2189,
  2015.     2188,  2200,  2201,  2204,  2205,  2208,  2209,  2210,  2214,  2213,
  2016.     2226,  2225,  2236,  2237,  2240,  2241,  2244,  2245,  2246,  2247,
  2017.     2248,  2252,  2251,  2263,  2264,  2265,  2270,  2269,  2278,  2279,
  2018.     2282,  2294,  2303,  2304,  2307,  2320,  2321,  2326,  2325,  2335,
  2019.     2336,  2339,  2352,  2352,  2362,  2363,  2372,  2373,  2382,  2392,
  2020.     2394,  2397,  2417,  2421,  2420,  2440,  2448,  2440,  2454,  2455,
  2021.     2456,  2457,  2458,  2461,  2463,  2470,  2472,  2483,  2484,  2487,
  2022.     2488,  2494,  2495,  2496,  2497,  2503,  2509,  2510,  2514,  2517,
  2023.     2519,  2525,  2535,  2536,  2537,  2547,  2558,  2561,  2564,  2565,
  2024.     2568,  2569,  2570,  2571,  2572,  2576,  2577,  2581,  2582,  2585,
  2025.     2586,  2587,  2588,  2589,  2590,  2593,  2594,  2599,  2601,  2608,
  2026.     2610,  2614,  2616,  2622,  2623,  2624,  2625,  2626,  2631,  2633,
  2027.     2635,  2636,  2638,  2639,  2640,  2641,  2642,  2646,  2647,  2648,
  2028.     2649,  2650,  2651,  2652,  2653,  2654,  2655,  2656,  2657,  2658,
  2029.     2660,  2666,  2668,  2674,  2675,  2676,  2677,  2678,  2683,  2685,
  2030.     2687,  2688,  2690,  2691,  2692,  2693,  2694,  2698,  2699,  2700,
  2031.     2701,  2702,  2703,  2704,  2705,  2706,  2707,  2708,  2709,  2710,
  2032.     2712,  2714,  2718,  2720,  2727,  2729,  2733,  2735,  2741,  2742,
  2033.     2743,  2744,  2749,  2751,  2753,  2754,  2756,  2757,  2758,  2759,
  2034.     2760,  2764,  2765,  2766,  2767,  2768,  2769,  2770,  2771,  2772,
  2035.     2773,  2774,  2775,  2776,  2778,  2780,  2783,  2787,  2788,  2795,
  2036.     2796,  2797,  2802,  2807,  2818,  2819,  2820,  2821,  2822,  2826,
  2037.     2830,  2831,  2836,  2841,  2842,  2843,  2844,  2848,  2849,  2853,
  2038.     2859,  2861,  2867,  2869,  2871,  2873,  2884,  2895,  2906,  2917,
  2039.     2919,  2921,  2923,  2925,  2927,  2929,  2931,  2933,  2935,  2937,
  2040.     2939,  2944,  2946,  2948,  2953,  2955,  2957,  2959,  2964,  2966,
  2041.     2968,  2970,  2972,  2977,  2978,  2980,  2982,  2984,  2986,  2988,
  2042.     2990,  2992,  2994,  2996,  2998,  3000,  3004,  3006,  3016,  3018,
  2043.     3020,  3022,  3024,  3027,  3036,  3041,  3046,  3048,  3050,  3052,
  2044.     3054,  3056,  3058,  3060,  3065,  3070,  3072,  3074,  3076,  3078,
  2045.     3080,  3082,  3088,  3090,  3092,  3094,  3096,  3098,  3100,  3102,
  2046.     3103,  3105,  3107,  3109,  3111,  3113,  3115,  3117,  3119,  3121,
  2047.     3123,  3125,  3127,  3129,  3131,  3133,  3135,  3137,  3139,  3141,
  2048.     3143,  3150,  3157,  3164,  3171,  3178,  3185,  3189,  3194,  3196,
  2049.     3198,  3200,  3202,  3204,  3209,  3211,  3213,  3215,  3217,  3222,
  2050.     3226,  3228,  3230,  3232,  3234,  3238,  3241,  3244,  3246,  3248,
  2051.     3250,  3252,  3254,  3256,  3259,  3262,  3264,  3266,  3268,  3270,
  2052.     3272,  3275,  3277,  3279,  3281,  3286,  3287,  3288,  3292,  3293,
  2053.     3296,  3296,  3311,  3313,  3315,  3317,  3319,  3321,  3324,  3326,
  2054.     3323,  3329,  3331,  3333,  3335,  3337,  3339,  3342,  3341,  3353,
  2055.     3354,  3357,  3358,  3363,  3366,  3378,  3377,  3393,  3394,  3395,
  2056.     3396,  3397,  3398,  3399,  3400,  3401,  3402,  3406,  3406,  3411,
  2057.     3412,  3415,  3416,  3419,  3419,  3424,  3425,  3428,  3429,  3432,
  2058.     3433,  3436,  3436,  3441,  3447,  3455,  3456,  3457,  3458,  3460,
  2059.     3464,  3462,  3472,  3475,  3474,  3482,  3488,  3491,  3490,  3498,
  2060.     3504,  3508,  3509,  3510,  3514,  3514,  3530,  3532,  3544,  3547,
  2061.     3548,  3564,  3582,  3564,  3589,  3590,  3593,  3594,  3600,  3607,
  2062.     3615,  3615,  3621,  3622,  3626,  3630,  3634,  3640,  3649,  3657,
  2063.     3658,  3659,  3660,  3661,  3662,  3663,  3664,  3665,  3666,  3667,
  2064.     3668,  3669,  3670,  3671,  3672,  3673,  3674,  3678,  3679,  3680,
  2065.     3681,  3684,  3686,  3687,  3690,  3691,  3694,  3696,  3700,  3702,
  2066.     3701,  3715,  3718,  3717,  3732,  3734,  3744,  3746,  3749,  3751,
  2067.     3755,  3756,  3769,  3786,  3788,  3792,  3791,  3806,  3808,  3812,
  2068.     3813,  3814,  3819,  3825,  3829,  3830,  3834,  3838,  3845,  3852,
  2069.     3864,  3868,  3876,  3877,  3878,  3879,  3880,  3884,  3885,  3886,
  2070.     3887,  3888,  3891,  3894,  3893,  3914,  3915,  3918,  3919,  3922,
  2071.     3934,  3934,  3944,  3945,  3948,  3958,  3957,  3966,  3978,  3989,
  2072.     3988,  4005,  4012,  4012,  4023,  4030,  4037,  4036,  4048,  4049,
  2073.     4052,  4060,  4061,  4065,  4066,  4074,  4084,  4073,  4094,  4102,
  2074.     4093,  4111,  4112,  4113,  4114,  4118,  4119,  4122,  4123,  4126,
  2075.     4135,  4136,  4137,  4139,  4138,  4148,  4149,  4150,  4153,  4154,
  2076.     4157,  4158,  4159,  4159,  4160,  4160,  4164,  4165,  4168,  4170,
  2077.     4173,  4181,  4182,  4186,  4187,  4192,  4191,  4204,  4205,  4208,
  2078.     4213,  4221,  4222,  4225,  4227,  4227,  4235,  4244,  4234,  4265,
  2079.     4266,  4269,  4276,  4277,  4280,  4289,  4290,  4296,  4295,  4309,
  2080.     4308,  4316,  4317,  4316,  4318,  4319,  4318,  4324,  4325,  4328,
  2081.     4334,  4345,  4346,  4350,  4351,  4354,  4355,  4356,  4359,  4368,
  2082.     4370,  4375,  4374,  4385,  4387,  4393,  4400,  4407,  4406,  4409,
  2083.     4417,  4427,  4431,  4436,  4435,  4440,  4448,  4453,  4459,  4464,
  2084.     4469,  4471,  4473,  4475,  4477,  4479,  4481,  4483,  4489,  4491,
  2085.     4493,  4495,  4497,  4520,  4527,  4533,  4539,  4543,  4549,  4563,
  2086.     4576,  4577,  4579,  4581,  4584,  4585,  4587,  4589,  4594,  4595,
  2087.     4598,  4599,  4602,  4603,  4606,  4607,  4613,  4612,  4623,  4622,
  2088.     4632,  4633,  4636,  4637,  4641,  4642,  4643,  4651,  4650,  4661,
  2089.     4662,  4665,  4665,  4666,  4667,  4668,  4669,  4670,  4671,  4672,
  2090.     4673,  4674,  4675,  4678,  4679,  4683,  4682,  4691,  4692,  4695,
  2091.     4696,  4697,  4701,  4700,  4709,  4713,  4718,  4742,  4756,  4766,
  2092.     4765,  4784,  4792,  4798,  4799,  4802,  4803,  4804,  4808,  4809,
  2093.     4810,  4812,  4814,  4817,  4818,  4821,  4826,  4833,  4838,  4844,
  2094.     4846,  4849,  4850,  4853,  4858,  4864,  4866,  4875,  4880,  4882,
  2095.     4884,  4889,  4891,  4905,  4920,  4921,  4922,  4931,  4932,  4933,
  2096.     4935,  4936,  4937,  4938,  4952,  4953,  4954,  4957,  4958,  4959,
  2097.     4960,  4961,  4969,  4970,  4973,  4978,  4988,  4991,  4999,  5015,
  2098.     5031,  5054,  5055,  5070,  5080,  5083,  5084,  5085,  5089,  5093,
  2099.     5094,  5119,  5131,  5144,  5145,  5154,  5155,  5156,  5159,  5168,
  2100.     5175,  5197,  5198,  5199,  5200,  5201,  5202,  5203,  5204,  5205,
  2101.     5206,  5207,  5208,  5209,  5210,  5211,  5212,  5213,  5214,  5215,
  2102.     5216,  5217,  5218,  5219,  5220,  5221,  5222,  5223,  5224,  5225,
  2103.     5226,  5227,  5228,  5229,  5230,  5231,  5232,  5233,  5234,  5235,
  2104.     5236,  5237,  5238,  5239,  5240,  5241,  5242,  5243,  5244,  5245,
  2105.     5246,  5247,  5248,  5249,  5250,  5251,  5252,  5253,  5254,  5255,
  2106.     5256,  5257,  5258,  5259,  5260,  5261,  5262,  5263,  5264,  5265,
  2107.     5266,  5267,  5268,  5269,  5270,  5271,  5272,  5273,  5274,  5275,
  2108.     5276,  5277,  5278,  5279,  5280,  5281,  5282,  5283,  5284,  5285,
  2109.     5286,  5287,  5288,  5289,  5290,  5291,  5292,  5293,  5294,  5295,
  2110.     5296,  5297,  5298,  5299,  5300,  5301,  5302,  5303,  5304,  5305,
  2111.     5306,  5307,  5308,  5309,  5310,  5311,  5312,  5313,  5314,  5315,
  2112.     5316,  5317,  5318,  5319,  5320,  5321,  5322,  5323,  5324,  5325,
  2113.     5326,  5327,  5328,  5329,  5330,  5331,  5332,  5333,  5334,  5335,
  2114.     5336,  5337,  5338,  5339,  5340,  5341,  5342,  5343,  5344,  5345,
  2115.     5346,  5347,  5348,  5349,  5350,  5351,  5352,  5353,  5354,  5355,
  2116.     5356,  5357,  5358,  5359,  5360,  5361,  5362,  5363,  5364,  5365,
  2117.     5366,  5367,  5368,  5369,  5370,  5371,  5372,  5373,  5374,  5375,
  2118.     5376,  5377,  5378,  5379,  5380,  5381,  5382,  5383,  5384,  5385,
  2119.     5386,  5387,  5388,  5389,  5390,  5391,  5392,  5393,  5394,  5395,
  2120.     5396,  5397,  5398,  5399,  5400,  5401,  5402,  5403,  5404,  5405,
  2121.     5412,  5411,  5425,  5426,  5429,  5430,  5433,  5434,  5438,  5439,
  2122.     5440,  5441,  5445,  5446,  5450,  5451,  5452,  5453,  5457,  5458,
  2123.     5459,  5460,  5464,  5470,  5484,  5488,  5494,  5501,  5514,  5524,
  2124.     5531,  5546,  5561,  5575,  5576,  5577,  5578,  5582,  5583,  5590,
  2125.     5599,  5600,  5601,  5602,  5603,  5611,  5610,  5619,  5620,  5623,
  2126.     5624,  5627,  5635,  5636,  5637,  5638,  5642,  5651,  5658,  5666,
  2127.     5665,  5679,  5680,  5684,  5685,  5689,  5690,  5691,  5692,  5694,
  2128.     5693,  5704,  5705,  5706,  5707,  5708,  5715,  5714,  5731,  5734,
  2129.     5742,  5741,  5759,  5760,  5763,  5765,  5769,  5770,  5773,  5773,
  2130.     5774,  5774,  5775,  5775,  5776,  5776,  5777,  5778,  5779,  5780,
  2131.     5781,  5782,  5783,  5784,  5785,  5786,  5787,  5788,  5789,  5790,
  2132.     5791,  5792,  5793,  5794,  5799,  5800,  5804,  5805,  5809,  5819,
  2133.     5829,  5842,  5854,  5866,  5878,  5890,  5891,  5900,  5925,  5927,
  2134.     5934,  5938,  5941,  5942,  5945,  5966,  5967,  5971,  5975,  5979,
  2135.     5986,  5987,  5990,  5991,  5995,  5996,  6001,  6006,  6014,  6014,
  2136.     6018,  6019,  6023,  6026,  6030,  6036,  6048,  6049,  6054,  6053,
  2137.     6079,  6080,  6084,  6086,  6086,  6110,  6111,  6115,  6116,  6117,
  2138.     6121,  6128,  6135,  6142,  6149,  6156,  6162,  6177
  2139. };
  2140. #endif
  2141. #if YYDEBUG || YYERROR_VERBOSE
  2142. /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
  2143.    First, the terminals, then, starting at YYNTOKENS, nonterminals. */
  2144. static const char *const yytname[] =
  2145. {
  2146.   "$end", "error", "$undefined", "END_OF_INPUT", "CLOSE_SYM",
  2147.   "HANDLER_SYM", "LAST_SYM", "NEXT_SYM", "PREV_SYM", "DIV_SYM", "EQ",
  2148.   "EQUAL_SYM", "SOUNDS_SYM", "GE", "GT_SYM", "LE", "LT", "NE", "IS",
  2149.   "MOD_SYM", "SHIFT_LEFT", "SHIFT_RIGHT", "SET_VAR", "ABORT_SYM", "ADD",
  2150.   "AFTER_SYM", "ALTER", "ANALYZE_SYM", "ANY_SYM", "AVG_SYM", "BEGIN_SYM",
  2151.   "BINLOG_SYM", "CHANGE", "CLIENT_SYM", "COMMENT_SYM", "COMMIT_SYM",
  2152.   "CONSISTENT_SYM", "COUNT_SYM", "CREATE", "CROSS", "CUBE_SYM",
  2153.   "DELETE_SYM", "DUAL_SYM", "DO_SYM", "DROP", "EVENTS_SYM", "EXECUTE_SYM",
  2154.   "EXPANSION_SYM", "FLUSH_SYM", "HELP_SYM", "INSERT", "RELAY_THREAD",
  2155.   "KILL_SYM", "LOAD", "LOCKS_SYM", "LOCK_SYM", "MASTER_SYM", "MAX_SYM",
  2156.   "MIN_SYM", "NONE_SYM", "OPTIMIZE", "PURGE", "REPAIR", "REPLICATION",
  2157.   "RESET_SYM", "ROLLBACK_SYM", "ROLLUP_SYM", "SAVEPOINT_SYM", "SELECT_SYM",
  2158.   "SHOW", "SLAVE", "SNAPSHOT_SYM", "SQL_THREAD", "START_SYM", "STD_SYM",
  2159.   "VARIANCE_SYM", "STOP_SYM", "SUM_SYM", "ADDDATE_SYM", "SUPER_SYM",
  2160.   "TRUNCATE_SYM", "UNLOCK_SYM", "UNTIL_SYM", "UPDATE_SYM", "ACTION",
  2161.   "AGGREGATE_SYM", "ALL", "AND_SYM", "AS", "ASC", "AUTO_INC",
  2162.   "AVG_ROW_LENGTH", "BACKUP_SYM", "BERKELEY_DB_SYM", "BINARY", "BIT_SYM",
  2163.   "BOOL_SYM", "BOOLEAN_SYM", "BOTH", "BTREE_SYM", "BY", "BYTE_SYM",
  2164.   "CACHE_SYM", "CASCADE", "CAST_SYM", "CHARSET", "CHECKSUM_SYM",
  2165.   "CHECK_SYM", "COMMITTED_SYM", "COLLATE_SYM", "COLLATION_SYM", "COLUMNS",
  2166.   "COLUMN_SYM", "CONCURRENT", "CONSTRAINT", "CONVERT_SYM", "CURRENT_USER",
  2167.   "DATABASES", "DATA_SYM", "DEFAULT", "DELAYED_SYM", "DELAY_KEY_WRITE_SYM",
  2168.   "DESC", "DESCRIBE", "DES_KEY_FILE", "DISABLE_SYM", "DISCARD", "DISTINCT",
  2169.   "DUPLICATE_SYM", "DYNAMIC_SYM", "ENABLE_SYM", "ENCLOSED", "ESCAPED",
  2170.   "DIRECTORY_SYM", "ESCAPE_SYM", "EXISTS", "EXTENDED_SYM", "FALSE_SYM",
  2171.   "FILE_SYM", "FIRST_SYM", "FIXED_SYM", "FLOAT_NUM", "FORCE_SYM",
  2172.   "FOREIGN", "FROM", "FULL", "FULLTEXT_SYM", "GLOBAL_SYM", "GRANT",
  2173.   "GRANTS", "GREATEST_SYM", "GROUP", "HAVING", "HASH_SYM", "HEX_NUM",
  2174.   "HIGH_PRIORITY", "HOSTS_SYM", "IDENT", "IDENT_QUOTED", "IGNORE_SYM",
  2175.   "IMPORT", "INDEX_SYM", "INDEXES", "INFILE", "INNER_SYM", "INNOBASE_SYM",
  2176.   "INTO", "IN_SYM", "ISOLATION", "JOIN_SYM", "KEYS", "KEY_SYM", "LEADING",
  2177.   "LEAST_SYM", "LEAVES", "LEVEL_SYM", "LEX_HOSTNAME", "LIKE", "LINES",
  2178.   "LOCAL_SYM", "LOG_SYM", "LOGS_SYM", "LONG_NUM", "LONG_SYM",
  2179.   "LOW_PRIORITY", "MASTER_HOST_SYM", "MASTER_USER_SYM",
  2180.   "MASTER_LOG_FILE_SYM", "MASTER_LOG_POS_SYM", "MASTER_PASSWORD_SYM",
  2181.   "MASTER_PORT_SYM", "MASTER_CONNECT_RETRY_SYM", "MASTER_SERVER_ID_SYM",
  2182.   "MASTER_SSL_SYM", "MASTER_SSL_CA_SYM", "MASTER_SSL_CAPATH_SYM",
  2183.   "MASTER_SSL_CERT_SYM", "MASTER_SSL_CIPHER_SYM", "MASTER_SSL_KEY_SYM",
  2184.   "RELAY_LOG_FILE_SYM", "RELAY_LOG_POS_SYM", "MATCH", "MAX_ROWS",
  2185.   "MAX_CONNECTIONS_PER_HOUR", "MAX_QUERIES_PER_HOUR",
  2186.   "MAX_UPDATES_PER_HOUR", "MEDIUM_SYM", "MIN_ROWS", "NAMES_SYM",
  2187.   "NATIONAL_SYM", "NATURAL", "NDBCLUSTER_SYM", "NEW_SYM", "NCHAR_SYM",
  2188.   "NCHAR_STRING", "NVARCHAR_SYM", "NOT", "NO_SYM", "NULL_SYM", "NUM",
  2189.   "OFFSET_SYM", "ON", "ONE_SHOT_SYM", "OPEN_SYM", "OPTION", "OPTIONALLY",
  2190.   "OR_SYM", "OR_OR_CONCAT", "ORDER_SYM", "OUTER", "OUTFILE", "DUMPFILE",
  2191.   "PACK_KEYS_SYM", "PARTIAL", "PRIMARY_SYM", "PRIVILEGES", "PROCESS",
  2192.   "PROCESSLIST_SYM", "QUERY_SYM", "RAID_0_SYM", "RAID_STRIPED_SYM",
  2193.   "RAID_TYPE", "RAID_CHUNKS", "RAID_CHUNKSIZE", "READ_SYM", "REAL_NUM",
  2194.   "REFERENCES", "REGEXP", "RELOAD", "RENAME", "REPEATABLE_SYM",
  2195.   "REQUIRE_SYM", "RESOURCES", "RESTORE_SYM", "RESTRICT", "REVOKE",
  2196.   "ROWS_SYM", "ROW_FORMAT_SYM", "ROW_SYM", "RTREE_SYM", "SET",
  2197.   "SEPARATOR_SYM", "SERIAL_SYM", "SERIALIZABLE_SYM", "SESSION_SYM",
  2198.   "SIMPLE_SYM", "SHUTDOWN", "SPATIAL_SYM", "SSL_SYM", "STARTING",
  2199.   "STATUS_SYM", "STORAGE_SYM", "STRAIGHT_JOIN", "SUBJECT_SYM", "TABLES",
  2200.   "TABLE_SYM", "TABLESPACE", "TEMPORARY", "TERMINATED", "TEXT_STRING",
  2201.   "TO_SYM", "TRAILING", "TRANSACTION_SYM", "TRUE_SYM", "TYPE_SYM",
  2202.   "TYPES_SYM", "FUNC_ARG0", "FUNC_ARG1", "FUNC_ARG2", "FUNC_ARG3",
  2203.   "UDF_RETURNS_SYM", "UDF_SONAME_SYM", "UDF_SYM", "UNCOMMITTED_SYM",
  2204.   "UNDERSCORE_CHARSET", "UNICODE_SYM", "UNION_SYM", "UNIQUE_SYM", "USAGE",
  2205.   "USE_FRM", "USE_SYM", "USING", "VALUE_SYM", "VALUES", "VARIABLES",
  2206.   "WHERE", "WITH", "WRITE_SYM", "NO_WRITE_TO_BINLOG", "X509_SYM", "XOR",
  2207.   "COMPRESSED_SYM", "ERRORS", "WARNINGS", "ASCII_SYM", "BIGINT",
  2208.   "BLOB_SYM", "CHAR_SYM", "CHANGED", "COALESCE", "DATETIME", "DATE_SYM",
  2209.   "DECIMAL_SYM", "DOUBLE_SYM", "ENUM", "FAST_SYM", "FLOAT_SYM",
  2210.   "GEOMETRY_SYM", "INT_SYM", "LIMIT", "LONGBLOB", "LONGTEXT", "MEDIUMBLOB",
  2211.   "MEDIUMINT", "MEDIUMTEXT", "NUMERIC_SYM", "PRECISION", "PREPARE_SYM",
  2212.   "DEALLOCATE_SYM", "QUICK", "REAL", "SIGNED_SYM", "SMALLINT",
  2213.   "STRING_SYM", "TEXT_SYM", "TIMESTAMP", "TIME_SYM", "TINYBLOB", "TINYINT",
  2214.   "TINYTEXT", "ULONGLONG_NUM", "UNSIGNED", "VARBINARY", "VARCHAR",
  2215.   "VARYING", "ZEROFILL", "AGAINST", "ATAN", "BETWEEN_SYM", "BIT_AND",
  2216.   "BIT_OR", "BIT_XOR", "CASE_SYM", "CONCAT", "CONCAT_WS", "CONVERT_TZ_SYM",
  2217.   "CURDATE", "CURTIME", "DATABASE", "DATE_ADD_INTERVAL",
  2218.   "DATE_SUB_INTERVAL", "DAY_HOUR_SYM", "DAY_MICROSECOND_SYM",
  2219.   "DAY_MINUTE_SYM", "DAY_SECOND_SYM", "DAY_SYM", "DECODE_SYM",
  2220.   "DES_ENCRYPT_SYM", "DES_DECRYPT_SYM", "ELSE", "ELT_FUNC", "ENCODE_SYM",
  2221.   "ENGINE_SYM", "ENGINES_SYM", "ENCRYPT", "EXPORT_SET", "EXTRACT_SYM",
  2222.   "FIELD_FUNC", "FORMAT_SYM", "FOR_SYM", "FROM_UNIXTIME",
  2223.   "GEOMCOLLFROMTEXT", "GEOMFROMTEXT", "GEOMFROMWKB", "GEOMETRYCOLLECTION",
  2224.   "GROUP_CONCAT_SYM", "GROUP_UNIQUE_USERS", "GET_FORMAT",
  2225.   "HOUR_MICROSECOND_SYM", "HOUR_MINUTE_SYM", "HOUR_SECOND_SYM", "HOUR_SYM",
  2226.   "IDENTIFIED_SYM", "IF", "INSERT_METHOD", "INTERVAL_SYM",
  2227.   "LAST_INSERT_ID", "LEFT", "LINEFROMTEXT", "LINESTRING", "LOCATE",
  2228.   "MAKE_SET_SYM", "MASTER_POS_WAIT", "MICROSECOND_SYM",
  2229.   "MINUTE_MICROSECOND_SYM", "MINUTE_SECOND_SYM", "MINUTE_SYM", "MODE_SYM",
  2230.   "MODIFY_SYM", "MONTH_SYM", "MLINEFROMTEXT", "MPOINTFROMTEXT",
  2231.   "MPOLYFROMTEXT", "MULTILINESTRING", "MULTIPOINT", "MULTIPOLYGON",
  2232.   "NOW_SYM", "OLD_PASSWORD", "PASSWORD", "PARAM_MARKER", "POINTFROMTEXT",
  2233.   "POINT_SYM", "POLYFROMTEXT", "POLYGON", "POSITION_SYM", "PROCEDURE",
  2234.   "RAND", "REPLACE", "RIGHT", "ROUND", "SECOND_SYM",
  2235.   "SECOND_MICROSECOND_SYM", "SHARE_SYM", "SUBDATE_SYM", "SUBSTRING",
  2236.   "SUBSTRING_INDEX", "TRIM", "UDA_CHAR_SUM", "UDA_FLOAT_SUM",
  2237.   "UDA_INT_SUM", "UDF_CHAR_FUNC", "UDF_FLOAT_FUNC", "UDF_INT_FUNC",
  2238.   "UNIQUE_USERS", "UNIX_TIMESTAMP", "USER", "UTC_DATE_SYM", "UTC_TIME_SYM",
  2239.   "UTC_TIMESTAMP_SYM", "WEEK_SYM", "WHEN_SYM", "WORK_SYM",
  2240.   "YEAR_MONTH_SYM", "YEAR_SYM", "YEARWEEK", "BENCHMARK_SYM", "END",
  2241.   "THEN_SYM", "SQL_BIG_RESULT", "SQL_CACHE_SYM", "SQL_CALC_FOUND_ROWS",
  2242.   "SQL_NO_CACHE_SYM", "SQL_SMALL_RESULT", "SQL_BUFFER_RESULT",
  2243.   "ISSUER_SYM", "CIPHER_SYM", "BEFORE_SYM", "'|'", "'&'", "'-'", "'+'",
  2244.   "'*'", "'/'", "'%'", "'^'", "'~'", "NEG", "'('", "')'", "','", "'!'",
  2245.   "'{'", "'}'", "'@'", "'.'", "$accept", "query", "verb_clause",
  2246.   "deallocate", "deallocate_or_drop", "prepare", "prepare_src", "execute",
  2247.   "@1", "execute_using", "execute_var_list", "execute_var_ident", "help",
  2248.   "change", "@2", "master_defs", "master_def", "master_file_def", "create",
  2249.   "@3", "@4", "@5", "@6", "create2", "create2a", "@7", "create3", "@8",
  2250.   "@9", "create_select", "@10", "@11", "opt_as",
  2251.   "opt_create_database_options", "create_database_options",
  2252.   "create_database_option", "opt_table_options", "table_options",
  2253.   "table_option", "opt_if_not_exists", "opt_create_table_options",
  2254.   "create_table_options_space_separated", "create_table_options",
  2255.   "create_table_option", "default_charset", "default_collation",
  2256.   "storage_engines", "row_types", "raid_types", "merge_insert_types",
  2257.   "opt_select_from", "udf_func_type", "udf_type", "field_list",
  2258.   "field_list_item", "column_def", "key_def", "opt_check_constraint",
  2259.   "check_constraint", "opt_constraint", "constraint", "field_spec", "@12",
  2260.   "type", "@13", "@14", "spatial_type", "char", "nchar", "varchar",
  2261.   "nvarchar", "int_type", "real_type", "float_options", "precision",
  2262.   "field_options", "field_opt_list", "field_option", "opt_len",
  2263.   "opt_precision", "opt_attribute", "opt_attribute_list", "attribute",
  2264.   "now_or_signed_literal", "charset", "charset_name",
  2265.   "charset_name_or_default", "old_or_new_charset_name",
  2266.   "old_or_new_charset_name_or_default", "collation_name", "opt_collate",
  2267.   "collation_name_or_default", "opt_default", "opt_binary", "opt_primary",
  2268.   "references", "@15", "opt_ref_list", "ref_list", "opt_on_delete",
  2269.   "opt_on_delete_list", "opt_on_delete_item", "delete_option", "key_type",
  2270.   "constraint_key_type", "key_or_index", "opt_key_or_index",
  2271.   "keys_or_index", "opt_unique_or_fulltext", "key_alg",
  2272.   "opt_btree_or_rtree", "key_list", "key_part", "opt_ident",
  2273.   "opt_component", "string_list", "alter", "@16", "@17", "ident_or_empty",
  2274.   "alter_list", "add_column", "alter_list_item", "@18", "@19", "@20",
  2275.   "opt_column", "opt_ignore", "opt_restrict", "opt_place", "opt_to",
  2276.   "slave", "@21", "@22", "start", "start_transaction_opts",
  2277.   "slave_thread_opts", "@23", "slave_thread_opt_list", "slave_thread_opt",
  2278.   "slave_until", "slave_until_opts", "restore", "@24", "backup", "@25",
  2279.   "checksum", "@26", "opt_checksum_type", "repair", "@27",
  2280.   "opt_mi_repair_type", "mi_repair_types", "mi_repair_type", "analyze",
  2281.   "@28", "check", "@29", "opt_mi_check_type", "mi_check_types",
  2282.   "mi_check_type", "optimize", "@30", "opt_no_write_to_binlog", "rename",
  2283.   "@31", "table_to_table_list", "table_to_table", "keycache",
  2284.   "keycache_list", "assign_to_keycache", "key_cache_name", "preload",
  2285.   "@32", "preload_list", "preload_keys", "cache_keys_spec", "@33",
  2286.   "cache_key_list_or_empty", "opt_ignore_leaves", "select", "select_init",
  2287.   "select_paren", "select_init2", "@34", "select_part2", "@35", "@36",
  2288.   "select_into", "select_from", "select_options", "select_option_list",
  2289.   "select_option", "select_lock_type", "select_item_list", "select_item",
  2290.   "remember_name", "remember_end", "select_item2", "select_alias",
  2291.   "optional_braces", "expr", "comp_op", "all_or_any", "expr_expr",
  2292.   "no_in_expr", "no_and_expr", "interval_expr", "simple_expr",
  2293.   "geometry_function", "fulltext_options", "udf_expr_list",
  2294.   "udf_sum_expr_list", "@37", "sum_expr", "@38", "@39", "@40",
  2295.   "opt_distinct", "opt_gconcat_separator", "opt_gorder_clause",
  2296.   "in_sum_expr", "@41", "cast_type", "expr_list", "@42", "expr_list2",
  2297.   "ident_list_arg", "ident_list", "@43", "ident_list2", "opt_expr",
  2298.   "opt_else", "when_list", "@44", "when_list2", "join_table_list", "@45",
  2299.   "@46", "@47", "normal_join", "join_table", "@48", "select_derived",
  2300.   "select_derived2", "@49", "@50", "opt_outer", "opt_key_definition",
  2301.   "key_usage_list", "@51", "key_list_or_empty", "key_usage_list2",
  2302.   "using_list", "interval", "date_time_type", "table_alias",
  2303.   "opt_table_alias", "opt_all", "where_clause", "@52", "having_clause",
  2304.   "@53", "opt_escape", "group_clause", "group_list", "olap_opt",
  2305.   "opt_order_clause", "order_clause", "@54", "order_list", "order_dir",
  2306.   "opt_limit_clause_init", "opt_limit_clause", "limit_clause",
  2307.   "limit_options", "delete_limit_clause", "ULONG_NUM", "ulonglong_num",
  2308.   "procedure_clause", "@55", "procedure_list", "procedure_list2",
  2309.   "procedure_item", "select_var_list_init", "@56", "select_var_list",
  2310.   "select_var_ident", "into", "@57", "do", "@58", "drop", "@59", "@60",
  2311.   "table_list", "table_name", "if_exists", "opt_temporary", "insert",
  2312.   "@61", "@62", "replace", "@63", "@64", "insert_lock_option",
  2313.   "replace_lock_option", "insert2", "insert_table", "insert_field_spec",
  2314.   "@65", "opt_field_spec", "fields", "insert_values", "@66", "@67",
  2315.   "values_list", "ident_eq_list", "ident_eq_value", "equal", "opt_equal",
  2316.   "no_braces", "@68", "opt_values", "values", "expr_or_default",
  2317.   "opt_insert_update", "@69", "update", "@70", "@71", "update_list",
  2318.   "update_elem", "insert_update_list", "insert_update_elem",
  2319.   "opt_low_priority", "delete", "@72", "single_multi", "@73", "@74", "@75",
  2320.   "@76", "@77", "table_wild_list", "table_wild_one", "opt_wild",
  2321.   "opt_delete_options", "opt_delete_option", "truncate", "opt_table_sym",
  2322.   "show", "@78", "show_param", "@79", "@80", "show_engine_param",
  2323.   "master_or_binary", "opt_storage", "opt_db", "wild", "opt_full",
  2324.   "from_or_in", "binlog_in", "binlog_from", "describe", "@81", "@82",
  2325.   "describe_command", "opt_extended_describe", "opt_describe_column",
  2326.   "flush", "@83", "flush_options", "flush_option", "@84", "opt_table_list",
  2327.   "reset", "@85", "reset_options", "reset_option", "purge", "@86",
  2328.   "purge_options", "purge_option", "kill", "use", "load", "@87",
  2329.   "opt_local", "load_data_lock", "opt_duplicate", "opt_field_term",
  2330.   "field_term_list", "field_term", "opt_line_term", "line_term_list",
  2331.   "line_term", "opt_ignore_lines", "text_literal", "text_string",
  2332.   "param_marker", "signed_literal", "literal", "NUM_literal",
  2333.   "insert_ident", "table_wild", "order_ident", "simple_ident",
  2334.   "field_ident", "table_ident", "table_ident_nodb", "IDENT_sys",
  2335.   "TEXT_STRING_sys", "TEXT_STRING_literal", "ident", "ident_or_text",
  2336.   "user", "keyword", "set", "@88", "opt_option", "option_value_list",
  2337.   "option_value_ext", "option_type_ext", "option_type", "opt_var_type",
  2338.   "opt_var_ident_type", "sys_option_value", "option_value",
  2339.   "internal_variable_name", "isolation_types", "text_or_password",
  2340.   "set_expr_or_default", "lock", "@89", "table_or_tables",
  2341.   "table_lock_list", "table_lock", "lock_option", "unlock", "handler",
  2342.   "@90", "handler_read_or_scan", "handler_scan_function",
  2343.   "handler_rkey_function", "@91", "handler_rkey_mode", "revoke", "@92",
  2344.   "revoke_command", "grant", "@93", "grant_privileges", "opt_privileges",
  2345.   "grant_privilege_list", "grant_privilege", "@94", "@95", "@96", "@97",
  2346.   "opt_and", "require_list", "require_list_element", "opt_table",
  2347.   "user_list", "grant_user", "opt_column_list", "column_list",
  2348.   "column_list_id", "require_clause", "grant_options", "grant_option_list",
  2349.   "grant_option", "begin", "@98", "opt_work", "commit", "rollback",
  2350.   "savepoint", "union_clause", "union_list", "@99", "union_opt",
  2351.   "optional_order_or_limit", "@100", "order_or_limit", "union_option",
  2352.   "singlerow_subselect", "singlerow_subselect_init", "exists_subselect",
  2353.   "exists_subselect_init", "in_subselect", "in_subselect_init",
  2354.   "subselect_start", "subselect_end", 0
  2355. };
  2356. #endif
  2357. # ifdef YYPRINT
  2358. /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
  2359.    token YYLEX-NUM.  */
  2360. static const unsigned short yytoknum[] =
  2361. {
  2362.        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
  2363.      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
  2364.      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
  2365.      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
  2366.      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
  2367.      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
  2368.      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
  2369.      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
  2370.      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
  2371.      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
  2372.      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
  2373.      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
  2374.      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
  2375.      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
  2376.      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
  2377.      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
  2378.      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
  2379.      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
  2380.      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
  2381.      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
  2382.      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
  2383.      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
  2384.      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
  2385.      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
  2386.      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
  2387.      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
  2388.      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
  2389.      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
  2390.      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
  2391.      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
  2392.      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
  2393.      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
  2394.      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
  2395.      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
  2396.      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
  2397.      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
  2398.      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
  2399.      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
  2400.      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
  2401.      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
  2402.      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
  2403.      665,   666,   667,   668,   669,   670,   671,   672,   673,   674,
  2404.      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
  2405.      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
  2406.      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
  2407.      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
  2408.      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
  2409.      725,   726,   727,   728,   729,   730,   731,   124,    38,    45,
  2410.       43,    42,    47,    37,    94,   126,   732,    40,    41,    44,
  2411.       33,   123,   125,    64,    46
  2412. };
  2413. # endif
  2414. /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
  2415. static const unsigned short yyr1[] =
  2416. {
  2417.        0,   495,   496,   496,   497,   497,   497,   497,   497,   497,
  2418.      497,   497,   497,   497,   497,   497,   497,   497,   497,   497,
  2419.      497,   497,   497,   497,   497,   497,   497,   497,   497,   497,
  2420.      497,   497,   497,   497,   497,   497,   497,   497,   497,   497,
  2421.      497,   497,   497,   497,   497,   497,   497,   497,   497,   498,
  2422.      499,   499,   500,   501,   501,   503,   502,   504,   504,   505,
  2423.      505,   506,   507,   509,   508,   510,   510,   511,   511,   511,
  2424.      511,   511,   511,   511,   511,   511,   511,   511,   511,   512,
  2425.      512,   512,   512,   514,   513,   515,   513,   516,   513,   517,
  2426.      513,   518,   518,   518,   518,   519,   520,   519,   521,   522,
  2427.      521,   523,   521,   525,   526,   524,   527,   527,   528,   528,
  2428.      529,   529,   530,   530,   531,   531,   532,   532,   533,   534,
  2429.      534,   535,   535,   536,   536,   537,   537,   537,   538,   538,
  2430.      538,   538,   538,   538,   538,   538,   538,   538,   538,   538,
  2431.      538,   538,   538,   538,   538,   538,   538,   538,   538,   538,
  2432.      539,   540,   541,   542,   542,   542,   542,   543,   543,   543,
  2433.      544,   544,   544,   545,   545,   546,   546,   547,   547,   547,
  2434.      548,   548,   549,   549,   550,   550,   551,   551,   551,   551,
  2435.      551,   552,   552,   553,   554,   554,   555,   557,   556,   558,
  2436.      558,   558,   558,   558,   558,   558,   558,   558,   558,   558,
  2437.      558,   558,   558,   558,   558,   558,   558,   558,   558,   558,
  2438.      558,   558,   558,   558,   558,   558,   558,   558,   558,   558,
  2439.      558,   558,   558,   559,   558,   560,   558,   558,   558,   561,
  2440.      561,   561,   561,   561,   561,   561,   561,   562,   563,   563,
  2441.      564,   564,   565,   565,   565,   565,   565,   566,   566,   566,
  2442.      566,   566,   567,   567,   567,   568,   568,   568,   569,   570,
  2443.      570,   571,   571,   572,   572,   572,   573,   573,   574,   574,
  2444.      575,   575,   576,   576,   577,   577,   577,   577,   577,   577,
  2445.      577,   577,   577,   577,   577,   577,   578,   578,   579,   579,
  2446.      580,   580,   581,   581,   582,   582,   583,   583,   584,   585,
  2447.      585,   586,   586,   587,   587,   588,   588,   588,   588,   588,
  2448.      589,   589,   591,   590,   592,   592,   593,   593,   594,   594,
  2449.      595,   595,   596,   596,   596,   596,   596,   597,   597,   597,
  2450.      597,   597,   598,   598,   598,   599,   599,   600,   600,   601,
  2451.      601,   602,   602,   602,   603,   603,   603,   603,   604,   604,
  2452.      604,   605,   605,   605,   606,   606,   607,   607,   608,   608,
  2453.      609,   609,   610,   610,   612,   611,   613,   611,   614,   614,
  2454.      615,   615,   615,   615,   615,   616,   617,   617,   617,   618,
  2455.      617,   619,   620,   617,   617,   617,   617,   617,   617,   617,
  2456.      617,   617,   617,   617,   617,   617,   621,   621,   622,   622,
  2457.      623,   623,   623,   624,   624,   624,   625,   625,   625,   625,
  2458.      627,   626,   626,   628,   626,   626,   629,   630,   630,   632,
  2459.      631,   633,   633,   634,   634,   634,   635,   635,   636,   636,
  2460.      638,   637,   640,   639,   642,   641,   643,   643,   643,   645,
  2461.      644,   646,   646,   647,   647,   648,   648,   648,   650,   649,
  2462.      652,   651,   653,   653,   654,   654,   655,   655,   655,   655,
  2463.      655,   657,   656,   658,   658,   658,   660,   659,   661,   661,
  2464.      662,   663,   664,   664,   665,   666,   666,   668,   667,   669,
  2465.      669,   670,   672,   671,   673,   673,   674,   674,   675,   676,
  2466.      676,   677,   677,   679,   678,   681,   682,   680,   683,   683,
  2467.      683,   683,   683,   684,   684,   685,   685,   686,   686,   687,
  2468.      687,   687,   687,   687,   687,   687,   687,   687,   687,   688,
  2469.      688,   688,   689,   689,   689,   690,   691,   692,   693,   693,
  2470.      694,   694,   694,   694,   694,   695,   695,   696,   696,   697,
  2471.      697,   697,   697,   697,   697,   698,   698,   699,   699,   699,
  2472.      699,   699,   699,   699,   699,   699,   699,   699,   699,   699,
  2473.      699,   699,   699,   699,   699,   699,   699,   699,   699,   699,
  2474.      699,   699,   699,   699,   699,   699,   699,   699,   699,   699,
  2475.      699,   700,   700,   700,   700,   700,   700,   700,   700,   700,
  2476.      700,   700,   700,   700,   700,   700,   700,   700,   700,   700,
  2477.      700,   700,   700,   700,   700,   700,   700,   700,   700,   700,
  2478.      700,   700,   701,   701,   701,   701,   701,   701,   701,   701,
  2479.      701,   701,   701,   701,   701,   701,   701,   701,   701,   701,
  2480.      701,   701,   701,   701,   701,   701,   701,   701,   701,   701,
  2481.      701,   701,   701,   701,   701,   701,   702,   703,   703,   703,
  2482.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2483.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2484.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2485.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2486.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2487.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2488.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2489.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2490.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2491.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2492.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2493.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2494.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2495.      703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
  2496.      704,   704,   704,   704,   704,   704,   704,   704,   704,   704,
  2497.      704,   704,   704,   704,   704,   704,   704,   704,   704,   704,
  2498.      704,   704,   704,   704,   704,   705,   705,   705,   706,   706,
  2499.      708,   707,   709,   709,   709,   709,   709,   709,   710,   711,
  2500.      709,   709,   709,   709,   709,   709,   709,   712,   709,   713,
  2501.      713,   714,   714,   715,   715,   717,   716,   718,   718,   718,
  2502.      718,   718,   718,   718,   718,   718,   718,   720,   719,   721,
  2503.      721,   722,   722,   724,   723,   725,   725,   726,   726,   727,
  2504.      727,   729,   728,   730,   730,   731,   731,   731,   731,   731,
  2505.      732,   731,   731,   733,   731,   731,   731,   734,   731,   731,
  2506.      731,   735,   735,   735,   737,   736,   736,   736,   736,   738,
  2507.      738,   740,   741,   739,   742,   742,   743,   743,   743,   743,
  2508.      745,   744,   746,   746,   747,   747,   747,   748,   748,   749,
  2509.      749,   749,   749,   749,   749,   749,   749,   749,   749,   749,
  2510.      749,   749,   749,   749,   749,   749,   749,   750,   750,   750,
  2511.      750,   751,   751,   751,   752,   752,   753,   753,   754,   755,
  2512.      754,   756,   757,   756,   758,   758,   759,   759,   760,   760,
  2513.      761,   761,   761,   762,   762,   764,   763,   765,   765,   766,
  2514.      766,   766,   767,   767,   768,   768,   769,   770,   770,   770,
  2515.      771,   771,   772,   772,   772,   772,   772,   773,   773,   773,
  2516.      773,   773,   774,   775,   774,   776,   776,   777,   777,   778,
  2517.      780,   779,   781,   781,   782,   784,   783,   783,   783,   786,
  2518.      785,   787,   788,   787,   787,   787,   789,   787,   790,   790,
  2519.      791,   792,   792,   793,   793,   795,   796,   794,   798,   799,
  2520.      797,   800,   800,   800,   800,   801,   801,   802,   802,   803,
  2521.      804,   804,   804,   805,   804,   806,   806,   806,   807,   807,
  2522.      808,   808,   809,   808,   810,   808,   811,   811,   812,   812,
  2523.      813,   814,   814,   815,   815,   817,   816,   818,   818,   819,
  2524.      819,   820,   820,   821,   822,   821,   824,   825,   823,   826,
  2525.      826,   827,   828,   828,   829,   830,   830,   832,   831,   834,
  2526.      833,   835,   836,   833,   837,   838,   833,   839,   839,   840,
  2527.      840,   841,   841,   842,   842,   843,   843,   843,   844,   845,
  2528.      845,   847,   846,   848,   848,   848,   848,   849,   848,   848,
  2529.      848,   848,   848,   850,   848,   848,   848,   848,   848,   848,
  2530.      848,   848,   848,   848,   848,   848,   848,   848,   848,   848,
  2531.      848,   848,   848,   848,   848,   848,   848,   848,   851,   851,
  2532.      852,   852,   853,   853,   854,   854,   855,   855,   856,   856,
  2533.      857,   857,   858,   858,   859,   859,   861,   860,   862,   860,
  2534.      863,   863,   864,   864,   865,   865,   865,   867,   866,   868,
  2535.      868,   870,   869,   869,   869,   869,   869,   869,   869,   869,
  2536.      869,   869,   869,   871,   871,   873,   872,   874,   874,   875,
  2537.      875,   875,   877,   876,   878,   879,   879,   880,   881,   883,
  2538.      882,   882,   882,   884,   884,   885,   885,   885,   886,   886,
  2539.      886,   887,   887,   888,   888,   889,   889,   889,   889,   890,
  2540.      890,   891,   891,   892,   892,   893,   893,   894,   894,   894,
  2541.      894,   895,   895,   896,   897,   897,   897,   898,   898,   898,
  2542.      898,   898,   898,   898,   898,   898,   898,   899,   899,   899,
  2543.      899,   899,   900,   900,   901,   901,   902,   903,   903,   903,
  2544.      903,   904,   904,   904,   904,   905,   905,   905,   906,   907,
  2545.      907,   908,   909,   910,   910,   911,   911,   911,   912,   912,
  2546.      912,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2547.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2548.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2549.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2550.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2551.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2552.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2553.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2554.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2555.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2556.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2557.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2558.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2559.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2560.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2561.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2562.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2563.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2564.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2565.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2566.      913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
  2567.      915,   914,   916,   916,   917,   917,   918,   918,   919,   919,
  2568.      919,   919,   920,   920,   921,   921,   921,   921,   922,   922,
  2569.      922,   922,   923,   923,   924,   924,   924,   924,   924,   924,
  2570.      925,   925,   925,   926,   926,   926,   926,   927,   927,   927,
  2571.      928,   928,   928,   928,   928,   930,   929,   931,   931,   932,
  2572.      932,   933,   934,   934,   934,   934,   935,   936,   936,   937,
  2573.      936,   938,   938,   939,   939,   940,   940,   940,   940,   941,
  2574.      940,   942,   942,   942,   942,   942,   944,   943,   945,   945,
  2575.      947,   946,   948,   948,   949,   949,   950,   950,   952,   951,
  2576.      953,   951,   954,   951,   955,   951,   951,   951,   951,   951,
  2577.      951,   951,   951,   951,   951,   951,   951,   951,   951,   951,
  2578.      951,   951,   951,   951,   956,   956,   957,   957,   958,   958,
  2579.      958,   959,   959,   959,   959,   960,   960,   961,   961,   961,
  2580.      962,   962,   963,   963,   964,   965,   965,   965,   965,   965,
  2581.      966,   966,   967,   967,   968,   968,   968,   968,   970,   969,
  2582.      971,   971,   972,   973,   973,   974,   975,   975,   977,   976,
  2583.      978,   978,   979,   980,   979,   981,   981,   982,   982,   982,
  2584.      983,   984,   985,   986,   987,   988,   989,   990
  2585. };
  2586. /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
  2587. static const unsigned char yyr2[] =
  2588. {
  2589.        0,     2,     1,     2,     1,     1,     1,     1,     1,     1,
  2590.        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
  2591.        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
  2592.        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
  2593.        1,     1,     1,     1,     1,     1,     1,     1,     1,     3,
  2594.        1,     1,     4,     1,     2,     0,     4,     0,     2,     3,
  2595.        1,     2,     2,     0,     5,     1,     3,     3,     3,     3,
  2596.        3,     3,     3,     3,     3,     3,     3,     3,     1,     3,
  2597.        3,     3,     3,     0,     7,     0,    11,     0,     6,     0,
  2598.        9,     2,     2,     2,     4,     4,     0,     4,     0,     0,
  2599.        5,     0,     7,     0,     0,     6,     0,     1,     0,     1,
  2600.        1,     2,     1,     1,     0,     1,     1,     2,     1,     0,
  2601.        3,     0,     1,     1,     2,     1,     2,     3,     3,     3,
  2602.        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
  2603.        3,     3,     3,     3,     5,     1,     1,     3,     4,     4,
  2604.        4,     4,     1,     1,     1,     1,     1,     1,     1,     1,
  2605.        1,     1,     1,     1,     2,     0,     1,     1,     1,     1,
  2606.        1,     3,     1,     1,     2,     2,     6,     7,     8,     2,
  2607.        2,     0,     1,     2,     0,     1,     2,     0,     4,     3,
  2608.        3,     3,     2,     1,     1,     5,     2,     4,     1,     4,
  2609.        1,     5,     4,     4,     3,     1,     1,     2,     1,     1,
  2610.        2,     1,     1,     1,     2,     3,     2,     3,     2,     2,
  2611.        3,     3,     3,     0,     6,     0,     6,     2,     1,     1,
  2612.        1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
  2613.        2,     1,     2,     1,     2,     3,     2,     1,     1,     1,
  2614.        1,     1,     1,     1,     2,     0,     3,     1,     5,     0,
  2615.        1,     2,     1,     1,     1,     1,     0,     3,     0,     1,
  2616.        0,     1,     2,     1,     1,     2,     2,     4,     1,     3,
  2617.        2,     1,     2,     2,     1,     2,     2,     1,     2,     1,
  2618.        1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
  2619.        2,     1,     1,     0,     1,     0,     1,     1,     1,     2,
  2620.        0,     1,     0,     4,     1,     4,     3,     1,     0,     1,
  2621.        2,     1,     3,     3,     2,     2,     2,     1,     1,     2,
  2622.        2,     2,     1,     2,     2,     2,     2,     1,     1,     0,
  2623.        1,     1,     1,     1,     0,     1,     1,     1,     0,     2,
  2624.        2,     1,     1,     1,     4,     2,     1,     4,     0,     1,
  2625.        0,     2,     1,     3,     0,     6,     0,     5,     0,     1,
  2626.        0,     2,     2,     1,     3,     2,     3,     2,     4,     0,
  2627.        6,     0,     0,     8,     4,     4,     3,     3,     2,     2,
  2628.        6,     5,     3,     5,     1,     1,     0,     1,     0,     1,
  2629.        0,     1,     1,     0,     2,     1,     0,     1,     1,     1,
  2630.        0,     5,     3,     0,     5,     3,     3,     0,     3,     0,
  2631.        2,     1,     3,     0,     1,     1,     0,     2,     1,     3,
  2632.        0,     6,     0,     6,     0,     5,     0,     1,     1,     0,
  2633.        6,     0,     1,     1,     2,     1,     1,     1,     0,     6,
  2634.        0,     5,     0,     1,     1,     2,     1,     1,     1,     1,
  2635.        1,     0,     6,     0,     1,     1,     0,     4,     1,     3,
  2636.        3,     5,     1,     3,     2,     1,     1,     0,     6,     1,
  2637.        3,     3,     0,     2,     0,     4,     0,     2,     1,     2,
  2638.        4,     2,     3,     0,     3,     0,     0,     6,     2,     1,
  2639.        1,     2,     2,     8,     4,     0,     1,     2,     1,     1,
  2640.        1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
  2641.        2,     4,     3,     1,     1,     4,     0,     0,     1,     1,
  2642.        0,     2,     2,     1,     1,     0,     2,     1,     1,     1,
  2643.        1,     1,     1,     1,     1,     1,     1,     5,     6,     3,
  2644.        4,     5,     6,     3,     3,     3,     3,     4,     4,     5,
  2645.        3,     4,     3,     4,     3,     3,     4,     3,     3,     3,
  2646.        3,     3,     3,     3,     3,     3,     3,     3,     3,     4,
  2647.        4,     5,     6,     3,     3,     3,     3,     4,     4,     5,
  2648.        3,     4,     3,     4,     3,     3,     4,     3,     3,     3,
  2649.        3,     3,     3,     3,     3,     3,     3,     3,     3,     4,
  2650.        4,     1,     5,     6,     3,     4,     5,     6,     3,     3,
  2651.        3,     4,     4,     5,     3,     4,     3,     4,     3,     3,
  2652.        4,     3,     3,     3,     3,     3,     3,     3,     3,     3,
  2653.        3,     3,     3,     4,     4,     1,     2,     1,     3,     1,
  2654.        1,     4,     2,     5,     1,     2,     2,     2,     2,     2,
  2655.        3,     5,     6,     2,     1,     4,     7,     4,     2,     6,
  2656.        6,     6,     6,     4,     4,     3,     4,     6,     8,     6,
  2657.        8,     4,     6,     4,     6,     4,     4,     4,     4,     6,
  2658.        8,     2,     2,     4,     2,     7,     7,     3,     4,     4,
  2659.        6,     6,     4,     6,     6,     6,     4,     6,     4,     6,
  2660.        8,    10,    12,     6,     4,     6,     6,     1,     6,     4,
  2661.        8,    10,     4,     1,     3,     4,     6,     6,     8,     6,
  2662.        6,     4,     6,     6,     8,     4,     4,     6,     4,     2,
  2663.        4,     4,     4,     6,     4,     3,     8,     6,     4,     6,
  2664.        6,     8,     4,     8,     6,     8,     6,     8,     4,     4,
  2665.        6,     4,     7,     7,     7,     6,     6,     6,     6,     6,
  2666.        4,     4,     4,     4,     4,     4,    10,     3,     4,     3,
  2667.        2,     2,     2,     4,     6,     4,     4,     6,     6,     6,
  2668.        4,     6,     4,     6,     4,     4,     4,     4,     6,     4,
  2669.        6,     4,     6,     4,     4,     6,     4,     6,     4,     6,
  2670.        4,     4,     6,     4,     6,     0,     3,     3,     0,     1,
  2671.        0,     2,     4,     4,     4,     4,     5,     4,     0,     0,
  2672.        7,    10,     4,     4,     4,     4,     4,     0,     8,     0,
  2673.        1,     0,     2,     0,     1,     0,     3,     2,     3,     2,
  2674.        1,     2,     1,     2,     1,     1,     1,     0,     2,     1,
  2675.        3,     1,     3,     0,     2,     1,     3,     0,     1,     0,
  2676.        2,     0,     2,     3,     5,     1,     3,     3,     3,     5,
  2677.        0,     8,     7,     0,    10,     6,     7,     0,    10,     6,
  2678.        4,     1,     2,     2,     0,     4,    10,     5,     3,     2,
  2679.        3,     0,     0,     5,     0,     1,     0,     2,     2,     2,
  2680.        0,     5,     0,     1,     3,     1,     1,     1,     3,     1,
  2681.        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
  2682.        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
  2683.        1,     0,     1,     1,     0,     2,     0,     1,     0,     0,
  2684.        3,     0,     0,     3,     2,     0,     0,     4,     4,     2,
  2685.        0,     2,     2,     0,     1,     0,     4,     4,     2,     0,
  2686.        1,     1,     0,     1,     0,     1,     2,     1,     3,     3,
  2687.        0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
  2688.        1,     1,     0,     0,     6,     0,     1,     3,     1,     2,
  2689.        0,     2,     3,     1,     2,     0,     6,     3,     2,     0,
  2690.        3,     6,     0,     6,     4,     3,     0,     4,     1,     3,
  2691.        1,     0,     2,     0,     1,     0,     0,     8,     0,     0,
  2692.        6,     0,     1,     1,     1,     1,     1,     2,     1,     1,
  2693.        1,     3,     4,     0,     3,     0,     3,     2,     3,     1,
  2694.        2,     2,     0,     3,     0,     5,     3,     1,     3,     1,
  2695.        3,     1,     1,     0,     1,     0,     4,     0,     1,     3,
  2696.        1,     1,     1,     0,     0,     6,     0,     0,    11,     3,
  2697.        1,     3,     3,     1,     3,     0,     1,     0,     4,     0,
  2698.        6,     0,     0,     6,     0,     0,     7,     1,     3,     3,
  2699.        5,     0,     2,     0,     2,     1,     1,     1,     3,     0,
  2700.        1,     0,     3,     2,     3,     4,     4,     0,     4,     6,