parser: regenerate to remove more closures
[nit.git] / src / parser / parser.nit
index dd4ef9c..6ce16b2 100644 (file)
@@ -703,1269 +703,1117 @@ class Parser
                        new ReduceAction548(20),
                        new ReduceAction549(20),
                        new ReduceAction550(20),
-                       new ReduceAction551(20),
-                       new ReduceAction552(20),
-                       new ReduceAction553(20),
-                       new ReduceAction554(20),
-                       new ReduceAction555(20),
-                       new ReduceAction556(20),
-                       new ReduceAction557(21),
-                       new ReduceAction558(21),
-                       new ReduceAction559(21),
-                       new ReduceAction560(21),
-                       new ReduceAction561(21),
-                       new ReduceAction562(21),
-                       new ReduceAction563(22),
-                       new ReduceAction564(22),
-                       new ReduceAction565(23),
-                       new ReduceAction566(24),
-                       new ReduceAction567(24),
-                       new ReduceAction568(24),
-                       new ReduceAction569(24),
-                       new ReduceAction570(24),
-                       new ReduceAction571(24),
-                       new ReduceAction572(25),
-                       new ReduceAction573(26),
-                       new ReduceAction574(26),
-                       new ReduceAction575(26),
-                       new ReduceAction576(26),
-                       new ReduceAction577(26),
-                       new ReduceAction578(26),
-                       new ReduceAction579(27),
-                       new ReduceAction580(28),
-                       new ReduceAction581(28),
-                       new ReduceAction582(29),
-                       new ReduceAction583(30),
-                       new ReduceAction583(30),
-                       new ReduceAction585(30),
-                       new ReduceAction586(31),
-                       new ReduceAction587(31),
-                       new ReduceAction588(31),
-                       new ReduceAction589(32),
-                       new ReduceAction590(32),
-                       new ReduceAction591(32),
-                       new ReduceAction592(33),
-                       new ReduceAction593(34),
-                       new ReduceAction594(34),
-                       new ReduceAction595(35),
-                       new ReduceAction596(36),
-                       new ReduceAction597(36),
-                       new ReduceAction598(36),
-                       new ReduceAction599(36),
-                       new ReduceAction600(36),
-                       new ReduceAction601(36),
-                       new ReduceAction602(36),
-                       new ReduceAction603(36),
-                       new ReduceAction604(37),
-                       new ReduceAction605(37),
-                       new ReduceAction606(38),
-                       new ReduceAction606(39),
-                       new ReduceAction608(40),
-                       new ReduceAction609(40),
-                       new ReduceAction610(40),
-                       new ReduceAction611(40),
-                       new ReduceAction612(41),
-                       new ReduceAction613(41),
-                       new ReduceAction614(42),
-                       new ReduceAction615(42),
-                       new ReduceAction616(43),
-                       new ReduceAction617(43),
-                       new ReduceAction608(44),
-                       new ReduceAction611(45),
-                       new ReduceAction611(45),
-                       new ReduceAction621(45),
-                       new ReduceAction622(45),
-                       new ReduceAction623(45),
-                       new ReduceAction624(45),
-                       new ReduceAction625(45),
-                       new ReduceAction626(45),
-                       new ReduceAction627(45),
-                       new ReduceAction628(45),
-                       new ReduceAction629(45),
-                       new ReduceAction630(45),
-                       new ReduceAction631(45),
-                       new ReduceAction611(45),
-                       new ReduceAction611(45),
-                       new ReduceAction611(45),
-                       new ReduceAction611(45),
-                       new ReduceAction611(45),
-                       new ReduceAction611(45),
-                       new ReduceAction638(45),
-                       new ReduceAction639(45),
-                       new ReduceAction640(45),
-                       new ReduceAction641(45),
-                       new ReduceAction640(45),
+                       new ReduceAction551(21),
+                       new ReduceAction552(21),
+                       new ReduceAction553(22),
+                       new ReduceAction554(23),
+                       new ReduceAction555(23),
+                       new ReduceAction556(23),
+                       new ReduceAction557(23),
+                       new ReduceAction558(23),
+                       new ReduceAction559(23),
+                       new ReduceAction560(24),
+                       new ReduceAction561(25),
+                       new ReduceAction562(25),
+                       new ReduceAction563(26),
+                       new ReduceAction564(27),
+                       new ReduceAction564(27),
+                       new ReduceAction566(27),
+                       new ReduceAction567(28),
+                       new ReduceAction568(28),
+                       new ReduceAction569(28),
+                       new ReduceAction570(29),
+                       new ReduceAction571(29),
+                       new ReduceAction572(29),
+                       new ReduceAction573(30),
+                       new ReduceAction574(31),
+                       new ReduceAction575(31),
+                       new ReduceAction576(32),
+                       new ReduceAction577(33),
+                       new ReduceAction578(33),
+                       new ReduceAction579(33),
+                       new ReduceAction580(33),
+                       new ReduceAction581(33),
+                       new ReduceAction582(33),
+                       new ReduceAction583(33),
+                       new ReduceAction584(33),
+                       new ReduceAction585(34),
+                       new ReduceAction586(34),
+                       new ReduceAction587(35),
+                       new ReduceAction587(36),
+                       new ReduceAction589(37),
+                       new ReduceAction590(37),
+                       new ReduceAction591(37),
+                       new ReduceAction592(37),
+                       new ReduceAction593(38),
+                       new ReduceAction594(38),
+                       new ReduceAction595(39),
+                       new ReduceAction596(39),
+                       new ReduceAction597(40),
+                       new ReduceAction598(40),
+                       new ReduceAction589(41),
+                       new ReduceAction592(42),
+                       new ReduceAction592(42),
+                       new ReduceAction602(42),
+                       new ReduceAction603(42),
+                       new ReduceAction604(42),
+                       new ReduceAction605(42),
+                       new ReduceAction606(42),
+                       new ReduceAction607(42),
+                       new ReduceAction608(42),
+                       new ReduceAction609(42),
+                       new ReduceAction610(42),
+                       new ReduceAction611(42),
+                       new ReduceAction612(42),
+                       new ReduceAction592(42),
+                       new ReduceAction592(42),
+                       new ReduceAction592(42),
+                       new ReduceAction592(42),
+                       new ReduceAction592(42),
+                       new ReduceAction592(42),
+                       new ReduceAction619(42),
+                       new ReduceAction620(42),
+                       new ReduceAction621(42),
+                       new ReduceAction622(42),
+                       new ReduceAction621(42),
+                       new ReduceAction624(42),
+                       new ReduceAction625(42),
+                       new ReduceAction624(42),
+                       new ReduceAction627(42),
+                       new ReduceAction628(42),
+                       new ReduceAction629(42),
+                       new ReduceAction630(42),
+                       new ReduceAction631(42),
+                       new ReduceAction632(42),
+                       new ReduceAction633(42),
+                       new ReduceAction634(42),
+                       new ReduceAction633(42),
+                       new ReduceAction636(42),
+                       new ReduceAction637(42),
+                       new ReduceAction636(42),
+                       new ReduceAction639(42),
+                       new ReduceAction640(43),
+                       new ReduceAction641(44),
+                       new ReduceAction642(45),
                        new ReduceAction643(45),
                        new ReduceAction644(45),
-                       new ReduceAction643(45),
+                       new ReduceAction645(45),
                        new ReduceAction646(45),
                        new ReduceAction647(45),
                        new ReduceAction648(45),
                        new ReduceAction649(45),
-                       new ReduceAction648(45),
-                       new ReduceAction651(45),
-                       new ReduceAction652(45),
-                       new ReduceAction651(45),
-                       new ReduceAction654(45),
-                       new ReduceAction655(45),
-                       new ReduceAction656(45),
-                       new ReduceAction657(45),
-                       new ReduceAction658(45),
-                       new ReduceAction659(45),
-                       new ReduceAction660(45),
-                       new ReduceAction661(45),
-                       new ReduceAction660(45),
-                       new ReduceAction663(45),
-                       new ReduceAction664(45),
-                       new ReduceAction663(45),
-                       new ReduceAction666(45),
+                       new ReduceAction650(46),
+                       new ReduceAction651(46),
+                       new ReduceAction652(46),
+                       new ReduceAction653(46),
+                       new ReduceAction652(46),
+                       new ReduceAction655(46),
+                       new ReduceAction656(46),
+                       new ReduceAction655(46),
+                       new ReduceAction658(46),
+                       new ReduceAction659(46),
+                       new ReduceAction660(46),
+                       new ReduceAction661(46),
+                       new ReduceAction660(46),
+                       new ReduceAction663(46),
+                       new ReduceAction664(46),
+                       new ReduceAction663(46),
+                       new ReduceAction666(46),
                        new ReduceAction667(46),
-                       new ReduceAction668(47),
-                       new ReduceAction669(47),
-                       new ReduceAction670(48),
-                       new ReduceAction671(48),
-                       new ReduceAction672(48),
-                       new ReduceAction673(48),
-                       new ReduceAction674(48),
-                       new ReduceAction675(48),
-                       new ReduceAction676(48),
-                       new ReduceAction677(48),
-                       new ReduceAction678(48),
-                       new ReduceAction679(49),
-                       new ReduceAction680(49),
-                       new ReduceAction681(49),
-                       new ReduceAction682(49),
-                       new ReduceAction683(49),
-                       new ReduceAction684(49),
-                       new ReduceAction685(50),
-                       new ReduceAction686(50),
-                       new ReduceAction687(51),
-                       new ReduceAction688(52),
-                       new ReduceAction689(52),
-                       new ReduceAction690(52),
-                       new ReduceAction691(52),
-                       new ReduceAction692(52),
-                       new ReduceAction693(52),
-                       new ReduceAction694(52),
-                       new ReduceAction695(52),
-                       new ReduceAction696(53),
-                       new ReduceAction697(53),
-                       new ReduceAction698(53),
+                       new ReduceAction668(46),
+                       new ReduceAction669(46),
+                       new ReduceAction670(46),
+                       new ReduceAction669(46),
+                       new ReduceAction672(46),
+                       new ReduceAction673(46),
+                       new ReduceAction672(46),
+                       new ReduceAction675(46),
+                       new ReduceAction676(46),
+                       new ReduceAction677(46),
+                       new ReduceAction678(46),
+                       new ReduceAction677(46),
+                       new ReduceAction680(46),
+                       new ReduceAction681(46),
+                       new ReduceAction680(46),
+                       new ReduceAction683(46),
+                       new ReduceAction684(47),
+                       new ReduceAction685(47),
+                       new ReduceAction686(48),
+                       new ReduceAction687(48),
+                       new ReduceAction688(49),
+                       new ReduceAction689(49),
+                       new ReduceAction690(49),
+                       new ReduceAction691(49),
+                       new ReduceAction692(49),
+                       new ReduceAction589(50),
+                       new ReduceAction591(50),
+                       new ReduceAction695(51),
+                       new ReduceAction696(51),
+                       new ReduceAction697(52),
+                       new ReduceAction698(52),
                        new ReduceAction699(53),
-                       new ReduceAction698(53),
+                       new ReduceAction700(53),
                        new ReduceAction701(53),
                        new ReduceAction702(53),
-                       new ReduceAction701(53),
-                       new ReduceAction704(53),
-                       new ReduceAction705(53),
-                       new ReduceAction706(53),
-                       new ReduceAction707(53),
-                       new ReduceAction706(53),
-                       new ReduceAction709(53),
-                       new ReduceAction710(53),
-                       new ReduceAction709(53),
-                       new ReduceAction712(53),
-                       new ReduceAction713(53),
-                       new ReduceAction714(53),
-                       new ReduceAction715(53),
-                       new ReduceAction716(53),
-                       new ReduceAction715(53),
-                       new ReduceAction718(53),
-                       new ReduceAction719(53),
-                       new ReduceAction718(53),
-                       new ReduceAction721(53),
-                       new ReduceAction722(53),
-                       new ReduceAction723(53),
-                       new ReduceAction724(53),
-                       new ReduceAction723(53),
-                       new ReduceAction726(53),
-                       new ReduceAction727(53),
-                       new ReduceAction726(53),
-                       new ReduceAction729(53),
-                       new ReduceAction730(54),
-                       new ReduceAction731(54),
-                       new ReduceAction732(55),
-                       new ReduceAction733(55),
-                       new ReduceAction734(56),
-                       new ReduceAction735(56),
-                       new ReduceAction736(56),
-                       new ReduceAction737(56),
-                       new ReduceAction738(56),
-                       new ReduceAction608(57),
-                       new ReduceAction610(57),
-                       new ReduceAction741(58),
-                       new ReduceAction742(58),
-                       new ReduceAction743(59),
-                       new ReduceAction744(59),
-                       new ReduceAction745(60),
-                       new ReduceAction746(60),
-                       new ReduceAction747(60),
-                       new ReduceAction748(60),
-                       new ReduceAction749(61),
-                       new ReduceAction750(61),
-                       new ReduceAction751(61),
-                       new ReduceAction752(61),
-                       new ReduceAction753(62),
-                       new ReduceAction611(63),
-                       new ReduceAction646(63),
-                       new ReduceAction647(63),
-                       new ReduceAction648(63),
-                       new ReduceAction649(63),
-                       new ReduceAction648(63),
-                       new ReduceAction651(63),
-                       new ReduceAction652(63),
-                       new ReduceAction651(63),
-                       new ReduceAction763(63),
-                       new ReduceAction611(64),
-                       new ReduceAction765(64),
-                       new ReduceAction611(65),
-                       new ReduceAction767(65),
-                       new ReduceAction768(65),
-                       new ReduceAction769(65),
-                       new ReduceAction770(65),
-                       new ReduceAction611(66),
-                       new ReduceAction772(66),
-                       new ReduceAction611(67),
-                       new ReduceAction774(67),
-                       new ReduceAction775(67),
-                       new ReduceAction776(67),
-                       new ReduceAction777(67),
-                       new ReduceAction778(67),
-                       new ReduceAction779(67),
-                       new ReduceAction780(67),
-                       new ReduceAction781(67),
-                       new ReduceAction782(67),
-                       new ReduceAction783(67),
-                       new ReduceAction784(67),
-                       new ReduceAction611(68),
-                       new ReduceAction786(68),
-                       new ReduceAction787(68),
-                       new ReduceAction611(69),
-                       new ReduceAction789(69),
-                       new ReduceAction790(69),
-                       new ReduceAction791(69),
-                       new ReduceAction611(70),
-                       new ReduceAction793(70),
-                       new ReduceAction794(70),
-                       new ReduceAction611(71),
-                       new ReduceAction796(71),
-                       new ReduceAction797(71),
-                       new ReduceAction798(71),
-                       new ReduceAction799(71),
-                       new ReduceAction800(71),
-                       new ReduceAction799(71),
-                       new ReduceAction802(71),
-                       new ReduceAction803(71),
-                       new ReduceAction802(71),
-                       new ReduceAction805(72),
-                       new ReduceAction806(72),
-                       new ReduceAction807(72),
-                       new ReduceAction808(72),
-                       new ReduceAction807(72),
-                       new ReduceAction810(72),
-                       new ReduceAction811(72),
-                       new ReduceAction810(72),
-                       new ReduceAction638(72),
-                       new ReduceAction639(72),
-                       new ReduceAction640(72),
-                       new ReduceAction641(72),
-                       new ReduceAction640(72),
-                       new ReduceAction643(72),
-                       new ReduceAction644(72),
-                       new ReduceAction643(72),
-                       new ReduceAction654(72),
-                       new ReduceAction655(72),
-                       new ReduceAction656(72),
-                       new ReduceAction657(72),
-                       new ReduceAction658(72),
-                       new ReduceAction659(72),
-                       new ReduceAction827(72),
-                       new ReduceAction828(72),
-                       new ReduceAction829(72),
-                       new ReduceAction830(72),
-                       new ReduceAction829(72),
-                       new ReduceAction832(72),
-                       new ReduceAction833(72),
-                       new ReduceAction834(72),
-                       new ReduceAction835(72),
-                       new ReduceAction836(72),
-                       new ReduceAction837(72),
-                       new ReduceAction838(72),
-                       new ReduceAction839(72),
-                       new ReduceAction840(72),
-                       new ReduceAction841(72),
-                       new ReduceAction842(72),
-                       new ReduceAction843(72),
-                       new ReduceAction844(72),
-                       new ReduceAction845(72),
-                       new ReduceAction846(72),
-                       new ReduceAction847(72),
-                       new ReduceAction848(72),
-                       new ReduceAction849(72),
-                       new ReduceAction850(72),
-                       new ReduceAction851(72),
-                       new ReduceAction852(72),
-                       new ReduceAction853(72),
-                       new ReduceAction611(72),
-                       new ReduceAction855(72),
-                       new ReduceAction856(72),
-                       new ReduceAction857(72),
-                       new ReduceAction858(72),
-                       new ReduceAction859(73),
-                       new ReduceAction860(73),
-                       new ReduceAction861(73),
-                       new ReduceAction862(73),
-                       new ReduceAction863(74),
-                       new ReduceAction864(75),
-                       new ReduceAction863(76),
-                       new ReduceAction866(77),
-                       new ReduceAction867(78),
-                       new ReduceAction868(79),
-                       new ReduceAction869(79),
-                       new ReduceAction870(80),
-                       new ReduceAction871(80),
-                       new ReduceAction872(80),
-                       new ReduceAction873(80),
-                       new ReduceAction874(81),
-                       new ReduceAction875(82),
-                       new ReduceAction876(82),
-                       new ReduceAction874(83),
-                       new ReduceAction878(84),
-                       new ReduceAction879(84),
-                       new ReduceAction880(84),
-                       new ReduceAction881(84),
-                       new ReduceAction882(84),
-                       new ReduceAction883(85),
-                       new ReduceAction884(86),
-                       new ReduceAction885(86),
-                       new ReduceAction886(87),
-                       new ReduceAction887(88),
-                       new ReduceAction888(88),
-                       new ReduceAction888(88),
-                       new ReduceAction890(88),
-                       new ReduceAction891(89),
-                       new ReduceAction892(89),
-                       new ReduceAction893(89),
-                       new ReduceAction892(89),
-                       new ReduceAction895(89),
-                       new ReduceAction896(89),
-                       new ReduceAction897(89),
-                       new ReduceAction896(89),
-                       new ReduceAction899(89),
-                       new ReduceAction900(89),
-                       new ReduceAction901(89),
-                       new ReduceAction900(89),
-                       new ReduceAction903(89),
-                       new ReduceAction904(89),
-                       new ReduceAction905(89),
-                       new ReduceAction904(89),
-                       new ReduceAction907(90),
-                       new ReduceAction908(90),
-                       new ReduceAction909(90),
-                       new ReduceAction907(91),
-                       new ReduceAction911(91),
-                       new ReduceAction908(91),
-                       new ReduceAction909(91),
-                       new ReduceAction914(92),
-                       new ReduceAction915(93),
-                       new ReduceAction916(93),
-                       new ReduceAction917(94),
-                       new ReduceAction918(95),
-                       new ReduceAction919(95),
-                       new ReduceAction920(96),
-                       new ReduceAction921(96),
-                       new ReduceAction922(96),
-                       new ReduceAction923(96),
-                       new ReduceAction924(97),
-                       new ReduceAction925(98),
-                       new ReduceAction926(99),
-                       new ReduceAction926(99),
-                       new ReduceAction928(100),
-                       new ReduceAction929(100),
-                       new ReduceAction70(100),
-                       new ReduceAction931(101),
-                       new ReduceAction932(101),
-                       new ReduceAction933(102),
-                       new ReduceAction934(102),
-                       new ReduceAction926(102),
-                       new ReduceAction344(103),
-                       new ReduceAction345(104),
-                       new ReduceAction346(104),
-                       new ReduceAction347(104),
-                       new ReduceAction348(104),
-                       new ReduceAction349(104),
-                       new ReduceAction350(104),
-                       new ReduceAction351(104),
-                       new ReduceAction352(104),
-                       new ReduceAction353(104),
-                       new ReduceAction354(104),
-                       new ReduceAction355(104),
-                       new ReduceAction356(104),
-                       new ReduceAction361(104),
-                       new ReduceAction362(104),
-                       new ReduceAction363(104),
-                       new ReduceAction364(104),
-                       new ReduceAction365(104),
-                       new ReduceAction366(104),
-                       new ReduceAction367(104),
-                       new ReduceAction368(104),
-                       new ReduceAction369(104),
-                       new ReduceAction370(104),
-                       new ReduceAction371(104),
-                       new ReduceAction372(104),
-                       new ReduceAction373(104),
-                       new ReduceAction374(104),
-                       new ReduceAction375(104),
-                       new ReduceAction376(104),
-                       new ReduceAction377(104),
-                       new ReduceAction378(104),
-                       new ReduceAction379(104),
-                       new ReduceAction380(104),
-                       new ReduceAction545(105),
-                       new ReduceAction546(105),
-                       new ReduceAction547(105),
-                       new ReduceAction548(105),
-                       new ReduceAction553(105),
-                       new ReduceAction554(105),
-                       new ReduceAction596(106),
-                       new ReduceAction597(106),
-                       new ReduceAction598(106),
-                       new ReduceAction599(106),
-                       new ReduceAction611(107),
-                       new ReduceAction646(107),
-                       new ReduceAction647(107),
-                       new ReduceAction648(107),
-                       new ReduceAction651(107),
-                       new ReduceAction649(107),
-                       new ReduceAction652(107),
-                       new ReduceAction648(107),
-                       new ReduceAction651(107),
-                       new ReduceAction611(108),
-                       new ReduceAction765(108),
-                       new ReduceAction611(109),
-                       new ReduceAction767(109),
-                       new ReduceAction768(109),
-                       new ReduceAction769(109),
-                       new ReduceAction770(109),
-                       new ReduceAction611(110),
-                       new ReduceAction772(110),
+                       new ReduceAction703(54),
+                       new ReduceAction704(54),
+                       new ReduceAction705(54),
+                       new ReduceAction706(54),
+                       new ReduceAction707(55),
+                       new ReduceAction592(56),
+                       new ReduceAction592(57),
+                       new ReduceAction710(57),
+                       new ReduceAction592(58),
+                       new ReduceAction712(58),
+                       new ReduceAction713(58),
+                       new ReduceAction714(58),
+                       new ReduceAction715(58),
+                       new ReduceAction592(59),
+                       new ReduceAction717(59),
+                       new ReduceAction592(60),
+                       new ReduceAction719(60),
+                       new ReduceAction720(60),
+                       new ReduceAction721(60),
+                       new ReduceAction722(60),
+                       new ReduceAction723(60),
+                       new ReduceAction724(60),
+                       new ReduceAction725(60),
+                       new ReduceAction726(60),
+                       new ReduceAction727(60),
+                       new ReduceAction728(60),
+                       new ReduceAction729(60),
+                       new ReduceAction592(61),
+                       new ReduceAction731(61),
+                       new ReduceAction732(61),
+                       new ReduceAction592(62),
+                       new ReduceAction734(62),
+                       new ReduceAction735(62),
+                       new ReduceAction736(62),
+                       new ReduceAction592(63),
+                       new ReduceAction738(63),
+                       new ReduceAction739(63),
+                       new ReduceAction592(64),
+                       new ReduceAction741(64),
+                       new ReduceAction742(64),
+                       new ReduceAction743(64),
+                       new ReduceAction744(64),
+                       new ReduceAction745(64),
+                       new ReduceAction744(64),
+                       new ReduceAction747(64),
+                       new ReduceAction748(64),
+                       new ReduceAction747(64),
+                       new ReduceAction750(65),
+                       new ReduceAction751(65),
+                       new ReduceAction752(65),
+                       new ReduceAction753(65),
+                       new ReduceAction752(65),
+                       new ReduceAction755(65),
+                       new ReduceAction756(65),
+                       new ReduceAction755(65),
+                       new ReduceAction619(65),
+                       new ReduceAction620(65),
+                       new ReduceAction621(65),
+                       new ReduceAction622(65),
+                       new ReduceAction621(65),
+                       new ReduceAction624(65),
+                       new ReduceAction625(65),
+                       new ReduceAction624(65),
+                       new ReduceAction627(65),
+                       new ReduceAction628(65),
+                       new ReduceAction629(65),
+                       new ReduceAction630(65),
+                       new ReduceAction631(65),
+                       new ReduceAction632(65),
+                       new ReduceAction772(65),
+                       new ReduceAction773(65),
+                       new ReduceAction774(65),
+                       new ReduceAction775(65),
+                       new ReduceAction774(65),
+                       new ReduceAction777(65),
+                       new ReduceAction778(65),
+                       new ReduceAction779(65),
+                       new ReduceAction780(65),
+                       new ReduceAction781(65),
+                       new ReduceAction782(65),
+                       new ReduceAction783(65),
+                       new ReduceAction784(65),
+                       new ReduceAction785(65),
+                       new ReduceAction786(65),
+                       new ReduceAction787(65),
+                       new ReduceAction788(65),
+                       new ReduceAction789(65),
+                       new ReduceAction790(65),
+                       new ReduceAction791(65),
+                       new ReduceAction792(65),
+                       new ReduceAction793(65),
+                       new ReduceAction794(65),
+                       new ReduceAction795(65),
+                       new ReduceAction796(65),
+                       new ReduceAction797(65),
+                       new ReduceAction798(65),
+                       new ReduceAction592(65),
+                       new ReduceAction800(65),
+                       new ReduceAction801(65),
+                       new ReduceAction802(65),
+                       new ReduceAction803(65),
+                       new ReduceAction804(66),
+                       new ReduceAction805(66),
+                       new ReduceAction806(66),
+                       new ReduceAction807(66),
+                       new ReduceAction808(67),
+                       new ReduceAction809(68),
+                       new ReduceAction808(69),
+                       new ReduceAction811(70),
+                       new ReduceAction812(71),
+                       new ReduceAction813(72),
+                       new ReduceAction814(72),
+                       new ReduceAction815(73),
+                       new ReduceAction816(73),
+                       new ReduceAction817(73),
+                       new ReduceAction818(73),
+                       new ReduceAction819(74),
+                       new ReduceAction820(75),
+                       new ReduceAction821(75),
+                       new ReduceAction819(76),
+                       new ReduceAction823(77),
+                       new ReduceAction824(77),
+                       new ReduceAction825(77),
+                       new ReduceAction826(77),
+                       new ReduceAction827(77),
+                       new ReduceAction828(78),
+                       new ReduceAction829(79),
+                       new ReduceAction830(79),
+                       new ReduceAction831(80),
+                       new ReduceAction832(81),
+                       new ReduceAction833(81),
+                       new ReduceAction833(81),
+                       new ReduceAction835(81),
+                       new ReduceAction836(82),
+                       new ReduceAction837(82),
+                       new ReduceAction838(82),
+                       new ReduceAction837(82),
+                       new ReduceAction840(82),
+                       new ReduceAction841(82),
+                       new ReduceAction842(82),
+                       new ReduceAction841(82),
+                       new ReduceAction844(82),
+                       new ReduceAction845(82),
+                       new ReduceAction846(82),
+                       new ReduceAction845(82),
+                       new ReduceAction848(82),
+                       new ReduceAction849(82),
+                       new ReduceAction850(82),
+                       new ReduceAction849(82),
+                       new ReduceAction852(83),
+                       new ReduceAction853(83),
+                       new ReduceAction854(83),
+                       new ReduceAction852(84),
+                       new ReduceAction856(84),
+                       new ReduceAction853(84),
+                       new ReduceAction854(84),
+                       new ReduceAction859(85),
+                       new ReduceAction860(86),
+                       new ReduceAction861(86),
+                       new ReduceAction862(87),
+                       new ReduceAction863(88),
+                       new ReduceAction864(88),
+                       new ReduceAction865(89),
+                       new ReduceAction866(89),
+                       new ReduceAction867(89),
+                       new ReduceAction868(89),
+                       new ReduceAction869(90),
+                       new ReduceAction870(91),
+                       new ReduceAction871(92),
+                       new ReduceAction871(92),
+                       new ReduceAction873(93),
+                       new ReduceAction874(93),
+                       new ReduceAction70(93),
+                       new ReduceAction876(94),
+                       new ReduceAction877(94),
+                       new ReduceAction878(95),
+                       new ReduceAction879(95),
+                       new ReduceAction871(95),
+                       new ReduceAction344(96),
+                       new ReduceAction345(97),
+                       new ReduceAction346(97),
+                       new ReduceAction347(97),
+                       new ReduceAction348(97),
+                       new ReduceAction349(97),
+                       new ReduceAction350(97),
+                       new ReduceAction351(97),
+                       new ReduceAction352(97),
+                       new ReduceAction353(97),
+                       new ReduceAction354(97),
+                       new ReduceAction355(97),
+                       new ReduceAction356(97),
+                       new ReduceAction361(97),
+                       new ReduceAction362(97),
+                       new ReduceAction363(97),
+                       new ReduceAction364(97),
+                       new ReduceAction365(97),
+                       new ReduceAction366(97),
+                       new ReduceAction367(97),
+                       new ReduceAction368(97),
+                       new ReduceAction369(97),
+                       new ReduceAction370(97),
+                       new ReduceAction371(97),
+                       new ReduceAction372(97),
+                       new ReduceAction373(97),
+                       new ReduceAction374(97),
+                       new ReduceAction375(97),
+                       new ReduceAction376(97),
+                       new ReduceAction377(97),
+                       new ReduceAction378(97),
+                       new ReduceAction379(97),
+                       new ReduceAction380(97),
+                       new ReduceAction545(98),
+                       new ReduceAction546(98),
+                       new ReduceAction549(98),
+                       new ReduceAction577(99),
+                       new ReduceAction578(99),
+                       new ReduceAction579(99),
+                       new ReduceAction580(99),
+                       new ReduceAction592(100),
+                       new ReduceAction592(101),
+                       new ReduceAction710(101),
+                       new ReduceAction592(102),
+                       new ReduceAction712(102),
+                       new ReduceAction713(102),
+                       new ReduceAction714(102),
+                       new ReduceAction715(102),
+                       new ReduceAction592(103),
+                       new ReduceAction717(103),
+                       new ReduceAction592(104),
+                       new ReduceAction719(104),
+                       new ReduceAction720(104),
+                       new ReduceAction721(104),
+                       new ReduceAction722(104),
+                       new ReduceAction723(104),
+                       new ReduceAction724(104),
+                       new ReduceAction725(104),
+                       new ReduceAction726(104),
+                       new ReduceAction727(104),
+                       new ReduceAction728(104),
+                       new ReduceAction729(104),
+                       new ReduceAction592(105),
+                       new ReduceAction731(105),
+                       new ReduceAction732(105),
+                       new ReduceAction592(106),
+                       new ReduceAction734(106),
+                       new ReduceAction735(106),
+                       new ReduceAction736(106),
+                       new ReduceAction592(107),
+                       new ReduceAction738(107),
+                       new ReduceAction739(107),
+                       new ReduceAction592(108),
+                       new ReduceAction741(108),
+                       new ReduceAction742(108),
+                       new ReduceAction743(108),
+                       new ReduceAction744(108),
+                       new ReduceAction747(108),
+                       new ReduceAction745(108),
+                       new ReduceAction748(108),
+                       new ReduceAction744(108),
+                       new ReduceAction747(108),
+                       new ReduceAction750(109),
+                       new ReduceAction751(109),
+                       new ReduceAction752(109),
+                       new ReduceAction755(109),
+                       new ReduceAction753(109),
+                       new ReduceAction756(109),
+                       new ReduceAction752(109),
+                       new ReduceAction755(109),
+                       new ReduceAction619(109),
+                       new ReduceAction620(109),
+                       new ReduceAction621(109),
+                       new ReduceAction624(109),
+                       new ReduceAction622(109),
+                       new ReduceAction625(109),
+                       new ReduceAction621(109),
+                       new ReduceAction624(109),
+                       new ReduceAction627(109),
+                       new ReduceAction628(109),
+                       new ReduceAction629(109),
+                       new ReduceAction630(109),
+                       new ReduceAction631(109),
+                       new ReduceAction632(109),
+                       new ReduceAction773(109),
+                       new ReduceAction774(109),
+                       new ReduceAction775(109),
+                       new ReduceAction774(109),
+                       new ReduceAction783(109),
+                       new ReduceAction784(109),
+                       new ReduceAction785(109),
+                       new ReduceAction786(109),
+                       new ReduceAction787(109),
+                       new ReduceAction788(109),
+                       new ReduceAction789(109),
+                       new ReduceAction790(109),
+                       new ReduceAction791(109),
+                       new ReduceAction792(109),
+                       new ReduceAction793(109),
+                       new ReduceAction794(109),
+                       new ReduceAction795(109),
+                       new ReduceAction796(109),
+                       new ReduceAction797(109),
+                       new ReduceAction798(109),
+                       new ReduceAction592(109),
+                       new ReduceAction800(109),
+                       new ReduceAction801(109),
+                       new ReduceAction802(109),
+                       new ReduceAction803(109),
+                       new ReduceAction577(110),
+                       new ReduceAction578(110),
+                       new ReduceAction579(110),
+                       new ReduceAction580(110),
+                       new ReduceAction581(110),
+                       new ReduceAction582(110),
+                       new ReduceAction583(110),
+                       new ReduceAction584(110),
+                       new ReduceAction592(111),
+                       new ReduceAction592(111),
+                       new ReduceAction602(111),
+                       new ReduceAction603(111),
+                       new ReduceAction604(111),
+                       new ReduceAction605(111),
+                       new ReduceAction606(111),
+                       new ReduceAction607(111),
+                       new ReduceAction608(111),
+                       new ReduceAction609(111),
+                       new ReduceAction610(111),
                        new ReduceAction611(111),
-                       new ReduceAction774(111),
-                       new ReduceAction775(111),
-                       new ReduceAction776(111),
-                       new ReduceAction777(111),
-                       new ReduceAction778(111),
-                       new ReduceAction779(111),
-                       new ReduceAction780(111),
-                       new ReduceAction781(111),
-                       new ReduceAction782(111),
-                       new ReduceAction783(111),
-                       new ReduceAction784(111),
-                       new ReduceAction611(112),
-                       new ReduceAction786(112),
-                       new ReduceAction787(112),
-                       new ReduceAction611(113),
-                       new ReduceAction789(113),
-                       new ReduceAction790(113),
-                       new ReduceAction791(113),
-                       new ReduceAction611(114),
-                       new ReduceAction793(114),
-                       new ReduceAction794(114),
-                       new ReduceAction611(115),
-                       new ReduceAction796(115),
-                       new ReduceAction797(115),
-                       new ReduceAction798(115),
-                       new ReduceAction799(115),
-                       new ReduceAction802(115),
-                       new ReduceAction800(115),
-                       new ReduceAction803(115),
-                       new ReduceAction799(115),
-                       new ReduceAction802(115),
-                       new ReduceAction805(116),
-                       new ReduceAction806(116),
-                       new ReduceAction807(116),
-                       new ReduceAction810(116),
-                       new ReduceAction808(116),
-                       new ReduceAction811(116),
-                       new ReduceAction807(116),
-                       new ReduceAction810(116),
-                       new ReduceAction638(116),
-                       new ReduceAction639(116),
-                       new ReduceAction640(116),
-                       new ReduceAction643(116),
-                       new ReduceAction641(116),
-                       new ReduceAction644(116),
-                       new ReduceAction640(116),
-                       new ReduceAction643(116),
-                       new ReduceAction654(116),
-                       new ReduceAction655(116),
-                       new ReduceAction656(116),
-                       new ReduceAction657(116),
-                       new ReduceAction658(116),
-                       new ReduceAction659(116),
-                       new ReduceAction828(116),
-                       new ReduceAction829(116),
-                       new ReduceAction830(116),
-                       new ReduceAction829(116),
-                       new ReduceAction838(116),
-                       new ReduceAction839(116),
-                       new ReduceAction840(116),
-                       new ReduceAction841(116),
-                       new ReduceAction842(116),
-                       new ReduceAction843(116),
-                       new ReduceAction844(116),
-                       new ReduceAction845(116),
-                       new ReduceAction846(116),
-                       new ReduceAction847(116),
-                       new ReduceAction848(116),
-                       new ReduceAction849(116),
-                       new ReduceAction850(116),
-                       new ReduceAction851(116),
-                       new ReduceAction852(116),
-                       new ReduceAction853(116),
-                       new ReduceAction611(116),
-                       new ReduceAction855(116),
-                       new ReduceAction856(116),
-                       new ReduceAction857(116),
-                       new ReduceAction858(116),
-                       new ReduceAction596(117),
-                       new ReduceAction597(117),
-                       new ReduceAction598(117),
-                       new ReduceAction599(117),
-                       new ReduceAction600(117),
-                       new ReduceAction601(117),
-                       new ReduceAction602(117),
-                       new ReduceAction603(117),
-                       new ReduceAction611(118),
-                       new ReduceAction611(118),
-                       new ReduceAction621(118),
-                       new ReduceAction622(118),
-                       new ReduceAction623(118),
-                       new ReduceAction624(118),
-                       new ReduceAction625(118),
-                       new ReduceAction626(118),
-                       new ReduceAction627(118),
-                       new ReduceAction628(118),
-                       new ReduceAction629(118),
-                       new ReduceAction630(118),
-                       new ReduceAction631(118),
-                       new ReduceAction611(118),
-                       new ReduceAction611(118),
-                       new ReduceAction611(118),
-                       new ReduceAction611(118),
-                       new ReduceAction611(118),
-                       new ReduceAction611(118),
-                       new ReduceAction638(118),
-                       new ReduceAction639(118),
-                       new ReduceAction640(118),
-                       new ReduceAction641(118),
-                       new ReduceAction640(118),
-                       new ReduceAction643(118),
-                       new ReduceAction644(118),
-                       new ReduceAction643(118),
-                       new ReduceAction646(118),
-                       new ReduceAction647(118),
-                       new ReduceAction648(118),
-                       new ReduceAction649(118),
-                       new ReduceAction648(118),
-                       new ReduceAction651(118),
-                       new ReduceAction652(118),
-                       new ReduceAction651(118),
-                       new ReduceAction654(118),
-                       new ReduceAction655(118),
-                       new ReduceAction656(118),
-                       new ReduceAction657(118),
-                       new ReduceAction658(118),
-                       new ReduceAction659(118),
-                       new ReduceAction660(118),
-                       new ReduceAction661(118),
-                       new ReduceAction660(118),
-                       new ReduceAction663(118),
-                       new ReduceAction664(118),
-                       new ReduceAction663(118),
-                       new ReduceAction666(118),
-                       new ReduceAction696(119),
-                       new ReduceAction697(119),
-                       new ReduceAction698(119),
-                       new ReduceAction699(119),
-                       new ReduceAction698(119),
-                       new ReduceAction701(119),
-                       new ReduceAction702(119),
-                       new ReduceAction701(119),
-                       new ReduceAction704(119),
-                       new ReduceAction705(119),
-                       new ReduceAction706(119),
-                       new ReduceAction707(119),
-                       new ReduceAction706(119),
-                       new ReduceAction709(119),
-                       new ReduceAction710(119),
-                       new ReduceAction709(119),
-                       new ReduceAction712(119),
-                       new ReduceAction713(119),
-                       new ReduceAction714(119),
-                       new ReduceAction715(119),
-                       new ReduceAction716(119),
-                       new ReduceAction715(119),
-                       new ReduceAction718(119),
-                       new ReduceAction719(119),
-                       new ReduceAction718(119),
-                       new ReduceAction721(119),
-                       new ReduceAction722(119),
-                       new ReduceAction723(119),
-                       new ReduceAction724(119),
-                       new ReduceAction723(119),
-                       new ReduceAction726(119),
-                       new ReduceAction727(119),
-                       new ReduceAction726(119),
-                       new ReduceAction729(119),
-                       new ReduceAction611(120),
-                       new ReduceAction646(120),
-                       new ReduceAction647(120),
-                       new ReduceAction648(120),
-                       new ReduceAction649(120),
-                       new ReduceAction648(120),
-                       new ReduceAction651(120),
-                       new ReduceAction652(120),
-                       new ReduceAction651(120),
-                       new ReduceAction611(121),
-                       new ReduceAction765(121),
-                       new ReduceAction611(122),
-                       new ReduceAction767(122),
-                       new ReduceAction768(122),
-                       new ReduceAction769(122),
-                       new ReduceAction770(122),
-                       new ReduceAction611(123),
-                       new ReduceAction772(123),
-                       new ReduceAction611(124),
-                       new ReduceAction774(124),
-                       new ReduceAction775(124),
-                       new ReduceAction776(124),
-                       new ReduceAction777(124),
-                       new ReduceAction778(124),
-                       new ReduceAction779(124),
-                       new ReduceAction780(124),
-                       new ReduceAction781(124),
-                       new ReduceAction782(124),
-                       new ReduceAction783(124),
-                       new ReduceAction784(124),
-                       new ReduceAction611(125),
-                       new ReduceAction786(125),
-                       new ReduceAction787(125),
-                       new ReduceAction611(126),
-                       new ReduceAction789(126),
-                       new ReduceAction790(126),
-                       new ReduceAction791(126),
-                       new ReduceAction611(127),
-                       new ReduceAction793(127),
-                       new ReduceAction794(127),
-                       new ReduceAction611(128),
-                       new ReduceAction796(128),
-                       new ReduceAction797(128),
-                       new ReduceAction798(128),
-                       new ReduceAction799(128),
-                       new ReduceAction800(128),
-                       new ReduceAction799(128),
-                       new ReduceAction802(128),
-                       new ReduceAction803(128),
-                       new ReduceAction802(128),
-                       new ReduceAction805(129),
-                       new ReduceAction806(129),
-                       new ReduceAction807(129),
-                       new ReduceAction808(129),
-                       new ReduceAction807(129),
-                       new ReduceAction810(129),
-                       new ReduceAction811(129),
-                       new ReduceAction810(129),
-                       new ReduceAction638(129),
-                       new ReduceAction639(129),
-                       new ReduceAction640(129),
-                       new ReduceAction641(129),
-                       new ReduceAction640(129),
-                       new ReduceAction643(129),
-                       new ReduceAction644(129),
-                       new ReduceAction643(129),
-                       new ReduceAction654(129),
-                       new ReduceAction655(129),
-                       new ReduceAction656(129),
-                       new ReduceAction657(129),
-                       new ReduceAction658(129),
-                       new ReduceAction659(129),
-                       new ReduceAction827(129),
-                       new ReduceAction828(129),
-                       new ReduceAction829(129),
-                       new ReduceAction830(129),
-                       new ReduceAction829(129),
-                       new ReduceAction838(129),
-                       new ReduceAction839(129),
-                       new ReduceAction840(129),
-                       new ReduceAction841(129),
-                       new ReduceAction842(129),
-                       new ReduceAction843(129),
-                       new ReduceAction844(129),
-                       new ReduceAction845(129),
-                       new ReduceAction846(129),
-                       new ReduceAction847(129),
-                       new ReduceAction848(129),
-                       new ReduceAction849(129),
-                       new ReduceAction850(129),
-                       new ReduceAction851(129),
-                       new ReduceAction852(129),
-                       new ReduceAction853(129),
-                       new ReduceAction611(129),
-                       new ReduceAction857(129),
-                       new ReduceAction858(129),
-                       new ReduceAction868(130),
-                       new ReduceAction869(130),
-                       new ReduceAction870(131),
-                       new ReduceAction871(131),
-                       new ReduceAction884(132),
-                       new ReduceAction885(132),
-                       new ReduceAction887(133),
-                       new ReduceAction888(133),
-                       new ReduceAction888(133),
-                       new ReduceAction596(134),
-                       new ReduceAction597(134),
-                       new ReduceAction598(134),
-                       new ReduceAction599(134),
-                       new ReduceAction611(135),
-                       new ReduceAction646(135),
-                       new ReduceAction647(135),
-                       new ReduceAction648(135),
-                       new ReduceAction651(135),
-                       new ReduceAction649(135),
-                       new ReduceAction652(135),
-                       new ReduceAction648(135),
-                       new ReduceAction651(135),
-                       new ReduceAction611(136),
-                       new ReduceAction765(136),
-                       new ReduceAction611(137),
-                       new ReduceAction767(137),
-                       new ReduceAction768(137),
-                       new ReduceAction769(137),
-                       new ReduceAction770(137),
-                       new ReduceAction611(138),
-                       new ReduceAction772(138),
-                       new ReduceAction611(139),
-                       new ReduceAction774(139),
-                       new ReduceAction775(139),
-                       new ReduceAction776(139),
-                       new ReduceAction777(139),
-                       new ReduceAction778(139),
-                       new ReduceAction779(139),
-                       new ReduceAction780(139),
-                       new ReduceAction781(139),
-                       new ReduceAction782(139),
-                       new ReduceAction783(139),
-                       new ReduceAction784(139),
+                       new ReduceAction612(111),
+                       new ReduceAction592(111),
+                       new ReduceAction592(111),
+                       new ReduceAction592(111),
+                       new ReduceAction592(111),
+                       new ReduceAction592(111),
+                       new ReduceAction592(111),
+                       new ReduceAction619(111),
+                       new ReduceAction620(111),
+                       new ReduceAction621(111),
+                       new ReduceAction622(111),
+                       new ReduceAction621(111),
+                       new ReduceAction624(111),
+                       new ReduceAction625(111),
+                       new ReduceAction624(111),
+                       new ReduceAction627(111),
+                       new ReduceAction628(111),
+                       new ReduceAction629(111),
+                       new ReduceAction630(111),
+                       new ReduceAction631(111),
+                       new ReduceAction632(111),
+                       new ReduceAction633(111),
+                       new ReduceAction634(111),
+                       new ReduceAction633(111),
+                       new ReduceAction636(111),
+                       new ReduceAction637(111),
+                       new ReduceAction636(111),
+                       new ReduceAction639(111),
+                       new ReduceAction650(112),
+                       new ReduceAction651(112),
+                       new ReduceAction652(112),
+                       new ReduceAction653(112),
+                       new ReduceAction652(112),
+                       new ReduceAction655(112),
+                       new ReduceAction656(112),
+                       new ReduceAction655(112),
+                       new ReduceAction658(112),
+                       new ReduceAction659(112),
+                       new ReduceAction660(112),
+                       new ReduceAction661(112),
+                       new ReduceAction660(112),
+                       new ReduceAction663(112),
+                       new ReduceAction664(112),
+                       new ReduceAction663(112),
+                       new ReduceAction666(112),
+                       new ReduceAction667(112),
+                       new ReduceAction668(112),
+                       new ReduceAction669(112),
+                       new ReduceAction670(112),
+                       new ReduceAction669(112),
+                       new ReduceAction672(112),
+                       new ReduceAction673(112),
+                       new ReduceAction672(112),
+                       new ReduceAction675(112),
+                       new ReduceAction676(112),
+                       new ReduceAction677(112),
+                       new ReduceAction678(112),
+                       new ReduceAction677(112),
+                       new ReduceAction680(112),
+                       new ReduceAction681(112),
+                       new ReduceAction680(112),
+                       new ReduceAction683(112),
+                       new ReduceAction592(113),
+                       new ReduceAction592(114),
+                       new ReduceAction710(114),
+                       new ReduceAction592(115),
+                       new ReduceAction712(115),
+                       new ReduceAction713(115),
+                       new ReduceAction714(115),
+                       new ReduceAction715(115),
+                       new ReduceAction592(116),
+                       new ReduceAction717(116),
+                       new ReduceAction592(117),
+                       new ReduceAction719(117),
+                       new ReduceAction720(117),
+                       new ReduceAction721(117),
+                       new ReduceAction722(117),
+                       new ReduceAction723(117),
+                       new ReduceAction724(117),
+                       new ReduceAction725(117),
+                       new ReduceAction726(117),
+                       new ReduceAction727(117),
+                       new ReduceAction728(117),
+                       new ReduceAction729(117),
+                       new ReduceAction592(118),
+                       new ReduceAction731(118),
+                       new ReduceAction732(118),
+                       new ReduceAction592(119),
+                       new ReduceAction734(119),
+                       new ReduceAction735(119),
+                       new ReduceAction736(119),
+                       new ReduceAction592(120),
+                       new ReduceAction738(120),
+                       new ReduceAction739(120),
+                       new ReduceAction592(121),
+                       new ReduceAction741(121),
+                       new ReduceAction742(121),
+                       new ReduceAction743(121),
+                       new ReduceAction744(121),
+                       new ReduceAction745(121),
+                       new ReduceAction744(121),
+                       new ReduceAction747(121),
+                       new ReduceAction748(121),
+                       new ReduceAction747(121),
+                       new ReduceAction750(122),
+                       new ReduceAction751(122),
+                       new ReduceAction752(122),
+                       new ReduceAction753(122),
+                       new ReduceAction752(122),
+                       new ReduceAction755(122),
+                       new ReduceAction756(122),
+                       new ReduceAction755(122),
+                       new ReduceAction619(122),
+                       new ReduceAction620(122),
+                       new ReduceAction621(122),
+                       new ReduceAction622(122),
+                       new ReduceAction621(122),
+                       new ReduceAction624(122),
+                       new ReduceAction625(122),
+                       new ReduceAction624(122),
+                       new ReduceAction627(122),
+                       new ReduceAction628(122),
+                       new ReduceAction629(122),
+                       new ReduceAction630(122),
+                       new ReduceAction631(122),
+                       new ReduceAction632(122),
+                       new ReduceAction772(122),
+                       new ReduceAction773(122),
+                       new ReduceAction774(122),
+                       new ReduceAction775(122),
+                       new ReduceAction774(122),
+                       new ReduceAction783(122),
+                       new ReduceAction784(122),
+                       new ReduceAction785(122),
+                       new ReduceAction786(122),
+                       new ReduceAction787(122),
+                       new ReduceAction788(122),
+                       new ReduceAction789(122),
+                       new ReduceAction790(122),
+                       new ReduceAction791(122),
+                       new ReduceAction792(122),
+                       new ReduceAction793(122),
+                       new ReduceAction794(122),
+                       new ReduceAction795(122),
+                       new ReduceAction796(122),
+                       new ReduceAction797(122),
+                       new ReduceAction798(122),
+                       new ReduceAction592(122),
+                       new ReduceAction802(122),
+                       new ReduceAction803(122),
+                       new ReduceAction813(123),
+                       new ReduceAction814(123),
+                       new ReduceAction815(124),
+                       new ReduceAction816(124),
+                       new ReduceAction829(125),
+                       new ReduceAction830(125),
+                       new ReduceAction832(126),
+                       new ReduceAction833(126),
+                       new ReduceAction833(126),
+                       new ReduceAction577(127),
+                       new ReduceAction578(127),
+                       new ReduceAction579(127),
+                       new ReduceAction580(127),
+                       new ReduceAction592(128),
+                       new ReduceAction592(129),
+                       new ReduceAction710(129),
+                       new ReduceAction592(130),
+                       new ReduceAction712(130),
+                       new ReduceAction713(130),
+                       new ReduceAction714(130),
+                       new ReduceAction715(130),
+                       new ReduceAction592(131),
+                       new ReduceAction717(131),
+                       new ReduceAction592(132),
+                       new ReduceAction719(132),
+                       new ReduceAction720(132),
+                       new ReduceAction721(132),
+                       new ReduceAction722(132),
+                       new ReduceAction723(132),
+                       new ReduceAction724(132),
+                       new ReduceAction725(132),
+                       new ReduceAction726(132),
+                       new ReduceAction727(132),
+                       new ReduceAction728(132),
+                       new ReduceAction729(132),
+                       new ReduceAction592(133),
+                       new ReduceAction731(133),
+                       new ReduceAction732(133),
+                       new ReduceAction592(134),
+                       new ReduceAction734(134),
+                       new ReduceAction735(134),
+                       new ReduceAction736(134),
+                       new ReduceAction592(135),
+                       new ReduceAction738(135),
+                       new ReduceAction739(135),
+                       new ReduceAction592(136),
+                       new ReduceAction741(136),
+                       new ReduceAction1227(136),
+                       new ReduceAction1228(136),
+                       new ReduceAction742(136),
+                       new ReduceAction1228(136),
+                       new ReduceAction1231(137),
+                       new ReduceAction1232(137),
+                       new ReduceAction750(137),
+                       new ReduceAction1232(137),
+                       new ReduceAction1235(137),
+                       new ReduceAction1236(137),
+                       new ReduceAction619(137),
+                       new ReduceAction1236(137),
+                       new ReduceAction627(137),
+                       new ReduceAction628(137),
+                       new ReduceAction629(137),
+                       new ReduceAction630(137),
+                       new ReduceAction1243(137),
+                       new ReduceAction773(137),
+                       new ReduceAction774(137),
+                       new ReduceAction775(137),
+                       new ReduceAction774(137),
+                       new ReduceAction783(137),
+                       new ReduceAction784(137),
+                       new ReduceAction785(137),
+                       new ReduceAction786(137),
+                       new ReduceAction787(137),
+                       new ReduceAction788(137),
+                       new ReduceAction789(137),
+                       new ReduceAction790(137),
+                       new ReduceAction791(137),
+                       new ReduceAction792(137),
+                       new ReduceAction793(137),
+                       new ReduceAction794(137),
+                       new ReduceAction795(137),
+                       new ReduceAction796(137),
+                       new ReduceAction797(137),
+                       new ReduceAction798(137),
+                       new ReduceAction592(137),
+                       new ReduceAction802(137),
+                       new ReduceAction803(137),
+                       new ReduceAction1267(138),
+                       new ReduceAction1268(138),
+                       new ReduceAction589(139),
+                       new ReduceAction590(139),
+                       new ReduceAction591(139),
+                       new ReduceAction592(139),
+                       new ReduceAction592(140),
+                       new ReduceAction592(140),
+                       new ReduceAction602(140),
+                       new ReduceAction603(140),
+                       new ReduceAction604(140),
+                       new ReduceAction605(140),
+                       new ReduceAction606(140),
+                       new ReduceAction607(140),
+                       new ReduceAction608(140),
+                       new ReduceAction609(140),
+                       new ReduceAction610(140),
                        new ReduceAction611(140),
-                       new ReduceAction786(140),
-                       new ReduceAction787(140),
-                       new ReduceAction611(141),
-                       new ReduceAction789(141),
-                       new ReduceAction790(141),
-                       new ReduceAction791(141),
-                       new ReduceAction611(142),
-                       new ReduceAction793(142),
-                       new ReduceAction794(142),
-                       new ReduceAction611(143),
-                       new ReduceAction796(143),
-                       new ReduceAction1317(143),
-                       new ReduceAction1318(143),
-                       new ReduceAction797(143),
-                       new ReduceAction1318(143),
-                       new ReduceAction1321(144),
-                       new ReduceAction1322(144),
-                       new ReduceAction805(144),
-                       new ReduceAction1322(144),
-                       new ReduceAction1325(144),
-                       new ReduceAction1326(144),
-                       new ReduceAction638(144),
-                       new ReduceAction1326(144),
-                       new ReduceAction654(144),
-                       new ReduceAction655(144),
-                       new ReduceAction656(144),
-                       new ReduceAction657(144),
-                       new ReduceAction1333(144),
-                       new ReduceAction828(144),
-                       new ReduceAction829(144),
-                       new ReduceAction830(144),
-                       new ReduceAction829(144),
-                       new ReduceAction838(144),
-                       new ReduceAction839(144),
-                       new ReduceAction840(144),
-                       new ReduceAction841(144),
-                       new ReduceAction842(144),
-                       new ReduceAction843(144),
-                       new ReduceAction844(144),
-                       new ReduceAction845(144),
-                       new ReduceAction846(144),
-                       new ReduceAction847(144),
-                       new ReduceAction848(144),
-                       new ReduceAction849(144),
-                       new ReduceAction850(144),
-                       new ReduceAction851(144),
-                       new ReduceAction852(144),
-                       new ReduceAction853(144),
-                       new ReduceAction611(144),
-                       new ReduceAction857(144),
-                       new ReduceAction858(144),
-                       new ReduceAction1357(145),
-                       new ReduceAction1358(145),
-                       new ReduceAction608(146),
-                       new ReduceAction609(146),
-                       new ReduceAction610(146),
-                       new ReduceAction611(146),
-                       new ReduceAction611(147),
-                       new ReduceAction611(147),
-                       new ReduceAction621(147),
-                       new ReduceAction622(147),
-                       new ReduceAction623(147),
-                       new ReduceAction624(147),
-                       new ReduceAction625(147),
-                       new ReduceAction626(147),
-                       new ReduceAction627(147),
-                       new ReduceAction628(147),
-                       new ReduceAction629(147),
-                       new ReduceAction630(147),
-                       new ReduceAction631(147),
-                       new ReduceAction611(147),
-                       new ReduceAction611(147),
-                       new ReduceAction611(147),
-                       new ReduceAction611(147),
-                       new ReduceAction611(147),
-                       new ReduceAction611(147),
-                       new ReduceAction638(147),
-                       new ReduceAction639(147),
-                       new ReduceAction640(147),
-                       new ReduceAction641(147),
-                       new ReduceAction640(147),
-                       new ReduceAction643(147),
-                       new ReduceAction644(147),
-                       new ReduceAction643(147),
-                       new ReduceAction646(147),
-                       new ReduceAction647(147),
-                       new ReduceAction648(147),
-                       new ReduceAction649(147),
-                       new ReduceAction648(147),
-                       new ReduceAction651(147),
-                       new ReduceAction652(147),
-                       new ReduceAction651(147),
-                       new ReduceAction654(147),
-                       new ReduceAction655(147),
-                       new ReduceAction656(147),
-                       new ReduceAction657(147),
-                       new ReduceAction658(147),
-                       new ReduceAction659(147),
-                       new ReduceAction660(147),
-                       new ReduceAction661(147),
-                       new ReduceAction660(147),
-                       new ReduceAction663(147),
-                       new ReduceAction664(147),
-                       new ReduceAction663(147),
-                       new ReduceAction666(147),
-                       new ReduceAction668(148),
-                       new ReduceAction669(148),
-                       new ReduceAction670(149),
-                       new ReduceAction671(149),
-                       new ReduceAction672(149),
-                       new ReduceAction673(149),
-                       new ReduceAction674(149),
-                       new ReduceAction675(149),
-                       new ReduceAction676(149),
-                       new ReduceAction677(149),
-                       new ReduceAction678(149),
-                       new ReduceAction687(150),
-                       new ReduceAction688(151),
-                       new ReduceAction689(151),
-                       new ReduceAction690(151),
-                       new ReduceAction691(151),
-                       new ReduceAction692(151),
-                       new ReduceAction693(151),
-                       new ReduceAction694(151),
-                       new ReduceAction695(151),
-                       new ReduceAction696(152),
-                       new ReduceAction697(152),
-                       new ReduceAction698(152),
-                       new ReduceAction699(152),
-                       new ReduceAction698(152),
-                       new ReduceAction701(152),
-                       new ReduceAction702(152),
-                       new ReduceAction701(152),
-                       new ReduceAction704(152),
-                       new ReduceAction705(152),
-                       new ReduceAction706(152),
-                       new ReduceAction707(152),
-                       new ReduceAction706(152),
-                       new ReduceAction709(152),
-                       new ReduceAction710(152),
-                       new ReduceAction709(152),
-                       new ReduceAction712(152),
-                       new ReduceAction713(152),
-                       new ReduceAction714(152),
-                       new ReduceAction715(152),
-                       new ReduceAction716(152),
-                       new ReduceAction715(152),
-                       new ReduceAction718(152),
-                       new ReduceAction719(152),
-                       new ReduceAction718(152),
-                       new ReduceAction721(152),
-                       new ReduceAction722(152),
-                       new ReduceAction723(152),
-                       new ReduceAction724(152),
-                       new ReduceAction723(152),
-                       new ReduceAction726(152),
-                       new ReduceAction727(152),
-                       new ReduceAction726(152),
-                       new ReduceAction729(152),
-                       new ReduceAction732(153),
-                       new ReduceAction733(153),
-                       new ReduceAction734(154),
-                       new ReduceAction741(155),
-                       new ReduceAction742(155),
-                       new ReduceAction743(156),
-                       new ReduceAction744(156),
-                       new ReduceAction745(157),
-                       new ReduceAction746(157),
-                       new ReduceAction747(157),
-                       new ReduceAction748(157),
-                       new ReduceAction749(158),
-                       new ReduceAction750(158),
+                       new ReduceAction612(140),
+                       new ReduceAction592(140),
+                       new ReduceAction592(140),
+                       new ReduceAction592(140),
+                       new ReduceAction592(140),
+                       new ReduceAction592(140),
+                       new ReduceAction592(140),
+                       new ReduceAction619(140),
+                       new ReduceAction620(140),
+                       new ReduceAction621(140),
+                       new ReduceAction622(140),
+                       new ReduceAction621(140),
+                       new ReduceAction624(140),
+                       new ReduceAction625(140),
+                       new ReduceAction624(140),
+                       new ReduceAction627(140),
+                       new ReduceAction628(140),
+                       new ReduceAction629(140),
+                       new ReduceAction630(140),
+                       new ReduceAction631(140),
+                       new ReduceAction632(140),
+                       new ReduceAction633(140),
+                       new ReduceAction634(140),
+                       new ReduceAction633(140),
+                       new ReduceAction636(140),
+                       new ReduceAction637(140),
+                       new ReduceAction636(140),
+                       new ReduceAction639(140),
+                       new ReduceAction641(141),
+                       new ReduceAction642(142),
+                       new ReduceAction643(142),
+                       new ReduceAction644(142),
+                       new ReduceAction645(142),
+                       new ReduceAction646(142),
+                       new ReduceAction647(142),
+                       new ReduceAction648(142),
+                       new ReduceAction649(142),
+                       new ReduceAction650(143),
+                       new ReduceAction651(143),
+                       new ReduceAction652(143),
+                       new ReduceAction653(143),
+                       new ReduceAction652(143),
+                       new ReduceAction655(143),
+                       new ReduceAction656(143),
+                       new ReduceAction655(143),
+                       new ReduceAction658(143),
+                       new ReduceAction659(143),
+                       new ReduceAction660(143),
+                       new ReduceAction661(143),
+                       new ReduceAction660(143),
+                       new ReduceAction663(143),
+                       new ReduceAction664(143),
+                       new ReduceAction663(143),
+                       new ReduceAction666(143),
+                       new ReduceAction667(143),
+                       new ReduceAction668(143),
+                       new ReduceAction669(143),
+                       new ReduceAction670(143),
+                       new ReduceAction669(143),
+                       new ReduceAction672(143),
+                       new ReduceAction673(143),
+                       new ReduceAction672(143),
+                       new ReduceAction675(143),
+                       new ReduceAction676(143),
+                       new ReduceAction677(143),
+                       new ReduceAction678(143),
+                       new ReduceAction677(143),
+                       new ReduceAction680(143),
+                       new ReduceAction681(143),
+                       new ReduceAction680(143),
+                       new ReduceAction683(143),
+                       new ReduceAction686(144),
+                       new ReduceAction687(144),
+                       new ReduceAction688(145),
+                       new ReduceAction695(146),
+                       new ReduceAction696(146),
+                       new ReduceAction697(147),
+                       new ReduceAction698(147),
+                       new ReduceAction699(148),
+                       new ReduceAction700(148),
+                       new ReduceAction701(148),
+                       new ReduceAction702(148),
+                       new ReduceAction703(149),
+                       new ReduceAction704(149),
+                       new ReduceAction592(150),
+                       new ReduceAction592(151),
+                       new ReduceAction592(152),
+                       new ReduceAction592(152),
+                       new ReduceAction602(152),
+                       new ReduceAction603(152),
+                       new ReduceAction604(152),
+                       new ReduceAction605(152),
+                       new ReduceAction606(152),
+                       new ReduceAction607(152),
+                       new ReduceAction608(152),
+                       new ReduceAction609(152),
+                       new ReduceAction610(152),
+                       new ReduceAction611(152),
+                       new ReduceAction612(152),
+                       new ReduceAction592(152),
+                       new ReduceAction592(152),
+                       new ReduceAction592(152),
+                       new ReduceAction592(152),
+                       new ReduceAction592(152),
+                       new ReduceAction592(152),
+                       new ReduceAction619(152),
+                       new ReduceAction620(152),
+                       new ReduceAction621(152),
+                       new ReduceAction622(152),
+                       new ReduceAction621(152),
+                       new ReduceAction624(152),
+                       new ReduceAction625(152),
+                       new ReduceAction624(152),
+                       new ReduceAction627(152),
+                       new ReduceAction628(152),
+                       new ReduceAction629(152),
+                       new ReduceAction630(152),
+                       new ReduceAction631(152),
+                       new ReduceAction632(152),
+                       new ReduceAction633(152),
+                       new ReduceAction634(152),
+                       new ReduceAction633(152),
+                       new ReduceAction636(152),
+                       new ReduceAction637(152),
+                       new ReduceAction636(152),
+                       new ReduceAction639(152),
+                       new ReduceAction650(153),
+                       new ReduceAction651(153),
+                       new ReduceAction652(153),
+                       new ReduceAction653(153),
+                       new ReduceAction652(153),
+                       new ReduceAction655(153),
+                       new ReduceAction656(153),
+                       new ReduceAction655(153),
+                       new ReduceAction658(153),
+                       new ReduceAction659(153),
+                       new ReduceAction660(153),
+                       new ReduceAction661(153),
+                       new ReduceAction660(153),
+                       new ReduceAction663(153),
+                       new ReduceAction664(153),
+                       new ReduceAction663(153),
+                       new ReduceAction666(153),
+                       new ReduceAction667(153),
+                       new ReduceAction668(153),
+                       new ReduceAction669(153),
+                       new ReduceAction670(153),
+                       new ReduceAction669(153),
+                       new ReduceAction672(153),
+                       new ReduceAction673(153),
+                       new ReduceAction672(153),
+                       new ReduceAction675(153),
+                       new ReduceAction676(153),
+                       new ReduceAction677(153),
+                       new ReduceAction678(153),
+                       new ReduceAction677(153),
+                       new ReduceAction680(153),
+                       new ReduceAction681(153),
+                       new ReduceAction680(153),
+                       new ReduceAction683(153),
+                       new ReduceAction592(154),
+                       new ReduceAction592(155),
+                       new ReduceAction589(156),
+                       new ReduceAction590(156),
+                       new ReduceAction591(156),
+                       new ReduceAction589(157),
+                       new ReduceAction590(157),
+                       new ReduceAction591(157),
+                       new ReduceAction592(158),
+                       new ReduceAction592(158),
+                       new ReduceAction602(158),
+                       new ReduceAction603(158),
+                       new ReduceAction604(158),
+                       new ReduceAction605(158),
+                       new ReduceAction606(158),
+                       new ReduceAction607(158),
+                       new ReduceAction608(158),
+                       new ReduceAction609(158),
+                       new ReduceAction610(158),
+                       new ReduceAction611(158),
+                       new ReduceAction612(158),
+                       new ReduceAction592(158),
+                       new ReduceAction592(158),
+                       new ReduceAction592(158),
+                       new ReduceAction592(158),
+                       new ReduceAction592(158),
+                       new ReduceAction639(158),
+                       new ReduceAction592(159),
+                       new ReduceAction592(159),
+                       new ReduceAction602(159),
+                       new ReduceAction603(159),
+                       new ReduceAction604(159),
+                       new ReduceAction605(159),
+                       new ReduceAction606(159),
+                       new ReduceAction607(159),
+                       new ReduceAction608(159),
+                       new ReduceAction609(159),
+                       new ReduceAction610(159),
                        new ReduceAction611(159),
-                       new ReduceAction646(159),
-                       new ReduceAction647(159),
-                       new ReduceAction648(159),
-                       new ReduceAction649(159),
-                       new ReduceAction648(159),
-                       new ReduceAction651(159),
-                       new ReduceAction652(159),
-                       new ReduceAction651(159),
-                       new ReduceAction763(159),
+                       new ReduceAction612(159),
+                       new ReduceAction592(159),
+                       new ReduceAction592(159),
+                       new ReduceAction592(159),
+                       new ReduceAction592(159),
+                       new ReduceAction592(159),
+                       new ReduceAction639(159),
+                       new ReduceAction592(160),
+                       new ReduceAction592(160),
+                       new ReduceAction602(160),
+                       new ReduceAction603(160),
+                       new ReduceAction604(160),
+                       new ReduceAction605(160),
+                       new ReduceAction606(160),
+                       new ReduceAction607(160),
+                       new ReduceAction608(160),
+                       new ReduceAction609(160),
+                       new ReduceAction610(160),
                        new ReduceAction611(160),
-                       new ReduceAction646(160),
-                       new ReduceAction647(160),
-                       new ReduceAction648(160),
-                       new ReduceAction651(160),
-                       new ReduceAction649(160),
-                       new ReduceAction652(160),
-                       new ReduceAction648(160),
-                       new ReduceAction651(160),
-                       new ReduceAction611(161),
-                       new ReduceAction611(161),
-                       new ReduceAction621(161),
-                       new ReduceAction622(161),
-                       new ReduceAction623(161),
-                       new ReduceAction624(161),
-                       new ReduceAction625(161),
-                       new ReduceAction626(161),
-                       new ReduceAction627(161),
-                       new ReduceAction628(161),
-                       new ReduceAction629(161),
-                       new ReduceAction630(161),
-                       new ReduceAction631(161),
-                       new ReduceAction611(161),
-                       new ReduceAction611(161),
-                       new ReduceAction611(161),
+                       new ReduceAction612(160),
+                       new ReduceAction592(160),
+                       new ReduceAction592(160),
+                       new ReduceAction592(160),
+                       new ReduceAction592(160),
+                       new ReduceAction592(160),
+                       new ReduceAction639(160),
+                       new ReduceAction592(161),
+                       new ReduceAction592(161),
+                       new ReduceAction602(161),
+                       new ReduceAction603(161),
+                       new ReduceAction604(161),
+                       new ReduceAction605(161),
+                       new ReduceAction606(161),
+                       new ReduceAction607(161),
+                       new ReduceAction608(161),
+                       new ReduceAction609(161),
+                       new ReduceAction610(161),
                        new ReduceAction611(161),
-                       new ReduceAction611(161),
-                       new ReduceAction611(161),
-                       new ReduceAction638(161),
+                       new ReduceAction612(161),
+                       new ReduceAction592(161),
+                       new ReduceAction592(161),
+                       new ReduceAction592(161),
+                       new ReduceAction592(161),
+                       new ReduceAction592(161),
                        new ReduceAction639(161),
-                       new ReduceAction640(161),
-                       new ReduceAction641(161),
-                       new ReduceAction640(161),
-                       new ReduceAction643(161),
-                       new ReduceAction644(161),
-                       new ReduceAction643(161),
-                       new ReduceAction646(161),
-                       new ReduceAction647(161),
-                       new ReduceAction648(161),
-                       new ReduceAction649(161),
-                       new ReduceAction648(161),
-                       new ReduceAction651(161),
-                       new ReduceAction652(161),
-                       new ReduceAction651(161),
-                       new ReduceAction654(161),
-                       new ReduceAction655(161),
-                       new ReduceAction656(161),
-                       new ReduceAction657(161),
-                       new ReduceAction658(161),
-                       new ReduceAction659(161),
-                       new ReduceAction660(161),
-                       new ReduceAction661(161),
-                       new ReduceAction660(161),
-                       new ReduceAction663(161),
-                       new ReduceAction664(161),
-                       new ReduceAction663(161),
-                       new ReduceAction666(161),
-                       new ReduceAction696(162),
-                       new ReduceAction697(162),
-                       new ReduceAction698(162),
-                       new ReduceAction699(162),
-                       new ReduceAction698(162),
-                       new ReduceAction701(162),
-                       new ReduceAction702(162),
-                       new ReduceAction701(162),
-                       new ReduceAction704(162),
-                       new ReduceAction705(162),
-                       new ReduceAction706(162),
-                       new ReduceAction707(162),
-                       new ReduceAction706(162),
-                       new ReduceAction709(162),
+                       new ReduceAction592(162),
                        new ReduceAction710(162),
-                       new ReduceAction709(162),
-                       new ReduceAction712(162),
-                       new ReduceAction713(162),
-                       new ReduceAction714(162),
-                       new ReduceAction715(162),
-                       new ReduceAction716(162),
-                       new ReduceAction715(162),
-                       new ReduceAction718(162),
-                       new ReduceAction719(162),
-                       new ReduceAction718(162),
-                       new ReduceAction721(162),
-                       new ReduceAction722(162),
-                       new ReduceAction723(162),
-                       new ReduceAction724(162),
-                       new ReduceAction723(162),
-                       new ReduceAction726(162),
-                       new ReduceAction727(162),
-                       new ReduceAction726(162),
-                       new ReduceAction729(162),
-                       new ReduceAction611(163),
-                       new ReduceAction646(163),
-                       new ReduceAction647(163),
-                       new ReduceAction648(163),
-                       new ReduceAction649(163),
-                       new ReduceAction648(163),
-                       new ReduceAction651(163),
-                       new ReduceAction652(163),
-                       new ReduceAction651(163),
-                       new ReduceAction611(164),
-                       new ReduceAction646(164),
-                       new ReduceAction647(164),
-                       new ReduceAction648(164),
-                       new ReduceAction651(164),
-                       new ReduceAction649(164),
-                       new ReduceAction652(164),
-                       new ReduceAction648(164),
-                       new ReduceAction651(164),
-                       new ReduceAction608(165),
-                       new ReduceAction609(165),
-                       new ReduceAction610(165),
-                       new ReduceAction608(166),
-                       new ReduceAction609(166),
-                       new ReduceAction610(166),
-                       new ReduceAction611(167),
-                       new ReduceAction611(167),
-                       new ReduceAction621(167),
-                       new ReduceAction622(167),
-                       new ReduceAction623(167),
-                       new ReduceAction624(167),
-                       new ReduceAction625(167),
-                       new ReduceAction626(167),
-                       new ReduceAction627(167),
-                       new ReduceAction628(167),
-                       new ReduceAction629(167),
-                       new ReduceAction630(167),
-                       new ReduceAction631(167),
-                       new ReduceAction611(167),
-                       new ReduceAction611(167),
-                       new ReduceAction611(167),
-                       new ReduceAction611(167),
-                       new ReduceAction611(167),
-                       new ReduceAction666(167),
-                       new ReduceAction611(168),
-                       new ReduceAction611(168),
-                       new ReduceAction621(168),
-                       new ReduceAction622(168),
-                       new ReduceAction623(168),
-                       new ReduceAction624(168),
-                       new ReduceAction625(168),
-                       new ReduceAction626(168),
-                       new ReduceAction627(168),
-                       new ReduceAction628(168),
-                       new ReduceAction629(168),
-                       new ReduceAction630(168),
-                       new ReduceAction631(168),
-                       new ReduceAction611(168),
-                       new ReduceAction611(168),
-                       new ReduceAction611(168),
-                       new ReduceAction611(168),
-                       new ReduceAction611(168),
-                       new ReduceAction666(168),
-                       new ReduceAction611(169),
-                       new ReduceAction611(169),
-                       new ReduceAction621(169),
-                       new ReduceAction622(169),
-                       new ReduceAction623(169),
-                       new ReduceAction624(169),
-                       new ReduceAction625(169),
-                       new ReduceAction626(169),
-                       new ReduceAction627(169),
-                       new ReduceAction628(169),
-                       new ReduceAction629(169),
-                       new ReduceAction630(169),
-                       new ReduceAction631(169),
-                       new ReduceAction611(169),
-                       new ReduceAction611(169),
-                       new ReduceAction611(169),
-                       new ReduceAction611(169),
-                       new ReduceAction611(169),
-                       new ReduceAction666(169),
-                       new ReduceAction611(170),
-                       new ReduceAction611(170),
-                       new ReduceAction621(170),
-                       new ReduceAction622(170),
-                       new ReduceAction623(170),
-                       new ReduceAction624(170),
-                       new ReduceAction625(170),
-                       new ReduceAction626(170),
-                       new ReduceAction627(170),
-                       new ReduceAction628(170),
-                       new ReduceAction629(170),
-                       new ReduceAction630(170),
-                       new ReduceAction631(170),
-                       new ReduceAction611(170),
-                       new ReduceAction611(170),
-                       new ReduceAction611(170),
-                       new ReduceAction611(170),
-                       new ReduceAction611(170),
-                       new ReduceAction666(170),
-                       new ReduceAction611(171),
-                       new ReduceAction765(171),
-                       new ReduceAction611(172),
-                       new ReduceAction767(172),
-                       new ReduceAction768(172),
-                       new ReduceAction769(172),
-                       new ReduceAction770(172),
-                       new ReduceAction611(173),
-                       new ReduceAction772(173),
-                       new ReduceAction611(174),
-                       new ReduceAction774(174),
-                       new ReduceAction776(174),
-                       new ReduceAction777(174),
-                       new ReduceAction778(174),
-                       new ReduceAction779(174),
-                       new ReduceAction780(174),
-                       new ReduceAction781(174),
-                       new ReduceAction782(174),
-                       new ReduceAction783(174),
-                       new ReduceAction784(174),
-                       new ReduceAction611(175),
-                       new ReduceAction765(175),
-                       new ReduceAction611(176),
-                       new ReduceAction767(176),
-                       new ReduceAction768(176),
-                       new ReduceAction769(176),
-                       new ReduceAction770(176),
-                       new ReduceAction611(177),
-                       new ReduceAction772(177),
-                       new ReduceAction611(178),
-                       new ReduceAction774(178),
-                       new ReduceAction776(178),
-                       new ReduceAction777(178),
-                       new ReduceAction778(178),
-                       new ReduceAction779(178),
-                       new ReduceAction780(178),
-                       new ReduceAction781(178),
-                       new ReduceAction782(178),
-                       new ReduceAction783(178),
-                       new ReduceAction784(178),
-                       new ReduceAction611(179),
-                       new ReduceAction765(179),
-                       new ReduceAction611(180),
-                       new ReduceAction767(180),
-                       new ReduceAction768(180),
-                       new ReduceAction769(180),
-                       new ReduceAction770(180),
-                       new ReduceAction611(181),
-                       new ReduceAction772(181),
-                       new ReduceAction611(182),
-                       new ReduceAction774(182),
-                       new ReduceAction776(182),
-                       new ReduceAction777(182),
-                       new ReduceAction778(182),
-                       new ReduceAction779(182),
-                       new ReduceAction780(182),
-                       new ReduceAction781(182),
-                       new ReduceAction782(182),
-                       new ReduceAction783(182),
-                       new ReduceAction784(182),
-                       new ReduceAction611(183),
-                       new ReduceAction765(183),
-                       new ReduceAction611(184),
-                       new ReduceAction767(184),
-                       new ReduceAction768(184),
-                       new ReduceAction769(184),
-                       new ReduceAction770(184),
-                       new ReduceAction611(185),
-                       new ReduceAction772(185),
-                       new ReduceAction611(186),
-                       new ReduceAction774(186),
-                       new ReduceAction776(186),
-                       new ReduceAction777(186),
-                       new ReduceAction778(186),
-                       new ReduceAction779(186),
-                       new ReduceAction780(186),
-                       new ReduceAction781(186),
-                       new ReduceAction782(186),
-                       new ReduceAction783(186),
-                       new ReduceAction784(186),
-                       new ReduceAction878(187),
-                       new ReduceAction879(187),
-                       new ReduceAction880(187),
-                       new ReduceAction881(187),
-                       new ReduceAction882(187),
-                       new ReduceAction891(188),
-                       new ReduceAction892(188),
-                       new ReduceAction893(188),
-                       new ReduceAction892(188),
-                       new ReduceAction903(188),
-                       new ReduceAction904(188),
-                       new ReduceAction905(188),
-                       new ReduceAction904(188),
-                       new ReduceAction1772(189),
-                       new ReduceAction1773(189),
-                       new ReduceAction1774(190),
-                       new ReduceAction1775(190),
-                       new ReduceAction1776(191),
-                       new ReduceAction1777(191),
-                       new ReduceAction1778(192),
-                       new ReduceAction1779(192),
-                       new ReduceAction1780(193),
-                       new ReduceAction1781(193),
-                       new ReduceAction1778(194),
-                       new ReduceAction1779(194),
-                       new ReduceAction1784(195),
-                       new ReduceAction1785(195),
-                       new ReduceAction1786(196),
-                       new ReduceAction1787(196),
-                       new ReduceAction1788(197),
-                       new ReduceAction1789(197),
-                       new ReduceAction1790(198),
-                       new ReduceAction1791(198),
-                       new ReduceAction604(199),
-                       new ReduceAction1793(199),
-                       new ReduceAction1794(200),
-                       new ReduceAction1795(200),
-                       new ReduceAction572(201),
-                       new ReduceAction1797(201),
-                       new ReduceAction875(202),
-                       new ReduceAction1799(202),
-                       new ReduceAction875(203),
-                       new ReduceAction1799(203),
-                       new ReduceAction884(204),
-                       new ReduceAction1803(204),
-                       new ReduceAction1794(205),
-                       new ReduceAction1795(205),
-                       new ReduceAction918(206),
-                       new ReduceAction1807(206),
-                       new ReduceAction1808(207),
-                       new ReduceAction1809(207),
-                       new ReduceAction1810(208),
-                       new ReduceAction1811(208),
-                       new ReduceAction875(209),
-                       new ReduceAction1799(209)
+                       new ReduceAction592(163),
+                       new ReduceAction712(163),
+                       new ReduceAction713(163),
+                       new ReduceAction714(163),
+                       new ReduceAction715(163),
+                       new ReduceAction592(164),
+                       new ReduceAction717(164),
+                       new ReduceAction592(165),
+                       new ReduceAction719(165),
+                       new ReduceAction721(165),
+                       new ReduceAction722(165),
+                       new ReduceAction723(165),
+                       new ReduceAction724(165),
+                       new ReduceAction725(165),
+                       new ReduceAction726(165),
+                       new ReduceAction727(165),
+                       new ReduceAction728(165),
+                       new ReduceAction729(165),
+                       new ReduceAction592(166),
+                       new ReduceAction710(166),
+                       new ReduceAction592(167),
+                       new ReduceAction712(167),
+                       new ReduceAction713(167),
+                       new ReduceAction714(167),
+                       new ReduceAction715(167),
+                       new ReduceAction592(168),
+                       new ReduceAction717(168),
+                       new ReduceAction592(169),
+                       new ReduceAction719(169),
+                       new ReduceAction721(169),
+                       new ReduceAction722(169),
+                       new ReduceAction723(169),
+                       new ReduceAction724(169),
+                       new ReduceAction725(169),
+                       new ReduceAction726(169),
+                       new ReduceAction727(169),
+                       new ReduceAction728(169),
+                       new ReduceAction729(169),
+                       new ReduceAction592(170),
+                       new ReduceAction710(170),
+                       new ReduceAction592(171),
+                       new ReduceAction712(171),
+                       new ReduceAction713(171),
+                       new ReduceAction714(171),
+                       new ReduceAction715(171),
+                       new ReduceAction592(172),
+                       new ReduceAction717(172),
+                       new ReduceAction592(173),
+                       new ReduceAction719(173),
+                       new ReduceAction721(173),
+                       new ReduceAction722(173),
+                       new ReduceAction723(173),
+                       new ReduceAction724(173),
+                       new ReduceAction725(173),
+                       new ReduceAction726(173),
+                       new ReduceAction727(173),
+                       new ReduceAction728(173),
+                       new ReduceAction729(173),
+                       new ReduceAction592(174),
+                       new ReduceAction710(174),
+                       new ReduceAction592(175),
+                       new ReduceAction712(175),
+                       new ReduceAction713(175),
+                       new ReduceAction714(175),
+                       new ReduceAction715(175),
+                       new ReduceAction592(176),
+                       new ReduceAction717(176),
+                       new ReduceAction592(177),
+                       new ReduceAction719(177),
+                       new ReduceAction721(177),
+                       new ReduceAction722(177),
+                       new ReduceAction723(177),
+                       new ReduceAction724(177),
+                       new ReduceAction725(177),
+                       new ReduceAction726(177),
+                       new ReduceAction727(177),
+                       new ReduceAction728(177),
+                       new ReduceAction729(177),
+                       new ReduceAction823(178),
+                       new ReduceAction824(178),
+                       new ReduceAction825(178),
+                       new ReduceAction826(178),
+                       new ReduceAction827(178),
+                       new ReduceAction836(179),
+                       new ReduceAction837(179),
+                       new ReduceAction838(179),
+                       new ReduceAction837(179),
+                       new ReduceAction848(179),
+                       new ReduceAction849(179),
+                       new ReduceAction850(179),
+                       new ReduceAction849(179),
+                       new ReduceAction1622(180),
+                       new ReduceAction1623(180),
+                       new ReduceAction1624(181),
+                       new ReduceAction1625(181),
+                       new ReduceAction1626(182),
+                       new ReduceAction1627(182),
+                       new ReduceAction1628(183),
+                       new ReduceAction1629(183),
+                       new ReduceAction1630(184),
+                       new ReduceAction1631(184),
+                       new ReduceAction1628(185),
+                       new ReduceAction1629(185),
+                       new ReduceAction1634(186),
+                       new ReduceAction1635(186),
+                       new ReduceAction1636(187),
+                       new ReduceAction1637(187),
+                       new ReduceAction1638(188),
+                       new ReduceAction1639(188),
+                       new ReduceAction585(189),
+                       new ReduceAction1641(189),
+                       new ReduceAction1642(190),
+                       new ReduceAction1643(190),
+                       new ReduceAction1644(191),
+                       new ReduceAction1645(191),
+                       new ReduceAction820(192),
+                       new ReduceAction1647(192),
+                       new ReduceAction820(193),
+                       new ReduceAction1647(193),
+                       new ReduceAction829(194),
+                       new ReduceAction1651(194),
+                       new ReduceAction1642(195),
+                       new ReduceAction1643(195),
+                       new ReduceAction863(196),
+                       new ReduceAction1655(196),
+                       new ReduceAction1656(197),
+                       new ReduceAction1657(197),
+                       new ReduceAction1658(198),
+                       new ReduceAction1659(198),
+                       new ReduceAction820(199),
+                       new ReduceAction1647(199)
                )
        end
 end
@@ -23230,7 +23078,6 @@ private class ReduceAction545
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
                                        var toparnode2 = nodearraylist1
                                        assert toparnode2 isa nullable TOpar
                                        var tcparnode4 = nodearraylist3
@@ -23241,8 +23088,7 @@ private class ReduceAction545
                                                toparnode2,
                                                listnode3,
                                                tcparnode4,
-                                               ptypenode5,
-                                               listnode6
+                                               ptypenode5
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
@@ -23260,7 +23106,6 @@ private class ReduceAction546
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
-                                       var listnode7 = new Array[Object]
                                        var toparnode2 = nodearraylist1
                                        assert toparnode2 isa nullable TOpar
                                        var listnode3 = nodearraylist3
@@ -23274,8 +23119,7 @@ private class ReduceAction546
                                                toparnode2,
                                                listnode4,
                                                tcparnode5,
-                                               ptypenode6,
-                                               listnode7
+                                               ptypenode6
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
@@ -23286,29 +23130,20 @@ private class ReduceAction547
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
-                                       var listnode7 = new Array[Object]
                                        var toparnode2 = nodearraylist1
                                        assert toparnode2 isa nullable TOpar
                                        var tcparnode4 = nodearraylist3
                                        assert tcparnode4 isa nullable TCpar
-                                       var ptypenode5 = nodearraylist4
-                                       assert ptypenode5 isa nullable AType
-                                       var listnode6 = nodearraylist6
-                                       assert listnode6 isa Array[Object]
-                                       listnode7 = concat(listnode7, listnode6)
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
                                                toparnode2,
                                                listnode3,
                                                tcparnode4,
-                                               ptypenode5,
-                                               listnode7
+                                               null
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
@@ -23319,15 +23154,12 @@ private class ReduceAction548
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
                                        var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
-                                       var listnode8 = new Array[Object]
                                        var toparnode2 = nodearraylist1
                                        assert toparnode2 isa nullable TOpar
                                        var listnode3 = nodearraylist3
@@ -23335,17 +23167,11 @@ private class ReduceAction548
                                        listnode4 = concat(listnode4, listnode3)
                                        var tcparnode5 = nodearraylist4
                                        assert tcparnode5 isa nullable TCpar
-                                       var ptypenode6 = nodearraylist5
-                                       assert ptypenode6 isa nullable AType
-                                       var listnode7 = nodearraylist7
-                                       assert listnode7 isa Array[Object]
-                                       listnode8 = concat(listnode8, listnode7)
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
                                                toparnode2,
                                                listnode4,
                                                tcparnode5,
-                                               ptypenode6,
-                                               listnode8
+                                               null
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
@@ -23356,22 +23182,16 @@ private class ReduceAction549
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var tcparnode4 = nodearraylist3
-                                       assert tcparnode4 isa nullable TCpar
+                                       var ptypenode5 = nodearraylist1
+                                       assert ptypenode5 isa nullable AType
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
+                                               null,
                                                listnode3,
-                                               tcparnode4,
                                                null,
-                                               listnode6
+                                               ptypenode5
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
@@ -23382,26 +23202,13 @@ private class ReduceAction550
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var listnode7 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var listnode3 = nodearraylist3
-                                       assert listnode3 isa Array[Object]
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var tcparnode5 = nodearraylist4
-                                       assert tcparnode5 isa nullable TCpar
+                                       var listnode3 = new Array[Object]
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
-                                               listnode4,
-                                               tcparnode5,
                                                null,
-                                               listnode7
+                                               listnode3,
+                                               null,
+                                               null
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
@@ -23412,28 +23219,14 @@ private class ReduceAction551
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode7 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var tcparnode4 = nodearraylist3
-                                       assert tcparnode4 isa nullable TCpar
-                                       var listnode6 = nodearraylist5
-                                       assert listnode6 isa Array[Object]
-                                       listnode7 = concat(listnode7, listnode6)
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
-                                               listnode3,
-                                               tcparnode4,
-                                               null,
-                                               listnode7
-                                       )
-                                       node_list = psignaturenode1
+                                       var listnode2 = new Array[Object]
+                                       var pparamnode1 = nodearraylist1
+                                       if pparamnode1 != null then
+                                               listnode2.add(pparamnode1)
+                                       end
+                                       node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23442,32 +23235,18 @@ private class ReduceAction552
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var listnode8 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var listnode3 = nodearraylist3
-                                       assert listnode3 isa Array[Object]
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var tcparnode5 = nodearraylist4
-                                       assert tcparnode5 isa nullable TCpar
-                                       var listnode7 = nodearraylist6
-                                       assert listnode7 isa Array[Object]
-                                       listnode8 = concat(listnode8, listnode7)
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
-                                               listnode4,
-                                               tcparnode5,
-                                               null,
-                                               listnode8
-                                       )
-                                       node_list = psignaturenode1
+                                       var listnode3 = new Array[Object]
+                                       var pparamnode1 = nodearraylist1
+                                       var listnode2 = nodearraylist2
+                                       assert listnode2 isa Array[Object]
+                                       if pparamnode1 != null then
+                                               listnode3.add(pparamnode1)
+                                       end
+                                       listnode3 = concat(listnode3, listnode2)
+                                       node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23476,20 +23255,11 @@ private class ReduceAction553
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
-                                       var ptypenode5 = nodearraylist1
-                                       assert ptypenode5 isa nullable AType
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               null,
-                                               listnode3,
-                                               null,
-                                               ptypenode5,
-                                               listnode6
-                                       )
-                                       node_list = psignaturenode1
+                                       var pparamnode1 = nodearraylist3
+                                       node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23498,24 +23268,16 @@ private class ReduceAction554
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode7 = new Array[Object]
-                                       var ptypenode5 = nodearraylist1
-                                       assert ptypenode5 isa nullable AType
-                                       var listnode6 = nodearraylist3
-                                       assert listnode6 isa Array[Object]
-                                       listnode7 = concat(listnode7, listnode6)
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                       var tidnode2 = nodearraylist1
+                                       assert tidnode2 isa nullable TId
+                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
+                                               tidnode2,
                                                null,
-                                               listnode3,
                                                null,
-                                               ptypenode5,
-                                               listnode7
+                                               null
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23524,17 +23286,19 @@ private class ReduceAction555
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               null,
-                                               listnode3,
+                                       var tidnode2 = nodearraylist1
+                                       assert tidnode2 isa nullable TId
+                                       var pannotationsnode5 = nodearraylist2
+                                       assert pannotationsnode5 isa nullable AAnnotations
+                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
+                                               tidnode2,
                                                null,
                                                null,
-                                               listnode6
+                                               pannotationsnode5
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23545,19 +23309,17 @@ private class ReduceAction556
                                        var node_list: nullable Object = null
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode7 = new Array[Object]
-                                       var listnode6 = nodearraylist2
-                                       assert listnode6 isa Array[Object]
-                                       listnode7 = concat(listnode7, listnode6)
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               null,
-                                               listnode3,
-                                               null,
+                                       var tidnode2 = nodearraylist1
+                                       assert tidnode2 isa nullable TId
+                                       var ptypenode3 = nodearraylist2
+                                       assert ptypenode3 isa nullable AType
+                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
+                                               tidnode2,
+                                               ptypenode3,
                                                null,
-                                               listnode7
+                                               null
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23569,20 +23331,19 @@ private class ReduceAction557
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var tcparnode4 = nodearraylist3
-                                       assert tcparnode4 isa nullable TCpar
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
-                                               listnode3,
-                                               tcparnode4,
+                                       var tidnode2 = nodearraylist1
+                                       assert tidnode2 isa nullable TId
+                                       var ptypenode3 = nodearraylist3
+                                       assert ptypenode3 isa nullable AType
+                                       var pannotationsnode5 = nodearraylist2
+                                       assert pannotationsnode5 isa nullable AAnnotations
+                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
+                                               tidnode2,
+                                               ptypenode3,
                                                null,
-                                               listnode6
+                                               pannotationsnode5
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23591,27 +23352,22 @@ private class ReduceAction558
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var listnode7 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var listnode3 = nodearraylist3
-                                       assert listnode3 isa Array[Object]
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var tcparnode5 = nodearraylist4
-                                       assert tcparnode5 isa nullable TCpar
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
-                                               listnode4,
-                                               tcparnode5,
-                                               null,
-                                               listnode7
+                                       var tidnode2 = nodearraylist1
+                                       assert tidnode2 isa nullable TId
+                                       var ptypenode3 = nodearraylist2
+                                       assert ptypenode3 isa nullable AType
+                                       var tdotdotdotnode4 = nodearraylist3
+                                       assert tdotdotdotnode4 isa nullable TDotdotdot
+                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
+                                               tidnode2,
+                                               ptypenode3,
+                                               tdotdotdotnode4,
+                                               null
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23624,22 +23380,21 @@ private class ReduceAction559
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var tcparnode4 = nodearraylist3
-                                       assert tcparnode4 isa nullable TCpar
-                                       var ptypenode5 = nodearraylist4
-                                       assert ptypenode5 isa nullable AType
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
-                                               listnode3,
-                                               tcparnode4,
-                                               ptypenode5,
-                                               listnode6
+                                       var tidnode2 = nodearraylist1
+                                       assert tidnode2 isa nullable TId
+                                       var ptypenode3 = nodearraylist3
+                                       assert ptypenode3 isa nullable AType
+                                       var tdotdotdotnode4 = nodearraylist4
+                                       assert tdotdotdotnode4 isa nullable TDotdotdot
+                                       var pannotationsnode5 = nodearraylist2
+                                       assert pannotationsnode5 isa nullable AAnnotations
+                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
+                                               tidnode2,
+                                               ptypenode3,
+                                               tdotdotdotnode4,
+                                               pannotationsnode5
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23648,30 +23403,14 @@ private class ReduceAction560
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var listnode7 = new Array[Object]
-                                       var toparnode2 = nodearraylist1
-                                       assert toparnode2 isa nullable TOpar
-                                       var listnode3 = nodearraylist3
-                                       assert listnode3 isa Array[Object]
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var tcparnode5 = nodearraylist4
-                                       assert tcparnode5 isa nullable TCpar
-                                       var ptypenode6 = nodearraylist5
-                                       assert ptypenode6 isa nullable AType
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               toparnode2,
-                                               listnode4,
-                                               tcparnode5,
-                                               ptypenode6,
-                                               listnode7
+                                       var pexprnode3 = nodearraylist1
+                                       assert pexprnode3 isa nullable AExpr
+                                       var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr(
+                                               null,
+                                               pexprnode3
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23680,16 +23419,22 @@ private class ReduceAction561
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               null,
-                                               listnode3,
-                                               null,
-                                               null,
-                                               listnode6
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var tkwimportnode2 = nodearraylist1
+                                       assert tkwimportnode2 isa nullable TKwimport
+                                       var pexterncallnode3 = nodearraylist3
+                                       assert pexterncallnode3 isa nullable AExternCall
+                                       if pexterncallnode3 != null then
+                                               listnode4.add(pexterncallnode3)
+                                       end
+                                       var pexterncallsnode1: nullable AExternCalls = new AExternCalls.init_aexterncalls(
+                                               tkwimportnode2,
+                                               listnode4
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pexterncallsnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23698,19 +23443,26 @@ private class ReduceAction562
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode6 = new Array[Object]
-                                       var ptypenode5 = nodearraylist1
-                                       assert ptypenode5 isa nullable AType
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               null,
-                                               listnode3,
-                                               null,
-                                               ptypenode5,
-                                               listnode6
+                                       var listnode5 = new Array[Object]
+                                       var tkwimportnode2 = nodearraylist1
+                                       assert tkwimportnode2 isa nullable TKwimport
+                                       var pexterncallnode3 = nodearraylist3
+                                       assert pexterncallnode3 isa nullable AExternCall
+                                       var listnode4 = nodearraylist4
+                                       assert listnode4 isa Array[Object]
+                                       if pexterncallnode3 != null then
+                                               listnode5.add(pexterncallnode3)
+                                       end
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var pexterncallsnode1: nullable AExternCalls = new AExternCalls.init_aexterncalls(
+                                               tkwimportnode2,
+                                               listnode5
                                        )
-                                       node_list = psignaturenode1
+                                       node_list = pexterncallsnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23719,14 +23471,11 @@ private class ReduceAction563
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var pparamnode1 = nodearraylist1
-                                       if pparamnode1 != null then
-                                               listnode2.add(pparamnode1)
-                                       end
-                                       node_list = listnode2
+                                       var pexterncallnode1 = nodearraylist3
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23735,180 +23484,158 @@ private class ReduceAction564
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var pparamnode1 = nodearraylist1
-                                       var listnode2 = nodearraylist2
-                                       assert listnode2 isa Array[Object]
-                                       if pparamnode1 != null then
-                                               listnode3.add(pparamnode1)
-                                       end
-                                       listnode3 = concat(listnode3, listnode2)
-                                       node_list = listnode3
+                                       var pexterncallnode1 = nodearraylist1
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction565
+private class ReduceAction566
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pparamnode1 = nodearraylist3
-                                       node_list = pparamnode1
+                                       var tkwsupernode2 = nodearraylist1
+                                       assert tkwsupernode2 isa nullable TKwsuper
+                                       var pexterncallnode1: nullable ASuperExternCall = new ASuperExternCall.init_asuperexterncall(
+                                               tkwsupernode2
+                                       )
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction566
+private class ReduceAction567
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
-                                       var tidnode2 = nodearraylist1
-                                       assert tidnode2 isa nullable TId
-                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
-                                               tidnode2,
-                                               null,
-                                               null,
-                                               null
+                                       var pmethidnode2 = nodearraylist1
+                                       assert pmethidnode2 isa nullable AMethid
+                                       var pexterncallnode1: nullable ALocalPropExternCall = new ALocalPropExternCall.init_alocalpropexterncall(
+                                               pmethidnode2
                                        )
-                                       node_list = pparamnode1
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction567
+private class ReduceAction568
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tidnode2 = nodearraylist1
-                                       assert tidnode2 isa nullable TId
-                                       var pannotationsnode5 = nodearraylist2
-                                       assert pannotationsnode5 isa nullable AAnnotations
-                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
-                                               tidnode2,
-                                               null,
-                                               null,
-                                               pannotationsnode5
+                                       var tclassidnode2 = nodearraylist1
+                                       assert tclassidnode2 isa nullable TClassid
+                                       var tquadnode3 = nodearraylist2
+                                       assert tquadnode3 isa nullable TQuad
+                                       var pmethidnode4 = nodearraylist3
+                                       assert pmethidnode4 isa nullable AMethid
+                                       var pexterncallnode1: nullable AFullPropExternCall = new AFullPropExternCall.init_afullpropexterncall(
+                                               tclassidnode2,
+                                               tquadnode3,
+                                               pmethidnode4
                                        )
-                                       node_list = pparamnode1
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction568
+private class ReduceAction569
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tidnode2 = nodearraylist1
-                                       assert tidnode2 isa nullable TId
-                                       var ptypenode3 = nodearraylist2
-                                       assert ptypenode3 isa nullable AType
-                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
-                                               tidnode2,
-                                               ptypenode3,
-                                               null,
-                                               null
+                                       var tclassidnode2 = nodearraylist1
+                                       assert tclassidnode2 isa nullable TClassid
+                                       var pexterncallnode1: nullable AInitPropExternCall = new AInitPropExternCall.init_ainitpropexterncall(
+                                               tclassidnode2
                                        )
-                                       node_list = pparamnode1
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction569
+private class ReduceAction570
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tidnode2 = nodearraylist1
-                                       assert tidnode2 isa nullable TId
-                                       var ptypenode3 = nodearraylist3
-                                       assert ptypenode3 isa nullable AType
-                                       var pannotationsnode5 = nodearraylist2
-                                       assert pannotationsnode5 isa nullable AAnnotations
-                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
-                                               tidnode2,
-                                               ptypenode3,
-                                               null,
-                                               pannotationsnode5
+                                       var ptypenode2 = nodearraylist1
+                                       assert ptypenode2 isa nullable AType
+                                       var tkwasnode3 = nodearraylist2
+                                       assert tkwasnode3 isa nullable TKwas
+                                       var ptypenode4 = nodearraylist6
+                                       assert ptypenode4 isa nullable AType
+                                       var pexterncallnode1: nullable ACastAsExternCall = new ACastAsExternCall.init_acastasexterncall(
+                                               ptypenode2,
+                                               tkwasnode3,
+                                               ptypenode4
                                        )
-                                       node_list = pparamnode1
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction570
+private class ReduceAction571
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tidnode2 = nodearraylist1
-                                       assert tidnode2 isa nullable TId
-                                       var ptypenode3 = nodearraylist2
-                                       assert ptypenode3 isa nullable AType
-                                       var tdotdotdotnode4 = nodearraylist3
-                                       assert tdotdotdotnode4 isa nullable TDotdotdot
-                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
-                                               tidnode2,
-                                               ptypenode3,
-                                               tdotdotdotnode4,
-                                               null
+                                       var ptypenode2 = nodearraylist1
+                                       assert ptypenode2 isa nullable AType
+                                       var tkwasnode3 = nodearraylist2
+                                       assert tkwasnode3 isa nullable TKwas
+                                       var tkwnullablenode4 = nodearraylist4
+                                       assert tkwnullablenode4 isa nullable TKwnullable
+                                       var pexterncallnode1: nullable AAsNullableExternCall = new AAsNullableExternCall.init_aasnullableexterncall(
+                                               ptypenode2,
+                                               tkwasnode3,
+                                               tkwnullablenode4
                                        )
-                                       node_list = pparamnode1
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction571
+private class ReduceAction572
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tidnode2 = nodearraylist1
-                                       assert tidnode2 isa nullable TId
-                                       var ptypenode3 = nodearraylist3
-                                       assert ptypenode3 isa nullable AType
-                                       var tdotdotdotnode4 = nodearraylist4
-                                       assert tdotdotdotnode4 isa nullable TDotdotdot
-                                       var pannotationsnode5 = nodearraylist2
-                                       assert pannotationsnode5 isa nullable AAnnotations
-                                       var pparamnode1: nullable AParam = new AParam.init_aparam(
-                                               tidnode2,
-                                               ptypenode3,
-                                               tdotdotdotnode4,
-                                               pannotationsnode5
+                                       var ptypenode2 = nodearraylist1
+                                       assert ptypenode2 isa nullable AType
+                                       var tkwasnode3 = nodearraylist2
+                                       assert tkwasnode3 isa nullable TKwas
+                                       var tkwnotnode4 = nodearraylist4
+                                       assert tkwnotnode4 isa nullable TKwnot
+                                       var tkwnullablenode5 = nodearraylist6
+                                       assert tkwnullablenode5 isa nullable TKwnullable
+                                       var pexterncallnode1: nullable AAsNotNullableExternCall = new AAsNotNullableExternCall.init_aasnotnullableexterncall(
+                                               ptypenode2,
+                                               tkwasnode3,
+                                               tkwnotnode4,
+                                               tkwnullablenode5
                                        )
-                                       node_list = pparamnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction572
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var listnode1 = nodearraylist1
-                                       assert listnode1 isa Array[Object]
-                                       listnode2 = concat(listnode2, listnode1)
-                                       node_list = listnode2
+                                       node_list = pexterncallnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23917,24 +23644,17 @@ private class ReduceAction573
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tbangnode3 = nodearraylist1
-                                       assert tbangnode3 isa nullable TBang
-                                       var tidnode4 = nodearraylist2
-                                       assert tidnode4 isa nullable TId
-                                       var psignaturenode5 = nodearraylist3
-                                       assert psignaturenode5 isa nullable ASignature
-                                       var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl(
-                                               null,
-                                               tbangnode3,
-                                               tidnode4,
-                                               psignaturenode5,
-                                               null
+                                       var tkwinnode2 = nodearraylist1
+                                       assert tkwinnode2 isa nullable TKwin
+                                       var tstringnode3 = nodearraylist2
+                                       assert tstringnode3 isa nullable TString
+                                       var pinlanguagenode1: nullable AInLanguage = new AInLanguage.init_ainlanguage(
+                                               tkwinnode2,
+                                               tstringnode3
                                        )
-                                       node_list = pclosuredeclnode1
+                                       node_list = pinlanguagenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23943,27 +23663,14 @@ private class ReduceAction574
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var tbangnode3 = nodearraylist2
-                                       assert tbangnode3 isa nullable TBang
-                                       var tidnode4 = nodearraylist3
-                                       assert tidnode4 isa nullable TId
-                                       var psignaturenode5 = nodearraylist4
-                                       assert psignaturenode5 isa nullable ASignature
-                                       var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl(
-                                               tkwbreaknode2,
-                                               tbangnode3,
-                                               tidnode4,
-                                               psignaturenode5,
-                                               null
+                                       var texterncodesegmentnode3 = nodearraylist1
+                                       assert texterncodesegmentnode3 isa nullable TExternCodeSegment
+                                       var pexterncodeblocknode1: nullable AExternCodeBlock = new AExternCodeBlock.init_aexterncodeblock(
+                                               null,
+                                               texterncodesegmentnode3
                                        )
-                                       node_list = pclosuredeclnode1
+                                       node_list = pexterncodeblocknode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -23972,28 +23679,17 @@ private class ReduceAction575
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tbangnode3 = nodearraylist1
-                                       assert tbangnode3 isa nullable TBang
-                                       var tidnode4 = nodearraylist2
-                                       assert tidnode4 isa nullable TId
-                                       var psignaturenode5 = nodearraylist3
-                                       assert psignaturenode5 isa nullable ASignature
-                                       var pexprnode6 = nodearraylist5
-                                       assert pexprnode6 isa nullable AExpr
-                                       var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl(
-                                               null,
-                                               tbangnode3,
-                                               tidnode4,
-                                               psignaturenode5,
-                                               pexprnode6
+                                       var pinlanguagenode2 = nodearraylist1
+                                       assert pinlanguagenode2 isa nullable AInLanguage
+                                       var texterncodesegmentnode3 = nodearraylist2
+                                       assert texterncodesegmentnode3 isa nullable TExternCodeSegment
+                                       var pexterncodeblocknode1: nullable AExternCodeBlock = new AExternCodeBlock.init_aexterncodeblock(
+                                               pinlanguagenode2,
+                                               texterncodesegmentnode3
                                        )
-                                       node_list = pclosuredeclnode1
+                                       node_list = pexterncodeblocknode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24002,31 +23698,10 @@ private class ReduceAction576
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var tbangnode3 = nodearraylist2
-                                       assert tbangnode3 isa nullable TBang
-                                       var tidnode4 = nodearraylist3
-                                       assert tidnode4 isa nullable TId
-                                       var psignaturenode5 = nodearraylist4
-                                       assert psignaturenode5 isa nullable ASignature
-                                       var pexprnode6 = nodearraylist6
-                                       assert pexprnode6 isa nullable AExpr
-                                       var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl(
-                                               tkwbreaknode2,
-                                               tbangnode3,
-                                               tidnode4,
-                                               psignaturenode5,
-                                               pexprnode6
-                                       )
-                                       node_list = pclosuredeclnode1
+                                       var pexterncodeblocknode1 = nodearraylist2
+                                       node_list = pexterncodeblocknode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24035,29 +23710,17 @@ private class ReduceAction577
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tbangnode3 = nodearraylist1
-                                       assert tbangnode3 isa nullable TBang
-                                       var tidnode4 = nodearraylist2
-                                       assert tidnode4 isa nullable TId
-                                       var psignaturenode5 = nodearraylist3
-                                       assert psignaturenode5 isa nullable ASignature
-                                       var pexprnode6 = nodearraylist6
-                                       assert pexprnode6 isa nullable AExpr
-                                       var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl(
+                                       var listnode4 = new Array[Object]
+                                       var tclassidnode3 = nodearraylist1
+                                       assert tclassidnode3 isa nullable TClassid
+                                       var ptypenode1: nullable AType = new AType.init_atype(
                                                null,
-                                               tbangnode3,
-                                               tidnode4,
-                                               psignaturenode5,
-                                               pexprnode6
+                                               tclassidnode3,
+                                               listnode4,
+                                               null
                                        )
-                                       node_list = pclosuredeclnode1
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24066,32 +23729,20 @@ private class ReduceAction578
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var tbangnode3 = nodearraylist2
-                                       assert tbangnode3 isa nullable TBang
-                                       var tidnode4 = nodearraylist3
-                                       assert tidnode4 isa nullable TId
-                                       var psignaturenode5 = nodearraylist4
-                                       assert psignaturenode5 isa nullable ASignature
-                                       var pexprnode6 = nodearraylist7
-                                       assert pexprnode6 isa nullable AExpr
-                                       var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl(
-                                               tkwbreaknode2,
-                                               tbangnode3,
-                                               tidnode4,
-                                               psignaturenode5,
-                                               pexprnode6
+                                       var listnode4 = new Array[Object]
+                                       var tkwnullablenode2 = nodearraylist1
+                                       assert tkwnullablenode2 isa nullable TKwnullable
+                                       var tclassidnode3 = nodearraylist2
+                                       assert tclassidnode3 isa nullable TClassid
+                                       var ptypenode1: nullable AType = new AType.init_atype(
+                                               tkwnullablenode2,
+                                               tclassidnode3,
+                                               listnode4,
+                                               null
                                        )
-                                       node_list = pclosuredeclnode1
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24100,14 +23751,20 @@ private class ReduceAction579
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode3 = nodearraylist1
-                                       assert pexprnode3 isa nullable AExpr
-                                       var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr(
+                                       var listnode4 = new Array[Object]
+                                       var tclassidnode3 = nodearraylist1
+                                       assert tclassidnode3 isa nullable TClassid
+                                       var pannotationsnode5 = nodearraylist2
+                                       assert pannotationsnode5 isa nullable AAnnotations
+                                       var ptypenode1: nullable AType = new AType.init_atype(
                                                null,
-                                               pexprnode3
+                                               tclassidnode3,
+                                               listnode4,
+                                               pannotationsnode5
                                        )
-                                       node_list = pexprnode1
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24120,18 +23777,19 @@ private class ReduceAction580
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
-                                       var tkwimportnode2 = nodearraylist1
-                                       assert tkwimportnode2 isa nullable TKwimport
-                                       var pexterncallnode3 = nodearraylist3
-                                       assert pexterncallnode3 isa nullable AExternCall
-                                       if pexterncallnode3 != null then
-                                               listnode4.add(pexterncallnode3)
-                                       end
-                                       var pexterncallsnode1: nullable AExternCalls = new AExternCalls.init_aexterncalls(
-                                               tkwimportnode2,
-                                               listnode4
+                                       var tkwnullablenode2 = nodearraylist1
+                                       assert tkwnullablenode2 isa nullable TKwnullable
+                                       var tclassidnode3 = nodearraylist2
+                                       assert tclassidnode3 isa nullable TClassid
+                                       var pannotationsnode5 = nodearraylist3
+                                       assert pannotationsnode5 isa nullable AAnnotations
+                                       var ptypenode1: nullable AType = new AType.init_atype(
+                                               tkwnullablenode2,
+                                               tclassidnode3,
+                                               listnode4,
+                                               pannotationsnode5
                                        )
-                                       node_list = pexterncallsnode1
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24140,26 +23798,25 @@ private class ReduceAction581
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode5 = new Array[Object]
-                                       var tkwimportnode2 = nodearraylist1
-                                       assert tkwimportnode2 isa nullable TKwimport
-                                       var pexterncallnode3 = nodearraylist3
-                                       assert pexterncallnode3 isa nullable AExternCall
+                                       var tclassidnode3 = nodearraylist1
+                                       assert tclassidnode3 isa nullable TClassid
                                        var listnode4 = nodearraylist4
                                        assert listnode4 isa Array[Object]
-                                       if pexterncallnode3 != null then
-                                               listnode5.add(pexterncallnode3)
-                                       end
                                        listnode5 = concat(listnode5, listnode4)
-                                       var pexterncallsnode1: nullable AExternCalls = new AExternCalls.init_aexterncalls(
-                                               tkwimportnode2,
-                                               listnode5
+                                       var ptypenode1: nullable AType = new AType.init_atype(
+                                               null,
+                                               tclassidnode3,
+                                               listnode5,
+                                               null
                                        )
-                                       node_list = pexterncallsnode1
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24168,11 +23825,28 @@ private class ReduceAction582
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexterncallnode1 = nodearraylist3
-                                       node_list = pexterncallnode1
+                                       var listnode5 = new Array[Object]
+                                       var tkwnullablenode2 = nodearraylist1
+                                       assert tkwnullablenode2 isa nullable TKwnullable
+                                       var tclassidnode3 = nodearraylist2
+                                       assert tclassidnode3 isa nullable TClassid
+                                       var listnode4 = nodearraylist5
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var ptypenode1: nullable AType = new AType.init_atype(
+                                               tkwnullablenode2,
+                                               tclassidnode3,
+                                               listnode5,
+                                               null
+                                       )
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24181,77 +23855,108 @@ private class ReduceAction583
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexterncallnode1 = nodearraylist1
-                                       node_list = pexterncallnode1
+                                       var listnode5 = new Array[Object]
+                                       var tclassidnode3 = nodearraylist1
+                                       assert tclassidnode3 isa nullable TClassid
+                                       var listnode4 = nodearraylist4
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var pannotationsnode6 = nodearraylist7
+                                       assert pannotationsnode6 isa nullable AAnnotations
+                                       var ptypenode1: nullable AType = new AType.init_atype(
+                                               null,
+                                               tclassidnode3,
+                                               listnode5,
+                                               pannotationsnode6
+                                       )
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction585
+private class ReduceAction584
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwsupernode2 = nodearraylist1
-                                       assert tkwsupernode2 isa nullable TKwsuper
-                                       var pexterncallnode1: nullable ASuperExternCall = new ASuperExternCall.init_asuperexterncall(
-                                               tkwsupernode2
+                                       var listnode5 = new Array[Object]
+                                       var tkwnullablenode2 = nodearraylist1
+                                       assert tkwnullablenode2 isa nullable TKwnullable
+                                       var tclassidnode3 = nodearraylist2
+                                       assert tclassidnode3 isa nullable TClassid
+                                       var listnode4 = nodearraylist5
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var pannotationsnode6 = nodearraylist8
+                                       assert pannotationsnode6 isa nullable AAnnotations
+                                       var ptypenode1: nullable AType = new AType.init_atype(
+                                               tkwnullablenode2,
+                                               tclassidnode3,
+                                               listnode5,
+                                               pannotationsnode6
                                        )
-                                       node_list = pexterncallnode1
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction586
+private class ReduceAction585
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
-                                       var pmethidnode2 = nodearraylist1
-                                       assert pmethidnode2 isa nullable AMethid
-                                       var pexterncallnode1: nullable ALocalPropExternCall = new ALocalPropExternCall.init_alocalpropexterncall(
-                                               pmethidnode2
-                                       )
-                                       node_list = pexterncallnode1
+                                       var listnode2 = new Array[Object]
+                                       var ptypenode1 = nodearraylist1
+                                       if ptypenode1 != null then
+                                               listnode2.add(ptypenode1)
+                                       end
+                                       node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction587
+private class ReduceAction586
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tclassidnode2 = nodearraylist1
-                                       assert tclassidnode2 isa nullable TClassid
-                                       var tquadnode3 = nodearraylist2
-                                       assert tquadnode3 isa nullable TQuad
-                                       var pmethidnode4 = nodearraylist3
-                                       assert pmethidnode4 isa nullable AMethid
-                                       var pexterncallnode1: nullable AFullPropExternCall = new AFullPropExternCall.init_afullpropexterncall(
-                                               tclassidnode2,
-                                               tquadnode3,
-                                               pmethidnode4
-                                       )
-                                       node_list = pexterncallnode1
+                                       var listnode3 = new Array[Object]
+                                       var ptypenode1 = nodearraylist1
+                                       var listnode2 = nodearraylist2
+                                       assert listnode2 isa Array[Object]
+                                       if ptypenode1 != null then
+                                               listnode3.add(ptypenode1)
+                                       end
+                                       listnode3 = concat(listnode3, listnode2)
+                                       node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction588
+private class ReduceAction587
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tclassidnode2 = nodearraylist1
-                                       assert tclassidnode2 isa nullable TClassid
-                                       var pexterncallnode1: nullable AInitPropExternCall = new AInitPropExternCall.init_ainitpropexterncall(
-                                               tclassidnode2
-                                       )
-                                       node_list = pexterncallnode1
+                                       var ptypenode1 = nodearraylist3
+                                       node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24260,26 +23965,10 @@ private class ReduceAction589
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var ptypenode2 = nodearraylist1
-                                       assert ptypenode2 isa nullable AType
-                                       var tkwasnode3 = nodearraylist2
-                                       assert tkwasnode3 isa nullable TKwas
-                                       var ptypenode4 = nodearraylist6
-                                       assert ptypenode4 isa nullable AType
-                                       var pexterncallnode1: nullable ACastAsExternCall = new ACastAsExternCall.init_acastasexterncall(
-                                               ptypenode2,
-                                               tkwasnode3,
-                                               ptypenode4
-                                       )
-                                       node_list = pexterncallnode1
+                                       var pexprnode1 = nodearraylist2
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24288,22 +23977,16 @@ private class ReduceAction590
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var ptypenode2 = nodearraylist1
-                                       assert ptypenode2 isa nullable AType
-                                       var tkwasnode3 = nodearraylist2
-                                       assert tkwasnode3 isa nullable TKwas
-                                       var tkwnullablenode4 = nodearraylist4
-                                       assert tkwnullablenode4 isa nullable TKwnullable
-                                       var pexterncallnode1: nullable AAsNullableExternCall = new AAsNullableExternCall.init_aasnullableexterncall(
-                                               ptypenode2,
-                                               tkwasnode3,
-                                               tkwnullablenode4
+                                       var listnode2 = new Array[Object]
+                                       var tkwendnode3 = nodearraylist2
+                                       assert tkwendnode3 isa nullable TKwend
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
+                                               listnode2,
+                                               tkwendnode3
                                        )
-                                       node_list = pexterncallnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24312,27 +23995,15 @@ private class ReduceAction591
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var ptypenode2 = nodearraylist1
-                                       assert ptypenode2 isa nullable AType
-                                       var tkwasnode3 = nodearraylist2
-                                       assert tkwasnode3 isa nullable TKwas
-                                       var tkwnotnode4 = nodearraylist4
-                                       assert tkwnotnode4 isa nullable TKwnot
-                                       var tkwnullablenode5 = nodearraylist6
-                                       assert tkwnullablenode5 isa nullable TKwnullable
-                                       var pexterncallnode1: nullable AAsNotNullableExternCall = new AAsNotNullableExternCall.init_aasnotnullableexterncall(
-                                               ptypenode2,
-                                               tkwasnode3,
-                                               tkwnotnode4,
-                                               tkwnullablenode5
+                                       var listnode2 = new Array[Object]
+                                       var tkwendnode3 = nodearraylist1
+                                       assert tkwendnode3 isa nullable TKwend
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
+                                               listnode2,
+                                               tkwendnode3
                                        )
-                                       node_list = pexterncallnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24341,17 +24012,9 @@ private class ReduceAction592
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwinnode2 = nodearraylist1
-                                       assert tkwinnode2 isa nullable TKwin
-                                       var tstringnode3 = nodearraylist2
-                                       assert tstringnode3 isa nullable TString
-                                       var pinlanguagenode1: nullable AInLanguage = new AInLanguage.init_ainlanguage(
-                                               tkwinnode2,
-                                               tstringnode3
-                                       )
-                                       node_list = pinlanguagenode1
+                                       var pexprnode1 = nodearraylist1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24361,13 +24024,17 @@ private class ReduceAction593
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
-                                       var texterncodesegmentnode3 = nodearraylist1
-                                       assert texterncodesegmentnode3 isa nullable TExternCodeSegment
-                                       var pexterncodeblocknode1: nullable AExternCodeBlock = new AExternCodeBlock.init_aexterncodeblock(
-                                               null,
-                                               texterncodesegmentnode3
+                                       var listnode3 = new Array[Object]
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       if pexprnode2 != null then
+                                               listnode3.add(pexprnode2)
+                                       end
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
+                                               listnode3,
+                                               null
                                        )
-                                       node_list = pexterncodeblocknode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24378,15 +24045,20 @@ private class ReduceAction594
                                        var node_list: nullable Object = null
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pinlanguagenode2 = nodearraylist1
-                                       assert pinlanguagenode2 isa nullable AInLanguage
-                                       var texterncodesegmentnode3 = nodearraylist2
-                                       assert texterncodesegmentnode3 isa nullable TExternCodeSegment
-                                       var pexterncodeblocknode1: nullable AExternCodeBlock = new AExternCodeBlock.init_aexterncodeblock(
-                                               pinlanguagenode2,
-                                               texterncodesegmentnode3
+                                       var listnode4 = new Array[Object]
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var listnode3 = nodearraylist2
+                                       assert listnode3 isa Array[Object]
+                                       if pexprnode2 != null then
+                                               listnode4.add(pexprnode2)
+                                       end
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
+                                               listnode4,
+                                               null
                                        )
-                                       node_list = pexterncodeblocknode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24397,8 +24069,17 @@ private class ReduceAction595
                                        var node_list: nullable Object = null
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexterncodeblocknode1 = nodearraylist2
-                                       node_list = pexterncodeblocknode1
+                                       var listnode3 = new Array[Object]
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       if pexprnode2 != null then
+                                               listnode3.add(pexprnode2)
+                                       end
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
+                                               listnode3,
+                                               null
+                                       )
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24407,17 +24088,23 @@ private class ReduceAction596
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
-                                       var tclassidnode3 = nodearraylist1
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               null,
-                                               tclassidnode3,
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var listnode3 = nodearraylist2
+                                       assert listnode3 isa Array[Object]
+                                       if pexprnode2 != null then
+                                               listnode4.add(pexprnode2)
+                                       end
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
                                                listnode4,
                                                null
                                        )
-                                       node_list = ptypenode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24426,20 +24113,22 @@ private class ReduceAction597
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var tkwnullablenode2 = nodearraylist1
-                                       assert tkwnullablenode2 isa nullable TKwnullable
-                                       var tclassidnode3 = nodearraylist2
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               tkwnullablenode2,
-                                               tclassidnode3,
-                                               listnode4,
-                                               null
+                                       var listnode3 = new Array[Object]
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       if pexprnode2 != null then
+                                               listnode3.add(pexprnode2)
+                                       end
+                                       var tkwendnode4 = nodearraylist3
+                                       assert tkwendnode4 isa nullable TKwend
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
+                                               listnode3,
+                                               tkwendnode4
                                        )
-                                       node_list = ptypenode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
@@ -24448,1608 +24137,493 @@ private class ReduceAction598
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
-                                       var tclassidnode3 = nodearraylist1
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var pannotationsnode5 = nodearraylist2
-                                       assert pannotationsnode5 isa nullable AAnnotations
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               null,
-                                               tclassidnode3,
-                                               listnode4,
-                                               pannotationsnode5
-                                       )
-                                       node_list = ptypenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction599
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var tkwnullablenode2 = nodearraylist1
-                                       assert tkwnullablenode2 isa nullable TKwnullable
-                                       var tclassidnode3 = nodearraylist2
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var pannotationsnode5 = nodearraylist3
-                                       assert pannotationsnode5 isa nullable AAnnotations
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               tkwnullablenode2,
-                                               tclassidnode3,
-                                               listnode4,
-                                               pannotationsnode5
-                                       )
-                                       node_list = ptypenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction600
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tclassidnode3 = nodearraylist1
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var listnode4 = nodearraylist4
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               null,
-                                               tclassidnode3,
-                                               listnode5,
-                                               null
-                                       )
-                                       node_list = ptypenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction601
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tkwnullablenode2 = nodearraylist1
-                                       assert tkwnullablenode2 isa nullable TKwnullable
-                                       var tclassidnode3 = nodearraylist2
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var listnode4 = nodearraylist5
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               tkwnullablenode2,
-                                               tclassidnode3,
-                                               listnode5,
-                                               null
-                                       )
-                                       node_list = ptypenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction602
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tclassidnode3 = nodearraylist1
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var listnode4 = nodearraylist4
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var pannotationsnode6 = nodearraylist7
-                                       assert pannotationsnode6 isa nullable AAnnotations
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               null,
-                                               tclassidnode3,
-                                               listnode5,
-                                               pannotationsnode6
-                                       )
-                                       node_list = ptypenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction603
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tkwnullablenode2 = nodearraylist1
-                                       assert tkwnullablenode2 isa nullable TKwnullable
-                                       var tclassidnode3 = nodearraylist2
-                                       assert tclassidnode3 isa nullable TClassid
-                                       var listnode4 = nodearraylist5
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var pannotationsnode6 = nodearraylist8
-                                       assert pannotationsnode6 isa nullable AAnnotations
-                                       var ptypenode1: nullable AType = new AType.init_atype(
-                                               tkwnullablenode2,
-                                               tclassidnode3,
-                                               listnode5,
-                                               pannotationsnode6
-                                       )
-                                       node_list = ptypenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction604
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var ptypenode1 = nodearraylist1
-                                       if ptypenode1 != null then
-                                               listnode2.add(ptypenode1)
-                                       end
-                                       node_list = listnode2
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction605
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var ptypenode1 = nodearraylist1
-                                       var listnode2 = nodearraylist2
-                                       assert listnode2 isa Array[Object]
-                                       if ptypenode1 != null then
-                                               listnode3.add(ptypenode1)
-                                       end
-                                       listnode3 = concat(listnode3, listnode2)
-                                       node_list = listnode3
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction606
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var ptypenode1 = nodearraylist3
-                                       node_list = ptypenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction608
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var pexprnode1 = nodearraylist2
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction609
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var tkwendnode3 = nodearraylist2
-                                       assert tkwendnode3 isa nullable TKwend
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode2,
-                                               tkwendnode3
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction610
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var tkwendnode3 = nodearraylist1
-                                       assert tkwendnode3 isa nullable TKwend
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode2,
-                                               tkwendnode3
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction611
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var pexprnode1 = nodearraylist1
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction612
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       if pexprnode2 != null then
-                                               listnode3.add(pexprnode2)
-                                       end
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode3,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction613
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var listnode3 = nodearraylist2
-                                       assert listnode3 isa Array[Object]
-                                       if pexprnode2 != null then
-                                               listnode4.add(pexprnode2)
-                                       end
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode4,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction614
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       if pexprnode2 != null then
-                                               listnode3.add(pexprnode2)
-                                       end
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode3,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction615
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var listnode3 = nodearraylist2
-                                       assert listnode3 isa Array[Object]
-                                       if pexprnode2 != null then
-                                               listnode4.add(pexprnode2)
-                                       end
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode4,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction616
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       if pexprnode2 != null then
-                                               listnode3.add(pexprnode2)
-                                       end
-                                       var tkwendnode4 = nodearraylist3
-                                       assert tkwendnode4 isa nullable TKwend
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode3,
-                                               tkwendnode4
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction617
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var listnode3 = nodearraylist2
-                                       assert listnode3 isa Array[Object]
-                                       if pexprnode2 != null then
-                                               listnode4.add(pexprnode2)
-                                       end
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var tkwendnode5 = nodearraylist4
-                                       assert tkwendnode5 isa nullable TKwend
-                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
-                                               listnode4,
-                                               tkwendnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction621
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var tkwreturnnode2 = nodearraylist1
-                                       assert tkwreturnnode2 isa nullable TKwreturn
-                                       var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr(
-                                               tkwreturnnode2,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction622
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwreturnnode2 = nodearraylist1
-                                       assert tkwreturnnode2 isa nullable TKwreturn
-                                       var pexprnode3 = nodearraylist2
-                                       assert pexprnode3 isa nullable AExpr
-                                       var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr(
-                                               tkwreturnnode2,
-                                               pexprnode3
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction623
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
-                                               tkwbreaknode2,
-                                               null,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction624
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var plabelnode3 = nodearraylist2
-                                       assert plabelnode3 isa nullable ALabel
-                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
-                                               tkwbreaknode2,
-                                               plabelnode3,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction625
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var pexprnode4 = nodearraylist2
-                                       assert pexprnode4 isa nullable AExpr
-                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
-                                               tkwbreaknode2,
-                                               null,
-                                               pexprnode4
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction626
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var plabelnode3 = nodearraylist2
-                                       assert plabelnode3 isa nullable ALabel
-                                       var pexprnode4 = nodearraylist3
-                                       assert pexprnode4 isa nullable AExpr
-                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
-                                               tkwbreaknode2,
-                                               plabelnode3,
-                                               pexprnode4
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction627
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var tkwabortnode2 = nodearraylist1
-                                       assert tkwabortnode2 isa nullable TKwabort
-                                       var pexprnode1: nullable AAbortExpr = new AAbortExpr.init_aabortexpr(
-                                               tkwabortnode2
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction628
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var tkwcontinuenode2 = nodearraylist1
-                                       assert tkwcontinuenode2 isa nullable TKwcontinue
-                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
-                                               tkwcontinuenode2,
-                                               null,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction629
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwcontinuenode2 = nodearraylist1
-                                       assert tkwcontinuenode2 isa nullable TKwcontinue
-                                       var plabelnode3 = nodearraylist2
-                                       assert plabelnode3 isa nullable ALabel
-                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
-                                               tkwcontinuenode2,
-                                               plabelnode3,
-                                               null
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction630
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwcontinuenode2 = nodearraylist1
-                                       assert tkwcontinuenode2 isa nullable TKwcontinue
-                                       var pexprnode4 = nodearraylist2
-                                       assert pexprnode4 isa nullable AExpr
-                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
-                                               tkwcontinuenode2,
-                                               null,
-                                               pexprnode4
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction631
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwcontinuenode2 = nodearraylist1
-                                       assert tkwcontinuenode2 isa nullable TKwcontinue
-                                       var plabelnode3 = nodearraylist2
-                                       assert plabelnode3 isa nullable ALabel
-                                       var pexprnode4 = nodearraylist3
-                                       assert pexprnode4 isa nullable AExpr
-                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
-                                               tkwcontinuenode2,
-                                               plabelnode3,
-                                               pexprnode4
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction638
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tidnode3 = nodearraylist4
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist5
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction639
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tidnode3 = nodearraylist1
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist2
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction640
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tidnode3 = nodearraylist5
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist6
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction641
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tidnode3 = nodearraylist6
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist7
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction643
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tidnode3 = nodearraylist2
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist3
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction644
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tidnode3 = nodearraylist3
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist4
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction646
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode6 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tidnode3 = nodearraylist4
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist5
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var listnode5 = nodearraylist6
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode6
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction647
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode6 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tidnode3 = nodearraylist1
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist2
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var listnode5 = nodearraylist3
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode6
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction648
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode6 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tidnode3 = nodearraylist5
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist6
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var listnode5 = nodearraylist7
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode6
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction649
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode6 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tidnode3 = nodearraylist6
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist7
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var listnode5 = nodearraylist8
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode6
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction651
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode6 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tidnode3 = nodearraylist2
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist3
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var listnode5 = nodearraylist4
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode6
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction652
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode6 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tidnode3 = nodearraylist3
-                                       assert tidnode3 isa nullable TId
-                                       var pexprsnode4 = nodearraylist4
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var listnode5 = nodearraylist5
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
-                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
-                                               pexprnode2,
-                                               tidnode3,
-                                               pexprsnode4,
-                                               listnode6
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction654
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var tkwsupernode3 = nodearraylist1
-                                       assert tkwsupernode3 isa nullable TKwsuper
-                                       var pexprsnode4 = nodearraylist2
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
-                                               null,
-                                               tkwsupernode3,
-                                               pexprsnode4
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction655
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var tclassidnode4 = nodearraylist1
-                                       assert tclassidnode4 isa nullable TClassid
-                                       var pqualifiednode2: nullable AQualified = new AQualified.init_aqualified(
-                                               listnode3,
-                                               tclassidnode4
-                                       )
-                                       var tkwsupernode5 = nodearraylist2
-                                       assert tkwsupernode5 isa nullable TKwsuper
-                                       var pexprsnode6 = nodearraylist3
-                                       assert pexprsnode6 isa nullable AExprs
-                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
-                                               pqualifiednode2,
-                                               tkwsupernode5,
-                                               pexprsnode6
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var listnode3 = nodearraylist2
+                                       assert listnode3 isa Array[Object]
+                                       if pexprnode2 != null then
+                                               listnode4.add(pexprnode2)
+                                       end
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tkwendnode5 = nodearraylist4
+                                       assert tkwendnode5 isa nullable TKwend
+                                       var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr(
+                                               listnode4,
+                                               tkwendnode5
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction656
+private class ReduceAction602
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var listnode3 = nodearraylist1
-                                       assert listnode3 isa Array[Object]
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var tclassidnode5 = nodearraylist2
-                                       assert tclassidnode5 isa nullable TClassid
-                                       var pqualifiednode2: nullable AQualified = new AQualified.init_aqualified(
-                                               listnode4,
-                                               tclassidnode5
-                                       )
-                                       var tkwsupernode6 = nodearraylist3
-                                       assert tkwsupernode6 isa nullable TKwsuper
-                                       var pexprsnode7 = nodearraylist4
-                                       assert pexprsnode7 isa nullable AExprs
-                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
-                                               pqualifiednode2,
-                                               tkwsupernode6,
-                                               pexprsnode7
+                                       var tkwreturnnode2 = nodearraylist1
+                                       assert tkwreturnnode2 isa nullable TKwreturn
+                                       var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr(
+                                               tkwreturnnode2,
+                                               null
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction657
+private class ReduceAction603
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var listnode3 = nodearraylist1
-                                       assert listnode3 isa Array[Object]
-                                       listnode4 = concat(listnode4, listnode3)
-                                       var pqualifiednode2: nullable AQualified = new AQualified.init_aqualified(
-                                               listnode4,
-                                               null
-                                       )
-                                       var tkwsupernode6 = nodearraylist2
-                                       assert tkwsupernode6 isa nullable TKwsuper
-                                       var pexprsnode7 = nodearraylist3
-                                       assert pexprsnode7 isa nullable AExprs
-                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
-                                               pqualifiednode2,
-                                               tkwsupernode6,
-                                               pexprsnode7
+                                       var tkwreturnnode2 = nodearraylist1
+                                       assert tkwreturnnode2 isa nullable TKwreturn
+                                       var pexprnode3 = nodearraylist2
+                                       assert pexprnode3 isa nullable AExpr
+                                       var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr(
+                                               tkwreturnnode2,
+                                               pexprnode3
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction658
+private class ReduceAction604
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tkwinitnode3 = nodearraylist4
-                                       assert tkwinitnode3 isa nullable TKwinit
-                                       var pexprsnode4 = nodearraylist5
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
-                                               pexprnode2,
-                                               tkwinitnode3,
-                                               pexprsnode4
+                                       var tkwbreaknode2 = nodearraylist1
+                                       assert tkwbreaknode2 isa nullable TKwbreak
+                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
+                                               tkwbreaknode2,
+                                               null,
+                                               null
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction659
+private class ReduceAction605
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tkwinitnode3 = nodearraylist1
-                                       assert tkwinitnode3 isa nullable TKwinit
-                                       var pexprsnode4 = nodearraylist2
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
-                                               pexprnode2,
-                                               tkwinitnode3,
-                                               pexprsnode4
+                                       var tkwbreaknode2 = nodearraylist1
+                                       assert tkwbreaknode2 isa nullable TKwbreak
+                                       var plabelnode3 = nodearraylist2
+                                       assert plabelnode3 isa nullable ALabel
+                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
+                                               tkwbreaknode2,
+                                               plabelnode3,
+                                               null
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction660
+private class ReduceAction606
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tkwinitnode3 = nodearraylist5
-                                       assert tkwinitnode3 isa nullable TKwinit
-                                       var pexprsnode4 = nodearraylist6
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
-                                               pexprnode2,
-                                               tkwinitnode3,
-                                               pexprsnode4
+                                       var tkwbreaknode2 = nodearraylist1
+                                       assert tkwbreaknode2 isa nullable TKwbreak
+                                       var pexprnode4 = nodearraylist2
+                                       assert pexprnode4 isa nullable AExpr
+                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
+                                               tkwbreaknode2,
+                                               null,
+                                               pexprnode4
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction661
+private class ReduceAction607
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var tkwinitnode3 = nodearraylist6
-                                       assert tkwinitnode3 isa nullable TKwinit
-                                       var pexprsnode4 = nodearraylist7
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
-                                               pexprnode2,
-                                               tkwinitnode3,
-                                               pexprsnode4
+                                       var tkwbreaknode2 = nodearraylist1
+                                       assert tkwbreaknode2 isa nullable TKwbreak
+                                       var plabelnode3 = nodearraylist2
+                                       assert plabelnode3 isa nullable ALabel
+                                       var pexprnode4 = nodearraylist3
+                                       assert pexprnode4 isa nullable AExpr
+                                       var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr(
+                                               tkwbreaknode2,
+                                               plabelnode3,
+                                               pexprnode4
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction663
+private class ReduceAction608
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tkwinitnode3 = nodearraylist2
-                                       assert tkwinitnode3 isa nullable TKwinit
-                                       var pexprsnode4 = nodearraylist3
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
-                                               pexprnode2,
-                                               tkwinitnode3,
-                                               pexprsnode4
+                                       var tkwabortnode2 = nodearraylist1
+                                       assert tkwabortnode2 isa nullable TKwabort
+                                       var pexprnode1: nullable AAbortExpr = new AAbortExpr.init_aabortexpr(
+                                               tkwabortnode2
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction664
+private class ReduceAction609
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
-                                       var tkwinitnode3 = nodearraylist3
-                                       assert tkwinitnode3 isa nullable TKwinit
-                                       var pexprsnode4 = nodearraylist4
-                                       assert pexprsnode4 isa nullable AExprs
-                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
-                                               pexprnode2,
-                                               tkwinitnode3,
-                                               pexprsnode4
+                                       var tkwcontinuenode2 = nodearraylist1
+                                       assert tkwcontinuenode2 isa nullable TKwcontinue
+                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
+                                               tkwcontinuenode2,
+                                               null,
+                                               null
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction666
+private class ReduceAction610
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwdebugnode2 = nodearraylist1
-                                       assert tkwdebugnode2 isa nullable TKwdebug
-                                       var tkwtypenode3 = nodearraylist2
-                                       assert tkwtypenode3 isa nullable TKwtype
-                                       var pexprnode4 = nodearraylist5
-                                       assert pexprnode4 isa nullable AExpr
-                                       var ptypenode5 = nodearraylist3
-                                       assert ptypenode5 isa nullable AType
-                                       var pexprnode1: nullable ADebugTypeExpr = new ADebugTypeExpr.init_adebugtypeexpr(
-                                               tkwdebugnode2,
-                                               tkwtypenode3,
-                                               pexprnode4,
-                                               ptypenode5
+                                       var tkwcontinuenode2 = nodearraylist1
+                                       assert tkwcontinuenode2 isa nullable TKwcontinue
+                                       var plabelnode3 = nodearraylist2
+                                       assert plabelnode3 isa nullable ALabel
+                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
+                                               tkwcontinuenode2,
+                                               plabelnode3,
+                                               null
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction667
+private class ReduceAction611
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwlabelnode2 = nodearraylist1
-                                       assert tkwlabelnode2 isa nullable TKwlabel
-                                       var tidnode3 = nodearraylist2
-                                       assert tidnode3 isa nullable TId
-                                       var plabelnode1: nullable ALabel = new ALabel.init_alabel(
-                                               tkwlabelnode2,
-                                               tidnode3
+                                       var tkwcontinuenode2 = nodearraylist1
+                                       assert tkwcontinuenode2 isa nullable TKwcontinue
+                                       var pexprnode4 = nodearraylist2
+                                       assert pexprnode4 isa nullable AExpr
+                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
+                                               tkwcontinuenode2,
+                                               null,
+                                               pexprnode4
                                        )
-                                       node_list = plabelnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction668
+private class ReduceAction612
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var pclosuredefnode1 = nodearraylist1
-                                       if pclosuredefnode1 != null then
-                                               listnode2.add(pclosuredefnode1)
-                                       end
-                                       node_list = listnode2
+                                       var tkwcontinuenode2 = nodearraylist1
+                                       assert tkwcontinuenode2 isa nullable TKwcontinue
+                                       var plabelnode3 = nodearraylist2
+                                       assert plabelnode3 isa nullable ALabel
+                                       var pexprnode4 = nodearraylist3
+                                       assert pexprnode4 isa nullable AExpr
+                                       var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr(
+                                               tkwcontinuenode2,
+                                               plabelnode3,
+                                               pexprnode4
+                                       )
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction669
+private class ReduceAction619
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var pclosuredefnode1 = nodearraylist1
-                                       var listnode2 = nodearraylist2
-                                       assert listnode2 isa Array[Object]
-                                       if pclosuredefnode1 != null then
-                                               listnode3.add(pclosuredefnode1)
-                                       end
-                                       listnode3 = concat(listnode3, listnode2)
-                                       node_list = listnode3
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var tidnode3 = nodearraylist4
+                                       assert tidnode3 isa nullable TId
+                                       var pexprsnode4 = nodearraylist5
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
+                                               pexprnode2,
+                                               tidnode3,
+                                               pexprsnode4
+                                       )
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction670
+private class ReduceAction620
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var tkwdonode5 = nodearraylist3
-                                       assert tkwdonode5 isa nullable TKwdo
-                                       var pexprnode6 = nodearraylist4
-                                       assert pexprnode6 isa nullable AExpr
-                                       var plabelnode7 = nodearraylist5
-                                       assert plabelnode7 isa nullable ALabel
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode4,
-                                               tkwdonode5,
-                                               pexprnode6,
-                                               plabelnode7
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
+                                       var tidnode3 = nodearraylist1
+                                       assert tidnode3 isa nullable TId
+                                       var pexprsnode4 = nodearraylist2
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
+                                               pexprnode2,
+                                               tidnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction671
+private class ReduceAction621
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist10 = p.pop
-                                       var nodearraylist9 = p.pop
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
                                        var nodearraylist6 = p.pop
                                        var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist5
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist8
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pexprnode7 = nodearraylist9
-                                       assert pexprnode7 isa nullable AExpr
-                                       var plabelnode8 = nodearraylist10
-                                       assert plabelnode8 isa nullable ALabel
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               pexprnode7,
-                                               plabelnode8
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var tidnode3 = nodearraylist5
+                                       assert tidnode3 isa nullable TId
+                                       var pexprsnode4 = nodearraylist6
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
+                                               pexprnode2,
+                                               tidnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction672
+private class ReduceAction622
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
                                        var nodearraylist6 = p.pop
                                        var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist3
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist4
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pexprnode7 = nodearraylist5
-                                       assert pexprnode7 isa nullable AExpr
-                                       var plabelnode8 = nodearraylist6
-                                       assert plabelnode8 isa nullable ALabel
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               pexprnode7,
-                                               plabelnode8
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var tidnode3 = nodearraylist6
+                                       assert tidnode3 isa nullable TId
+                                       var pexprsnode4 = nodearraylist7
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
+                                               pexprnode2,
+                                               tidnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction673
+private class ReduceAction624
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var tkwdonode5 = nodearraylist3
-                                       assert tkwdonode5 isa nullable TKwdo
-                                       var pexprnode6 = nodearraylist4
-                                       assert pexprnode6 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode4,
-                                               tkwdonode5,
-                                               pexprnode6,
-                                               null
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
+                                       var tidnode3 = nodearraylist2
+                                       assert tidnode3 isa nullable TId
+                                       var pexprsnode4 = nodearraylist3
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
+                                               pexprnode2,
+                                               tidnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction674
+private class ReduceAction625
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist9 = p.pop
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist5
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist8
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pexprnode7 = nodearraylist9
-                                       assert pexprnode7 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               pexprnode7,
-                                               null
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
+                                       var tidnode3 = nodearraylist3
+                                       assert tidnode3 isa nullable TId
+                                       var pexprsnode4 = nodearraylist4
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
+                                               pexprnode2,
+                                               tidnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction675
+private class ReduceAction627
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist3
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist4
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pexprnode7 = nodearraylist5
-                                       assert pexprnode7 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               pexprnode7,
-                                               null
+                                       var tkwsupernode3 = nodearraylist1
+                                       assert tkwsupernode3 isa nullable TKwsuper
+                                       var pexprsnode4 = nodearraylist2
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
+                                               null,
+                                               tkwsupernode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction676
+private class ReduceAction628
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var pexprnode6 = nodearraylist5
-                                       assert pexprnode6 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode4,
-                                               null,
-                                               pexprnode6,
-                                               null
+                                       var listnode3 = new Array[Object]
+                                       var tclassidnode4 = nodearraylist1
+                                       assert tclassidnode4 isa nullable TClassid
+                                       var pqualifiednode2: nullable AQualified = new AQualified.init_aqualified(
+                                               listnode3,
+                                               tclassidnode4
+                                       )
+                                       var tkwsupernode5 = nodearraylist2
+                                       assert tkwsupernode5 isa nullable TKwsuper
+                                       var pexprsnode6 = nodearraylist3
+                                       assert pexprsnode6 isa nullable AExprs
+                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
+                                               pqualifiednode2,
+                                               tkwsupernode5,
+                                               pexprsnode6
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction677
+private class ReduceAction629
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist10 = p.pop
-                                       var nodearraylist9 = p.pop
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist5
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var pexprnode7 = nodearraylist10
-                                       assert pexprnode7 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               null,
-                                               pexprnode7,
-                                               null
+                                       var listnode4 = new Array[Object]
+                                       var listnode3 = nodearraylist1
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tclassidnode5 = nodearraylist2
+                                       assert tclassidnode5 isa nullable TClassid
+                                       var pqualifiednode2: nullable AQualified = new AQualified.init_aqualified(
+                                               listnode4,
+                                               tclassidnode5
+                                       )
+                                       var tkwsupernode6 = nodearraylist3
+                                       assert tkwsupernode6 isa nullable TKwsuper
+                                       var pexprsnode7 = nodearraylist4
+                                       assert pexprsnode7 isa nullable AExprs
+                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
+                                               pqualifiednode2,
+                                               tkwsupernode6,
+                                               pexprsnode7
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction678
+private class ReduceAction630
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist3
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var pexprnode7 = nodearraylist6
-                                       assert pexprnode7 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               null,
-                                               pexprnode7,
+                                       var listnode4 = new Array[Object]
+                                       var listnode3 = nodearraylist1
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var pqualifiednode2: nullable AQualified = new AQualified.init_aqualified(
+                                               listnode4,
                                                null
                                        )
-                                       node_list = pclosuredefnode1
+                                       var tkwsupernode6 = nodearraylist2
+                                       assert tkwsupernode6 isa nullable TKwsuper
+                                       var pexprsnode7 = nodearraylist3
+                                       assert pexprsnode7 isa nullable AExprs
+                                       var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr(
+                                               pqualifiednode2,
+                                               tkwsupernode6,
+                                               pexprsnode7
+                                       )
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction679
+private class ReduceAction631
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26059,67 +24633,43 @@ private class ReduceAction679
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var tkwdonode5 = nodearraylist3
-                                       assert tkwdonode5 isa nullable TKwdo
-                                       var pexprnode6 = nodearraylist5
-                                       assert pexprnode6 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode4,
-                                               tkwdonode5,
-                                               pexprnode6,
-                                               null
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var tkwinitnode3 = nodearraylist4
+                                       assert tkwinitnode3 isa nullable TKwinit
+                                       var pexprsnode4 = nodearraylist5
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
+                                               pexprnode2,
+                                               tkwinitnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction680
+private class ReduceAction632
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist10 = p.pop
-                                       var nodearraylist9 = p.pop
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
-                                       var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist5
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist8
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pexprnode7 = nodearraylist10
-                                       assert pexprnode7 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               pexprnode7,
-                                               null
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
+                                       var tkwinitnode3 = nodearraylist1
+                                       assert tkwinitnode3 isa nullable TKwinit
+                                       var pexprsnode4 = nodearraylist2
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
+                                               pexprnode2,
+                                               tkwinitnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction681
+private class ReduceAction633
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26130,157 +24680,141 @@ private class ReduceAction681
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist3
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist4
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pexprnode7 = nodearraylist6
-                                       assert pexprnode7 isa nullable AExpr
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               pexprnode7,
-                                               null
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var tkwinitnode3 = nodearraylist5
+                                       assert tkwinitnode3 isa nullable TKwinit
+                                       var pexprsnode4 = nodearraylist6
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
+                                               pexprnode2,
+                                               tkwinitnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction682
+private class ReduceAction634
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var tkwdonode5 = nodearraylist3
-                                       assert tkwdonode5 isa nullable TKwdo
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode4,
-                                               tkwdonode5,
-                                               null,
-                                               null
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var tkwinitnode3 = nodearraylist6
+                                       assert tkwinitnode3 isa nullable TKwinit
+                                       var pexprsnode4 = nodearraylist7
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
+                                               pexprnode2,
+                                               tkwinitnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction683
+private class ReduceAction636
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist9 = p.pop
-                                       var nodearraylist8 = p.pop
-                                       var nodearraylist7 = p.pop
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist5
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist8
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               null,
-                                               null
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
+                                       var tkwinitnode3 = nodearraylist2
+                                       assert tkwinitnode3 isa nullable TKwinit
+                                       var pexprsnode4 = nodearraylist3
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
+                                               pexprnode2,
+                                               tkwinitnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction684
+private class ReduceAction637
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
                                        var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var tbangnode2 = nodearraylist1
-                                       assert tbangnode2 isa nullable TBang
-                                       var pclosureidnode3 = nodearraylist2
-                                       assert pclosureidnode3 isa nullable AClosureId
-                                       var listnode4 = nodearraylist3
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var tkwdonode6 = nodearraylist4
-                                       assert tkwdonode6 isa nullable TKwdo
-                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
-                                               tbangnode2,
-                                               pclosureidnode3,
-                                               listnode5,
-                                               tkwdonode6,
-                                               null,
-                                               null
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
+                                       var tkwinitnode3 = nodearraylist3
+                                       assert tkwinitnode3 isa nullable TKwinit
+                                       var pexprsnode4 = nodearraylist4
+                                       assert pexprsnode4 isa nullable AExprs
+                                       var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr(
+                                               pexprnode2,
+                                               tkwinitnode3,
+                                               pexprsnode4
                                        )
-                                       node_list = pclosuredefnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction685
+private class ReduceAction639
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tidnode2 = nodearraylist1
-                                       assert tidnode2 isa nullable TId
-                                       var pclosureidnode1: nullable ASimpleClosureId = new ASimpleClosureId.init_asimpleclosureid(
-                                               tidnode2
+                                       var tkwdebugnode2 = nodearraylist1
+                                       assert tkwdebugnode2 isa nullable TKwdebug
+                                       var tkwtypenode3 = nodearraylist2
+                                       assert tkwtypenode3 isa nullable TKwtype
+                                       var pexprnode4 = nodearraylist5
+                                       assert pexprnode4 isa nullable AExpr
+                                       var ptypenode5 = nodearraylist3
+                                       assert ptypenode5 isa nullable AType
+                                       var pexprnode1: nullable ADebugTypeExpr = new ADebugTypeExpr.init_adebugtypeexpr(
+                                               tkwdebugnode2,
+                                               tkwtypenode3,
+                                               pexprnode4,
+                                               ptypenode5
                                        )
-                                       node_list = pclosureidnode1
+                                       node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction686
+private class ReduceAction640
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var tkwbreaknode2 = nodearraylist1
-                                       assert tkwbreaknode2 isa nullable TKwbreak
-                                       var pclosureidnode1: nullable ABreakClosureId = new ABreakClosureId.init_abreakclosureid(
-                                               tkwbreaknode2
+                                       var tkwlabelnode2 = nodearraylist1
+                                       assert tkwlabelnode2 isa nullable TKwlabel
+                                       var tidnode3 = nodearraylist2
+                                       assert tidnode3 isa nullable TId
+                                       var plabelnode1: nullable ALabel = new ALabel.init_alabel(
+                                               tkwlabelnode2,
+                                               tidnode3
                                        )
-                                       node_list = pclosureidnode1
+                                       node_list = plabelnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction687
+private class ReduceAction641
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26297,7 +24831,7 @@ private class ReduceAction687
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction688
+private class ReduceAction642
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26320,7 +24854,7 @@ private class ReduceAction688
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction689
+private class ReduceAction643
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26346,7 +24880,7 @@ private class ReduceAction689
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction690
+private class ReduceAction644
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26372,7 +24906,7 @@ private class ReduceAction690
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction691
+private class ReduceAction645
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26401,7 +24935,7 @@ private class ReduceAction691
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction692
+private class ReduceAction646
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26431,7 +24965,7 @@ private class ReduceAction692
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction693
+private class ReduceAction647
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26464,7 +24998,7 @@ private class ReduceAction693
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction694
+private class ReduceAction648
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26497,7 +25031,7 @@ private class ReduceAction694
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction695
+private class ReduceAction649
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26533,7 +25067,7 @@ private class ReduceAction695
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction696
+private class ReduceAction650
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26562,7 +25096,7 @@ private class ReduceAction696
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction697
+private class ReduceAction651
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26587,7 +25121,7 @@ private class ReduceAction697
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction698
+private class ReduceAction652
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26617,7 +25151,7 @@ private class ReduceAction698
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction699
+private class ReduceAction653
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26648,7 +25182,7 @@ private class ReduceAction699
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction701
+private class ReduceAction655
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26674,7 +25208,7 @@ private class ReduceAction701
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction702
+private class ReduceAction656
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26701,7 +25235,7 @@ private class ReduceAction702
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction704
+private class ReduceAction658
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26734,7 +25268,7 @@ private class ReduceAction704
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction705
+private class ReduceAction659
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26763,7 +25297,7 @@ private class ReduceAction705
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction706
+private class ReduceAction660
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26797,7 +25331,7 @@ private class ReduceAction706
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction707
+private class ReduceAction661
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26832,7 +25366,7 @@ private class ReduceAction707
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction709
+private class ReduceAction663
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26862,7 +25396,7 @@ private class ReduceAction709
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction710
+private class ReduceAction664
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26893,7 +25427,7 @@ private class ReduceAction710
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction712
+private class ReduceAction666
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26920,7 +25454,7 @@ private class ReduceAction712
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction713
+private class ReduceAction667
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26949,7 +25483,7 @@ private class ReduceAction713
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction714
+private class ReduceAction668
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -26974,7 +25508,7 @@ private class ReduceAction714
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction715
+private class ReduceAction669
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27004,7 +25538,7 @@ private class ReduceAction715
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction716
+private class ReduceAction670
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27035,7 +25569,7 @@ private class ReduceAction716
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction718
+private class ReduceAction672
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27061,7 +25595,7 @@ private class ReduceAction718
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction719
+private class ReduceAction673
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27088,7 +25622,7 @@ private class ReduceAction719
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction721
+private class ReduceAction675
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27121,7 +25655,7 @@ private class ReduceAction721
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction722
+private class ReduceAction676
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27150,7 +25684,7 @@ private class ReduceAction722
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction723
+private class ReduceAction677
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27184,7 +25718,7 @@ private class ReduceAction723
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction724
+private class ReduceAction678
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27219,7 +25753,7 @@ private class ReduceAction724
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction726
+private class ReduceAction680
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27249,7 +25783,7 @@ private class ReduceAction726
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction727
+private class ReduceAction681
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27280,7 +25814,7 @@ private class ReduceAction727
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction729
+private class ReduceAction683
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27307,7 +25841,7 @@ private class ReduceAction729
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction730
+private class ReduceAction684
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27322,7 +25856,7 @@ private class ReduceAction730
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction731
+private class ReduceAction685
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27337,7 +25871,7 @@ private class ReduceAction731
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction732
+private class ReduceAction686
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27360,7 +25894,7 @@ private class ReduceAction732
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction733
+private class ReduceAction687
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27380,7 +25914,7 @@ private class ReduceAction733
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction734
+private class ReduceAction688
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27411,7 +25945,7 @@ private class ReduceAction734
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction735
+private class ReduceAction689
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27438,7 +25972,7 @@ private class ReduceAction735
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction736
+private class ReduceAction690
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27469,7 +26003,7 @@ private class ReduceAction736
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction737
+private class ReduceAction691
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27496,7 +26030,7 @@ private class ReduceAction737
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction738
+private class ReduceAction692
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27524,7 +26058,7 @@ private class ReduceAction738
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction741
+private class ReduceAction695
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27547,7 +26081,7 @@ private class ReduceAction741
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction742
+private class ReduceAction696
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27567,7 +26101,7 @@ private class ReduceAction742
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction743
+private class ReduceAction697
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27600,7 +26134,7 @@ private class ReduceAction743
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction744
+private class ReduceAction698
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27630,7 +26164,7 @@ private class ReduceAction744
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction745
+private class ReduceAction699
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27676,7 +26210,7 @@ private class ReduceAction745
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction746
+private class ReduceAction700
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27718,7 +26252,7 @@ private class ReduceAction746
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction747
+private class ReduceAction701
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27761,7 +26295,7 @@ private class ReduceAction747
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction748
+private class ReduceAction702
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27800,7 +26334,7 @@ private class ReduceAction748
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction749
+private class ReduceAction703
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27825,7 +26359,7 @@ private class ReduceAction749
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction750
+private class ReduceAction704
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27853,7 +26387,7 @@ private class ReduceAction750
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction751
+private class ReduceAction705
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27874,7 +26408,7 @@ private class ReduceAction751
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction752
+private class ReduceAction706
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27898,7 +26432,7 @@ private class ReduceAction752
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction753
+private class ReduceAction707
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27910,32 +26444,7 @@ private class ReduceAction753
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction763
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
-                                       var pexprnode2 = nodearraylist1
-                                       assert pexprnode2 isa nullable AExpr
-                                       var pexprsnode3 = nodearraylist2
-                                       assert pexprsnode3 isa nullable AExprs
-                                       var listnode4 = nodearraylist3
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
-                                       var pexprnode1: nullable ABraExpr = new ABraExpr.init_abraexpr(
-                                               pexprnode2,
-                                               pexprsnode3,
-                                               listnode5
-                                       )
-                                       node_list = pexprnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction765
+private class ReduceAction710
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27975,7 +26484,7 @@ private class ReduceAction765
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction767
+private class ReduceAction712
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -27996,7 +26505,7 @@ private class ReduceAction767
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction768
+private class ReduceAction713
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28017,7 +26526,7 @@ private class ReduceAction768
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction769
+private class ReduceAction714
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28039,7 +26548,7 @@ private class ReduceAction769
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction770
+private class ReduceAction715
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28060,7 +26569,7 @@ private class ReduceAction770
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction772
+private class ReduceAction717
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28080,7 +26589,7 @@ private class ReduceAction772
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction774
+private class ReduceAction719
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28101,7 +26610,7 @@ private class ReduceAction774
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction775
+private class ReduceAction720
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28122,7 +26631,7 @@ private class ReduceAction775
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction776
+private class ReduceAction721
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28143,7 +26652,7 @@ private class ReduceAction776
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction777
+private class ReduceAction722
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28164,7 +26673,7 @@ private class ReduceAction777
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction778
+private class ReduceAction723
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28185,7 +26694,7 @@ private class ReduceAction778
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction779
+private class ReduceAction724
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28206,7 +26715,7 @@ private class ReduceAction779
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction780
+private class ReduceAction725
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28227,7 +26736,7 @@ private class ReduceAction780
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction781
+private class ReduceAction726
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28248,7 +26757,7 @@ private class ReduceAction781
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction782
+private class ReduceAction727
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28269,7 +26778,7 @@ private class ReduceAction782
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction783
+private class ReduceAction728
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28290,7 +26799,7 @@ private class ReduceAction783
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction784
+private class ReduceAction729
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28311,7 +26820,7 @@ private class ReduceAction784
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction786
+private class ReduceAction731
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28332,7 +26841,7 @@ private class ReduceAction786
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction787
+private class ReduceAction732
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28353,7 +26862,7 @@ private class ReduceAction787
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction789
+private class ReduceAction734
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28374,7 +26883,7 @@ private class ReduceAction789
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction790
+private class ReduceAction735
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28395,7 +26904,7 @@ private class ReduceAction790
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction791
+private class ReduceAction736
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28416,7 +26925,7 @@ private class ReduceAction791
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction793
+private class ReduceAction738
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28436,7 +26945,7 @@ private class ReduceAction793
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction794
+private class ReduceAction739
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28456,7 +26965,7 @@ private class ReduceAction794
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction796
+private class ReduceAction741
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28481,7 +26990,7 @@ private class ReduceAction796
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction797
+private class ReduceAction742
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28506,7 +27015,7 @@ private class ReduceAction797
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction798
+private class ReduceAction743
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28527,7 +27036,7 @@ private class ReduceAction798
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction799
+private class ReduceAction744
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28553,7 +27062,7 @@ private class ReduceAction799
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction800
+private class ReduceAction745
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28580,7 +27089,7 @@ private class ReduceAction800
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction802
+private class ReduceAction747
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28602,7 +27111,7 @@ private class ReduceAction802
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction803
+private class ReduceAction748
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28625,7 +27134,7 @@ private class ReduceAction803
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction805
+private class ReduceAction750
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28646,7 +27155,7 @@ private class ReduceAction805
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction806
+private class ReduceAction751
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28663,7 +27172,7 @@ private class ReduceAction806
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction807
+private class ReduceAction752
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28685,7 +27194,7 @@ private class ReduceAction807
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction808
+private class ReduceAction753
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28708,7 +27217,7 @@ private class ReduceAction808
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction810
+private class ReduceAction755
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28726,7 +27235,7 @@ private class ReduceAction810
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction811
+private class ReduceAction756
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28745,28 +27254,26 @@ private class ReduceAction811
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction827
+private class ReduceAction772
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode4 = new Array[Object]
                                        var pexprnode2 = nodearraylist1
                                        assert pexprnode2 isa nullable AExpr
                                        var pexprsnode3 = nodearraylist2
                                        assert pexprsnode3 isa nullable AExprs
                                        var pexprnode1: nullable ABraExpr = new ABraExpr.init_abraexpr(
                                                pexprnode2,
-                                               pexprsnode3,
-                                               listnode4
+                                               pexprsnode3
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction828
+private class ReduceAction773
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28796,7 +27303,7 @@ private class ReduceAction828
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction829
+private class ReduceAction774
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28827,7 +27334,7 @@ private class ReduceAction829
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction830
+private class ReduceAction775
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28859,7 +27366,7 @@ private class ReduceAction830
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction832
+private class ReduceAction777
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28892,7 +27399,7 @@ private class ReduceAction832
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction833
+private class ReduceAction778
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28928,7 +27435,7 @@ private class ReduceAction833
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction834
+private class ReduceAction779
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28961,7 +27468,7 @@ private class ReduceAction834
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction835
+private class ReduceAction780
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -28997,7 +27504,7 @@ private class ReduceAction835
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction836
+private class ReduceAction781
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29013,7 +27520,7 @@ private class ReduceAction836
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction837
+private class ReduceAction782
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29032,7 +27539,7 @@ private class ReduceAction837
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction838
+private class ReduceAction783
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29048,7 +27555,7 @@ private class ReduceAction838
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction839
+private class ReduceAction784
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29067,7 +27574,7 @@ private class ReduceAction839
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction840
+private class ReduceAction785
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29083,7 +27590,7 @@ private class ReduceAction840
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction841
+private class ReduceAction786
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29102,7 +27609,7 @@ private class ReduceAction841
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction842
+private class ReduceAction787
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29118,7 +27625,7 @@ private class ReduceAction842
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction843
+private class ReduceAction788
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29137,7 +27644,7 @@ private class ReduceAction843
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction844
+private class ReduceAction789
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29153,7 +27660,7 @@ private class ReduceAction844
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction845
+private class ReduceAction790
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29172,7 +27679,7 @@ private class ReduceAction845
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction846
+private class ReduceAction791
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29188,7 +27695,7 @@ private class ReduceAction846
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction847
+private class ReduceAction792
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29207,7 +27714,7 @@ private class ReduceAction847
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction848
+private class ReduceAction793
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29223,7 +27730,7 @@ private class ReduceAction848
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction849
+private class ReduceAction794
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29242,7 +27749,7 @@ private class ReduceAction849
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction850
+private class ReduceAction795
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29258,7 +27765,7 @@ private class ReduceAction850
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction851
+private class ReduceAction796
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29277,7 +27784,7 @@ private class ReduceAction851
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction852
+private class ReduceAction797
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29293,7 +27800,7 @@ private class ReduceAction852
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction853
+private class ReduceAction798
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29312,7 +27819,7 @@ private class ReduceAction853
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction855
+private class ReduceAction800
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29338,7 +27845,7 @@ private class ReduceAction855
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction856
+private class ReduceAction801
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29367,7 +27874,7 @@ private class ReduceAction856
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction857
+private class ReduceAction802
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29403,7 +27910,7 @@ private class ReduceAction857
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction858
+private class ReduceAction803
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29444,7 +27951,7 @@ private class ReduceAction858
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction859
+private class ReduceAction804
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29468,7 +27975,7 @@ private class ReduceAction859
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction860
+private class ReduceAction805
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29496,7 +28003,7 @@ private class ReduceAction860
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction861
+private class ReduceAction806
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29523,7 +28030,7 @@ private class ReduceAction861
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction862
+private class ReduceAction807
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29554,7 +28061,7 @@ private class ReduceAction862
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction863
+private class ReduceAction808
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29576,7 +28083,7 @@ private class ReduceAction863
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction864
+private class ReduceAction809
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29591,7 +28098,7 @@ private class ReduceAction864
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction866
+private class ReduceAction811
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29606,7 +28113,7 @@ private class ReduceAction866
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction867
+private class ReduceAction812
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29621,7 +28128,7 @@ private class ReduceAction867
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction868
+private class ReduceAction813
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29646,7 +28153,7 @@ private class ReduceAction868
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction869
+private class ReduceAction814
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29677,7 +28184,7 @@ private class ReduceAction869
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction870
+private class ReduceAction815
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29697,7 +28204,7 @@ private class ReduceAction870
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction871
+private class ReduceAction816
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29720,7 +28227,7 @@ private class ReduceAction871
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction872
+private class ReduceAction817
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29752,7 +28259,7 @@ private class ReduceAction872
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction873
+private class ReduceAction818
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29787,7 +28294,7 @@ private class ReduceAction873
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction874
+private class ReduceAction819
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29807,7 +28314,7 @@ private class ReduceAction874
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction875
+private class ReduceAction820
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29822,7 +28329,7 @@ private class ReduceAction875
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction876
+private class ReduceAction821
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29841,7 +28348,7 @@ private class ReduceAction876
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction878
+private class ReduceAction823
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29863,7 +28370,7 @@ private class ReduceAction878
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction879
+private class ReduceAction824
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29888,7 +28395,7 @@ private class ReduceAction879
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction880
+private class ReduceAction825
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29921,7 +28428,7 @@ private class ReduceAction880
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction881
+private class ReduceAction826
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29957,7 +28464,7 @@ private class ReduceAction881
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction882
+private class ReduceAction827
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29983,7 +28490,7 @@ private class ReduceAction882
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction883
+private class ReduceAction828
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -29996,7 +28503,7 @@ private class ReduceAction883
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction884
+private class ReduceAction829
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30011,7 +28518,7 @@ private class ReduceAction884
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction885
+private class ReduceAction830
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30030,7 +28537,7 @@ private class ReduceAction885
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction886
+private class ReduceAction831
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30043,7 +28550,7 @@ private class ReduceAction886
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction887
+private class ReduceAction832
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30058,7 +28565,7 @@ private class ReduceAction887
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction888
+private class ReduceAction833
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30073,7 +28580,7 @@ private class ReduceAction888
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction890
+private class ReduceAction835
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30088,7 +28595,7 @@ private class ReduceAction890
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction891
+private class ReduceAction836
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30103,7 +28610,7 @@ private class ReduceAction891
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction892
+private class ReduceAction837
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30119,7 +28626,7 @@ private class ReduceAction892
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction893
+private class ReduceAction838
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30136,7 +28643,7 @@ private class ReduceAction893
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction895
+private class ReduceAction840
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30151,7 +28658,7 @@ private class ReduceAction895
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction896
+private class ReduceAction841
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30167,7 +28674,7 @@ private class ReduceAction896
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction897
+private class ReduceAction842
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30184,7 +28691,7 @@ private class ReduceAction897
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction899
+private class ReduceAction844
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30199,7 +28706,7 @@ private class ReduceAction899
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction900
+private class ReduceAction845
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30215,7 +28722,7 @@ private class ReduceAction900
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction901
+private class ReduceAction846
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30232,7 +28739,7 @@ private class ReduceAction901
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction903
+private class ReduceAction848
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30247,7 +28754,7 @@ private class ReduceAction903
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction904
+private class ReduceAction849
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30263,7 +28770,7 @@ private class ReduceAction904
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction905
+private class ReduceAction850
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30280,7 +28787,7 @@ private class ReduceAction905
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction907
+private class ReduceAction852
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30306,7 +28813,7 @@ private class ReduceAction907
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction908
+private class ReduceAction853
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30328,7 +28835,7 @@ private class ReduceAction908
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction909
+private class ReduceAction854
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30341,7 +28848,7 @@ private class ReduceAction909
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction911
+private class ReduceAction856
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30360,7 +28867,7 @@ private class ReduceAction911
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction914
+private class ReduceAction859
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30386,7 +28893,7 @@ private class ReduceAction914
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction915
+private class ReduceAction860
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30402,7 +28909,7 @@ private class ReduceAction915
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction916
+private class ReduceAction861
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30422,7 +28929,7 @@ private class ReduceAction916
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction917
+private class ReduceAction862
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30436,7 +28943,7 @@ private class ReduceAction917
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction918
+private class ReduceAction863
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30451,7 +28958,7 @@ private class ReduceAction918
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction919
+private class ReduceAction864
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30473,7 +28980,7 @@ private class ReduceAction919
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction920
+private class ReduceAction865
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30491,7 +28998,7 @@ private class ReduceAction920
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction921
+private class ReduceAction866
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30513,7 +29020,7 @@ private class ReduceAction921
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction922
+private class ReduceAction867
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30535,7 +29042,7 @@ private class ReduceAction922
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction923
+private class ReduceAction868
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30561,7 +29068,7 @@ private class ReduceAction923
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction924
+private class ReduceAction869
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30574,7 +29081,7 @@ private class ReduceAction924
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction925
+private class ReduceAction870
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30587,7 +29094,7 @@ private class ReduceAction925
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction926
+private class ReduceAction871
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30596,7 +29103,7 @@ private class ReduceAction926
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction928
+private class ReduceAction873
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30613,7 +29120,7 @@ private class ReduceAction928
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction929
+private class ReduceAction874
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30631,7 +29138,7 @@ private class ReduceAction929
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction931
+private class ReduceAction876
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30640,7 +29147,7 @@ private class ReduceAction931
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction932
+private class ReduceAction877
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30651,7 +29158,7 @@ private class ReduceAction932
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction933
+private class ReduceAction878
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30661,7 +29168,7 @@ private class ReduceAction933
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction934
+private class ReduceAction879
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30672,7 +29179,7 @@ private class ReduceAction934
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1317
+private class ReduceAction1227
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30695,7 +29202,7 @@ private class ReduceAction1317
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1318
+private class ReduceAction1228
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30719,7 +29226,7 @@ private class ReduceAction1318
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1321
+private class ReduceAction1231
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30738,7 +29245,7 @@ private class ReduceAction1321
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1322
+private class ReduceAction1232
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30758,7 +29265,7 @@ private class ReduceAction1322
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1325
+private class ReduceAction1235
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30766,7 +29273,6 @@ private class ReduceAction1325
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
                                        var pexprnode2 = nodearraylist1
                                        assert pexprnode2 isa nullable AExpr
                                        var tidnode3 = nodearraylist2
@@ -30776,14 +29282,13 @@ private class ReduceAction1325
                                        var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
                                                pexprnode2,
                                                tidnode3,
-                                               pexprsnode4,
-                                               listnode5
+                                               pexprsnode4
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1326
+private class ReduceAction1236
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30792,7 +29297,6 @@ private class ReduceAction1326
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode5 = new Array[Object]
                                        var pexprnode2 = nodearraylist1
                                        assert pexprnode2 isa nullable AExpr
                                        var tidnode3 = nodearraylist3
@@ -30802,14 +29306,13 @@ private class ReduceAction1326
                                        var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr(
                                                pexprnode2,
                                                tidnode3,
-                                               pexprsnode4,
-                                               listnode5
+                                               pexprsnode4
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1333
+private class ReduceAction1243
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30832,7 +29335,7 @@ private class ReduceAction1333
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1357
+private class ReduceAction1267
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30845,7 +29348,7 @@ private class ReduceAction1357
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1358
+private class ReduceAction1268
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30855,7 +29358,7 @@ private class ReduceAction1358
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1772
+private class ReduceAction1622
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30870,7 +29373,7 @@ private class ReduceAction1772
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1773
+private class ReduceAction1623
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30889,7 +29392,7 @@ private class ReduceAction1773
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1774
+private class ReduceAction1624
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30904,7 +29407,7 @@ private class ReduceAction1774
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1775
+private class ReduceAction1625
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30923,7 +29426,7 @@ private class ReduceAction1775
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1776
+private class ReduceAction1626
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30938,7 +29441,7 @@ private class ReduceAction1776
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1777
+private class ReduceAction1627
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30957,7 +29460,7 @@ private class ReduceAction1777
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1778
+private class ReduceAction1628
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30972,7 +29475,7 @@ private class ReduceAction1778
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1779
+private class ReduceAction1629
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -30991,7 +29494,7 @@ private class ReduceAction1779
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1780
+private class ReduceAction1630
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31006,7 +29509,7 @@ private class ReduceAction1780
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1781
+private class ReduceAction1631
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31025,7 +29528,7 @@ private class ReduceAction1781
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1784
+private class ReduceAction1634
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31040,7 +29543,7 @@ private class ReduceAction1784
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1785
+private class ReduceAction1635
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31059,7 +29562,7 @@ private class ReduceAction1785
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1786
+private class ReduceAction1636
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31074,7 +29577,7 @@ private class ReduceAction1786
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1787
+private class ReduceAction1637
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31093,41 +29596,7 @@ private class ReduceAction1787
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1788
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var pclosuredeclnode1 = nodearraylist1
-                                       if pclosuredeclnode1 != null then
-                                               listnode2.add(pclosuredeclnode1)
-                                       end
-                                       node_list = listnode2
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction1789
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
-                                       var nodearraylist1 = p.pop
-                                       var listnode3 = new Array[Object]
-                                       var listnode1 = nodearraylist1
-                                       assert listnode1 isa Array[Object]
-                                       var pclosuredeclnode2 = nodearraylist2
-                                       listnode3 = concat(listnode3, listnode1)
-                                       if pclosuredeclnode2 != null then
-                                               listnode3.add(pclosuredeclnode2)
-                                       end
-                                       node_list = listnode3
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction1790
+private class ReduceAction1638
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31142,7 +29611,7 @@ private class ReduceAction1790
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1791
+private class ReduceAction1639
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31161,7 +29630,7 @@ private class ReduceAction1791
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1793
+private class ReduceAction1641
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31180,7 +29649,7 @@ private class ReduceAction1793
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1794
+private class ReduceAction1642
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31195,7 +29664,7 @@ private class ReduceAction1794
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1795
+private class ReduceAction1643
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31214,7 +29683,21 @@ private class ReduceAction1795
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1797
+private class ReduceAction1644
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist1 = p.pop
+                                       var listnode2 = new Array[Object]
+                                       var listnode1 = nodearraylist1
+                                       assert listnode1 isa Array[Object]
+                                       listnode2 = concat(listnode2, listnode1)
+                                       node_list = listnode2
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction1645
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31232,7 +29715,7 @@ private class ReduceAction1797
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1799
+private class ReduceAction1647
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31251,7 +29734,7 @@ private class ReduceAction1799
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1803
+private class ReduceAction1651
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31270,7 +29753,7 @@ private class ReduceAction1803
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1807
+private class ReduceAction1655
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31289,7 +29772,7 @@ private class ReduceAction1807
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1808
+private class ReduceAction1656
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31304,7 +29787,7 @@ private class ReduceAction1808
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1809
+private class ReduceAction1657
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31323,7 +29806,7 @@ private class ReduceAction1809
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1810
+private class ReduceAction1658
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -31338,7 +29821,7 @@ private class ReduceAction1810
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction1811
+private class ReduceAction1659
        super ReduceAction
        redef fun action(p: Parser)
        do