Upgrade shr to ashr and lshr
[oota-llvm.git] / tools / llvm-upgrade / UpgradeLexer.cpp.cvs
index b0b35951fe5e61a12fe16d8d54c29738c05e4d05..de1ffbfd8d08f098876a3694010e602866006f10 100644 (file)
@@ -317,35 +317,35 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
        *yy_cp = '\0'; \
        yy_c_buf_p = yy_cp;
 
-#define YY_NUM_RULES 117
-#define YY_END_OF_BUFFER 118
-static yyconst short int yy_acclist[195] =
+#define YY_NUM_RULES 118
+#define YY_END_OF_BUFFER 119
+static yyconst short int yy_acclist[196] =
     {   0,
-      118,  116,  117,  115,  116,  117,  115,  117,  116,  117,
-      116,  117,  116,  117,  116,  117,  116,  117,  116,  117,
-      108,  116,  117,  108,  116,  117,    1,  116,  117,  116,
-      117,  116,  117,  116,  117,  116,  117,  116,  117,  116,
-      117,  116,  117,  116,  117,  116,  117,  116,  117,  116,
-      117,  116,  117,  116,  117,  116,  117,  116,  117,  116,
-      117,  116,  117,  116,  117,  116,  117,  116,  117,  116,
-      117,  107,  105,  104,  104,  111,  109,  113,  108,    1,
-       89,   38,   72,   22,  107,  104,  104,  112,  113,   19,
-      113,  114,   60,   71,   36,   31,   39,   63,    3,   51,
-
-       62,   80,   67,   88,   84,   61,   73,  106,  113,  113,
-       86,   46,   81,   82,   66,   97,   70,   98,   53,   85,
-       21,  110,   65,   69,   23,    4,   59,   64,   52,   68,
-       45,   11,  113,   33,    2,    5,   55,   57,   47,   75,
-       79,   77,   78,   76,   74,   49,   99,   48,   54,   20,
-       96,   42,   56,   27,   93,   41,    7,   91,   30,   95,
-       35,   58,   83,   90,   24,   25,   92,   50,   87,   40,
-        6,   26,   34,    8,   16,    9,   10,   32,   12,   14,
-       13,   29,   37,   15,   28,   94,  100,  102,  103,   43,
-      101,   17,   44,   18
+      119,  117,  118,  116,  117,  118,  116,  118,  117,  118,
+      117,  118,  117,  118,  117,  118,  117,  118,  117,  118,
+      109,  117,  118,  109,  117,  118,    1,  117,  118,  117,
+      118,  117,  118,  117,  118,  117,  118,  117,  118,  117,
+      118,  117,  118,  117,  118,  117,  118,  117,  118,  117,
+      118,  117,  118,  117,  118,  117,  118,  117,  118,  117,
+      118,  117,  118,  117,  118,  117,  118,  117,  118,  117,
+      118,  108,  106,  105,  105,  112,  110,  114,  109,    1,
+       90,   38,   72,   22,  108,  105,  105,  113,  114,   19,
+      114,  115,   60,   71,   36,   31,   39,   63,    3,   51,
+
+       62,   80,   67,   89,   84,   85,   61,   73,  107,  114,
+      114,   86,   46,   81,   82,   66,   98,   70,   99,   53,
+       87,   21,  111,   65,   69,   23,    4,   59,   64,   52,
+       68,   45,   11,  114,   33,    2,    5,   55,   57,   47,
+       75,   79,   77,   78,   76,   74,   49,  100,   48,   54,
+       20,   97,   42,   56,   27,   94,   41,    7,   92,   30,
+       96,   35,   58,   83,   91,   24,   25,   93,   50,   88,
+       40,    6,   26,   34,    8,   16,    9,   10,   32,   12,
+       14,   13,   29,   37,   15,   28,   95,  101,  103,  104,
+       43,  102,   17,   44,   18
 
     } ;
 
-static yyconst short int yy_accept[511] =
+static yyconst short int yy_accept[512] =
     {   0,
         1,    1,    1,    2,    4,    7,    9,   11,   13,   15,
        17,   19,   21,   24,   27,   30,   32,   34,   36,   38,
@@ -366,43 +366,44 @@ static yyconst short int yy_accept[511] =
       100,  100,  100,  100,  100,  100,  100,  100,  100,  100,
       100,  101,  101,  101,  101,  101,  101,  101,  101,  101,
       101,  102,  102,  102,  103,  103,  104,  105,  105,  105,
-      105,  105,  105,  105,  106,  106,  106,  106,  106,  106,
-      107,  107,  107,  107,  107,  107,  107,  107,  107,  107,
-
-      107,  107,  107,  107,  107,  107,  107,  107,  107,  107,
-      107,  108,  108,  109,  110,  110,  110,  110,  111,  111,
-      111,  111,  112,  112,  113,  114,  115,  115,  115,  115,
-      115,  115,  115,  115,  115,  115,  115,  115,  115,  115,
-      115,  115,  116,  116,  117,  118,  118,  118,  118,  118,
-      118,  118,  118,  118,  118,  119,  120,  121,  121,  121,
-      122,  122,  122,  123,  123,  124,  124,  124,  124,  124,
-      124,  124,  124,  124,  124,  125,  125,  125,  126,  126,
-      126,  127,  128,  128,  129,  130,  130,  130,  130,  130,
-      131,  131,  131,  132,  132,  133,  133,  133,  134,  135,
-
-      135,  135,  136,  136,  136,  136,  136,  136,  136,  136,
-      136,  136,  136,  136,  136,  136,  137,  137,  138,  138,
-      138,  138,  138,  138,  138,  139,  139,  139,  139,  139,
-      139,  139,  140,  140,  140,  141,  142,  143,  144,  145,
-      146,  147,  147,  147,  148,  148,  148,  148,  149,  150,
-      151,  151,  151,  151,  151,  151,  151,  151,  151,  152,
-      152,  153,  153,  153,  153,  153,  153,  153,  153,  154,
-      155,  156,  156,  156,  157,  157,  158,  158,  158,  158,
-      159,  159,  160,  161,  162,  163,  163,  163,  164,  164,
-      164,  165,  166,  167,  167,  168,  169,  170,  170,  170,
-
-      170,  170,  170,  170,  171,  171,  172,  173,  173,  173,
-      173,  173,  173,  173,  173,  173,  173,  173,  173,  174,
-      174,  174,  174,  174,  174,  174,  174,  174,  175,  175,
-      175,  175,  175,  176,  176,  176,  176,  176,  177,  178,
-      178,  178,  178,  178,  179,  179,  179,  179,  180,  180,
-      181,  182,  182,  182,  182,  182,  182,  182,  182,  182,
-      182,  182,  182,  182,  183,  183,  183,  183,  183,  183,
-      183,  183,  184,  184,  184,  184,  184,  185,  185,  185,
-      185,  185,  186,  186,  187,  187,  187,  187,  187,  187,
-      187,  187,  187,  187,  187,  187,  187,  188,  188,  189,
-
-      190,  190,  191,  191,  192,  193,  194,  194,  195,  195
+      105,  105,  105,  105,  106,  106,  107,  107,  107,  107,
+      107,  108,  108,  108,  108,  108,  108,  108,  108,  108,
+
+      108,  108,  108,  108,  108,  108,  108,  108,  108,  108,
+      108,  108,  109,  109,  110,  111,  111,  111,  111,  112,
+      112,  112,  112,  113,  113,  114,  115,  116,  116,  116,
+      116,  116,  116,  116,  116,  116,  116,  116,  116,  116,
+      116,  116,  116,  117,  117,  118,  119,  119,  119,  119,
+      119,  119,  119,  119,  119,  119,  120,  121,  122,  122,
+      122,  123,  123,  123,  124,  124,  125,  125,  125,  125,
+      125,  125,  125,  125,  125,  125,  126,  126,  126,  127,
+      127,  127,  128,  129,  129,  130,  131,  131,  131,  131,
+      131,  132,  132,  132,  133,  133,  134,  134,  134,  135,
+
+      136,  136,  136,  137,  137,  137,  137,  137,  137,  137,
+      137,  137,  137,  137,  137,  137,  137,  138,  138,  139,
+      139,  139,  139,  139,  139,  139,  140,  140,  140,  140,
+      140,  140,  140,  141,  141,  141,  142,  143,  144,  145,
+      146,  147,  148,  148,  148,  149,  149,  149,  149,  150,
+      151,  152,  152,  152,  152,  152,  152,  152,  152,  152,
+      153,  153,  154,  154,  154,  154,  154,  154,  154,  154,
+      155,  156,  157,  157,  157,  158,  158,  159,  159,  159,
+      159,  160,  160,  161,  162,  163,  164,  164,  164,  165,
+      165,  165,  166,  167,  168,  168,  169,  170,  171,  171,
+
+      171,  171,  171,  171,  171,  172,  172,  173,  174,  174,
+      174,  174,  174,  174,  174,  174,  174,  174,  174,  174,
+      175,  175,  175,  175,  175,  175,  175,  175,  175,  176,
+      176,  176,  176,  176,  177,  177,  177,  177,  177,  178,
+      179,  179,  179,  179,  179,  180,  180,  180,  180,  181,
+      181,  182,  183,  183,  183,  183,  183,  183,  183,  183,
+      183,  183,  183,  183,  183,  184,  184,  184,  184,  184,
+      184,  184,  184,  185,  185,  185,  185,  185,  186,  186,
+      186,  186,  186,  187,  187,  188,  188,  188,  188,  188,
+      188,  188,  188,  188,  188,  188,  188,  188,  189,  189,
+
+      190,  191,  191,  192,  192,  193,  194,  195,  195,  196,
+      196
     } ;
 
 static yyconst int yy_ec[256] =
@@ -446,129 +447,129 @@ static yyconst int yy_meta[44] =
         3,    3,    3
     } ;
 
-static yyconst short int yy_base[515] =
+static yyconst short int yy_base[516] =
     {   0,
-        0,    0, 1108, 1109, 1109, 1109, 1103, 1092,   36,   40,
+        0,    0, 1110, 1111, 1111, 1111, 1105, 1094,   36,   40,
        44,   50,   56,   62,    0,   63,   66,   81,   89,   47,
       100,   97,   76,   96,  111,   46,   48,  110,   68,  140,
-      126,  171,  119,  123,   73,  125, 1101, 1109, 1090, 1109,
+      126,  171,  119,  123,   73,  125, 1103, 1111, 1092, 1111,
         0,  159,  176,  199,  204,   95,  209,  224,  229,    0,
-      130,  165,  133,  120,  169,  151,  159,   31, 1089,  168,
+      130,  165,  133,  120,  169,  151,  159,   31, 1091,  168,
       143,  230,  189,  191,  233,  117,  145,  187,  241,  243,
       242,  246,  244,  251,  248,  254,  255,  253,  176,  256,
-      263,  258,  267,  261,  277,  281,  283, 1088,  284,  285,
+      263,  258,  267,  261,  277,  281,  283, 1090,  284,  285,
       286,  287,  265,  290,  300,  295,  291,  308,  294,  305,
 
-      316,  318, 1087,  320,  306,  304,  321,  324,  322,  327,
-      328,  289,  213,  330,  342,  338,  346,  349, 1086,    0,
-      358,  362, 1085,  376,  393,    0, 1084,  351,  350, 1083,
-      369,  363, 1082,  364, 1081,  366,  380,  382, 1080,  388,
-      394,  397,  398,  399,  400, 1079,  404,  401,  408,  402,
-      409,  410,  412,  419,  420,  422,  424,  423,  426,  427,
-      428,  434,  439,  113,  440,  442,  443,  445,  446,  447,
-     1078,  449,  453, 1077,  451, 1076, 1075,  478,  455,  457,
-      456,  458,  489, 1074,  469,  460,  492,  491,  472, 1073,
-      494,  495,  497,  496,  502,  503,  499,  505,  509,  514,
-
-      516,  518,  513,  519,  520,  523,  521,  534,  533,  536,
-     1072,  524, 1109,  547,  555,  561,  565,  570,  555,  571,
-      573, 1071,  574, 1070, 1069, 1068,  575,  576,  577,  579,
-      580,  583,  581,  586,  588,  584,  587,  592,  593,  595,
-      605, 1067,  597, 1066, 1065,  601,  609,  610,  607,  611,
-      615,  618,  617,  621, 1064, 1063, 1062,  622,  623, 1061,
-      624,  626,    0,  625, 1060,  630,  637,  627,  641,  642,
-      645,  639,  646,  652, 1059,  657,  653, 1058,  658,  655,
-     1057, 1056,  659, 1055, 1054,  663,  669,  671,  672, 1053,
-      673,  675, 1052,  677, 1051,  680,  678,  685, 1050,  687,
-
-      685, 1049,  688,  698,  697,  701,  686,  459,  699,  705,
-      708,  709,  710,  711,  712, 1048,  713, 1047,  714,  715,
-      716,  721,  722,  725, 1046,  729,  727,  731,  740,  741,
-      742, 1045,  735,  737, 1044, 1043, 1042, 1041, 1040, 1039,
-     1038,  743,  745, 1037,  747,  748,  752, 1036, 1035, 1034,
-      756,  754,  757,  764,  765,  767,  766,  768, 1033,  769,
-     1032,  770,  774,  773,  777,  776,  779,  784, 1031, 1030,
-     1029,  788,  783, 1028,  791, 1027,  790,  794,  795, 1026,
-      804, 1025, 1024, 1023, 1022,  796,  805, 1021,  809,  810,
-     1020, 1019, 1018,  812, 1017, 1016, 1015,  808,  813,  819,
-
-      815,  814,  816, 1014,  825, 1013, 1012,  821,  826,  326,
-      829,  832,  836,  833,  834,  837,  846,  838, 1011,  840,
-      848,  851,  853,  854,  859,  858,  861, 1010,  863,  867,
-      868,  864, 1009,  869,  871,  870,  874, 1008, 1005,  876,
-      885,  875,  880,  995,  892,  895,  896,  993,  878,  992,
-      991,  897,  898,  903,  905,  904,  879,  906,  911,  912,
-      914,  915,  916,  990,  917,  922,  918,  923,  924,  932,
-      925,  988,  935,  928,  936,  939,  987,  940,  929,  942,
-      945,  983,  947,  982,  953,  950,  956,  958,  959,  960,
-      961,  964,  963,  966,  967,  971,  979,  972,  830,  631,
-
-      974,  541,  977,  537,  462,  383,  976,  216, 1109, 1011,
-     1013,  226, 1017,   76
+      318,  320, 1089,  321,  306,  301,  322,  326,  324,  328,
+      330,  332,  213,  337,  346,  340,  327,  347, 1088,    0,
+      359,  363, 1087,  377,  394,    0, 1086,  353,  363, 1085,
+      369,  379, 1084,  370, 1083,  289,  367,  384, 1082,  389,
+      395,  396,  398,  399,  401, 1081,  402,  365,  406,  404,
+      409,  410,  385,  412,  420,  422,  424,  421,  426,  434,
+      435,  428,  436,  113,  429,  439,  440,  442,  449,  448,
+     1080,  450,  453, 1079,  454, 1078, 1077,  478,  455,  457,
+      456,  458,  489, 1076,  469, 1075,  460,  459,  491,  492,
+     1074,  493,  494,  497,  495,  496,  501,  499,  502,  503,
+
+      511,  512,  515,  517,  518,  519,  461,  523,  520,  529,
+      532, 1073,  533, 1111,  543,  551,  557,  561,  566,  567,
+      568,  569, 1072,  570, 1071, 1070, 1069,  571,  572,  573,
+      574,  576,  577,  579,  582,  585,  583,  580,  591,  592,
+      593,  594, 1068,  603, 1067, 1066,  604,  605,  607,  608,
+      609,  611,  613,  614,  618, 1065, 1064, 1063,  617,  621,
+     1062,  615,  620,    0,  622, 1061,  624,  627,  638,  640,
+      641,  642,  623,  644,  647, 1060,  648,  645, 1059,  653,
+      655, 1058, 1057,  659, 1056, 1055,  660,  665,  661,  667,
+     1054,  669,  672, 1053,  673, 1052,  676,  674,  681, 1051,
+
+      683,  681, 1050,  685,  694,  695,  700,  682,  691,  701,
+      704,  706,  707,  708,  709,  710, 1049,  711, 1048,  712,
+      713,  714,  716,  719,  725, 1047,  727,  729,  733,  732,
+      737,  742, 1046,  735,  722, 1045, 1044, 1043, 1042, 1041,
+     1040, 1039,  743,  747, 1038,  748,  749,  750, 1037, 1036,
+     1035,  754,  755,  752,  756,  764,  765,  762,  766, 1034,
+      768, 1033,  769,  771,  773,  779,  774,  776,  780, 1032,
+     1031, 1030,  787,  782, 1029,  784, 1028,  790,  793,  803,
+     1027,  797, 1026, 1025, 1024, 1023,  789,  795, 1022,  806,
+      807, 1021, 1020, 1019,  809, 1018, 1017, 1016,  811,  813,
+
+      814,  816,  819,  818, 1015,  820, 1014, 1013,  823,  824,
+      825,  827,  828,  830,  831,  832,  834,  843,  833, 1012,
+      840,  850,  853,  854,  846,  857,  856,  860, 1011,  861,
+      866,  867,  868, 1010,  872,  874,  870,  873, 1007,  997,
+      862,  883,  881,  878,  996,  894,  895,  886,  995,  880,
+      994,  992,  897,  896,  898,  904,  906,  907,  908,  910,
+      911,  912,  913,  914,  991,  916,  918,  920,  923,  929,
+      931,  924,  989,  932,  927,  935,  937,  988,  944,  925,
+      943,  945,  987,  949,  986,  951,  954,  955,  957,  958,
+      959,  960,  963,  964,  965,  969,  970,  981,  973,  980,
+
+      876,  975,  538,  976,  535,  462,  423,  978,  216, 1111,
+     1013, 1015,  226, 1019,   76
     } ;
 
-static yyconst short int yy_def[515] =
+static yyconst short int yy_def[516] =
     {   0,
-      509,    1,  509,  509,  509,  509,  510,  511,  512,  509,
-      511,  511,  511,  511,  513,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  510,  509,  511,  509,
-      514,  514,  509,  509,  511,  511,  511,  511,  511,  513,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  509,  514,
-      514,  509,  511,  511,  511,   49,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,   49,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  509,  509,  509,  509,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  178,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  509,  511,  511,
-
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
-
-      511,  511,  511,  511,  511,  511,  511,  511,    0,  509,
-      509,  509,  509,  509
+      510,    1,  510,  510,  510,  510,  511,  512,  513,  510,
+      512,  512,  512,  512,  514,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  511,  510,  512,  510,
+      515,  515,  510,  510,  512,  512,  512,  512,  512,  514,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  510,  515,
+      515,  510,  512,  512,  512,   49,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,   49,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  510,  510,  510,  510,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  178,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  510,  512,
+
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
+
+      512,  512,  512,  512,  512,  512,  512,  512,  512,    0,
+      510,  510,  510,  510,  510
     } ;
 
-static yyconst short int yy_nxt[1153] =
+static yyconst short int yy_nxt[1155] =
     {   0,
         4,    5,    6,    7,    8,    9,   10,   11,   12,   13,
        14,   14,   14,    4,   15,    8,    8,    8,   16,   17,
@@ -585,7 +586,7 @@ static yyconst short int yy_nxt[1153] =
        40,   65,   62,   40,   79,   66,   63,   67,   71,   75,
        68,   72,   80,   40,   40,   76,   40,   81,   73,   83,
        40,   82,   40,   40,   74,   89,   40,  113,   40,   40,
-      253,   90,   84,   40,  102,  115,   40,  118,   85,   92,
+      254,   90,   84,   40,  102,  115,   40,  118,   85,   92,
       114,  127,  131,   40,  130,  146,   40,  103,   40,   93,
       104,   94,   95,  139,   40,   96,   97,  105,  121,  121,
       121,  121,   40,  147,   98,  134,   99,  100,   40,  101,
@@ -595,7 +596,7 @@ static yyconst short int yy_nxt[1153] =
        40,  110,   40,  138,   40,  111,  112,  122,   44,   44,
        44,   44,   47,   45,   45,   45,   45,   40,  124,  124,
       124,  124,   40,  142,  148,  125,   40,  143,   41,   40,
-      206,  125,   47,   48,   48,   48,   48,   40,  126,  126,
+      207,  125,   47,   48,   48,   48,   48,   40,  126,  126,
       126,  126,   40,   40,  126,  126,   40,  126,  126,  126,
       126,  126,  126,  144,   40,   40,   40,   40,  140,   40,
       141,   40,  149,  150,   40,  145,   40,   40,   40,   40,
@@ -604,102 +605,102 @@ static yyconst short int yy_nxt[1153] =
        40,  162,  165,  167,   40,  169,   40,   40,   40,   40,
 
        40,  173,   40,   40,   40,  171,  179,   40,   40,  172,
-      174,  175,  187,   40,  205,  176,  180,   40,   40,   40,
-      181,   40,  177,  184,  190,  189,  185,  178,  182,   40,
-      188,   40,  186,   40,   40,   40,  183,   40,  196,   40,
-       40,   40,  191,   40,  192,  197,  194,  198,  201,  210,
-      204,   40,  193,  200,  199,   40,  207,  195,  208,   40,
-      209,  202,   40,   40,   40,  432,  203,  121,  121,  121,
-      121,  214,  214,  214,  214,  219,   40,   40,  215,   40,
-      211,  220,   40,  212,  215,  124,  124,  124,  124,   40,
-      223,  221,  125,   40,  224,   40,   40,  222,  125,  216,
-
-      217,   40,  218,  218,  218,  218,   40,   40,  225,  227,
-       40,   40,   40,   40,   40,   40,  230,   40,  226,  229,
-      235,   40,   40,   40,  237,   40,  233,  231,  232,  228,
-      234,  238,   40,   40,  236,   40,   40,   40,  243,   40,
-       40,   40,  247,  239,  244,  240,  246,   40,  241,  249,
-      250,  245,   40,   40,  248,   40,   40,  242,   40,   40,
-       40,  252,   40,  255,   40,  251,   40,  256,   40,   40,
-       40,   40,   40,   40,  258,   40,  254,  260,  366,  257,
-      267,  262,   40,  273,  259,   40,  261,  263,  263,  263,
-      263,  264,  266,  263,  263,  265,  263,  263,  263,  263,
-
-      263,  263,   40,  272,   40,   40,  276,   40,   40,   40,
-       40,  268,   40,  269,  274,   40,   40,  270,   40,  271,
-      275,  279,   40,  278,  281,  282,   40,   40,  280,   40,
-      277,   40,   40,   40,   40,  283,   40,   40,  287,  289,
-      288,  292,  293,  284,  286,  285,   40,   40,  290,   40,
-       40,  291,  294,  296,   40,  297,  214,  214,  214,  214,
-      295,  216,  216,  215,  298,  298,  298,  298,   40,  215,
-      298,  298,  298,  298,  218,  218,  218,  218,   40,  218,
-      218,  218,  218,   40,   40,  299,   40,   40,   40,   40,
-       40,  300,   40,   40,   40,  303,   40,   40,  307,   40,
-
-       40,   40,  312,  301,  302,   40,   40,  306,   40,  308,
-       40,  315,  304,  305,   40,  310,  311,  316,   40,  313,
-       40,  309,   40,   40,   40,  317,  314,  320,   40,  319,
-       40,   40,  321,  318,   40,   40,   40,   40,   40,   40,
-       40,  322,  324,   40,   40,  323,  325,  332,  326,  327,
-       40,  329,   40,  328,   40,   40,  333,  334,   40,   40,
-      335,  330,  331,  336,  338,   40,   40,  340,   40,  342,
-       40,   40,   40,  345,  343,  341,   40,  337,  339,  344,
-      346,  348,   40,  347,   40,   40,   40,  349,   40,  351,
-       40,   40,  350,   40,  298,  298,  298,  298,   40,   40,
-
-       40,   40,  352,  356,  358,  359,  360,  353,  361,  354,
-       40,   40,   40,  355,   40,  357,  362,  363,   40,  364,
-      365,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-      369,  367,  373,  374,   40,   40,  375,  368,   40,  370,
-       40,  372,   40,  376,   40,  377,  371,  380,   40,  382,
-       40,  383,  379,   40,   40,   40,   40,  378,   40,  381,
-       40,   40,  384,  385,  386,   40,  387,   40,  390,   40,
-       40,  389,  391,  388,  393,  395,  394,   40,   40,   40,
-       40,   40,   40,   40,  392,  399,   40,   40,  397,   40,
-       40,  398,   40,  396,  404,  402,   40,   40,  401,  406,
-
-      403,   40,  400,   40,   40,  410,  411,   40,   40,   40,
-      408,  407,  414,  416,  405,  409,  415,   40,   40,  412,
-      413,   40,   40,   40,  417,   40,   40,   40,   40,   40,
-      418,  420,   40,  421,   40,  419,  423,  422,   40,   40,
-      425,  426,   40,   40,  427,   40,   40,   40,  424,   40,
-       40,   40,  428,   40,  434,  430,  429,  433,  435,   40,
-      431,   40,  437,  436,   40,  438,   40,   40,  439,  443,
-      442,   40,   40,  440,   40,  444,   40,   40,  441,  446,
-       40,   40,   40,   40,   40,  448,  452,   40,   40,   40,
-      445,   40,   40,   40,  447,  459,  456,  453,   40,  460,
-
-      449,  454,  457,  450,  451,   40,  455,  458,   40,   40,
-       40,   40,  461,  462,  464,  465,   40,   40,   40,   40,
-      466,  470,  463,  468,   40,   40,  471,   40,   40,   40,
-       40,   40,  474,  469,  476,   40,   40,   40,   40,  467,
-      473,   40,   40,  475,  477,   40,  481,  472,   40,   40,
-      479,  478,   40,   40,  482,   40,  485,  484,   40,  480,
-       40,  483,  488,   40,  486,  489,   40,  487,  490,   40,
-      494,   40,   40,   40,   40,  491,   40,   40,  492,   40,
-       40,  493,  495,  501,   40,   40,  502,   40,  496,   40,
-       40,  498,   40,  497,  506,   40,   40,  499,  500,  507,
-
-       40,   40,  505,   40,   40,   40,   40,  504,   40,  503,
-      508,   37,   37,   37,   37,   39,   39,   50,   40,   50,
-       50,   40,   40,   40,   40,   40,   40,   40,   40,   40,
+      174,  175,  188,   40,   40,  176,  180,  225,   40,   40,
+      181,   40,  177,  184,  191,  190,  185,  178,  182,  186,
+      189,   40,  187,   40,   40,   40,  183,   40,  197,   40,
+       40,   40,  198,   40,  192,   40,  193,  195,  199,  202,
+       40,  211,  205,   40,  194,  201,  200,  206,  196,   40,
+       40,  212,  203,  208,  210,  209,   40,  204,  121,  121,
+      121,  121,  215,  215,  215,  215,   40,  220,   40,  216,
+       40,  213,   40,   40,  236,  216,  124,  124,  124,  124,
+       40,  222,   40,  125,  221,  226,  224,   40,   40,  125,
+
+      217,  218,   40,  219,  219,  219,  219,   40,   40,   40,
+      228,   40,   40,  223,   40,   40,  231,   40,  230,   40,
+      227,  242,   40,   40,  234,   40,  238,  232,  235,  233,
+      229,  239,  237,   40,   40,   40,   40,   40,  244,   40,
+      248,   40,   40,  240,  245,  241,  247,   40,   40,   40,
+      243,  246,   40,   40,  249,   40,  250,  251,  253,  252,
+      256,   40,   40,   40,  257,  255,   40,   40,   40,   40,
+       40,   40,   40,   40,   40,   40,  258,  259,  261,  293,
+      268,  275,   40,  274,  263,  260,  262,  264,  264,  264,
+      264,  265,  267,  264,  264,  266,  264,  264,  264,  264,
+
+      264,  264,   40,  273,   40,   40,   40,   40,   40,   40,
+       40,  269,   40,  270,   40,   40,   40,  271,  282,  272,
+      276,  280,  279,  283,   40,   40,  277,  281,   40,  278,
+       40,   40,   40,   40,  288,  284,   40,  289,  295,  286,
+      285,  287,   40,  290,  294,   40,   40,  291,   40,  297,
+      292,   40,  215,  215,  215,  215,  296,  217,  217,  216,
+      299,  299,  299,  299,  298,  216,  299,  299,  299,  299,
+      219,  219,  219,  219,   40,  219,  219,  219,  219,   40,
+       40,   40,   40,   40,   40,   40,   40,   40,  301,   40,
+       40,  304,   40,   40,  308,   40,   40,  300,   40,  302,
+
+      303,  313,  307,  309,   40,   40,   40,   40,  305,  306,
+      316,  311,  314,  312,  318,  317,   40,   40,   40,  310,
+       40,   40,   40,  321,   40,  315,   40,   40,   40,  322,
+       40,   40,  320,   40,   40,   40,   40,   40,  325,  319,
+       40,  326,  323,  324,  333,  327,  328,  335,  329,  330,
+      334,   40,  331,   40,   40,   40,  332,   40,   40,  342,
+       40,   40,  337,  339,  341,  346,   40,  343,   40,  344,
+      345,  336,   40,   40,   40,  347,  338,  340,   40,  352,
+       40,  349,   40,  348,  350,   40,   40,   40,  351,   40,
+      299,  299,  299,  299,   40,   40,   40,  353,   40,  357,
+
+      359,  360,  361,  354,   40,  362,  355,   40,   40,  356,
+      367,  358,  363,   40,   40,  364,  366,   40,  365,   40,
+       40,   40,   40,   40,   40,   40,   40,   40,  370,   40,
+      374,  375,   40,  368,  376,   40,  369,  371,   40,  373,
+       40,  377,   40,  378,  372,   40,   40,  381,   40,  380,
+       40,  383,  379,  384,  385,   40,   40,  382,  389,  386,
+       40,   40,   40,   40,  387,   40,  388,   40,   40,   40,
+      391,  390,  394,  392,  395,   40,  396,   40,   40,   40,
+      398,   40,   40,  400,   40,  393,   40,   40,  397,   40,
+      399,  405,   40,   40,  403,   40,  402,   40,  401,  404,
+
+       40,  407,   40,   40,  411,  412,   40,  409,   40,  408,
+       40,  410,  415,  414,  406,  416,   40,  418,  413,   40,
+       40,  417,   40,  419,   40,  420,   40,   40,  421,   40,
+      422,   40,   40,   40,  423,  426,   40,   40,   40,  424,
+       40,   40,  427,   40,   40,   40,   40,   40,  425,  428,
+      435,  430,  436,   40,  429,  434,   40,  431,  432,   40,
+      438,  437,  439,   40,  433,  440,   40,   40,  441,   40,
+       40,  444,  443,   40,   40,   40,  445,  447,  442,   40,
+       40,   40,  446,   40,  449,   40,   40,   40,  458,   40,
+      453,   40,  448,   40,   40,  457,   40,  461,  450,   40,
+
+      454,  460,  451,  452,  455,  459,  456,   40,   40,   40,
+       40,   40,  464,  463,  462,  466,  465,   40,  467,   40,
+       40,   40,  469,   40,   40,   40,   40,   40,  472,   40,
+      475,   40,  477,   40,  468,  470,   40,   40,   40,  474,
+       40,  476,   40,  478,   40,   40,  473,  479,   40,  471,
+       40,  482,  480,  483,  485,  486,   40,   40,   40,  481,
+      484,  490,   40,  487,   40,  488,  489,   40,   40,  491,
+       40,   40,   40,   40,  495,  492,   40,   40,   40,  494,
+      493,  496,   40,   40,  502,  503,   40,  497,   40,   40,
+      499,   40,  498,   40,   40,  507,  500,  501,  508,   40,
+
+       40,   40,   40,  506,   40,   40,  505,   40,   40,   40,
+       40,  504,  509,   37,   37,   37,   37,   39,   39,   50,
+       40,   50,   50,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,  213,
-
-       40,   40,   40,   40,  119,   40,   38,  509,    3,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509
+       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
+
+       40,  214,   40,   40,   40,   40,  119,   40,   38,  510,
+        3,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510
     } ;
 
-static yyconst short int yy_chk[1153] =
+static yyconst short int yy_chk[1155] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -708,7 +709,7 @@ static yyconst short int yy_chk[1153] =
         1,    1,    1,    9,   58,    9,    9,    9,    9,   10,
        10,   10,   10,   11,   11,   11,   11,   11,   12,   26,
        20,   27,   58,   12,   13,   13,   13,   13,   13,   13,
-       14,   14,   14,   14,   14,   14,   16,   20,  514,   17,
+       14,   14,   14,   14,   14,   14,   16,   20,  515,   17,
        27,   29,   27,   26,   16,   35,   35,   20,   17,   23,
        29,   16,   17,   16,   18,   16,   13,   17,   16,   18,
 
@@ -725,7 +726,7 @@ static yyconst short int yy_chk[1153] =
 
        68,   32,   63,   60,   64,   32,   32,   44,   44,   44,
        44,   44,   45,   45,   45,   45,   45,   45,   47,   47,
-       47,   47,   47,   63,   68,   47,  113,   64,  512,  508,
+       47,   47,   47,   63,   68,   47,  113,   64,  513,  509,
       113,   47,   48,   48,   48,   48,   48,   48,   49,   49,
        49,   49,   49,   62,   49,   49,   65,   49,   49,   49,
        49,   49,   49,   65,   69,   71,   70,   73,   62,   72,
@@ -734,100 +735,100 @@ static yyconst short int yy_chk[1153] =
        83,   81,   84,   82,   75,   76,   80,   77,   78,   78,
        85,   78,   80,   81,   86,   83,   87,   89,   90,   91,
 
-       92,   87,  112,   94,   97,   85,   93,   99,   96,   86,
-       89,   90,   97,   95,  112,   91,   94,  106,  100,  105,
-       95,   98,   91,   96,  100,   99,   96,   92,   95,  101,
-       98,  102,   96,  104,  107,  109,   95,  108,  105,  410,
-      110,  111,  101,  114,  102,  106,  104,  107,  110,  116,
-      111,  116,  102,  109,  108,  115,  114,  104,  114,  117,
-      115,  110,  118,  129,  128,  410,  110,  121,  121,  121,
-      121,  122,  122,  122,  122,  128,  132,  134,  122,  136,
-      117,  129,  131,  118,  122,  124,  124,  124,  124,  124,
-      134,  131,  124,  137,  136,  138,  506,  132,  124,  125,
-
-      125,  140,  125,  125,  125,  125,  125,  141,  137,  140,
-      142,  143,  144,  145,  148,  150,  143,  147,  138,  142,
-      148,  149,  151,  152,  150,  153,  147,  144,  145,  141,
-      147,  151,  154,  155,  149,  156,  158,  157,  155,  159,
-      160,  161,  158,  151,  156,  152,  157,  162,  153,  160,
-      161,  156,  163,  165,  159,  166,  167,  154,  168,  169,
-      170,  163,  172,  166,  175,  162,  173,  167,  179,  181,
-      180,  182,  308,  186,  169,  505,  165,  172,  308,  168,
-      182,  175,  185,  186,  170,  189,  173,  178,  178,  178,
+       92,   87,  136,   94,   97,   85,   93,   99,   96,   86,
+       89,   90,   97,   95,  106,   91,   94,  136,  100,  105,
+       95,   98,   91,   96,  100,   99,   96,   92,   95,   96,
+       98,  101,   96,  102,  104,  107,   95,  109,  105,  108,
+      117,  110,  106,  111,  101,  112,  102,  104,  107,  110,
+      114,  116,  111,  116,  102,  109,  108,  112,  104,  115,
+      118,  117,  110,  114,  115,  114,  128,  110,  121,  121,
+      121,  121,  122,  122,  122,  122,  129,  128,  148,  122,
+      137,  118,  131,  134,  148,  122,  124,  124,  124,  124,
+      124,  131,  132,  124,  129,  137,  134,  138,  153,  124,
+
+      125,  125,  140,  125,  125,  125,  125,  125,  141,  142,
+      140,  143,  144,  132,  145,  147,  143,  150,  142,  149,
+      138,  153,  151,  152,  147,  154,  150,  144,  147,  145,
+      141,  151,  149,  155,  158,  156,  507,  157,  155,  159,
+      158,  162,  165,  151,  156,  152,  157,  160,  161,  163,
+      154,  156,  166,  167,  159,  168,  160,  161,  163,  162,
+      166,  170,  169,  172,  167,  165,  173,  175,  179,  181,
+      180,  182,  188,  187,  207,  506,  168,  169,  172,  207,
+      182,  188,  185,  187,  175,  170,  173,  178,  178,  178,
       178,  179,  181,  178,  178,  180,  178,  178,  178,  178,
 
-      178,  178,  183,  185,  188,  187,  189,  191,  192,  194,
-      193,  183,  197,  183,  187,  195,  196,  183,  198,  183,
-      188,  193,  199,  192,  195,  196,  203,  200,  194,  201,
-      191,  202,  204,  205,  207,  197,  206,  212,  201,  203,
-      202,  206,  207,  198,  200,  199,  209,  208,  204,  210,
-      504,  205,  208,  210,  502,  212,  214,  214,  214,  214,
-      209,  215,  215,  214,  215,  215,  215,  215,  219,  214,
-      216,  216,  216,  216,  217,  217,  217,  217,  217,  218,
-      218,  218,  218,  218,  220,  219,  221,  223,  227,  228,
-      229,  220,  230,  231,  233,  227,  232,  236,  231,  234,
-
-      237,  235,  236,  221,  223,  238,  239,  230,  240,  232,
-      243,  239,  228,  229,  246,  234,  235,  240,  241,  237,
-      249,  233,  247,  248,  250,  241,  238,  247,  251,  246,
-      253,  252,  248,  243,  254,  258,  259,  261,  264,  262,
-      268,  249,  251,  266,  500,  250,  252,  264,  253,  254,
-      267,  259,  272,  258,  269,  270,  266,  267,  271,  273,
-      268,  261,  262,  269,  270,  274,  277,  271,  280,  273,
-      276,  279,  283,  277,  274,  272,  286,  269,  270,  276,
-      279,  283,  287,  280,  288,  289,  291,  286,  292,  288,
-      294,  297,  287,  296,  298,  298,  298,  298,  301,  307,
-
-      300,  303,  289,  296,  297,  300,  301,  291,  303,  292,
-      305,  304,  309,  294,  306,  296,  304,  305,  310,  306,
-      307,  311,  312,  313,  314,  315,  317,  319,  320,  321,
-      311,  309,  315,  317,  322,  323,  319,  310,  324,  312,
-      327,  314,  326,  320,  328,  321,  313,  324,  333,  327,
-      334,  328,  323,  329,  330,  331,  342,  322,  343,  326,
-      345,  346,  329,  330,  331,  347,  333,  352,  343,  351,
-      353,  342,  345,  334,  347,  352,  351,  354,  355,  357,
-      356,  358,  360,  362,  346,  356,  364,  363,  354,  366,
-      365,  355,  367,  353,  363,  360,  373,  368,  358,  365,
-
-      362,  372,  357,  377,  375,  372,  372,  378,  379,  386,
-      367,  366,  377,  379,  364,  368,  378,  381,  387,  373,
-      375,  398,  389,  390,  381,  394,  399,  402,  401,  403,
-      386,  389,  400,  390,  408,  387,  398,  394,  405,  409,
-      400,  401,  411,  499,  402,  412,  414,  415,  399,  413,
-      416,  418,  403,  420,  412,  408,  405,  411,  413,  417,
-      409,  421,  415,  414,  422,  416,  423,  424,  417,  422,
-      421,  426,  425,  418,  427,  423,  429,  432,  420,  425,
-      430,  431,  434,  436,  435,  427,  432,  437,  442,  440,
-      424,  449,  457,  443,  426,  442,  437,  434,  441,  443,
-
-      429,  435,  440,  430,  431,  445,  436,  441,  446,  447,
-      452,  453,  445,  446,  449,  452,  454,  456,  455,  458,
-      453,  457,  447,  455,  459,  460,  458,  461,  462,  463,
-      465,  467,  461,  456,  463,  466,  468,  469,  471,  454,
-      460,  474,  479,  462,  465,  470,  469,  459,  473,  475,
-      467,  466,  476,  478,  470,  480,  474,  473,  481,  468,
-      483,  471,  478,  486,  475,  479,  485,  476,  480,  487,
-      486,  488,  489,  490,  491,  481,  493,  492,  483,  494,
-      495,  485,  487,  493,  496,  498,  494,  501,  488,  507,
-      503,  490,  497,  489,  501,  484,  482,  491,  492,  503,
-
-      477,  472,  498,  464,  451,  450,  448,  496,  444,  495,
-      507,  510,  510,  510,  510,  511,  511,  513,  439,  513,
-      513,  438,  433,  428,  419,  407,  406,  404,  397,  396,
-      395,  393,  392,  391,  388,  385,  384,  383,  382,  380,
-      376,  374,  371,  370,  369,  361,  359,  350,  349,  348,
-      344,  341,  340,  339,  338,  337,  336,  335,  332,  325,
-      318,  316,  302,  299,  295,  293,  290,  285,  284,  282,
-      281,  278,  275,  265,  260,  257,  256,  255,  245,  244,
-      242,  226,  225,  224,  222,  211,  190,  184,  177,  176,
-      174,  171,  146,  139,  135,  133,  130,  127,  123,  119,
-
-      103,   88,   59,   39,   37,    8,    7,    3,  509,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509,  509,  509,  509,  509,  509,  509,  509,  509,
-      509,  509
+      178,  178,  183,  185,  189,  190,  192,  193,  195,  196,
+      194,  183,  198,  183,  197,  199,  200,  183,  196,  183,
+      189,  194,  193,  197,  201,  202,  190,  195,  203,  192,
+      204,  205,  206,  209,  202,  198,  208,  203,  209,  200,
+      199,  201,  210,  204,  208,  211,  213,  205,  505,  211,
+      206,  503,  215,  215,  215,  215,  210,  216,  216,  215,
+      216,  216,  216,  216,  213,  215,  217,  217,  217,  217,
+      218,  218,  218,  218,  218,  219,  219,  219,  219,  219,
+      220,  221,  222,  224,  228,  229,  230,  231,  221,  232,
+      233,  228,  234,  238,  232,  235,  237,  220,  236,  222,
+
+      224,  237,  231,  233,  239,  240,  241,  242,  229,  230,
+      240,  235,  238,  236,  242,  241,  244,  247,  248,  234,
+      249,  250,  251,  248,  252,  239,  253,  254,  262,  249,
+      259,  255,  247,  263,  260,  265,  273,  267,  252,  244,
+      268,  253,  250,  251,  265,  254,  255,  268,  259,  260,
+      267,  269,  262,  270,  271,  272,  263,  274,  278,  273,
+      275,  277,  270,  271,  272,  278,  280,  274,  281,  275,
+      277,  269,  284,  287,  289,  280,  270,  271,  288,  289,
+      290,  284,  292,  281,  287,  293,  295,  298,  288,  297,
+      299,  299,  299,  299,  302,  308,  301,  290,  304,  297,
+
+      298,  301,  302,  292,  309,  304,  293,  305,  306,  295,
+      309,  297,  305,  307,  310,  306,  308,  311,  307,  312,
+      313,  314,  315,  316,  318,  320,  321,  322,  312,  323,
+      316,  318,  324,  310,  320,  335,  311,  313,  325,  315,
+      327,  321,  328,  322,  314,  330,  329,  325,  334,  324,
+      331,  328,  323,  329,  330,  332,  343,  327,  335,  331,
+      344,  346,  347,  348,  332,  354,  334,  352,  353,  355,
+      344,  343,  348,  346,  352,  358,  353,  356,  357,  359,
+      355,  361,  363,  357,  364,  347,  365,  367,  354,  368,
+      356,  364,  366,  369,  361,  374,  359,  376,  358,  363,
+
+      373,  366,  387,  378,  373,  373,  379,  368,  388,  367,
+      382,  369,  378,  376,  365,  379,  380,  382,  374,  390,
+      391,  380,  395,  387,  399,  388,  400,  401,  390,  402,
+      391,  404,  403,  406,  395,  401,  409,  410,  411,  399,
+      412,  413,  402,  414,  415,  416,  419,  417,  400,  403,
+      413,  406,  414,  421,  404,  412,  418,  409,  410,  425,
+      416,  415,  417,  422,  411,  418,  423,  424,  419,  427,
+      426,  423,  422,  428,  430,  441,  424,  426,  421,  431,
+      432,  433,  425,  437,  428,  435,  438,  436,  441,  501,
+      433,  444,  427,  450,  443,  438,  442,  444,  430,  448,
+
+      435,  443,  431,  432,  436,  442,  437,  446,  447,  454,
+      453,  455,  448,  447,  446,  453,  450,  456,  454,  457,
+      458,  459,  456,  460,  461,  462,  463,  464,  459,  466,
+      462,  467,  464,  468,  455,  457,  469,  472,  480,  461,
+      475,  463,  470,  466,  471,  474,  460,  467,  476,  458,
+      477,  470,  468,  471,  474,  475,  481,  479,  482,  469,
+      472,  480,  484,  476,  486,  477,  479,  487,  488,  481,
+      489,  490,  491,  492,  487,  482,  493,  494,  495,  486,
+      484,  488,  496,  497,  494,  495,  499,  489,  502,  504,
+      491,  508,  490,  500,  498,  502,  492,  493,  504,  485,
+
+      483,  478,  473,  499,  465,  452,  497,  451,  449,  445,
+      440,  496,  508,  511,  511,  511,  511,  512,  512,  514,
+      439,  514,  514,  434,  429,  420,  408,  407,  405,  398,
+      397,  396,  394,  393,  392,  389,  386,  385,  384,  383,
+      381,  377,  375,  372,  371,  370,  362,  360,  351,  350,
+      349,  345,  342,  341,  340,  339,  338,  337,  336,  333,
+      326,  319,  317,  303,  300,  296,  294,  291,  286,  285,
+      283,  282,  279,  276,  266,  261,  258,  257,  256,  246,
+      245,  243,  227,  226,  225,  223,  212,  191,  186,  184,
+      177,  176,  174,  171,  146,  139,  135,  133,  130,  127,
+
+      123,  119,  103,   88,   59,   39,   37,    8,    7,    3,
+      510,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510,  510,  510,  510,  510,  510,  510,
+      510,  510,  510,  510
     } ;
 
 static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
@@ -904,7 +905,7 @@ char *yytext;
 /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
  * it to deal with 64 bit numbers.
  */
-#line 908 "UpgradeLexer.cpp"
+#line 909 "UpgradeLexer.cpp"
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -1058,7 +1059,7 @@ YY_DECL
 #line 98 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
 
 
-#line 1062 "UpgradeLexer.cpp"
+#line 1063 "UpgradeLexer.cpp"
 
        if ( yy_init )
                {
@@ -1106,14 +1107,14 @@ yy_match:
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                                {
                                yy_current_state = (int) yy_def[yy_current_state];
-                               if ( yy_current_state >= 510 )
+                               if ( yy_current_state >= 511 )
                                        yy_c = yy_meta[(unsigned int) yy_c];
                                }
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                        *yy_state_ptr++ = yy_current_state;
                        ++yy_cp;
                        }
-               while ( yy_current_state != 509 );
+               while ( yy_current_state != 510 );
 
 yy_find_action:
                yy_current_state = *--yy_state_ptr;
@@ -1572,7 +1573,7 @@ YY_RULE_SETUP
 case 85:
 YY_RULE_SETUP
 #line 189 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LSHR); }
+{ RET_TOK( SHR); }
        YY_BREAK
 case 86:
 YY_RULE_SETUP
@@ -1582,32 +1583,32 @@ YY_RULE_SETUP
 case 87:
 YY_RULE_SETUP
 #line 191 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( VAARG); }
+{ RET_TOK( LSHR); }
        YY_BREAK
 case 88:
 YY_RULE_SETUP
 #line 192 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( RET); }
+{ RET_TOK( VAARG); }
        YY_BREAK
 case 89:
 YY_RULE_SETUP
 #line 193 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( BR); }
+{ RET_TOK( RET); }
        YY_BREAK
 case 90:
 YY_RULE_SETUP
 #line 194 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SWITCH); }
+{ RET_TOK( BR); }
        YY_BREAK
 case 91:
 YY_RULE_SETUP
 #line 195 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( INVOKE); }
+{ RET_TOK( SWITCH); }
        YY_BREAK
 case 92:
 YY_RULE_SETUP
 #line 196 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UNWIND); }
+{ RET_TOK( INVOKE); }
        YY_BREAK
 case 93:
 YY_RULE_SETUP
@@ -1617,62 +1618,62 @@ YY_RULE_SETUP
 case 94:
 YY_RULE_SETUP
 #line 198 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UNREACHABLE); }
+{ RET_TOK( UNWIND); }
        YY_BREAK
 case 95:
 YY_RULE_SETUP
-#line 200 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( MALLOC); }
+#line 199 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+{ RET_TOK( UNREACHABLE); }
        YY_BREAK
 case 96:
 YY_RULE_SETUP
 #line 201 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ALLOCA); }
+{ RET_TOK( MALLOC); }
        YY_BREAK
 case 97:
 YY_RULE_SETUP
 #line 202 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FREE); }
+{ RET_TOK( ALLOCA); }
        YY_BREAK
 case 98:
 YY_RULE_SETUP
 #line 203 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LOAD); }
+{ RET_TOK( FREE); }
        YY_BREAK
 case 99:
 YY_RULE_SETUP
 #line 204 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( STORE); }
+{ RET_TOK( LOAD); }
        YY_BREAK
 case 100:
 YY_RULE_SETUP
 #line 205 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( GETELEMENTPTR); }
+{ RET_TOK( STORE); }
        YY_BREAK
 case 101:
 YY_RULE_SETUP
-#line 207 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( EXTRACTELEMENT); }
+#line 206 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+{ RET_TOK( GETELEMENTPTR); }
        YY_BREAK
 case 102:
 YY_RULE_SETUP
 #line 208 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( INSERTELEMENT); }
+{ RET_TOK( EXTRACTELEMENT); }
        YY_BREAK
 case 103:
 YY_RULE_SETUP
 #line 209 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SHUFFLEVECTOR); }
+{ RET_TOK( INSERTELEMENT); }
        YY_BREAK
 case 104:
 YY_RULE_SETUP
-#line 212 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( VAR_ID); }
+#line 210 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+{ RET_TOK( SHUFFLEVECTOR); }
        YY_BREAK
 case 105:
 YY_RULE_SETUP
 #line 213 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LABELSTR); }
+{ RET_TOK( VAR_ID); }
        YY_BREAK
 case 106:
 YY_RULE_SETUP
@@ -1682,45 +1683,50 @@ YY_RULE_SETUP
 case 107:
 YY_RULE_SETUP
 #line 215 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( STRINGCONSTANT ); }
+{ RET_TOK( LABELSTR); }
        YY_BREAK
 case 108:
 YY_RULE_SETUP
 #line 216 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( EUINT64VAL ); }
+{ RET_TOK( STRINGCONSTANT ); }
        YY_BREAK
 case 109:
 YY_RULE_SETUP
 #line 217 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ESINT64VAL ); }
+{ RET_TOK( EUINT64VAL ); }
        YY_BREAK
 case 110:
 YY_RULE_SETUP
 #line 218 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( yytext[0] == 's' ? ESINT64VAL : EUINT64VAL ); }
+{ RET_TOK( ESINT64VAL ); }
        YY_BREAK
 case 111:
 YY_RULE_SETUP
 #line 219 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UINTVAL); }
+{ RET_TOK( yytext[0] == 's' ? ESINT64VAL : EUINT64VAL ); }
        YY_BREAK
 case 112:
 YY_RULE_SETUP
 #line 220 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SINTVAL); }
+{ RET_TOK( UINTVAL); }
        YY_BREAK
 case 113:
 YY_RULE_SETUP
 #line 221 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FPVAL); }
+{ RET_TOK( SINTVAL); }
        YY_BREAK
 case 114:
 YY_RULE_SETUP
 #line 222 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
 { RET_TOK( FPVAL); }
        YY_BREAK
-case YY_STATE_EOF(INITIAL):
+case 115:
+YY_RULE_SETUP
 #line 223 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+{ RET_TOK( FPVAL); }
+       YY_BREAK
+case YY_STATE_EOF(INITIAL):
+#line 224 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
 {
                   /* Make sure to free the internal buffers for flex when we are
                    * done reading our input!
@@ -1729,22 +1735,22 @@ case YY_STATE_EOF(INITIAL):
                   return EOF;
                 }
        YY_BREAK
-case 115:
+case 116:
 YY_RULE_SETUP
-#line 231 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+#line 232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
 { /* Ignore whitespace */ }
        YY_BREAK
-case 116:
+case 117:
 YY_RULE_SETUP
-#line 232 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+#line 233 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
 { return yytext[0]; }
        YY_BREAK
-case 117:
+case 118:
 YY_RULE_SETUP
-#line 234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+#line 235 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
 YY_FATAL_ERROR( "flex scanner jammed" );
        YY_BREAK
-#line 1748 "UpgradeLexer.cpp"
+#line 1754 "UpgradeLexer.cpp"
 
        case YY_END_OF_BUFFER:
                {
@@ -2031,7 +2037,7 @@ static yy_state_type yy_get_previous_state()
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                        {
                        yy_current_state = (int) yy_def[yy_current_state];
-                       if ( yy_current_state >= 510 )
+                       if ( yy_current_state >= 511 )
                                yy_c = yy_meta[(unsigned int) yy_c];
                        }
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2061,11 +2067,11 @@ yy_state_type yy_current_state;
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                {
                yy_current_state = (int) yy_def[yy_current_state];
-               if ( yy_current_state >= 510 )
+               if ( yy_current_state >= 511 )
                        yy_c = yy_meta[(unsigned int) yy_c];
                }
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
-       yy_is_jam = (yy_current_state == 509);
+       yy_is_jam = (yy_current_state == 510);
        if ( ! yy_is_jam )
                *yy_state_ptr++ = yy_current_state;
 
@@ -2622,5 +2628,5 @@ int main()
        return 0;
        }
 #endif
-#line 234 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"
+#line 235 "/proj/llvm/llvm-4/tools/llvm-upgrade/UpgradeLexer.l"