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

MySQL数据库

开发平台:

Visual C++

  1.      383,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  2.       -1,   394,    -1,    -1,   397,    -1,    -1,    -1,   401,   402,
  3.       -1,   404,    -1,    -1,    -1,    -1,   409,    -1,    -1,    -1,
  4.      413,    -1,    -1,   416,   417,   418,   419,    -1,    -1,    -1,
  5.      423,   424,   425,    -1,   427,   428,    -1,    -1,   431,    -1,
  6.      433,    -1,    -1,    -1,    -1,    -1,    -1,   440,    -1,   442,
  7.      443,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  8.       -1,    -1,   455,     4,     5,     6,     7,     8,   461,    -1,
  9.      463,    12,    -1,   466,    -1,    -1,   469,    -1,   471,    -1,
  10.      473,   474,   475,    -1,    25,    -1,    -1,    28,    29,    30,
  11.       31,    -1,    33,    34,    35,    36,    -1,    -1,    -1,    40,
  12.       -1,    -1,    43,    -1,    45,    46,    47,    48,    49,    -1,
  13.       51,    -1,    -1,    54,    -1,    56,    -1,    -1,    59,    -1,
  14.       -1,    62,    63,    64,    65,    66,    67,    -1,    -1,    70,
  15.       71,    72,    73,    -1,    -1,    76,    -1,    78,    79,    80,
  16.       -1,    82,    -1,    84,    85,    -1,    -1,    -1,    -1,    90,
  17.       91,    92,    93,    -1,    95,    96,    97,    -1,    99,    -1,
  18.      101,   102,    -1,    -1,   105,   106,    -1,   108,    -1,   110,
  19.       -1,    -1,   113,    -1,    -1,    -1,    -1,   118,    -1,    -1,
  20.      121,    -1,    -1,   124,   125,   126,    -1,   128,   129,   130,
  21.       -1,    -1,   133,   134,    -1,   136,    -1,   138,   139,   140,
  22.       -1,    -1,    -1,   144,   145,    -1,   147,    -1,   149,    -1,
  23.       -1,    -1,   153,    -1,    -1,   156,   157,   158,    -1,   160,
  24.       -1,   162,    -1,    -1,   165,    -1,    -1,   168,    -1,    -1,
  25.       -1,    -1,    -1,   174,   175,    -1,    -1,    -1,   179,    -1,
  26.      181,    -1,    -1,    -1,   185,   186,   187,   188,   189,   190,
  27.      191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
  28.       -1,   202,   203,   204,   205,   206,   207,   208,   209,    -1,
  29.      211,   212,   213,    -1,   215,    -1,   217,    -1,    -1,   220,
  30.       -1,   222,   223,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  31.      231,   232,   233,    -1,    -1,   236,   237,   238,   239,   240,
  32.      241,   242,   243,    -1,    -1,    -1,    -1,   248,    -1,   250,
  33.       -1,   252,   253,    -1,    -1,   256,   257,   258,   259,    -1,
  34.       -1,   262,   263,   264,   265,   266,    -1,    -1,    -1,   270,
  35.      271,    -1,   273,    -1,    -1,   276,   277,    -1,    -1,    -1,
  36.       -1,   282,    -1,   284,   285,    -1,    -1,    -1,    -1,   290,
  37.       -1,   292,   293,    -1,   295,    -1,    -1,    -1,   299,    -1,
  38.       -1,   302,    -1,   304,    -1,    -1,    -1,    -1,   309,    -1,
  39.      311,   312,   313,   314,    -1,    -1,    -1,   318,    -1,   320,
  40.      321,    -1,    -1,   324,   325,    -1,   327,    -1,    -1,    -1,
  41.       -1,    -1,    -1,    -1,    -1,    -1,   337,   338,   339,    -1,
  42.      341,    -1,   343,   344,   345,   346,    -1,    -1,    -1,    -1,
  43.       -1,    -1,    -1,    -1,    -1,   356,    -1,    -1,    -1,    -1,
  44.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  45.       -1,    -1,    -1,    -1,   375,    -1,    -1,    -1,    -1,    -1,
  46.       -1,   382,   383,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  47.       -1,    -1,    -1,   394,    -1,    -1,   397,    -1,    -1,    -1,
  48.      401,   402,    -1,   404,    -1,    -1,    -1,    -1,   409,    -1,
  49.       -1,    -1,   413,    -1,    -1,   416,   417,   418,   419,    -1,
  50.       -1,    -1,   423,   424,   425,    -1,   427,   428,    -1,    -1,
  51.      431,    -1,   433,    -1,    -1,    -1,    -1,    -1,    -1,   440,
  52.       -1,   442,   443,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  53.       -1,    -1,    -1,    -1,   455,     4,     5,     6,     7,     8,
  54.      461,    -1,   463,    12,    -1,   466,    -1,    -1,   469,    -1,
  55.      471,    -1,   473,   474,   475,    -1,    25,    -1,    -1,    28,
  56.       29,    30,    31,    -1,    33,    34,    35,    36,    -1,    -1,
  57.       -1,    40,    -1,    -1,    43,    -1,    45,    46,    47,    48,
  58.       49,    -1,    51,    -1,    -1,    54,    -1,    56,    -1,    -1,
  59.       59,    -1,    -1,    62,    63,    64,    65,    66,    67,    -1,
  60.       -1,    70,    71,    72,    73,    -1,    -1,    76,    -1,    78,
  61.       79,    80,    -1,    82,    -1,    84,    85,    -1,    -1,    -1,
  62.       -1,    90,    91,    92,    93,    -1,    95,    96,    97,    -1,
  63.       99,    -1,   101,   102,    -1,    -1,   105,   106,    -1,   108,
  64.       -1,   110,    -1,    -1,   113,    -1,    -1,    -1,    -1,   118,
  65.      119,    -1,   121,    -1,    -1,   124,   125,   126,    -1,   128,
  66.      129,   130,    -1,    -1,   133,   134,    -1,   136,    -1,   138,
  67.      139,   140,    -1,    -1,    -1,    -1,   145,    -1,   147,    -1,
  68.      149,    -1,    -1,    -1,   153,    -1,    -1,   156,   157,   158,
  69.       -1,   160,    -1,   162,    -1,    -1,   165,    -1,    -1,   168,
  70.       -1,    -1,    -1,    -1,    -1,   174,   175,    -1,    -1,    -1,
  71.      179,    -1,   181,    -1,    -1,    -1,   185,   186,   187,   188,
  72.      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
  73.      199,   200,    -1,   202,   203,   204,   205,   206,   207,   208,
  74.      209,    -1,   211,   212,   213,    -1,   215,    -1,   217,    -1,
  75.       -1,   220,    -1,   222,   223,    -1,    -1,    -1,    -1,    -1,
  76.       -1,    -1,   231,   232,   233,    -1,    -1,   236,   237,   238,
  77.      239,   240,   241,   242,   243,    -1,    -1,    -1,    -1,   248,
  78.       -1,   250,    -1,   252,   253,    -1,    -1,   256,   257,   258,
  79.      259,    -1,    -1,   262,   263,   264,   265,   266,    -1,    -1,
  80.       -1,   270,   271,    -1,   273,    -1,    -1,   276,   277,    -1,
  81.       -1,    -1,    -1,   282,    -1,   284,   285,    -1,    -1,    -1,
  82.       -1,   290,    -1,   292,   293,    -1,   295,    -1,    -1,    -1,
  83.      299,    -1,    -1,   302,    -1,   304,    -1,    -1,    -1,    -1,
  84.      309,    -1,   311,   312,   313,   314,    -1,    -1,    -1,   318,
  85.       -1,   320,   321,    -1,    -1,   324,   325,    -1,   327,    -1,
  86.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   337,   338,
  87.      339,    -1,   341,    -1,   343,   344,   345,   346,    -1,    -1,
  88.       -1,    -1,    -1,    -1,    -1,    -1,    -1,   356,    -1,    -1,
  89.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  90.       -1,    -1,    -1,    -1,    -1,    -1,   375,    -1,    -1,    -1,
  91.       -1,    -1,    -1,   382,   383,    -1,    -1,    -1,    -1,    -1,
  92.       -1,    -1,    -1,    -1,    -1,   394,    -1,    -1,   397,    -1,
  93.       -1,    -1,   401,   402,    -1,   404,    -1,    -1,    -1,    -1,
  94.      409,    -1,    -1,    -1,   413,    -1,    -1,   416,   417,   418,
  95.      419,    -1,    -1,    -1,   423,   424,   425,    -1,   427,   428,
  96.       -1,    -1,   431,    -1,   433,    -1,    -1,    -1,    -1,    -1,
  97.       -1,   440,    -1,   442,   443,    -1,    -1,    -1,    -1,    -1,
  98.       -1,    -1,    -1,    -1,    -1,    -1,   455,     4,     5,     6,
  99.        7,     8,   461,    -1,   463,    12,    -1,   466,    -1,    -1,
  100.      469,    -1,   471,    -1,   473,   474,   475,    -1,    25,    -1,
  101.       -1,    28,    29,    30,    31,    -1,    33,    34,    35,    36,
  102.       -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    45,    46,
  103.       47,    48,    49,    -1,    51,    -1,    -1,    54,    -1,    56,
  104.       -1,    -1,    59,    -1,    -1,    62,    63,    64,    65,    66,
  105.       67,    -1,    -1,    70,    71,    72,    73,    -1,    -1,    76,
  106.       -1,    78,    79,    80,    -1,    82,    -1,    84,    85,    -1,
  107.       -1,    -1,    -1,    90,    91,    92,    93,    -1,    95,    96,
  108.       97,    -1,    99,    -1,   101,   102,    -1,    -1,   105,   106,
  109.       -1,   108,    -1,   110,    -1,    -1,   113,    -1,    -1,    -1,
  110.       -1,   118,   119,    -1,   121,    -1,    -1,   124,   125,   126,
  111.       -1,   128,   129,   130,    -1,    -1,   133,   134,    -1,   136,
  112.       -1,   138,   139,   140,    -1,    -1,    -1,    -1,   145,    -1,
  113.      147,    -1,   149,    -1,    -1,    -1,   153,    -1,    -1,   156,
  114.      157,   158,    -1,   160,    -1,   162,    -1,    -1,   165,    -1,
  115.       -1,   168,    -1,    -1,    -1,    -1,    -1,   174,   175,    -1,
  116.       -1,    -1,   179,    -1,   181,    -1,    -1,    -1,   185,   186,
  117.      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
  118.      197,   198,   199,   200,    -1,   202,   203,   204,   205,   206,
  119.      207,   208,   209,    -1,   211,   212,   213,    -1,   215,    -1,
  120.      217,    -1,    -1,   220,    -1,   222,   223,    -1,    -1,    -1,
  121.       -1,    -1,    -1,    -1,   231,   232,   233,    -1,    -1,   236,
  122.      237,   238,   239,   240,   241,   242,   243,    -1,    -1,    -1,
  123.       -1,   248,    -1,   250,    -1,   252,   253,    -1,    -1,   256,
  124.      257,   258,   259,    -1,    -1,   262,   263,   264,   265,   266,
  125.       -1,    -1,    -1,   270,   271,    -1,   273,    -1,    -1,   276,
  126.      277,    -1,    -1,    -1,    -1,   282,    -1,   284,   285,    -1,
  127.       -1,    -1,    -1,   290,    -1,   292,   293,    -1,   295,    -1,
  128.       -1,    -1,   299,    -1,    -1,   302,    -1,   304,    -1,    -1,
  129.       -1,    -1,   309,    -1,   311,   312,   313,   314,    -1,    -1,
  130.       -1,   318,    -1,   320,   321,    -1,    -1,   324,   325,    -1,
  131.      327,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  132.      337,   338,   339,    -1,   341,    -1,   343,   344,   345,   346,
  133.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   356,
  134.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  135.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   375,    -1,
  136.       -1,    -1,    -1,    -1,    -1,   382,   383,    -1,    -1,    -1,
  137.       -1,    -1,    -1,    -1,    -1,    -1,    -1,   394,    -1,    -1,
  138.      397,    -1,    -1,    -1,   401,   402,    -1,   404,    -1,    -1,
  139.       -1,    -1,   409,    -1,    -1,    -1,   413,    -1,    -1,   416,
  140.      417,   418,   419,    -1,    -1,    -1,   423,   424,   425,    -1,
  141.      427,   428,    -1,    -1,   431,    -1,   433,    -1,    -1,    -1,
  142.       -1,    -1,    -1,   440,    -1,   442,   443,    -1,    -1,    -1,
  143.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   455,     4,
  144.        5,     6,     7,     8,   461,    -1,   463,    12,    -1,   466,
  145.       -1,    -1,   469,    -1,   471,    -1,   473,   474,   475,    -1,
  146.       25,    -1,    -1,    28,    29,    30,    31,    -1,    33,    34,
  147.       35,    36,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,
  148.       45,    46,    47,    48,    49,    -1,    51,    -1,    -1,    54,
  149.       -1,    56,    -1,    -1,    59,    -1,    -1,    62,    63,    64,
  150.       65,    66,    67,    -1,    -1,    70,    71,    72,    73,    -1,
  151.       -1,    76,    -1,    78,    79,    80,    -1,    82,    -1,    84,
  152.       85,    -1,    -1,    -1,    -1,    90,    91,    92,    93,    -1,
  153.       95,    96,    97,    -1,    99,    -1,   101,   102,    -1,    -1,
  154.      105,   106,    -1,   108,    -1,   110,    -1,    -1,   113,    -1,
  155.       -1,    -1,    -1,   118,    -1,    -1,   121,    -1,    -1,   124,
  156.      125,   126,    -1,   128,   129,   130,    -1,    -1,   133,   134,
  157.       -1,   136,    -1,   138,   139,   140,    -1,    -1,    -1,    -1,
  158.      145,    -1,   147,    -1,   149,    -1,    -1,    -1,   153,    -1,
  159.       -1,   156,   157,   158,    -1,   160,    -1,   162,    -1,    -1,
  160.      165,    -1,    -1,   168,    -1,    -1,    -1,    -1,    -1,   174,
  161.      175,    -1,    -1,    -1,   179,    -1,   181,    -1,    -1,    -1,
  162.      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
  163.      195,   196,   197,   198,   199,   200,    -1,   202,   203,   204,
  164.      205,   206,   207,   208,   209,    -1,   211,   212,   213,    -1,
  165.      215,    -1,   217,    -1,    -1,   220,    -1,   222,   223,    -1,
  166.       -1,    -1,    -1,    -1,    -1,    -1,   231,   232,   233,   234,
  167.       -1,   236,   237,   238,   239,   240,   241,   242,   243,    -1,
  168.       -1,    -1,    -1,   248,    -1,   250,    -1,   252,   253,    -1,
  169.       -1,   256,   257,   258,   259,    -1,    -1,   262,   263,   264,
  170.      265,   266,    -1,    -1,    -1,   270,   271,    -1,   273,    -1,
  171.       -1,   276,   277,    -1,    -1,    -1,    -1,   282,    -1,   284,
  172.      285,    -1,    -1,    -1,    -1,   290,    -1,   292,   293,    -1,
  173.      295,    -1,    -1,    -1,   299,    -1,    -1,   302,    -1,   304,
  174.       -1,    -1,    -1,    -1,   309,    -1,   311,   312,   313,   314,
  175.       -1,    -1,    -1,   318,    -1,   320,   321,    -1,    -1,   324,
  176.      325,    -1,   327,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  177.       -1,    -1,   337,   338,   339,    -1,   341,    -1,   343,   344,
  178.      345,   346,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  179.       -1,   356,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  180.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  181.      375,    -1,    -1,    -1,    -1,    -1,    -1,   382,   383,    -1,
  182.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   394,
  183.       -1,    -1,   397,    -1,    -1,    -1,   401,   402,    -1,   404,
  184.       -1,    -1,    -1,    -1,   409,    -1,    -1,    -1,   413,    -1,
  185.       -1,   416,   417,   418,   419,    -1,    -1,    -1,   423,   424,
  186.      425,    -1,   427,   428,    -1,    -1,   431,    -1,   433,    -1,
  187.       -1,    -1,    -1,    -1,    -1,   440,    -1,   442,   443,    -1,
  188.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  189.      455,     4,     5,     6,     7,     8,   461,    -1,   463,    12,
  190.       -1,   466,    -1,    -1,   469,    -1,   471,    -1,   473,   474,
  191.      475,    -1,    25,    -1,    -1,    28,    29,    30,    31,    -1,
  192.       33,    34,    35,    36,    -1,    -1,    -1,    40,    -1,    -1,
  193.       43,    -1,    45,    46,    47,    48,    49,    -1,    51,    -1,
  194.       -1,    54,    -1,    56,    -1,    -1,    59,    -1,    -1,    62,
  195.       63,    64,    65,    66,    67,    -1,    -1,    70,    71,    72,
  196.       73,    -1,    -1,    76,    -1,    78,    79,    80,    -1,    82,
  197.       -1,    84,    85,    -1,    -1,    -1,    -1,    90,    91,    92,
  198.       93,    -1,    95,    96,    97,    -1,    99,    -1,   101,   102,
  199.       -1,    -1,   105,   106,    -1,   108,    -1,   110,    -1,    -1,
  200.      113,    -1,    -1,    -1,    -1,   118,    -1,    -1,   121,    -1,
  201.       -1,   124,   125,   126,    -1,   128,   129,   130,    -1,    -1,
  202.      133,   134,    -1,   136,    -1,   138,   139,   140,    -1,    -1,
  203.       -1,    -1,   145,    -1,   147,    -1,   149,    -1,    -1,    -1,
  204.      153,    -1,    -1,   156,   157,   158,    -1,   160,    -1,   162,
  205.       -1,    -1,   165,    -1,    -1,   168,    -1,    -1,    -1,    -1,
  206.       -1,   174,   175,    -1,    -1,    -1,   179,    -1,   181,    -1,
  207.       -1,    -1,   185,   186,   187,   188,   189,   190,   191,   192,
  208.      193,   194,   195,   196,   197,   198,   199,   200,    -1,   202,
  209.      203,   204,   205,   206,   207,   208,   209,    -1,   211,   212,
  210.      213,    -1,   215,    -1,   217,    -1,    -1,   220,    -1,   222,
  211.      223,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   231,   232,
  212.      233,    -1,    -1,   236,   237,   238,   239,   240,   241,   242,
  213.      243,    -1,    -1,    -1,    -1,   248,    -1,   250,    -1,   252,
  214.      253,    -1,    -1,   256,   257,   258,   259,    -1,    -1,   262,
  215.      263,   264,   265,   266,    -1,    -1,    -1,   270,   271,    -1,
  216.      273,    -1,    -1,   276,   277,    -1,   279,    -1,    -1,   282,
  217.       -1,   284,   285,    -1,    -1,    -1,    -1,   290,    -1,   292,
  218.      293,    -1,   295,    -1,    -1,    -1,   299,    -1,    -1,   302,
  219.       -1,   304,    -1,    -1,    -1,    -1,   309,    -1,   311,   312,
  220.      313,   314,    -1,    -1,    -1,   318,    -1,   320,   321,    -1,
  221.       -1,   324,   325,    -1,   327,    -1,    -1,    -1,    -1,    -1,
  222.       -1,    -1,    -1,    -1,   337,   338,   339,    -1,   341,    -1,
  223.      343,   344,   345,   346,    -1,    -1,    -1,    -1,    -1,    -1,
  224.       -1,    -1,    -1,   356,    -1,    -1,    -1,    -1,    -1,    -1,
  225.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  226.       -1,    -1,   375,    -1,    -1,    -1,    -1,    -1,    -1,   382,
  227.      383,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  228.       -1,   394,    -1,    -1,   397,    -1,    -1,    -1,   401,   402,
  229.       -1,   404,    -1,    -1,    -1,    -1,   409,    -1,    -1,    -1,
  230.      413,    -1,    -1,   416,   417,   418,   419,    -1,    -1,    -1,
  231.      423,   424,   425,    -1,   427,   428,    -1,    -1,   431,    -1,
  232.      433,    -1,    -1,    -1,    -1,    -1,    -1,   440,    -1,   442,
  233.      443,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  234.       -1,    -1,   455,     4,     5,     6,     7,     8,   461,    -1,
  235.      463,    12,    -1,   466,    -1,    -1,   469,    -1,   471,    -1,
  236.      473,   474,   475,    -1,    25,    -1,    -1,    28,    29,    30,
  237.       31,    -1,    33,    34,    35,    36,    -1,    -1,    -1,    40,
  238.       -1,    -1,    43,    -1,    45,    46,    47,    48,    49,    -1,
  239.       51,    -1,    -1,    54,    -1,    56,    -1,    -1,    59,    -1,
  240.       -1,    62,    63,    64,    65,    66,    67,    -1,    -1,    70,
  241.       71,    72,    73,    -1,    -1,    76,    -1,    78,    79,    80,
  242.       -1,    82,    -1,    84,    85,    -1,    -1,    -1,    -1,    90,
  243.       91,    92,    93,    -1,    95,    96,    97,    -1,    99,    -1,
  244.      101,   102,    -1,    -1,   105,   106,    -1,   108,    -1,   110,
  245.       -1,    -1,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
  246.      121,    -1,    -1,   124,   125,   126,    -1,   128,   129,   130,
  247.       -1,    -1,   133,   134,    -1,   136,    -1,   138,   139,   140,
  248.       -1,    -1,    -1,    -1,   145,    -1,   147,    -1,   149,    -1,
  249.       -1,    -1,   153,    -1,    -1,   156,   157,   158,    -1,   160,
  250.       -1,   162,    -1,    -1,   165,    -1,    -1,   168,    -1,    -1,
  251.       -1,    -1,    -1,   174,   175,    -1,    -1,    -1,   179,    -1,
  252.      181,    -1,    -1,    -1,   185,   186,   187,   188,   189,   190,
  253.      191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
  254.       -1,   202,   203,   204,   205,   206,   207,   208,   209,    -1,
  255.      211,   212,   213,    -1,   215,    -1,   217,    -1,    -1,   220,
  256.       -1,   222,   223,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  257.      231,   232,   233,    -1,    -1,   236,   237,   238,   239,   240,
  258.      241,   242,   243,    -1,    -1,    -1,    -1,   248,    -1,   250,
  259.       -1,   252,   253,    -1,    -1,   256,   257,   258,   259,    -1,
  260.       -1,   262,   263,   264,   265,   266,    -1,    -1,    -1,   270,
  261.      271,    -1,   273,    -1,    -1,   276,   277,    -1,    -1,    -1,
  262.       -1,   282,    -1,   284,   285,    -1,    -1,    -1,    -1,   290,
  263.       -1,   292,   293,    -1,   295,    -1,    -1,    -1,   299,    -1,
  264.       -1,   302,    -1,   304,    -1,    -1,    -1,    -1,   309,    -1,
  265.      311,   312,   313,   314,    -1,    -1,    -1,   318,    -1,   320,
  266.      321,    -1,    -1,   324,   325,    -1,   327,    -1,    -1,    -1,
  267.       -1,    -1,    -1,    -1,    -1,    -1,   337,   338,   339,    -1,
  268.      341,    -1,   343,   344,   345,   346,    -1,    -1,    -1,    -1,
  269.       -1,    -1,    -1,    -1,    -1,   356,    -1,    -1,    -1,    -1,
  270.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  271.       -1,    -1,    -1,    -1,   375,    -1,    -1,    -1,    -1,    -1,
  272.       -1,   382,   383,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  273.       -1,    -1,    -1,   394,    -1,    -1,   397,    -1,    -1,    -1,
  274.      401,   402,    -1,   404,    -1,    -1,    -1,    -1,   409,    -1,
  275.       -1,    -1,   413,    -1,    -1,   416,   417,   418,   419,    -1,
  276.       -1,    -1,   423,   424,   425,    -1,   427,   428,    -1,    -1,
  277.      431,    -1,   433,    -1,    -1,    -1,    -1,    -1,    -1,   440,
  278.       -1,   442,   443,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  279.       -1,    -1,    -1,    -1,   455,     4,     5,     6,     7,     8,
  280.      461,    -1,   463,    12,    -1,   466,    -1,    -1,   469,    -1,
  281.      471,    -1,   473,   474,   475,    -1,    25,    -1,    -1,    28,
  282.       29,    30,    31,    -1,    33,    34,    35,    36,    -1,    -1,
  283.       -1,    40,    -1,    -1,    43,    -1,    45,    46,    47,    48,
  284.       49,    -1,    51,    -1,    -1,    54,    -1,    56,    -1,    -1,
  285.       59,    -1,    -1,    62,    63,    64,    65,    66,    67,    -1,
  286.       -1,    70,    71,    72,    73,    -1,    -1,    76,    -1,    78,
  287.       79,    80,    -1,    82,    -1,    84,    85,    -1,    -1,    -1,
  288.       -1,    90,    91,    92,    93,    -1,    95,    96,    97,    -1,
  289.       99,    -1,   101,   102,    -1,    -1,   105,   106,    -1,   108,
  290.       -1,   110,    -1,    -1,   113,    -1,    -1,    -1,    -1,   118,
  291.       -1,    -1,   121,    -1,    -1,   124,   125,   126,    -1,   128,
  292.      129,   130,    -1,    -1,   133,   134,    -1,   136,    -1,   138,
  293.      139,   140,    -1,    -1,    -1,    -1,   145,    -1,   147,    -1,
  294.      149,    -1,    -1,    -1,   153,    -1,    -1,   156,   157,   158,
  295.       -1,   160,    -1,   162,    -1,    -1,   165,    -1,    -1,   168,
  296.       -1,    -1,    -1,    -1,    -1,   174,   175,    -1,    -1,    -1,
  297.      179,    -1,   181,    -1,    -1,    -1,   185,   186,   187,   188,
  298.      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
  299.      199,   200,    -1,   202,   203,   204,   205,   206,   207,   208,
  300.      209,    -1,   211,   212,   213,    -1,   215,    -1,   217,    -1,
  301.       -1,   220,    -1,   222,   223,    -1,    -1,    -1,    -1,    -1,
  302.       -1,    -1,   231,   232,   233,    -1,    -1,   236,   237,   238,
  303.      239,   240,   241,   242,   243,    -1,    -1,    -1,    -1,   248,
  304.       -1,   250,    -1,   252,   253,    -1,    -1,   256,   257,   258,
  305.      259,    -1,    -1,   262,   263,   264,   265,   266,    -1,    -1,
  306.       -1,   270,   271,    -1,   273,    -1,    -1,   276,   277,    -1,
  307.       -1,    -1,    -1,   282,    -1,   284,   285,    -1,    -1,    -1,
  308.       -1,   290,    -1,   292,   293,    -1,   295,    -1,    -1,    -1,
  309.      299,    -1,    -1,   302,    -1,   304,    -1,    -1,    -1,    -1,
  310.      309,    -1,   311,   312,   313,   314,    -1,    -1,    -1,   318,
  311.       -1,   320,   321,    -1,    -1,   324,   325,    -1,   327,    -1,
  312.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   337,   338,
  313.      339,    -1,   341,    -1,   343,   344,   345,   346,    -1,    -1,
  314.       -1,    -1,    -1,    -1,    -1,    -1,    -1,   356,    -1,    -1,
  315.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  316.       -1,    -1,    -1,    -1,    -1,    -1,   375,    -1,    -1,    -1,
  317.       -1,    -1,    -1,   382,   383,    -1,    -1,    -1,    -1,    -1,
  318.       -1,    -1,    -1,    -1,    -1,   394,    -1,    -1,   397,    -1,
  319.       -1,    -1,   401,   402,    -1,   404,    -1,    -1,    -1,    -1,
  320.      409,    -1,    -1,    -1,   413,    -1,    -1,   416,   417,   418,
  321.      419,    -1,    -1,    -1,   423,   424,   425,    -1,   427,   428,
  322.       -1,    -1,   431,    -1,   433,    -1,    -1,    -1,    -1,    -1,
  323.       -1,   440,    -1,   442,   443,    -1,    -1,    -1,    -1,    -1,
  324.       -1,    -1,    -1,    -1,    -1,    -1,   455,     4,     5,     6,
  325.        7,     8,   461,    -1,   463,    12,    -1,   466,    -1,    -1,
  326.      469,    -1,   471,    -1,   473,   474,   475,    -1,    25,    -1,
  327.       -1,    28,    29,    30,    31,    -1,    33,    34,    35,    36,
  328.       -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    45,    46,
  329.       47,    48,    49,    -1,    51,    -1,    -1,    54,    -1,    56,
  330.       -1,    -1,    59,    -1,    -1,    62,    63,    64,    65,    66,
  331.       67,    -1,    -1,    70,    71,    72,    73,    -1,    -1,    76,
  332.       -1,    78,    79,    80,    -1,    82,    -1,    84,    85,    -1,
  333.       -1,    -1,    -1,    90,    91,    92,    93,    -1,    95,    96,
  334.       97,    -1,    99,    -1,   101,   102,    -1,    -1,   105,   106,
  335.       -1,   108,    -1,   110,    -1,    -1,   113,    -1,    -1,    -1,
  336.       -1,   118,    -1,    -1,   121,    -1,    -1,   124,   125,   126,
  337.       -1,   128,   129,   130,    -1,    -1,   133,   134,    -1,   136,
  338.       -1,   138,   139,   140,    -1,    -1,    -1,    -1,   145,    -1,
  339.      147,    -1,   149,    -1,    -1,    -1,   153,    -1,    -1,   156,
  340.      157,   158,    -1,   160,    -1,   162,    -1,    -1,   165,    -1,
  341.       -1,   168,    -1,    -1,    -1,    -1,    -1,   174,   175,    -1,
  342.       -1,    -1,   179,    -1,   181,    -1,    -1,    -1,   185,   186,
  343.      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
  344.      197,   198,   199,   200,    -1,   202,   203,   204,   205,   206,
  345.      207,   208,   209,    -1,   211,   212,   213,    -1,   215,    -1,
  346.      217,    -1,    -1,   220,    -1,   222,   223,    -1,    -1,    -1,
  347.       -1,    -1,    -1,    -1,   231,   232,   233,    -1,    -1,   236,
  348.      237,   238,   239,   240,   241,   242,   243,    -1,    -1,    -1,
  349.       -1,   248,    -1,   250,    -1,   252,   253,    -1,    -1,   256,
  350.      257,   258,   259,    -1,    -1,   262,   263,   264,   265,   266,
  351.       -1,    -1,    -1,   270,   271,    -1,   273,    -1,    -1,   276,
  352.      277,    -1,    -1,    -1,    -1,   282,    -1,   284,   285,    -1,
  353.       -1,    -1,    -1,   290,    -1,   292,   293,    -1,   295,    -1,
  354.       -1,    -1,   299,    -1,    -1,   302,    -1,   304,    -1,    -1,
  355.       -1,    -1,   309,    -1,   311,   312,   313,   314,    -1,    -1,
  356.       -1,   318,    -1,   320,   321,    -1,    -1,   324,   325,    -1,
  357.      327,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  358.      337,   338,   339,    -1,   341,    -1,   343,   344,   345,   346,
  359.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   356,
  360.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  361.       31,    -1,    -1,    -1,    -1,    -1,    37,    38,   375,    -1,
  362.       -1,    -1,    -1,    -1,    -1,   382,   383,    -1,    -1,    -1,
  363.       -1,    -1,    -1,    -1,    -1,    56,    -1,   394,    -1,    -1,
  364.      397,    -1,    -1,    -1,   401,   402,    -1,   404,    -1,    70,
  365.       -1,    -1,   409,    -1,    -1,    -1,   413,    -1,    -1,   416,
  366.      417,   418,   419,    -1,    -1,    -1,   423,   424,   425,    -1,
  367.      427,   428,    93,    94,   431,    -1,   433,    -1,    -1,    -1,
  368.       -1,    -1,    -1,   440,   105,   442,   443,    -1,    -1,   110,
  369.       -1,   112,    -1,    -1,    -1,    -1,   117,    -1,   455,    -1,
  370.       -1,    -1,    -1,    -1,   461,    -1,   463,    -1,    -1,   466,
  371.       -1,    -1,   469,    -1,   471,    -1,   473,   474,   475,    -1,
  372.       -1,    -1,    -1,    -1,   145,    -1,   147,    -1,   149,    -1,
  373.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  374.      161,   162,    -1,    -1,   165,    -1,    -1,    -1,    -1,   170,
  375.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   179,    -1,
  376.      181,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  377.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  378.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  379.       -1,   212,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  380.       -1,    -1,   223,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  381.       -1,    -1,    -1,    -1,   235,    -1,    -1,    -1,    -1,    -1,
  382.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  383.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  384.       -1,    -1,    -1,   264,    -1,    -1,    -1,    -1,    -1,   270,
  385.      271,    -1,    -1,   274,   275,    -1,    -1,    -1,    -1,    -1,
  386.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  387.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  388.       -1,    -1,    -1,   304,    -1,    -1,    -1,    -1,    -1,    -1,
  389.       -1,   312,   313,    -1,    -1,    -1,   317,    -1,    -1,    -1,
  390.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  391.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  392.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  393.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  394.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  395.       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
  396.       -1,   382,   383
  397. };
  398. /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
  399.    symbol of state STATE-NUM.  */
  400. static const unsigned short yystos[] =
  401. {
  402.        0,     3,     5,    26,    27,    30,    32,    35,    38,    41,
  403.       43,    44,    46,    48,    49,    50,    52,    53,    55,    60,
  404.       61,    62,    64,    65,    67,    68,    69,    70,    73,    76,
  405.       80,    81,    83,    92,   102,   106,   107,   122,   123,   148,
  406.      249,   253,   255,   260,   300,   337,   338,   437,   487,   496,
  407.      497,   498,   499,   500,   502,   507,   508,   513,   611,   626,
  408.      629,   637,   639,   641,   644,   649,   651,   656,   659,   663,
  409.      667,   675,   676,   785,   787,   794,   797,   823,   831,   844,
  410.      846,   860,   863,   866,   872,   876,   880,   881,   882,   914,
  411.      929,   935,   936,   943,   946,   969,   972,   973,   974,     4,
  412.        5,     6,     7,     8,    12,    25,    28,    29,    30,    31,
  413.       33,    34,    35,    36,    40,    43,    45,    46,    47,    48,
  414.       49,    51,    54,    56,    59,    62,    63,    64,    65,    66,
  415.       67,    70,    71,    72,    73,    76,    78,    79,    80,    82,
  416.       84,    85,    90,    91,    92,    93,    95,    96,    97,    99,
  417.      101,   102,   105,   106,   108,   110,   113,   118,   121,   124,
  418.      125,   126,   128,   129,   130,   133,   134,   136,   138,   139,
  419.      140,   145,   147,   149,   153,   156,   157,   158,   160,   162,
  420.      165,   168,   174,   175,   179,   181,   185,   186,   187,   188,
  421.      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
  422.      199,   200,   202,   203,   204,   205,   206,   207,   208,   209,
  423.      211,   212,   213,   215,   217,   220,   222,   223,   231,   232,
  424.      233,   236,   237,   238,   239,   240,   241,   242,   243,   248,
  425.      250,   252,   253,   256,   257,   258,   259,   262,   263,   264,
  426.      265,   266,   270,   271,   273,   276,   277,   282,   284,   285,
  427.      290,   292,   293,   295,   299,   302,   304,   309,   311,   312,
  428.      313,   314,   318,   320,   321,   324,   325,   327,   337,   338,
  429.      339,   341,   343,   344,   345,   346,   356,   375,   382,   383,
  430.      394,   397,   401,   402,   404,   409,   413,   416,   417,   418,
  431.      419,   423,   424,   425,   427,   428,   431,   433,   440,   442,
  432.      443,   455,   461,   463,   466,   469,   471,   473,   474,   475,
  433.      494,   905,   906,   907,   910,   913,   159,   368,   622,   179,
  434.      308,   658,   970,    56,    85,   146,   267,   277,   297,   368,
  435.      531,   532,   533,   546,   603,   832,   786,   161,   277,   292,
  436.      368,   455,   793,   910,   658,   176,   279,   908,   910,   911,
  437.      795,    19,    29,    37,    50,    57,    58,    74,    75,    77,
  438.       78,    80,    94,   104,   105,   110,   115,   116,   119,   135,
  439.      137,   141,   150,   154,   173,   180,   182,   201,   214,   216,
  440.      218,   219,   245,   258,   279,   283,   286,   287,   288,   289,
  441.      294,   303,   314,   317,   319,   321,   345,   346,   350,   357,
  442.      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
  443.      369,   370,   375,   376,   377,   378,   380,   381,   384,   385,
  444.      386,   387,   388,   390,   391,   392,   393,   394,   395,   396,
  445.      397,   401,   403,   405,   406,   407,   408,   409,   410,   411,
  446.      412,   413,   416,   419,   420,   421,   422,   423,   424,   425,
  447.      426,   427,   428,   429,   430,   431,   432,   433,   434,   436,
  448.      437,   438,   439,   440,   443,   444,   445,   446,   447,   448,
  449.      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
  450.      459,   463,   464,   465,   479,   480,   485,   487,   490,   491,
  451.      493,   494,   696,   699,   702,   703,   704,   709,   894,   896,
  452.      898,   899,   903,   909,   910,   983,   989,   118,   161,   275,
  453.      274,   275,   931,   658,   877,   658,   873,   280,   910,   678,
  454.      680,   681,   847,    73,    76,    70,   282,    70,   275,   845,
  455.      931,   824,   931,   161,   931,   931,   947,   931,   931,   944,
  456.      224,   916,   910,   910,   798,    68,   487,   677,     0,     3,
  457.      337,   136,   864,   905,   910,   910,   223,     4,   244,   494,
  458.      614,   910,   275,   931,   461,   971,   280,   403,   534,   275,
  459.      532,   292,   161,   159,   184,   339,   842,   843,   719,   720,
  460.      910,   907,   403,   792,   789,   931,   503,   867,   120,   155,
  461.      184,   800,   487,   487,   487,   487,   487,   487,   487,   487,
  462.      487,   487,   487,   696,   487,   487,   487,   487,   487,   695,
  463.      487,   487,   985,   989,   487,   487,   487,   487,   722,   723,
  464.      724,   696,   487,   487,   487,   487,   487,   154,   279,   487,
  465.      487,   487,   487,   294,   487,   894,   487,   894,   487,   894,
  466.      487,   487,   487,   487,   696,   726,   487,   487,   487,   695,
  467.      487,   695,   487,   487,   487,   487,   487,   487,   487,   487,
  468.      487,   487,   487,   487,   487,   487,   487,   487,   487,   487,
  469.      487,   487,   487,   487,   487,   487,   696,   487,   487,   487,
  470.      487,   487,   487,   487,   487,   487,   487,   487,   487,   487,
  471.      487,   487,   487,   487,   695,   487,   487,   487,   487,   487,
  472.      487,   487,   487,   487,   487,   487,   487,   487,   487,   487,
  473.      487,   487,   487,   487,   487,   487,   487,   487,   487,   487,
  474.      695,   695,   695,   487,   487,   487,   487,   696,   696,   696,
  475.       68,   696,   696,   910,   493,   911,   910,     9,    10,    11,
  476.       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
  477.       87,   167,   177,   216,   226,   227,   247,   310,   358,   477,
  478.      478,   479,   480,   481,   482,   483,   484,   697,   371,   372,
  479.      373,   374,   375,   398,   399,   400,   401,   413,   414,   415,
  480.      416,   419,   440,   441,   462,   463,   749,   109,   909,   494,
  481.      678,   984,   113,   144,   184,   885,   166,   905,   930,   931,
  482.       56,    94,   852,   878,   931,    56,    70,   238,   874,   875,
  483.       67,   679,    86,   127,   155,   272,   468,   469,   470,   471,
  484.      472,   473,   685,   686,   687,    31,    37,    38,    56,    70,
  485.       93,   105,   110,   112,   117,   145,   147,   149,   161,   162,
  486.      165,   170,   179,   181,   212,   223,   235,   264,   270,   271,
  487.      274,   275,   312,   313,   317,   382,   579,   602,   848,   852,
  488.      853,   856,   921,   631,   632,   631,   631,   306,   630,   631,
  489.      791,   905,   184,   830,   640,   664,   665,   905,   642,   652,
  490.       26,    38,    41,    44,    46,    50,    55,    63,    68,    69,
  491.       79,    83,    86,   138,   148,   161,   236,   246,   248,   266,
  492.      298,   948,   950,   951,   660,   638,    86,   945,   948,   915,
  493.      144,   120,   801,   830,   680,   677,   488,   910,   862,   861,
  494.       10,    88,   751,   752,   937,   910,   613,   905,   650,   509,
  495.      216,   910,   534,   907,   910,   144,   833,   839,   840,   910,
  496.      842,   696,   721,   221,   135,   910,   116,   911,   912,   960,
  497.      961,   792,   301,   504,    56,    70,   124,   156,   181,   235,
  498.      238,   252,   270,   274,   868,   869,   931,   622,   696,    86,
  499.      716,   753,   127,   716,   753,   696,   716,   716,   716,   716,
  500.      716,   696,   696,   696,   696,   696,   696,   488,   903,   678,
  501.      986,   696,   696,   696,   723,   356,   725,   903,   696,   488,
  502.      696,   696,   696,   903,   696,   719,   719,   696,   696,   696,
  503.      696,   716,   716,   716,   460,   719,   696,   696,   696,   488,
  504.      696,   696,   696,   696,   696,   696,   696,   696,   696,   696,
  505.      749,   696,   696,   696,   696,   696,   696,   719,   127,   713,
  506.      894,   320,   321,   345,   346,   750,   696,   696,   488,   696,
  507.      696,   696,   719,   696,   696,   696,   696,   696,   696,   696,
  508.      696,   696,   719,   719,   719,   696,   696,   696,   696,   696,
  509.      696,   719,   700,   703,   488,   696,   696,   696,   696,   696,
  510.      696,   696,   696,    98,   172,   281,   696,   707,   708,   707,
  511.      707,   706,   719,   706,   706,   894,   488,   696,   488,   696,
  512.      696,   696,   141,   182,   219,   245,   350,   772,   488,   489,
  513.      696,   147,   179,   264,   922,    22,   494,   696,   696,   177,
  514.      216,   218,   696,   696,   696,   696,   487,   987,   989,   703,
  515.      167,   177,   247,   358,   696,   696,   696,   696,   701,   703,
  516.      696,   696,   696,   702,   696,   702,   696,   696,   696,   696,
  517.       28,    86,   696,   698,   480,   911,   910,   488,   990,    56,
  518.      179,   884,   102,   144,   905,   932,   933,   657,   181,   645,
  519.      102,   489,   910,   296,   975,   976,   481,   689,   690,   691,
  520.      687,    45,   487,   275,   368,   270,   156,   270,   181,   177,
  521.      855,   285,   855,   389,   270,    56,   274,   855,   144,   167,
  522.      854,   857,   270,   285,   329,   767,   769,   767,   260,   541,
  523.      911,   855,   857,   181,   383,   111,   237,   304,   628,    51,
  524.       72,   633,   634,   627,    36,   622,   790,   791,   167,   489,
  525.      671,   672,   790,   790,   277,   953,   274,    33,    70,   952,
  526.      117,   954,   235,   949,   224,   955,   221,   489,   661,   662,
  527.      905,   790,   949,   221,   147,   179,   222,   264,   917,   918,
  528.      919,   920,   493,   501,   908,   166,   791,   802,   803,   488,
  529.      976,   978,   979,   980,   675,   154,   865,   895,   909,   910,
  530.      910,     7,   139,   910,   938,   939,   119,   528,   529,   530,
  531.      539,   540,   587,   612,   790,   185,   186,   187,   188,   189,
  532.      190,   191,   193,   194,   195,   196,   197,   198,   199,   200,
  533.      510,   511,   512,   135,   516,   905,   517,   284,   301,   604,
  534.      839,   905,   910,   489,   835,   494,   841,   489,   905,   695,
  535.      493,   402,   489,   790,   493,   505,   506,   102,   306,   489,
  536.      870,   802,   489,   488,   717,   710,   488,   481,   489,   488,
  537.      488,   488,   488,   488,   489,   489,    88,   488,   488,   301,
  538.      489,   488,   990,   489,   489,   488,   489,   488,   487,   489,
  539.      489,   488,   489,   489,   488,   488,   301,   488,   488,   488,
  540.      488,   489,   488,   488,   489,   488,   488,   488,   728,   729,
  541.      488,   489,   489,   488,   489,   489,   488,   489,   488,   489,
  542.      488,   489,   489,   489,   488,   489,   489,   144,   489,   489,
  543.      488,   489,   488,   489,   488,   489,   488,   489,   488,   712,
  544.      489,   489,   488,   489,   488,   489,   488,   489,   488,   489,
  545.      489,   489,   488,   488,   488,   488,   489,   488,   489,   488,
  546.      489,   488,   488,   488,   488,   488,   488,   488,   489,   489,
  547.      488,   489,   488,     9,    11,    12,    18,    19,    20,    21,
  548.       87,   167,   177,   216,   226,   227,   247,   310,   358,   477,
  549.      478,   479,   480,   481,   482,   483,   484,   697,   488,   489,
  550.      489,   488,   489,   488,   489,   144,   489,   489,   144,   696,
  551.      144,   696,   144,   696,   144,   488,   488,   706,   488,   488,
  552.      488,   488,   488,   489,   488,   488,   489,   488,   488,   489,
  553.      489,   719,   492,   494,   494,   494,   911,   696,   910,   696,
  554.      218,   719,   678,   988,   134,   758,   487,   987,   703,   696,
  555.      701,     9,    11,    12,    18,    19,    20,    21,    87,   167,
  556.      177,   216,   226,   227,   247,   310,   358,   477,   478,   479,
  557.      480,   481,   482,   483,   484,   697,   749,   749,   987,   696,
  558.      494,   163,   668,    56,   752,   489,   790,   280,   476,   879,
  559.      790,   875,    86,   127,   982,   489,   682,   693,   696,   901,
  560.      910,   167,   858,   481,   905,   534,   908,   912,   389,   854,
  561.      855,   910,   854,   770,   772,   849,   905,   857,   855,    82,
  562.      635,   489,   635,    71,   487,   491,   731,   736,   737,   280,
  563.      489,   119,   666,   910,   665,   161,   171,   600,   601,   673,
  564.      136,   339,   643,   136,   206,   318,   325,   339,   653,   654,
  565.      655,   274,   487,   962,   962,   962,   962,   481,   905,   910,
  566.      959,   951,   489,   280,   144,   489,   959,   489,   119,   282,
  567.      910,   923,   925,   208,   428,   493,   579,   924,   911,   803,
  568.      799,   228,   763,   769,   981,     6,     7,     8,    10,    13,
  569.       14,    15,    16,   139,   940,   942,   305,   754,   530,   109,
  570.      579,    24,    26,    32,    34,    44,    90,    91,   106,   115,
  571.      118,   121,   125,   126,   130,   160,   161,   202,   207,   232,
  572.      241,   242,   243,   249,   257,   284,   296,   382,   404,   418,
  573.      428,   536,   538,   539,   540,   615,   616,   617,   763,   653,
  574.       10,    10,    10,    10,    10,    10,    10,    10,    10,    10,
  575.       10,    10,    10,    10,    10,   489,   528,   514,   290,    99,
  576.      153,   259,   605,   605,   221,   837,   834,   494,   840,   144,
  577.      481,   910,   752,   696,   788,   911,   100,   961,   103,   254,
  578.      623,   911,   489,   244,   869,   790,   871,   796,   696,   696,
  579.      719,   488,   696,   405,   696,   696,    94,   213,   317,   320,
  580.      321,   341,   346,   351,   718,    94,   580,   911,   718,   719,
  581.      719,   696,   696,   903,   719,   696,   696,   580,   696,   696,
  582.      379,   727,   696,   730,   719,   696,   702,   702,   909,   696,
  583.      696,   719,   909,   696,   696,   696,   719,   219,   696,   696,
  584.      696,   696,   719,   219,   696,   696,   696,   696,   696,   719,
  585.      696,   696,   696,   696,   696,   696,   696,   696,   696,   177,
  586.      216,   218,   696,   696,   696,   696,   696,   703,   177,   247,
  587.      358,   696,   696,   696,   696,   701,   696,   696,   696,   702,
  588.      696,   702,   696,   696,   696,   696,   696,   698,   696,   696,
  589.      696,   405,   696,   696,   696,   696,   696,   144,   696,   144,
  590.      696,   144,   696,   219,   696,   696,   696,   488,   494,   609,
  591.      488,   990,   703,   719,   758,    87,   696,   696,   177,   216,
  592.      218,   696,   696,   696,   696,   487,   987,   703,   167,   177,
  593.      247,   358,   696,   696,   696,   696,   701,   696,   696,   696,
  594.      702,   696,   702,   696,   696,   696,   696,   696,   698,   910,
  595.      908,   669,   670,   905,   184,   244,   307,   934,   933,   653,
  596.      908,   696,   136,   299,   339,   646,   647,   648,   977,   690,
  597.      144,   166,   683,   684,   762,   763,   783,   692,   494,   908,
  598.      144,   859,   488,   910,    70,   855,   855,   220,   489,   181,
  599.      270,   851,   854,   905,   512,   636,   634,    68,   487,   731,
  600.      738,   910,    39,   164,   169,   210,   260,   272,   407,   438,
  601.      489,   735,   905,   908,   791,   487,   654,   910,   963,   964,
  602.      494,   494,   280,   662,   905,   908,   148,   144,   918,   494,
  603.      168,   494,    10,    22,   814,   119,   580,   581,   389,   814,
  604.      493,   911,    94,   119,   582,   583,   911,    68,   260,   302,
  605.      303,   487,   524,   804,   808,   100,   767,   941,   755,   768,
  606.      769,   814,   815,   815,   112,   114,   146,   267,   551,   554,
  607.      555,   598,   600,   621,   621,   621,   815,   143,   234,   600,
  608.      621,   815,   815,   815,   280,   133,   815,   170,   276,   170,
  609.      276,   133,   815,   815,   815,   815,   815,   815,    10,    88,
  610.      280,   625,   815,   815,   815,   815,   815,   621,   815,   536,
  611.      489,   487,   494,   550,   556,   904,   910,   908,   908,   908,
  612.      141,   182,   219,   245,   350,   773,   908,   772,   772,   772,
  613.      908,   908,   908,   908,   908,   908,   772,   511,   177,   487,
  614.      518,   535,   537,   538,   328,   340,   343,   547,   905,   301,
  615.      754,   910,   731,   494,   841,   279,   428,   506,    55,   804,
  616.      488,   711,   489,   696,   488,   488,   487,   573,   573,   573,
  617.      328,   328,   488,   488,   488,   488,   488,   488,   167,   306,
  618.      705,   488,   488,   489,   488,   488,   488,   696,   466,   467,
  619.      460,   488,   489,   749,   749,   488,   488,   488,   488,   488,
  620.      488,   489,   488,   488,   488,   488,   488,   488,   488,   715,
  621.      763,   489,   488,   489,   488,   488,   488,   489,   488,   488,
  622.      489,   488,   488,   488,   488,   488,   488,   696,   218,   488,
  623.      758,   703,   696,   701,    87,   749,   749,   987,   489,   488,
  624.      488,   696,   488,   389,   488,   488,   489,   489,   488,   696,
  625.      488,   696,   488,   696,   488,   489,   488,   488,   488,   910,
  626.      488,   696,   696,   218,   719,   758,   487,   987,   703,   696,
  627.      701,    87,   749,   749,   987,   883,   489,   671,   307,   179,
  628.      647,   676,    42,   731,   230,   231,   779,   780,    55,   389,
  629.      688,   783,   768,   684,    88,   694,   908,   910,   481,   910,
  630.      773,   850,   312,   313,   306,   772,   772,   854,   489,   739,
  631.      740,   738,   488,   978,   736,   169,   169,   169,   407,   438,
  632.      826,   827,   903,   731,   229,   742,   742,   731,   731,   752,
  633.      234,   747,   910,   488,   489,   481,   481,   960,   224,   960,
  634.      910,   175,   910,    86,    94,   119,   221,   696,   928,   109,
  635.      585,   912,   279,   427,   428,   927,   922,   814,   525,   805,
  636.      487,   811,   816,   811,   488,   524,   807,   900,   901,   903,
  637.      809,   764,   487,   696,   119,   584,   586,   911,   581,   608,
  638.      904,   601,   601,   107,   143,   234,   297,   553,   599,   552,
  639.      553,   608,   904,   904,   908,   171,   171,   904,   904,   773,
  640.      772,   772,   579,   815,   772,   815,   773,   773,   119,   772,
  641.      239,   240,   543,   772,   772,   772,   905,   119,   129,   140,
  642.      311,   542,   541,   487,   541,     6,   139,   217,   544,   904,
  643.      908,   617,   548,   549,   550,   551,   910,    25,   139,   624,
  644.      246,   552,   590,   557,   494,   905,   177,   519,   524,   548,
  645.      159,   437,   521,   886,   489,   537,   291,   515,   731,   762,
  646.      836,   752,   279,   221,   821,   488,   696,   749,   219,   101,
  647.      295,   314,   579,   588,    97,   238,   488,   696,   696,   696,
  648.      696,   488,   488,   696,   261,   714,   219,   696,   696,   696,
  649.      758,    87,   696,   696,   749,   696,   696,   696,   488,   488,
  650.      488,   219,   488,   719,   758,    87,   696,   886,   670,   159,
  651.      674,   754,   754,   908,   908,   493,   781,   782,   167,    83,
  652.      908,   910,   494,   767,   187,   855,   512,   685,   488,   488,
  653.      407,   731,   742,   742,   489,   825,   814,   169,   169,   221,
  654.      301,   142,   159,   300,   743,   488,   489,   964,   251,   965,
  655.      144,   244,   250,   263,   926,   586,   814,   487,   487,   925,
  656.      696,   685,   812,   813,   903,   817,   489,   487,   808,   488,
  657.      488,   489,   975,   696,   765,   902,   119,   696,   819,   820,
  658.      696,   171,   171,   601,   608,   604,    44,   260,   618,   608,
  659.      623,   581,   908,   908,   790,   619,   488,   489,   910,   905,
  660.       94,    95,    96,    97,   140,   183,   209,   213,   215,   260,
  661.      262,   315,   316,   317,   320,   321,   322,   323,   324,   326,
  662.      327,   328,   330,   331,   332,   333,   334,   335,   340,   342,
  663.      344,   345,   346,   347,   348,   349,   352,   353,   394,   409,
  664.      423,   424,   425,   431,   433,   463,   558,   561,   562,   563,
  665.      564,   565,   566,   567,   910,   905,   488,   488,    88,   527,
  666.      537,   908,   487,   838,   329,   771,   754,   128,   489,   488,
  667.      488,   580,   417,    47,   488,   467,   488,   488,   489,   895,
  668.      488,   489,   488,   488,   488,   696,   488,   488,   488,   488,
  669.      488,   489,   488,   696,   166,   174,   768,   151,   759,   784,
  670.      911,   489,   442,   481,    10,   689,   752,   229,   169,   169,
  671.      827,   754,   820,   731,   731,   696,   732,   600,   744,   744,
  672.      744,   910,    59,   268,   273,   309,   474,   475,   957,   958,
  673.      306,   966,   960,   108,   293,   244,   927,   279,   279,   814,
  674.      689,   489,   814,   818,   819,   816,   810,   808,   900,   489,
  675.       89,   122,   766,   488,   489,   608,   604,   487,   119,   119,
  676.      556,   585,   488,   558,   549,   591,   487,   573,   487,   568,
  677.      569,   317,   352,   562,   564,   588,   317,   353,   353,   354,
  678.      560,   573,   568,   336,   559,   568,   588,   588,   568,   573,
  679.      573,   588,   487,   573,    34,    90,    94,   109,   119,   216,
  680.      218,   221,   234,   262,   297,   575,   576,   577,   589,   354,
  681.      487,   588,   487,   487,   487,   573,   487,   569,   574,   494,
  682.      488,   520,   535,   487,   524,   606,   607,   910,   754,   773,
  683.      822,   696,   696,   696,   716,   719,   275,   100,   152,   756,
  684.      111,   887,   782,   417,   908,   741,   169,   731,   731,   762,
  685.      221,   733,   221,   734,   487,   745,   279,   279,   279,    87,
  686.      956,   148,   203,   204,   205,   967,   968,   488,   488,   928,
  687.      526,   813,   820,   488,   978,   902,   820,   487,   487,   606,
  688.      321,   345,   346,   479,   480,   897,   898,   624,   575,   201,
  689.      221,   487,   592,   594,   595,   596,   219,   219,   341,   351,
  690.      355,   570,   571,   572,   588,   354,   487,   570,   487,   570,
  691.      570,   588,   219,   570,   908,   584,   426,   578,   897,   218,
  692.       83,   119,   171,   577,   171,   219,   219,   219,   219,   570,
  693.      219,   570,   910,   978,   521,   524,   522,   488,   489,   766,
  694.      487,   171,   488,   488,   489,   488,   488,   905,   760,   902,
  695.      757,   762,   131,   132,   225,   278,   888,   889,   178,   890,
  696.       87,   545,   684,   768,   736,   771,   696,   301,   696,   301,
  697.      748,   910,   487,   957,   224,   772,   772,   772,   968,   545,
  698.      766,   606,   606,   488,   899,   899,   620,   145,   233,   265,
  699.       41,    83,   593,   910,   596,   488,   488,   489,   572,   610,
  700.      895,   610,   488,   695,   426,   302,   488,   488,   488,   488,
  701.      488,   975,   607,   219,    83,   696,   887,   306,   489,   761,
  702.      766,   696,   768,   100,   100,   131,   100,   889,   269,   278,
  703.      891,   892,   188,   688,   221,   487,   487,   488,   489,   746,
  704.      747,   488,   488,   624,   103,   217,   254,   260,   597,   597,
  705.      488,   489,   219,   488,   489,   488,   695,   588,   588,   523,
  706.      766,   488,   828,   829,   903,   488,   890,    40,    66,   902,
  707.      435,   774,   895,   895,   100,   895,   100,   100,   892,    10,
  708.      696,   748,   748,   910,   488,   590,    84,   119,   218,   594,
  709.      910,   488,   588,   895,   588,   978,   489,   814,   159,   893,
  710.      766,   910,   895,   895,   895,   773,   492,   488,   488,   829,
  711.      820,   219,   487,   806,   775,    87,   178,   488,   807,   487,
  712.      192,   488,   691,   776,   777,   778,    10,   696,   488,   489,
  713.      772,   778
  714. };
  715. #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
  716. # define YYSIZE_T __SIZE_TYPE__
  717. #endif
  718. #if ! defined (YYSIZE_T) && defined (size_t)
  719. # define YYSIZE_T size_t
  720. #endif
  721. #if ! defined (YYSIZE_T)
  722. # if defined (__STDC__) || defined (__cplusplus)
  723. #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
  724. #  define YYSIZE_T size_t
  725. # endif
  726. #endif
  727. #if ! defined (YYSIZE_T)
  728. # define YYSIZE_T unsigned int
  729. #endif
  730. #define yyerrok (yyerrstatus = 0)
  731. #define yyclearin (yychar = YYEMPTY)
  732. #define YYEMPTY (-2)
  733. #define YYEOF 0
  734. #define YYACCEPT goto yyacceptlab
  735. #define YYABORT goto yyabortlab
  736. #define YYERROR goto yyerrorlab
  737. /* Like YYERROR except do call yyerror.  This remains here temporarily
  738.    to ease the transition to the new meaning of YYERROR, for GCC.
  739.    Once GCC version 2 has supplanted version 1, this can go.  */
  740. #define YYFAIL goto yyerrlab
  741. #define YYRECOVERING()  (!!yyerrstatus)
  742. #define YYBACKUP(Token, Value)
  743. do
  744.   if (yychar == YYEMPTY && yylen == 1)
  745.     {
  746.       yychar = (Token);
  747.       yylval = (Value);
  748.       yytoken = YYTRANSLATE (yychar);
  749.       YYPOPSTACK;
  750.       goto yybackup;
  751.     }
  752.   else
  753.     { 
  754.       yyerror ("syntax error: cannot back up");
  755.       YYERROR;
  756.     }
  757. while (0)
  758. #define YYTERROR 1
  759. #define YYERRCODE 256
  760. /* YYLLOC_DEFAULT -- Compute the default location (before the actions
  761.    are run).  */
  762. #ifndef YYLLOC_DEFAULT
  763. # define YYLLOC_DEFAULT(Current, Rhs, N)
  764.    ((Current).first_line   = (Rhs)[1].first_line,
  765.     (Current).first_column = (Rhs)[1].first_column,
  766.     (Current).last_line    = (Rhs)[N].last_line,
  767.     (Current).last_column  = (Rhs)[N].last_column)
  768. #endif
  769. /* YYLEX -- calling `yylex' with the right arguments.  */
  770. #ifdef YYLEX_PARAM
  771. # define YYLEX yylex (&yylval, YYLEX_PARAM)
  772. #else
  773. # define YYLEX yylex (&yylval)
  774. #endif
  775. /* Enable debugging if requested.  */
  776. #if YYDEBUG
  777. # ifndef YYFPRINTF
  778. #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
  779. #  define YYFPRINTF fprintf
  780. # endif
  781. # define YYDPRINTF(Args)
  782. do {
  783.   if (yydebug)
  784.     YYFPRINTF Args;
  785. } while (0)
  786. # define YYDSYMPRINT(Args)
  787. do {
  788.   if (yydebug)
  789.     yysymprint Args;
  790. } while (0)
  791. # define YYDSYMPRINTF(Title, Token, Value, Location)
  792. do {
  793.   if (yydebug)
  794.     {
  795.       YYFPRINTF (stderr, "%s ", Title);
  796.       yysymprint (stderr, 
  797.                   Token, Value);
  798.       YYFPRINTF (stderr, "n");
  799.     }
  800. } while (0)
  801. /*------------------------------------------------------------------.
  802. | yy_stack_print -- Print the state stack from its BOTTOM up to its |
  803. | TOP (included).                                                   |
  804. `------------------------------------------------------------------*/
  805. #if defined (__STDC__) || defined (__cplusplus)
  806. static void
  807. yy_stack_print (short *bottom, short *top)
  808. #else
  809. static void
  810. yy_stack_print (bottom, top)
  811.     short *bottom;
  812.     short *top;
  813. #endif
  814. {
  815.   YYFPRINTF (stderr, "Stack now");
  816.   for (/* Nothing. */; bottom <= top; ++bottom)
  817.     YYFPRINTF (stderr, " %d", *bottom);
  818.   YYFPRINTF (stderr, "n");
  819. }
  820. # define YY_STACK_PRINT(Bottom, Top)
  821. do {
  822.   if (yydebug)
  823.     yy_stack_print ((Bottom), (Top));
  824. } while (0)
  825. /*------------------------------------------------.
  826. | Report that the YYRULE is going to be reduced.  |
  827. `------------------------------------------------*/
  828. #if defined (__STDC__) || defined (__cplusplus)
  829. static void
  830. yy_reduce_print (int yyrule)
  831. #else
  832. static void
  833. yy_reduce_print (yyrule)
  834.     int yyrule;
  835. #endif
  836. {
  837.   int yyi;
  838.   unsigned int yylno = yyrline[yyrule];
  839.   YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
  840.              yyrule - 1, yylno);
  841.   /* Print the symbols being reduced, and their result.  */
  842.   for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
  843.     YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
  844.   YYFPRINTF (stderr, "-> %sn", yytname [yyr1[yyrule]]);
  845. }
  846. # define YY_REDUCE_PRINT(Rule)
  847. do {
  848.   if (yydebug)
  849.     yy_reduce_print (Rule);
  850. } while (0)
  851. /* Nonzero means print parse trace.  It is left uninitialized so that
  852.    multiple parsers can coexist.  */
  853. int yydebug;
  854. #else /* !YYDEBUG */
  855. # define YYDPRINTF(Args)
  856. # define YYDSYMPRINT(Args)
  857. # define YYDSYMPRINTF(Title, Token, Value, Location)
  858. # define YY_STACK_PRINT(Bottom, Top)
  859. # define YY_REDUCE_PRINT(Rule)
  860. #endif /* !YYDEBUG */
  861. /* YYINITDEPTH -- initial size of the parser's stacks.  */
  862. #ifndef YYINITDEPTH
  863. # define YYINITDEPTH 200
  864. #endif
  865. /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
  866.    if the built-in stack extension method is used).
  867.    Do not make this value too large; the results are undefined if
  868.    SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
  869.    evaluated with infinite-precision integer arithmetic.  */
  870. #if defined (YYMAXDEPTH) && YYMAXDEPTH == 0
  871. # undef YYMAXDEPTH
  872. #endif
  873. #ifndef YYMAXDEPTH
  874. # define YYMAXDEPTH 10000
  875. #endif
  876. #if YYERROR_VERBOSE
  877. # ifndef yystrlen
  878. #  if defined (__GLIBC__) && defined (_STRING_H)
  879. #   define yystrlen strlen
  880. #  else
  881. /* Return the length of YYSTR.  */
  882. static YYSIZE_T
  883. #   if defined (__STDC__) || defined (__cplusplus)
  884. yystrlen (const char *yystr)
  885. #   else
  886. yystrlen (yystr)
  887.      const char *yystr;
  888. #   endif
  889. {
  890.   register const char *yys = yystr;
  891.   while (*yys++ != '')
  892.     continue;
  893.   return yys - yystr - 1;
  894. }
  895. #  endif
  896. # endif
  897. # ifndef yystpcpy
  898. #  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
  899. #   define yystpcpy stpcpy
  900. #  else
  901. /* Copy YYSRC to YYDEST, returning the address of the terminating '' in
  902.    YYDEST.  */
  903. static char *
  904. #   if defined (__STDC__) || defined (__cplusplus)
  905. yystpcpy (char *yydest, const char *yysrc)
  906. #   else
  907. yystpcpy (yydest, yysrc)
  908.      char *yydest;
  909.      const char *yysrc;
  910. #   endif
  911. {
  912.   register char *yyd = yydest;
  913.   register const char *yys = yysrc;
  914.   while ((*yyd++ = *yys++) != '')
  915.     continue;
  916.   return yyd - 1;
  917. }
  918. #  endif
  919. # endif
  920. #endif /* !YYERROR_VERBOSE */
  921. #if YYDEBUG
  922. /*--------------------------------.
  923. | Print this symbol on YYOUTPUT.  |
  924. `--------------------------------*/
  925. #if defined (__STDC__) || defined (__cplusplus)
  926. static void
  927. yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
  928. #else
  929. static void
  930. yysymprint (yyoutput, yytype, yyvaluep)
  931.     FILE *yyoutput;
  932.     int yytype;
  933.     YYSTYPE *yyvaluep;
  934. #endif
  935. {
  936.   /* Pacify ``unused variable'' warnings.  */
  937.   (void) yyvaluep;
  938.   if (yytype < YYNTOKENS)
  939.     {
  940.       YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
  941. # ifdef YYPRINT
  942.       YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
  943. # endif
  944.     }
  945.   else
  946.     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
  947.   switch (yytype)
  948.     {
  949.       default:
  950.         break;
  951.     }
  952.   YYFPRINTF (yyoutput, ")");
  953. }
  954. #endif /* ! YYDEBUG */
  955. /*-----------------------------------------------.
  956. | Release the memory associated to this symbol.  |
  957. `-----------------------------------------------*/
  958. #if defined (__STDC__) || defined (__cplusplus)
  959. static void
  960. yydestruct (int yytype, YYSTYPE *yyvaluep)
  961. #else
  962. static void
  963. yydestruct (yytype, yyvaluep)
  964.     int yytype;
  965.     YYSTYPE *yyvaluep;
  966. #endif
  967. {
  968.   /* Pacify ``unused variable'' warnings.  */
  969.   (void) yyvaluep;
  970.   switch (yytype)
  971.     {
  972.       default:
  973.         break;
  974.     }
  975. }
  976. /* Prevent warnings from -Wmissing-prototypes.  */
  977. #ifdef YYPARSE_PARAM
  978. # if defined (__STDC__) || defined (__cplusplus)
  979. int yyparse (void *YYPARSE_PARAM);
  980. # else
  981. int yyparse ();
  982. # endif
  983. #else /* ! YYPARSE_PARAM */
  984. #if defined (__STDC__) || defined (__cplusplus)
  985. int yyparse (void);
  986. #else
  987. int yyparse ();
  988. #endif
  989. #endif /* ! YYPARSE_PARAM */
  990. /*----------.
  991. | yyparse.  |
  992. `----------*/
  993. #ifdef YYPARSE_PARAM
  994. # if defined (__STDC__) || defined (__cplusplus)
  995. int yyparse (void *YYPARSE_PARAM)
  996. # else
  997. int yyparse (YYPARSE_PARAM)
  998.   void *YYPARSE_PARAM;
  999. # endif
  1000. #else /* ! YYPARSE_PARAM */
  1001. #if defined (__STDC__) || defined (__cplusplus)
  1002. int
  1003. yyparse (void)
  1004. #else
  1005. int
  1006. yyparse ()
  1007. #endif
  1008. #endif
  1009. {
  1010.   /* The lookahead symbol.  */
  1011. int yychar;
  1012. /* The semantic value of the lookahead symbol.  */
  1013. YYSTYPE yylval;
  1014. /* Number of syntax errors so far.  */
  1015. int yynerrs;
  1016.   register int yystate;
  1017.   register int yyn;
  1018.   int yyresult;
  1019.   /* Number of tokens to shift before error messages enabled.  */
  1020.   int yyerrstatus;
  1021.   /* Lookahead token as an internal (translated) token number.  */
  1022.   int yytoken = 0;
  1023.   /* Three stacks and their tools:
  1024.      `yyss': related to states,
  1025.      `yyvs': related to semantic values,
  1026.      `yyls': related to locations.
  1027.      Refer to the stacks thru separate pointers, to allow yyoverflow
  1028.      to reallocate them elsewhere.  */
  1029.   /* The state stack.  */
  1030.   short yyssa[YYINITDEPTH];
  1031.   short *yyss = yyssa;
  1032.   register short *yyssp;
  1033.   /* The semantic value stack.  */
  1034.   YYSTYPE yyvsa[YYINITDEPTH];
  1035.   YYSTYPE *yyvs = yyvsa;
  1036.   register YYSTYPE *yyvsp;
  1037. #define YYPOPSTACK   (yyvsp--, yyssp--)
  1038.   YYSIZE_T yystacksize = YYINITDEPTH;
  1039.   /* The variables used to return semantic value and location from the
  1040.      action routines.  */
  1041.   YYSTYPE yyval;
  1042.   /* When reducing, the number of symbols on the RHS of the reduced
  1043.      rule.  */
  1044.   int yylen;
  1045.   YYDPRINTF ((stderr, "Starting parsen"));
  1046.   yystate = 0;
  1047.   yyerrstatus = 0;
  1048.   yynerrs = 0;
  1049.   yychar = YYEMPTY; /* Cause a token to be read.  */
  1050.   /* Initialize stack pointers.
  1051.      Waste one element of value and location stack
  1052.      so that they stay on the same level as the state stack.
  1053.      The wasted elements are never initialized.  */
  1054.   yyssp = yyss;
  1055.   yyvsp = yyvs;
  1056.   goto yysetstate;
  1057. /*------------------------------------------------------------.
  1058. | yynewstate -- Push a new state, which is found in yystate.  |
  1059. `------------------------------------------------------------*/
  1060.  yynewstate:
  1061.   /* In all cases, when you get here, the value and location stacks
  1062.      have just been pushed. so pushing a state here evens the stacks.
  1063.      */
  1064.   yyssp++;
  1065.  yysetstate:
  1066.   *yyssp = yystate;
  1067.   if (yyss + yystacksize - 1 <= yyssp)
  1068.     {
  1069.       /* Get the current used size of the three stacks, in elements.  */
  1070.       YYSIZE_T yysize = yyssp - yyss + 1;
  1071. #ifdef yyoverflow
  1072.       {
  1073. /* Give user a chance to reallocate the stack. Use copies of
  1074.    these so that the &'s don't force the real ones into
  1075.    memory.  */
  1076. YYSTYPE *yyvs1 = yyvs;
  1077. short *yyss1 = yyss;
  1078. /* Each stack pointer address is followed by the size of the
  1079.    data in use in that stack, in bytes.  This used to be a
  1080.    conditional around just the two extra args, but that might
  1081.    be undefined if yyoverflow is a macro.  */
  1082. yyoverflow ("parser stack overflow",
  1083.     &yyss1, yysize * sizeof (*yyssp),
  1084.     &yyvs1, yysize * sizeof (*yyvsp),
  1085.     &yystacksize);
  1086. yyss = yyss1;
  1087. yyvs = yyvs1;
  1088.       }
  1089. #else /* no yyoverflow */
  1090. # ifndef YYSTACK_RELOCATE
  1091.       goto yyoverflowlab;
  1092. # else
  1093.       /* Extend the stack our own way.  */
  1094.       if (YYMAXDEPTH <= yystacksize)
  1095. goto yyoverflowlab;
  1096.       yystacksize *= 2;
  1097.       if (YYMAXDEPTH < yystacksize)
  1098. yystacksize = YYMAXDEPTH;
  1099.       {
  1100. short *yyss1 = yyss;
  1101. union yyalloc *yyptr =
  1102.   (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
  1103. if (! yyptr)
  1104.   goto yyoverflowlab;
  1105. YYSTACK_RELOCATE (yyss);
  1106. YYSTACK_RELOCATE (yyvs);
  1107. #  undef YYSTACK_RELOCATE
  1108. if (yyss1 != yyssa)
  1109.   YYSTACK_FREE (yyss1);
  1110.       }
  1111. # endif
  1112. #endif /* no yyoverflow */
  1113.       yyssp = yyss + yysize - 1;
  1114.       yyvsp = yyvs + yysize - 1;
  1115.       YYDPRINTF ((stderr, "Stack size increased to %lun",
  1116.   (unsigned long int) yystacksize));
  1117.       if (yyss + yystacksize - 1 <= yyssp)
  1118. YYABORT;
  1119.     }
  1120.   YYDPRINTF ((stderr, "Entering state %dn", yystate));
  1121.   goto yybackup;
  1122. /*-----------.
  1123. | yybackup.  |
  1124. `-----------*/
  1125. yybackup:
  1126. /* Do appropriate processing given the current state.  */
  1127. /* Read a lookahead token if we need one and don't already have one.  */
  1128. /* yyresume: */
  1129.   /* First try to decide what to do without reference to lookahead token.  */
  1130.   yyn = yypact[yystate];
  1131.   if (yyn == YYPACT_NINF)
  1132.     goto yydefault;
  1133.   /* Not known => get a lookahead token if don't already have one.  */
  1134.   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
  1135.   if (yychar == YYEMPTY)
  1136.     {
  1137.       YYDPRINTF ((stderr, "Reading a token: "));
  1138.       yychar = YYLEX;
  1139.     }
  1140.   if (yychar <= YYEOF)
  1141.     {
  1142.       yychar = yytoken = YYEOF;
  1143.       YYDPRINTF ((stderr, "Now at end of input.n"));
  1144.     }
  1145.   else
  1146.     {
  1147.       yytoken = YYTRANSLATE (yychar);
  1148.       YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);
  1149.     }
  1150.   /* If the proper action on seeing token YYTOKEN is to reduce or to
  1151.      detect an error, take that action.  */
  1152.   yyn += yytoken;
  1153.   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
  1154.     goto yydefault;
  1155.   yyn = yytable[yyn];
  1156.   if (yyn <= 0)
  1157.     {
  1158.       if (yyn == 0 || yyn == YYTABLE_NINF)
  1159. goto yyerrlab;
  1160.       yyn = -yyn;
  1161.       goto yyreduce;
  1162.     }
  1163.   if (yyn == YYFINAL)
  1164.     YYACCEPT;
  1165.   /* Shift the lookahead token.  */
  1166.   YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));
  1167.   /* Discard the token being shifted unless it is eof.  */
  1168.   if (yychar != YYEOF)
  1169.     yychar = YYEMPTY;
  1170.   *++yyvsp = yylval;
  1171.   /* Count tokens shifted since error; after three, turn off error
  1172.      status.  */
  1173.   if (yyerrstatus)
  1174.     yyerrstatus--;
  1175.   yystate = yyn;
  1176.   goto yynewstate;
  1177. /*-----------------------------------------------------------.
  1178. | yydefault -- do the default action for the current state.  |
  1179. `-----------------------------------------------------------*/
  1180. yydefault:
  1181.   yyn = yydefact[yystate];
  1182.   if (yyn == 0)
  1183.     goto yyerrlab;
  1184.   goto yyreduce;
  1185. /*-----------------------------.
  1186. | yyreduce -- Do a reduction.  |
  1187. `-----------------------------*/
  1188. yyreduce:
  1189.   /* yyn is the number of a rule to reduce with.  */
  1190.   yylen = yyr2[yyn];
  1191.   /* If YYLEN is nonzero, implement the default value of the action:
  1192.      `$$ = $1'.
  1193.      Otherwise, the following line sets YYVAL to garbage.
  1194.      This behavior is undocumented and Bison
  1195.      users should not rely upon it.  Assigning to YYVAL
  1196.      unconditionally makes the parser a bit smaller, and it avoids a
  1197.      GCC warning that YYVAL may be used uninitialized.  */
  1198.   yyval = yyvsp[1-yylen];
  1199.   YY_REDUCE_PRINT (yyn);
  1200.   switch (yyn)
  1201.     {
  1202.         case 2:
  1203. #line 747 "sql_yacc.yy"
  1204.     {
  1205.    THD *thd= YYTHD;
  1206.    if (!thd->bootstrap &&
  1207.       (!(thd->lex->select_lex.options & OPTION_FOUND_COMMENT)))
  1208.    {
  1209.      send_error(thd,ER_EMPTY_QUERY);
  1210.      YYABORT;
  1211.    }
  1212.    else
  1213.    {
  1214.      thd->lex->sql_command= SQLCOM_EMPTY_QUERY;
  1215.    }
  1216. }
  1217.     break;
  1218.   case 3:
  1219. #line 760 "sql_yacc.yy"
  1220.     {}
  1221.     break;
  1222.   case 49:
  1223. #line 812 "sql_yacc.yy"
  1224.     {
  1225.           THD *thd=YYTHD;
  1226.           LEX *lex= thd->lex;
  1227.           if (thd->command == COM_PREPARE)
  1228.           {
  1229.             yyerror(ER(ER_SYNTAX_ERROR));
  1230.             YYABORT;
  1231.           }
  1232.           lex->sql_command= SQLCOM_DEALLOCATE_PREPARE;
  1233.           lex->prepared_stmt_name= yyvsp[0].lex_str;
  1234.         }
  1235.     break;
  1236.   case 52:
  1237. #line 832 "sql_yacc.yy"
  1238.     {
  1239.           THD *thd=YYTHD;
  1240.           LEX *lex= thd->lex;
  1241.           if (thd->command == COM_PREPARE)
  1242.           {
  1243.             yyerror(ER(ER_SYNTAX_ERROR));
  1244.             YYABORT;
  1245.           }
  1246.           lex->sql_command= SQLCOM_PREPARE;
  1247.           lex->prepared_stmt_name= yyvsp[-2].lex_str;
  1248.         }
  1249.     break;
  1250.   case 53:
  1251. #line 846 "sql_yacc.yy"
  1252.     {
  1253.           THD *thd=YYTHD;
  1254.           LEX *lex= thd->lex;
  1255.           lex->prepared_stmt_code= yyvsp[0].lex_str;
  1256.           lex->prepared_stmt_code_is_varref= FALSE;
  1257.         }
  1258.     break;
  1259.   case 54:
  1260. #line 853 "sql_yacc.yy"
  1261.     {
  1262.           THD *thd=YYTHD;
  1263.           LEX *lex= thd->lex;
  1264.           lex->prepared_stmt_code= yyvsp[0].lex_str;
  1265.           lex->prepared_stmt_code_is_varref= TRUE;
  1266.         }
  1267.     break;
  1268.   case 55:
  1269. #line 862 "sql_yacc.yy"
  1270.     {
  1271.           THD *thd=YYTHD;
  1272.           LEX *lex= thd->lex;
  1273.           if (thd->command == COM_PREPARE)
  1274.           {
  1275.             yyerror(ER(ER_SYNTAX_ERROR));
  1276.             YYABORT;
  1277.           }
  1278.           lex->sql_command= SQLCOM_EXECUTE;
  1279.           lex->prepared_stmt_name= yyvsp[0].lex_str;
  1280.         }
  1281.     break;
  1282.   case 56:
  1283. #line 874 "sql_yacc.yy"
  1284.     {}
  1285.     break;
  1286.   case 61:
  1287. #line 888 "sql_yacc.yy"
  1288.     {
  1289.           LEX *lex=Lex;
  1290.           LEX_STRING *lexstr= (LEX_STRING*)sql_memdup(&yyvsp[0].lex_str, sizeof(LEX_STRING));
  1291.           if (!lexstr || lex->prepared_stmt_params.push_back(lexstr))
  1292.               YYABORT;
  1293.         }
  1294.     break;
  1295.   case 62:
  1296. #line 900 "sql_yacc.yy"
  1297.     {
  1298.   LEX *lex= Lex;
  1299.   lex->sql_command= SQLCOM_HELP;
  1300.   lex->help_arg= yyvsp[0].lex_str.str;
  1301.        }
  1302.     break;
  1303.   case 63:
  1304. #line 910 "sql_yacc.yy"
  1305.     {
  1306.   LEX *lex = Lex;
  1307.   lex->sql_command = SQLCOM_CHANGE_MASTER;
  1308.   bzero((char*) &lex->mi, sizeof(lex->mi));
  1309.         }
  1310.     break;
  1311.   case 64:
  1312. #line 916 "sql_yacc.yy"
  1313.     {}
  1314.     break;
  1315.   case 67:
  1316. #line 925 "sql_yacc.yy"
  1317.     {
  1318.  Lex->mi.host = yyvsp[0].lex_str.str;
  1319.        }
  1320.     break;
  1321.   case 68:
  1322. #line 930 "sql_yacc.yy"
  1323.     {
  1324.  Lex->mi.user = yyvsp[0].lex_str.str;
  1325.        }
  1326.     break;
  1327.   case 69:
  1328. #line 935 "sql_yacc.yy"
  1329.     {
  1330.  Lex->mi.password = yyvsp[0].lex_str.str;
  1331.        }
  1332.     break;
  1333.   case 70:
  1334. #line 940 "sql_yacc.yy"
  1335.     {
  1336.  Lex->mi.port = yyvsp[0].ulong_num;
  1337.        }
  1338.     break;
  1339.   case 71:
  1340. #line 945 "sql_yacc.yy"
  1341.     {
  1342.  Lex->mi.connect_retry = yyvsp[0].ulong_num;
  1343.        }
  1344.     break;
  1345.   case 72:
  1346. #line 949 "sql_yacc.yy"
  1347.     {
  1348.            Lex->mi.ssl= yyvsp[0].ulong_num ? 
  1349.                LEX_MASTER_INFO::SSL_ENABLE : LEX_MASTER_INFO::SSL_DISABLE;
  1350.          }
  1351.     break;
  1352.   case 73:
  1353. #line 954 "sql_yacc.yy"
  1354.     {
  1355.            Lex->mi.ssl_ca= yyvsp[0].lex_str.str;
  1356.          }
  1357.     break;
  1358.   case 74:
  1359. #line 958 "sql_yacc.yy"
  1360.     {
  1361.            Lex->mi.ssl_capath= yyvsp[0].lex_str.str;
  1362.          }
  1363.     break;
  1364.   case 75:
  1365. #line 962 "sql_yacc.yy"
  1366.     {
  1367.            Lex->mi.ssl_cert= yyvsp[0].lex_str.str;
  1368.          }
  1369.     break;
  1370.   case 76:
  1371. #line 966 "sql_yacc.yy"
  1372.     {
  1373.            Lex->mi.ssl_cipher= yyvsp[0].lex_str.str;
  1374.          }
  1375.     break;
  1376.   case 77:
  1377. #line 970 "sql_yacc.yy"
  1378.     {
  1379.            Lex->mi.ssl_key= yyvsp[0].lex_str.str;
  1380.  }
  1381.     break;
  1382.   case 79:
  1383. #line 979 "sql_yacc.yy"
  1384.     {
  1385.  Lex->mi.log_file_name = yyvsp[0].lex_str.str;
  1386.        }
  1387.     break;
  1388.   case 80:
  1389. #line 983 "sql_yacc.yy"
  1390.     {
  1391.            Lex->mi.pos = yyvsp[0].ulonglong_number;
  1392.            /* 
  1393.               If the user specified a value < BIN_LOG_HEADER_SIZE, adjust it
  1394.               instead of causing subsequent errors. 
  1395.               We need to do it in this file, because only there we know that 
  1396.               MASTER_LOG_POS has been explicitely specified. On the contrary
  1397.               in change_master() (sql_repl.cc) we cannot distinguish between 0
  1398.               (MASTER_LOG_POS explicitely specified as 0) and 0 (unspecified),
  1399.               whereas we want to distinguish (specified 0 means "read the binlog
  1400.               from 0" (4 in fact), unspecified means "don't change the position
  1401.               (keep the preceding value)").
  1402.            */
  1403.            Lex->mi.pos = max(BIN_LOG_HEADER_SIZE, Lex->mi.pos);
  1404.          }
  1405.     break;
  1406.   case 81:
  1407. #line 999 "sql_yacc.yy"
  1408.     {
  1409.            Lex->mi.relay_log_name = yyvsp[0].lex_str.str;
  1410.          }
  1411.     break;
  1412.   case 82:
  1413. #line 1003 "sql_yacc.yy"
  1414.     {
  1415.            Lex->mi.relay_log_pos = yyvsp[0].ulong_num;
  1416.            /* Adjust if < BIN_LOG_HEADER_SIZE (same comment as Lex->mi.pos) */
  1417.            Lex->mi.relay_log_pos = max(BIN_LOG_HEADER_SIZE, Lex->mi.relay_log_pos);
  1418.          }
  1419.     break;
  1420.   case 83:
  1421. #line 1014 "sql_yacc.yy"
  1422.     {
  1423.   THD *thd= YYTHD;
  1424.   LEX *lex=Lex;
  1425.   lex->sql_command= SQLCOM_CREATE_TABLE;
  1426.   if (!lex->select_lex.add_table_to_list(thd, yyvsp[0].table, NULL,
  1427.  TL_OPTION_UPDATING,
  1428.  (using_update_log ?
  1429.   TL_READ_NO_INSERT:
  1430.   TL_READ)))
  1431.     YYABORT;
  1432.   lex->create_list.empty();
  1433.   lex->key_list.empty();
  1434.   lex->col_list.empty();
  1435.   lex->change=NullS;
  1436.   bzero((char*) &lex->create_info,sizeof(lex->create_info));
  1437.   lex->create_info.options=yyvsp[-3].num | yyvsp[-1].num;
  1438.   lex->create_info.db_type= (enum db_type) lex->thd->variables.table_type;
  1439.   lex->create_info.default_table_charset= NULL;
  1440.   lex->name=0;
  1441. }
  1442.     break;
  1443.   case 84:
  1444. #line 1035 "sql_yacc.yy"
  1445.     { Lex->current_select= &Lex->select_lex; }
  1446.     break;
  1447.   case 85:
  1448. #line 1037 "sql_yacc.yy"
  1449.     {
  1450.     LEX *lex=Lex;
  1451.     lex->sql_command= SQLCOM_CREATE_INDEX;
  1452.     if (!lex->current_select->add_table_to_list(lex->thd, yyvsp[0].table, NULL,
  1453. TL_OPTION_UPDATING))
  1454.       YYABORT;
  1455.     lex->create_list.empty();
  1456.     lex->key_list.empty();
  1457.     lex->col_list.empty();
  1458.     lex->change=NullS;
  1459.   }
  1460.     break;
  1461.   case 86:
  1462. #line 1049 "sql_yacc.yy"
  1463.     {
  1464.     LEX *lex=Lex;
  1465.     lex->key_list.push_back(new Key(yyvsp[-9].key_type,yyvsp[-7].lex_str.str, yyvsp[-6].key_alg, 0, lex->col_list));
  1466.     lex->col_list.empty();
  1467.   }
  1468.     break;
  1469.   case 87:
  1470. #line 1056 "sql_yacc.yy"
  1471.     {
  1472.              Lex->create_info.default_table_charset= NULL;
  1473.              Lex->create_info.used_fields= 0;
  1474.           }
  1475.     break;
  1476.   case 88:
  1477. #line 1061 "sql_yacc.yy"
  1478.     {
  1479.     LEX *lex=Lex;
  1480.     lex->sql_command=SQLCOM_CREATE_DB;
  1481.     lex->name=yyvsp[-2].lex_str.str;
  1482.             lex->create_info.options=yyvsp[-3].num;
  1483.   }
  1484.     break;
  1485.   case 89:
  1486. #line 1068 "sql_yacc.yy"
  1487.     {
  1488.     LEX *lex=Lex;
  1489.     lex->sql_command = SQLCOM_CREATE_FUNCTION;
  1490.     lex->udf.name = yyvsp[0].lex_str;
  1491.     lex->udf.type= yyvsp[-2].udf_type;
  1492.   }
  1493.     break;
  1494.   case 90:
  1495. #line 1075 "sql_yacc.yy"
  1496.     {
  1497.     LEX *lex=Lex;
  1498.     lex->udf.returns=(Item_result) yyvsp[-2].num;
  1499.     lex->udf.dl=yyvsp[0].lex_str.str;
  1500.   }
  1501.     break;
  1502.   case 91:
  1503. #line 1083 "sql_yacc.yy"
  1504.     {}
  1505.     break;
  1506.   case 92:
  1507. #line 1084 "sql_yacc.yy"
  1508.     {}
  1509.     break;
  1510.   case 93:
  1511. #line 1086 "sql_yacc.yy"
  1512.     {
  1513.             LEX *lex=Lex;
  1514.             if (!(lex->name= (char *)yyvsp[0].table))
  1515.               YYABORT;
  1516.           }
  1517.     break;
  1518.   case 94:
  1519. #line 1092 "sql_yacc.yy"
  1520.     {
  1521.             LEX *lex=Lex;
  1522.             if (!(lex->name= (char *)yyvsp[-1].table))
  1523.               YYABORT;
  1524.           }
  1525.     break;
  1526.   case 95:
  1527. #line 1100 "sql_yacc.yy"
  1528.     {}
  1529.     break;
  1530.   case 96:
  1531. #line 1101 "sql_yacc.yy"
  1532.     { Select->set_braces(1);}
  1533.     break;
  1534.   case 97:
  1535. #line 1101 "sql_yacc.yy"
  1536.     {}
  1537.     break;
  1538.   case 98:
  1539. #line 1105 "sql_yacc.yy"
  1540.     {}
  1541.     break;
  1542.   case 99:
  1543. #line 1107 "sql_yacc.yy"
  1544.     { Select->set_braces(0);}
  1545.     break;
  1546.   case 100:
  1547. #line 1107 "sql_yacc.yy"
  1548.     {}
  1549.     break;
  1550.   case 101:
  1551. #line 1109 "sql_yacc.yy"
  1552.     { Select->set_braces(1);}
  1553.     break;
  1554.   case 102:
  1555. #line 1109 "sql_yacc.yy"
  1556.     {}
  1557.     break;
  1558.   case 103:
  1559. #line 1114 "sql_yacc.yy"
  1560.     {
  1561.     LEX *lex=Lex;
  1562.     lex->lock_option= using_update_log ? TL_READ_NO_INSERT : TL_READ;
  1563.     if (lex->sql_command == SQLCOM_INSERT)
  1564.       lex->sql_command= SQLCOM_INSERT_SELECT;
  1565.     else if (lex->sql_command == SQLCOM_REPLACE)
  1566.       lex->sql_command= SQLCOM_REPLACE_SELECT;
  1567.     lex->current_select->table_list.save_and_clear(&lex->save_list);
  1568.     mysql_init_select(lex);
  1569.     lex->current_select->parsing_place= SELECT_LIST;
  1570.           }
  1571.     break;
  1572.   case 104:
  1573. #line 1126 "sql_yacc.yy"
  1574.     {
  1575.     Select->parsing_place= NO_MATTER;
  1576.   }
  1577.     break;
  1578.   case 105:
  1579. #line 1130 "sql_yacc.yy"
  1580.     { Lex->current_select->table_list.push_front(&Lex->save_list); }
  1581.     break;
  1582.   case 106:
  1583. #line 1134 "sql_yacc.yy"
  1584.     {}
  1585.     break;
  1586.   case 107:
  1587. #line 1135 "sql_yacc.yy"
  1588.     {}
  1589.     break;
  1590.   case 108:
  1591. #line 1138 "sql_yacc.yy"
  1592.     {}
  1593.     break;
  1594.   case 109:
  1595. #line 1139 "sql_yacc.yy"
  1596.     {}
  1597.     break;
  1598.   case 110:
  1599. #line 1142 "sql_yacc.yy"
  1600.     {}
  1601.     break;
  1602.   case 111:
  1603. #line 1143 "sql_yacc.yy"
  1604.     {}
  1605.     break;
  1606.   case 112:
  1607. #line 1146 "sql_yacc.yy"
  1608.     {}
  1609.     break;
  1610.   case 113:
  1611. #line 1147 "sql_yacc.yy"
  1612.     {}
  1613.     break;
  1614.   case 114:
  1615. #line 1150 "sql_yacc.yy"
  1616.     { yyval.num= 0; }
  1617.     break;
  1618.   case 115:
  1619. #line 1151 "sql_yacc.yy"
  1620.     { yyval.num= yyvsp[0].num;}
  1621.     break;
  1622.   case 116:
  1623. #line 1154 "sql_yacc.yy"
  1624.     { yyval.num=yyvsp[0].num; }
  1625.     break;
  1626.   case 117:
  1627. #line 1155 "sql_yacc.yy"
  1628.     { yyval.num= yyvsp[-1].num | yyvsp[0].num; }
  1629.     break;
  1630.   case 118:
  1631. #line 1158 "sql_yacc.yy"
  1632.     { yyval.num=HA_LEX_CREATE_TMP_TABLE; }
  1633.     break;
  1634.   case 119:
  1635. #line 1161 "sql_yacc.yy"
  1636.     { yyval.num= 0; }
  1637.     break;
  1638.   case 120:
  1639. #line 1162 "sql_yacc.yy"
  1640.     { yyval.num=HA_LEX_CREATE_IF_NOT_EXISTS; }
  1641.     break;
  1642.   case 128:
  1643. #line 1178 "sql_yacc.yy"
  1644.     { Lex->create_info.db_type= yyvsp[0].db_type; }
  1645.     break;
  1646.   case 129:
  1647. #line 1179 "sql_yacc.yy"
  1648.     { Lex->create_info.db_type= yyvsp[0].db_type; WARN_DEPRECATED("TYPE=storage_engine","ENGINE=storage_engine"); }
  1649.     break;
  1650.   case 130:
  1651. #line 1180 "sql_yacc.yy"
  1652.     { Lex->create_info.max_rows= yyvsp[0].ulonglong_number; Lex->create_info.used_fields|= HA_CREATE_USED_MAX_ROWS;}
  1653.     break;
  1654.   case 131:
  1655. #line 1181 "sql_yacc.yy"
  1656.     { Lex->create_info.min_rows= yyvsp[0].ulonglong_number; Lex->create_info.used_fields|= HA_CREATE_USED_MIN_ROWS;}
  1657.     break;
  1658.   case 132:
  1659. #line 1182 "sql_yacc.yy"
  1660.     { Lex->create_info.avg_row_length=yyvsp[0].ulong_num; Lex->create_info.used_fields|= HA_CREATE_USED_AVG_ROW_LENGTH;}
  1661.     break;
  1662.   case 133:
  1663. #line 1183 "sql_yacc.yy"
  1664.     { Lex->create_info.password=yyvsp[0].lex_str.str; }
  1665.     break;
  1666.   case 134:
  1667. #line 1184 "sql_yacc.yy"
  1668.     { Lex->create_info.comment=yyvsp[0].lex_str.str; }
  1669.     break;
  1670.   case 135:
  1671. #line 1185 "sql_yacc.yy"
  1672.     { Lex->create_info.auto_increment_value=yyvsp[0].ulonglong_number; Lex->create_info.used_fields|= HA_CREATE_USED_AUTO;}
  1673.     break;
  1674.   case 136:
  1675. #line 1186 "sql_yacc.yy"
  1676.     { Lex->create_info.table_options|= yyvsp[0].ulong_num ? HA_OPTION_PACK_KEYS : HA_OPTION_NO_PACK_KEYS; Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;}
  1677.     break;
  1678.   case 137:
  1679. #line 1187 "sql_yacc.yy"
  1680.     { Lex->create_info.table_options&= ~(HA_OPTION_PACK_KEYS | HA_OPTION_NO_PACK_KEYS); Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;}
  1681.     break;
  1682.   case 138:
  1683. #line 1188 "sql_yacc.yy"
  1684.     { Lex->create_info.table_options|= yyvsp[0].ulong_num ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM; }
  1685.     break;
  1686.   case 139:
  1687. #line 1189 "sql_yacc.yy"
  1688.     { Lex->create_info.table_options|= yyvsp[0].ulong_num ? HA_OPTION_DELAY_KEY_WRITE : HA_OPTION_NO_DELAY_KEY_WRITE; }
  1689.     break;
  1690.   case 140:
  1691. #line 1190 "sql_yacc.yy"
  1692.     { Lex->create_info.row_type= yyvsp[0].row_type; }
  1693.     break;
  1694.   case 141:
  1695. #line 1191 "sql_yacc.yy"
  1696.     { Lex->create_info.raid_type= yyvsp[0].ulong_num; Lex->create_info.used_fields|= HA_CREATE_USED_RAID;}
  1697.     break;
  1698.   case 142:
  1699. #line 1192 "sql_yacc.yy"
  1700.     { Lex->create_info.raid_chunks= yyvsp[0].ulong_num; Lex->create_info.used_fields|= HA_CREATE_USED_RAID;}
  1701.     break;
  1702.   case 143:
  1703. #line 1193 "sql_yacc.yy"
  1704.     { Lex->create_info.raid_chunksize= yyvsp[0].ulong_num*RAID_BLOCK_SIZE; Lex->create_info.used_fields|= HA_CREATE_USED_RAID;}
  1705.     break;
  1706.   case 144:
  1707. #line 1195 "sql_yacc.yy"
  1708.     {
  1709.     /* Move the union list to the merge_list */
  1710.     LEX *lex=Lex;
  1711.     TABLE_LIST *table_list= lex->select_lex.get_table_list();
  1712.     lex->create_info.merge_list= lex->select_lex.table_list;
  1713.     lex->create_info.merge_list.elements--;
  1714.     lex->create_info.merge_list.first= (byte*) (table_list->next);
  1715.     lex->select_lex.table_list.elements=1;
  1716.     lex->select_lex.table_list.next= (byte**) &(table_list->next);
  1717.     table_list->next=0;
  1718.     lex->create_info.used_fields|= HA_CREATE_USED_UNION;
  1719.   }
  1720.     break;
  1721.   case 147:
  1722. #line 1209 "sql_yacc.yy"
  1723.     { Lex->create_info.merge_insert_method= yyvsp[0].ulong_num; Lex->create_info.used_fields|= HA_CREATE_USED_INSERT_METHOD;}
  1724.     break;
  1725.   case 148:
  1726. #line 1211 "sql_yacc.yy"
  1727.     { Lex->create_info.data_file_name= yyvsp[0].lex_str.str; }
  1728.     break;
  1729.   case 149:
  1730. #line 1212 "sql_yacc.yy"
  1731.     { Lex->create_info.index_file_name= yyvsp[0].lex_str.str; }
  1732.     break;
  1733.   case 150:
  1734. #line 1216 "sql_yacc.yy"
  1735.     {
  1736.           HA_CREATE_INFO *cinfo= &Lex->create_info;
  1737.           if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
  1738.                cinfo->default_table_charset && yyvsp[0].charset &&
  1739.                !my_charset_same(cinfo->default_table_charset,yyvsp[0].charset))
  1740.           {
  1741.             net_printf(YYTHD, ER_CONFLICTING_DECLARATIONS,
  1742.                        "CHARACTER SET ", cinfo->default_table_charset->csname,
  1743.                        "CHARACTER SET ", yyvsp[0].charset->csname);
  1744.             YYABORT;
  1745.           }
  1746.   Lex->create_info.default_table_charset= yyvsp[0].charset;
  1747.           Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
  1748.         }
  1749.     break;
  1750.   case 151:
  1751. #line 1233 "sql_yacc.yy"
  1752.     {
  1753.           HA_CREATE_INFO *cinfo= &Lex->create_info;
  1754.           if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) &&
  1755.                cinfo->default_table_charset && yyvsp[0].charset &&
  1756.                !my_charset_same(cinfo->default_table_charset,yyvsp[0].charset))
  1757.             {
  1758.               net_printf(YYTHD,ER_COLLATION_CHARSET_MISMATCH,
  1759.                          yyvsp[0].charset->name, cinfo->default_table_charset->csname);
  1760.               YYABORT;
  1761.             }
  1762.             Lex->create_info.default_table_charset= yyvsp[0].charset;
  1763.             Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET;
  1764.         }
  1765.     break;
  1766.   case 152:
  1767. #line 1249 "sql_yacc.yy"
  1768.     {
  1769.   yyval.db_type = ha_resolve_by_name(yyvsp[0].lex_str.str,yyvsp[0].lex_str.length);
  1770.   if (yyval.db_type == DB_TYPE_UNKNOWN) {
  1771.     net_printf(YYTHD, ER_UNKNOWN_STORAGE_ENGINE, yyvsp[0].lex_str.str);
  1772.     YYABORT;
  1773.   }
  1774. }
  1775.     break;
  1776.   case 153:
  1777. #line 1258 "sql_yacc.yy"
  1778.     { yyval.row_type= ROW_TYPE_DEFAULT; }
  1779.     break;
  1780.   case 154:
  1781. #line 1259 "sql_yacc.yy"
  1782.     { yyval.row_type= ROW_TYPE_FIXED; }
  1783.     break;
  1784.   case 155:
  1785. #line 1260 "sql_yacc.yy"
  1786.     { yyval.row_type= ROW_TYPE_DYNAMIC; }
  1787.     break;
  1788.   case 156:
  1789. #line 1261 "sql_yacc.yy"
  1790.     { yyval.row_type= ROW_TYPE_COMPRESSED; }
  1791.     break;
  1792.   case 157:
  1793. #line 1264 "sql_yacc.yy"
  1794.     { yyval.ulong_num= RAID_TYPE_0; }
  1795.     break;
  1796.   case 158:
  1797. #line 1265 "sql_yacc.yy"
  1798.     { yyval.ulong_num= RAID_TYPE_0; }
  1799.     break;
  1800.   case 159:
  1801. #line 1266 "sql_yacc.yy"
  1802.     { yyval.ulong_num=yyvsp[0].ulong_num;}
  1803.     break;
  1804.   case 160:
  1805. #line 1269 "sql_yacc.yy"
  1806.     { yyval.ulong_num= MERGE_INSERT_DISABLED; }
  1807.     break;
  1808.   case 161:
  1809. #line 1270 "sql_yacc.yy"
  1810.     { yyval.ulong_num= MERGE_INSERT_TO_FIRST; }
  1811.     break;
  1812.   case 162:
  1813. #line 1271 "sql_yacc.yy"
  1814.     { yyval.ulong_num= MERGE_INSERT_TO_LAST; }
  1815.     break;
  1816.   case 163:
  1817. #line 1274 "sql_yacc.yy"
  1818.     {}
  1819.     break;
  1820.   case 165:
  1821. #line 1278 "sql_yacc.yy"
  1822.     { yyval.udf_type = UDFTYPE_FUNCTION; }
  1823.     break;
  1824.   case 166:
  1825. #line 1279 "sql_yacc.yy"
  1826.     { yyval.udf_type = UDFTYPE_AGGREGATE; }
  1827.     break;
  1828.   case 167:
  1829. #line 1282 "sql_yacc.yy"
  1830.     {yyval.num = (int) STRING_RESULT; }
  1831.     break;
  1832.   case 168:
  1833. #line 1283 "sql_yacc.yy"
  1834.     {yyval.num = (int) REAL_RESULT; }
  1835.     break;
  1836.   case 169:
  1837. #line 1284 "sql_yacc.yy"
  1838.     {yyval.num = (int) INT_RESULT; }
  1839.     break;
  1840.   case 175:
  1841. #line 1299 "sql_yacc.yy"
  1842.     {
  1843.     Lex->col_list.empty(); /* Alloced by sql_alloc */
  1844.   }
  1845.     break;
  1846.   case 176:
  1847. #line 1306 "sql_yacc.yy"
  1848.     {
  1849.     LEX *lex=Lex;
  1850.     lex->key_list.push_back(new Key(yyvsp[-5].key_type,yyvsp[-4].simple_string, yyvsp[-3].key_alg, 0, lex->col_list));
  1851.     lex->col_list.empty(); /* Alloced by sql_alloc */
  1852.   }
  1853.     break;
  1854.   case 177:
  1855. #line 1312 "sql_yacc.yy"
  1856.     {
  1857.     LEX *lex=Lex;
  1858.     const char *key_name= yyvsp[-4].simple_string ? yyvsp[-4].simple_string:yyvsp[-6].simple_string;
  1859.     lex->key_list.push_back(new Key(yyvsp[-5].key_type, key_name, yyvsp[-3].key_alg, 0,
  1860.     lex->col_list));
  1861.     lex->col_list.empty(); /* Alloced by sql_alloc */
  1862.   }
  1863.     break;
  1864.   case 178:
  1865. #line 1320 "sql_yacc.yy"
  1866.     {
  1867.     LEX *lex=Lex;
  1868.     lex->key_list.push_back(new foreign_key(yyvsp[-4].simple_string ? yyvsp[-4].simple_string:yyvsp[-7].simple_string, lex->col_list,
  1869.     yyvsp[0].table,
  1870.     lex->ref_list,
  1871.     lex->fk_delete_opt,
  1872.     lex->fk_update_opt,
  1873.     lex->fk_match_option));
  1874.     lex->key_list.push_back(new Key(Key::MULTIPLE, yyvsp[-4].simple_string ? yyvsp[-4].simple_string : yyvsp[-7].simple_string,
  1875.     HA_KEY_ALG_UNDEF, 1,
  1876.     lex->col_list));
  1877.     lex->col_list.empty(); /* Alloced by sql_alloc */
  1878.   }
  1879.     break;
  1880.   case 179:
  1881. #line 1334 "sql_yacc.yy"
  1882.     {
  1883.     Lex->col_list.empty(); /* Alloced by sql_alloc */
  1884.   }
  1885.     break;
  1886.   case 180:
  1887. #line 1338 "sql_yacc.yy"
  1888.     {
  1889.     Lex->col_list.empty(); /* Alloced by sql_alloc */
  1890.   }
  1891.     break;
  1892.   case 184:
  1893. #line 1353 "sql_yacc.yy"
  1894.     { yyval.simple_string=(char*) 0; }
  1895.     break;
  1896.   case 185:
  1897. #line 1354 "sql_yacc.yy"
  1898.     { yyval.simple_string= yyvsp[0].simple_string; }
  1899.     break;
  1900.   case 186:
  1901. #line 1358 "sql_yacc.yy"
  1902.     { yyval.simple_string=yyvsp[0].simple_string; }
  1903.     break;
  1904.   case 187:
  1905. #line 1363 "sql_yacc.yy"
  1906.     {
  1907.    LEX *lex=Lex;
  1908.    lex->length=lex->dec=0; lex->type=0;
  1909.    lex->default_value= lex->on_update_value= 0;
  1910.    lex->comment=0;
  1911.    lex->charset=NULL;
  1912.  }
  1913.     break;
  1914.   case 188:
  1915. #line 1371 "sql_yacc.yy"
  1916.     {
  1917.   LEX *lex=Lex;
  1918.   if (add_field_to_list(lex->thd, yyvsp[-3].lex_str.str,
  1919. (enum enum_field_types) yyvsp[-1].num,
  1920. lex->length,lex->dec,lex->type,
  1921. lex->default_value, lex->on_update_value, 
  1922.                                 lex->comment,
  1923. lex->change,&lex->interval_list,lex->charset,
  1924. lex->uint_geom_type))
  1925.     YYABORT;
  1926. }
  1927.     break;
  1928.   case 189:
  1929. #line 1384 "sql_yacc.yy"
  1930.     { yyval.num=yyvsp[-2].num; }
  1931.     break;
  1932.   case 190:
  1933. #line 1385 "sql_yacc.yy"
  1934.     { yyval.num=yyvsp[-2].num; }
  1935.     break;
  1936.   case 191:
  1937. #line 1386 "sql_yacc.yy"
  1938.     { yyval.num=FIELD_TYPE_FLOAT; }
  1939.     break;
  1940.   case 192:
  1941. #line 1387 "sql_yacc.yy"
  1942.     { Lex->length=(char*) "1";
  1943.   yyval.num=FIELD_TYPE_TINY; }
  1944.     break;
  1945.   case 193:
  1946. #line 1389 "sql_yacc.yy"
  1947.     { Lex->length=(char*) "1";
  1948.   yyval.num=FIELD_TYPE_TINY; }
  1949.     break;
  1950.   case 194:
  1951. #line 1391 "sql_yacc.yy"
  1952.     { Lex->length=(char*) "1";
  1953.   yyval.num=FIELD_TYPE_TINY; }
  1954.     break;
  1955.   case 195:
  1956. #line 1393 "sql_yacc.yy"
  1957.     { Lex->length=yyvsp[-2].lex_str.str;
  1958.   yyval.num=FIELD_TYPE_STRING; }
  1959.     break;
  1960.   case 196:
  1961. #line 1395 "sql_yacc.yy"
  1962.     { Lex->length=(char*) "1";
  1963.   yyval.num=FIELD_TYPE_STRING; }
  1964.     break;
  1965.   case 197:
  1966. #line 1397 "sql_yacc.yy"
  1967.     { Lex->length=yyvsp[-1].lex_str.str;
  1968.   yyval.num=FIELD_TYPE_STRING;
  1969.   Lex->charset=national_charset_info; }
  1970.     break;
  1971.   case 198:
  1972. #line 1400 "sql_yacc.yy"
  1973.     { Lex->length=(char*) "1";
  1974.   yyval.num=FIELD_TYPE_STRING;
  1975.   Lex->charset=national_charset_info; }
  1976.     break;
  1977.   case 199:
  1978. #line 1403 "sql_yacc.yy"
  1979.     { Lex->length=yyvsp[-1].lex_str.str;
  1980.   Lex->charset=&my_charset_bin;
  1981.   yyval.num=FIELD_TYPE_STRING; }
  1982.     break;
  1983.   case 200:
  1984. #line 1406 "sql_yacc.yy"
  1985.     { Lex->length= (char*) "1";
  1986.   Lex->charset=&my_charset_bin;
  1987.   yyval.num=FIELD_TYPE_STRING; }
  1988.     break;
  1989.   case 201:
  1990. #line 1409 "sql_yacc.yy"
  1991.     { Lex->length=yyvsp[-2].lex_str.str;
  1992.   yyval.num=FIELD_TYPE_VAR_STRING; }
  1993.     break;
  1994.   case 202:
  1995. #line 1411 "sql_yacc.yy"
  1996.     { Lex->length=yyvsp[-1].lex_str.str;
  1997.   yyval.num=FIELD_TYPE_VAR_STRING;
  1998.   Lex->charset=national_charset_info; }
  1999.     break;
  2000.   case 203:
  2001. #line 1414 "sql_yacc.yy"
  2002.     { Lex->length=yyvsp[-1].lex_str.str;
  2003.   Lex->charset=&my_charset_bin;
  2004.   yyval.num=FIELD_TYPE_VAR_STRING; }
  2005.     break;
  2006.   case 204:
  2007. #line 1417 "sql_yacc.yy"
  2008.     { yyval.num=FIELD_TYPE_YEAR; }
  2009.     break;
  2010.   case 205:
  2011. #line 1418 "sql_yacc.yy"
  2012.     { yyval.num=FIELD_TYPE_DATE; }
  2013.     break;
  2014.   case 206:
  2015. #line 1419 "sql_yacc.yy"
  2016.     { yyval.num=FIELD_TYPE_TIME; }
  2017.     break;
  2018.   case 207:
  2019. #line 1421 "sql_yacc.yy"
  2020.     {
  2021.     if (YYTHD->variables.sql_mode & MODE_MAXDB)
  2022.       yyval.num=FIELD_TYPE_DATETIME;
  2023.     else
  2024.             {
  2025.               /* 
  2026.                 Unlike other types TIMESTAMP fields are NOT NULL by default.
  2027.               */
  2028.               Lex->type|= NOT_NULL_FLAG;
  2029.       yyval.num=FIELD_TYPE_TIMESTAMP;
  2030.             }
  2031.    }
  2032.     break;
  2033.   case 208:
  2034. #line 1433 "sql_yacc.yy"
  2035.     { yyval.num=FIELD_TYPE_DATETIME; }
  2036.     break;
  2037.   case 209:
  2038. #line 1434 "sql_yacc.yy"
  2039.     { Lex->charset=&my_charset_bin;
  2040.   yyval.num=FIELD_TYPE_TINY_BLOB; }
  2041.     break;
  2042.   case 210:
  2043. #line 1436 "sql_yacc.yy"
  2044.     { Lex->charset=&my_charset_bin;
  2045.   yyval.num=FIELD_TYPE_BLOB; }
  2046.     break;
  2047.   case 211:
  2048. #line 1438 "sql_yacc.yy"
  2049.     { 
  2050. #ifdef HAVE_SPATIAL
  2051.   Lex->charset=&my_charset_bin;
  2052.   Lex->uint_geom_type= (uint)yyvsp[0].num;
  2053.   yyval.num=FIELD_TYPE_GEOMETRY;
  2054. #else
  2055.                                   net_printf(Lex->thd, ER_FEATURE_DISABLED,
  2056.                              sym_group_geom.name,
  2057.                                              sym_group_geom.needed_define);
  2058.   YYABORT;
  2059. #endif
  2060. }
  2061.     break;
  2062.   case 212:
  2063. #line 1450 "sql_yacc.yy"
  2064.     { Lex->charset=&my_charset_bin;
  2065.   yyval.num=FIELD_TYPE_MEDIUM_BLOB; }
  2066.     break;
  2067.   case 213:
  2068. #line 1452 "sql_yacc.yy"
  2069.     { Lex->charset=&my_charset_bin;
  2070.   yyval.num=FIELD_TYPE_LONG_BLOB; }
  2071.     break;
  2072.   case 214:
  2073. #line 1454 "sql_yacc.yy"
  2074.     { Lex->charset=&my_charset_bin;
  2075.   yyval.num=FIELD_TYPE_MEDIUM_BLOB; }
  2076.     break;
  2077.   case 215:
  2078. #line 1456 "sql_yacc.yy"
  2079.     { yyval.num=FIELD_TYPE_MEDIUM_BLOB; }
  2080.     break;
  2081.   case 216:
  2082. #line 1457 "sql_yacc.yy"
  2083.     { yyval.num=FIELD_TYPE_TINY_BLOB; }
  2084.     break;
  2085.   case 217:
  2086. #line 1458 "sql_yacc.yy"
  2087.     { yyval.num=FIELD_TYPE_BLOB; }
  2088.     break;
  2089.   case 218:
  2090. #line 1459 "sql_yacc.yy"
  2091.     { yyval.num=FIELD_TYPE_MEDIUM_BLOB; }
  2092.     break;
  2093.   case 219:
  2094. #line 1460 "sql_yacc.yy"
  2095.     { yyval.num=FIELD_TYPE_LONG_BLOB; }
  2096.     break;
  2097.   case 220:
  2098. #line 1462 "sql_yacc.yy"
  2099.     { yyval.num=FIELD_TYPE_DECIMAL;}
  2100.     break;
  2101.   case 221:
  2102. #line 1464 "sql_yacc.yy"
  2103.     { yyval.num=FIELD_TYPE_DECIMAL;}
  2104.     break;
  2105.   case 222:
  2106. #line 1466 "sql_yacc.yy"
  2107.     { yyval.num=FIELD_TYPE_DECIMAL;}
  2108.     break;
  2109.   case 223:
  2110. #line 1467 "sql_yacc.yy"
  2111.     {Lex->interval_list.empty();}
  2112.     break;
  2113.   case 224:
  2114. #line 1468 "sql_yacc.yy"
  2115.     { yyval.num=FIELD_TYPE_ENUM; }
  2116.     break;
  2117.   case 225:
  2118. #line 1469 "sql_yacc.yy"
  2119.     { Lex->interval_list.empty();}
  2120.     break;
  2121.   case 226:
  2122. #line 1470 "sql_yacc.yy"
  2123.     { yyval.num=FIELD_TYPE_SET; }
  2124.     break;
  2125.   case 227:
  2126. #line 1471 "sql_yacc.yy"
  2127.     { yyval.num=FIELD_TYPE_MEDIUM_BLOB; }
  2128.     break;
  2129.   case 228:
  2130. #line 1473 "sql_yacc.yy"
  2131.     {
  2132.     yyval.num=FIELD_TYPE_LONGLONG;
  2133.     Lex->type|= (AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNSIGNED_FLAG |
  2134.          UNIQUE_FLAG);
  2135.   }
  2136.     break;
  2137.   case 229:
  2138. #line 1481 "sql_yacc.yy"
  2139.     { yyval.num= Field::GEOM_GEOMETRY; }
  2140.     break;
  2141.   case 230:
  2142. #line 1482 "sql_yacc.yy"
  2143.     { yyval.num= Field::GEOM_GEOMETRYCOLLECTION; }
  2144.     break;
  2145.   case 231:
  2146. #line 1483 "sql_yacc.yy"
  2147.     { yyval.num= Field::GEOM_POINT; }
  2148.     break;
  2149.   case 232:
  2150. #line 1484 "sql_yacc.yy"
  2151.     { yyval.num= Field::GEOM_MULTIPOINT; }
  2152.     break;
  2153.   case 233:
  2154. #line 1485 "sql_yacc.yy"
  2155.     { yyval.num= Field::GEOM_LINESTRING; }
  2156.     break;
  2157.   case 234:
  2158. #line 1486 "sql_yacc.yy"
  2159.     { yyval.num= Field::GEOM_MULTILINESTRING; }
  2160.     break;
  2161.   case 235:
  2162. #line 1487 "sql_yacc.yy"
  2163.     { yyval.num= Field::GEOM_POLYGON; }
  2164.     break;
  2165.   case 236:
  2166. #line 1488 "sql_yacc.yy"
  2167.     { yyval.num= Field::GEOM_MULTIPOLYGON; }
  2168.     break;
  2169.   case 237:
  2170. #line 1492 "sql_yacc.yy"
  2171.     {}
  2172.     break;
  2173.   case 238:
  2174. #line 1496 "sql_yacc.yy"
  2175.     {}
  2176.     break;
  2177.   case 239:
  2178. #line 1497 "sql_yacc.yy"
  2179.     {}
  2180.     break;
  2181.   case 240:
  2182. #line 1501 "sql_yacc.yy"
  2183.     {}
  2184.     break;
  2185.   case 241:
  2186. #line 1502 "sql_yacc.yy"
  2187.     {}
  2188.     break;
  2189.   case 242:
  2190. #line 1506 "sql_yacc.yy"
  2191.     {}
  2192.     break;
  2193.   case 243:
  2194. #line 1507 "sql_yacc.yy"
  2195.     {}
  2196.     break;
  2197.   case 244:
  2198. #line 1508 "sql_yacc.yy"
  2199.     {}
  2200.     break;
  2201.   case 245:
  2202. #line 1509 "sql_yacc.yy"
  2203.     {}
  2204.     break;
  2205.   case 246:
  2206. #line 1510 "sql_yacc.yy"
  2207.     {}
  2208.     break;
  2209.   case 247:
  2210. #line 1514 "sql_yacc.yy"
  2211.     { yyval.num=FIELD_TYPE_LONG; }
  2212.     break;
  2213.   case 248:
  2214. #line 1515 "sql_yacc.yy"
  2215.     { yyval.num=FIELD_TYPE_TINY; }
  2216.     break;
  2217.   case 249:
  2218. #line 1516 "sql_yacc.yy"
  2219.     { yyval.num=FIELD_TYPE_SHORT; }
  2220.     break;
  2221.   case 250:
  2222. #line 1517 "sql_yacc.yy"
  2223.     { yyval.num=FIELD_TYPE_INT24; }
  2224.     break;
  2225.   case 251:
  2226. #line 1518 "sql_yacc.yy"
  2227.     { yyval.num=FIELD_TYPE_LONGLONG; }
  2228.     break;
  2229.   case 252:
  2230. #line 1521 "sql_yacc.yy"
  2231.     { yyval.num= YYTHD->variables.sql_mode & MODE_REAL_AS_FLOAT ?
  2232.       FIELD_TYPE_FLOAT : FIELD_TYPE_DOUBLE; }
  2233.     break;
  2234.   case 253:
  2235. #line 1523 "sql_yacc.yy"
  2236.     { yyval.num=FIELD_TYPE_DOUBLE; }
  2237.     break;
  2238.   case 254:
  2239. #line 1524 "sql_yacc.yy"
  2240.     { yyval.num=FIELD_TYPE_DOUBLE; }
  2241.     break;
  2242.   case 255:
  2243. #line 1528 "sql_yacc.yy"
  2244.     {}
  2245.     break;
  2246.   case 256:
  2247. #line 1529 "sql_yacc.yy"
  2248.     { Lex->length=yyvsp[-1].lex_str.str; }
  2249.     break;
  2250.   case 257:
  2251. #line 1530 "sql_yacc.yy"
  2252.     {}
  2253.     break;
  2254.   case 258:
  2255. #line 1534 "sql_yacc.yy"
  2256.     {
  2257.   LEX *lex=Lex;
  2258.   lex->length=yyvsp[-3].lex_str.str; lex->dec=yyvsp[-1].lex_str.str;
  2259. }
  2260.     break;
  2261.   case 259:
  2262. #line 1540 "sql_yacc.yy"
  2263.     {}
  2264.     break;
  2265.   case 260:
  2266. #line 1541 "sql_yacc.yy"
  2267.     {}
  2268.     break;
  2269.   case 261:
  2270. #line 1544 "sql_yacc.yy"
  2271.     {}
  2272.     break;
  2273.   case 262:
  2274. #line 1545 "sql_yacc.yy"
  2275.     {}
  2276.     break;
  2277.   case 263:
  2278. #line 1548 "sql_yacc.yy"
  2279.     {}
  2280.     break;
  2281.   case 264:
  2282. #line 1549 "sql_yacc.yy"
  2283.     { Lex->type|= UNSIGNED_FLAG;}
  2284.     break;
  2285.   case 265:
  2286. #line 1550 "sql_yacc.yy"
  2287.     { Lex->type|= UNSIGNED_FLAG | ZEROFILL_FLAG; }
  2288.     break;
  2289.   case 266:
  2290. #line 1553 "sql_yacc.yy"
  2291.     { Lex->length=(char*) 0; }
  2292.     break;
  2293.   case 267:
  2294. #line 1554 "sql_yacc.yy"
  2295.     { Lex->length= yyvsp[-1].lex_str.str; }
  2296.     break;
  2297.   case 268:
  2298. #line 1557 "sql_yacc.yy"
  2299.     {}
  2300.     break;
  2301.   case 269:
  2302. #line 1558 "sql_yacc.yy"
  2303.     {}
  2304.     break;
  2305.   case 270:
  2306. #line 1561 "sql_yacc.yy"
  2307.     {}
  2308.     break;
  2309.   case 271:
  2310. #line 1562 "sql_yacc.yy"
  2311.     {}
  2312.     break;
  2313.   case 272:
  2314. #line 1565 "sql_yacc.yy"
  2315.     {}
  2316.     break;
  2317.   case 274:
  2318. #line 1569 "sql_yacc.yy"
  2319.     { Lex->type&= ~ NOT_NULL_FLAG; }
  2320.     break;
  2321.   case 275:
  2322. #line 1570 "sql_yacc.yy"
  2323.     { Lex->type|= NOT_NULL_FLAG; }
  2324.     break;
  2325.   case 276:
  2326. #line 1571 "sql_yacc.yy"
  2327.     { Lex->default_value=yyvsp[0].item; }
  2328.     break;
  2329.   case 277:
  2330. #line 1573 "sql_yacc.yy"
  2331.     { Lex->on_update_value= new Item_func_now_local(); }
  2332.     break;
  2333.   case 278:
  2334. #line 1574 "sql_yacc.yy"
  2335.     { Lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG; }
  2336.     break;
  2337.   case 279:
  2338. #line 1576 "sql_yacc.yy"
  2339.     { 
  2340.     LEX *lex=Lex;
  2341.     lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNIQUE_FLAG; 
  2342.     lex->alter_info.flags|= ALTER_ADD_INDEX; 
  2343.   }
  2344.     break;
  2345.   case 280:
  2346. #line 1582 "sql_yacc.yy"
  2347.     {
  2348.     LEX *lex=Lex;
  2349.     lex->type|= PRI_KEY_FLAG | NOT_NULL_FLAG; 
  2350.     lex->alter_info.flags|= ALTER_ADD_INDEX; 
  2351.   }
  2352.     break;
  2353.   case 281:
  2354. #line 1588 "sql_yacc.yy"
  2355.     {
  2356.     LEX *lex=Lex;
  2357.     lex->type|= UNIQUE_FLAG; 
  2358.     lex->alter_info.flags|= ALTER_ADD_INDEX; 
  2359.   }
  2360.     break;
  2361.   case 282:
  2362. #line 1594 "sql_yacc.yy"
  2363.     {
  2364.     LEX *lex=Lex;
  2365.     lex->type|= UNIQUE_KEY_FLAG; 
  2366.     lex->alter_info.flags|= ALTER_ADD_INDEX; 
  2367.   }
  2368.     break;
  2369.   case 283:
  2370. #line 1599 "sql_yacc.yy"
  2371.     { Lex->comment= &yyvsp[0].lex_str; }
  2372.     break;
  2373.   case 284:
  2374. #line 1600 "sql_yacc.yy"
  2375.     { Lex->type|= BINCMP_FLAG; }
  2376.     break;
  2377.   case 285:
  2378. #line 1602 "sql_yacc.yy"
  2379.     {
  2380.     if (Lex->charset && !my_charset_same(Lex->charset,yyvsp[0].charset))
  2381.     {
  2382.       net_printf(YYTHD,ER_COLLATION_CHARSET_MISMATCH,
  2383.  yyvsp[0].charset->name,Lex->charset->csname);
  2384.       YYABORT;
  2385.     }
  2386.     else
  2387.     {
  2388.       Lex->charset=yyvsp[0].charset;
  2389.     }
  2390.   }
  2391.     break;
  2392.   case 286:
  2393. #line 1617 "sql_yacc.yy"
  2394.     { yyval.item= new Item_func_now_local(); }
  2395.     break;
  2396.   case 287:
  2397. #line 1618 "sql_yacc.yy"
  2398.     { yyval.item=yyvsp[0].item; }
  2399.     break;
  2400.   case 288:
  2401. #line 1622 "sql_yacc.yy"
  2402.     {}
  2403.     break;
  2404.   case 289:
  2405. #line 1623 "sql_yacc.yy"
  2406.     {}
  2407.     break;
  2408.   case 290:
  2409. #line 1628 "sql_yacc.yy"
  2410.     {
  2411.   if (!(yyval.charset=get_charset_by_csname(yyvsp[0].lex_str.str,MY_CS_PRIMARY,MYF(0))))
  2412.   {
  2413.     net_printf(YYTHD,ER_UNKNOWN_CHARACTER_SET,yyvsp[0].lex_str.str);
  2414.     YYABORT;
  2415.   }
  2416. }
  2417.     break;
  2418.   case 291:
  2419. #line 1635 "sql_yacc.yy"
  2420.     { yyval.charset= &my_charset_bin; }
  2421.     break;