Changeset da2bd0 in git


Ignore:
Timestamp:
Jan 17, 2011, 5:15:19 PM (13 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', '4a9821a93ffdc22a6696668bd4f6b8c9de3e6c5f')
Children:
a958697c884b42e8cd67d8ed8b9cb27b5bbd8040
Parents:
686ce31f34d1d6ac72b239af2d6f5841f2d5cb75
Message:
fix tr307 again

git-svn-id: file:///usr/local/Singular/svn/trunk@13794 2c84dea3-7e68-4137-9b89-c4e89433aadc
Location:
Singular
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • Singular/grammar.cc

    r686ce3 rda2bd0  
    743743#define YYFINAL  2
    744744/* YYLAST -- Last index in YYTABLE.  */
    745 #define YYLAST   2500
     745#define YYLAST   1969
    746746
    747747/* YYNTOKENS -- Number of terminals.  */
     
    750750#define YYNNTS  44
    751751/* YYNRULES -- Number of rules.  */
    752 #define YYNRULES  167
     752#define YYNRULES  168
    753753/* YYNRULES -- Number of states.  */
    754 #define YYNSTATES  384
     754#define YYNSTATES  373
    755755
    756756/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
     
    814814      43,    45,    47,    49,    51,    53,    55,    57,    59,    61,
    815815      64,    66,    68,    72,    76,    81,    85,    87,    89,    91,
    816       95,    97,    99,   101,   105,   112,   117,   122,   127,   131,
    817      136,   141,   145,   150,   157,   166,   173,   182,   187,   192,
    818      199,   204,   211,   220,   229,   233,   238,   247,   252,   261,
    819      266,   275,   280,   284,   290,   291,   297,   300,   302,   305,
    820      308,   312,   316,   320,   324,   328,   332,   336,   340,   344,
    821      348,   351,   354,   357,   360,   362,   366,   368,   370,   373,
    822      376,   379,   382,   391,   394,   403,   406,   410,   413,   415,
    823      417,   423,   425,   427,   432,   434,   438,   440,   444,   446,
    824      447,   452,   456,   459,   463,   466,   469,   473,   478,   483,
    825      488,   493,   498,   503,   508,   513,   518,   525,   532,   539,
    826      546,   553,   560,   567,   574,   578,   580,   589,   592,   595,
    827      597,   599,   602,   605,   607,   613,   616,   622,   624,   626,
    828      630,   636,   640,   644,   649,   652,   655,   660
     816      96,   100,   102,   104,   106,   110,   117,   122,   127,   132,
     817     136,   141,   146,   150,   155,   162,   171,   178,   187,   192,
     818     197,   204,   209,   216,   225,   234,   238,   243,   252,   257,
     819     266,   271,   280,   285,   289,   295,   296,   302,   305,   307,
     820     310,   313,   317,   321,   325,   329,   333,   337,   341,   345,
     821     349,   353,   356,   359,   362,   365,   367,   371,   373,   375,
     822     378,   381,   384,   387,   396,   399,   408,   411,   415,   418,
     823     420,   422,   428,   430,   432,   437,   439,   443,   445,   449,
     824     451,   452,   457,   461,   464,   468,   471,   474,   478,   483,
     825     488,   493,   498,   503,   508,   513,   518,   523,   530,   537,
     826     544,   551,   558,   565,   572,   579,   583,   585,   594,   597,
     827     600,   602,   604,   607,   610,   612,   618,   621,   627,   629,
     828     631,   635,   641,   645,   649,   654,   657,   660,   665
    829829};
    830830
     
    839839      -1,   187,    -1,   178,    -1,   179,    -1,   181,    -1,   182,
    840840      -1,   159,   153,    -1,   113,    -1,   160,    -1,   152,    11,
    841      152,    -1,   154,   142,   143,    -1,   154,   142,   153,   143,
     841     152,    -1,   152,   142,   143,    -1,   152,   142,   153,   143,
    842842      -1,   133,   153,   134,    -1,   111,    -1,   126,    -1,   163,
    843       -1,   153,   136,   154,    -1,   154,    -1,   158,    -1,   152,
    844       -1,   142,   153,   143,    -1,   154,   133,   154,   136,   154,
    845      134,    -1,   154,   133,   154,   134,    -1,    98,   142,   154,
    846      143,    -1,    99,   142,   153,   143,    -1,    99,   142,   143,
    847       -1,   100,   142,   154,   143,    -1,   161,   142,   153,   143,
    848       -1,   161,   142,   143,    -1,    90,   142,   154,   143,    -1,
    849       91,   142,   154,   136,   154,   143,    -1,    92,   142,   154,
    850      136,   154,   136,   154,   143,    -1,    95,   142,   154,   136,
    851      154,   143,    -1,    95,   142,   154,   136,   154,   136,   154,
    852      143,    -1,    93,   142,   154,   143,    -1,    94,   142,   154,
    853      143,    -1,    93,   142,   154,   136,   154,   143,    -1,    96,
    854      142,   154,   143,    -1,    96,   142,   154,   136,   154,   143,
    855       -1,    94,   142,   154,   136,   154,   136,   154,   143,    -1,
    856       96,   142,   154,   136,   154,   136,   154,   143,    -1,    97,
    857      142,   143,    -1,    97,   142,   153,   143,    -1,    19,   142,
    858      154,   136,   154,   136,   154,   143,    -1,    19,   142,   154,
    859      143,    -1,    13,   142,   154,   136,   154,   136,   154,   143,
    860       -1,    13,   142,   154,   143,    -1,    15,   142,   164,   136,
    861      164,   136,   168,   143,    -1,    15,   142,   154,   143,    -1,
    862      156,   154,   157,    -1,   156,   154,   127,   154,   157,    -1,
    863       -1,   118,   142,   155,   154,   143,    -1,   119,   142,    -1,
    864      143,    -1,   154,    10,    -1,   154,     7,    -1,   154,   130,
    865      154,    -1,   154,   131,   154,    -1,   154,   132,   154,    -1,
    866      154,   135,   154,    -1,   154,   128,   154,    -1,   154,   138,
    867      154,    -1,   154,     9,   154,    -1,   154,     4,   154,    -1,
    868      154,     3,   154,    -1,   154,   139,   154,    -1,     8,   154,
    869       -1,   131,   154,    -1,   162,   169,    -1,   153,   127,    -1,
    870      112,    -1,   144,   154,   144,    -1,    17,    -1,    20,    -1,
    871       98,   152,    -1,    99,   152,    -1,   100,   152,    -1,   161,
    872      152,    -1,    19,   152,   133,   154,   134,   133,   154,   134,
    873       -1,    19,   152,    -1,    13,   152,   133,   154,   134,   133,
    874      154,   134,    -1,    13,   152,    -1,   162,   136,   152,    -1,
    875       14,   152,    -1,   109,    -1,   154,    -1,   142,   154,   136,
    876      153,   143,    -1,   112,    -1,   165,    -1,   165,   142,   153,
    877      143,    -1,   166,    -1,   166,   136,   167,    -1,   166,    -1,
    878      142,   167,   143,    -1,   127,    -1,    -1,   128,   163,   171,
    879      137,    -1,   103,   109,   137,    -1,   103,   137,    -1,   101,
    880      109,   137,    -1,   102,   153,    -1,   104,   152,    -1,   175,
    881      136,   152,    -1,   106,   142,    98,   143,    -1,   106,   142,
    882       99,   143,    -1,   106,   142,   100,   143,    -1,   106,   142,
    883      161,   143,    -1,   106,   142,    15,   143,    -1,   106,   142,
    884       19,   143,    -1,   106,   142,    13,   143,    -1,   106,   142,
    885       14,   143,    -1,   106,   142,   152,   143,    -1,   106,   142,
    886      152,   136,    98,   143,    -1,   106,   142,   152,   136,    99,
    887      143,    -1,   106,   142,   152,   136,   100,   143,    -1,   106,
    888      142,   152,   136,   161,   143,    -1,   106,   142,   152,   136,
    889       15,   143,    -1,   106,   142,   152,   136,    19,   143,    -1,
    890      106,   142,   152,   136,    13,   143,    -1,   106,   142,   152,
    891      136,    14,   143,    -1,   106,   142,   143,    -1,    15,    -1,
    892      177,   152,   169,   164,   136,   164,   136,   168,    -1,   177,
    893      152,    -1,   126,   163,    -1,   107,    -1,    40,    -1,   180,
    894      154,    -1,   108,   154,    -1,   153,    -1,   121,   142,   154,
    895      143,   110,    -1,   117,   110,    -1,   121,   142,   154,   143,
    896      115,    -1,   115,    -1,   116,    -1,   123,   109,   110,    -1,
    897      120,   109,   109,   109,   110,    -1,    14,   160,   110,    -1,
    898      114,   109,   110,    -1,   114,   109,   109,   110,    -1,   125,
    899      162,    -1,   125,   154,    -1,   124,   142,   153,   143,    -1,
    900      124,   142,   143,    -1
     843      -1,    14,   142,   154,   143,    -1,   153,   136,   154,    -1,
     844     154,    -1,   158,    -1,   152,    -1,   142,   153,   143,    -1,
     845     154,   133,   154,   136,   154,   134,    -1,   154,   133,   154,
     846     134,    -1,    98,   142,   154,   143,    -1,    99,   142,   153,
     847     143,    -1,    99,   142,   143,    -1,   100,   142,   154,   143,
     848      -1,   161,   142,   153,   143,    -1,   161,   142,   143,    -1,
     849      90,   142,   154,   143,    -1,    91,   142,   154,   136,   154,
     850     143,    -1,    92,   142,   154,   136,   154,   136,   154,   143,
     851      -1,    95,   142,   154,   136,   154,   143,    -1,    95,   142,
     852     154,   136,   154,   136,   154,   143,    -1,    93,   142,   154,
     853     143,    -1,    94,   142,   154,   143,    -1,    93,   142,   154,
     854     136,   154,   143,    -1,    96,   142,   154,   143,    -1,    96,
     855     142,   154,   136,   154,   143,    -1,    94,   142,   154,   136,
     856     154,   136,   154,   143,    -1,    96,   142,   154,   136,   154,
     857     136,   154,   143,    -1,    97,   142,   143,    -1,    97,   142,
     858     153,   143,    -1,    19,   142,   154,   136,   154,   136,   154,
     859     143,    -1,    19,   142,   154,   143,    -1,    13,   142,   154,
     860     136,   154,   136,   154,   143,    -1,    13,   142,   154,   143,
     861      -1,    15,   142,   164,   136,   164,   136,   168,   143,    -1,
     862      15,   142,   154,   143,    -1,   156,   154,   157,    -1,   156,
     863     154,   127,   154,   157,    -1,    -1,   118,   142,   155,   154,
     864     143,    -1,   119,   142,    -1,   143,    -1,   154,    10,    -1,
     865     154,     7,    -1,   154,   130,   154,    -1,   154,   131,   154,
     866      -1,   154,   132,   154,    -1,   154,   135,   154,    -1,   154,
     867     128,   154,    -1,   154,   138,   154,    -1,   154,     9,   154,
     868      -1,   154,     4,   154,    -1,   154,     3,   154,    -1,   154,
     869     139,   154,    -1,     8,   154,    -1,   131,   154,    -1,   162,
     870     169,    -1,   153,   127,    -1,   112,    -1,   144,   154,   144,
     871      -1,    17,    -1,    20,    -1,    98,   152,    -1,    99,   152,
     872      -1,   100,   152,    -1,   161,   152,    -1,    19,   152,   133,
     873     154,   134,   133,   154,   134,    -1,    19,   152,    -1,    13,
     874     152,   133,   154,   134,   133,   154,   134,    -1,    13,   152,
     875      -1,   162,   136,   152,    -1,    14,   152,    -1,   109,    -1,
     876     154,    -1,   142,   154,   136,   153,   143,    -1,   112,    -1,
     877     165,    -1,   165,   142,   153,   143,    -1,   166,    -1,   166,
     878     136,   167,    -1,   166,    -1,   142,   167,   143,    -1,   127,
     879      -1,    -1,   128,   163,   171,   137,    -1,   103,   109,   137,
     880      -1,   103,   137,    -1,   101,   109,   137,    -1,   102,   153,
     881      -1,   104,   152,    -1,   175,   136,   152,    -1,   106,   142,
     882      98,   143,    -1,   106,   142,    99,   143,    -1,   106,   142,
     883     100,   143,    -1,   106,   142,   161,   143,    -1,   106,   142,
     884      15,   143,    -1,   106,   142,    19,   143,    -1,   106,   142,
     885      13,   143,    -1,   106,   142,    14,   143,    -1,   106,   142,
     886     152,   143,    -1,   106,   142,   152,   136,    98,   143,    -1,
     887     106,   142,   152,   136,    99,   143,    -1,   106,   142,   152,
     888     136,   100,   143,    -1,   106,   142,   152,   136,   161,   143,
     889      -1,   106,   142,   152,   136,    15,   143,    -1,   106,   142,
     890     152,   136,    19,   143,    -1,   106,   142,   152,   136,    13,
     891     143,    -1,   106,   142,   152,   136,    14,   143,    -1,   106,
     892     142,   143,    -1,    15,    -1,   177,   152,   169,   164,   136,
     893     164,   136,   168,    -1,   177,   152,    -1,   126,   163,    -1,
     894     107,    -1,    40,    -1,   180,   154,    -1,   108,   154,    -1,
     895     153,    -1,   121,   142,   154,   143,   110,    -1,   117,   110,
     896      -1,   121,   142,   154,   143,   115,    -1,   115,    -1,   116,
     897      -1,   123,   109,   110,    -1,   120,   109,   109,   109,   110,
     898      -1,    14,   160,   110,    -1,   114,   109,   110,    -1,   114,
     899     109,   109,   110,    -1,   125,   162,    -1,   125,   154,    -1,
     900     124,   142,   153,   143,    -1,   124,   142,   143,    -1
    901901};
    902902
     
    907907     409,   460,   461,   462,   463,   464,   465,   466,   467,   471,
    908908     474,   475,   476,   477,   478,   479,   480,   481,   482,   485,
    909      492,   497,   501,   505,   509,   522,   550,   574,   580,   589,
    910      600,   606,   611,   612,   613,   617,   621,   625,   629,   633,
     909     492,   497,   501,   505,   509,   522,   550,   574,   580,   586,
     910     593,   604,   610,   615,   616,   617,   621,   625,   629,   633,
    911911     637,   641,   645,   649,   653,   657,   661,   665,   669,   673,
    912912     677,   681,   685,   689,   693,   697,   701,   705,   709,   713,
    913      717,   721,   725,   729,   747,   746,   764,   772,   781,   785,
     913     717,   721,   725,   729,   733,   751,   750,   768,   776,   785,
    914914     789,   793,   797,   801,   805,   809,   813,   817,   821,   825,
    915      829,   836,   843,   844,   863,   864,   876,   876,   881,   886,
    916      891,   895,   899,   915,   919,   935,   949,   970,   978,   982,
    917      983,   997,  1005,  1014,  1059,  1060,  1069,  1070,  1076,  1089,
    918     1088,  1096,  1101,  1108,  1116,  1128,  1144,  1163,  1167,  1171,
    919     1176,  1180,  1184,  1188,  1192,  1196,  1201,  1207,  1213,  1219,
    920     1225,  1231,  1237,  1243,  1255,  1262,  1266,  1304,  1314,  1327,
    921     1327,  1330,  1402,  1408,  1437,  1450,  1467,  1476,  1481,  1489,
    922     1501,  1520,  1531,  1551,  1575,  1581,  1593,  1600
     915     829,   833,   840,   847,   848,   867,   868,   880,   880,   885,
     916     890,   895,   899,   903,   919,   923,   939,   953,   974,   982,
     917     986,   987,  1001,  1009,  1018,  1063,  1064,  1073,  1074,  1080,
     918    1093,  1092,  1100,  1105,  1112,  1120,  1132,  1148,  1167,  1171,
     919    1175,  1180,  1184,  1188,  1192,  1196,  1200,  1205,  1211,  1217,
     920    1223,  1229,  1235,  1241,  1247,  1259,  1266,  1270,  1308,  1318,
     921    1331,  1331,  1334,  1406,  1412,  1441,  1454,  1471,  1480,  1485,
     922    1493,  1505,  1524,  1535,  1555,  1579,  1585,  1597,  1604
    923923};
    924924#endif
     
    995995     147,   148,   148,   148,   148,   148,   148,   148,   148,   149,
    996996     150,   150,   150,   150,   150,   150,   150,   150,   150,   151,
    997      152,   152,   152,   152,   152,   152,   152,   152,   152,   153,
    998      153,   154,   154,   154,   154,   154,   154,   154,   154,   154,
     997     152,   152,   152,   152,   152,   152,   152,   152,   152,   152,
     998     153,   153,   154,   154,   154,   154,   154,   154,   154,   154,
    999999     154,   154,   154,   154,   154,   154,   154,   154,   154,   154,
    10001000     154,   154,   154,   154,   154,   154,   154,   154,   154,   154,
    1001      154,   154,   154,   154,   155,   154,   156,   157,   158,   158,
     1001     154,   154,   154,   154,   154,   155,   154,   156,   157,   158,
    10021002     158,   158,   158,   158,   158,   158,   158,   158,   158,   158,
    1003      158,   158,   159,   159,   160,   160,   161,   161,   162,   162,
    1004      162,   162,   162,   162,   162,   162,   162,   162,   163,   164,
    1005      164,   165,   166,   166,   167,   167,   168,   168,   169,   171,
    1006      170,   172,   172,   173,   174,   175,   175,   176,   176,   176,
     1003     158,   158,   158,   159,   159,   160,   160,   161,   161,   162,
     1004     162,   162,   162,   162,   162,   162,   162,   162,   162,   163,
     1005     164,   164,   165,   166,   166,   167,   167,   168,   168,   169,
     1006     171,   170,   172,   172,   173,   174,   175,   175,   176,   176,
    10071007     176,   176,   176,   176,   176,   176,   176,   176,   176,   176,
    1008      176,   176,   176,   176,   176,   177,   178,   178,   179,   180,
    1009      180,   181,   182,   182,   183,   183,   183,   183,   183,   184,
    1010      185,   186,   186,   186,   187,   187,   188,   188
     1008     176,   176,   176,   176,   176,   176,   177,   178,   178,   179,
     1009     180,   180,   181,   182,   182,   183,   183,   183,   183,   183,
     1010     184,   185,   186,   186,   186,   187,   187,   188,   188
    10111011};
    10121012
     
    10171017       2,     1,     1,     1,     1,     1,     1,     1,     1,     2,
    10181018       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
    1019        1,     1,     3,     3,     4,     3,     1,     1,     1,     3,
    1020        1,     1,     1,     3,     6,     4,     4,     4,     3,     4,
    1021        4,     3,     4,     6,     8,     6,     8,     4,     4,     6,
    1022        4,     6,     8,     8,     3,     4,     8,     4,     8,     4,
    1023        8,     4,     3,     5,     0,     5,     2,     1,     2,     2,
    1024        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
    1025        2,     2,     2,     2,     1,     3,     1,     1,     2,     2,
    1026        2,     2,     8,     2,     8,     2,     3,     2,     1,     1,
    1027        5,     1,     1,     4,     1,     3,     1,     3,     1,     0,
    1028        4,     3,     2,     3,     2,     2,     3,     4,     4,     4,
    1029        4,     4,     4,     4,     4,     4,     6,     6,     6,     6,
    1030        6,     6,     6,     6,     3,     1,     8,     2,     2,     1,
    1031        1,     2,     2,     1,     5,     2,     5,     1,     1,     3,
    1032        5,     3,     3,     4,     2,     2,     4,     3
     1019       1,     1,     3,     3,     4,     3,     1,     1,     1,     4,
     1020       3,     1,     1,     1,     3,     6,     4,     4,     4,     3,
     1021       4,     4,     3,     4,     6,     8,     6,     8,     4,     4,
     1022       6,     4,     6,     8,     8,     3,     4,     8,     4,     8,
     1023       4,     8,     4,     3,     5,     0,     5,     2,     1,     2,
     1024       2,     3,     3,     3,     3,     3,     3,     3,     3,     3,
     1025       3,     2,     2,     2,     2,     1,     3,     1,     1,     2,
     1026       2,     2,     2,     8,     2,     8,     2,     3,     2,     1,
     1027       1,     5,     1,     1,     4,     1,     3,     1,     3,     1,
     1028       0,     4,     3,     2,     3,     2,     2,     3,     4,     4,
     1029       4,     4,     4,     4,     4,     4,     4,     6,     6,     6,
     1030       6,     6,     6,     6,     6,     3,     1,     8,     2,     2,
     1031       1,     1,     2,     2,     1,     5,     2,     5,     1,     1,
     1032       3,     5,     3,     3,     4,     2,     2,     4,     3
    10331033};
    10341034
     
    10381038static const yytype_uint8 yydefact[] =
    10391039{
    1040        2,     0,     1,     0,     0,     0,     0,   145,    96,     0,
    1041       97,   150,     0,     0,     0,     0,     0,     0,     0,     0,
    1042        0,     0,     0,     0,     0,     0,     0,     0,   149,     0,
    1043      108,    36,    94,    30,     0,   157,   158,     0,     0,     0,
     1040       2,     0,     1,     0,     0,     0,     0,   146,    97,     0,
     1041      98,   151,     0,     0,     0,     0,     0,     0,     0,     0,
     1042       0,     0,     0,     0,     0,     0,     0,     0,   150,     0,
     1043     109,    36,    95,    30,     0,   158,   159,     0,     0,     0,
    10441044       0,     0,     8,     0,     0,     0,    37,     0,     0,     0,
    1045        9,     0,     0,     3,     4,    13,     0,    20,    42,   153,
    1046       40,     0,    41,     0,    31,     0,     0,    38,    16,    17,
     1045       9,     0,     0,     3,     4,    13,     0,    20,    43,   154,
     1046      41,     0,    42,     0,    31,     0,     0,    38,    16,    17,
    10471047      18,    21,    22,    23,     0,    25,    26,     0,    27,    28,
    10481048      11,    12,    14,    15,    24,     7,    10,     0,     0,     0,
    1049        0,     0,     0,    37,    90,     0,     0,    42,     0,    42,
    1050       31,     0,     0,    42,     0,     0,     0,     0,     0,     0,
    1051        0,     0,     0,    42,     0,    42,     0,    42,     0,    19,
    1052      124,     0,   122,    42,     0,   152,     0,   155,    74,    76,
    1053        0,     0,     0,     0,     0,   165,   164,   148,   119,    91,
    1054        0,     0,     0,     5,     0,    93,     0,     0,     0,    79,
    1055        0,    78,     0,     0,     0,     0,     0,     0,     0,     0,
    1056        0,     0,    29,     0,    42,   118,     0,     6,    92,     0,
    1057       42,   151,     0,     0,     0,     0,     0,     0,     0,     0,
    1058      161,     0,   109,     0,     0,     0,     0,     0,     0,     0,
    1059        0,     0,     0,    64,     0,    40,    48,     0,    40,   123,
    1060      121,     0,     0,     0,     0,     0,     0,     0,   144,    42,
    1061        0,     0,   162,     0,     0,     0,   159,   167,     0,     0,
    1062       35,    43,    95,    32,    39,    88,    87,    86,    84,    80,
    1063       81,    82,     0,    83,    85,    89,    33,     0,     0,    77,
    1064       72,    51,     0,    42,    42,     0,     0,     0,     0,     0,
    1065        0,     0,     0,    69,     0,    40,    71,     0,     0,    67,
    1066        0,    52,     0,     0,     0,    57,     0,    58,     0,     0,
    1067       60,    65,    46,    43,    49,   133,   134,   131,   132,   127,
    1068      128,   129,     0,   135,   130,   163,     0,     0,     0,   166,
    1069      120,    45,     0,    34,     0,    43,   109,     0,    47,    50,
     1049       0,     0,     0,     0,    37,    91,     0,     0,   106,     0,
     1050     108,    31,     0,     0,   104,     0,     0,     0,     0,     0,
     1051       0,     0,     0,     0,    99,     0,   100,     0,   101,     0,
     1052      19,   125,     0,   123,   126,     0,   153,     0,   156,    75,
     1053      77,     0,     0,     0,     0,     0,   166,   165,   149,   120,
     1054      92,     0,     0,     0,     5,     0,     0,    94,     0,     0,
     1055       0,    80,     0,    79,     0,     0,     0,     0,     0,     0,
     1056       0,     0,     0,    29,     0,   102,   119,     0,     6,    93,
     1057       0,   148,   152,     0,     0,     0,   162,     0,   110,     0,
     1058       0,     0,     0,     0,     0,     0,     0,     0,     0,    65,
     1059       0,     0,    49,     0,     0,   124,   122,     0,     0,     0,
     1060       0,     0,     0,     0,   145,     0,     0,     0,   163,     0,
     1061       0,     0,   160,   168,     0,     0,    35,    44,    96,    32,
     1062      33,     0,    40,    89,    88,    87,    85,    81,    82,    83,
     1063       0,    84,    86,    90,     0,    78,    73,    52,     0,   107,
     1064     127,     0,     0,    70,     0,    39,    41,    72,     0,     0,
     1065      68,     0,    53,     0,     0,     0,    58,     0,    59,     0,
     1066       0,    61,    66,    47,    48,    50,   134,   135,   132,   133,
     1067     128,   129,   130,     0,   136,   131,   164,     0,     0,     0,
     1068     167,   121,    34,    46,     0,     0,    51,   110,     0,     0,
    10701069       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1071        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1072       75,   160,   154,   156,     0,    73,     0,     0,     0,     0,
    1073        0,     0,     0,    53,     0,    59,     0,     0,    55,     0,
    1074       61,   142,   143,   140,   141,   136,   137,   138,   139,    44,
    1075        0,     0,     0,   110,   111,     0,   112,   116,     0,     0,
    1076        0,     0,     0,     0,     0,     0,    68,   104,   114,     0,
    1077        0,    70,    66,   102,    54,    62,    56,    63,   146,     0,
    1078      117,     0,   115,   113
     1070       0,     0,     0,     0,     0,     0,     0,     0,     0,    76,
     1071     161,   155,   157,     0,    74,     0,     0,     0,     0,     0,
     1072       0,     0,    54,     0,    60,     0,     0,    56,     0,    62,
     1073     143,   144,   141,   142,   137,   138,   139,   140,    45,     0,
     1074       0,     0,   111,   112,     0,   113,   117,     0,     0,     0,
     1075       0,     0,     0,     0,     0,    69,   105,   115,     0,     0,
     1076      71,    67,   103,    55,    63,    57,    64,   147,     0,   118,
     1077       0,   116,   114
    10791078};
    10801079
     
    10821081static const yytype_int16 yydefgoto[] =
    10831082{
    1084       -1,     1,    53,    54,    55,    56,    57,    58,   141,    60,
    1085      213,    61,   240,    62,    63,    64,    95,    66,    67,   183,
    1086      356,   357,   369,   358,   168,    68,   219,    69,    70,    71,
     1083      -1,     1,    53,    54,    55,    56,    57,    58,   142,    60,
     1084     209,    61,   236,    62,    63,    64,    96,    66,    67,   179,
     1085     345,   346,   358,   347,   169,    68,   215,    69,    70,    71,
    10871086      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
    10881087      82,    83,    84,    85
     
    10911090/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    10921091   STATE-NUM.  */
    1093 #define YYPACT_NINF -345
     1092#define YYPACT_NINF -335
    10941093static const yytype_int16 yypact[] =
    10951094{
    1096     -345,   304,  -345,  -119,  1956,  2011,  1956,  -106,  -345,  2071,
    1097     -345,  -345,   -95,   -93,   -89,   -67,   -61,   -58,   -52,   -48,
    1098     2126,  2186,  2241,   -21,  1956,  -100,  1956,   -44,  -345,  1956,
    1099     -345,  -345,  -345,  -345,   -77,  -345,  -345,    -6,   -33,   -30,
    1100       12,   -15,  -345,    22,     5,  1611,    25,    25,  1956,  1956,
    1101     -345,  1956,  1956,  -345,  -345,  -345,    27,  -345,   162,   -85,
    1102     1455,  1956,  -345,  1956,  -345,  2301,  -110,  -345,  -345,  -345,
    1103     -345,  -345,    39,  -345,  1956,  -345,  -345,  1956,  -345,  -345,
    1104     -345,  -345,  -345,  -345,  -345,  -345,  -345,    37,  -106,    43,
    1105       54,    63,    67,  -345,    18,    85,  1956,   134,  1455,    30,
    1106      119,  2356,  1956,   203,  1956,  1956,  1956,  1956,  1956,  1956,
    1107     1956,  1666,  1956,   122,  1726,   158,  1956,   172,    40,  -345,
    1108       95,   101,  -345,    35,  1547,  1455,   -13,  -345,  -345,  -345,
    1109      130,  1956,   131,  1781,  1956,  1455,   106,  -345,  -345,    18,
    1110     -115,  -121,   145,  -345,  1956,  -345,  1956,  1956,  1956,  -345,
    1111     1956,  -345,  1956,  1956,  1956,  1956,  1956,  1956,  1956,  1956,
    1112     1841,   247,    95,  1896,   205,  -345,  1956,  -345,  -345,  1956,
    1113       -8,  1455,  1956,  1956,  1956,  1726,  1956,  1896,   324,  1956,
    1114     -345,  1956,   543,   117,   342,  1956,   572,  1031,  1063,   435,
    1115      479,  1076,   495,  -345,   -86,   588,  -345,   -84,   680,  -345,
    1116     -345,   -36,   120,   -28,   -17,    56,    69,    75,  -345,    20,
    1117       91,   150,  -345,  1956,   155,   725,  -345,  -345,   -78,   129,
    1118     -345,  -345,  -345,  -345,  1455,  1468,    93,    93,   113,    62,
    1119       62,    18,  1018,    -5,  1481,    62,  -345,   -75,  1956,  -345,
    1120     -345,  -345,   -72,   211,    65,  2356,   324,   342,   588,   -70,
    1121      680,   -69,  1956,  -345,  1168,  1213,  -345,  2356,  1956,  -345,
    1122     1226,  -345,  1956,  1956,  1956,  -345,  1956,  -345,  1956,  1956,
    1123     -345,  -345,  -345,  -107,  -345,  -345,  -345,  -345,  -345,  -345,
    1124     -345,  -345,    -7,  -345,  -345,  -345,   741,   159,   -32,  -345,
    1125     -345,  -345,  1956,  -345,   757,  -103,  1455,   132,  -345,  -345,
    1126     1239,   141,  1956,   152,  1252,   148,   773,  1265,   789,  1278,
    1127      511,   527,   147,   163,   164,   167,   168,   170,   171,   173,
    1128     -345,  -345,  -345,  -345,  1305,  -345,  2356,  1956,  1956,   -66,
    1129      -98,  1956,  1956,  -345,  1956,  -345,  1956,  1956,  -345,  1956,
    1130     -345,  -345,  -345,  -345,  -345,  -345,  -345,  -345,  -345,  -345,
    1131      157,   817,  1318,  -345,  -345,   208,   180,  -345,   182,   833,
    1132     1415,   926,   970,   986,  1002,   -98,  -345,  -345,   179,   186,
    1133     1956,  -345,  -345,  -345,  -345,  -345,  -345,  -345,  -345,   208,
    1134     -345,   -56,  -345,  -345
     1095    -335,   281,  -335,  -132,  1199,   822,   848,  -129,  -335,   899,
     1096    -335,  -335,  -123,  -115,  -104,   -73,   -68,   -64,   -55,   -53,
     1097    1751,  1779,  1798,   -24,  1199,  -108,  1825,   -50,  -335,  1199,
     1098    -335,  -335,  -335,  -335,   -28,  -335,  -335,   -51,   -38,   -37,
     1099       0,   -34,  -335,    13,   -26,  1255,    39,    39,  1199,  1199,
     1100    -335,  1199,  1199,  -335,  -335,  -335,    12,  -335,    -5,  -101,
     1101    1678,  1199,  -335,  1199,  -335,  1817,   -83,  -335,  -335,  -335,
     1102    -335,  -335,    24,  -335,  1825,  -335,  -335,  1199,  -335,  -335,
     1103    -335,  -335,  -335,  -335,  -335,  -335,  -335,    40,    45,  -129,
     1104      51,    52,    54,    55,  -335,    36,    60,  1199,     9,  1199,
     1105      -5,    88,  1314,  1199,    20,  1199,  1199,  1199,  1199,  1199,
     1106    1199,  1199,   904,  1199,    -5,   969,    -5,  1199,    -5,    70,
     1107    -335,    74,    72,  -335,    -5,  1756,  1678,   -11,  -335,  -335,
     1108    -335,    46,  1199,   104,  1025,   848,  1678,    77,  -335,  -335,
     1109      36,   -61,  -127,     8,  -335,  1825,  1084,  -335,  1199,  1199,
     1110    1199,  -335,  1199,  -335,  1199,  1199,  1199,  1199,  1199,  1199,
     1111    1199,  1199,    73,    74,  1140,    -5,  -335,  1825,  -335,  -335,
     1112    1825,    -8,  1678,    87,  1199,   426,  -335,  1199,   456,    85,
     1113     103,  1199,   495,  1368,  1380,   181,   319,  1412,   344,  -335,
     1114    -106,   509,  -335,   -94,   523,  -335,  -335,    81,   -42,    86,
     1115      89,    94,    97,   101,  -335,   107,   102,   118,  -335,  1199,
     1116     138,   563,  -335,  -335,   -86,   111,  -335,  -335,  -335,  -335,
     1117    -335,   -76,  1678,  1690,   446,   446,    26,    48,    48,    36,
     1118    1353,    -3,  1702,    48,  1199,  -335,  -335,  -335,   -75,    -5,
     1119      -5,  1314,  1199,  -335,  1427,  -335,  1439,  -335,  1314,  1199,
     1120    -335,  1456,  -335,  1199,  1199,  1199,  -335,  1199,  -335,  1199,
     1121    1199,  -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,
     1122    -335,  -335,  -335,   424,  -335,  -335,  -335,   593,   141,   -59,
     1123    -335,  -335,  -335,  -335,  1199,   607,  -335,  1678,   117,  1468,
     1124     121,  1199,   119,  1517,   123,   660,  1529,   674,  1605,   358,
     1125     412,   114,   115,   120,   122,   125,   126,   127,   131,  -335,
     1126    -335,  -335,  -335,  1617,  -335,  1314,  1199,  1199,   -72,  -110,
     1127    1199,  1199,  -335,  1199,  -335,  1199,  1199,  -335,  1199,  -335,
     1128    -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,   128,
     1129     700,  1629,  -335,  -335,   149,   134,  -335,   136,   744,  1666,
     1130     758,   772,   811,   837,  -110,  -335,  -335,   147,   142,  1199,
     1131    -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,   149,  -335,
     1132     -71,  -335,  -335
    11351133};
    11361134
     
    11381136static const yytype_int16 yypgoto[] =
    11391137{
    1140     -345,  -345,  -345,  -345,  -345,  -345,  -345,    96,    -1,    34,
    1141     -345,  -345,    41,  -345,  -345,   331,     0,   298,   190,  -241,
    1142     -345,  -344,   -29,   -12,   184,  -345,  -345,  -345,  -345,  -345,
    1143     -345,  -345,  -345,  -345,  -345,  -345,  -345,  -345,  -345,  -345,
    1144     -345,  -345,  -345,  -345
     1138    -335,  -335,  -335,  -335,  -335,  -335,  -335,    19,    -1,    18,
     1139    -335,  -335,   -23,  -335,  -335,   278,     7,   241,    56,  -227,
     1140    -335,  -334,   -81,   -66,   132,  -335,  -335,  -335,  -335,  -335,
     1141    -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,  -335,
     1142    -335,  -335,  -335,  -335
    11451143};
    11461144
     
    11491147   number is the opposite.  If zero, do what YYDEFACT says.
    11501148   If YYTABLE_NINF, syntax error.  */
    1151 #define YYTABLE_NINF -148
     1149#define YYTABLE_NINF -1
    11521150static const yytype_int16 yytable[] =
    11531151{
    1154       59,    65,   149,   144,   297,   151,   312,   313,   314,   121,
    1155        8,   368,   315,    10,   354,   146,   303,   165,    86,   220,
    1156      -47,   146,   221,   120,   -50,   149,   166,   167,   151,   -47,
    1157      -47,   144,   126,   -50,   -50,   368,   101,   122,    94,    98,
    1158       98,   144,   145,    98,   355,    65,   144,   104,   140,   105,
    1159      146,   146,   146,   106,    98,    98,    98,   271,   146,   273,
    1160       98,   146,   162,   125,   146,   289,   146,   146,   293,   149,
    1161      146,   295,   151,   298,   299,   107,   144,   353,   322,   135,
    1162      146,   108,   139,   323,   109,   350,   142,   383,   118,   119,
    1163      110,   316,   317,   318,   111,   161,   211,   212,   124,    98,
    1164      149,    97,    99,   151,   127,   103,   172,   275,    98,   128,
    1165      194,   171,   129,   197,   101,   277,   113,   115,   117,   165,
    1166      149,   130,   123,   151,   210,   173,   278,   131,   156,  -147,
    1167      178,   132,   218,   144,    30,   182,   184,   160,   186,   187,
    1168      188,   189,   190,   191,   192,   144,   195,   133,   147,   148,
    1169      198,   156,   149,   157,   150,   151,   282,  -107,    98,   237,
    1170      160,   164,   242,   283,   143,   215,  -107,  -107,    98,   144,
    1171      170,  -125,  -125,   144,   249,   169,   251,   199,    98,   172,
    1172      224,   225,   226,   144,   227,   173,   228,   229,   230,   231,
    1173      232,   233,   234,   235,   155,   156,   174,   157,   174,   279,
    1174       98,  -126,  -126,    98,   160,   175,   246,   247,   248,   176,
    1175      250,   175,   280,   254,   144,   255,   144,   176,   281,   260,
    1176      209,   152,   144,   153,   154,   155,   156,   177,   157,   180,
    1177       99,   146,   159,   177,   284,   160,   137,   138,   200,   214,
    1178      223,   216,   166,   153,   154,   155,   156,   286,   157,   -98,
    1179      147,   148,   159,   257,   149,   160,   150,   151,   -98,   -98,
    1180      285,  -105,   243,   276,   287,   244,   290,   179,   326,   321,
    1181     -105,  -105,   294,   152,   328,   153,   154,   155,   156,   296,
    1182      157,   332,   319,   158,   159,   -99,   300,   160,   330,   222,
    1183      341,   296,   304,   365,   -99,   -99,   306,   307,   308,  -100,
    1184      309,   329,   310,   311,     2,     3,   342,   343,  -100,  -100,
    1185      344,   345,     4,   346,   347,   379,   348,     5,     6,     7,
    1186      354,     8,   370,     9,    10,   371,   324,   147,   148,   380,
    1187     -103,   149,  -101,   150,   151,   325,   185,   100,  -106,  -103,
    1188     -103,  -101,  -101,   136,    11,   147,   148,  -106,  -106,   149,
    1189      382,   150,   151,   378,   245,     0,     0,     0,     0,     0,
    1190      296,   351,   352,     0,     0,   359,   360,     0,   361,   381,
    1191      362,   363,     0,   364,   238,   152,     0,   153,   154,   155,
    1192      156,     0,   157,     0,     0,   158,   159,     0,     0,   160,
    1193      239,     0,     0,     0,    12,    13,    14,    15,    16,    17,
    1194       18,    19,    20,    21,    22,    23,    24,    25,    26,     0,
    1195       27,    28,    29,    30,     0,    31,    32,    33,    34,    35,
    1196       36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
    1197       46,     0,    47,     0,     0,    48,     0,    49,   147,   148,
    1198        0,    50,   149,     0,   150,   151,    51,     0,    52,     0,
    1199        0,     0,   152,     0,   153,   154,   155,   156,     0,   157,
    1200      252,     0,   158,   159,     0,     0,   160,   253,     0,     0,
    1201      152,     0,   153,   154,   155,   156,     0,   157,   258,     0,
    1202      158,   159,   147,   148,   160,   259,   149,     0,   150,   151,
    1203        0,     0,     0,     0,     0,     0,     0,     0,   147,   148,
    1204        0,     0,   149,     0,   150,   151,     0,     0,     0,     0,
    1205        0,     0,     0,     0,   147,   148,     0,     0,   149,     0,
    1206      150,   151,     0,     0,     0,     0,     0,     0,     0,     0,
    1207      147,   148,     0,     0,   149,     0,   150,   151,     0,     0,
    1208        0,     0,     0,     0,     0,     0,   147,   148,     0,     0,
    1209      149,     0,   150,   151,     0,     0,     0,     0,     0,     0,
    1210        0,     0,     0,   152,     0,   153,   154,   155,   156,     0,
    1211      157,   264,     0,   158,   159,   147,   148,   160,   265,   149,
    1212        0,   150,   151,     0,     0,     0,     0,     0,     0,     0,
    1213        0,   147,   148,     0,     0,   149,     0,   150,   151,     0,
    1214        0,     0,     0,     0,     0,     0,     0,   152,     0,   153,
    1215      154,   155,   156,     0,   157,   266,     0,   158,   159,     0,
    1216        0,   160,   267,   152,     0,   153,   154,   155,   156,     0,
    1217      157,   269,     0,   158,   159,     0,     0,   160,   270,   152,
    1218        0,   153,   154,   155,   156,     0,   157,   337,     0,   158,
    1219      159,     0,     0,   160,   338,   152,     0,   153,   154,   155,
    1220      156,     0,   157,   339,     0,   158,   159,     0,     0,   160,
    1221      340,   152,     0,   153,   154,   155,   156,     0,   157,     0,
    1222        0,   158,   159,   147,   148,   160,   256,   149,     0,   150,
    1223      151,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1224      152,     0,   153,   154,   155,   156,     0,   157,     0,     0,
    1225      158,   159,     0,     0,   160,   261,   152,     0,   153,   154,
    1226      155,   156,     0,   157,     0,     0,   158,   159,   147,   148,
    1227      160,   272,   149,     0,   150,   151,     0,     0,     0,     0,
    1228        0,     0,     0,     0,   147,   148,     0,     0,   149,     0,
    1229      150,   151,     0,     0,     0,     0,     0,     0,     0,     0,
    1230      147,   148,     0,     0,   149,     0,   150,   151,     0,     0,
    1231        0,     0,     0,     0,     0,     0,   147,   148,     0,     0,
    1232      149,     0,   150,   151,     0,     0,     0,     0,     0,     0,
    1233        0,     0,   147,   148,     0,     0,   149,     0,   150,   151,
    1234        0,     0,     0,     0,     0,     0,     0,     0,   152,     0,
    1235      153,   154,   155,   156,     0,   157,     0,     0,   158,   159,
    1236      147,   148,   160,   274,   149,     0,   150,   151,     0,     0,
    1237        0,     0,     0,     0,     0,     0,   147,   148,     0,     0,
    1238      149,     0,   150,   151,     0,     0,     0,     0,     0,     0,
    1239        0,     0,     0,   152,     0,   153,   154,   155,   156,     0,
    1240      157,     0,     0,   158,   159,     0,     0,   160,   288,   152,
    1241        0,   153,   154,   155,   156,     0,   157,     0,     0,   158,
    1242      159,     0,     0,   160,   320,   152,     0,   153,   154,   155,
    1243      156,     0,   157,     0,     0,   158,   159,     0,     0,   160,
    1244      239,   152,     0,   153,   154,   155,   156,     0,   157,     0,
    1245        0,   158,   159,     0,     0,   160,   333,   152,     0,   153,
    1246      154,   155,   156,     0,   157,     0,     0,   158,   159,   147,
    1247      148,   160,   335,   149,     0,   150,   151,     0,     0,     0,
    1248        0,     0,     0,     0,     0,   152,     0,   153,   154,   155,
    1249      156,     0,   157,     0,     0,   158,   159,     0,     0,   160,
    1250      366,   152,     0,   153,   154,   155,   156,     0,   157,     0,
    1251        0,   158,   159,   147,   148,   160,   372,   149,     0,   150,
    1252      151,     0,     0,     0,     0,     0,     0,     0,     0,   147,
    1253      148,     0,     0,   149,     0,   150,   151,     0,     0,     0,
    1254        0,     0,     0,     0,     0,   147,   148,     0,     0,   149,
    1255        0,   150,   151,     0,     0,     0,     0,     0,     0,     0,
    1256        0,   147,   148,     0,     0,   149,     0,   150,   151,     0,
    1257        0,     0,     0,     0,   147,   148,     0,     0,   149,     0,
    1258      150,   151,     0,     0,     0,     0,     0,     0,     0,     0,
    1259        0,     0,     0,     0,   152,     0,   153,   154,   155,   156,
    1260        0,   157,     0,     0,   158,   159,   147,   148,   160,   374,
    1261      149,     0,   150,   151,     0,     0,     0,     0,     0,   147,
    1262      148,     0,     0,   149,     0,   150,   151,     0,     0,     0,
    1263        0,     0,     0,     0,     0,     0,     0,     0,   152,     0,
    1264      153,   154,   155,   156,     0,   157,     0,     0,   158,   159,
    1265        0,     0,   160,   375,   152,     0,   153,   154,   155,   156,
    1266        0,   157,     0,     0,   158,   159,     0,     0,   160,   376,
    1267      152,     0,   153,   154,   155,   156,     0,   157,     0,     0,
    1268      158,   159,     0,     0,   160,   377,   152,     0,   153,   154,
    1269      155,   156,   291,   157,   292,     0,   158,   159,     0,   152,
    1270      160,   153,   154,   155,   156,     0,   157,   262,     0,   158,
    1271      159,   147,   148,   160,     0,   149,     0,   150,   151,     0,
     1152      59,   122,   343,   145,   151,    86,   145,   153,    65,   148,
     1153     357,   149,   150,   102,   288,   151,   217,   152,   153,   105,
     1154     145,   292,    95,   121,    98,   100,   147,   106,   104,   123,
     1155     148,   145,   344,   151,   357,   148,   153,   262,   107,   114,
     1156     116,   118,   148,   151,   166,   124,   153,   126,   141,   264,
     1157     148,   311,    65,   167,   168,   151,   312,   280,   153,   128,
     1158     148,   148,   163,   136,   148,   148,   140,   282,   286,   108,
     1159     143,   342,   372,   216,   109,   148,   149,   150,   110,   162,
     1160     151,   127,   152,   153,   165,   119,   120,   111,   339,   112,
     1161     149,   150,   125,   171,   151,   172,   152,   153,   207,   208,
     1162      99,   267,   138,   139,   129,   130,   149,   150,   132,   131,
     1163     151,   190,   152,   153,   193,   173,   134,   175,   145,   166,
     1164     178,   180,   133,   182,   183,   184,   185,   186,   187,   188,
     1165     158,   191,   206,   214,   146,   194,   154,   146,   155,   156,
     1166     157,   158,   174,   159,   205,   221,   160,   161,    30,   144,
     1167     211,   146,   218,   181,   100,   210,   155,   156,   157,   158,
     1168     170,   159,   146,   238,   219,   161,   222,   223,   224,   158,
     1169     225,   159,   226,   227,   228,   229,   230,   231,   232,   233,
     1170     157,   158,    97,   159,   149,   150,   239,    99,   151,   240,
     1171     152,   153,   244,   103,   113,   246,   115,   117,   176,   251,
     1172     234,   154,   164,   155,   156,   157,   158,   195,   159,   196,
     1173     148,   160,   161,   167,   212,   154,   235,   155,   156,   157,
     1174     158,   248,   159,   242,   266,   160,   161,   277,   276,   268,
     1175     243,   154,   269,   155,   156,   157,   158,   270,   159,   249,
     1176     271,   160,   161,   273,   272,   275,   250,   278,   281,   146,
     1177     274,   310,   285,   315,   317,   319,   321,   330,   331,   287,
     1178     289,   343,   314,   332,   354,   333,   287,   293,   334,   335,
     1179     336,   295,   296,   297,   337,   298,   359,   299,   300,   360,
     1180     308,     2,     3,   368,   101,   369,   137,   371,   367,     4,
     1181     318,     0,     0,     0,     5,     6,     7,     0,     8,     0,
     1182       9,    10,   313,   241,     0,     0,     0,     0,     0,   154,
     1183       0,   155,   156,   157,   158,     0,   159,   255,     0,   160,
     1184     161,    11,   149,   150,   256,     0,   151,     0,   152,   153,
     1185       0,     0,     0,   287,   340,   341,     0,     0,   348,   349,
     1186       0,   350,     0,   351,   352,     0,   353,   149,   150,     0,
     1187       0,   151,     0,   152,   153,     0,     0,     0,   370,     0,
     1188       0,   149,   150,     0,     0,   151,     0,   152,   153,     0,
     1189       0,    12,    13,    14,    15,    16,    17,    18,    19,    20,
     1190      21,    22,    23,    24,    25,    26,     0,    27,    28,    29,
     1191      30,     0,    31,    32,    33,    34,    35,    36,    37,    38,
     1192      39,    40,    41,    42,    43,    44,    45,    46,     0,    47,
     1193       0,     0,    48,     0,    49,   149,   150,     0,    50,   151,
     1194       0,   152,   153,    51,     0,    52,     0,     0,     0,   149,
     1195     150,     0,     0,   151,     0,   152,   153,   301,   302,   303,
     1196       0,     8,     0,   304,    10,     0,     0,   154,     0,   155,
     1197     156,   157,   158,   151,   159,   257,   153,   160,   161,   149,
     1198     150,     0,   258,   151,     0,   152,   153,     0,     0,     0,
     1199       0,     0,   154,     0,   155,   156,   157,   158,     0,   159,
     1200     260,     0,   160,   161,     0,     0,   154,   261,   155,   156,
     1201     157,   158,     0,   159,   326,     0,   160,   161,   149,   150,
     1202       0,   327,   151,     0,   152,   153,     0,     0,     0,     0,
     1203       0,     0,   149,   150,     0,     0,   151,     0,   152,   153,
     1204       0,     0,   305,   306,   307,     0,   149,   150,     0,     0,
     1205     151,     0,   152,   153,     0,     0,     0,     0,     0,     0,
     1206     154,     0,   155,   156,   157,   158,     0,   159,   328,     0,
     1207     160,   161,     0,     0,   154,   329,   155,   156,   157,   158,
     1208       0,   159,     0,     0,   160,   161,   149,   150,     0,   245,
     1209     151,     0,   152,   153,   154,     0,   155,   156,   157,   158,
     1210       0,   159,     0,     0,   154,   161,   155,   156,   157,   158,
     1211       0,   159,     0,     0,   160,   161,   149,   150,     0,   247,
     1212     151,     0,   152,   153,     0,     0,     0,     0,     0,     0,
     1213     149,   150,     0,     0,   151,     0,   152,   153,     0,     0,
     1214       0,     0,     0,   154,     0,   155,   156,   157,   158,     0,
     1215     159,     0,     0,   160,   161,     0,     0,   154,   252,   155,
     1216     156,   157,   158,     0,   159,     0,     0,   160,   161,     0,
     1217       0,   154,   263,   155,   156,   157,   158,     0,   159,     0,
     1218       0,   160,   161,   149,   150,     0,   265,   151,     0,   152,
     1219     153,     0,     0,     0,     0,     0,     0,   149,   150,     0,
     1220       0,   151,     0,   152,   153,     0,     0,     0,     0,     0,
     1221       0,   154,     0,   155,   156,   157,   158,     0,   159,     0,
     1222       0,   160,   161,   149,   150,     0,   279,   151,     0,   152,
     1223     153,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     1224       0,   154,     0,   155,   156,   157,   158,     0,   159,     0,
     1225       0,   160,   161,     0,     0,   154,   309,   155,   156,   157,
     1226     158,     0,   159,     0,     0,   160,   161,   149,   150,     0,
     1227     235,   151,     0,   152,   153,     0,     0,     0,     0,     0,
     1228       0,   149,   150,     0,     0,   151,     0,   152,   153,     0,
     1229       0,     0,     0,     0,     0,   149,   150,     0,     0,   151,
     1230       0,   152,   153,     0,     0,     0,     0,     0,   154,     0,
     1231     155,   156,   157,   158,     0,   159,     0,     0,   160,   161,
     1232       0,     0,   154,   322,   155,   156,   157,   158,     0,   159,
     1233       0,     0,   160,   161,   149,   150,     0,   324,   151,     0,
     1234     152,   153,     0,     0,     0,     0,     0,     0,   154,     0,
     1235     155,   156,   157,   158,     0,   159,    88,     0,   160,   161,
     1236     149,   150,     0,   355,   151,     0,   152,   153,     0,     0,
    12721237       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1273        0,   152,     0,   153,   154,   155,   156,     0,   157,   263,
    1274        0,   158,   159,     0,   152,   160,   153,   154,   155,   156,
    1275        0,   157,   268,     0,   158,   159,   147,   148,   160,     0,
    1276      149,     0,   150,   151,     0,     0,     0,     0,     0,   147,
    1277      148,     0,     0,   149,     0,   150,   151,     0,     0,     0,
    1278        0,     0,   147,   148,     0,     0,   149,     0,   150,   151,
    1279        0,     0,     0,     0,     0,   147,   148,     0,     0,   149,
    1280        0,   150,   151,     0,     0,     0,     0,     0,   147,   148,
    1281        0,     0,   149,     0,   150,   151,     0,     0,     0,     0,
    1282        0,   147,   148,     0,     0,   149,     0,   150,   151,     0,
    1283        0,     0,     0,     0,     0,     0,   152,     0,   153,   154,
    1284      155,   156,   301,   157,     0,     0,   158,   159,   147,   148,
    1285      160,     0,   149,     0,   150,   151,     0,     0,     0,     0,
    1286        0,   147,   148,     0,     0,   149,     0,   150,   151,     0,
     1238       0,     0,    88,     0,     0,     0,     0,     0,     0,     0,
     1239       0,     0,   154,     0,   155,   156,   157,   158,     0,   159,
     1240       0,     0,   160,   161,     0,     0,   154,   361,   155,   156,
     1241     157,   158,     0,   159,     0,     0,   160,   161,     0,     0,
     1242     154,   363,   155,   156,   157,   158,     0,   159,     0,     0,
     1243     160,   161,     4,    88,     0,   364,     0,    87,    88,    89,
     1244       0,     8,     0,    90,    10,     0,     0,     0,     0,     0,
     1245       0,    30,     0,    31,    32,    33,     0,     0,     0,   154,
     1246       0,   155,   156,   157,   158,     0,   159,     0,    94,   160,
     1247     161,     0,     0,     0,   365,    49,     0,    30,     0,    31,
     1248      32,    33,     0,     0,    97,   154,    52,   155,   156,   157,
     1249     158,     0,   159,     0,    94,   160,   161,     4,     0,     0,
     1250     366,    49,    87,    88,    89,     0,     8,     0,    90,    10,
     1251      99,     0,    52,     0,    12,    13,    14,    15,    16,    17,
     1252      18,    19,    91,    92,    93,     0,     0,     0,    30,     0,
     1253      31,    32,    33,    30,     0,    31,    32,    33,     0,     0,
     1254       0,     0,    38,    39,     0,    94,     0,     0,     0,     0,
     1255      94,     0,    49,     4,     0,    48,     0,    49,    87,    88,
     1256      89,   103,     8,    52,    90,    10,    51,   189,    52,     0,
     1257       0,     0,     0,     0,     0,     0,     0,     0,     0,    12,
     1258      13,    14,    15,    16,    17,    18,    19,    91,    92,    93,
     1259       0,     0,     0,     0,     0,     0,     0,     0,    30,     0,
     1260      31,    32,    33,     0,     0,     0,     0,    38,    39,     0,
     1261       0,     0,     4,     0,     0,    94,     0,    87,    88,    89,
     1262      48,     8,    49,    90,    10,     0,     0,     0,     0,     0,
     1263       0,    51,   192,    52,     0,    12,    13,    14,    15,    16,
     1264      17,    18,    19,    91,    92,    93,     0,     0,     0,     0,
     1265       0,     0,     0,     0,    30,     0,    31,    32,    33,     0,
     1266       0,     0,     0,    38,    39,     0,     0,     0,     4,     0,
     1267       0,    94,     0,    87,    88,    89,    48,     8,    49,    90,
     1268      10,     0,     0,     0,     0,     0,     0,    51,   213,    52,
     1269       0,     0,     0,     0,    12,    13,    14,    15,    16,    17,
     1270      18,    19,    91,    92,    93,     0,     0,     0,     0,     0,
     1271       0,     0,     0,    30,     0,    31,    32,    33,     0,     0,
     1272       0,     0,    38,    39,     0,     0,     0,     4,     0,     0,
     1273      94,     0,    87,    88,    89,    48,     8,    49,    90,    10,
     1274       0,     0,     0,     0,     0,     0,    51,   220,    52,     0,
     1275      12,    13,    14,    15,    16,    17,    18,    19,    91,    92,
     1276      93,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1277       0,    31,    32,    33,     0,     0,     0,     0,    38,    39,
     1278       0,     0,     0,     4,     0,     0,    94,     0,     5,   135,
     1279      89,    48,     8,    49,     9,    10,     0,     0,     0,     0,
     1280       0,     0,    51,   237,    52,     0,     0,     0,     0,    12,
     1281      13,    14,    15,    16,    17,    18,    19,    91,    92,    93,
     1282       0,     0,     0,     0,     0,     0,     0,     0,    30,     0,
     1283      31,    32,    33,     0,     0,     0,     0,    38,    39,     0,
     1284       0,     0,     4,     0,     0,    94,     0,    87,    88,    89,
     1285      48,     8,    49,    90,    10,     0,     0,     0,     0,     0,
     1286       0,    51,     0,    52,     0,    12,    13,    14,    15,    16,
     1287      17,    18,    19,    20,    21,    22,   149,   150,     0,     0,
     1288     151,     0,   152,   153,    30,     0,    31,    32,    33,     0,
     1289       0,   149,   150,    38,    39,   151,     0,   152,   153,     0,
     1290       0,    94,     0,   149,   150,     0,    48,   151,    49,   152,
     1291     153,     0,     0,     0,     0,     0,     0,    51,     0,    52,
     1292       0,     0,     0,     0,    12,    13,    14,    15,    16,    17,
     1293      18,    19,    91,    92,    93,   149,   150,     0,     0,   151,
     1294       0,   152,   153,    30,     0,    31,    32,    33,     0,     0,
     1295     149,   150,    38,    39,   151,     0,   152,   153,     0,     0,
     1296      94,     0,   149,   150,     0,    48,   151,    49,   152,   153,
     1297       0,     0,     0,     0,     0,     0,   177,     0,    52,   149,
     1298     150,     0,     0,   151,     0,   152,   153,     0,     0,     0,
     1299       0,   149,   150,     0,     0,   151,     0,   152,   153,     0,
     1300       0,   154,     0,   155,   156,   157,   158,   283,   159,   284,
     1301       0,   160,   161,     0,     0,     0,   154,     0,   155,   156,
     1302     157,   158,     0,   159,   253,     0,   160,   161,   154,     0,
     1303     155,   156,   157,   158,     0,   159,   254,     0,   160,   161,
     1304     149,   150,     0,     0,   151,     0,   152,   153,     0,     0,
     1305       0,     0,   149,   150,     0,     0,   151,     0,   152,   153,
     1306     154,     0,   155,   156,   157,   158,     0,   159,   259,     0,
     1307     160,   161,     0,     0,     0,   154,     0,   155,   156,   157,
     1308     158,   290,   159,     0,     0,   160,   161,   154,     0,   155,
     1309     156,   157,   158,     0,   159,   291,     0,   160,   161,     0,
     1310       0,     0,     0,     0,   154,     0,   155,   156,   157,   158,
     1311     294,   159,     0,     0,   160,   161,   154,     0,   155,   156,
     1312     157,   158,     0,   159,   316,     0,   160,   161,   149,   150,
     1313       0,     0,   151,     0,   152,   153,     0,     0,     0,     0,
     1314     149,   150,     0,     0,   151,     0,   152,   153,     0,     0,
     1315       0,     0,   149,   150,     0,     0,   151,     0,   152,   153,
     1316       0,     0,     0,     0,     0,   154,     0,   155,   156,   157,
     1317     158,     0,   159,   320,     0,   160,   161,   154,     0,   155,
     1318     156,   157,   158,     0,   159,   323,     0,   160,   161,   149,
     1319     150,     0,     0,   151,     0,   152,   153,     0,     0,     0,
     1320       0,   149,   150,     0,     0,   151,     0,   152,   153,     0,
     1321       0,     0,     0,    -1,   150,     0,     0,   151,     0,   152,
     1322     153,     0,     0,     0,     0,     0,   150,     0,     0,   151,
     1323       0,   152,   153,     0,     0,     0,     0,     0,     0,     0,
    12871324       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1288        0,   152,     0,   153,   154,   155,   156,     0,   157,   302,
    1289        0,   158,   159,     0,   152,   160,   153,   154,   155,   156,
    1290      305,   157,     0,     0,   158,   159,     0,   152,   160,   153,
    1291      154,   155,   156,     0,   157,   327,     0,   158,   159,     0,
    1292      152,   160,   153,   154,   155,   156,     0,   157,   331,     0,
    1293      158,   159,     0,   152,   160,   153,   154,   155,   156,     0,
    1294      157,   334,     0,   158,   159,     0,   152,   160,   153,   154,
    1295      155,   156,     0,   157,   336,     0,   158,   159,   147,   148,
    1296      160,     0,   149,     0,   150,   151,     0,     0,     0,     0,
    1297        0,     0,     0,   152,     0,   153,   154,   155,   156,   349,
    1298      157,     0,     0,   158,   159,     0,   152,   160,   153,   154,
    1299      155,   156,   367,   157,     0,     0,   158,   159,   147,   148,
    1300      160,     0,   149,     0,   150,   151,     0,     0,     0,     0,
    1301        0,  -148,   148,     0,     0,   149,     0,   150,   151,     0,
    1302        0,     0,     0,     0,     0,   148,     0,     0,   149,     0,
    1303      150,   151,     0,     0,     0,     0,     0,     0,     0,     0,
     1325       0,     0,     0,   154,     0,   155,   156,   157,   158,     0,
     1326     159,   325,     0,   160,   161,   154,     0,   155,   156,   157,
     1327     158,   338,   159,     0,     0,   160,   161,   154,     0,   155,
     1328     156,   157,   158,   356,   159,    88,     0,   160,   161,   197,
     1329     198,   199,     0,     8,     0,   200,    10,     0,     0,     0,
    13041330       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1305        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1306        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1307        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1308        0,     0,     0,   152,     0,   153,   154,   155,   156,   373,
    1309      157,     0,     0,   158,   159,     4,     0,   160,     0,     0,
    1310      201,   202,   203,     0,     8,     0,   204,    10,     0,     0,
    1311        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    1312        0,     0,     0,   152,     0,   153,   154,   155,   156,     0,
    1313      157,     0,     0,   158,   159,     0,   152,   160,   153,   154,
    1314      155,   156,     0,   157,     0,     0,   158,   159,     0,   152,
    1315      160,   153,   154,   155,   156,     0,   157,     0,     0,     4,
    1316      159,     0,     0,   160,     5,   134,    88,     0,     8,     0,
    1317        9,    10,     0,     0,     0,     0,     0,    12,    13,    14,
    1318       15,    16,    17,    18,    19,   205,   206,   207,     0,     0,
    1319        0,     0,     0,     0,     0,     0,    30,     0,    31,    32,
    1320       33,     0,     0,     0,     0,    38,    39,     0,     0,     0,
    1321        0,     0,     0,    93,     4,     0,     0,     0,    48,    87,
    1322       49,    88,     0,     8,     0,    89,    10,     0,     0,    51,
    1323      208,    52,     0,     0,     0,     0,     0,     0,     0,     0,
    1324        0,    12,    13,    14,    15,    16,    17,    18,    19,    20,
    1325       21,    22,     0,     0,     0,     0,     0,     0,     0,     0,
    1326       30,     0,    31,    32,    33,     0,     0,     0,     0,    38,
    1327       39,     0,     0,     0,     4,     0,     0,    93,     0,    87,
    1328        0,    88,    48,     8,    49,    89,    10,     0,     0,     0,
    1329        0,     0,     0,    51,     0,    52,    12,    13,    14,    15,
    1330       16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
    1331        0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
    1332        0,     0,     0,     0,    38,    39,     0,     0,     0,     4,
    1333        0,     0,    93,     0,    87,     0,    88,    48,     8,    49,
    1334       89,    10,     0,     0,     0,     0,     0,     0,    51,   193,
    1335       52,     0,     0,     0,     0,     0,    12,    13,    14,    15,
    1336       16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
    1337        0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
    1338        0,     0,     0,     0,    38,    39,     0,     0,     0,     4,
    1339        0,     0,    93,     0,    87,     0,    88,    48,     8,    49,
    1340       89,    10,     0,     0,     0,     0,     0,     0,    51,   196,
    1341       52,    12,    13,    14,    15,    16,    17,    18,    19,    90,
    1342       91,    92,     0,     0,     0,     0,     0,     0,     0,     0,
    1343       30,     0,    31,    32,    33,     0,     0,     0,     0,    38,
    1344       39,     0,     0,     0,     4,     0,     0,    93,     0,    87,
    1345        0,    88,    48,     8,    49,    89,    10,     0,     0,     0,
    1346        0,     0,     0,    51,   217,    52,     0,     0,     0,     0,
    1347        0,    12,    13,    14,    15,    16,    17,    18,    19,    90,
    1348       91,    92,     0,     0,     0,     0,     0,     0,     0,     0,
    1349       30,     0,    31,    32,    33,     0,     0,     0,     0,    38,
    1350       39,     0,     0,     0,     4,     0,     0,    93,     0,    87,
    1351        0,    88,    48,     8,    49,    89,    10,     0,     0,     0,
    1352        0,     0,     0,    51,   236,    52,    12,    13,    14,    15,
    1353       16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
    1354        0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
    1355        0,     0,     0,     0,    38,    39,     0,     0,     0,     4,
    1356        0,     0,    93,     0,    87,     0,    88,    48,     8,    49,
    1357       89,    10,     0,     0,     0,     0,     0,     0,    51,   241,
    1358       52,     0,     0,     0,     0,     0,    12,    13,    14,    15,
    1359       16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
    1360        0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
    1361        0,     0,     0,     0,    38,    39,     0,     0,     0,     4,
    1362        0,     0,    93,     0,    87,     0,    88,    48,     8,    49,
    1363       89,    10,     0,     0,     0,     0,     0,     0,    51,     0,
    1364       52,    12,    13,    14,    15,    16,    17,    18,    19,    90,
    1365       91,    92,     0,     0,     0,     0,     0,     0,     0,     0,
    1366       30,     0,    31,    32,    33,     0,     0,     0,     0,    38,
    1367       39,     0,     0,     0,     4,     0,     0,    93,     0,    87,
    1368        0,    88,    48,     8,    49,    89,    10,     0,     0,     0,
    1369        0,     0,     0,    96,     0,    52,     0,     0,     0,     0,
    1370        0,    12,    13,    14,    15,    16,    17,    18,    19,    90,
    1371       91,    92,     0,     0,     0,     0,     0,     0,     0,     0,
    1372       30,     0,    31,    32,    33,     0,     0,     0,     0,    38,
    1373       39,     0,     0,     0,     4,     0,     0,    93,     0,    87,
    1374        0,    88,    48,     8,    49,    89,    10,     0,     0,     0,
    1375        0,     0,     0,   102,     0,    52,    12,    13,    14,    15,
    1376       16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
    1377        0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
    1378        0,     0,     0,     0,    38,    39,     0,     0,     0,     4,
    1379        0,     0,    93,     0,    87,     0,    88,    48,     8,    49,
    1380       89,    10,     0,     0,     0,     0,     0,     0,   112,     0,
    1381       52,     0,     0,     0,     0,     0,    12,    13,    14,    15,
    1382       16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
    1383        0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
    1384        0,     0,     0,     0,    38,    39,     0,     0,     0,     4,
    1385        0,     0,    93,     0,    87,     0,    88,    48,     8,    49,
    1386       89,    10,     0,     0,     0,     0,     0,     0,   114,     0,
    1387       52,    12,    13,    14,    15,    16,    17,    18,    19,    90,
    1388       91,    92,     0,     0,     0,     0,     0,     0,     0,     0,
    1389       30,     0,    31,    32,    33,     0,     0,     0,     0,    38,
    1390       39,     0,     0,     0,     4,     0,     0,    93,     0,    87,
    1391        0,    88,    48,     8,    49,    89,    10,     0,     0,     0,
    1392        0,     0,     0,   116,     0,    52,     0,     0,     0,     0,
    1393        0,    12,    13,    14,    15,    16,    17,    18,    19,    90,
    1394       91,    92,     0,     0,     0,     0,     0,     0,     0,     0,
    1395       30,     0,    31,    32,    33,     0,     0,     0,     0,    38,
    1396       39,     0,     0,     0,     0,     0,     0,    93,     0,     0,
    1397        0,     0,    48,     0,    49,     0,     0,     0,     0,     0,
    1398        0,     0,     0,   163,     0,    52,    12,    13,    14,    15,
    1399       16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
    1400        0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
    1401        0,     0,     0,     0,    38,    39,     0,     0,     0,     0,
    1402        0,     0,    93,     0,     0,     0,     0,    48,     0,    49,
    1403        0,     0,     0,     0,     0,     0,     0,     0,   181,     0,
    1404       52
     1331       0,     0,     0,    88,   154,     0,   155,   156,   157,   158,
     1332     362,   159,     0,     0,   160,   161,   154,     0,   155,   156,
     1333     157,   158,    88,   159,     0,     0,   160,   161,   154,     0,
     1334     155,   156,   157,   158,     0,   159,     0,     0,   160,   161,
     1335     154,    88,   155,   156,   157,   158,     0,   159,     0,    88,
     1336       0,   161,     0,     0,     0,     0,     0,     0,     0,     0,
     1337       0,     0,     0,     0,   201,   202,   203,     0,     0,     0,
     1338      30,     0,    31,    32,    33,    30,     0,    31,    32,    33,
     1339       0,     0,     0,     0,     0,     0,     0,    94,     0,     0,
     1340       0,     0,    94,     0,    49,     0,     0,     0,    30,    49,
     1341      31,    32,    33,   113,     0,    52,     0,     0,     0,   204,
     1342      52,     0,     0,     0,     0,    94,     0,    30,     0,    31,
     1343      32,    33,    49,     0,     0,     0,     0,     0,     0,     0,
     1344       0,   115,     0,    52,    94,     0,    30,     0,    31,    32,
     1345      33,    49,     0,     0,    30,     0,    31,    32,    33,     0,
     1346     117,     0,    52,    94,     0,     0,     0,     0,     0,     0,
     1347      49,    94,     0,     0,     0,     0,     0,     0,    49,   164,
     1348       0,    52,     0,     0,     0,     0,     0,     0,     0,    52
    14051349};
    14061350
    14071351static const yytype_int16 yycheck[] =
    14081352{
    1409        1,     1,     7,    11,   245,    10,    13,    14,    15,   109,
    1410       17,   355,    19,    20,   112,   136,   257,   127,   137,   134,
    1411      127,   136,   143,    24,   127,     7,   136,   137,    10,   136,
    1412      137,    11,   109,   136,   137,   379,   142,   137,     4,     5,
    1413        6,    11,   127,     9,   142,    45,    11,   142,    49,   142,
    1414      136,   136,   136,   142,    20,    21,    22,   143,   136,   143,
    1415       26,   136,    63,    29,   136,   143,   136,   136,   143,     7,
    1416      136,   143,    10,   143,   143,   142,    11,   143,   110,    45,
    1417      136,   142,    48,   115,   142,   326,    52,   143,   109,   110,
    1418      142,    98,    99,   100,   142,    61,   109,   110,   142,    65,
    1419        7,     5,     6,    10,   110,     9,   142,   143,    74,   142,
    1420      111,    77,   142,   114,   142,   143,    20,    21,    22,   127,
    1421        7,   109,    26,    10,   124,   142,   143,   142,   133,   137,
    1422       96,   109,   133,    11,   109,   101,   102,   142,   104,   105,
    1423      106,   107,   108,   109,   110,    11,   112,   142,     3,     4,
    1424      116,   133,     7,   135,     9,    10,   136,   127,   124,   160,
    1425      142,    65,   163,   143,   137,   131,   136,   137,   134,    11,
    1426       74,   136,   137,    11,   175,   136,   177,   137,   144,   142,
    1427      146,   147,   148,    11,   150,   142,   152,   153,   154,   155,
    1428      156,   157,   158,   159,   132,   133,   142,   135,   142,   143,
    1429      166,   136,   137,   169,   142,   142,   172,   173,   174,   142,
    1430      176,   142,   143,   179,    11,   181,    11,   142,   143,   185,
    1431      124,   128,    11,   130,   131,   132,   133,   142,   135,   110,
    1432      134,   136,   139,   142,   143,   142,    46,    47,   137,   109,
    1433      144,   110,   136,   130,   131,   132,   133,   213,   135,   127,
    1434        3,     4,   139,   136,     7,   142,     9,    10,   136,   137,
    1435      110,   127,   166,   143,   109,   169,   137,   133,   136,   110,
    1436      136,   137,   238,   128,   133,   130,   131,   132,   133,   245,
    1437      135,   133,   282,   138,   139,   127,   252,   142,   136,   144,
    1438      143,   257,   258,   136,   136,   137,   262,   263,   264,   127,
    1439      266,   302,   268,   269,     0,     1,   143,   143,   136,   137,
    1440      143,   143,     8,   143,   143,   136,   143,    13,    14,    15,
    1441      112,    17,   142,    19,    20,   143,   292,     3,     4,   143,
    1442      127,     7,   127,     9,    10,   294,   133,     6,   127,   136,
    1443      137,   136,   137,    45,    40,     3,     4,   136,   137,     7,
    1444      379,     9,    10,   365,   170,    -1,    -1,    -1,    -1,    -1,
    1445      326,   327,   328,    -1,    -1,   331,   332,    -1,   334,   370,
    1446      336,   337,    -1,   339,   127,   128,    -1,   130,   131,   132,
    1447      133,    -1,   135,    -1,    -1,   138,   139,    -1,    -1,   142,
    1448      143,    -1,    -1,    -1,    90,    91,    92,    93,    94,    95,
    1449       96,    97,    98,    99,   100,   101,   102,   103,   104,    -1,
    1450      106,   107,   108,   109,    -1,   111,   112,   113,   114,   115,
    1451      116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
    1452      126,    -1,   128,    -1,    -1,   131,    -1,   133,     3,     4,
    1453       -1,   137,     7,    -1,     9,    10,   142,    -1,   144,    -1,
     1353       1,   109,   112,    11,     7,   137,    11,    10,     1,   136,
     1354     344,     3,     4,   142,   241,     7,   143,     9,    10,   142,
     1355      11,   248,     4,    24,     5,     6,   127,   142,     9,   137,
     1356     136,    11,   142,     7,   368,   136,    10,   143,   142,    20,
     1357      21,    22,   136,     7,   127,    26,    10,    29,    49,   143,
     1358     136,   110,    45,   136,   137,     7,   115,   143,    10,   110,
     1359     136,   136,    63,    45,   136,   136,    48,   143,   143,   142,
     1360      52,   143,   143,   134,   142,   136,     3,     4,   142,    61,
     1361       7,   109,     9,    10,    65,   109,   110,   142,   315,   142,
     1362       3,     4,   142,    74,     7,    77,     9,    10,   109,   110,
     1363     142,   143,    46,    47,   142,   142,     3,     4,   142,   109,
     1364       7,   112,     9,    10,   115,    97,   142,    99,    11,   127,
     1365     102,   103,   109,   105,   106,   107,   108,   109,   110,   111,
     1366     133,   113,   125,   134,   142,   117,   128,   142,   130,   131,
     1367     132,   133,   133,   135,   125,   146,   138,   139,   109,   137,
     1368     132,   142,   144,   133,   135,   109,   130,   131,   132,   133,
     1369     136,   135,   142,   164,   145,   139,   148,   149,   150,   133,
     1370     152,   135,   154,   155,   156,   157,   158,   159,   160,   161,
     1371     132,   133,   142,   135,     3,     4,   167,   142,     7,   170,
     1372       9,    10,   174,   142,   142,   177,   142,   142,   110,   181,
     1373     127,   128,   142,   130,   131,   132,   133,   137,   135,   137,
     1374     136,   138,   139,   136,   110,   128,   143,   130,   131,   132,
     1375     133,   136,   135,   136,   143,   138,   139,   209,   110,   143,
     1376     143,   128,   143,   130,   131,   132,   133,   143,   135,   136,
     1377     143,   138,   139,   136,   143,   143,   143,   109,   137,   142,
     1378     143,   110,   234,   136,   133,   136,   133,   143,   143,   241,
     1379     242,   112,   285,   143,   136,   143,   248,   249,   143,   143,
     1380     143,   253,   254,   255,   143,   257,   142,   259,   260,   143,
     1381     273,     0,     1,   136,     6,   143,    45,   368,   354,     8,
     1382     291,    -1,    -1,    -1,    13,    14,    15,    -1,    17,    -1,
     1383      19,    20,   284,   171,    -1,    -1,    -1,    -1,    -1,   128,
     1384      -1,   130,   131,   132,   133,    -1,   135,   136,    -1,   138,
     1385     139,    40,     3,     4,   143,    -1,     7,    -1,     9,    10,
     1386      -1,    -1,    -1,   315,   316,   317,    -1,    -1,   320,   321,
     1387      -1,   323,    -1,   325,   326,    -1,   328,     3,     4,    -1,
     1388      -1,     7,    -1,     9,    10,    -1,    -1,    -1,   359,    -1,
     1389      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1390      -1,    90,    91,    92,    93,    94,    95,    96,    97,    98,
     1391      99,   100,   101,   102,   103,   104,    -1,   106,   107,   108,
     1392     109,    -1,   111,   112,   113,   114,   115,   116,   117,   118,
     1393     119,   120,   121,   122,   123,   124,   125,   126,    -1,   128,
     1394      -1,    -1,   131,    -1,   133,     3,     4,    -1,   137,     7,
     1395      -1,     9,    10,   142,    -1,   144,    -1,    -1,    -1,     3,
     1396       4,    -1,    -1,     7,    -1,     9,    10,    13,    14,    15,
     1397      -1,    17,    -1,    19,    20,    -1,    -1,   128,    -1,   130,
     1398     131,   132,   133,     7,   135,   136,    10,   138,   139,     3,
     1399       4,    -1,   143,     7,    -1,     9,    10,    -1,    -1,    -1,
    14541400      -1,    -1,   128,    -1,   130,   131,   132,   133,    -1,   135,
    1455      136,    -1,   138,   139,    -1,    -1,   142,   143,    -1,    -1,
     1401     136,    -1,   138,   139,    -1,    -1,   128,   143,   130,   131,
     1402     132,   133,    -1,   135,   136,    -1,   138,   139,     3,     4,
     1403      -1,   143,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
     1404      -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
     1405      -1,    -1,    98,    99,   100,    -1,     3,     4,    -1,    -1,
     1406       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
    14561407     128,    -1,   130,   131,   132,   133,    -1,   135,   136,    -1,
    1457      138,   139,     3,     4,   142,   143,     7,    -1,     9,    10,
    1458       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,
     1408     138,   139,    -1,    -1,   128,   143,   130,   131,   132,   133,
     1409      -1,   135,    -1,    -1,   138,   139,     3,     4,    -1,   143,
     1410       7,    -1,     9,    10,   128,    -1,   130,   131,   132,   133,
     1411      -1,   135,    -1,    -1,   128,   139,   130,   131,   132,   133,
     1412      -1,   135,    -1,    -1,   138,   139,     3,     4,    -1,   143,
     1413       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
     1414       3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
     1415      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,    -1,
     1416     135,    -1,    -1,   138,   139,    -1,    -1,   128,   143,   130,
     1417     131,   132,   133,    -1,   135,    -1,    -1,   138,   139,    -1,
     1418      -1,   128,   143,   130,   131,   132,   133,    -1,   135,    -1,
     1419      -1,   138,   139,     3,     4,    -1,   143,     7,    -1,     9,
     1420      10,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,
     1421      -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1422      -1,   128,    -1,   130,   131,   132,   133,    -1,   135,    -1,
     1423      -1,   138,   139,     3,     4,    -1,   143,     7,    -1,     9,
     1424      10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1425      -1,   128,    -1,   130,   131,   132,   133,    -1,   135,    -1,
     1426      -1,   138,   139,    -1,    -1,   128,   143,   130,   131,   132,
     1427     133,    -1,   135,    -1,    -1,   138,   139,     3,     4,    -1,
     1428     143,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1429      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1430      -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
     1431      -1,     9,    10,    -1,    -1,    -1,    -1,    -1,   128,    -1,
     1432     130,   131,   132,   133,    -1,   135,    -1,    -1,   138,   139,
     1433      -1,    -1,   128,   143,   130,   131,   132,   133,    -1,   135,
     1434      -1,    -1,   138,   139,     3,     4,    -1,   143,     7,    -1,
     1435       9,    10,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
     1436     130,   131,   132,   133,    -1,   135,    14,    -1,   138,   139,
     1437       3,     4,    -1,   143,     7,    -1,     9,    10,    -1,    -1,
     1438      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1439      -1,    -1,    14,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1440      -1,    -1,   128,    -1,   130,   131,   132,   133,    -1,   135,
     1441      -1,    -1,   138,   139,    -1,    -1,   128,   143,   130,   131,
     1442     132,   133,    -1,   135,    -1,    -1,   138,   139,    -1,    -1,
     1443     128,   143,   130,   131,   132,   133,    -1,   135,    -1,    -1,
     1444     138,   139,     8,    14,    -1,   143,    -1,    13,    14,    15,
     1445      -1,    17,    -1,    19,    20,    -1,    -1,    -1,    -1,    -1,
     1446      -1,   109,    -1,   111,   112,   113,    -1,    -1,    -1,   128,
     1447      -1,   130,   131,   132,   133,    -1,   135,    -1,   126,   138,
     1448     139,    -1,    -1,    -1,   143,   133,    -1,   109,    -1,   111,
     1449     112,   113,    -1,    -1,   142,   128,   144,   130,   131,   132,
     1450     133,    -1,   135,    -1,   126,   138,   139,     8,    -1,    -1,
     1451     143,   133,    13,    14,    15,    -1,    17,    -1,    19,    20,
     1452     142,    -1,   144,    -1,    90,    91,    92,    93,    94,    95,
     1453      96,    97,    98,    99,   100,    -1,    -1,    -1,   109,    -1,
     1454     111,   112,   113,   109,    -1,   111,   112,   113,    -1,    -1,
     1455      -1,    -1,   118,   119,    -1,   126,    -1,    -1,    -1,    -1,
     1456     126,    -1,   133,     8,    -1,   131,    -1,   133,    13,    14,
     1457      15,   142,    17,   144,    19,    20,   142,   143,   144,    -1,
     1458      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    90,
     1459      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
     1460      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,
     1461     111,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
     1462      -1,    -1,     8,    -1,    -1,   126,    -1,    13,    14,    15,
     1463     131,    17,   133,    19,    20,    -1,    -1,    -1,    -1,    -1,
     1464      -1,   142,   143,   144,    -1,    90,    91,    92,    93,    94,
     1465      95,    96,    97,    98,    99,   100,    -1,    -1,    -1,    -1,
     1466      -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,    -1,
     1467      -1,    -1,    -1,   118,   119,    -1,    -1,    -1,     8,    -1,
     1468      -1,   126,    -1,    13,    14,    15,   131,    17,   133,    19,
     1469      20,    -1,    -1,    -1,    -1,    -1,    -1,   142,   143,   144,
     1470      -1,    -1,    -1,    -1,    90,    91,    92,    93,    94,    95,
     1471      96,    97,    98,    99,   100,    -1,    -1,    -1,    -1,    -1,
     1472      -1,    -1,    -1,   109,    -1,   111,   112,   113,    -1,    -1,
     1473      -1,    -1,   118,   119,    -1,    -1,    -1,     8,    -1,    -1,
     1474     126,    -1,    13,    14,    15,   131,    17,   133,    19,    20,
     1475      -1,    -1,    -1,    -1,    -1,    -1,   142,   143,   144,    -1,
     1476      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
     1477     100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,
     1478      -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,   119,
     1479      -1,    -1,    -1,     8,    -1,    -1,   126,    -1,    13,    14,
     1480      15,   131,    17,   133,    19,    20,    -1,    -1,    -1,    -1,
     1481      -1,    -1,   142,   143,   144,    -1,    -1,    -1,    -1,    90,
     1482      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
     1483      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,
     1484     111,   112,   113,    -1,    -1,    -1,    -1,   118,   119,    -1,
     1485      -1,    -1,     8,    -1,    -1,   126,    -1,    13,    14,    15,
     1486     131,    17,   133,    19,    20,    -1,    -1,    -1,    -1,    -1,
     1487      -1,   142,    -1,   144,    -1,    90,    91,    92,    93,    94,
     1488      95,    96,    97,    98,    99,   100,     3,     4,    -1,    -1,
     1489       7,    -1,     9,    10,   109,    -1,   111,   112,   113,    -1,
     1490      -1,     3,     4,   118,   119,     7,    -1,     9,    10,    -1,
     1491      -1,   126,    -1,     3,     4,    -1,   131,     7,   133,     9,
     1492      10,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,   144,
     1493      -1,    -1,    -1,    -1,    90,    91,    92,    93,    94,    95,
     1494      96,    97,    98,    99,   100,     3,     4,    -1,    -1,     7,
     1495      -1,     9,    10,   109,    -1,   111,   112,   113,    -1,    -1,
     1496       3,     4,   118,   119,     7,    -1,     9,    10,    -1,    -1,
     1497     126,    -1,     3,     4,    -1,   131,     7,   133,     9,    10,
     1498      -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,   144,     3,
     1499       4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
     1500      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1501      -1,   128,    -1,   130,   131,   132,   133,   134,   135,   136,
     1502      -1,   138,   139,    -1,    -1,    -1,   128,    -1,   130,   131,
     1503     132,   133,    -1,   135,   136,    -1,   138,   139,   128,    -1,
     1504     130,   131,   132,   133,    -1,   135,   136,    -1,   138,   139,
     1505       3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
     1506      -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
     1507     128,    -1,   130,   131,   132,   133,    -1,   135,   136,    -1,
     1508     138,   139,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
     1509     133,   134,   135,    -1,    -1,   138,   139,   128,    -1,   130,
     1510     131,   132,   133,    -1,   135,   136,    -1,   138,   139,    -1,
     1511      -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
     1512     134,   135,    -1,    -1,   138,   139,   128,    -1,   130,   131,
     1513     132,   133,    -1,   135,   136,    -1,   138,   139,     3,     4,
    14591514      -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1460       -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
    1461        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    14621515       3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
    1463       -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
    1464        7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
    1465       -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,    -1,
    1466      135,   136,    -1,   138,   139,     3,     4,   142,   143,     7,
     1516      -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
     1517      -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
     1518     133,    -1,   135,   136,    -1,   138,   139,   128,    -1,   130,
     1519     131,   132,   133,    -1,   135,   136,    -1,   138,   139,     3,
     1520       4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
     1521      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1522      -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
     1523      10,    -1,    -1,    -1,    -1,    -1,     4,    -1,    -1,     7,
    14671524      -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1468       -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
    1469       -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,
    1470      131,   132,   133,    -1,   135,   136,    -1,   138,   139,    -1,
    1471       -1,   142,   143,   128,    -1,   130,   131,   132,   133,    -1,
    1472      135,   136,    -1,   138,   139,    -1,    -1,   142,   143,   128,
    1473       -1,   130,   131,   132,   133,    -1,   135,   136,    -1,   138,
    1474      139,    -1,    -1,   142,   143,   128,    -1,   130,   131,   132,
    1475      133,    -1,   135,   136,    -1,   138,   139,    -1,    -1,   142,
    1476      143,   128,    -1,   130,   131,   132,   133,    -1,   135,    -1,
    1477       -1,   138,   139,     3,     4,   142,   143,     7,    -1,     9,
    1478       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1479      128,    -1,   130,   131,   132,   133,    -1,   135,    -1,    -1,
    1480      138,   139,    -1,    -1,   142,   143,   128,    -1,   130,   131,
    1481      132,   133,    -1,   135,    -1,    -1,   138,   139,     3,     4,
    1482      142,   143,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1483       -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
    1484        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1485        3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
    1486       -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
    1487        7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
    1488       -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
    1489       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
    1490      130,   131,   132,   133,    -1,   135,    -1,    -1,   138,   139,
    1491        3,     4,   142,   143,     7,    -1,     9,    10,    -1,    -1,
    1492       -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
    1493        7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
    1494       -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,    -1,
    1495      135,    -1,    -1,   138,   139,    -1,    -1,   142,   143,   128,
    1496       -1,   130,   131,   132,   133,    -1,   135,    -1,    -1,   138,
    1497      139,    -1,    -1,   142,   143,   128,    -1,   130,   131,   132,
    1498      133,    -1,   135,    -1,    -1,   138,   139,    -1,    -1,   142,
    1499      143,   128,    -1,   130,   131,   132,   133,    -1,   135,    -1,
    1500       -1,   138,   139,    -1,    -1,   142,   143,   128,    -1,   130,
    1501      131,   132,   133,    -1,   135,    -1,    -1,   138,   139,     3,
    1502        4,   142,   143,     7,    -1,     9,    10,    -1,    -1,    -1,
    1503       -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,
    1504      133,    -1,   135,    -1,    -1,   138,   139,    -1,    -1,   142,
    1505      143,   128,    -1,   130,   131,   132,   133,    -1,   135,    -1,
    1506       -1,   138,   139,     3,     4,   142,   143,     7,    -1,     9,
    1507       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     3,
    1508        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    1509       -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
    1510       -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1511       -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
    1512       -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
    1513        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1514       -1,    -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,
    1515       -1,   135,    -1,    -1,   138,   139,     3,     4,   142,   143,
    1516        7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,     3,
    1517        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    1518       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,
    1519      130,   131,   132,   133,    -1,   135,    -1,    -1,   138,   139,
    1520       -1,    -1,   142,   143,   128,    -1,   130,   131,   132,   133,
    1521       -1,   135,    -1,    -1,   138,   139,    -1,    -1,   142,   143,
    1522      128,    -1,   130,   131,   132,   133,    -1,   135,    -1,    -1,
    1523      138,   139,    -1,    -1,   142,   143,   128,    -1,   130,   131,
    1524      132,   133,   134,   135,   136,    -1,   138,   139,    -1,   128,
    1525      142,   130,   131,   132,   133,    -1,   135,   136,    -1,   138,
    1526      139,     3,     4,   142,    -1,     7,    -1,     9,    10,    -1,
    1527       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1528       -1,   128,    -1,   130,   131,   132,   133,    -1,   135,   136,
    1529       -1,   138,   139,    -1,   128,   142,   130,   131,   132,   133,
    1530       -1,   135,   136,    -1,   138,   139,     3,     4,   142,    -1,
    1531        7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,     3,
    1532        4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    1533       -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
    1534       -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
    1535       -1,     9,    10,    -1,    -1,    -1,    -1,    -1,     3,     4,
    1536       -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1537       -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
    1538       -1,    -1,    -1,    -1,    -1,    -1,   128,    -1,   130,   131,
    1539      132,   133,   134,   135,    -1,    -1,   138,   139,     3,     4,
    1540      142,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1541       -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
    1542       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1543       -1,   128,    -1,   130,   131,   132,   133,    -1,   135,   136,
    1544       -1,   138,   139,    -1,   128,   142,   130,   131,   132,   133,
    1545      134,   135,    -1,    -1,   138,   139,    -1,   128,   142,   130,
    1546      131,   132,   133,    -1,   135,   136,    -1,   138,   139,    -1,
    1547      128,   142,   130,   131,   132,   133,    -1,   135,   136,    -1,
    1548      138,   139,    -1,   128,   142,   130,   131,   132,   133,    -1,
    1549      135,   136,    -1,   138,   139,    -1,   128,   142,   130,   131,
    1550      132,   133,    -1,   135,   136,    -1,   138,   139,     3,     4,
    1551      142,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1552       -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
    1553      135,    -1,    -1,   138,   139,    -1,   128,   142,   130,   131,
    1554      132,   133,   134,   135,    -1,    -1,   138,   139,     3,     4,
    1555      142,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1556       -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
    1557       -1,    -1,    -1,    -1,    -1,     4,    -1,    -1,     7,    -1,
    1558        9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1559       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1560       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1561       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1562       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1563       -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,   134,
    1564      135,    -1,    -1,   138,   139,     8,    -1,   142,    -1,    -1,
    1565       13,    14,    15,    -1,    17,    -1,    19,    20,    -1,    -1,
    15661525      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    15671526      -1,    -1,    -1,   128,    -1,   130,   131,   132,   133,    -1,
    1568      135,    -1,    -1,   138,   139,    -1,   128,   142,   130,   131,
    1569      132,   133,    -1,   135,    -1,    -1,   138,   139,    -1,   128,
    1570      142,   130,   131,   132,   133,    -1,   135,    -1,    -1,     8,
    1571      139,    -1,    -1,   142,    13,    14,    15,    -1,    17,    -1,
    1572       19,    20,    -1,    -1,    -1,    -1,    -1,    90,    91,    92,
    1573       93,    94,    95,    96,    97,    98,    99,   100,    -1,    -1,
    1574       -1,    -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,
    1575      113,    -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,
    1576       -1,    -1,    -1,   126,     8,    -1,    -1,    -1,   131,    13,
    1577      133,    15,    -1,    17,    -1,    19,    20,    -1,    -1,   142,
    1578      143,   144,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1579       -1,    90,    91,    92,    93,    94,    95,    96,    97,    98,
    1580       99,   100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1581      109,    -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,
    1582      119,    -1,    -1,    -1,     8,    -1,    -1,   126,    -1,    13,
    1583       -1,    15,   131,    17,   133,    19,    20,    -1,    -1,    -1,
    1584       -1,    -1,    -1,   142,    -1,   144,    90,    91,    92,    93,
    1585       94,    95,    96,    97,    98,    99,   100,    -1,    -1,    -1,
    1586       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,
    1587       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,     8,
    1588       -1,    -1,   126,    -1,    13,    -1,    15,   131,    17,   133,
    1589       19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   142,   143,
    1590      144,    -1,    -1,    -1,    -1,    -1,    90,    91,    92,    93,
    1591       94,    95,    96,    97,    98,    99,   100,    -1,    -1,    -1,
    1592       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,
    1593       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,     8,
    1594       -1,    -1,   126,    -1,    13,    -1,    15,   131,    17,   133,
    1595       19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   142,   143,
    1596      144,    90,    91,    92,    93,    94,    95,    96,    97,    98,
    1597       99,   100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1598      109,    -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,
    1599      119,    -1,    -1,    -1,     8,    -1,    -1,   126,    -1,    13,
    1600       -1,    15,   131,    17,   133,    19,    20,    -1,    -1,    -1,
    1601       -1,    -1,    -1,   142,   143,   144,    -1,    -1,    -1,    -1,
    1602       -1,    90,    91,    92,    93,    94,    95,    96,    97,    98,
    1603       99,   100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1604      109,    -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,
    1605      119,    -1,    -1,    -1,     8,    -1,    -1,   126,    -1,    13,
    1606       -1,    15,   131,    17,   133,    19,    20,    -1,    -1,    -1,
    1607       -1,    -1,    -1,   142,   143,   144,    90,    91,    92,    93,
    1608       94,    95,    96,    97,    98,    99,   100,    -1,    -1,    -1,
    1609       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,
    1610       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,     8,
    1611       -1,    -1,   126,    -1,    13,    -1,    15,   131,    17,   133,
    1612       19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   142,   143,
    1613      144,    -1,    -1,    -1,    -1,    -1,    90,    91,    92,    93,
    1614       94,    95,    96,    97,    98,    99,   100,    -1,    -1,    -1,
    1615       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,
    1616       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,     8,
    1617       -1,    -1,   126,    -1,    13,    -1,    15,   131,    17,   133,
    1618       19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,
    1619      144,    90,    91,    92,    93,    94,    95,    96,    97,    98,
    1620       99,   100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1621      109,    -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,
    1622      119,    -1,    -1,    -1,     8,    -1,    -1,   126,    -1,    13,
    1623       -1,    15,   131,    17,   133,    19,    20,    -1,    -1,    -1,
    1624       -1,    -1,    -1,   142,    -1,   144,    -1,    -1,    -1,    -1,
    1625       -1,    90,    91,    92,    93,    94,    95,    96,    97,    98,
    1626       99,   100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1627      109,    -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,
    1628      119,    -1,    -1,    -1,     8,    -1,    -1,   126,    -1,    13,
    1629       -1,    15,   131,    17,   133,    19,    20,    -1,    -1,    -1,
    1630       -1,    -1,    -1,   142,    -1,   144,    90,    91,    92,    93,
    1631       94,    95,    96,    97,    98,    99,   100,    -1,    -1,    -1,
    1632       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,
    1633       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,     8,
    1634       -1,    -1,   126,    -1,    13,    -1,    15,   131,    17,   133,
    1635       19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,
    1636      144,    -1,    -1,    -1,    -1,    -1,    90,    91,    92,    93,
    1637       94,    95,    96,    97,    98,    99,   100,    -1,    -1,    -1,
    1638       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,
    1639       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,     8,
    1640       -1,    -1,   126,    -1,    13,    -1,    15,   131,    17,   133,
    1641       19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,
    1642      144,    90,    91,    92,    93,    94,    95,    96,    97,    98,
    1643       99,   100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1644      109,    -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,
    1645      119,    -1,    -1,    -1,     8,    -1,    -1,   126,    -1,    13,
    1646       -1,    15,   131,    17,   133,    19,    20,    -1,    -1,    -1,
    1647       -1,    -1,    -1,   142,    -1,   144,    -1,    -1,    -1,    -1,
    1648       -1,    90,    91,    92,    93,    94,    95,    96,    97,    98,
    1649       99,   100,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1650      109,    -1,   111,   112,   113,    -1,    -1,    -1,    -1,   118,
    1651      119,    -1,    -1,    -1,    -1,    -1,    -1,   126,    -1,    -1,
    1652       -1,    -1,   131,    -1,   133,    -1,    -1,    -1,    -1,    -1,
    1653       -1,    -1,    -1,   142,    -1,   144,    90,    91,    92,    93,
    1654       94,    95,    96,    97,    98,    99,   100,    -1,    -1,    -1,
    1655       -1,    -1,    -1,    -1,    -1,   109,    -1,   111,   112,   113,
    1656       -1,    -1,    -1,    -1,   118,   119,    -1,    -1,    -1,    -1,
    1657       -1,    -1,   126,    -1,    -1,    -1,    -1,   131,    -1,   133,
    1658       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   142,    -1,
    1659      144
     1527     135,   136,    -1,   138,   139,   128,    -1,   130,   131,   132,
     1528     133,   134,   135,    -1,    -1,   138,   139,   128,    -1,   130,
     1529     131,   132,   133,   134,   135,    14,    -1,   138,   139,    13,
     1530      14,    15,    -1,    17,    -1,    19,    20,    -1,    -1,    -1,
     1531      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1532      -1,    -1,    -1,    14,   128,    -1,   130,   131,   132,   133,
     1533     134,   135,    -1,    -1,   138,   139,   128,    -1,   130,   131,
     1534     132,   133,    14,   135,    -1,    -1,   138,   139,   128,    -1,
     1535     130,   131,   132,   133,    -1,   135,    -1,    -1,   138,   139,
     1536     128,    14,   130,   131,   132,   133,    -1,   135,    -1,    14,
     1537      -1,   139,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1538      -1,    -1,    -1,    -1,    98,    99,   100,    -1,    -1,    -1,
     1539     109,    -1,   111,   112,   113,   109,    -1,   111,   112,   113,
     1540      -1,    -1,    -1,    -1,    -1,    -1,    -1,   126,    -1,    -1,
     1541      -1,    -1,   126,    -1,   133,    -1,    -1,    -1,   109,   133,
     1542     111,   112,   113,   142,    -1,   144,    -1,    -1,    -1,   143,
     1543     144,    -1,    -1,    -1,    -1,   126,    -1,   109,    -1,   111,
     1544     112,   113,   133,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1545      -1,   142,    -1,   144,   126,    -1,   109,    -1,   111,   112,
     1546     113,   133,    -1,    -1,   109,    -1,   111,   112,   113,    -1,
     1547     142,    -1,   144,   126,    -1,    -1,    -1,    -1,    -1,    -1,
     1548     133,   126,    -1,    -1,    -1,    -1,    -1,    -1,   133,   142,
     1549      -1,   144,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   144
    16601550};
    16611551
     
    16721562     154,   156,   158,   159,   160,   161,   162,   163,   170,   172,
    16731563     173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
    1674      183,   184,   185,   186,   187,   188,   137,    13,    15,    19,
    1675       98,    99,   100,   126,   154,   161,   142,   152,   154,   152,
    1676      160,   142,   142,   152,   142,   142,   142,   142,   142,   142,
    1677      142,   142,   142,   152,   142,   152,   142,   152,   109,   110,
    1678      153,   109,   137,   152,   142,   154,   109,   110,   142,   142,
    1679      109,   142,   109,   142,    14,   154,   162,   163,   163,   154,
    1680      153,   153,   154,   137,    11,   127,   136,     3,     4,     7,
    1681        9,    10,   128,   130,   131,   132,   133,   135,   138,   139,
    1682      142,   154,   153,   142,   152,   127,   136,   137,   169,   136,
    1683      152,   154,   142,   142,   142,   142,   142,   142,   154,   133,
    1684      110,   142,   154,   164,   154,   133,   154,   154,   154,   154,
    1685      154,   154,   154,   143,   153,   154,   143,   153,   154,   137,
    1686      137,    13,    14,    15,    19,    98,    99,   100,   143,   152,
    1687      161,   109,   110,   155,   109,   154,   110,   143,   153,   171,
    1688      134,   143,   144,   152,   154,   154,   154,   154,   154,   154,
    1689      154,   154,   154,   154,   154,   154,   143,   153,   127,   143,
    1690      157,   143,   153,   152,   152,   169,   154,   154,   154,   153,
    1691      154,   153,   136,   143,   154,   154,   143,   136,   136,   143,
    1692      154,   143,   136,   136,   136,   143,   136,   143,   136,   136,
    1693      143,   143,   143,   143,   143,   143,   143,   143,   143,   143,
    1694      143,   143,   136,   143,   143,   110,   154,   109,   143,   143,
    1695      137,   134,   136,   143,   154,   143,   154,   164,   143,   143,
    1696      154,   134,   136,   164,   154,   134,   154,   154,   154,   154,
    1697      154,   154,    13,    14,    15,    19,    98,    99,   100,   161,
    1698      143,   110,   110,   115,   154,   157,   136,   136,   133,   153,
    1699      136,   136,   133,   143,   136,   143,   136,   136,   143,   136,
    1700      143,   143,   143,   143,   143,   143,   143,   143,   143,   134,
    1701      164,   154,   154,   143,   112,   142,   165,   166,   168,   154,
    1702      154,   154,   154,   154,   154,   136,   143,   134,   166,   167,
    1703      142,   143,   143,   134,   143,   143,   143,   143,   168,   136,
    1704      143,   153,   167,   143
     1564     183,   184,   185,   186,   187,   188,   137,    13,    14,    15,
     1565      19,    98,    99,   100,   126,   154,   161,   142,   152,   142,
     1566     152,   160,   142,   142,   152,   142,   142,   142,   142,   142,
     1567     142,   142,   142,   142,   152,   142,   152,   142,   152,   109,
     1568     110,   153,   109,   137,   152,   142,   154,   109,   110,   142,
     1569     142,   109,   142,   109,   142,    14,   154,   162,   163,   163,
     1570     154,   153,   153,   154,   137,    11,   142,   127,   136,     3,
     1571       4,     7,     9,    10,   128,   130,   131,   132,   133,   135,
     1572     138,   139,   154,   153,   142,   152,   127,   136,   137,   169,
     1573     136,   152,   154,   154,   133,   154,   110,   142,   154,   164,
     1574     154,   133,   154,   154,   154,   154,   154,   154,   154,   143,
     1575     153,   154,   143,   153,   154,   137,   137,    13,    14,    15,
     1576      19,    98,    99,   100,   143,   152,   161,   109,   110,   155,
     1577     109,   154,   110,   143,   153,   171,   134,   143,   144,   152,
     1578     143,   153,   154,   154,   154,   154,   154,   154,   154,   154,
     1579     154,   154,   154,   154,   127,   143,   157,   143,   153,   152,
     1580     152,   169,   136,   143,   154,   143,   154,   143,   136,   136,
     1581     143,   154,   143,   136,   136,   136,   143,   136,   143,   136,
     1582     136,   143,   143,   143,   143,   143,   143,   143,   143,   143,
     1583     143,   143,   143,   136,   143,   143,   110,   154,   109,   143,
     1584     143,   137,   143,   134,   136,   154,   143,   154,   164,   154,
     1585     134,   136,   164,   154,   134,   154,   154,   154,   154,   154,
     1586     154,    13,    14,    15,    19,    98,    99,   100,   161,   143,
     1587     110,   110,   115,   154,   157,   136,   136,   133,   153,   136,
     1588     136,   133,   143,   136,   143,   136,   136,   143,   136,   143,
     1589     143,   143,   143,   143,   143,   143,   143,   143,   134,   164,
     1590     154,   154,   143,   112,   142,   165,   166,   168,   154,   154,
     1591     154,   154,   154,   154,   136,   143,   134,   166,   167,   142,
     1592     143,   143,   134,   143,   143,   143,   143,   168,   136,   143,
     1593     153,   167,   143
    17051594};
    17061595
     
    27742663
    27752664  case 39:
    2776 #line 590 "grammar.y"
     2665#line 587 "grammar.y"
     2666    {
     2667            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2668          ;}
     2669    break;
     2670
     2671  case 40:
     2672#line 594 "grammar.y"
    27772673    {
    27782674            leftv v = &(yyvsp[(1) - (3)].lv);
     
    27872683    break;
    27882684
    2789   case 40:
    2790 #line 601 "grammar.y"
     2685  case 41:
     2686#line 605 "grammar.y"
    27912687    {
    27922688            (yyval.lv) = (yyvsp[(1) - (1)].lv);
     
    27942690    break;
    27952691
    2796   case 41:
    2797 #line 607 "grammar.y"
     2692  case 42:
     2693#line 611 "grammar.y"
    27982694    {
    27992695            /*if ($1.typ == eunknown) YYERROR;*/
     
    28022698    break;
    28032699
    2804   case 42:
    2805 #line 611 "grammar.y"
     2700  case 43:
     2701#line 615 "grammar.y"
    28062702    { (yyval.lv) = (yyvsp[(1) - (1)].lv); ;}
    28072703    break;
    28082704
    2809   case 43:
    2810 #line 612 "grammar.y"
     2705  case 44:
     2706#line 616 "grammar.y"
    28112707    { (yyval.lv) = (yyvsp[(2) - (3)].lv); ;}
    2812     break;
    2813 
    2814   case 44:
    2815 #line 614 "grammar.y"
    2816     {
    2817             if(iiExprArith3(&(yyval.lv),'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv))) YYERROR;
    2818           ;}
    28192708    break;
    28202709
     
    28222711#line 618 "grammar.y"
    28232712    {
    2824             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'[',&(yyvsp[(3) - (4)].lv))) YYERROR;
     2713            if(iiExprArith3(&(yyval.lv),'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv))) YYERROR;
    28252714          ;}
    28262715    break;
     
    28292718#line 622 "grammar.y"
    28302719    {
    2831             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2720            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'[',&(yyvsp[(3) - (4)].lv))) YYERROR;
    28322721          ;}
    28332722    break;
     
    28362725#line 626 "grammar.y"
    28372726    {
    2838             if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2727            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    28392728          ;}
    28402729    break;
     
    28432732#line 630 "grammar.y"
    28442733    {
    2845             if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
     2734            if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    28462735          ;}
    28472736    break;
     
    28502739#line 634 "grammar.y"
    28512740    {
    2852             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2741            if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
    28532742          ;}
    28542743    break;
     
    28572746#line 638 "grammar.y"
    28582747    {
    2859             if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2748            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    28602749          ;}
    28612750    break;
     
    28642753#line 642 "grammar.y"
    28652754    {
    2866             if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
     2755            if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    28672756          ;}
    28682757    break;
     
    28712760#line 646 "grammar.y"
    28722761    {
    2873             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2762            if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
    28742763          ;}
    28752764    break;
     
    28782767#line 650 "grammar.y"
    28792768    {
    2880             if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2769            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    28812770          ;}
    28822771    break;
     
    28852774#line 654 "grammar.y"
    28862775    {
    2887             if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2776            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
    28882777          ;}
    28892778    break;
     
    28922781#line 658 "grammar.y"
    28932782    {
    2894             if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2783            if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
    28952784          ;}
    28962785    break;
     
    28992788#line 662 "grammar.y"
    29002789    {
    2901             if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2790            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
    29022791          ;}
    29032792    break;
     
    29062795#line 666 "grammar.y"
    29072796    {
    2908             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2797            if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
    29092798          ;}
    29102799    break;
     
    29202809#line 674 "grammar.y"
    29212810    {
    2922             if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2811            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    29232812          ;}
    29242813    break;
     
    29272816#line 678 "grammar.y"
    29282817    {
    2929             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2818            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
    29302819          ;}
    29312820    break;
     
    29342823#line 682 "grammar.y"
    29352824    {
    2936             if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2825            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    29372826          ;}
    29382827    break;
     
    29412830#line 686 "grammar.y"
    29422831    {
    2943             if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2832            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
    29442833          ;}
    29452834    break;
     
    29552844#line 694 "grammar.y"
    29562845    {
    2957             if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
     2846            if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
    29582847          ;}
    29592848    break;
     
    29622851#line 698 "grammar.y"
    29632852    {
    2964             if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2853            if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
    29652854          ;}
    29662855    break;
     
    29692858#line 702 "grammar.y"
    29702859    {
    2971             if(iiExprArith3(&(yyval.lv),MATRIX_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2860            if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
    29722861          ;}
    29732862    break;
     
    29762865#line 706 "grammar.y"
    29772866    {
    2978             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),MATRIX_CMD)) YYERROR;
     2867            if(iiExprArith3(&(yyval.lv),MATRIX_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
    29792868          ;}
    29802869    break;
     
    29832872#line 710 "grammar.y"
    29842873    {
    2985             if(iiExprArith3(&(yyval.lv),INTMAT_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2874            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),MATRIX_CMD)) YYERROR;
    29862875          ;}
    29872876    break;
     
    29902879#line 714 "grammar.y"
    29912880    {
    2992             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),INTMAT_CMD)) YYERROR;
     2881            if(iiExprArith3(&(yyval.lv),INTMAT_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
    29932882          ;}
    29942883    break;
     
    29972886#line 718 "grammar.y"
    29982887    {
    2999             if(iiExprArith3(&(yyval.lv),RING_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2888            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),INTMAT_CMD)) YYERROR;
    30002889          ;}
    30012890    break;
     
    30042893#line 722 "grammar.y"
    30052894    {
    3006             if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),RING_CMD)) YYERROR;
     2895            if(iiExprArith3(&(yyval.lv),RING_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
    30072896          ;}
    30082897    break;
     
    30112900#line 726 "grammar.y"
    30122901    {
    3013             (yyval.lv)=(yyvsp[(2) - (3)].lv);
     2902            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),RING_CMD)) YYERROR;
    30142903          ;}
    30152904    break;
     
    30172906  case 73:
    30182907#line 730 "grammar.y"
     2908    {
     2909            (yyval.lv)=(yyvsp[(2) - (3)].lv);
     2910          ;}
     2911    break;
     2912
     2913  case 74:
     2914#line 734 "grammar.y"
    30192915    {
    30202916            #ifdef SIQ
     
    30352931    break;
    30362932
    3037   case 74:
    3038 #line 747 "grammar.y"
     2933  case 75:
     2934#line 751 "grammar.y"
    30392935    {
    30402936            #ifdef SIQ
     
    30442940    break;
    30452941
    3046   case 75:
    3047 #line 753 "grammar.y"
     2942  case 76:
     2943#line 757 "grammar.y"
    30482944    {
    30492945            #ifdef SIQ
     
    30572953    break;
    30582954
    3059   case 76:
    3060 #line 765 "grammar.y"
     2955  case 77:
     2956#line 769 "grammar.y"
    30612957    {
    30622958            #ifdef SIQ
     
    30662962    break;
    30672963
    3068   case 77:
    3069 #line 773 "grammar.y"
     2964  case 78:
     2965#line 777 "grammar.y"
    30702966    {
    30712967            #ifdef SIQ
     
    30752971    break;
    30762972
    3077   case 78:
    3078 #line 782 "grammar.y"
    3079     {
    3080             if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),PLUSPLUS)) YYERROR;
    3081           ;}
    3082     break;
    3083 
    30842973  case 79:
    30852974#line 786 "grammar.y"
    30862975    {
    3087             if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),MINUSMINUS)) YYERROR;
     2976            if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),PLUSPLUS)) YYERROR;
    30882977          ;}
    30892978    break;
     
    30922981#line 790 "grammar.y"
    30932982    {
    3094             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'+',&(yyvsp[(3) - (3)].lv))) YYERROR;
     2983            if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),MINUSMINUS)) YYERROR;
    30952984          ;}
    30962985    break;
     
    30992988#line 794 "grammar.y"
    31002989    {
    3101             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'-',&(yyvsp[(3) - (3)].lv))) YYERROR;
     2990            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'+',&(yyvsp[(3) - (3)].lv))) YYERROR;
    31022991          ;}
    31032992    break;
     
    31062995#line 798 "grammar.y"
    31072996    {
    3108             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
     2997            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'-',&(yyvsp[(3) - (3)].lv))) YYERROR;
    31092998          ;}
    31102999    break;
     
    31133002#line 802 "grammar.y"
    31143003    {
    3115             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'^',&(yyvsp[(3) - (3)].lv))) YYERROR;
     3004            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
    31163005          ;}
    31173006    break;
     
    31203009#line 806 "grammar.y"
    31213010    {
    3122             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
     3011            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'^',&(yyvsp[(3) - (3)].lv))) YYERROR;
    31233012          ;}
    31243013    break;
     
    31343023#line 814 "grammar.y"
    31353024    {
    3136             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),NOTEQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
     3025            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
    31373026          ;}
    31383027    break;
     
    31413030#line 818 "grammar.y"
    31423031    {
    3143             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),EQUAL_EQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
     3032            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),NOTEQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
    31443033          ;}
    31453034    break;
     
    31483037#line 822 "grammar.y"
    31493038    {
    3150             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),DOTDOT,&(yyvsp[(3) - (3)].lv))) YYERROR;
     3039            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),EQUAL_EQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
    31513040          ;}
    31523041    break;
     
    31553044#line 826 "grammar.y"
    31563045    {
    3157             if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),':',&(yyvsp[(3) - (3)].lv))) YYERROR;
     3046            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),DOTDOT,&(yyvsp[(3) - (3)].lv))) YYERROR;
    31583047          ;}
    31593048    break;
     
    31613050  case 90:
    31623051#line 830 "grammar.y"
     3052    {
     3053            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),':',&(yyvsp[(3) - (3)].lv))) YYERROR;
     3054          ;}
     3055    break;
     3056
     3057  case 91:
     3058#line 834 "grammar.y"
    31633059    {
    31643060            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     
    31693065    break;
    31703066
    3171   case 91:
    3172 #line 837 "grammar.y"
     3067  case 92:
     3068#line 841 "grammar.y"
    31733069    {
    31743070            if(iiExprArith1(&(yyval.lv),&(yyvsp[(2) - (2)].lv),'-')) YYERROR;
     
    31763072    break;
    31773073
    3178   case 92:
    3179 #line 843 "grammar.y"
     3074  case 93:
     3075#line 847 "grammar.y"
    31803076    { (yyval.lv) = (yyvsp[(1) - (2)].lv); ;}
    31813077    break;
    31823078
    3183   case 93:
    3184 #line 845 "grammar.y"
     3079  case 94:
     3080#line 849 "grammar.y"
    31853081    {
    31863082            if ((yyvsp[(1) - (2)].lv).rtyp==0)
     
    31993095    break;
    32003096
    3201   case 95:
    3202 #line 865 "grammar.y"
     3097  case 96:
     3098#line 869 "grammar.y"
    32033099    {
    32043100            if ((yyvsp[(2) - (3)].lv).Typ()!=STRING_CMD)
     
    32113107    break;
    32123108
    3213   case 98:
    3214 #line 882 "grammar.y"
     3109  case 99:
     3110#line 886 "grammar.y"
    32153111    {
    32163112            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
     
    32193115    break;
    32203116
    3221   case 99:
    3222 #line 887 "grammar.y"
     3117  case 100:
     3118#line 891 "grammar.y"
    32233119    {
    32243120            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
     
    32273123    break;
    32283124
    3229   case 100:
    3230 #line 892 "grammar.y"
    3231     {
    3232             if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
    3233           ;}
    3234     break;
    3235 
    32363125  case 101:
    32373126#line 896 "grammar.y"
     
    32433132  case 102:
    32443133#line 900 "grammar.y"
     3134    {
     3135            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
     3136          ;}
     3137    break;
     3138
     3139  case 103:
     3140#line 904 "grammar.y"
    32453141    {
    32463142            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),myynest,(yyvsp[(1) - (8)].i),&(currRing->idroot), TRUE)) YYERROR;
     
    32603156    break;
    32613157
    3262   case 103:
    3263 #line 916 "grammar.y"
    3264     {
    3265             if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
    3266           ;}
    3267     break;
    3268 
    32693158  case 104:
    32703159#line 920 "grammar.y"
     3160    {
     3161            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
     3162          ;}
     3163    break;
     3164
     3165  case 105:
     3166#line 924 "grammar.y"
    32713167    {
    32723168            int r; TESTSETINT((yyvsp[(4) - (8)].lv),r);
     
    32863182    break;
    32873183
    3288   case 105:
    3289 #line 936 "grammar.y"
     3184  case 106:
     3185#line 940 "grammar.y"
    32903186    {
    32913187            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
     
    33033199    break;
    33043200
    3305   case 106:
    3306 #line 950 "grammar.y"
     3201  case 107:
     3202#line 954 "grammar.y"
    33073203    {
    33083204            int t=(yyvsp[(1) - (3)].lv).Typ();
     
    33273223    break;
    33283224
    3329   case 107:
    3330 #line 971 "grammar.y"
     3225  case 108:
     3226#line 975 "grammar.y"
    33313227    {
    33323228            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
     
    33353231    break;
    33363232
    3337   case 110:
    3338 #line 984 "grammar.y"
     3233  case 111:
     3234#line 988 "grammar.y"
    33393235    {
    33403236            leftv v = &(yyvsp[(2) - (5)].lv);
     
    33493245    break;
    33503246
    3351   case 111:
    3352 #line 998 "grammar.y"
     3247  case 112:
     3248#line 1002 "grammar.y"
    33533249    {
    33543250          // let rInit take care of any errors
     
    33573253    break;
    33583254
    3359   case 112:
    3360 #line 1006 "grammar.y"
     3255  case 113:
     3256#line 1010 "grammar.y"
    33613257    {
    33623258            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     
    33693265    break;
    33703266
    3371   case 113:
    3372 #line 1015 "grammar.y"
     3267  case 114:
     3268#line 1019 "grammar.y"
    33733269    {
    33743270            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     
    34143310    break;
    34153311
    3416   case 115:
    3417 #line 1061 "grammar.y"
     3312  case 116:
     3313#line 1065 "grammar.y"
    34183314    {
    34193315            (yyval.lv) = (yyvsp[(1) - (3)].lv);
     
    34233319    break;
    34243320
    3425   case 117:
    3426 #line 1071 "grammar.y"
     3321  case 118:
     3322#line 1075 "grammar.y"
    34273323    {
    34283324            (yyval.lv) = (yyvsp[(2) - (3)].lv);
     
    34303326    break;
    34313327
    3432   case 118:
    3433 #line 1077 "grammar.y"
     3328  case 119:
     3329#line 1081 "grammar.y"
    34343330    {
    34353331            expected_parms = TRUE;
     
    34373333    break;
    34383334
    3439   case 119:
    3440 #line 1089 "grammar.y"
     3335  case 120:
     3336#line 1093 "grammar.y"
    34413337    { if ((yyvsp[(1) - (2)].i) != '<') YYERROR;
    34423338            if((feFilePending=feFopen((yyvsp[(2) - (2)].name),"r",NULL,TRUE))==NULL) YYERROR; ;}
    34433339    break;
    34443340
    3445   case 120:
    3446 #line 1092 "grammar.y"
     3341  case 121:
     3342#line 1096 "grammar.y"
    34473343    { newFile((yyvsp[(2) - (4)].name),feFilePending); ;}
    34483344    break;
    34493345
    3450   case 121:
    3451 #line 1097 "grammar.y"
     3346  case 122:
     3347#line 1101 "grammar.y"
    34523348    {
    34533349            feHelp((yyvsp[(2) - (3)].name));
     
    34563352    break;
    34573353
    3458   case 122:
    3459 #line 1102 "grammar.y"
     3354  case 123:
     3355#line 1106 "grammar.y"
    34603356    {
    34613357            feHelp(NULL);
     
    34633359    break;
    34643360
    3465   case 123:
    3466 #line 1109 "grammar.y"
     3361  case 124:
     3362#line 1113 "grammar.y"
    34673363    {
    34683364            singular_example((yyvsp[(2) - (3)].name));
     
    34713367    break;
    34723368
    3473   case 124:
    3474 #line 1117 "grammar.y"
     3369  case 125:
     3370#line 1121 "grammar.y"
    34753371    {
    34763372          if (basePack!=(yyvsp[(2) - (2)].lv).req_packhdl)
     
    34833379    break;
    34843380
    3485   case 125:
    3486 #line 1129 "grammar.y"
     3381  case 126:
     3382#line 1133 "grammar.y"
    34873383    {
    34883384          leftv v=&(yyvsp[(2) - (2)].lv);
     
    35023398    break;
    35033399
    3504   case 126:
    3505 #line 1145 "grammar.y"
     3400  case 127:
     3401#line 1149 "grammar.y"
    35063402    {
    35073403          leftv v=&(yyvsp[(3) - (3)].lv);
     
    35213417    break;
    35223418
    3523   case 127:
    3524 #line 1164 "grammar.y"
    3525     {
    3526             list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
    3527           ;}
    3528     break;
    3529 
    35303419  case 128:
    35313420#line 1168 "grammar.y"
     
    35383427#line 1172 "grammar.y"
    35393428    {
     3429            list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
     3430          ;}
     3431    break;
     3432
     3433  case 130:
     3434#line 1176 "grammar.y"
     3435    {
    35403436            if ((yyvsp[(3) - (4)].i)==QRING_CMD) (yyvsp[(3) - (4)].i)=RING_CMD;
    35413437            list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
     
    35433439    break;
    35443440
    3545   case 130:
    3546 #line 1177 "grammar.y"
    3547     {
    3548             list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
    3549           ;}
    3550     break;
    3551 
    35523441  case 131:
    35533442#line 1181 "grammar.y"
    35543443    {
    3555             list_cmd(RING_CMD,NULL,"// ",TRUE);
     3444            list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
    35563445          ;}
    35573446    break;
     
    35603449#line 1185 "grammar.y"
    35613450    {
     3451            list_cmd(RING_CMD,NULL,"// ",TRUE);
     3452          ;}
     3453    break;
     3454
     3455  case 133:
     3456#line 1189 "grammar.y"
     3457    {
    35623458            list_cmd(MATRIX_CMD,NULL,"// ",TRUE);
    35633459           ;}
    35643460    break;
    35653461
    3566   case 133:
    3567 #line 1189 "grammar.y"
    3568     {
    3569             list_cmd(INTMAT_CMD,NULL,"// ",TRUE);
    3570           ;}
    3571     break;
    3572 
    35733462  case 134:
    35743463#line 1193 "grammar.y"
    35753464    {
    3576             list_cmd(PROC_CMD,NULL,"// ",TRUE);
     3465            list_cmd(INTMAT_CMD,NULL,"// ",TRUE);
    35773466          ;}
    35783467    break;
     
    35813470#line 1197 "grammar.y"
    35823471    {
     3472            list_cmd(PROC_CMD,NULL,"// ",TRUE);
     3473          ;}
     3474    break;
     3475
     3476  case 136:
     3477#line 1201 "grammar.y"
     3478    {
    35833479            list_cmd(0,(yyvsp[(3) - (4)].lv).Fullname(),"// ",TRUE);
    35843480            (yyvsp[(3) - (4)].lv).CleanUp();
     
    35863482    break;
    35873483
    3588   case 136:
    3589 #line 1202 "grammar.y"
     3484  case 137:
     3485#line 1206 "grammar.y"
    35903486    {
    35913487            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    35953491    break;
    35963492
    3597   case 137:
    3598 #line 1208 "grammar.y"
     3493  case 138:
     3494#line 1212 "grammar.y"
    35993495    {
    36003496            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    36043500    break;
    36053501
    3606   case 138:
    3607 #line 1214 "grammar.y"
     3502  case 139:
     3503#line 1218 "grammar.y"
    36083504    {
    36093505            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    36133509    break;
    36143510
    3615   case 139:
    3616 #line 1220 "grammar.y"
     3511  case 140:
     3512#line 1224 "grammar.y"
    36173513    {
    36183514            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    36223518    break;
    36233519
    3624   case 140:
    3625 #line 1226 "grammar.y"
     3520  case 141:
     3521#line 1230 "grammar.y"
    36263522    {
    36273523            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    36313527    break;
    36323528
    3633   case 141:
    3634 #line 1232 "grammar.y"
     3529  case 142:
     3530#line 1236 "grammar.y"
    36353531    {
    36363532            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    36403536    break;
    36413537
    3642   case 142:
    3643 #line 1238 "grammar.y"
     3538  case 143:
     3539#line 1242 "grammar.y"
    36443540    {
    36453541            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    36493545    break;
    36503546
    3651   case 143:
    3652 #line 1244 "grammar.y"
     3547  case 144:
     3548#line 1248 "grammar.y"
    36533549    {
    36543550            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     
    36583554    break;
    36593555
    3660   case 144:
    3661 #line 1256 "grammar.y"
     3556  case 145:
     3557#line 1260 "grammar.y"
    36623558    {
    36633559            list_cmd(-1,NULL,"// ",TRUE);
     
    36653561    break;
    36663562
    3667   case 145:
    3668 #line 1262 "grammar.y"
     3563  case 146:
     3564#line 1266 "grammar.y"
    36693565    { yyInRingConstruction = TRUE; ;}
    36703566    break;
    36713567
    3672   case 146:
    3673 #line 1271 "grammar.y"
     3568  case 147:
     3569#line 1275 "grammar.y"
    36743570    {
    36753571            const char *ring_name = (yyvsp[(2) - (8)].lv).name;
     
    37073603    break;
    37083604
    3709   case 147:
    3710 #line 1305 "grammar.y"
     3605  case 148:
     3606#line 1309 "grammar.y"
    37113607    {
    37123608            const char *ring_name = (yyvsp[(2) - (2)].lv).name;
     
    37173613    break;
    37183614
    3719   case 148:
    3720 #line 1315 "grammar.y"
     3615  case 149:
     3616#line 1319 "grammar.y"
    37213617    {
    37223618            if (((yyvsp[(1) - (2)].i)!=LIB_CMD)||(iiLibCmd((yyvsp[(2) - (2)].name),TRUE,TRUE,TRUE)))
     
    37313627    break;
    37323628
    3733   case 151:
    3734 #line 1331 "grammar.y"
     3629  case 152:
     3630#line 1335 "grammar.y"
    37353631    {
    37363632            if (((yyvsp[(1) - (2)].i)==KEEPRING_CMD) && (myynest==0))
     
    38033699    break;
    38043700
    3805   case 152:
    3806 #line 1403 "grammar.y"
     3701  case 153:
     3702#line 1407 "grammar.y"
    38073703    {
    38083704            if ((yyvsp[(2) - (2)].lv).rtyp!=IDHDL) MYYERROR("identifier expected");
     
    38123708    break;
    38133709
    3814   case 153:
    3815 #line 1409 "grammar.y"
     3710  case 154:
     3711#line 1413 "grammar.y"
    38163712    {
    38173713            //Print("typ is %d, rtyp:%d\n",$1.Typ(),$1.rtyp);
     
    38383734    break;
    38393735
    3840   case 154:
    3841 #line 1438 "grammar.y"
     3736  case 155:
     3737#line 1442 "grammar.y"
    38423738    {
    38433739            int i; TESTSETINT((yyvsp[(3) - (5)].lv),i);
     
    38543750    break;
    38553751
    3856   case 155:
    3857 #line 1451 "grammar.y"
     3752  case 156:
     3753#line 1455 "grammar.y"
    38583754    {
    38593755            if (currentVoice->ifsw==1)
     
    38743770    break;
    38753771
    3876   case 156:
    3877 #line 1468 "grammar.y"
     3772  case 157:
     3773#line 1472 "grammar.y"
    38783774    {
    38793775            int i; TESTSETINT((yyvsp[(3) - (5)].lv),i);
     
    38863782    break;
    38873783
    3888   case 157:
    3889 #line 1477 "grammar.y"
     3784  case 158:
     3785#line 1481 "grammar.y"
    38903786    {
    38913787            if (exitBuffer(BT_break)) YYERROR;
     
    38943790    break;
    38953791
    3896   case 158:
    3897 #line 1482 "grammar.y"
     3792  case 159:
     3793#line 1486 "grammar.y"
    38983794    {
    38993795            if (contBuffer(BT_break)) YYERROR;
     
    39023798    break;
    39033799
    3904   case 159:
    3905 #line 1490 "grammar.y"
     3800  case 160:
     3801#line 1494 "grammar.y"
    39063802    {
    39073803            /* -> if(!$2) break; $3; continue;*/
     
    39143810    break;
    39153811
    3916   case 160:
    3917 #line 1502 "grammar.y"
     3812  case 161:
     3813#line 1506 "grammar.y"
    39183814    {
    39193815            /* $2 */
     
    39333829    break;
    39343830
    3935   case 161:
    3936 #line 1521 "grammar.y"
     3831  case 162:
     3832#line 1525 "grammar.y"
    39373833    {
    39383834            procinfov pi;
     
    39473843    break;
    39483844
    3949   case 162:
    3950 #line 1532 "grammar.y"
     3845  case 163:
     3846#line 1536 "grammar.y"
    39513847    {
    39523848            idhdl h = enterid((yyvsp[(1) - (3)].name),myynest,PROC_CMD,&IDROOT,TRUE);
     
    39703866    break;
    39713867
    3972   case 163:
    3973 #line 1552 "grammar.y"
     3868  case 164:
     3869#line 1556 "grammar.y"
    39743870    {
    39753871            omFree((ADDRESS)(yyvsp[(3) - (4)].name));
     
    39943890    break;
    39953891
    3996   case 164:
    3997 #line 1576 "grammar.y"
     3892  case 165:
     3893#line 1580 "grammar.y"
    39983894    {
    39993895            // decl. of type proc p(int i)
     
    40033899    break;
    40043900
    4005   case 165:
    4006 #line 1582 "grammar.y"
     3901  case 166:
     3902#line 1586 "grammar.y"
    40073903    {
    40083904            // decl. of type proc p(i)
     
    40153911    break;
    40163912
    4017   case 166:
    4018 #line 1594 "grammar.y"
     3913  case 167:
     3914#line 1598 "grammar.y"
    40193915    {
    40203916            if(iiRETURNEXPR==NULL) YYERROR;
     
    40253921    break;
    40263922
    4027   case 167:
    4028 #line 1601 "grammar.y"
     3923  case 168:
     3924#line 1605 "grammar.y"
    40293925    {
    40303926            if ((yyvsp[(1) - (3)].i)==RETURN)
     
    40403936
    40413937/* Line 1267 of yacc.c.  */
    4042 #line 4040 "grammar.cc"
     3938#line 3936 "grammar.cc"
    40433939      default: break;
    40443940    }
  • Singular/grammar.y

    r686ce3 rda2bd0  
    503503            if(iiExprArith2(&$$, &$1, COLONCOLON, &$3)) YYERROR;
    504504          }
    505         | expr '('  ')'
     505        | elemexpr '('  ')'
    506506          {
    507507            if(iiExprArith1(&$$,&$1,'(')) YYERROR;
    508508          }
    509         | expr '(' exprlist ')'
     509        | elemexpr '(' exprlist ')'
    510510          {
    511511            if ($1.rtyp==UNKNOWN)
     
    583583            $$.rtyp  = STRING_CMD;
    584584            $$.data = $1;
     585          }
     586        | PROC_CMD '(' expr ')'
     587          {
     588            if(iiExprArith1(&$$,&$3,$1)) YYERROR;
    585589          }
    586590        ;
  • Singular/table.h

    r686ce3 rda2bd0  
    213213,{D(jjPRINT),      PRINT_CMD,       NONE,           LIST_CMD      , ALLOW_PLURAL |ALLOW_RING}
    214214,{D(jjPRINT),      PRINT_CMD,       NONE,           DEF_CMD       , ALLOW_PLURAL |ALLOW_RING}
     215,{D(jjDUMMY),      PROC_CMD,        PROC_CMD,       PROC_CMD       , ALLOW_PLURAL |ALLOW_RING}
    215216,{D(jjPRUNE),      PRUNE_CMD,       MODUL_CMD,      MODUL_CMD     , ALLOW_PLURAL |ALLOW_RING}
    216217,{D(kQHWeight),    QHWEIGHT_CMD,    INTVEC_CMD,     IDEAL_CMD     , ALLOW_PLURAL |ALLOW_RING}
Note: See TracChangeset for help on using the changeset viewer.