update c_src
[nit.git] / c_src / nith.types.2.c
index ed9f255..d654164 100644 (file)
@@ -1,8 +1,8 @@
 #include "nith.types.0.h"
-/* runtime type ReduceAction288 */
-const struct type type_parser__ReduceAction288 = {
+/* runtime type ReduceAction185 */
+const struct type type_parser__ReduceAction185 = {
 -1, /*CAST DEAD*/
-"ReduceAction288", /* class_name_string */
+"ReduceAction185", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -10,14 +10,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-886, /* ReduceAction288 */
+153, /* ReduceAction */
+806, /* ReduceAction185 */
 },
 };
-/* runtime type ReduceAction289 */
-const struct type type_parser__ReduceAction289 = {
+/* runtime type ReduceAction186 */
+const struct type type_parser__ReduceAction186 = {
 -1, /*CAST DEAD*/
-"ReduceAction289", /* class_name_string */
+"ReduceAction186", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -25,14 +25,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-887, /* ReduceAction289 */
+153, /* ReduceAction */
+807, /* ReduceAction186 */
 },
 };
-/* runtime type ReduceAction290 */
-const struct type type_parser__ReduceAction290 = {
+/* runtime type ReduceAction187 */
+const struct type type_parser__ReduceAction187 = {
 -1, /*CAST DEAD*/
-"ReduceAction290", /* class_name_string */
+"ReduceAction187", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -40,14 +40,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-888, /* ReduceAction290 */
+153, /* ReduceAction */
+808, /* ReduceAction187 */
 },
 };
-/* runtime type ReduceAction291 */
-const struct type type_parser__ReduceAction291 = {
+/* runtime type ReduceAction189 */
+const struct type type_parser__ReduceAction189 = {
 -1, /*CAST DEAD*/
-"ReduceAction291", /* class_name_string */
+"ReduceAction189", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -55,14 +55,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-889, /* ReduceAction291 */
+153, /* ReduceAction */
+809, /* ReduceAction189 */
 },
 };
-/* runtime type ReduceAction292 */
-const struct type type_parser__ReduceAction292 = {
+/* runtime type ReduceAction190 */
+const struct type type_parser__ReduceAction190 = {
 -1, /*CAST DEAD*/
-"ReduceAction292", /* class_name_string */
+"ReduceAction190", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -70,14 +70,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-890, /* ReduceAction292 */
+153, /* ReduceAction */
+810, /* ReduceAction190 */
 },
 };
-/* runtime type ReduceAction293 */
-const struct type type_parser__ReduceAction293 = {
+/* runtime type ReduceAction191 */
+const struct type type_parser__ReduceAction191 = {
 -1, /*CAST DEAD*/
-"ReduceAction293", /* class_name_string */
+"ReduceAction191", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -85,14 +85,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-891, /* ReduceAction293 */
+153, /* ReduceAction */
+811, /* ReduceAction191 */
 },
 };
-/* runtime type ReduceAction294 */
-const struct type type_parser__ReduceAction294 = {
+/* runtime type ReduceAction193 */
+const struct type type_parser__ReduceAction193 = {
 -1, /*CAST DEAD*/
-"ReduceAction294", /* class_name_string */
+"ReduceAction193", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -100,14 +100,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-892, /* ReduceAction294 */
+153, /* ReduceAction */
+812, /* ReduceAction193 */
 },
 };
-/* runtime type ReduceAction295 */
-const struct type type_parser__ReduceAction295 = {
+/* runtime type ReduceAction194 */
+const struct type type_parser__ReduceAction194 = {
 -1, /*CAST DEAD*/
-"ReduceAction295", /* class_name_string */
+"ReduceAction194", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -115,14 +115,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-893, /* ReduceAction295 */
+153, /* ReduceAction */
+813, /* ReduceAction194 */
 },
 };
-/* runtime type ReduceAction296 */
-const struct type type_parser__ReduceAction296 = {
+/* runtime type ReduceAction195 */
+const struct type type_parser__ReduceAction195 = {
 -1, /*CAST DEAD*/
-"ReduceAction296", /* class_name_string */
+"ReduceAction195", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -130,14 +130,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-894, /* ReduceAction296 */
+153, /* ReduceAction */
+814, /* ReduceAction195 */
 },
 };
-/* runtime type ReduceAction297 */
-const struct type type_parser__ReduceAction297 = {
+/* runtime type ReduceAction196 */
+const struct type type_parser__ReduceAction196 = {
 -1, /*CAST DEAD*/
-"ReduceAction297", /* class_name_string */
+"ReduceAction196", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -145,14 +145,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-895, /* ReduceAction297 */
+153, /* ReduceAction */
+815, /* ReduceAction196 */
 },
 };
-/* runtime type ReduceAction298 */
-const struct type type_parser__ReduceAction298 = {
+/* runtime type ReduceAction197 */
+const struct type type_parser__ReduceAction197 = {
 -1, /*CAST DEAD*/
-"ReduceAction298", /* class_name_string */
+"ReduceAction197", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -160,14 +160,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-896, /* ReduceAction298 */
+153, /* ReduceAction */
+816, /* ReduceAction197 */
 },
 };
-/* runtime type ReduceAction299 */
-const struct type type_parser__ReduceAction299 = {
+/* runtime type ReduceAction199 */
+const struct type type_parser__ReduceAction199 = {
 -1, /*CAST DEAD*/
-"ReduceAction299", /* class_name_string */
+"ReduceAction199", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -175,14 +175,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-897, /* ReduceAction299 */
+153, /* ReduceAction */
+817, /* ReduceAction199 */
 },
 };
-/* runtime type ReduceAction300 */
-const struct type type_parser__ReduceAction300 = {
+/* runtime type ReduceAction200 */
+const struct type type_parser__ReduceAction200 = {
 -1, /*CAST DEAD*/
-"ReduceAction300", /* class_name_string */
+"ReduceAction200", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -190,14 +190,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-898, /* ReduceAction300 */
+153, /* ReduceAction */
+818, /* ReduceAction200 */
 },
 };
-/* runtime type ReduceAction302 */
-const struct type type_parser__ReduceAction302 = {
+/* runtime type ReduceAction202 */
+const struct type type_parser__ReduceAction202 = {
 -1, /*CAST DEAD*/
-"ReduceAction302", /* class_name_string */
+"ReduceAction202", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -205,14 +205,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-899, /* ReduceAction302 */
+153, /* ReduceAction */
+819, /* ReduceAction202 */
 },
 };
-/* runtime type ReduceAction303 */
-const struct type type_parser__ReduceAction303 = {
+/* runtime type ReduceAction203 */
+const struct type type_parser__ReduceAction203 = {
 -1, /*CAST DEAD*/
-"ReduceAction303", /* class_name_string */
+"ReduceAction203", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -220,14 +220,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-900, /* ReduceAction303 */
+153, /* ReduceAction */
+820, /* ReduceAction203 */
 },
 };
-/* runtime type ReduceAction304 */
-const struct type type_parser__ReduceAction304 = {
+/* runtime type ReduceAction204 */
+const struct type type_parser__ReduceAction204 = {
 -1, /*CAST DEAD*/
-"ReduceAction304", /* class_name_string */
+"ReduceAction204", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -235,14 +235,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-901, /* ReduceAction304 */
+153, /* ReduceAction */
+821, /* ReduceAction204 */
 },
 };
-/* runtime type ReduceAction305 */
-const struct type type_parser__ReduceAction305 = {
+/* runtime type ReduceAction205 */
+const struct type type_parser__ReduceAction205 = {
 -1, /*CAST DEAD*/
-"ReduceAction305", /* class_name_string */
+"ReduceAction205", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -250,14 +250,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-902, /* ReduceAction305 */
+153, /* ReduceAction */
+822, /* ReduceAction205 */
 },
 };
-/* runtime type ReduceAction306 */
-const struct type type_parser__ReduceAction306 = {
+/* runtime type ReduceAction206 */
+const struct type type_parser__ReduceAction206 = {
 -1, /*CAST DEAD*/
-"ReduceAction306", /* class_name_string */
+"ReduceAction206", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -265,14 +265,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-903, /* ReduceAction306 */
+153, /* ReduceAction */
+823, /* ReduceAction206 */
 },
 };
-/* runtime type ReduceAction307 */
-const struct type type_parser__ReduceAction307 = {
+/* runtime type ReduceAction207 */
+const struct type type_parser__ReduceAction207 = {
 -1, /*CAST DEAD*/
-"ReduceAction307", /* class_name_string */
+"ReduceAction207", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -280,14 +280,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-904, /* ReduceAction307 */
+153, /* ReduceAction */
+824, /* ReduceAction207 */
 },
 };
-/* runtime type ReduceAction308 */
-const struct type type_parser__ReduceAction308 = {
+/* runtime type ReduceAction208 */
+const struct type type_parser__ReduceAction208 = {
 -1, /*CAST DEAD*/
-"ReduceAction308", /* class_name_string */
+"ReduceAction208", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -295,14 +295,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-905, /* ReduceAction308 */
+153, /* ReduceAction */
+825, /* ReduceAction208 */
 },
 };
-/* runtime type ReduceAction309 */
-const struct type type_parser__ReduceAction309 = {
+/* runtime type ReduceAction209 */
+const struct type type_parser__ReduceAction209 = {
 -1, /*CAST DEAD*/
-"ReduceAction309", /* class_name_string */
+"ReduceAction209", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -310,14 +310,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-906, /* ReduceAction309 */
+153, /* ReduceAction */
+826, /* ReduceAction209 */
 },
 };
-/* runtime type ReduceAction310 */
-const struct type type_parser__ReduceAction310 = {
+/* runtime type ReduceAction210 */
+const struct type type_parser__ReduceAction210 = {
 -1, /*CAST DEAD*/
-"ReduceAction310", /* class_name_string */
+"ReduceAction210", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -325,14 +325,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-907, /* ReduceAction310 */
+153, /* ReduceAction */
+827, /* ReduceAction210 */
 },
 };
-/* runtime type ReduceAction311 */
-const struct type type_parser__ReduceAction311 = {
+/* runtime type ReduceAction211 */
+const struct type type_parser__ReduceAction211 = {
 -1, /*CAST DEAD*/
-"ReduceAction311", /* class_name_string */
+"ReduceAction211", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -340,14 +340,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-908, /* ReduceAction311 */
+153, /* ReduceAction */
+828, /* ReduceAction211 */
 },
 };
-/* runtime type ReduceAction314 */
-const struct type type_parser__ReduceAction314 = {
+/* runtime type ReduceAction212 */
+const struct type type_parser__ReduceAction212 = {
 -1, /*CAST DEAD*/
-"ReduceAction314", /* class_name_string */
+"ReduceAction212", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -355,14 +355,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-909, /* ReduceAction314 */
+153, /* ReduceAction */
+829, /* ReduceAction212 */
 },
 };
-/* runtime type ReduceAction315 */
-const struct type type_parser__ReduceAction315 = {
+/* runtime type ReduceAction213 */
+const struct type type_parser__ReduceAction213 = {
 -1, /*CAST DEAD*/
-"ReduceAction315", /* class_name_string */
+"ReduceAction213", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -370,14 +370,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-910, /* ReduceAction315 */
+153, /* ReduceAction */
+830, /* ReduceAction213 */
 },
 };
-/* runtime type ReduceAction316 */
-const struct type type_parser__ReduceAction316 = {
+/* runtime type ReduceAction214 */
+const struct type type_parser__ReduceAction214 = {
 -1, /*CAST DEAD*/
-"ReduceAction316", /* class_name_string */
+"ReduceAction214", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -385,14 +385,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-911, /* ReduceAction316 */
+153, /* ReduceAction */
+831, /* ReduceAction214 */
 },
 };
-/* runtime type ReduceAction317 */
-const struct type type_parser__ReduceAction317 = {
+/* runtime type ReduceAction215 */
+const struct type type_parser__ReduceAction215 = {
 -1, /*CAST DEAD*/
-"ReduceAction317", /* class_name_string */
+"ReduceAction215", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -400,14 +400,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-912, /* ReduceAction317 */
+153, /* ReduceAction */
+832, /* ReduceAction215 */
 },
 };
-/* runtime type ReduceAction318 */
-const struct type type_parser__ReduceAction318 = {
+/* runtime type ReduceAction216 */
+const struct type type_parser__ReduceAction216 = {
 -1, /*CAST DEAD*/
-"ReduceAction318", /* class_name_string */
+"ReduceAction216", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -415,14 +415,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-913, /* ReduceAction318 */
+153, /* ReduceAction */
+833, /* ReduceAction216 */
 },
 };
-/* runtime type ReduceAction320 */
-const struct type type_parser__ReduceAction320 = {
+/* runtime type ReduceAction219 */
+const struct type type_parser__ReduceAction219 = {
 -1, /*CAST DEAD*/
-"ReduceAction320", /* class_name_string */
+"ReduceAction219", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -430,14 +430,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-914, /* ReduceAction320 */
+153, /* ReduceAction */
+834, /* ReduceAction219 */
 },
 };
-/* runtime type ReduceAction321 */
-const struct type type_parser__ReduceAction321 = {
+/* runtime type ReduceAction220 */
+const struct type type_parser__ReduceAction220 = {
 -1, /*CAST DEAD*/
-"ReduceAction321", /* class_name_string */
+"ReduceAction220", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -445,14 +445,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-915, /* ReduceAction321 */
+153, /* ReduceAction */
+835, /* ReduceAction220 */
 },
 };
-/* runtime type ReduceAction322 */
-const struct type type_parser__ReduceAction322 = {
+/* runtime type ReduceAction221 */
+const struct type type_parser__ReduceAction221 = {
 -1, /*CAST DEAD*/
-"ReduceAction322", /* class_name_string */
+"ReduceAction221", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -460,14 +460,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-916, /* ReduceAction322 */
+153, /* ReduceAction */
+836, /* ReduceAction221 */
 },
 };
-/* runtime type ReduceAction323 */
-const struct type type_parser__ReduceAction323 = {
+/* runtime type ReduceAction222 */
+const struct type type_parser__ReduceAction222 = {
 -1, /*CAST DEAD*/
-"ReduceAction323", /* class_name_string */
+"ReduceAction222", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -475,14 +475,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-917, /* ReduceAction323 */
+153, /* ReduceAction */
+837, /* ReduceAction222 */
 },
 };
-/* runtime type ReduceAction324 */
-const struct type type_parser__ReduceAction324 = {
+/* runtime type ReduceAction223 */
+const struct type type_parser__ReduceAction223 = {
 -1, /*CAST DEAD*/
-"ReduceAction324", /* class_name_string */
+"ReduceAction223", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -490,14 +490,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-918, /* ReduceAction324 */
+153, /* ReduceAction */
+838, /* ReduceAction223 */
 },
 };
-/* runtime type ReduceAction326 */
-const struct type type_parser__ReduceAction326 = {
+/* runtime type ReduceAction224 */
+const struct type type_parser__ReduceAction224 = {
 -1, /*CAST DEAD*/
-"ReduceAction326", /* class_name_string */
+"ReduceAction224", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -505,14 +505,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-919, /* ReduceAction326 */
+153, /* ReduceAction */
+839, /* ReduceAction224 */
 },
 };
-/* runtime type ReduceAction327 */
-const struct type type_parser__ReduceAction327 = {
+/* runtime type ReduceAction227 */
+const struct type type_parser__ReduceAction227 = {
 -1, /*CAST DEAD*/
-"ReduceAction327", /* class_name_string */
+"ReduceAction227", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -520,14 +520,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-920, /* ReduceAction327 */
+153, /* ReduceAction */
+840, /* ReduceAction227 */
 },
 };
-/* runtime type ReduceAction328 */
-const struct type type_parser__ReduceAction328 = {
+/* runtime type ReduceAction228 */
+const struct type type_parser__ReduceAction228 = {
 -1, /*CAST DEAD*/
-"ReduceAction328", /* class_name_string */
+"ReduceAction228", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -535,14 +535,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-921, /* ReduceAction328 */
+153, /* ReduceAction */
+841, /* ReduceAction228 */
 },
 };
-/* runtime type ReduceAction329 */
-const struct type type_parser__ReduceAction329 = {
+/* runtime type ReduceAction229 */
+const struct type type_parser__ReduceAction229 = {
 -1, /*CAST DEAD*/
-"ReduceAction329", /* class_name_string */
+"ReduceAction229", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -550,14 +550,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-922, /* ReduceAction329 */
+153, /* ReduceAction */
+842, /* ReduceAction229 */
 },
 };
-/* runtime type ReduceAction330 */
-const struct type type_parser__ReduceAction330 = {
+/* runtime type ReduceAction230 */
+const struct type type_parser__ReduceAction230 = {
 -1, /*CAST DEAD*/
-"ReduceAction330", /* class_name_string */
+"ReduceAction230", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -565,14 +565,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-923, /* ReduceAction330 */
+153, /* ReduceAction */
+843, /* ReduceAction230 */
 },
 };
-/* runtime type ReduceAction331 */
-const struct type type_parser__ReduceAction331 = {
+/* runtime type ReduceAction231 */
+const struct type type_parser__ReduceAction231 = {
 -1, /*CAST DEAD*/
-"ReduceAction331", /* class_name_string */
+"ReduceAction231", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -580,14 +580,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-924, /* ReduceAction331 */
+153, /* ReduceAction */
+844, /* ReduceAction231 */
 },
 };
-/* runtime type ReduceAction332 */
-const struct type type_parser__ReduceAction332 = {
+/* runtime type ReduceAction232 */
+const struct type type_parser__ReduceAction232 = {
 -1, /*CAST DEAD*/
-"ReduceAction332", /* class_name_string */
+"ReduceAction232", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -595,14 +595,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-925, /* ReduceAction332 */
+153, /* ReduceAction */
+845, /* ReduceAction232 */
 },
 };
-/* runtime type ReduceAction333 */
-const struct type type_parser__ReduceAction333 = {
+/* runtime type ReduceAction233 */
+const struct type type_parser__ReduceAction233 = {
 -1, /*CAST DEAD*/
-"ReduceAction333", /* class_name_string */
+"ReduceAction233", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -610,14 +610,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-926, /* ReduceAction333 */
+153, /* ReduceAction */
+846, /* ReduceAction233 */
 },
 };
-/* runtime type ReduceAction334 */
-const struct type type_parser__ReduceAction334 = {
+/* runtime type ReduceAction234 */
+const struct type type_parser__ReduceAction234 = {
 -1, /*CAST DEAD*/
-"ReduceAction334", /* class_name_string */
+"ReduceAction234", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -625,14 +625,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-927, /* ReduceAction334 */
+153, /* ReduceAction */
+847, /* ReduceAction234 */
 },
 };
-/* runtime type ReduceAction335 */
-const struct type type_parser__ReduceAction335 = {
+/* runtime type ReduceAction235 */
+const struct type type_parser__ReduceAction235 = {
 -1, /*CAST DEAD*/
-"ReduceAction335", /* class_name_string */
+"ReduceAction235", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -640,14 +640,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-928, /* ReduceAction335 */
+153, /* ReduceAction */
+848, /* ReduceAction235 */
 },
 };
-/* runtime type ReduceAction336 */
-const struct type type_parser__ReduceAction336 = {
+/* runtime type ReduceAction238 */
+const struct type type_parser__ReduceAction238 = {
 -1, /*CAST DEAD*/
-"ReduceAction336", /* class_name_string */
+"ReduceAction238", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -655,14 +655,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-929, /* ReduceAction336 */
+153, /* ReduceAction */
+849, /* ReduceAction238 */
 },
 };
-/* runtime type ReduceAction337 */
-const struct type type_parser__ReduceAction337 = {
+/* runtime type ReduceAction239 */
+const struct type type_parser__ReduceAction239 = {
 -1, /*CAST DEAD*/
-"ReduceAction337", /* class_name_string */
+"ReduceAction239", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -670,14 +670,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-930, /* ReduceAction337 */
+153, /* ReduceAction */
+850, /* ReduceAction239 */
 },
 };
-/* runtime type ReduceAction338 */
-const struct type type_parser__ReduceAction338 = {
+/* runtime type ReduceAction240 */
+const struct type type_parser__ReduceAction240 = {
 -1, /*CAST DEAD*/
-"ReduceAction338", /* class_name_string */
+"ReduceAction240", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -685,14 +685,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-931, /* ReduceAction338 */
+153, /* ReduceAction */
+851, /* ReduceAction240 */
 },
 };
-/* runtime type ReduceAction339 */
-const struct type type_parser__ReduceAction339 = {
+/* runtime type ReduceAction241 */
+const struct type type_parser__ReduceAction241 = {
 -1, /*CAST DEAD*/
-"ReduceAction339", /* class_name_string */
+"ReduceAction241", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -700,14 +700,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-932, /* ReduceAction339 */
+153, /* ReduceAction */
+852, /* ReduceAction241 */
 },
 };
-/* runtime type ReduceAction340 */
-const struct type type_parser__ReduceAction340 = {
+/* runtime type ReduceAction242 */
+const struct type type_parser__ReduceAction242 = {
 -1, /*CAST DEAD*/
-"ReduceAction340", /* class_name_string */
+"ReduceAction242", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -715,14 +715,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-933, /* ReduceAction340 */
+153, /* ReduceAction */
+853, /* ReduceAction242 */
 },
 };
-/* runtime type ReduceAction341 */
-const struct type type_parser__ReduceAction341 = {
+/* runtime type ReduceAction243 */
+const struct type type_parser__ReduceAction243 = {
 -1, /*CAST DEAD*/
-"ReduceAction341", /* class_name_string */
+"ReduceAction243", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -730,14 +730,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-934, /* ReduceAction341 */
+153, /* ReduceAction */
+854, /* ReduceAction243 */
 },
 };
-/* runtime type ReduceAction343 */
-const struct type type_parser__ReduceAction343 = {
+/* runtime type ReduceAction246 */
+const struct type type_parser__ReduceAction246 = {
 -1, /*CAST DEAD*/
-"ReduceAction343", /* class_name_string */
+"ReduceAction246", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -745,14 +745,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-935, /* ReduceAction343 */
+153, /* ReduceAction */
+855, /* ReduceAction246 */
 },
 };
-/* runtime type ReduceAction344 */
-const struct type type_parser__ReduceAction344 = {
+/* runtime type ReduceAction247 */
+const struct type type_parser__ReduceAction247 = {
 -1, /*CAST DEAD*/
-"ReduceAction344", /* class_name_string */
+"ReduceAction247", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -760,14 +760,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-936, /* ReduceAction344 */
+153, /* ReduceAction */
+856, /* ReduceAction247 */
 },
 };
-/* runtime type ReduceAction345 */
-const struct type type_parser__ReduceAction345 = {
+/* runtime type ReduceAction248 */
+const struct type type_parser__ReduceAction248 = {
 -1, /*CAST DEAD*/
-"ReduceAction345", /* class_name_string */
+"ReduceAction248", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -775,14 +775,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-937, /* ReduceAction345 */
+153, /* ReduceAction */
+857, /* ReduceAction248 */
 },
 };
-/* runtime type ReduceAction346 */
-const struct type type_parser__ReduceAction346 = {
+/* runtime type ReduceAction249 */
+const struct type type_parser__ReduceAction249 = {
 -1, /*CAST DEAD*/
-"ReduceAction346", /* class_name_string */
+"ReduceAction249", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -790,14 +790,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-938, /* ReduceAction346 */
+153, /* ReduceAction */
+858, /* ReduceAction249 */
 },
 };
-/* runtime type ReduceAction347 */
-const struct type type_parser__ReduceAction347 = {
+/* runtime type ReduceAction250 */
+const struct type type_parser__ReduceAction250 = {
 -1, /*CAST DEAD*/
-"ReduceAction347", /* class_name_string */
+"ReduceAction250", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -805,14 +805,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-939, /* ReduceAction347 */
+153, /* ReduceAction */
+859, /* ReduceAction250 */
 },
 };
-/* runtime type ReduceAction348 */
-const struct type type_parser__ReduceAction348 = {
+/* runtime type ReduceAction251 */
+const struct type type_parser__ReduceAction251 = {
 -1, /*CAST DEAD*/
-"ReduceAction348", /* class_name_string */
+"ReduceAction251", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -820,14 +820,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-940, /* ReduceAction348 */
+153, /* ReduceAction */
+860, /* ReduceAction251 */
 },
 };
-/* runtime type ReduceAction349 */
-const struct type type_parser__ReduceAction349 = {
+/* runtime type ReduceAction252 */
+const struct type type_parser__ReduceAction252 = {
 -1, /*CAST DEAD*/
-"ReduceAction349", /* class_name_string */
+"ReduceAction252", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -835,14 +835,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-941, /* ReduceAction349 */
+153, /* ReduceAction */
+861, /* ReduceAction252 */
 },
 };
-/* runtime type ReduceAction351 */
-const struct type type_parser__ReduceAction351 = {
+/* runtime type ReduceAction253 */
+const struct type type_parser__ReduceAction253 = {
 -1, /*CAST DEAD*/
-"ReduceAction351", /* class_name_string */
+"ReduceAction253", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -850,14 +850,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-942, /* ReduceAction351 */
+153, /* ReduceAction */
+862, /* ReduceAction253 */
 },
 };
-/* runtime type ReduceAction354 */
-const struct type type_parser__ReduceAction354 = {
+/* runtime type ReduceAction254 */
+const struct type type_parser__ReduceAction254 = {
 -1, /*CAST DEAD*/
-"ReduceAction354", /* class_name_string */
+"ReduceAction254", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -865,14 +865,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-943, /* ReduceAction354 */
+153, /* ReduceAction */
+863, /* ReduceAction254 */
 },
 };
-/* runtime type ReduceAction356 */
-const struct type type_parser__ReduceAction356 = {
+/* runtime type ReduceAction255 */
+const struct type type_parser__ReduceAction255 = {
 -1, /*CAST DEAD*/
-"ReduceAction356", /* class_name_string */
+"ReduceAction255", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -880,14 +880,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-944, /* ReduceAction356 */
+153, /* ReduceAction */
+864, /* ReduceAction255 */
 },
 };
-/* runtime type ReduceAction357 */
-const struct type type_parser__ReduceAction357 = {
+/* runtime type ReduceAction258 */
+const struct type type_parser__ReduceAction258 = {
 -1, /*CAST DEAD*/
-"ReduceAction357", /* class_name_string */
+"ReduceAction258", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -895,14 +895,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-945, /* ReduceAction357 */
+153, /* ReduceAction */
+865, /* ReduceAction258 */
 },
 };
-/* runtime type ReduceAction358 */
-const struct type type_parser__ReduceAction358 = {
+/* runtime type ReduceAction259 */
+const struct type type_parser__ReduceAction259 = {
 -1, /*CAST DEAD*/
-"ReduceAction358", /* class_name_string */
+"ReduceAction259", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -910,14 +910,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-946, /* ReduceAction358 */
+153, /* ReduceAction */
+866, /* ReduceAction259 */
 },
 };
-/* runtime type ReduceAction359 */
-const struct type type_parser__ReduceAction359 = {
+/* runtime type ReduceAction260 */
+const struct type type_parser__ReduceAction260 = {
 -1, /*CAST DEAD*/
-"ReduceAction359", /* class_name_string */
+"ReduceAction260", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -925,14 +925,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-947, /* ReduceAction359 */
+153, /* ReduceAction */
+867, /* ReduceAction260 */
 },
 };
-/* runtime type ReduceAction360 */
-const struct type type_parser__ReduceAction360 = {
+/* runtime type ReduceAction261 */
+const struct type type_parser__ReduceAction261 = {
 -1, /*CAST DEAD*/
-"ReduceAction360", /* class_name_string */
+"ReduceAction261", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -940,14 +940,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-948, /* ReduceAction360 */
+153, /* ReduceAction */
+868, /* ReduceAction261 */
 },
 };
-/* runtime type ReduceAction361 */
-const struct type type_parser__ReduceAction361 = {
+/* runtime type ReduceAction262 */
+const struct type type_parser__ReduceAction262 = {
 -1, /*CAST DEAD*/
-"ReduceAction361", /* class_name_string */
+"ReduceAction262", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -955,14 +955,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-949, /* ReduceAction361 */
+153, /* ReduceAction */
+869, /* ReduceAction262 */
 },
 };
-/* runtime type ReduceAction362 */
-const struct type type_parser__ReduceAction362 = {
+/* runtime type ReduceAction263 */
+const struct type type_parser__ReduceAction263 = {
 -1, /*CAST DEAD*/
-"ReduceAction362", /* class_name_string */
+"ReduceAction263", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -970,14 +970,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-950, /* ReduceAction362 */
+153, /* ReduceAction */
+870, /* ReduceAction263 */
 },
 };
-/* runtime type ReduceAction363 */
-const struct type type_parser__ReduceAction363 = {
+/* runtime type ReduceAction264 */
+const struct type type_parser__ReduceAction264 = {
 -1, /*CAST DEAD*/
-"ReduceAction363", /* class_name_string */
+"ReduceAction264", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -985,14 +985,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-951, /* ReduceAction363 */
+153, /* ReduceAction */
+871, /* ReduceAction264 */
 },
 };
-/* runtime type ReduceAction364 */
-const struct type type_parser__ReduceAction364 = {
+/* runtime type ReduceAction265 */
+const struct type type_parser__ReduceAction265 = {
 -1, /*CAST DEAD*/
-"ReduceAction364", /* class_name_string */
+"ReduceAction265", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1000,14 +1000,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-952, /* ReduceAction364 */
+153, /* ReduceAction */
+872, /* ReduceAction265 */
 },
 };
-/* runtime type ReduceAction365 */
-const struct type type_parser__ReduceAction365 = {
+/* runtime type ReduceAction266 */
+const struct type type_parser__ReduceAction266 = {
 -1, /*CAST DEAD*/
-"ReduceAction365", /* class_name_string */
+"ReduceAction266", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1015,14 +1015,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-953, /* ReduceAction365 */
+153, /* ReduceAction */
+873, /* ReduceAction266 */
 },
 };
-/* runtime type ReduceAction366 */
-const struct type type_parser__ReduceAction366 = {
+/* runtime type ReduceAction267 */
+const struct type type_parser__ReduceAction267 = {
 -1, /*CAST DEAD*/
-"ReduceAction366", /* class_name_string */
+"ReduceAction267", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1030,14 +1030,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-954, /* ReduceAction366 */
+153, /* ReduceAction */
+874, /* ReduceAction267 */
 },
 };
-/* runtime type ReduceAction368 */
-const struct type type_parser__ReduceAction368 = {
+/* runtime type ReduceAction268 */
+const struct type type_parser__ReduceAction268 = {
 -1, /*CAST DEAD*/
-"ReduceAction368", /* class_name_string */
+"ReduceAction268", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1045,14 +1045,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-955, /* ReduceAction368 */
+153, /* ReduceAction */
+875, /* ReduceAction268 */
 },
 };
-/* runtime type ReduceAction369 */
-const struct type type_parser__ReduceAction369 = {
+/* runtime type ReduceAction270 */
+const struct type type_parser__ReduceAction270 = {
 -1, /*CAST DEAD*/
-"ReduceAction369", /* class_name_string */
+"ReduceAction270", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1060,14 +1060,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-956, /* ReduceAction369 */
+153, /* ReduceAction */
+876, /* ReduceAction270 */
 },
 };
-/* runtime type ReduceAction370 */
-const struct type type_parser__ReduceAction370 = {
+/* runtime type ReduceAction272 */
+const struct type type_parser__ReduceAction272 = {
 -1, /*CAST DEAD*/
-"ReduceAction370", /* class_name_string */
+"ReduceAction272", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1075,14 +1075,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-957, /* ReduceAction370 */
+153, /* ReduceAction */
+877, /* ReduceAction272 */
 },
 };
-/* runtime type ReduceAction372 */
-const struct type type_parser__ReduceAction372 = {
+/* runtime type ReduceAction273 */
+const struct type type_parser__ReduceAction273 = {
 -1, /*CAST DEAD*/
-"ReduceAction372", /* class_name_string */
+"ReduceAction273", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1090,14 +1090,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-958, /* ReduceAction372 */
+153, /* ReduceAction */
+878, /* ReduceAction273 */
 },
 };
-/* runtime type ReduceAction373 */
-const struct type type_parser__ReduceAction373 = {
+/* runtime type ReduceAction274 */
+const struct type type_parser__ReduceAction274 = {
 -1, /*CAST DEAD*/
-"ReduceAction373", /* class_name_string */
+"ReduceAction274", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1105,14 +1105,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-959, /* ReduceAction373 */
+153, /* ReduceAction */
+879, /* ReduceAction274 */
 },
 };
-/* runtime type ReduceAction374 */
-const struct type type_parser__ReduceAction374 = {
+/* runtime type ReduceAction275 */
+const struct type type_parser__ReduceAction275 = {
 -1, /*CAST DEAD*/
-"ReduceAction374", /* class_name_string */
+"ReduceAction275", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1120,14 +1120,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-960, /* ReduceAction374 */
+153, /* ReduceAction */
+880, /* ReduceAction275 */
 },
 };
-/* runtime type ReduceAction376 */
-const struct type type_parser__ReduceAction376 = {
+/* runtime type ReduceAction277 */
+const struct type type_parser__ReduceAction277 = {
 -1, /*CAST DEAD*/
-"ReduceAction376", /* class_name_string */
+"ReduceAction277", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1135,14 +1135,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-961, /* ReduceAction376 */
+153, /* ReduceAction */
+881, /* ReduceAction277 */
 },
 };
-/* runtime type ReduceAction377 */
-const struct type type_parser__ReduceAction377 = {
+/* runtime type ReduceAction279 */
+const struct type type_parser__ReduceAction279 = {
 -1, /*CAST DEAD*/
-"ReduceAction377", /* class_name_string */
+"ReduceAction279", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1150,14 +1150,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-962, /* ReduceAction377 */
+153, /* ReduceAction */
+882, /* ReduceAction279 */
 },
 };
-/* runtime type ReduceAction379 */
-const struct type type_parser__ReduceAction379 = {
+/* runtime type ReduceAction280 */
+const struct type type_parser__ReduceAction280 = {
 -1, /*CAST DEAD*/
-"ReduceAction379", /* class_name_string */
+"ReduceAction280", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1165,14 +1165,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-963, /* ReduceAction379 */
+153, /* ReduceAction */
+883, /* ReduceAction280 */
 },
 };
-/* runtime type ReduceAction380 */
-const struct type type_parser__ReduceAction380 = {
+/* runtime type ReduceAction281 */
+const struct type type_parser__ReduceAction281 = {
 -1, /*CAST DEAD*/
-"ReduceAction380", /* class_name_string */
+"ReduceAction281", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1180,14 +1180,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-964, /* ReduceAction380 */
+153, /* ReduceAction */
+884, /* ReduceAction281 */
 },
 };
-/* runtime type ReduceAction382 */
-const struct type type_parser__ReduceAction382 = {
+/* runtime type ReduceAction282 */
+const struct type type_parser__ReduceAction282 = {
 -1, /*CAST DEAD*/
-"ReduceAction382", /* class_name_string */
+"ReduceAction282", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1195,14 +1195,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-965, /* ReduceAction382 */
+153, /* ReduceAction */
+885, /* ReduceAction282 */
 },
 };
-/* runtime type ReduceAction383 */
-const struct type type_parser__ReduceAction383 = {
+/* runtime type ReduceAction283 */
+const struct type type_parser__ReduceAction283 = {
 -1, /*CAST DEAD*/
-"ReduceAction383", /* class_name_string */
+"ReduceAction283", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1210,14 +1210,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-966, /* ReduceAction383 */
+153, /* ReduceAction */
+886, /* ReduceAction283 */
 },
 };
-/* runtime type ReduceAction386 */
-const struct type type_parser__ReduceAction386 = {
+/* runtime type ReduceAction284 */
+const struct type type_parser__ReduceAction284 = {
 -1, /*CAST DEAD*/
-"ReduceAction386", /* class_name_string */
+"ReduceAction284", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1225,14 +1225,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-967, /* ReduceAction386 */
+153, /* ReduceAction */
+887, /* ReduceAction284 */
 },
 };
-/* runtime type ReduceAction387 */
-const struct type type_parser__ReduceAction387 = {
+/* runtime type ReduceAction285 */
+const struct type type_parser__ReduceAction285 = {
 -1, /*CAST DEAD*/
-"ReduceAction387", /* class_name_string */
+"ReduceAction285", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1240,14 +1240,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-968, /* ReduceAction387 */
+153, /* ReduceAction */
+888, /* ReduceAction285 */
 },
 };
-/* runtime type ReduceAction388 */
-const struct type type_parser__ReduceAction388 = {
+/* runtime type ReduceAction286 */
+const struct type type_parser__ReduceAction286 = {
 -1, /*CAST DEAD*/
-"ReduceAction388", /* class_name_string */
+"ReduceAction286", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1255,14 +1255,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-969, /* ReduceAction388 */
+153, /* ReduceAction */
+889, /* ReduceAction286 */
 },
 };
-/* runtime type ReduceAction604 */
-const struct type type_parser__ReduceAction604 = {
+/* runtime type ReduceAction287 */
+const struct type type_parser__ReduceAction287 = {
 -1, /*CAST DEAD*/
-"ReduceAction604", /* class_name_string */
+"ReduceAction287", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1270,14 +1270,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-970, /* ReduceAction604 */
+153, /* ReduceAction */
+890, /* ReduceAction287 */
 },
 };
-/* runtime type ReduceAction605 */
-const struct type type_parser__ReduceAction605 = {
+/* runtime type ReduceAction288 */
+const struct type type_parser__ReduceAction288 = {
 -1, /*CAST DEAD*/
-"ReduceAction605", /* class_name_string */
+"ReduceAction288", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1285,14 +1285,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-971, /* ReduceAction605 */
+153, /* ReduceAction */
+891, /* ReduceAction288 */
 },
 };
-/* runtime type ReduceAction606 */
-const struct type type_parser__ReduceAction606 = {
+/* runtime type ReduceAction290 */
+const struct type type_parser__ReduceAction290 = {
 -1, /*CAST DEAD*/
-"ReduceAction606", /* class_name_string */
+"ReduceAction290", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1300,14 +1300,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-972, /* ReduceAction606 */
+153, /* ReduceAction */
+892, /* ReduceAction290 */
 },
 };
-/* runtime type ReduceAction608 */
-const struct type type_parser__ReduceAction608 = {
+/* runtime type ReduceAction291 */
+const struct type type_parser__ReduceAction291 = {
 -1, /*CAST DEAD*/
-"ReduceAction608", /* class_name_string */
+"ReduceAction291", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1315,14 +1315,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-973, /* ReduceAction608 */
+153, /* ReduceAction */
+893, /* ReduceAction291 */
 },
 };
-/* runtime type ReduceAction624 */
-const struct type type_parser__ReduceAction624 = {
+/* runtime type ReduceAction293 */
+const struct type type_parser__ReduceAction293 = {
 -1, /*CAST DEAD*/
-"ReduceAction624", /* class_name_string */
+"ReduceAction293", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1330,14 +1330,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-974, /* ReduceAction624 */
+153, /* ReduceAction */
+894, /* ReduceAction293 */
 },
 };
-/* runtime type ReduceAction625 */
-const struct type type_parser__ReduceAction625 = {
+/* runtime type ReduceAction294 */
+const struct type type_parser__ReduceAction294 = {
 -1, /*CAST DEAD*/
-"ReduceAction625", /* class_name_string */
+"ReduceAction294", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1345,14 +1345,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-975, /* ReduceAction625 */
+153, /* ReduceAction */
+895, /* ReduceAction294 */
 },
 };
-/* runtime type ReduceAction792 */
-const struct type type_parser__ReduceAction792 = {
+/* runtime type ReduceAction295 */
+const struct type type_parser__ReduceAction295 = {
 -1, /*CAST DEAD*/
-"ReduceAction792", /* class_name_string */
+"ReduceAction295", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1360,14 +1360,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-976, /* ReduceAction792 */
+153, /* ReduceAction */
+896, /* ReduceAction295 */
 },
 };
-/* runtime type ReduceAction793 */
-const struct type type_parser__ReduceAction793 = {
+/* runtime type ReduceAction297 */
+const struct type type_parser__ReduceAction297 = {
 -1, /*CAST DEAD*/
-"ReduceAction793", /* class_name_string */
+"ReduceAction297", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1375,14 +1375,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-977, /* ReduceAction793 */
+153, /* ReduceAction */
+897, /* ReduceAction297 */
 },
 };
-/* runtime type ReduceAction794 */
-const struct type type_parser__ReduceAction794 = {
+/* runtime type ReduceAction299 */
+const struct type type_parser__ReduceAction299 = {
 -1, /*CAST DEAD*/
-"ReduceAction794", /* class_name_string */
+"ReduceAction299", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1390,14 +1390,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-978, /* ReduceAction794 */
+153, /* ReduceAction */
+898, /* ReduceAction299 */
 },
 };
-/* runtime type ReduceAction795 */
-const struct type type_parser__ReduceAction795 = {
+/* runtime type ReduceAction300 */
+const struct type type_parser__ReduceAction300 = {
 -1, /*CAST DEAD*/
-"ReduceAction795", /* class_name_string */
+"ReduceAction300", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1405,14 +1405,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-979, /* ReduceAction795 */
+153, /* ReduceAction */
+899, /* ReduceAction300 */
 },
 };
-/* runtime type ReduceAction796 */
-const struct type type_parser__ReduceAction796 = {
+/* runtime type ReduceAction302 */
+const struct type type_parser__ReduceAction302 = {
 -1, /*CAST DEAD*/
-"ReduceAction796", /* class_name_string */
+"ReduceAction302", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1420,14 +1420,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-980, /* ReduceAction796 */
+153, /* ReduceAction */
+900, /* ReduceAction302 */
 },
 };
-/* runtime type ReduceAction797 */
-const struct type type_parser__ReduceAction797 = {
+/* runtime type ReduceAction303 */
+const struct type type_parser__ReduceAction303 = {
 -1, /*CAST DEAD*/
-"ReduceAction797", /* class_name_string */
+"ReduceAction303", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1435,14 +1435,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-981, /* ReduceAction797 */
+153, /* ReduceAction */
+901, /* ReduceAction303 */
 },
 };
-/* runtime type ReduceAction798 */
-const struct type type_parser__ReduceAction798 = {
+/* runtime type ReduceAction304 */
+const struct type type_parser__ReduceAction304 = {
 -1, /*CAST DEAD*/
-"ReduceAction798", /* class_name_string */
+"ReduceAction304", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1450,14 +1450,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-982, /* ReduceAction798 */
+153, /* ReduceAction */
+902, /* ReduceAction304 */
 },
 };
-/* runtime type ReduceAction799 */
-const struct type type_parser__ReduceAction799 = {
+/* runtime type ReduceAction305 */
+const struct type type_parser__ReduceAction305 = {
 -1, /*CAST DEAD*/
-"ReduceAction799", /* class_name_string */
+"ReduceAction305", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1465,14 +1465,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-983, /* ReduceAction799 */
+153, /* ReduceAction */
+903, /* ReduceAction305 */
 },
 };
-/* runtime type ReduceAction800 */
-const struct type type_parser__ReduceAction800 = {
+/* runtime type ReduceAction307 */
+const struct type type_parser__ReduceAction307 = {
 -1, /*CAST DEAD*/
-"ReduceAction800", /* class_name_string */
+"ReduceAction307", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1480,14 +1480,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-984, /* ReduceAction800 */
+153, /* ReduceAction */
+904, /* ReduceAction307 */
 },
 };
-/* runtime type ReduceAction801 */
-const struct type type_parser__ReduceAction801 = {
+/* runtime type ReduceAction308 */
+const struct type type_parser__ReduceAction308 = {
 -1, /*CAST DEAD*/
-"ReduceAction801", /* class_name_string */
+"ReduceAction308", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1495,14 +1495,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-985, /* ReduceAction801 */
+153, /* ReduceAction */
+905, /* ReduceAction308 */
 },
 };
-/* runtime type ReduceAction802 */
-const struct type type_parser__ReduceAction802 = {
+/* runtime type ReduceAction310 */
+const struct type type_parser__ReduceAction310 = {
 -1, /*CAST DEAD*/
-"ReduceAction802", /* class_name_string */
+"ReduceAction310", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1510,14 +1510,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-986, /* ReduceAction802 */
+153, /* ReduceAction */
+906, /* ReduceAction310 */
 },
 };
-/* runtime type ReduceAction803 */
-const struct type type_parser__ReduceAction803 = {
+/* runtime type ReduceAction312 */
+const struct type type_parser__ReduceAction312 = {
 -1, /*CAST DEAD*/
-"ReduceAction803", /* class_name_string */
+"ReduceAction312", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1525,14 +1525,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-987, /* ReduceAction803 */
+153, /* ReduceAction */
+907, /* ReduceAction312 */
 },
 };
-/* runtime type ReduceAction804 */
-const struct type type_parser__ReduceAction804 = {
+/* runtime type ReduceAction314 */
+const struct type type_parser__ReduceAction314 = {
 -1, /*CAST DEAD*/
-"ReduceAction804", /* class_name_string */
+"ReduceAction314", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1540,14 +1540,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-988, /* ReduceAction804 */
+153, /* ReduceAction */
+908, /* ReduceAction314 */
 },
 };
-/* runtime type ReduceAction805 */
-const struct type type_parser__ReduceAction805 = {
+/* runtime type ReduceAction318 */
+const struct type type_parser__ReduceAction318 = {
 -1, /*CAST DEAD*/
-"ReduceAction805", /* class_name_string */
+"ReduceAction318", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1555,14 +1555,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-989, /* ReduceAction805 */
+153, /* ReduceAction */
+909, /* ReduceAction318 */
 },
 };
-/* runtime type ReduceAction806 */
-const struct type type_parser__ReduceAction806 = {
+/* runtime type ReduceAction320 */
+const struct type type_parser__ReduceAction320 = {
 -1, /*CAST DEAD*/
-"ReduceAction806", /* class_name_string */
+"ReduceAction320", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1570,14 +1570,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-990, /* ReduceAction806 */
+153, /* ReduceAction */
+910, /* ReduceAction320 */
 },
 };
-/* runtime type ReduceAction807 */
-const struct type type_parser__ReduceAction807 = {
+/* runtime type ReduceAction322 */
+const struct type type_parser__ReduceAction322 = {
 -1, /*CAST DEAD*/
-"ReduceAction807", /* class_name_string */
+"ReduceAction322", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1585,14 +1585,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-991, /* ReduceAction807 */
+153, /* ReduceAction */
+911, /* ReduceAction322 */
 },
 };
-/* runtime type ReduceAction809 */
-const struct type type_parser__ReduceAction809 = {
+/* runtime type ReduceAction326 */
+const struct type type_parser__ReduceAction326 = {
 -1, /*CAST DEAD*/
-"ReduceAction809", /* class_name_string */
+"ReduceAction326", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1600,14 +1600,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-992, /* ReduceAction809 */
+153, /* ReduceAction */
+912, /* ReduceAction326 */
 },
 };
-/* runtime type ReduceAction810 */
-const struct type type_parser__ReduceAction810 = {
+/* runtime type ReduceAction328 */
+const struct type type_parser__ReduceAction328 = {
 -1, /*CAST DEAD*/
-"ReduceAction810", /* class_name_string */
+"ReduceAction328", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1615,14 +1615,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-993, /* ReduceAction810 */
+153, /* ReduceAction */
+913, /* ReduceAction328 */
 },
 };
-/* runtime type ReduceAction811 */
-const struct type type_parser__ReduceAction811 = {
+/* runtime type ReduceAction330 */
+const struct type type_parser__ReduceAction330 = {
 -1, /*CAST DEAD*/
-"ReduceAction811", /* class_name_string */
+"ReduceAction330", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1630,14 +1630,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-994, /* ReduceAction811 */
+153, /* ReduceAction */
+914, /* ReduceAction330 */
 },
 };
-/* runtime type ReduceAction812 */
-const struct type type_parser__ReduceAction812 = {
+/* runtime type ReduceAction331 */
+const struct type type_parser__ReduceAction331 = {
 -1, /*CAST DEAD*/
-"ReduceAction812", /* class_name_string */
+"ReduceAction331", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1645,14 +1645,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-995, /* ReduceAction812 */
+153, /* ReduceAction */
+915, /* ReduceAction331 */
 },
 };
-/* runtime type ReduceAction813 */
-const struct type type_parser__ReduceAction813 = {
+/* runtime type ReduceAction332 */
+const struct type type_parser__ReduceAction332 = {
 -1, /*CAST DEAD*/
-"ReduceAction813", /* class_name_string */
+"ReduceAction332", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1660,14 +1660,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-996, /* ReduceAction813 */
+153, /* ReduceAction */
+916, /* ReduceAction332 */
 },
 };
-/* runtime type ReduceAction815 */
-const struct type type_parser__ReduceAction815 = {
+/* runtime type ReduceAction333 */
+const struct type type_parser__ReduceAction333 = {
 -1, /*CAST DEAD*/
-"ReduceAction815", /* class_name_string */
+"ReduceAction333", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1675,14 +1675,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-997, /* ReduceAction815 */
+153, /* ReduceAction */
+917, /* ReduceAction333 */
 },
 };
-/* runtime type ReduceAction821 */
-const struct type type_parser__ReduceAction821 = {
+/* runtime type ReduceAction334 */
+const struct type type_parser__ReduceAction334 = {
 -1, /*CAST DEAD*/
-"ReduceAction821", /* class_name_string */
+"ReduceAction334", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1690,14 +1690,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-998, /* ReduceAction821 */
+153, /* ReduceAction */
+918, /* ReduceAction334 */
 },
 };
-/* runtime type ReduceAction825 */
-const struct type type_parser__ReduceAction825 = {
+/* runtime type ReduceAction335 */
+const struct type type_parser__ReduceAction335 = {
 -1, /*CAST DEAD*/
-"ReduceAction825", /* class_name_string */
+"ReduceAction335", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1705,14 +1705,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-999, /* ReduceAction825 */
+153, /* ReduceAction */
+919, /* ReduceAction335 */
 },
 };
-/* runtime type ReduceAction826 */
-const struct type type_parser__ReduceAction826 = {
+/* runtime type ReduceAction336 */
+const struct type type_parser__ReduceAction336 = {
 -1, /*CAST DEAD*/
-"ReduceAction826", /* class_name_string */
+"ReduceAction336", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1720,14 +1720,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-1000, /* ReduceAction826 */
+153, /* ReduceAction */
+920, /* ReduceAction336 */
 },
 };
-/* runtime type ReduceAction827 */
-const struct type type_parser__ReduceAction827 = {
+/* runtime type ReduceAction337 */
+const struct type type_parser__ReduceAction337 = {
 -1, /*CAST DEAD*/
-"ReduceAction827", /* class_name_string */
+"ReduceAction337", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1735,14 +1735,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-1001, /* ReduceAction827 */
+153, /* ReduceAction */
+921, /* ReduceAction337 */
 },
 };
-/* runtime type ReduceAction828 */
-const struct type type_parser__ReduceAction828 = {
+/* runtime type ReduceAction340 */
+const struct type type_parser__ReduceAction340 = {
 -1, /*CAST DEAD*/
-"ReduceAction828", /* class_name_string */
+"ReduceAction340", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1750,14 +1750,14 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-1002, /* ReduceAction828 */
+153, /* ReduceAction */
+922, /* ReduceAction340 */
 },
 };
-/* runtime type ReduceAction829 */
-const struct type type_parser__ReduceAction829 = {
+/* runtime type ReduceAction341 */
+const struct type type_parser__ReduceAction341 = {
 -1, /*CAST DEAD*/
-"ReduceAction829", /* class_name_string */
+"ReduceAction341", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -1765,2915 +1765,2990 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-154, /* ReduceAction */
-1003, /* ReduceAction829 */
+153, /* ReduceAction */
+923, /* ReduceAction341 */
 },
 };
-/* runtime type State */
-const struct type type_parser_work__State = {
-155,
-"State", /* class_name_string */
-2,
+/* runtime type ReduceAction342 */
+const struct type type_parser__ReduceAction342 = {
+-1, /*CAST DEAD*/
+"ReduceAction342", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-3,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-155, /* State */
+153, /* ReduceAction */
+924, /* ReduceAction342 */
 },
 };
-/* runtime type ANodes[TComment] */
-const struct type type_parser_nodes__ANodesparser_nodes__TComment = {
+/* runtime type ReduceAction343 */
+const struct type type_parser__ReduceAction343 = {
 -1, /*CAST DEAD*/
-"ANodes[TComment]", /* class_name_string */
+"ReduceAction343", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__TComment,
-8,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1332, /* Collection[TComment] */
-1677, /* ANodes[TComment] */
+153, /* ReduceAction */
+925, /* ReduceAction343 */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__TComment = {
-0, /* dummy */
-{
-&type_parser_nodes__TComment, /* Sequence#0: TComment */
-&type_parser_nodes__TComment, /* SimpleCollection#0: TComment */
-&type_array__Arrayparser_nodes__TComment, /* Array[ANodes#0]: Array[TComment] */
-&type_parser_nodes__TComment, /* ANodes#0: TComment */
-NULL, /* empty */
-&type_parser_nodes__TComment, /* RemovableCollection#0: TComment */
-&type_abstract_collection__Collectionparser_nodes__TComment, /* Collection[Sequence#0]: Collection[TComment] */
-&type_abstract_collection__Collectionparser_nodes__TComment, /* Collection[SimpleCollection#0]: Collection[TComment] */
-&type_parser_nodes__TComment, /* Collection#0: TComment */
-&type_abstract_collection__Collectionparser_nodes__TComment, /* Collection[Collection#0]: Collection[TComment] */
-&type_parser_nodes__TComment, /* SequenceRead#0: TComment */
-}
-};
-/* runtime type Collection[TComment] */
-const struct type type_abstract_collection__Collectionparser_nodes__TComment = {
-1332,
-"Collection[TComment]", /* class_name_string */
-6,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type MClass */
-const struct type type_model__MClass = {
-1004,
-"MClass", /* class_name_string */
-3,
+/* runtime type ReduceAction344 */
+const struct type type_parser__ReduceAction344 = {
+-1, /*CAST DEAD*/
+"ReduceAction344", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-12, /* nullable MClass */
-1004, /* MClass */
+153, /* ReduceAction */
+926, /* ReduceAction344 */
 },
 };
-/* runtime type nullable MClass */
-const struct type type_nullable_model__MClass = {
-12,
-"nullable MClass", /* class_name_string */
-2,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type Array[MGenericType] */
-const struct type type_array__Arraymodel__MGenericType = {
+/* runtime type ReduceAction345 */
+const struct type type_parser__ReduceAction345 = {
 -1, /*CAST DEAD*/
-"Array[MGenericType]", /* class_name_string */
+"ReduceAction345", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arraymodel__MGenericType,
-19,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-11, /* nullable Array[nullable MType] */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-93, /* Collection[nullable MType] */
-1316, /* Collection[MType] */
-1294, /* AbstractArrayRead[Object] */
-1331, /* AbstractArrayRead[nullable MType] */
-1459, /* Array[Object] */
-1464, /* Collection[MClassType] */
-1668, /* Array[nullable MType] */
-1678, /* Collection[MGenericType] */
-2039, /* AbstractArrayRead[MType] */
-2123, /* AbstractArrayRead[MClassType] */
-2165, /* Array[MType] */
-2166, /* AbstractArrayRead[MGenericType] */
-2196, /* Array[MClassType] */
-2208, /* Array[MGenericType] */
-},
-};
-const struct types resolution_table_array__Arraymodel__MGenericType = {
-0, /* dummy */
-{
-&type_model__MGenericType, /* Sequence#0: MGenericType */
-&type_model__MGenericType, /* SimpleCollection#0: MGenericType */
-&type_array__NativeArraymodel__MGenericType, /* NativeArray[Array#0]: NativeArray[MGenericType] */
-&type_array__Arraymodel__MGenericType, /* Array[Array#0]: Array[MGenericType] */
-&type_array__NativeArraymodel__MGenericType, /* NativeArray[ArrayCapable#0]: NativeArray[MGenericType] */
-&type_model__MGenericType, /* RemovableCollection#0: MGenericType */
-&type_abstract_collection__Collectionmodel__MGenericType, /* Collection[Sequence#0]: Collection[MGenericType] */
-&type_abstract_collection__Collectionmodel__MGenericType, /* Collection[SimpleCollection#0]: Collection[MGenericType] */
-&type_model__MGenericType, /* Collection#0: MGenericType */
-&type_abstract_collection__Collectionmodel__MGenericType, /* Collection[Collection#0]: Collection[MGenericType] */
-&type_model__MGenericType, /* SequenceRead#0: MGenericType */
-&type_model__MGenericType, /* AbstractArrayRead#0: MGenericType */
-&type_array__Arraymodel__MGenericType, /* Array[AbstractArrayRead#0]: Array[MGenericType] */
-&type_array__ArrayIteratormodel__MGenericType, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MGenericType] */
-}
+153, /* ReduceAction */
+927, /* ReduceAction345 */
+},
 };
-/* runtime type Array[MClassType] */
-const struct type type_array__Arraymodel__MClassType = {
-2196,
-"Array[MClassType]", /* class_name_string */
-17,
+/* runtime type ReduceAction346 */
+const struct type type_parser__ReduceAction346 = {
+-1, /*CAST DEAD*/
+"ReduceAction346", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arraymodel__MClassType,
-18,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-11, /* nullable Array[nullable MType] */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-93, /* Collection[nullable MType] */
-1316, /* Collection[MType] */
-1294, /* AbstractArrayRead[Object] */
-1331, /* AbstractArrayRead[nullable MType] */
-1459, /* Array[Object] */
-1464, /* Collection[MClassType] */
-1668, /* Array[nullable MType] */
--1, /* empty */
-2039, /* AbstractArrayRead[MType] */
-2123, /* AbstractArrayRead[MClassType] */
-2165, /* Array[MType] */
--1, /* empty */
-2196, /* Array[MClassType] */
+153, /* ReduceAction */
+928, /* ReduceAction346 */
 },
 };
-const struct types resolution_table_array__Arraymodel__MClassType = {
-0, /* dummy */
-{
-&type_model__MClassType, /* Sequence#0: MClassType */
-&type_model__MClassType, /* SimpleCollection#0: MClassType */
-&type_array__NativeArraymodel__MClassType, /* NativeArray[Array#0]: NativeArray[MClassType] */
-&type_array__Arraymodel__MClassType, /* Array[Array#0]: Array[MClassType] */
-&type_array__NativeArraymodel__MClassType, /* NativeArray[ArrayCapable#0]: NativeArray[MClassType] */
-&type_model__MClassType, /* RemovableCollection#0: MClassType */
-&type_abstract_collection__Collectionmodel__MClassType, /* Collection[Sequence#0]: Collection[MClassType] */
-&type_abstract_collection__Collectionmodel__MClassType, /* Collection[SimpleCollection#0]: Collection[MClassType] */
-&type_model__MClassType, /* Collection#0: MClassType */
-&type_abstract_collection__Collectionmodel__MClassType, /* Collection[Collection#0]: Collection[MClassType] */
-&type_model__MClassType, /* SequenceRead#0: MClassType */
-&type_model__MClassType, /* AbstractArrayRead#0: MClassType */
-&type_array__Arraymodel__MClassType, /* Array[AbstractArrayRead#0]: Array[MClassType] */
-&type_array__ArrayIteratormodel__MClassType, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MClassType] */
-}
-};
-/* runtime type Collection[MGenericType] */
-const struct type type_abstract_collection__Collectionmodel__MGenericType = {
-1678,
-"Collection[MGenericType]", /* class_name_string */
-12,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AbstractArrayRead[MGenericType] */
-const struct type type_array__AbstractArrayReadmodel__MGenericType = {
-2166,
-"AbstractArrayRead[MGenericType]", /* class_name_string */
-16,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AbstractArrayRead[MClassType] */
-const struct type type_array__AbstractArrayReadmodel__MClassType = {
-2123,
-"AbstractArrayRead[MClassType]", /* class_name_string */
-14,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type Array[AClassdef] */
-const struct type type_array__Arrayparser_nodes__AClassdef = {
+/* runtime type ReduceAction347 */
+const struct type type_parser__ReduceAction347 = {
 -1, /*CAST DEAD*/
-"Array[AClassdef]", /* class_name_string */
+"ReduceAction347", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arrayparser_nodes__AClassdef,
-17,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
-1294, /* AbstractArrayRead[Object] */
-1473, /* Collection[AClassdef] */
-1459, /* Array[Object] */
-1648, /* AbstractArrayRead[ANode] */
--1, /* empty */
-2023, /* Array[ANode] */
-2024, /* AbstractArrayRead[Prod] */
-2124, /* AbstractArrayRead[AClassdef] */
-2145, /* Array[Prod] */
-2180, /* Array[AClassdef] */
+153, /* ReduceAction */
+929, /* ReduceAction347 */
 },
 };
-const struct types resolution_table_array__Arrayparser_nodes__AClassdef = {
-0, /* dummy */
-{
-&type_parser_nodes__AClassdef, /* Sequence#0: AClassdef */
-&type_parser_nodes__AClassdef, /* SimpleCollection#0: AClassdef */
-&type_array__NativeArrayparser_nodes__AClassdef, /* NativeArray[Array#0]: NativeArray[AClassdef] */
-&type_array__Arrayparser_nodes__AClassdef, /* Array[Array#0]: Array[AClassdef] */
-&type_array__NativeArrayparser_nodes__AClassdef, /* NativeArray[ArrayCapable#0]: NativeArray[AClassdef] */
-&type_parser_nodes__AClassdef, /* RemovableCollection#0: AClassdef */
-&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[Sequence#0]: Collection[AClassdef] */
-&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[SimpleCollection#0]: Collection[AClassdef] */
-&type_parser_nodes__AClassdef, /* Collection#0: AClassdef */
-&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[Collection#0]: Collection[AClassdef] */
-&type_parser_nodes__AClassdef, /* SequenceRead#0: AClassdef */
-&type_parser_nodes__AClassdef, /* AbstractArrayRead#0: AClassdef */
-&type_array__Arrayparser_nodes__AClassdef, /* Array[AbstractArrayRead#0]: Array[AClassdef] */
-&type_array__ArrayIteratorparser_nodes__AClassdef, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AClassdef] */
-}
-};
-/* runtime type AbstractArrayRead[AClassdef] */
-const struct type type_array__AbstractArrayReadparser_nodes__AClassdef = {
-2124,
-"AbstractArrayRead[AClassdef]", /* class_name_string */
-14,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type MClassDef */
-const struct type type_model__MClassDef = {
-1005,
-"MClassDef", /* class_name_string */
-3,
+/* runtime type ReduceAction348 */
+const struct type type_parser__ReduceAction348 = {
+-1, /*CAST DEAD*/
+"ReduceAction348", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-13, /* nullable MClassDef */
-1005, /* MClassDef */
+153, /* ReduceAction */
+930, /* ReduceAction348 */
 },
 };
-/* runtime type nullable MClassDef */
-const struct type type_nullable_model__MClassDef = {
-13,
-"nullable MClassDef", /* class_name_string */
-2,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type Array[MPropDef] */
-const struct type type_array__Arraymodel__MPropDef = {
-2181,
-"Array[MPropDef]", /* class_name_string */
-17,
+/* runtime type ReduceAction349 */
+const struct type type_parser__ReduceAction349 = {
+-1, /*CAST DEAD*/
+"ReduceAction349", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arraymodel__MPropDef,
-18,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-120, /* Collection[nullable MPropDef] */
-596, /* Collection[PropertyLayoutElement] */
-1294, /* AbstractArrayRead[Object] */
-1333, /* AbstractArrayRead[nullable MPropDef] */
-1459, /* Array[Object] */
-1477, /* Collection[MPropDef] */
-1483, /* Array[nullable MPropDef] */
-1647, /* AbstractArrayRead[PropertyLayoutElement] */
--1, /* empty */
-2022, /* Array[PropertyLayoutElement] */
-2125, /* AbstractArrayRead[MPropDef] */
--1, /* empty */
-2181, /* Array[MPropDef] */
+153, /* ReduceAction */
+931, /* ReduceAction349 */
 },
 };
-const struct types resolution_table_array__Arraymodel__MPropDef = {
-0, /* dummy */
-{
-&type_model__MPropDef, /* Sequence#0: MPropDef */
-&type_model__MPropDef, /* SimpleCollection#0: MPropDef */
-&type_array__NativeArraymodel__MPropDef, /* NativeArray[Array#0]: NativeArray[MPropDef] */
-&type_array__Arraymodel__MPropDef, /* Array[Array#0]: Array[MPropDef] */
-&type_array__NativeArraymodel__MPropDef, /* NativeArray[ArrayCapable#0]: NativeArray[MPropDef] */
-&type_model__MPropDef, /* RemovableCollection#0: MPropDef */
-&type_abstract_collection__Collectionmodel__MPropDef, /* Collection[Sequence#0]: Collection[MPropDef] */
-&type_abstract_collection__Collectionmodel__MPropDef, /* Collection[SimpleCollection#0]: Collection[MPropDef] */
-&type_model__MPropDef, /* Collection#0: MPropDef */
-&type_abstract_collection__Collectionmodel__MPropDef, /* Collection[Collection#0]: Collection[MPropDef] */
-&type_model__MPropDef, /* SequenceRead#0: MPropDef */
-&type_model__MPropDef, /* AbstractArrayRead#0: MPropDef */
-&type_array__Arraymodel__MPropDef, /* Array[AbstractArrayRead#0]: Array[MPropDef] */
-&type_array__ArrayIteratormodel__MPropDef, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MPropDef] */
-}
-};
-/* runtime type Array[nullable MPropDef] */
-const struct type type_array__Arraynullable_model__MPropDef = {
-1483,
-"Array[nullable MPropDef]", /* class_name_string */
-11,
+/* runtime type ReduceAction350 */
+const struct type type_parser__ReduceAction350 = {
+-1, /*CAST DEAD*/
+"ReduceAction350", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arraynullable_model__MPropDef,
-12,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
--1, /* empty */
-120, /* Collection[nullable MPropDef] */
--1, /* empty */
--1, /* empty */
-1333, /* AbstractArrayRead[nullable MPropDef] */
--1, /* empty */
--1, /* empty */
-1483, /* Array[nullable MPropDef] */
+153, /* ReduceAction */
+932, /* ReduceAction350 */
 },
 };
-const struct types resolution_table_array__Arraynullable_model__MPropDef = {
-0, /* dummy */
-{
-&type_nullable_model__MPropDef, /* Sequence#0: nullable MPropDef */
-&type_nullable_model__MPropDef, /* SimpleCollection#0: nullable MPropDef */
-&type_array__NativeArraynullable_model__MPropDef, /* NativeArray[Array#0]: NativeArray[nullable MPropDef] */
-&type_array__Arraynullable_model__MPropDef, /* Array[Array#0]: Array[nullable MPropDef] */
-&type_array__NativeArraynullable_model__MPropDef, /* NativeArray[ArrayCapable#0]: NativeArray[nullable MPropDef] */
-&type_nullable_model__MPropDef, /* RemovableCollection#0: nullable MPropDef */
-&type_abstract_collection__Collectionnullable_model__MPropDef, /* Collection[Sequence#0]: Collection[nullable MPropDef] */
-&type_abstract_collection__Collectionnullable_model__MPropDef, /* Collection[SimpleCollection#0]: Collection[nullable MPropDef] */
-&type_nullable_model__MPropDef, /* Collection#0: nullable MPropDef */
-&type_abstract_collection__Collectionnullable_model__MPropDef, /* Collection[Collection#0]: Collection[nullable MPropDef] */
-&type_nullable_model__MPropDef, /* SequenceRead#0: nullable MPropDef */
-&type_nullable_model__MPropDef, /* AbstractArrayRead#0: nullable MPropDef */
-&type_array__Arraynullable_model__MPropDef, /* Array[AbstractArrayRead#0]: Array[nullable MPropDef] */
-&type_array__ArrayIteratornullable_model__MPropDef, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[nullable MPropDef] */
-}
-};
-/* runtime type AbstractArrayRead[MPropDef] */
-const struct type type_array__AbstractArrayReadmodel__MPropDef = {
-2125,
-"AbstractArrayRead[MPropDef]", /* class_name_string */
-15,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AbstractArrayRead[nullable MPropDef] */
-const struct type type_array__AbstractArrayReadnullable_model__MPropDef = {
-1333,
-"AbstractArrayRead[nullable MPropDef]", /* class_name_string */
-8,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type HashMap[MProperty, APropdef] */
-const struct type type_hash_collection__HashMapmodel__MPropertyparser_nodes__APropdef = {
-156,
-"HashMap[MProperty, APropdef]", /* class_name_string */
-2,
+/* runtime type ReduceAction351 */
+const struct type type_parser__ReduceAction351 = {
+-1, /*CAST DEAD*/
+"ReduceAction351", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmodel__MPropertyparser_nodes__APropdef,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-156, /* HashMap[MProperty, APropdef] */
+153, /* ReduceAction */
+933, /* ReduceAction351 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MPropertyparser_nodes__APropdef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MProperty, /* MapRead#0: MProperty */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropertyparser_nodes__APropdef, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MProperty, APropdef]] */
-&type_hash_collection__HashMapKeysmodel__MPropertyparser_nodes__APropdef, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MProperty, APropdef] */
-&type_hash_collection__HashMapValuesmodel__MPropertyparser_nodes__APropdef, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MProperty, APropdef] */
-&type_hash_collection__HashMapIteratormodel__MPropertyparser_nodes__APropdef, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MProperty, APropdef] */
-&type_model__MProperty, /* Map#0: MProperty */
-&type_parser_nodes__APropdef, /* Map#1: APropdef */
-&type_hash_collection__HashMapNodemodel__MPropertyparser_nodes__APropdef, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MProperty, APropdef] */
-&type_model__MProperty, /* HashCollection#0: MProperty */
-&type_nullable_hash_collection__HashMapNodemodel__MPropertyparser_nodes__APropdef, /* nullable HashCollection#1: nullable HashMapNode[MProperty, APropdef] */
-&type_hash_collection__HashMapNodemodel__MPropertyparser_nodes__APropdef, /* HashCollection#1: HashMapNode[MProperty, APropdef] */
-&type_nullable_model__MProperty, /* nullable HashCollection#0: nullable MProperty */
-}
-};
-/* runtime type ANodes[AFormaldef] */
-const struct type type_parser_nodes__ANodesparser_nodes__AFormaldef = {
+/* runtime type ReduceAction352 */
+const struct type type_parser__ReduceAction352 = {
 -1, /*CAST DEAD*/
-"ANodes[AFormaldef]", /* class_name_string */
+"ReduceAction352", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AFormaldef,
-10,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1484, /* Collection[AFormaldef] */
-1872, /* ANodes[AFormaldef] */
+153, /* ReduceAction */
+934, /* ReduceAction352 */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AFormaldef = {
-0, /* dummy */
-{
-&type_parser_nodes__AFormaldef, /* Sequence#0: AFormaldef */
-&type_parser_nodes__AFormaldef, /* SimpleCollection#0: AFormaldef */
-&type_array__Arrayparser_nodes__AFormaldef, /* Array[ANodes#0]: Array[AFormaldef] */
-&type_parser_nodes__AFormaldef, /* ANodes#0: AFormaldef */
-NULL, /* empty */
-&type_parser_nodes__AFormaldef, /* RemovableCollection#0: AFormaldef */
-&type_abstract_collection__Collectionparser_nodes__AFormaldef, /* Collection[Sequence#0]: Collection[AFormaldef] */
-&type_abstract_collection__Collectionparser_nodes__AFormaldef, /* Collection[SimpleCollection#0]: Collection[AFormaldef] */
-&type_parser_nodes__AFormaldef, /* Collection#0: AFormaldef */
-&type_abstract_collection__Collectionparser_nodes__AFormaldef, /* Collection[Collection#0]: Collection[AFormaldef] */
-&type_parser_nodes__AFormaldef, /* SequenceRead#0: AFormaldef */
-}
-};
-/* runtime type Collection[AFormaldef] */
-const struct type type_abstract_collection__Collectionparser_nodes__AFormaldef = {
-1484,
-"Collection[AFormaldef]", /* class_name_string */
-8,
+/* runtime type ReduceAction355 */
+const struct type type_parser__ReduceAction355 = {
+-1, /*CAST DEAD*/
+"ReduceAction355", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+935, /* ReduceAction355 */
+},
 };
-/* runtime type ANodes[ASuperclass] */
-const struct type type_parser_nodes__ANodesparser_nodes__ASuperclass = {
+/* runtime type ReduceAction356 */
+const struct type type_parser__ReduceAction356 = {
 -1, /*CAST DEAD*/
-"ANodes[ASuperclass]", /* class_name_string */
+"ReduceAction356", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__ASuperclass,
-10,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1485, /* Collection[ASuperclass] */
-1873, /* ANodes[ASuperclass] */
+153, /* ReduceAction */
+936, /* ReduceAction356 */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__ASuperclass = {
-0, /* dummy */
+/* runtime type ReduceAction357 */
+const struct type type_parser__ReduceAction357 = {
+-1, /*CAST DEAD*/
+"ReduceAction357", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+937, /* ReduceAction357 */
+},
+};
+/* runtime type ReduceAction358 */
+const struct type type_parser__ReduceAction358 = {
+-1, /*CAST DEAD*/
+"ReduceAction358", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+938, /* ReduceAction358 */
+},
+};
+/* runtime type ReduceAction360 */
+const struct type type_parser__ReduceAction360 = {
+-1, /*CAST DEAD*/
+"ReduceAction360", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+939, /* ReduceAction360 */
+},
+};
+/* runtime type ReduceAction361 */
+const struct type type_parser__ReduceAction361 = {
+-1, /*CAST DEAD*/
+"ReduceAction361", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+940, /* ReduceAction361 */
+},
+};
+/* runtime type ReduceAction362 */
+const struct type type_parser__ReduceAction362 = {
+-1, /*CAST DEAD*/
+"ReduceAction362", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+941, /* ReduceAction362 */
+},
+};
+/* runtime type ReduceAction363 */
+const struct type type_parser__ReduceAction363 = {
+-1, /*CAST DEAD*/
+"ReduceAction363", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+942, /* ReduceAction363 */
+},
+};
+/* runtime type ReduceAction364 */
+const struct type type_parser__ReduceAction364 = {
+-1, /*CAST DEAD*/
+"ReduceAction364", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+943, /* ReduceAction364 */
+},
+};
+/* runtime type ReduceAction365 */
+const struct type type_parser__ReduceAction365 = {
+-1, /*CAST DEAD*/
+"ReduceAction365", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+944, /* ReduceAction365 */
+},
+};
+/* runtime type ReduceAction366 */
+const struct type type_parser__ReduceAction366 = {
+-1, /*CAST DEAD*/
+"ReduceAction366", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+945, /* ReduceAction366 */
+},
+};
+/* runtime type ReduceAction369 */
+const struct type type_parser__ReduceAction369 = {
+-1, /*CAST DEAD*/
+"ReduceAction369", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+946, /* ReduceAction369 */
+},
+};
+/* runtime type ReduceAction370 */
+const struct type type_parser__ReduceAction370 = {
+-1, /*CAST DEAD*/
+"ReduceAction370", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+947, /* ReduceAction370 */
+},
+};
+/* runtime type ReduceAction371 */
+const struct type type_parser__ReduceAction371 = {
+-1, /*CAST DEAD*/
+"ReduceAction371", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+948, /* ReduceAction371 */
+},
+};
+/* runtime type ReduceAction372 */
+const struct type type_parser__ReduceAction372 = {
+-1, /*CAST DEAD*/
+"ReduceAction372", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+949, /* ReduceAction372 */
+},
+};
+/* runtime type ReduceAction373 */
+const struct type type_parser__ReduceAction373 = {
+-1, /*CAST DEAD*/
+"ReduceAction373", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+950, /* ReduceAction373 */
+},
+};
+/* runtime type ReduceAction375 */
+const struct type type_parser__ReduceAction375 = {
+-1, /*CAST DEAD*/
+"ReduceAction375", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+951, /* ReduceAction375 */
+},
+};
+/* runtime type ReduceAction376 */
+const struct type type_parser__ReduceAction376 = {
+-1, /*CAST DEAD*/
+"ReduceAction376", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+952, /* ReduceAction376 */
+},
+};
+/* runtime type ReduceAction377 */
+const struct type type_parser__ReduceAction377 = {
+-1, /*CAST DEAD*/
+"ReduceAction377", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+953, /* ReduceAction377 */
+},
+};
+/* runtime type ReduceAction378 */
+const struct type type_parser__ReduceAction378 = {
+-1, /*CAST DEAD*/
+"ReduceAction378", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+954, /* ReduceAction378 */
+},
+};
+/* runtime type ReduceAction379 */
+const struct type type_parser__ReduceAction379 = {
+-1, /*CAST DEAD*/
+"ReduceAction379", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+955, /* ReduceAction379 */
+},
+};
+/* runtime type ReduceAction382 */
+const struct type type_parser__ReduceAction382 = {
+-1, /*CAST DEAD*/
+"ReduceAction382", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+956, /* ReduceAction382 */
+},
+};
+/* runtime type ReduceAction384 */
+const struct type type_parser__ReduceAction384 = {
+-1, /*CAST DEAD*/
+"ReduceAction384", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+957, /* ReduceAction384 */
+},
+};
+/* runtime type ReduceAction386 */
+const struct type type_parser__ReduceAction386 = {
+-1, /*CAST DEAD*/
+"ReduceAction386", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+958, /* ReduceAction386 */
+},
+};
+/* runtime type ReduceAction387 */
+const struct type type_parser__ReduceAction387 = {
+-1, /*CAST DEAD*/
+"ReduceAction387", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+959, /* ReduceAction387 */
+},
+};
+/* runtime type ReduceAction388 */
+const struct type type_parser__ReduceAction388 = {
+-1, /*CAST DEAD*/
+"ReduceAction388", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+960, /* ReduceAction388 */
+},
+};
+/* runtime type ReduceAction389 */
+const struct type type_parser__ReduceAction389 = {
+-1, /*CAST DEAD*/
+"ReduceAction389", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+961, /* ReduceAction389 */
+},
+};
+/* runtime type ReduceAction390 */
+const struct type type_parser__ReduceAction390 = {
+-1, /*CAST DEAD*/
+"ReduceAction390", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+962, /* ReduceAction390 */
+},
+};
+/* runtime type ReduceAction391 */
+const struct type type_parser__ReduceAction391 = {
+-1, /*CAST DEAD*/
+"ReduceAction391", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+963, /* ReduceAction391 */
+},
+};
+/* runtime type ReduceAction392 */
+const struct type type_parser__ReduceAction392 = {
+-1, /*CAST DEAD*/
+"ReduceAction392", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+964, /* ReduceAction392 */
+},
+};
+/* runtime type ReduceAction393 */
+const struct type type_parser__ReduceAction393 = {
+-1, /*CAST DEAD*/
+"ReduceAction393", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+965, /* ReduceAction393 */
+},
+};
+/* runtime type ReduceAction394 */
+const struct type type_parser__ReduceAction394 = {
+-1, /*CAST DEAD*/
+"ReduceAction394", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+966, /* ReduceAction394 */
+},
+};
+/* runtime type ReduceAction395 */
+const struct type type_parser__ReduceAction395 = {
+-1, /*CAST DEAD*/
+"ReduceAction395", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+967, /* ReduceAction395 */
+},
+};
+/* runtime type ReduceAction396 */
+const struct type type_parser__ReduceAction396 = {
+-1, /*CAST DEAD*/
+"ReduceAction396", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+968, /* ReduceAction396 */
+},
+};
+/* runtime type ReduceAction397 */
+const struct type type_parser__ReduceAction397 = {
+-1, /*CAST DEAD*/
+"ReduceAction397", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+969, /* ReduceAction397 */
+},
+};
+/* runtime type ReduceAction399 */
+const struct type type_parser__ReduceAction399 = {
+-1, /*CAST DEAD*/
+"ReduceAction399", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+970, /* ReduceAction399 */
+},
+};
+/* runtime type ReduceAction402 */
+const struct type type_parser__ReduceAction402 = {
+-1, /*CAST DEAD*/
+"ReduceAction402", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+971, /* ReduceAction402 */
+},
+};
+/* runtime type ReduceAction403 */
+const struct type type_parser__ReduceAction403 = {
+-1, /*CAST DEAD*/
+"ReduceAction403", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+972, /* ReduceAction403 */
+},
+};
+/* runtime type ReduceAction404 */
+const struct type type_parser__ReduceAction404 = {
+-1, /*CAST DEAD*/
+"ReduceAction404", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+973, /* ReduceAction404 */
+},
+};
+/* runtime type ReduceAction405 */
+const struct type type_parser__ReduceAction405 = {
+-1, /*CAST DEAD*/
+"ReduceAction405", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+974, /* ReduceAction405 */
+},
+};
+/* runtime type ReduceAction406 */
+const struct type type_parser__ReduceAction406 = {
+-1, /*CAST DEAD*/
+"ReduceAction406", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+975, /* ReduceAction406 */
+},
+};
+/* runtime type ReduceAction407 */
+const struct type type_parser__ReduceAction407 = {
+-1, /*CAST DEAD*/
+"ReduceAction407", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+976, /* ReduceAction407 */
+},
+};
+/* runtime type ReduceAction408 */
+const struct type type_parser__ReduceAction408 = {
+-1, /*CAST DEAD*/
+"ReduceAction408", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_parser_nodes__ASuperclass, /* Sequence#0: ASuperclass */
-&type_parser_nodes__ASuperclass, /* SimpleCollection#0: ASuperclass */
-&type_array__Arrayparser_nodes__ASuperclass, /* Array[ANodes#0]: Array[ASuperclass] */
-&type_parser_nodes__ASuperclass, /* ANodes#0: ASuperclass */
-NULL, /* empty */
-&type_parser_nodes__ASuperclass, /* RemovableCollection#0: ASuperclass */
-&type_abstract_collection__Collectionparser_nodes__ASuperclass, /* Collection[Sequence#0]: Collection[ASuperclass] */
-&type_abstract_collection__Collectionparser_nodes__ASuperclass, /* Collection[SimpleCollection#0]: Collection[ASuperclass] */
-&type_parser_nodes__ASuperclass, /* Collection#0: ASuperclass */
-&type_abstract_collection__Collectionparser_nodes__ASuperclass, /* Collection[Collection#0]: Collection[ASuperclass] */
-&type_parser_nodes__ASuperclass, /* SequenceRead#0: ASuperclass */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+977, /* ReduceAction408 */
+},
 };
-/* runtime type Collection[ASuperclass] */
-const struct type type_abstract_collection__Collectionparser_nodes__ASuperclass = {
-1485,
-"Collection[ASuperclass]", /* class_name_string */
-8,
+/* runtime type ReduceAction409 */
+const struct type type_parser__ReduceAction409 = {
+-1, /*CAST DEAD*/
+"ReduceAction409", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+978, /* ReduceAction409 */
+},
 };
-/* runtime type Array[MParameter] */
-const struct type type_array__Arraymodel__MParameter = {
+/* runtime type ReduceAction411 */
+const struct type type_parser__ReduceAction411 = {
 -1, /*CAST DEAD*/
-"Array[MParameter]", /* class_name_string */
+"ReduceAction411", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arraymodel__MParameter,
-11,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-1006, /* Collection[MParameter] */
--1, /* empty */
-1294, /* AbstractArrayRead[Object] */
-1679, /* AbstractArrayRead[MParameter] */
-1459, /* Array[Object] */
-2043, /* Array[MParameter] */
+153, /* ReduceAction */
+979, /* ReduceAction411 */
 },
 };
-const struct types resolution_table_array__Arraymodel__MParameter = {
-0, /* dummy */
+/* runtime type ReduceAction413 */
+const struct type type_parser__ReduceAction413 = {
+-1, /*CAST DEAD*/
+"ReduceAction413", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_model__MParameter, /* Sequence#0: MParameter */
-&type_model__MParameter, /* SimpleCollection#0: MParameter */
-&type_array__NativeArraymodel__MParameter, /* NativeArray[Array#0]: NativeArray[MParameter] */
-&type_array__Arraymodel__MParameter, /* Array[Array#0]: Array[MParameter] */
-&type_array__NativeArraymodel__MParameter, /* NativeArray[ArrayCapable#0]: NativeArray[MParameter] */
-&type_model__MParameter, /* RemovableCollection#0: MParameter */
-&type_abstract_collection__Collectionmodel__MParameter, /* Collection[Sequence#0]: Collection[MParameter] */
-&type_abstract_collection__Collectionmodel__MParameter, /* Collection[SimpleCollection#0]: Collection[MParameter] */
-&type_model__MParameter, /* Collection#0: MParameter */
-&type_abstract_collection__Collectionmodel__MParameter, /* Collection[Collection#0]: Collection[MParameter] */
-&type_model__MParameter, /* SequenceRead#0: MParameter */
-&type_model__MParameter, /* AbstractArrayRead#0: MParameter */
-&type_array__Arraymodel__MParameter, /* Array[AbstractArrayRead#0]: Array[MParameter] */
-&type_array__ArrayIteratormodel__MParameter, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MParameter] */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+980, /* ReduceAction413 */
+},
 };
-/* runtime type Collection[MParameter] */
-const struct type type_abstract_collection__Collectionmodel__MParameter = {
-1006,
-"Collection[MParameter]", /* class_name_string */
-5,
+/* runtime type ReduceAction414 */
+const struct type type_parser__ReduceAction414 = {
+-1, /*CAST DEAD*/
+"ReduceAction414", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+981, /* ReduceAction414 */
+},
 };
-/* runtime type AbstractArrayRead[MParameter] */
-const struct type type_array__AbstractArrayReadmodel__MParameter = {
-1679,
-"AbstractArrayRead[MParameter]", /* class_name_string */
-8,
+/* runtime type ReduceAction415 */
+const struct type type_parser__ReduceAction415 = {
+-1, /*CAST DEAD*/
+"ReduceAction415", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+982, /* ReduceAction415 */
+},
 };
-/* runtime type MParameter */
-const struct type type_model__MParameter = {
-157,
-"MParameter", /* class_name_string */
-2,
+/* runtime type ReduceAction417 */
+const struct type type_parser__ReduceAction417 = {
+-1, /*CAST DEAD*/
+"ReduceAction417", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-3,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-157, /* MParameter */
+153, /* ReduceAction */
+983, /* ReduceAction417 */
 },
 };
-/* runtime type MMethod */
-const struct type type_model__MMethod = {
-1874,
-"MMethod", /* class_name_string */
-7,
+/* runtime type ReduceAction418 */
+const struct type type_parser__ReduceAction418 = {
+-1, /*CAST DEAD*/
+"ReduceAction418", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_model__MMethod,
-8,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-14, /* nullable PropertyLayoutElement */
-158, /* nullable MProperty */
-1007, /* nullable MMethod */
-1008, /* PropertyLayoutElement */
-1486, /* MProperty */
-1874, /* MMethod */
+153, /* ReduceAction */
+984, /* ReduceAction418 */
 },
 };
-const struct types resolution_table_model__MMethod = {
-0, /* dummy */
+/* runtime type ReduceAction419 */
+const struct type type_parser__ReduceAction419 = {
+-1, /*CAST DEAD*/
+"ReduceAction419", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_array__Arraymodel__MMethodDef, /* Array[MPROPDEF]: Array[MMethodDef] */
-&type_more_collections__HashMap2mmodule__MModulemodel__MTypearray__Arraymodel__MMethodDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MMethodDef]] */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+985, /* ReduceAction419 */
+},
 };
-/* runtime type nullable MMethod */
-const struct type type_nullable_model__MMethod = {
-1007,
-"nullable MMethod", /* class_name_string */
+/* runtime type ReduceAction420 */
+const struct type type_parser__ReduceAction420 = {
+-1, /*CAST DEAD*/
+"ReduceAction420", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
 4,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+986, /* ReduceAction420 */
+},
 };
-/* runtime type MProperty */
-const struct type type_model__MProperty = {
-1486,
-"MProperty", /* class_name_string */
-6,
+/* runtime type ReduceAction421 */
+const struct type type_parser__ReduceAction421 = {
+-1, /*CAST DEAD*/
+"ReduceAction421", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+987, /* ReduceAction421 */
+},
 };
-/* runtime type PropertyLayoutElement */
-const struct type type_separate_compiler__PropertyLayoutElement = {
-1008,
-"PropertyLayoutElement", /* class_name_string */
-5,
+/* runtime type ReduceAction422 */
+const struct type type_parser__ReduceAction422 = {
+-1, /*CAST DEAD*/
+"ReduceAction422", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+988, /* ReduceAction422 */
+},
 };
-/* runtime type nullable MProperty */
-const struct type type_nullable_model__MProperty = {
-158,
-"nullable MProperty", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+/* runtime type ReduceAction423 */
+const struct type type_parser__ReduceAction423 = {
+-1, /*CAST DEAD*/
+"ReduceAction423", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+989, /* ReduceAction423 */
+},
 };
-/* runtime type nullable PropertyLayoutElement */
-const struct type type_nullable_separate_compiler__PropertyLayoutElement = {
-14,
-"nullable PropertyLayoutElement", /* class_name_string */
-2,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+/* runtime type ReduceAction424 */
+const struct type type_parser__ReduceAction424 = {
+-1, /*CAST DEAD*/
+"ReduceAction424", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+990, /* ReduceAction424 */
+},
 };
-/* runtime type MMethodDef */
-const struct type type_model__MMethodDef = {
-1875,
-"MMethodDef", /* class_name_string */
-7,
+/* runtime type ReduceAction425 */
+const struct type type_parser__ReduceAction425 = {
+-1, /*CAST DEAD*/
+"ReduceAction425", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_model__MMethodDef,
-8,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-14, /* nullable PropertyLayoutElement */
-159, /* nullable MPropDef */
-1009, /* nullable MMethodDef */
-1008, /* PropertyLayoutElement */
-1487, /* MPropDef */
-1875, /* MMethodDef */
+153, /* ReduceAction */
+991, /* ReduceAction425 */
 },
 };
-const struct types resolution_table_model__MMethodDef = {
-0, /* dummy */
+/* runtime type ReduceAction426 */
+const struct type type_parser__ReduceAction426 = {
+-1, /*CAST DEAD*/
+"ReduceAction426", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_model__MMethod, /* MPROPERTY: MMethod */
-&type_abstract_compiler__AbstractCompilerVisitor, /* VISITOR: AbstractCompilerVisitor */
-&type_model__MMethodDef, /* MPROPDEF: MMethodDef */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+992, /* ReduceAction426 */
+},
 };
-/* runtime type MPropDef */
-const struct type type_model__MPropDef = {
-1487,
-"MPropDef", /* class_name_string */
-6,
+/* runtime type ReduceAction427 */
+const struct type type_parser__ReduceAction427 = {
+-1, /*CAST DEAD*/
+"ReduceAction427", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+993, /* ReduceAction427 */
+},
 };
-/* runtime type nullable MPropDef */
-const struct type type_nullable_model__MPropDef = {
-159,
-"nullable MPropDef", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+/* runtime type ReduceAction428 */
+const struct type type_parser__ReduceAction428 = {
+-1, /*CAST DEAD*/
+"ReduceAction428", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+994, /* ReduceAction428 */
+},
 };
-/* runtime type nullable MMethodDef */
-const struct type type_nullable_model__MMethodDef = {
-1009,
-"nullable MMethodDef", /* class_name_string */
+/* runtime type ReduceAction429 */
+const struct type type_parser__ReduceAction429 = {
+-1, /*CAST DEAD*/
+"ReduceAction429", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
 4,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+995, /* ReduceAction429 */
+},
 };
-/* runtime type MSignature */
-const struct type type_model__MSignature = {
-1334,
-"MSignature", /* class_name_string */
-5,
+/* runtime type ReduceAction431 */
+const struct type type_parser__ReduceAction431 = {
+-1, /*CAST DEAD*/
+"ReduceAction431", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-6,
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+996, /* ReduceAction431 */
+},
+};
+/* runtime type ReduceAction432 */
+const struct type type_parser__ReduceAction432 = {
+-1, /*CAST DEAD*/
+"ReduceAction432", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+997, /* ReduceAction432 */
+},
+};
+/* runtime type ReduceAction433 */
+const struct type type_parser__ReduceAction433 = {
+-1, /*CAST DEAD*/
+"ReduceAction433", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-3, /* nullable MType */
--1, /* empty */
-600, /* MType */
-1334, /* MSignature */
+153, /* ReduceAction */
+998, /* ReduceAction433 */
 },
 };
-/* runtime type Scope */
-const struct type type_scope__Scope = {
-160,
-"Scope", /* class_name_string */
-2,
+/* runtime type ReduceAction435 */
+const struct type type_parser__ReduceAction435 = {
+-1, /*CAST DEAD*/
+"ReduceAction435", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-3,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-160, /* Scope */
+153, /* ReduceAction */
+999, /* ReduceAction435 */
 },
 };
-/* runtime type HashMap[String, Variable] */
-const struct type type_hash_collection__HashMapstring__Stringscope__Variable = {
-161,
-"HashMap[String, Variable]", /* class_name_string */
-2,
+/* runtime type ReduceAction436 */
+const struct type type_parser__ReduceAction436 = {
+-1, /*CAST DEAD*/
+"ReduceAction436", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapstring__Stringscope__Variable,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-161, /* HashMap[String, Variable] */
+153, /* ReduceAction */
+1000, /* ReduceAction436 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapstring__Stringscope__Variable = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* MapRead#0: String */
-&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringscope__Variable, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[String, Variable]] */
-&type_hash_collection__HashMapKeysstring__Stringscope__Variable, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[String, Variable] */
-&type_hash_collection__HashMapValuesstring__Stringscope__Variable, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[String, Variable] */
-&type_hash_collection__HashMapIteratorstring__Stringscope__Variable, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[String, Variable] */
-&type_string__String, /* Map#0: String */
-&type_scope__Variable, /* Map#1: Variable */
-&type_hash_collection__HashMapNodestring__Stringscope__Variable, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[String, Variable] */
-&type_string__String, /* HashCollection#0: String */
-&type_nullable_hash_collection__HashMapNodestring__Stringscope__Variable, /* nullable HashCollection#1: nullable HashMapNode[String, Variable] */
-&type_hash_collection__HashMapNodestring__Stringscope__Variable, /* HashCollection#1: HashMapNode[String, Variable] */
-&type_nullable_string__String, /* nullable HashCollection#0: nullable String */
-}
-};
-/* runtime type FlowContext */
-const struct type type_flow__FlowContext = {
-162,
-"FlowContext", /* class_name_string */
-2,
+/* runtime type ReduceAction437 */
+const struct type type_parser__ReduceAction437 = {
+-1, /*CAST DEAD*/
+"ReduceAction437", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-3,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-162, /* FlowContext */
+153, /* ReduceAction */
+1001, /* ReduceAction437 */
 },
 };
-/* runtime type HashMap[Variable, nullable MType] */
-const struct type type_hash_collection__HashMapscope__Variablenullable_model__MType = {
-163,
-"HashMap[Variable, nullable MType]", /* class_name_string */
-2,
+/* runtime type ReduceAction439 */
+const struct type type_parser__ReduceAction439 = {
+-1, /*CAST DEAD*/
+"ReduceAction439", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapscope__Variablenullable_model__MType,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-163, /* HashMap[Variable, nullable MType] */
+153, /* ReduceAction */
+1002, /* ReduceAction439 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapscope__Variablenullable_model__MType = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_scope__Variable, /* MapRead#0: Variable */
-&type_array__NativeArraynullable_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[Variable, nullable MType]] */
-&type_hash_collection__HashMapKeysscope__Variablenullable_model__MType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[Variable, nullable MType] */
-&type_hash_collection__HashMapValuesscope__Variablenullable_model__MType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[Variable, nullable MType] */
-&type_hash_collection__HashMapIteratorscope__Variablenullable_model__MType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[Variable, nullable MType] */
-&type_scope__Variable, /* Map#0: Variable */
-&type_nullable_model__MType, /* Map#1: nullable MType */
-&type_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[Variable, nullable MType] */
-&type_scope__Variable, /* HashCollection#0: Variable */
-&type_nullable_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* nullable HashCollection#1: nullable HashMapNode[Variable, nullable MType] */
-&type_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* HashCollection#1: HashMapNode[Variable, nullable MType] */
-&type_nullable_scope__Variable, /* nullable HashCollection#0: nullable Variable */
-}
-};
-/* runtime type HashMap[Variable, nullable Array[nullable MType]] */
-const struct type type_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType = {
-164,
-"HashMap[Variable, nullable Array[nullable MType]]", /* class_name_string */
-2,
+/* runtime type ReduceAction440 */
+const struct type type_parser__ReduceAction440 = {
+-1, /*CAST DEAD*/
+"ReduceAction440", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-164, /* HashMap[Variable, nullable Array[nullable MType]] */
+153, /* ReduceAction */
+1003, /* ReduceAction440 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_scope__Variable, /* MapRead#0: Variable */
-&type_array__NativeArraynullable_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[Variable, nullable Array[nullable MType]]] */
-&type_hash_collection__HashMapKeysscope__Variablenullable_array__Arraynullable_model__MType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[Variable, nullable Array[nullable MType]] */
-&type_hash_collection__HashMapValuesscope__Variablenullable_array__Arraynullable_model__MType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[Variable, nullable Array[nullable MType]] */
-&type_hash_collection__HashMapIteratorscope__Variablenullable_array__Arraynullable_model__MType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[Variable, nullable Array[nullable MType]] */
-&type_scope__Variable, /* Map#0: Variable */
-&type_nullable_array__Arraynullable_model__MType, /* Map#1: nullable Array[nullable MType] */
-&type_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[Variable, nullable Array[nullable MType]] */
-&type_scope__Variable, /* HashCollection#0: Variable */
-&type_nullable_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* nullable HashCollection#1: nullable HashMapNode[Variable, nullable Array[nullable MType]] */
-&type_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* HashCollection#1: HashMapNode[Variable, nullable Array[nullable MType]] */
-&type_nullable_scope__Variable, /* nullable HashCollection#0: nullable Variable */
-}
-};
-/* runtime type MGenericType */
-const struct type type_model__MGenericType = {
-1680,
-"MGenericType", /* class_name_string */
-6,
+/* runtime type ReduceAction442 */
+const struct type type_parser__ReduceAction442 = {
+-1, /*CAST DEAD*/
+"ReduceAction442", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-3, /* nullable MType */
-165, /* nullable MClassType */
-600, /* MType */
-1488, /* MClassType */
-1680, /* MGenericType */
+153, /* ReduceAction */
+1004, /* ReduceAction442 */
 },
 };
-/* runtime type MClassType */
-const struct type type_model__MClassType = {
-1488,
-"MClassType", /* class_name_string */
-5,
+/* runtime type ReduceAction443 */
+const struct type type_parser__ReduceAction443 = {
+-1, /*CAST DEAD*/
+"ReduceAction443", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-6,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-3, /* nullable MType */
-165, /* nullable MClassType */
-600, /* MType */
-1488, /* MClassType */
+153, /* ReduceAction */
+1005, /* ReduceAction443 */
 },
 };
-/* runtime type nullable MClassType */
-const struct type type_nullable_model__MClassType = {
-165,
-"nullable MClassType", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type HashMap[MModule, Set[MClassDef]] */
-const struct type type_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClassDef = {
-166,
-"HashMap[MModule, Set[MClassDef]]", /* class_name_string */
-2,
+/* runtime type ReduceAction445 */
+const struct type type_parser__ReduceAction445 = {
+-1, /*CAST DEAD*/
+"ReduceAction445", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClassDef,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-166, /* HashMap[MModule, Set[MClassDef]] */
+153, /* ReduceAction */
+1006, /* ReduceAction445 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClassDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_mmodule__MModule, /* MapRead#0: MModule */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassDef, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]] */
-&type_hash_collection__HashMapKeysmmodule__MModuleabstract_collection__Setmodel__MClassDef, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MModule, Set[MClassDef]] */
-&type_hash_collection__HashMapValuesmmodule__MModuleabstract_collection__Setmodel__MClassDef, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MModule, Set[MClassDef]] */
-&type_hash_collection__HashMapIteratormmodule__MModuleabstract_collection__Setmodel__MClassDef, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MModule, Set[MClassDef]] */
-&type_mmodule__MModule, /* Map#0: MModule */
-&type_abstract_collection__Setmodel__MClassDef, /* Map#1: Set[MClassDef] */
-&type_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassDef, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MModule, Set[MClassDef]] */
-&type_mmodule__MModule, /* HashCollection#0: MModule */
-&type_nullable_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassDef, /* nullable HashCollection#1: nullable HashMapNode[MModule, Set[MClassDef]] */
-&type_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassDef, /* HashCollection#1: HashMapNode[MModule, Set[MClassDef]] */
-&type_nullable_mmodule__MModule, /* nullable HashCollection#0: nullable MModule */
-}
-};
-/* runtime type HashMap[MModule, Set[MClass]] */
-const struct type type_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClass = {
-167,
-"HashMap[MModule, Set[MClass]]", /* class_name_string */
-2,
+/* runtime type ReduceAction446 */
+const struct type type_parser__ReduceAction446 = {
+-1, /*CAST DEAD*/
+"ReduceAction446", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClass,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-167, /* HashMap[MModule, Set[MClass]] */
+153, /* ReduceAction */
+1007, /* ReduceAction446 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClass = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_mmodule__MModule, /* MapRead#0: MModule */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClass, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MModule, Set[MClass]]] */
-&type_hash_collection__HashMapKeysmmodule__MModuleabstract_collection__Setmodel__MClass, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MModule, Set[MClass]] */
-&type_hash_collection__HashMapValuesmmodule__MModuleabstract_collection__Setmodel__MClass, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MModule, Set[MClass]] */
-&type_hash_collection__HashMapIteratormmodule__MModuleabstract_collection__Setmodel__MClass, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MModule, Set[MClass]] */
-&type_mmodule__MModule, /* Map#0: MModule */
-&type_abstract_collection__Setmodel__MClass, /* Map#1: Set[MClass] */
-&type_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClass, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MModule, Set[MClass]] */
-&type_mmodule__MModule, /* HashCollection#0: MModule */
-&type_nullable_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClass, /* nullable HashCollection#1: nullable HashMapNode[MModule, Set[MClass]] */
-&type_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClass, /* HashCollection#1: HashMapNode[MModule, Set[MClass]] */
-&type_nullable_mmodule__MModule, /* nullable HashCollection#0: nullable MModule */
-}
-};
-/* runtime type HashMap[MModule, Set[MClassType]] */
-const struct type type_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClassType = {
-168,
-"HashMap[MModule, Set[MClassType]]", /* class_name_string */
-2,
+/* runtime type ReduceAction449 */
+const struct type type_parser__ReduceAction449 = {
+-1, /*CAST DEAD*/
+"ReduceAction449", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClassType,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-168, /* HashMap[MModule, Set[MClassType]] */
+153, /* ReduceAction */
+1008, /* ReduceAction449 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmmodule__MModuleabstract_collection__Setmodel__MClassType = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_mmodule__MModule, /* MapRead#0: MModule */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MModule, Set[MClassType]]] */
-&type_hash_collection__HashMapKeysmmodule__MModuleabstract_collection__Setmodel__MClassType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MModule, Set[MClassType]] */
-&type_hash_collection__HashMapValuesmmodule__MModuleabstract_collection__Setmodel__MClassType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MModule, Set[MClassType]] */
-&type_hash_collection__HashMapIteratormmodule__MModuleabstract_collection__Setmodel__MClassType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MModule, Set[MClassType]] */
-&type_mmodule__MModule, /* Map#0: MModule */
-&type_abstract_collection__Setmodel__MClassType, /* Map#1: Set[MClassType] */
-&type_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MModule, Set[MClassType]] */
-&type_mmodule__MModule, /* HashCollection#0: MModule */
-&type_nullable_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassType, /* nullable HashCollection#1: nullable HashMapNode[MModule, Set[MClassType]] */
-&type_hash_collection__HashMapNodemmodule__MModuleabstract_collection__Setmodel__MClassType, /* HashCollection#1: HashMapNode[MModule, Set[MClassType]] */
-&type_nullable_mmodule__MModule, /* nullable HashCollection#0: nullable MModule */
-}
-};
-/* runtime type POSet[MClass] */
-const struct type type_poset__POSetmodel__MClass = {
-1489,
-"POSet[MClass]", /* class_name_string */
-6,
+/* runtime type ReduceAction450 */
+const struct type type_parser__ReduceAction450 = {
+-1, /*CAST DEAD*/
+"ReduceAction450", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_poset__POSetmodel__MClass,
-7,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-91, /* Collection[nullable MClass] */
--1, /* empty */
-84, /* Collection[Object] */
-1312, /* Collection[MClass] */
-1489, /* POSet[MClass] */
+153, /* ReduceAction */
+1009, /* ReduceAction450 */
 },
 };
-const struct types resolution_table_poset__POSetmodel__MClass = {
-0, /* dummy */
+/* runtime type ReduceAction451 */
+const struct type type_parser__ReduceAction451 = {
+-1, /*CAST DEAD*/
+"ReduceAction451", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_hash_collection__HashMapmodel__MClassposet__POSetElementmodel__MClass, /* HashMap[POSet#0, POSetElement[POSet#0]]: HashMap[MClass, POSetElement[MClass]] */
-&type_array__Arraymodel__MClass, /* Array[Comparator#0]: Array[MClass] */
-&type_model__MClass, /* POSet#0: MClass */
-&type_poset__POSetElementmodel__MClass, /* POSetElement[POSet#0]: POSetElement[MClass] */
-&type_abstract_collection__Collectionmodel__MClass, /* Collection[POSet#0]: Collection[MClass] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MClass, /* Collection#0: MClass */
-&type_abstract_collection__Collectionmodel__MClass, /* Collection[Collection#0]: Collection[MClass] */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+1010, /* ReduceAction451 */
+},
 };
-/* runtime type SeparateErasureCompilerVisitor */
-const struct type type_separate_erasure_compiler__SeparateErasureCompilerVisitor = {
+/* runtime type ReduceAction780 */
+const struct type type_parser__ReduceAction780 = {
 -1, /*CAST DEAD*/
-"SeparateErasureCompilerVisitor", /* class_name_string */
+"ReduceAction780", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_separate_erasure_compiler__SeparateErasureCompilerVisitor,
-5,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-150, /* AbstractCompilerVisitor */
-632, /* SeparateCompilerVisitor */
-1335, /* SeparateErasureCompilerVisitor */
+153, /* ReduceAction */
+1011, /* ReduceAction780 */
 },
 };
-const struct types resolution_table_separate_erasure_compiler__SeparateErasureCompilerVisitor = {
-0, /* dummy */
+/* runtime type ReduceAction782 */
+const struct type type_parser__ReduceAction782 = {
+-1, /*CAST DEAD*/
+"ReduceAction782", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_separate_compiler__SeparateCompiler, /* COMPILER: SeparateCompiler */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+1012, /* ReduceAction782 */
+},
 };
-/* runtime type VirtualRuntimeFunction */
-const struct type type_separate_compiler__VirtualRuntimeFunction = {
+/* runtime type ReduceAction783 */
+const struct type type_parser__ReduceAction783 = {
 -1, /*CAST DEAD*/
-"VirtualRuntimeFunction", /* class_name_string */
+"ReduceAction783", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_separate_compiler__VirtualRuntimeFunction,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-169, /* VirtualRuntimeFunction */
+153, /* ReduceAction */
+1013, /* ReduceAction783 */
 },
 };
-const struct types resolution_table_separate_compiler__VirtualRuntimeFunction = {
-0, /* dummy */
+/* runtime type ReduceAction784 */
+const struct type type_parser__ReduceAction784 = {
+-1, /*CAST DEAD*/
+"ReduceAction784", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_abstract_compiler__AbstractCompiler, /* COMPILER: AbstractCompiler */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+1014, /* ReduceAction784 */
+},
 };
-/* runtime type RuntimeVariable */
-const struct type type_abstract_compiler__RuntimeVariable = {
-170,
-"RuntimeVariable", /* class_name_string */
-2,
+/* runtime type ReduceAction785 */
+const struct type type_parser__ReduceAction785 = {
+-1, /*CAST DEAD*/
+"ReduceAction785", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-3,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-170, /* RuntimeVariable */
+153, /* ReduceAction */
+1015, /* ReduceAction785 */
 },
 };
-/* runtime type SeparateRuntimeFunction */
-const struct type type_separate_compiler__SeparateRuntimeFunction = {
+/* runtime type ReduceAction786 */
+const struct type type_parser__ReduceAction786 = {
 -1, /*CAST DEAD*/
-"SeparateRuntimeFunction", /* class_name_string */
+"ReduceAction786", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_separate_compiler__SeparateRuntimeFunction,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-171, /* SeparateRuntimeFunction */
+153, /* ReduceAction */
+1016, /* ReduceAction786 */
 },
 };
-const struct types resolution_table_separate_compiler__SeparateRuntimeFunction = {
-0, /* dummy */
+/* runtime type ReduceAction793 */
+const struct type type_parser__ReduceAction793 = {
+-1, /*CAST DEAD*/
+"ReduceAction793", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-&type_abstract_compiler__AbstractCompiler, /* COMPILER: AbstractCompiler */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+1017, /* ReduceAction793 */
+},
 };
-/* runtime type HashMap[MClassType, Set[MType]] */
-const struct type type_hash_collection__HashMapmodel__MClassTypeabstract_collection__Setmodel__MType = {
-1336,
-"HashMap[MClassType, Set[MType]]", /* class_name_string */
-4,
+/* runtime type ReduceAction794 */
+const struct type type_parser__ReduceAction794 = {
+-1, /*CAST DEAD*/
+"ReduceAction794", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmodel__MClassTypeabstract_collection__Setmodel__MType,
-5,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-172, /* Map[MType, Set[MType]] */
-1010, /* HashMap[MType, Set[MType]] */
-1336, /* HashMap[MClassType, Set[MType]] */
+153, /* ReduceAction */
+1018, /* ReduceAction794 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MClassTypeabstract_collection__Setmodel__MType = {
-0, /* dummy */
+/* runtime type ReduceAction817 */
+const struct type type_parser__ReduceAction817 = {
+-1, /*CAST DEAD*/
+"ReduceAction817", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MClassType, /* MapRead#0: MClassType */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MClassType, Set[MType]]] */
-&type_hash_collection__HashMapKeysmodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MClassType, Set[MType]] */
-&type_hash_collection__HashMapValuesmodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MClassType, Set[MType]] */
-&type_hash_collection__HashMapIteratormodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MClassType, Set[MType]] */
-&type_model__MClassType, /* Map#0: MClassType */
-&type_abstract_collection__Setmodel__MType, /* Map#1: Set[MType] */
-&type_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MClassType, Set[MType]] */
-&type_model__MClassType, /* HashCollection#0: MClassType */
-&type_nullable_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* nullable HashCollection#1: nullable HashMapNode[MClassType, Set[MType]] */
-&type_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* HashCollection#1: HashMapNode[MClassType, Set[MType]] */
-&type_nullable_model__MClassType, /* nullable HashCollection#0: nullable MClassType */
-}
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+1019, /* ReduceAction817 */
+},
 };
-/* runtime type HashMap[MType, Set[MType]] */
-const struct type type_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType = {
-1010,
-"HashMap[MType, Set[MType]]", /* class_name_string */
-3,
+/* runtime type ReduceAction818 */
+const struct type type_parser__ReduceAction818 = {
+-1, /*CAST DEAD*/
+"ReduceAction818", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType,
+NULL, /*NO RESOLUTIONS*/
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-172, /* Map[MType, Set[MType]] */
-1010, /* HashMap[MType, Set[MType]] */
+153, /* ReduceAction */
+1020, /* ReduceAction818 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MType, /* MapRead#0: MType */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MType, Set[MType]]] */
-&type_hash_collection__HashMapKeysmodel__MTypeabstract_collection__Setmodel__MType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MType, Set[MType]] */
-&type_hash_collection__HashMapValuesmodel__MTypeabstract_collection__Setmodel__MType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MType, Set[MType]] */
-&type_hash_collection__HashMapIteratormodel__MTypeabstract_collection__Setmodel__MType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MType, Set[MType]] */
-&type_model__MType, /* Map#0: MType */
-&type_abstract_collection__Setmodel__MType, /* Map#1: Set[MType] */
-&type_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MType, Set[MType]] */
-&type_model__MType, /* HashCollection#0: MType */
-&type_nullable_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* nullable HashCollection#1: nullable HashMapNode[MType, Set[MType]] */
-&type_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* HashCollection#1: HashMapNode[MType, Set[MType]] */
-&type_nullable_model__MType, /* nullable HashCollection#0: nullable MType */
-}
-};
-/* runtime type Map[MType, Set[MType]] */
-const struct type type_abstract_collection__Mapmodel__MTypeabstract_collection__Setmodel__MType = {
-172,
-"Map[MType, Set[MType]]", /* class_name_string */
-2,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type BucketsColorer[MType, MType] */
-const struct type type_coloring__BucketsColorermodel__MTypemodel__MType = {
+/* runtime type ReduceAction968 */
+const struct type type_parser__ReduceAction968 = {
 -1, /*CAST DEAD*/
-"BucketsColorer[MType, MType]", /* class_name_string */
+"ReduceAction968", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_coloring__BucketsColorermodel__MTypemodel__MType,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-173, /* BucketsColorer[MType, MType] */
+153, /* ReduceAction */
+1021, /* ReduceAction968 */
 },
 };
-const struct types resolution_table_coloring__BucketsColorermodel__MTypemodel__MType = {
-0, /* dummy */
-{
-&type_hash_collection__HashMapmodel__MTypekernel__Int, /* HashMap[BucketsColorer#1, Int]: HashMap[MType, Int] */
-&type_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType, /* HashMap[BucketsColorer#1, Set[BucketsColorer#1]]: HashMap[MType, Set[MType]] */
-&type_abstract_collection__Mapmodel__MTypeabstract_collection__Setmodel__MType, /* Map[BucketsColorer#0, Set[BucketsColorer#1]]: Map[MType, Set[MType]] */
-&type_model__MType, /* BucketsColorer#1: MType */
-&type_hash_collection__HashSetmodel__MType, /* HashSet[BucketsColorer#1]: HashSet[MType] */
-}
-};
-/* runtime type HashMap[MType, Int] */
-const struct type type_hash_collection__HashMapmodel__MTypekernel__Int = {
-174,
-"HashMap[MType, Int]", /* class_name_string */
-2,
+/* runtime type ReduceAction969 */
+const struct type type_parser__ReduceAction969 = {
+-1, /*CAST DEAD*/
+"ReduceAction969", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmodel__MTypekernel__Int,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-174, /* HashMap[MType, Int] */
+153, /* ReduceAction */
+1022, /* ReduceAction969 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MTypekernel__Int = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MType, /* MapRead#0: MType */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypekernel__Int, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MType, Int]] */
-&type_hash_collection__HashMapKeysmodel__MTypekernel__Int, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MType, Int] */
-&type_hash_collection__HashMapValuesmodel__MTypekernel__Int, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MType, Int] */
-&type_hash_collection__HashMapIteratormodel__MTypekernel__Int, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MType, Int] */
-&type_model__MType, /* Map#0: MType */
-&type_kernel__Int, /* Map#1: Int */
-&type_hash_collection__HashMapNodemodel__MTypekernel__Int, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MType, Int] */
-&type_model__MType, /* HashCollection#0: MType */
-&type_nullable_hash_collection__HashMapNodemodel__MTypekernel__Int, /* nullable HashCollection#1: nullable HashMapNode[MType, Int] */
-&type_hash_collection__HashMapNodemodel__MTypekernel__Int, /* HashCollection#1: HashMapNode[MType, Int] */
-&type_nullable_model__MType, /* nullable HashCollection#0: nullable MType */
-}
-};
-/* runtime type HashMap[MClass, Array[nullable MClass]] */
-const struct type type_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass = {
-175,
-"HashMap[MClass, Array[nullable MClass]]", /* class_name_string */
-2,
+/* runtime type ReduceAction970 */
+const struct type type_parser__ReduceAction970 = {
+-1, /*CAST DEAD*/
+"ReduceAction970", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-175, /* HashMap[MClass, Array[nullable MClass]] */
+153, /* ReduceAction */
+1023, /* ReduceAction970 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MClass, /* MapRead#0: MClass */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MClass, Array[nullable MClass]]] */
-&type_hash_collection__HashMapKeysmodel__MClassarray__Arraynullable_model__MClass, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MClass, Array[nullable MClass]] */
-&type_hash_collection__HashMapValuesmodel__MClassarray__Arraynullable_model__MClass, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MClass, Array[nullable MClass]] */
-&type_hash_collection__HashMapIteratormodel__MClassarray__Arraynullable_model__MClass, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MClass, Array[nullable MClass]] */
-&type_model__MClass, /* Map#0: MClass */
-&type_array__Arraynullable_model__MClass, /* Map#1: Array[nullable MClass] */
-&type_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MClass, Array[nullable MClass]] */
-&type_model__MClass, /* HashCollection#0: MClass */
-&type_nullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* nullable HashCollection#1: nullable HashMapNode[MClass, Array[nullable MClass]] */
-&type_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* HashCollection#1: HashMapNode[MClass, Array[nullable MClass]] */
-&type_nullable_model__MClass, /* nullable HashCollection#0: nullable MClass */
-}
-};
-/* runtime type AModule */
-const struct type type_parser_nodes__AModule = {
-1490,
-"AModule", /* class_name_string */
-6,
+/* runtime type ReduceAction971 */
+const struct type type_parser__ReduceAction971 = {
+-1, /*CAST DEAD*/
+"ReduceAction971", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1490, /* AModule */
+153, /* ReduceAction */
+1024, /* ReduceAction971 */
 },
 };
-/* runtime type ANodes[AExternCodeBlock] */
-const struct type type_parser_nodes__ANodesparser_nodes__AExternCodeBlock = {
+/* runtime type ReduceAction972 */
+const struct type type_parser__ReduceAction972 = {
 -1, /*CAST DEAD*/
-"ANodes[AExternCodeBlock]", /* class_name_string */
+"ReduceAction972", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AExternCodeBlock,
-10,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1491, /* Collection[AExternCodeBlock] */
-1876, /* ANodes[AExternCodeBlock] */
+153, /* ReduceAction */
+1025, /* ReduceAction972 */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AExternCodeBlock = {
-0, /* dummy */
-{
-&type_parser_nodes__AExternCodeBlock, /* Sequence#0: AExternCodeBlock */
-&type_parser_nodes__AExternCodeBlock, /* SimpleCollection#0: AExternCodeBlock */
-&type_array__Arrayparser_nodes__AExternCodeBlock, /* Array[ANodes#0]: Array[AExternCodeBlock] */
-&type_parser_nodes__AExternCodeBlock, /* ANodes#0: AExternCodeBlock */
-NULL, /* empty */
-&type_parser_nodes__AExternCodeBlock, /* RemovableCollection#0: AExternCodeBlock */
-&type_abstract_collection__Collectionparser_nodes__AExternCodeBlock, /* Collection[Sequence#0]: Collection[AExternCodeBlock] */
-&type_abstract_collection__Collectionparser_nodes__AExternCodeBlock, /* Collection[SimpleCollection#0]: Collection[AExternCodeBlock] */
-&type_parser_nodes__AExternCodeBlock, /* Collection#0: AExternCodeBlock */
-&type_abstract_collection__Collectionparser_nodes__AExternCodeBlock, /* Collection[Collection#0]: Collection[AExternCodeBlock] */
-&type_parser_nodes__AExternCodeBlock, /* SequenceRead#0: AExternCodeBlock */
-}
-};
-/* runtime type Collection[AExternCodeBlock] */
-const struct type type_abstract_collection__Collectionparser_nodes__AExternCodeBlock = {
-1491,
-"Collection[AExternCodeBlock]", /* class_name_string */
-8,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type HashMap[MClass, AClassdef] */
-const struct type type_hash_collection__HashMapmodel__MClassparser_nodes__AClassdef = {
-176,
-"HashMap[MClass, AClassdef]", /* class_name_string */
-2,
+/* runtime type ReduceAction973 */
+const struct type type_parser__ReduceAction973 = {
+-1, /*CAST DEAD*/
+"ReduceAction973", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashMapmodel__MClassparser_nodes__AClassdef,
-3,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-176, /* HashMap[MClass, AClassdef] */
+153, /* ReduceAction */
+1026, /* ReduceAction973 */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MClassparser_nodes__AClassdef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MClass, /* MapRead#0: MClass */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MClass, AClassdef]] */
-&type_hash_collection__HashMapKeysmodel__MClassparser_nodes__AClassdef, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MClass, AClassdef] */
-&type_hash_collection__HashMapValuesmodel__MClassparser_nodes__AClassdef, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MClass, AClassdef] */
-&type_hash_collection__HashMapIteratormodel__MClassparser_nodes__AClassdef, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MClass, AClassdef] */
-&type_model__MClass, /* Map#0: MClass */
-&type_parser_nodes__AClassdef, /* Map#1: AClassdef */
-&type_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MClass, AClassdef] */
-&type_model__MClass, /* HashCollection#0: MClass */
-&type_nullable_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* nullable HashCollection#1: nullable HashMapNode[MClass, AClassdef] */
-&type_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* HashCollection#1: HashMapNode[MClass, AClassdef] */
-&type_nullable_model__MClass, /* nullable HashCollection#0: nullable MClass */
-}
-};
-/* runtime type AModuledecl */
-const struct type type_parser_nodes__AModuledecl = {
-1681,
-"AModuledecl", /* class_name_string */
-6,
+/* runtime type ReduceAction974 */
+const struct type type_parser__ReduceAction974 = {
+-1, /*CAST DEAD*/
+"ReduceAction974", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-177, /* nullable AModuledecl */
-622, /* ANode */
-1328, /* Prod */
-1681, /* AModuledecl */
+153, /* ReduceAction */
+1027, /* ReduceAction974 */
 },
 };
-/* runtime type nullable AModuledecl */
-const struct type type_nullable_parser_nodes__AModuledecl = {
-177,
-"nullable AModuledecl", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AStdImport */
-const struct type type_parser_nodes__AStdImport = {
-1682,
-"AStdImport", /* class_name_string */
-7,
+/* runtime type ReduceAction975 */
+const struct type type_parser__ReduceAction975 = {
+-1, /*CAST DEAD*/
+"ReduceAction975", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1492, /* AImport */
-1682, /* AStdImport */
+153, /* ReduceAction */
+1028, /* ReduceAction975 */
 },
 };
-/* runtime type AImport */
-const struct type type_parser_nodes__AImport = {
-1492,
-"AImport", /* class_name_string */
-6,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ANoImport */
-const struct type type_parser_nodes__ANoImport = {
+/* runtime type ReduceAction976 */
+const struct type type_parser__ReduceAction976 = {
 -1, /*CAST DEAD*/
-"ANoImport", /* class_name_string */
+"ReduceAction976", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1492, /* AImport */
-1683, /* ANoImport */
+153, /* ReduceAction */
+1029, /* ReduceAction976 */
 },
 };
-/* runtime type ATopClassdef */
-const struct type type_parser_nodes__ATopClassdef = {
-1877,
-"ATopClassdef", /* class_name_string */
-7,
+/* runtime type ReduceAction977 */
+const struct type type_parser__ReduceAction977 = {
+-1, /*CAST DEAD*/
+"ReduceAction977", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-178, /* nullable AClassdef */
-622, /* ANode */
-1328, /* Prod */
-1684, /* AClassdef */
-1877, /* ATopClassdef */
+153, /* ReduceAction */
+1030, /* ReduceAction977 */
 },
 };
-/* runtime type AClassdef */
-const struct type type_parser_nodes__AClassdef = {
-1684,
-"AClassdef", /* class_name_string */
-6,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type nullable AClassdef */
-const struct type type_nullable_parser_nodes__AClassdef = {
-178,
-"nullable AClassdef", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AMainClassdef */
-const struct type type_parser_nodes__AMainClassdef = {
-1878,
-"AMainClassdef", /* class_name_string */
-7,
+/* runtime type ReduceAction978 */
+const struct type type_parser__ReduceAction978 = {
+-1, /*CAST DEAD*/
+"ReduceAction978", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-178, /* nullable AClassdef */
-622, /* ANode */
-1328, /* Prod */
-1684, /* AClassdef */
-1878, /* AMainClassdef */
+153, /* ReduceAction */
+1031, /* ReduceAction978 */
 },
 };
-/* runtime type AMainMethPropdef */
-const struct type type_parser_nodes__AMainMethPropdef = {
-2110,
-"AMainMethPropdef", /* class_name_string */
-9,
+/* runtime type ReduceAction979 */
+const struct type type_parser__ReduceAction979 = {
+-1, /*CAST DEAD*/
+"ReduceAction979", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__AMainMethPropdef,
-10,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2044, /* AConcreteMethPropdef */
-2110, /* AMainMethPropdef */
+153, /* ReduceAction */
+1032, /* ReduceAction979 */
 },
 };
-const struct types resolution_table_parser_nodes__AMainMethPropdef = {
-0, /* dummy */
-{
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
-}
-};
-/* runtime type AConcreteMethPropdef */
-const struct type type_parser_nodes__AConcreteMethPropdef = {
+/* runtime type ReduceAction980 */
+const struct type type_parser__ReduceAction980 = {
 -1, /*CAST DEAD*/
-"AConcreteMethPropdef", /* class_name_string */
+"ReduceAction980", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__AConcreteMethPropdef,
-9,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2044, /* AConcreteMethPropdef */
+153, /* ReduceAction */
+1033, /* ReduceAction980 */
 },
 };
-const struct types resolution_table_parser_nodes__AConcreteMethPropdef = {
-0, /* dummy */
-{
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
-}
-};
-/* runtime type AMethPropdef */
-const struct type type_parser_nodes__AMethPropdef = {
-1879,
-"AMethPropdef", /* class_name_string */
-7,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type nullable APropdef */
-const struct type type_nullable_parser_nodes__APropdef = {
-179,
-"nullable APropdef", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type APropdef */
-const struct type type_parser_nodes__APropdef = {
-1685,
-"APropdef", /* class_name_string */
-6,
+/* runtime type ReduceAction981 */
+const struct type type_parser__ReduceAction981 = {
+-1, /*CAST DEAD*/
+"ReduceAction981", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+153, /* ReduceAction */
+1034, /* ReduceAction981 */
+},
 };
-/* runtime type AStdClassdef */
-const struct type type_parser_nodes__AStdClassdef = {
-1880,
-"AStdClassdef", /* class_name_string */
-7,
+/* runtime type ReduceAction982 */
+const struct type type_parser__ReduceAction982 = {
+-1, /*CAST DEAD*/
+"ReduceAction982", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-178, /* nullable AClassdef */
-622, /* ANode */
-1328, /* Prod */
-1684, /* AClassdef */
-1880, /* AStdClassdef */
+153, /* ReduceAction */
+1035, /* ReduceAction982 */
 },
 };
-/* runtime type AAnnotations */
-const struct type type_parser_nodes__AAnnotations = {
-1686,
-"AAnnotations", /* class_name_string */
-6,
+/* runtime type ReduceAction983 */
+const struct type type_parser__ReduceAction983 = {
+-1, /*CAST DEAD*/
+"ReduceAction983", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-180, /* nullable AAnnotations */
-622, /* ANode */
-1328, /* Prod */
-1686, /* AAnnotations */
+153, /* ReduceAction */
+1036, /* ReduceAction983 */
 },
 };
-/* runtime type nullable AAnnotations */
-const struct type type_nullable_parser_nodes__AAnnotations = {
-180,
-"nullable AAnnotations", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ANodes[AAnnotation] */
-const struct type type_parser_nodes__ANodesparser_nodes__AAnnotation = {
+/* runtime type ReduceAction985 */
+const struct type type_parser__ReduceAction985 = {
 -1, /*CAST DEAD*/
-"ANodes[AAnnotation]", /* class_name_string */
+"ReduceAction985", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AAnnotation,
-10,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1493, /* Collection[AAnnotation] */
-1881, /* ANodes[AAnnotation] */
+153, /* ReduceAction */
+1037, /* ReduceAction985 */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AAnnotation = {
-0, /* dummy */
-{
-&type_parser_nodes__AAnnotation, /* Sequence#0: AAnnotation */
-&type_parser_nodes__AAnnotation, /* SimpleCollection#0: AAnnotation */
-&type_array__Arrayparser_nodes__AAnnotation, /* Array[ANodes#0]: Array[AAnnotation] */
-&type_parser_nodes__AAnnotation, /* ANodes#0: AAnnotation */
-NULL, /* empty */
-&type_parser_nodes__AAnnotation, /* RemovableCollection#0: AAnnotation */
-&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[Sequence#0]: Collection[AAnnotation] */
-&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[SimpleCollection#0]: Collection[AAnnotation] */
-&type_parser_nodes__AAnnotation, /* Collection#0: AAnnotation */
-&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[Collection#0]: Collection[AAnnotation] */
-&type_parser_nodes__AAnnotation, /* SequenceRead#0: AAnnotation */
-}
-};
-/* runtime type Collection[AAnnotation] */
-const struct type type_abstract_collection__Collectionparser_nodes__AAnnotation = {
-1493,
-"Collection[AAnnotation]", /* class_name_string */
-8,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AConcreteClasskind */
-const struct type type_parser_nodes__AConcreteClasskind = {
+/* runtime type ReduceAction987 */
+const struct type type_parser__ReduceAction987 = {
 -1, /*CAST DEAD*/
-"AConcreteClasskind", /* class_name_string */
+"ReduceAction987", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-181, /* nullable AClasskind */
-622, /* ANode */
-1328, /* Prod */
-1687, /* AClasskind */
-1882, /* AConcreteClasskind */
+153, /* ReduceAction */
+1038, /* ReduceAction987 */
 },
 };
-/* runtime type nullable AClasskind */
-const struct type type_nullable_parser_nodes__AClasskind = {
-181,
-"nullable AClasskind", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AClasskind */
-const struct type type_parser_nodes__AClasskind = {
-1687,
-"AClasskind", /* class_name_string */
-6,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AAbstractClasskind */
-const struct type type_parser_nodes__AAbstractClasskind = {
+/* runtime type ReduceAction991 */
+const struct type type_parser__ReduceAction991 = {
 -1, /*CAST DEAD*/
-"AAbstractClasskind", /* class_name_string */
+"ReduceAction991", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-181, /* nullable AClasskind */
-622, /* ANode */
-1328, /* Prod */
-1687, /* AClasskind */
-1883, /* AAbstractClasskind */
+153, /* ReduceAction */
+1039, /* ReduceAction991 */
 },
 };
-/* runtime type AInterfaceClasskind */
-const struct type type_parser_nodes__AInterfaceClasskind = {
+/* runtime type ReduceAction993 */
+const struct type type_parser__ReduceAction993 = {
 -1, /*CAST DEAD*/
-"AInterfaceClasskind", /* class_name_string */
+"ReduceAction993", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-181, /* nullable AClasskind */
-622, /* ANode */
-1328, /* Prod */
-1687, /* AClasskind */
-1884, /* AInterfaceClasskind */
+153, /* ReduceAction */
+1040, /* ReduceAction993 */
 },
 };
-/* runtime type AEnumClasskind */
-const struct type type_parser_nodes__AEnumClasskind = {
+/* runtime type ReduceAction1003 */
+const struct type type_parser__ReduceAction1003 = {
 -1, /*CAST DEAD*/
-"AEnumClasskind", /* class_name_string */
+"ReduceAction1003", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-181, /* nullable AClasskind */
-622, /* ANode */
-1328, /* Prod */
-1687, /* AClasskind */
-1885, /* AEnumClasskind */
+153, /* ReduceAction */
+1041, /* ReduceAction1003 */
 },
 };
-/* runtime type AExternClasskind */
-const struct type type_parser_nodes__AExternClasskind = {
+/* runtime type ReduceAction1004 */
+const struct type type_parser__ReduceAction1004 = {
 -1, /*CAST DEAD*/
-"AExternClasskind", /* class_name_string */
+"ReduceAction1004", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-181, /* nullable AClasskind */
-622, /* ANode */
-1328, /* Prod */
-1687, /* AClasskind */
-1886, /* AExternClasskind */
+153, /* ReduceAction */
+1042, /* ReduceAction1004 */
 },
 };
-/* runtime type AFormaldef */
-const struct type type_parser_nodes__AFormaldef = {
-1494,
-"AFormaldef", /* class_name_string */
-6,
+/* runtime type ReduceAction1005 */
+const struct type type_parser__ReduceAction1005 = {
+-1, /*CAST DEAD*/
+"ReduceAction1005", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1494, /* AFormaldef */
+153, /* ReduceAction */
+1043, /* ReduceAction1005 */
 },
 };
-/* runtime type ASuperclass */
-const struct type type_parser_nodes__ASuperclass = {
-1495,
-"ASuperclass", /* class_name_string */
-6,
+/* runtime type ReduceAction1006 */
+const struct type type_parser__ReduceAction1006 = {
+-1, /*CAST DEAD*/
+"ReduceAction1006", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1495, /* ASuperclass */
+153, /* ReduceAction */
+1044, /* ReduceAction1006 */
 },
 };
-/* runtime type ADeferredMethPropdef */
-const struct type type_parser_nodes__ADeferredMethPropdef = {
-2045,
-"ADeferredMethPropdef", /* class_name_string */
-8,
+/* runtime type ReduceAction1007 */
+const struct type type_parser__ReduceAction1007 = {
+-1, /*CAST DEAD*/
+"ReduceAction1007", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ADeferredMethPropdef,
-9,
+NULL, /*NO RESOLUTIONS*/
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2045, /* ADeferredMethPropdef */
+153, /* ReduceAction */
+1045, /* ReduceAction1007 */
 },
 };
-const struct types resolution_table_parser_nodes__ADeferredMethPropdef = {
-0, /* dummy */
-{
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
-}
-};
-/* runtime type AInternMethPropdef */
-const struct type type_parser_nodes__AInternMethPropdef = {
-2046,
-"AInternMethPropdef", /* class_name_string */
-8,
+/* runtime type State */
+const struct type type_parser_work__State = {
+154,
+"State", /* class_name_string */
+2,
 0,
-&resolution_table_parser_nodes__AInternMethPropdef,
-9,
+NULL, /*NO RESOLUTIONS*/
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2046, /* AInternMethPropdef */
+154, /* State */
 },
 };
-const struct types resolution_table_parser_nodes__AInternMethPropdef = {
-0, /* dummy */
-{
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
-}
-};
-/* runtime type AInternNewPropdef */
-const struct type type_parser_nodes__AInternNewPropdef = {
+/* runtime type ANodes[TComment] */
+const struct type type_parser_nodes__ANodesparser_nodes__TComment = {
 -1, /*CAST DEAD*/
-"AInternNewPropdef", /* class_name_string */
+"ANodes[TComment]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__AInternNewPropdef,
-10,
+&resolution_table_parser_nodes__ANodesparser_nodes__TComment,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2046, /* AInternMethPropdef */
-2111, /* AInternNewPropdef */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1384, /* Collection[TComment] */
+1707, /* ANodes[TComment] */
 },
 };
-const struct types resolution_table_parser_nodes__AInternNewPropdef = {
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__TComment = {
 0, /* dummy */
 {
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
+&type_array__Arrayparser_nodes__TComment, /* Array[E]: Array[TComment] */
+&type_parser_nodes__TComment, /* E: TComment */
+&type_parser_nodes__TComment, /* E: TComment */
+&type_abstract_collection__Collectionparser_nodes__TComment, /* Collection[E]: Collection[TComment] */
+&type_array__Arrayparser_nodes__TComment, /* Array[E]: Array[TComment] */
+&type_parser_nodes__TComment, /* E: TComment */
+&type_parser_nodes__TComment, /* E: TComment */
+&type_abstract_collection__Collectionparser_nodes__TComment, /* Collection[E]: Collection[TComment] */
+&type_abstract_collection__Collectionparser_nodes__TComment, /* Collection[E]: Collection[TComment] */
+&type_parser_nodes__TComment, /* E: TComment */
+&type_parser_nodes__TComment, /* E: TComment */
 }
 };
-/* runtime type AExternMethPropdef */
-const struct type type_parser_nodes__AExternMethPropdef = {
+/* runtime type Collection[TComment] */
+const struct type type_abstract_collection__Collectionparser_nodes__TComment = {
+1384,
+"Collection[TComment]", /* class_name_string */
+7,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type Array[AClassdef] */
+const struct type type_array__Arrayparser_nodes__AClassdef = {
 -1, /*CAST DEAD*/
-"AExternMethPropdef", /* class_name_string */
+"Array[AClassdef]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__AExternMethPropdef,
-10,
+&resolution_table_array__Arrayparser_nodes__AClassdef,
+23,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2047, /* AExternPropdef */
-2112, /* AExternMethPropdef */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+590, /* Array[nullable Object] */
+1351, /* Collection[Prod] */
+1345, /* AbstractArrayRead[Object] */
+1529, /* Collection[AClassdef] */
+1512, /* AbstractArray[Object] */
+1684, /* AbstractArrayRead[ANode] */
+-1, /* empty */
+2082, /* AbstractArrayRead[Prod] */
+2083, /* AbstractArray[ANode] */
+1909, /* Array[Object] */
+2186, /* AbstractArrayRead[AClassdef] */
+2209, /* Array[ANode] */
+2210, /* AbstractArray[Prod] */
+2290, /* AbstractArray[AClassdef] */
+-1, /* empty */
+2305, /* Array[Prod] */
+2337, /* Array[AClassdef] */
 },
 };
-const struct types resolution_table_parser_nodes__AExternMethPropdef = {
+const struct types resolution_table_array__Arrayparser_nodes__AClassdef = {
 0, /* dummy */
 {
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
+&type_array__NativeArrayparser_nodes__AClassdef, /* NativeArray[E]: NativeArray[AClassdef] */
+&type_parser_nodes__AClassdef, /* E: AClassdef */
+&type_parser_nodes__AClassdef, /* E: AClassdef */
+&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[E]: Collection[AClassdef] */
+&type_array__Arrayparser_nodes__AClassdef, /* Array[E]: Array[AClassdef] */
+&type_parser_nodes__AClassdef, /* E: AClassdef */
+&type_parser_nodes__AClassdef, /* E: AClassdef */
+&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[E]: Collection[AClassdef] */
+&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[E]: Collection[AClassdef] */
+&type_parser_nodes__AClassdef, /* E: AClassdef */
+&type_array__Arrayparser_nodes__AClassdef, /* Array[E]: Array[AClassdef] */
+&type_array__NativeArrayparser_nodes__AClassdef, /* NativeArray[E]: NativeArray[AClassdef] */
+&type_parser_nodes__AClassdef, /* E: AClassdef */
+&type_parser_nodes__AClassdef, /* E: AClassdef */
+&type_array__Arrayparser_nodes__AClassdef, /* Array[E]: Array[AClassdef] */
+&type_array__AbstractArrayparser_nodes__AClassdef, /* AbstractArray[E]: AbstractArray[AClassdef] */
+&type_array__ArrayIteratorparser_nodes__AClassdef, /* ArrayIterator[E]: ArrayIterator[AClassdef] */
 }
 };
-/* runtime type AExternPropdef */
-const struct type type_parser_nodes__AExternPropdef = {
-2047,
-"AExternPropdef", /* class_name_string */
-8,
+/* runtime type AbstractArrayRead[AClassdef] */
+const struct type type_array__AbstractArrayReadparser_nodes__AClassdef = {
+2186,
+"AbstractArrayRead[AClassdef]", /* class_name_string */
+16,
 0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AAttrPropdef */
-const struct type type_parser_nodes__AAttrPropdef = {
-1887,
-"AAttrPropdef", /* class_name_string */
-7,
+/* runtime type AbstractArray[AClassdef] */
+const struct type type_array__AbstractArrayparser_nodes__AClassdef = {
+2290,
+"AbstractArray[AClassdef]", /* class_name_string */
+19,
 0,
-&resolution_table_parser_nodes__AAttrPropdef,
-8,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1887, /* AAttrPropdef */
-},
-};
-const struct types resolution_table_parser_nodes__AAttrPropdef = {
-0, /* dummy */
-{
-&type_nullable_model__MAttributeDef, /* nullable MPROPDEF: nullable MAttributeDef */
-}
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type AConcreteInitPropdef */
-const struct type type_parser_nodes__AConcreteInitPropdef = {
+/* runtime type ANodes[AFormaldef] */
+const struct type type_parser_nodes__ANodesparser_nodes__AFormaldef = {
 -1, /*CAST DEAD*/
-"AConcreteInitPropdef", /* class_name_string */
+"ANodes[AFormaldef]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__AConcreteInitPropdef,
-10,
+&resolution_table_parser_nodes__ANodesparser_nodes__AFormaldef,
+11,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2044, /* AConcreteMethPropdef */
-2113, /* AConcreteInitPropdef */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1351, /* Collection[Prod] */
+-1, /* empty */
+1541, /* Collection[AFormaldef] */
+1926, /* ANodes[AFormaldef] */
 },
 };
-const struct types resolution_table_parser_nodes__AConcreteInitPropdef = {
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__AFormaldef = {
 0, /* dummy */
 {
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
+&type_array__Arrayparser_nodes__AFormaldef, /* Array[E]: Array[AFormaldef] */
+&type_parser_nodes__AFormaldef, /* E: AFormaldef */
+&type_parser_nodes__AFormaldef, /* E: AFormaldef */
+&type_abstract_collection__Collectionparser_nodes__AFormaldef, /* Collection[E]: Collection[AFormaldef] */
+&type_array__Arrayparser_nodes__AFormaldef, /* Array[E]: Array[AFormaldef] */
+&type_parser_nodes__AFormaldef, /* E: AFormaldef */
+&type_parser_nodes__AFormaldef, /* E: AFormaldef */
+&type_abstract_collection__Collectionparser_nodes__AFormaldef, /* Collection[E]: Collection[AFormaldef] */
+&type_abstract_collection__Collectionparser_nodes__AFormaldef, /* Collection[E]: Collection[AFormaldef] */
+&type_parser_nodes__AFormaldef, /* E: AFormaldef */
+&type_parser_nodes__AFormaldef, /* E: AFormaldef */
 }
 };
-/* runtime type ATypePropdef */
-const struct type type_parser_nodes__ATypePropdef = {
+/* runtime type Collection[AFormaldef] */
+const struct type type_abstract_collection__Collectionparser_nodes__AFormaldef = {
+1541,
+"Collection[AFormaldef]", /* class_name_string */
+9,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ANodes[ASuperclass] */
+const struct type type_parser_nodes__ANodesparser_nodes__ASuperclass = {
 -1, /*CAST DEAD*/
-"ATypePropdef", /* class_name_string */
+"ANodes[ASuperclass]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ATypePropdef,
-8,
+&resolution_table_parser_nodes__ANodesparser_nodes__ASuperclass,
+11,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1888, /* ATypePropdef */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1351, /* Collection[Prod] */
+-1, /* empty */
+1542, /* Collection[ASuperclass] */
+1927, /* ANodes[ASuperclass] */
 },
 };
-const struct types resolution_table_parser_nodes__ATypePropdef = {
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__ASuperclass = {
 0, /* dummy */
 {
-&type_nullable_model__MVirtualTypeDef, /* nullable MPROPDEF: nullable MVirtualTypeDef */
+&type_array__Arrayparser_nodes__ASuperclass, /* Array[E]: Array[ASuperclass] */
+&type_parser_nodes__ASuperclass, /* E: ASuperclass */
+&type_parser_nodes__ASuperclass, /* E: ASuperclass */
+&type_abstract_collection__Collectionparser_nodes__ASuperclass, /* Collection[E]: Collection[ASuperclass] */
+&type_array__Arrayparser_nodes__ASuperclass, /* Array[E]: Array[ASuperclass] */
+&type_parser_nodes__ASuperclass, /* E: ASuperclass */
+&type_parser_nodes__ASuperclass, /* E: ASuperclass */
+&type_abstract_collection__Collectionparser_nodes__ASuperclass, /* Collection[E]: Collection[ASuperclass] */
+&type_abstract_collection__Collectionparser_nodes__ASuperclass, /* Collection[E]: Collection[ASuperclass] */
+&type_parser_nodes__ASuperclass, /* E: ASuperclass */
+&type_parser_nodes__ASuperclass, /* E: ASuperclass */
 }
 };
-/* runtime type AExternInitPropdef */
-const struct type type_parser_nodes__AExternInitPropdef = {
--1, /*CAST DEAD*/
-"AExternInitPropdef", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Collection[ASuperclass] */
+const struct type type_abstract_collection__Collectionparser_nodes__ASuperclass = {
+1542,
+"Collection[ASuperclass]", /* class_name_string */
+9,
 0,
-&resolution_table_parser_nodes__AExternInitPropdef,
-10,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type MMethod */
+const struct type type_model__MMethod = {
+1928,
+"MMethod", /* class_name_string */
+7,
+0,
+&resolution_table_model__MMethod,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-179, /* nullable APropdef */
-622, /* ANode */
-1328, /* Prod */
-1685, /* APropdef */
-1879, /* AMethPropdef */
-2047, /* AExternPropdef */
-2114, /* AExternInitPropdef */
+8, /* nullable PropertyLayoutElement */
+155, /* nullable MProperty */
+615, /* PropertyLayoutElement */
+1046, /* nullable MMethod */
+1543, /* MProperty */
+1928, /* MMethod */
 },
 };
-const struct types resolution_table_parser_nodes__AExternInitPropdef = {
+const struct types resolution_table_model__MMethod = {
 0, /* dummy */
 {
-&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
+&type_array__Arraymodel__MMethodDef, /* Array[MPROPDEF]: Array[MMethodDef] */
+&type_more_collections__HashMap2mmodule__MModulemodel__MTypearray__Arraymodel__MMethodDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MMethodDef]] */
+&type_model__MMethodDef, /* MPROPDEF: MMethodDef */
 }
 };
-/* runtime type AReadAble */
-const struct type type_parser_nodes__AReadAble = {
--1, /*CAST DEAD*/
-"AReadAble", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type MProperty */
+const struct type type_model__MProperty = {
+1543,
+"MProperty", /* class_name_string */
+6,
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-182, /* nullable AAble */
-622, /* ANode */
-1328, /* Prod */
-1688, /* AReadAble */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type nullable MMethod */
+const struct type type_nullable_model__MMethod = {
+1046,
+"nullable MMethod", /* class_name_string */
+5,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type nullable AAble */
-const struct type type_nullable_parser_nodes__AAble = {
-182,
-"nullable AAble", /* class_name_string */
+/* runtime type nullable MProperty */
+const struct type type_nullable_model__MProperty = {
+155,
+"nullable MProperty", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AWriteAble */
-const struct type type_parser_nodes__AWriteAble = {
+/* runtime type Array[MParameter] */
+const struct type type_array__Arraymodel__MParameter = {
 -1, /*CAST DEAD*/
-"AWriteAble", /* class_name_string */
+"Array[MParameter]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_array__Arraymodel__MParameter,
+17,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-182, /* nullable AAble */
-622, /* ANode */
-1328, /* Prod */
-1689, /* AWriteAble */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+1047, /* Collection[MParameter] */
+590, /* Array[nullable Object] */
+-1, /* empty */
+1345, /* AbstractArrayRead[Object] */
+1708, /* AbstractArrayRead[MParameter] */
+1512, /* AbstractArray[Object] */
+2101, /* AbstractArray[MParameter] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1909, /* Array[Object] */
+2222, /* Array[MParameter] */
 },
 };
-/* runtime type APublicVisibility */
-const struct type type_parser_nodes__APublicVisibility = {
--1, /*CAST DEAD*/
-"APublicVisibility", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
+const struct types resolution_table_array__Arraymodel__MParameter = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-183, /* nullable AVisibility */
-622, /* ANode */
-1328, /* Prod */
-1690, /* AVisibility */
-1889, /* APublicVisibility */
-},
+&type_array__NativeArraymodel__MParameter, /* NativeArray[E]: NativeArray[MParameter] */
+&type_model__MParameter, /* E: MParameter */
+&type_model__MParameter, /* E: MParameter */
+&type_abstract_collection__Collectionmodel__MParameter, /* Collection[E]: Collection[MParameter] */
+&type_array__Arraymodel__MParameter, /* Array[E]: Array[MParameter] */
+&type_model__MParameter, /* E: MParameter */
+&type_model__MParameter, /* E: MParameter */
+&type_abstract_collection__Collectionmodel__MParameter, /* Collection[E]: Collection[MParameter] */
+&type_abstract_collection__Collectionmodel__MParameter, /* Collection[E]: Collection[MParameter] */
+&type_model__MParameter, /* E: MParameter */
+&type_array__Arraymodel__MParameter, /* Array[E]: Array[MParameter] */
+&type_array__NativeArraymodel__MParameter, /* NativeArray[E]: NativeArray[MParameter] */
+&type_model__MParameter, /* E: MParameter */
+&type_model__MParameter, /* E: MParameter */
+&type_array__Arraymodel__MParameter, /* Array[E]: Array[MParameter] */
+&type_array__AbstractArraymodel__MParameter, /* AbstractArray[E]: AbstractArray[MParameter] */
+&type_array__ArrayIteratormodel__MParameter, /* ArrayIterator[E]: ArrayIterator[MParameter] */
+}
 };
-/* runtime type nullable AVisibility */
-const struct type type_nullable_parser_nodes__AVisibility = {
-183,
-"nullable AVisibility", /* class_name_string */
-3,
-1,
+/* runtime type Collection[MParameter] */
+const struct type type_abstract_collection__Collectionmodel__MParameter = {
+1047,
+"Collection[MParameter]", /* class_name_string */
+5,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AVisibility */
-const struct type type_parser_nodes__AVisibility = {
-1690,
-"AVisibility", /* class_name_string */
-6,
+/* runtime type AbstractArrayRead[MParameter] */
+const struct type type_array__AbstractArrayReadmodel__MParameter = {
+1708,
+"AbstractArrayRead[MParameter]", /* class_name_string */
+9,
 0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type APrivateVisibility */
-const struct type type_parser_nodes__APrivateVisibility = {
--1, /*CAST DEAD*/
-"APrivateVisibility", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AbstractArray[MParameter] */
+const struct type type_array__AbstractArraymodel__MParameter = {
+2101,
+"AbstractArray[MParameter]", /* class_name_string */
+11,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type MSignature */
+const struct type type_model__MSignature = {
+1385,
+"MSignature", /* class_name_string */
+5,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-183, /* nullable AVisibility */
-622, /* ANode */
-1328, /* Prod */
-1690, /* AVisibility */
-1890, /* APrivateVisibility */
+4, /* nullable MType */
+-1, /* empty */
+609, /* MType */
+1385, /* MSignature */
 },
 };
-/* runtime type AProtectedVisibility */
-const struct type type_parser_nodes__AProtectedVisibility = {
--1, /*CAST DEAD*/
-"AProtectedVisibility", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type MParameter */
+const struct type type_model__MParameter = {
+156,
+"MParameter", /* class_name_string */
+2,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-183, /* nullable AVisibility */
-622, /* ANode */
-1328, /* Prod */
-1690, /* AVisibility */
-1891, /* AProtectedVisibility */
+156, /* MParameter */
 },
 };
-/* runtime type AIntrudeVisibility */
-const struct type type_parser_nodes__AIntrudeVisibility = {
+/* runtime type ScopeVisitor */
+const struct type type_scope__ScopeVisitor = {
 -1, /*CAST DEAD*/
-"AIntrudeVisibility", /* class_name_string */
+"ScopeVisitor", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-183, /* nullable AVisibility */
-622, /* ANode */
-1328, /* Prod */
-1690, /* AVisibility */
-1892, /* AIntrudeVisibility */
+157, /* ScopeVisitor */
 },
 };
-/* runtime type AIdMethid */
-const struct type type_parser_nodes__AIdMethid = {
-1893,
-"AIdMethid", /* class_name_string */
-7,
+/* runtime type Variable */
+const struct type type_scope__Variable = {
+1048,
+"Variable", /* class_name_string */
+3,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1893, /* AIdMethid */
+13, /* nullable Variable */
+1048, /* Variable */
 },
 };
-/* runtime type nullable AMethid */
-const struct type type_nullable_parser_nodes__AMethid = {
-184,
-"nullable AMethid", /* class_name_string */
-3,
+/* runtime type nullable Variable */
+const struct type type_nullable_scope__Variable = {
+13,
+"nullable Variable", /* class_name_string */
+2,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AMethid */
-const struct type type_parser_nodes__AMethid = {
-1691,
-"AMethid", /* class_name_string */
+/* runtime type List[Scope] */
+const struct type type_list__Listscope__Scope = {
+1544,
+"List[Scope]", /* class_name_string */
 6,
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type APlusMethid */
-const struct type type_parser_nodes__APlusMethid = {
--1, /*CAST DEAD*/
-"APlusMethid", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1894, /* APlusMethid */
-},
-};
-/* runtime type AMinusMethid */
-const struct type type_parser_nodes__AMinusMethid = {
--1, /*CAST DEAD*/
-"AMinusMethid", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_list__Listscope__Scope,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1895, /* AMinusMethid */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+1049, /* Collection[Scope] */
+1544, /* List[Scope] */
 },
 };
-/* runtime type AStarMethid */
-const struct type type_parser_nodes__AStarMethid = {
--1, /*CAST DEAD*/
-"AStarMethid", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
+const struct types resolution_table_list__Listscope__Scope = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1896, /* AStarMethid */
-},
+&type_list__ListNodescope__Scope, /* ListNode[E]: ListNode[Scope] */
+&type_scope__Scope, /* E: Scope */
+&type_scope__Scope, /* E: Scope */
+&type_abstract_collection__Collectionscope__Scope, /* Collection[E]: Collection[Scope] */
+&type_array__Arrayscope__Scope, /* Array[E]: Array[Scope] */
+&type_scope__Scope, /* E: Scope */
+&type_scope__Scope, /* E: Scope */
+&type_abstract_collection__Collectionscope__Scope, /* Collection[E]: Collection[Scope] */
+&type_abstract_collection__Collectionscope__Scope, /* Collection[E]: Collection[Scope] */
+&type_scope__Scope, /* E: Scope */
+&type_list__ListIteratorscope__Scope, /* ListIterator[E]: ListIterator[Scope] */
+&type_scope__Scope, /* E: Scope */
+&type_nullable_list__ListNodescope__Scope, /* nullable ListNode[E]: nullable ListNode[Scope] */
+}
 };
-/* runtime type ASlashMethid */
-const struct type type_parser_nodes__ASlashMethid = {
--1, /*CAST DEAD*/
-"ASlashMethid", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Collection[Scope] */
+const struct type type_abstract_collection__Collectionscope__Scope = {
+1049,
+"Collection[Scope]", /* class_name_string */
+5,
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1897, /* ASlashMethid */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type APercentMethid */
-const struct type type_parser_nodes__APercentMethid = {
+/* runtime type FlowVisitor */
+const struct type type_flow__FlowVisitor = {
 -1, /*CAST DEAD*/
-"APercentMethid", /* class_name_string */
+"FlowVisitor", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1898, /* APercentMethid */
+158, /* FlowVisitor */
 },
 };
-/* runtime type AEqMethid */
-const struct type type_parser_nodes__AEqMethid = {
+/* runtime type Array[FlowContext] */
+const struct type type_array__Arrayflow__FlowContext = {
 -1, /*CAST DEAD*/
-"AEqMethid", /* class_name_string */
+"Array[FlowContext]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_array__Arrayflow__FlowContext,
+17,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1899, /* AEqMethid */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+1050, /* Collection[FlowContext] */
+590, /* Array[nullable Object] */
+-1, /* empty */
+1345, /* AbstractArrayRead[Object] */
+1709, /* AbstractArrayRead[FlowContext] */
+1512, /* AbstractArray[Object] */
+2102, /* AbstractArray[FlowContext] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1909, /* Array[Object] */
+2223, /* Array[FlowContext] */
 },
 };
-/* runtime type ANeMethid */
-const struct type type_parser_nodes__ANeMethid = {
--1, /*CAST DEAD*/
-"ANeMethid", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
+const struct types resolution_table_array__Arrayflow__FlowContext = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1900, /* ANeMethid */
-},
+&type_array__NativeArrayflow__FlowContext, /* NativeArray[E]: NativeArray[FlowContext] */
+&type_flow__FlowContext, /* E: FlowContext */
+&type_flow__FlowContext, /* E: FlowContext */
+&type_abstract_collection__Collectionflow__FlowContext, /* Collection[E]: Collection[FlowContext] */
+&type_array__Arrayflow__FlowContext, /* Array[E]: Array[FlowContext] */
+&type_flow__FlowContext, /* E: FlowContext */
+&type_flow__FlowContext, /* E: FlowContext */
+&type_abstract_collection__Collectionflow__FlowContext, /* Collection[E]: Collection[FlowContext] */
+&type_abstract_collection__Collectionflow__FlowContext, /* Collection[E]: Collection[FlowContext] */
+&type_flow__FlowContext, /* E: FlowContext */
+&type_array__Arrayflow__FlowContext, /* Array[E]: Array[FlowContext] */
+&type_array__NativeArrayflow__FlowContext, /* NativeArray[E]: NativeArray[FlowContext] */
+&type_flow__FlowContext, /* E: FlowContext */
+&type_flow__FlowContext, /* E: FlowContext */
+&type_array__Arrayflow__FlowContext, /* Array[E]: Array[FlowContext] */
+&type_array__AbstractArrayflow__FlowContext, /* AbstractArray[E]: AbstractArray[FlowContext] */
+&type_array__ArrayIteratorflow__FlowContext, /* ArrayIterator[E]: ArrayIterator[FlowContext] */
+}
 };
-/* runtime type ALeMethid */
-const struct type type_parser_nodes__ALeMethid = {
--1, /*CAST DEAD*/
-"ALeMethid", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Collection[FlowContext] */
+const struct type type_abstract_collection__Collectionflow__FlowContext = {
+1050,
+"Collection[FlowContext]", /* class_name_string */
+5,
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1901, /* ALeMethid */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type AGeMethid */
-const struct type type_parser_nodes__AGeMethid = {
--1, /*CAST DEAD*/
-"AGeMethid", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AbstractArrayRead[FlowContext] */
+const struct type type_array__AbstractArrayReadflow__FlowContext = {
+1709,
+"AbstractArrayRead[FlowContext]", /* class_name_string */
+9,
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1902, /* AGeMethid */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type ALtMethid */
-const struct type type_parser_nodes__ALtMethid = {
--1, /*CAST DEAD*/
-"ALtMethid", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AbstractArray[FlowContext] */
+const struct type type_array__AbstractArrayflow__FlowContext = {
+2102,
+"AbstractArray[FlowContext]", /* class_name_string */
+11,
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1903, /* ALtMethid */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type AGtMethid */
-const struct type type_parser_nodes__AGtMethid = {
+/* runtime type LocalVarInitVisitor */
+const struct type type_local_var_init__LocalVarInitVisitor = {
 -1, /*CAST DEAD*/
-"AGtMethid", /* class_name_string */
+"LocalVarInitVisitor", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1904, /* AGtMethid */
+159, /* LocalVarInitVisitor */
 },
 };
-/* runtime type ALlMethid */
-const struct type type_parser_nodes__ALlMethid = {
--1, /*CAST DEAD*/
-"ALlMethid", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashSet[Variable] */
+const struct type type_hash_collection__HashSetscope__Variable = {
+1710,
+"HashSet[Variable]", /* class_name_string */
+9,
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_hash_collection__HashSetscope__Variable,
+10,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1905, /* ALlMethid */
+-1, /* empty */
+-1, /* empty */
+83, /* Collection[Object] */
+1051, /* Collection[Variable] */
+598, /* Set[Object] */
+-1, /* empty */
+1350, /* HashSet[Object] */
+1710, /* HashSet[Variable] */
 },
 };
-/* runtime type AGgMethid */
-const struct type type_parser_nodes__AGgMethid = {
--1, /*CAST DEAD*/
-"AGgMethid", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
+const struct types resolution_table_hash_collection__HashSetscope__Variable = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1906, /* AGgMethid */
-},
+&type_hash_collection__HashSetNodescope__Variable, /* HashSetNode[E]: HashSetNode[Variable] */
+&type_hash_collection__HashSetIteratorscope__Variable, /* HashSetIterator[E]: HashSetIterator[Variable] */
+&type_scope__Variable, /* E: Variable */
+&type_abstract_collection__Collectionscope__Variable, /* Collection[E]: Collection[Variable] */
+&type_array__Arrayscope__Variable, /* Array[E]: Array[Variable] */
+&type_abstract_collection__Collectionscope__Variable, /* Collection[E]: Collection[Variable] */
+&type_scope__Variable, /* E: Variable */
+&type_scope__Variable, /* K: Variable */
+&type_abstract_collection__Collectionscope__Variable, /* Collection[E]: Collection[Variable] */
+&type_scope__Variable, /* E: Variable */
+&type_nullable_hash_collection__HashSetNodescope__Variable, /* nullable N: nullable HashSetNode[Variable] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodescope__Variable, /* NativeArray[E]: NativeArray[nullable HashSetNode[Variable]] */
+&type_hash_collection__HashSetNodescope__Variable, /* N: HashSetNode[Variable] */
+&type_nullable_scope__Variable, /* nullable K: nullable Variable */
+&type_abstract_collection__Collectionscope__Variable, /* Collection[E]: Collection[Variable] */
+}
 };
-/* runtime type ABraMethid */
-const struct type type_parser_nodes__ABraMethid = {
+/* runtime type Collection[Variable] */
+const struct type type_abstract_collection__Collectionscope__Variable = {
+1051,
+"Collection[Variable]", /* class_name_string */
+5,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AutoSuperInitVisitor */
+const struct type type_auto_super_init__AutoSuperInitVisitor = {
 -1, /*CAST DEAD*/
-"ABraMethid", /* class_name_string */
+"AutoSuperInitVisitor", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1907, /* ABraMethid */
+160, /* AutoSuperInitVisitor */
 },
 };
-/* runtime type AStarshipMethid */
-const struct type type_parser_nodes__AStarshipMethid = {
+/* runtime type Array[CallSite] */
+const struct type type_array__Arraytyping__CallSite = {
 -1, /*CAST DEAD*/
-"AStarshipMethid", /* class_name_string */
+"Array[CallSite]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_array__Arraytyping__CallSite,
+17,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1908, /* AStarshipMethid */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+625, /* Collection[CallSite] */
+590, /* Array[nullable Object] */
+-1, /* empty */
+1345, /* AbstractArrayRead[Object] */
+1711, /* AbstractArrayRead[CallSite] */
+1512, /* AbstractArray[Object] */
+2103, /* AbstractArray[CallSite] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1909, /* Array[Object] */
+2224, /* Array[CallSite] */
 },
 };
-/* runtime type AAssignMethid */
-const struct type type_parser_nodes__AAssignMethid = {
--1, /*CAST DEAD*/
-"AAssignMethid", /* class_name_string */
--1, /*CAST DEAD*/
+const struct types resolution_table_array__Arraytyping__CallSite = {
+0, /* dummy */
+{
+&type_array__NativeArraytyping__CallSite, /* NativeArray[E]: NativeArray[CallSite] */
+&type_typing__CallSite, /* E: CallSite */
+&type_typing__CallSite, /* E: CallSite */
+&type_abstract_collection__Collectiontyping__CallSite, /* Collection[E]: Collection[CallSite] */
+&type_array__Arraytyping__CallSite, /* Array[E]: Array[CallSite] */
+&type_typing__CallSite, /* E: CallSite */
+&type_typing__CallSite, /* E: CallSite */
+&type_abstract_collection__Collectiontyping__CallSite, /* Collection[E]: Collection[CallSite] */
+&type_abstract_collection__Collectiontyping__CallSite, /* Collection[E]: Collection[CallSite] */
+&type_typing__CallSite, /* E: CallSite */
+&type_array__Arraytyping__CallSite, /* Array[E]: Array[CallSite] */
+&type_array__NativeArraytyping__CallSite, /* NativeArray[E]: NativeArray[CallSite] */
+&type_typing__CallSite, /* E: CallSite */
+&type_typing__CallSite, /* E: CallSite */
+&type_array__Arraytyping__CallSite, /* Array[E]: Array[CallSite] */
+&type_array__AbstractArraytyping__CallSite, /* AbstractArray[E]: AbstractArray[CallSite] */
+&type_array__ArrayIteratortyping__CallSite, /* ArrayIterator[E]: ArrayIterator[CallSite] */
+}
+};
+/* runtime type AbstractArrayRead[CallSite] */
+const struct type type_array__AbstractArrayReadtyping__CallSite = {
+1711,
+"AbstractArrayRead[CallSite]", /* class_name_string */
+9,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AbstractArray[CallSite] */
+const struct type type_array__AbstractArraytyping__CallSite = {
+2103,
+"AbstractArray[CallSite]", /* class_name_string */
+11,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type CallSite */
+const struct type type_typing__CallSite = {
+1052,
+"CallSite", /* class_name_string */
+3,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1909, /* AAssignMethid */
+14, /* nullable CallSite */
+1052, /* CallSite */
 },
 };
-/* runtime type ABraassignMethid */
-const struct type type_parser_nodes__ABraassignMethid = {
+/* runtime type nullable CallSite */
+const struct type type_nullable_typing__CallSite = {
+14,
+"nullable CallSite", /* class_name_string */
+2,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ASTBuilder */
+const struct type type_astbuilder__ASTBuilder = {
 -1, /*CAST DEAD*/
-"ABraassignMethid", /* class_name_string */
+"ASTBuilder", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-184, /* nullable AMethid */
-622, /* ANode */
-1328, /* Prod */
-1691, /* AMethid */
-1910, /* ABraassignMethid */
+161, /* ASTBuilder */
 },
 };
-/* runtime type ASignature */
-const struct type type_parser_nodes__ASignature = {
-1692,
-"ASignature", /* class_name_string */
+/* runtime type POSet[MClass] */
+const struct type type_poset__POSetmodel__MClass = {
+1545,
+"POSet[MClass]", /* class_name_string */
 6,
 0,
-NULL, /*NO RESOLUTIONS*/
+&resolution_table_poset__POSetmodel__MClass,
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-185, /* nullable ASignature */
-622, /* ANode */
-1328, /* Prod */
-1692, /* ASignature */
+91, /* Collection[nullable MClass] */
+-1, /* empty */
+83, /* Collection[Object] */
+1366, /* Collection[MClass] */
+1545, /* POSet[MClass] */
 },
 };
-/* runtime type nullable ASignature */
-const struct type type_nullable_parser_nodes__ASignature = {
-185,
-"nullable ASignature", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+const struct types resolution_table_poset__POSetmodel__MClass = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapmodel__MClassposet__POSetElementmodel__MClass, /* HashMap[E, POSetElement[E]]: HashMap[MClass, POSetElement[MClass]] */
+&type_model__MClass, /* E: MClass */
+&type_model__MClass, /* E: MClass */
+&type_abstract_collection__Collectionmodel__MClass, /* Collection[E]: Collection[MClass] */
+&type_array__Arraymodel__MClass, /* Array[E]: Array[MClass] */
+&type_poset__POSetElementmodel__MClass, /* POSetElement[E]: POSetElement[MClass] */
+&type_abstract_collection__Collectionmodel__MClass, /* Collection[E]: Collection[MClass] */
+&type_array__Arraymodel__MClass, /* Array[COMPARED]: Array[MClass] */
+}
 };
-/* runtime type ANodes[AParam] */
-const struct type type_parser_nodes__ANodesparser_nodes__AParam = {
+/* runtime type SeparateErasureCompilerVisitor */
+const struct type type_separate_erasure_compiler__SeparateErasureCompilerVisitor = {
 -1, /*CAST DEAD*/
-"ANodes[AParam]", /* class_name_string */
+"SeparateErasureCompilerVisitor", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AParam,
-10,
+&resolution_table_separate_erasure_compiler__SeparateErasureCompilerVisitor,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1496, /* Collection[AParam] */
-1911, /* ANodes[AParam] */
+149, /* AbstractCompilerVisitor */
+638, /* SeparateCompilerVisitor */
+1386, /* SeparateErasureCompilerVisitor */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AParam = {
+const struct types resolution_table_separate_erasure_compiler__SeparateErasureCompilerVisitor = {
 0, /* dummy */
 {
-&type_parser_nodes__AParam, /* Sequence#0: AParam */
-&type_parser_nodes__AParam, /* SimpleCollection#0: AParam */
-&type_array__Arrayparser_nodes__AParam, /* Array[ANodes#0]: Array[AParam] */
-&type_parser_nodes__AParam, /* ANodes#0: AParam */
-NULL, /* empty */
-&type_parser_nodes__AParam, /* RemovableCollection#0: AParam */
-&type_abstract_collection__Collectionparser_nodes__AParam, /* Collection[Sequence#0]: Collection[AParam] */
-&type_abstract_collection__Collectionparser_nodes__AParam, /* Collection[SimpleCollection#0]: Collection[AParam] */
-&type_parser_nodes__AParam, /* Collection#0: AParam */
-&type_abstract_collection__Collectionparser_nodes__AParam, /* Collection[Collection#0]: Collection[AParam] */
-&type_parser_nodes__AParam, /* SequenceRead#0: AParam */
+&type_separate_compiler__SeparateCompiler, /* COMPILER: SeparateCompiler */
 }
 };
-/* runtime type Collection[AParam] */
-const struct type type_abstract_collection__Collectionparser_nodes__AParam = {
-1496,
-"Collection[AParam]", /* class_name_string */
-8,
+/* runtime type VirtualRuntimeFunction */
+const struct type type_separate_compiler__VirtualRuntimeFunction = {
+-1, /*CAST DEAD*/
+"VirtualRuntimeFunction", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+&resolution_table_separate_compiler__VirtualRuntimeFunction,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+162, /* VirtualRuntimeFunction */
+},
 };
-/* runtime type AParam */
-const struct type type_parser_nodes__AParam = {
-1497,
-"AParam", /* class_name_string */
-6,
+const struct types resolution_table_separate_compiler__VirtualRuntimeFunction = {
+0, /* dummy */
+{
+&type_abstract_compiler__AbstractCompiler, /* COMPILER: AbstractCompiler */
+}
+};
+/* runtime type RuntimeVariable */
+const struct type type_abstract_compiler__RuntimeVariable = {
+163,
+"RuntimeVariable", /* class_name_string */
+2,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1497, /* AParam */
+163, /* RuntimeVariable */
 },
 };
-/* runtime type AExternCalls */
-const struct type type_parser_nodes__AExternCalls = {
+/* runtime type SeparateRuntimeFunction */
+const struct type type_separate_compiler__SeparateRuntimeFunction = {
 -1, /*CAST DEAD*/
-"AExternCalls", /* class_name_string */
+"SeparateRuntimeFunction", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_separate_compiler__SeparateRuntimeFunction,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-186, /* nullable AExternCalls */
-622, /* ANode */
-1328, /* Prod */
-1693, /* AExternCalls */
+164, /* SeparateRuntimeFunction */
 },
 };
-/* runtime type nullable AExternCalls */
-const struct type type_nullable_parser_nodes__AExternCalls = {
-186,
-"nullable AExternCalls", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+const struct types resolution_table_separate_compiler__SeparateRuntimeFunction = {
+0, /* dummy */
+{
+&type_abstract_compiler__AbstractCompiler, /* COMPILER: AbstractCompiler */
+}
 };
-/* runtime type ANodes[AExternCall] */
-const struct type type_parser_nodes__ANodesparser_nodes__AExternCall = {
--1, /*CAST DEAD*/
-"ANodes[AExternCall]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashMap[MClassType, Set[MType]] */
+const struct type type_hash_collection__HashMapmodel__MClassTypeabstract_collection__Setmodel__MType = {
+1387,
+"HashMap[MClassType, Set[MType]]", /* class_name_string */
+4,
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AExternCall,
-10,
+&resolution_table_hash_collection__HashMapmodel__MClassTypeabstract_collection__Setmodel__MType,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1498, /* Collection[AExternCall] */
-1912, /* ANodes[AExternCall] */
+165, /* Map[MType, Set[MType]] */
+1053, /* HashMap[MType, Set[MType]] */
+1387, /* HashMap[MClassType, Set[MType]] */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AExternCall = {
+const struct types resolution_table_hash_collection__HashMapmodel__MClassTypeabstract_collection__Setmodel__MType = {
 0, /* dummy */
 {
-&type_parser_nodes__AExternCall, /* Sequence#0: AExternCall */
-&type_parser_nodes__AExternCall, /* SimpleCollection#0: AExternCall */
-&type_array__Arrayparser_nodes__AExternCall, /* Array[ANodes#0]: Array[AExternCall] */
-&type_parser_nodes__AExternCall, /* ANodes#0: AExternCall */
+&type_hash_collection__HashMapKeysmodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapKeys[K, V]: HashMapKeys[MClassType, Set[MType]] */
+&type_hash_collection__HashMapValuesmodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapValues[K, V]: HashMapValues[MClassType, Set[MType]] */
+&type_model__MClassType, /* K: MClassType */
+&type_hash_collection__HashMapIteratormodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapIterator[K, V]: HashMapIterator[MClassType, Set[MType]] */
+&type_model__MClassType, /* K: MClassType */
+&type_abstract_collection__Setmodel__MType, /* V: Set[MType] */
+&type_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* HashMapNode[K, V]: HashMapNode[MClassType, Set[MType]] */
+&type_model__MClassType, /* K: MClassType */
+NULL, /* empty */
 NULL, /* empty */
-&type_parser_nodes__AExternCall, /* RemovableCollection#0: AExternCall */
-&type_abstract_collection__Collectionparser_nodes__AExternCall, /* Collection[Sequence#0]: Collection[AExternCall] */
-&type_abstract_collection__Collectionparser_nodes__AExternCall, /* Collection[SimpleCollection#0]: Collection[AExternCall] */
-&type_parser_nodes__AExternCall, /* Collection#0: AExternCall */
-&type_abstract_collection__Collectionparser_nodes__AExternCall, /* Collection[Collection#0]: Collection[AExternCall] */
-&type_parser_nodes__AExternCall, /* SequenceRead#0: AExternCall */
+&type_nullable_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* nullable N: nullable HashMapNode[MClassType, Set[MType]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClassType, Set[MType]]] */
+&type_hash_collection__HashMapNodemodel__MClassTypeabstract_collection__Setmodel__MType, /* N: HashMapNode[MClassType, Set[MType]] */
+&type_nullable_model__MClassType, /* nullable K: nullable MClassType */
 }
 };
-/* runtime type Collection[AExternCall] */
-const struct type type_abstract_collection__Collectionparser_nodes__AExternCall = {
-1498,
-"Collection[AExternCall]", /* class_name_string */
-8,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ASuperExternCall */
-const struct type type_parser_nodes__ASuperExternCall = {
--1, /*CAST DEAD*/
-"ASuperExternCall", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashMap[MType, Set[MType]] */
+const struct type type_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType = {
+1053,
+"HashMap[MType, Set[MType]]", /* class_name_string */
+3,
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-187, /* nullable AExternCall */
-622, /* ANode */
-1328, /* Prod */
-1694, /* AExternCall */
-1913, /* ASuperExternCall */
+165, /* Map[MType, Set[MType]] */
+1053, /* HashMap[MType, Set[MType]] */
 },
 };
-/* runtime type nullable AExternCall */
-const struct type type_nullable_parser_nodes__AExternCall = {
-187,
-"nullable AExternCall", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+const struct types resolution_table_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapKeysmodel__MTypeabstract_collection__Setmodel__MType, /* HashMapKeys[K, V]: HashMapKeys[MType, Set[MType]] */
+&type_hash_collection__HashMapValuesmodel__MTypeabstract_collection__Setmodel__MType, /* HashMapValues[K, V]: HashMapValues[MType, Set[MType]] */
+&type_model__MType, /* K: MType */
+&type_hash_collection__HashMapIteratormodel__MTypeabstract_collection__Setmodel__MType, /* HashMapIterator[K, V]: HashMapIterator[MType, Set[MType]] */
+&type_model__MType, /* K: MType */
+&type_abstract_collection__Setmodel__MType, /* V: Set[MType] */
+&type_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* HashMapNode[K, V]: HashMapNode[MType, Set[MType]] */
+&type_model__MType, /* K: MType */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* nullable N: nullable HashMapNode[MType, Set[MType]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, Set[MType]]] */
+&type_hash_collection__HashMapNodemodel__MTypeabstract_collection__Setmodel__MType, /* N: HashMapNode[MType, Set[MType]] */
+&type_nullable_model__MType, /* nullable K: nullable MType */
+}
 };
-/* runtime type AExternCall */
-const struct type type_parser_nodes__AExternCall = {
-1694,
-"AExternCall", /* class_name_string */
-6,
+/* runtime type Map[MType, Set[MType]] */
+const struct type type_abstract_collection__Mapmodel__MTypeabstract_collection__Setmodel__MType = {
+165,
+"Map[MType, Set[MType]]", /* class_name_string */
+2,
 0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type ALocalPropExternCall */
-const struct type type_parser_nodes__ALocalPropExternCall = {
+/* runtime type BucketsColorer[MType, MType] */
+const struct type type_coloring__BucketsColorermodel__MTypemodel__MType = {
 -1, /*CAST DEAD*/
-"ALocalPropExternCall", /* class_name_string */
+"BucketsColorer[MType, MType]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_coloring__BucketsColorermodel__MTypemodel__MType,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-187, /* nullable AExternCall */
-622, /* ANode */
-1328, /* Prod */
-1694, /* AExternCall */
-1914, /* ALocalPropExternCall */
+166, /* BucketsColorer[MType, MType] */
 },
 };
-/* runtime type AFullPropExternCall */
-const struct type type_parser_nodes__AFullPropExternCall = {
--1, /*CAST DEAD*/
-"AFullPropExternCall", /* class_name_string */
--1, /*CAST DEAD*/
+const struct types resolution_table_coloring__BucketsColorermodel__MTypemodel__MType = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapmodel__MTypekernel__Int, /* HashMap[E, Int]: HashMap[MType, Int] */
+&type_hash_collection__HashMapmodel__MTypeabstract_collection__Setmodel__MType, /* HashMap[E, Set[E]]: HashMap[MType, Set[MType]] */
+&type_abstract_collection__Mapmodel__MTypeabstract_collection__Setmodel__MType, /* Map[H, Set[E]]: Map[MType, Set[MType]] */
+&type_model__MType, /* E: MType */
+&type_hash_collection__HashSetmodel__MType, /* HashSet[E]: HashSet[MType] */
+}
+};
+/* runtime type HashMap[MType, Int] */
+const struct type type_hash_collection__HashMapmodel__MTypekernel__Int = {
+167,
+"HashMap[MType, Int]", /* class_name_string */
+2,
+0,
+&resolution_table_hash_collection__HashMapmodel__MTypekernel__Int,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+167, /* HashMap[MType, Int] */
+},
+};
+const struct types resolution_table_hash_collection__HashMapmodel__MTypekernel__Int = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapKeysmodel__MTypekernel__Int, /* HashMapKeys[K, V]: HashMapKeys[MType, Int] */
+&type_hash_collection__HashMapValuesmodel__MTypekernel__Int, /* HashMapValues[K, V]: HashMapValues[MType, Int] */
+&type_model__MType, /* K: MType */
+&type_hash_collection__HashMapIteratormodel__MTypekernel__Int, /* HashMapIterator[K, V]: HashMapIterator[MType, Int] */
+&type_model__MType, /* K: MType */
+&type_kernel__Int, /* V: Int */
+&type_hash_collection__HashMapNodemodel__MTypekernel__Int, /* HashMapNode[K, V]: HashMapNode[MType, Int] */
+&type_model__MType, /* K: MType */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable_hash_collection__HashMapNodemodel__MTypekernel__Int, /* nullable N: nullable HashMapNode[MType, Int] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypekernel__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, Int]] */
+&type_hash_collection__HashMapNodemodel__MTypekernel__Int, /* N: HashMapNode[MType, Int] */
+&type_nullable_model__MType, /* nullable K: nullable MType */
+}
+};
+/* runtime type HashMap[MClass, Array[nullable MClass]] */
+const struct type type_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass = {
+168,
+"HashMap[MClass, Array[nullable MClass]]", /* class_name_string */
+2,
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-187, /* nullable AExternCall */
-622, /* ANode */
-1328, /* Prod */
-1694, /* AExternCall */
-1915, /* AFullPropExternCall */
+168, /* HashMap[MClass, Array[nullable MClass]] */
 },
 };
-/* runtime type AInitPropExternCall */
-const struct type type_parser_nodes__AInitPropExternCall = {
--1, /*CAST DEAD*/
-"AInitPropExternCall", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
+const struct types resolution_table_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-187, /* nullable AExternCall */
-622, /* ANode */
-1328, /* Prod */
-1694, /* AExternCall */
-1916, /* AInitPropExternCall */
-},
+&type_hash_collection__HashMapKeysmodel__MClassarray__Arraynullable_model__MClass, /* HashMapKeys[K, V]: HashMapKeys[MClass, Array[nullable MClass]] */
+&type_hash_collection__HashMapValuesmodel__MClassarray__Arraynullable_model__MClass, /* HashMapValues[K, V]: HashMapValues[MClass, Array[nullable MClass]] */
+&type_model__MClass, /* K: MClass */
+&type_hash_collection__HashMapIteratormodel__MClassarray__Arraynullable_model__MClass, /* HashMapIterator[K, V]: HashMapIterator[MClass, Array[nullable MClass]] */
+&type_model__MClass, /* K: MClass */
+&type_array__Arraynullable_model__MClass, /* V: Array[nullable MClass] */
+&type_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* HashMapNode[K, V]: HashMapNode[MClass, Array[nullable MClass]] */
+&type_model__MClass, /* K: MClass */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* nullable N: nullable HashMapNode[MClass, Array[nullable MClass]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Array[nullable MClass]]] */
+&type_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MClass, /* N: HashMapNode[MClass, Array[nullable MClass]] */
+&type_nullable_model__MClass, /* nullable K: nullable MClass */
+}
 };
-/* runtime type ACastAsExternCall */
-const struct type type_parser_nodes__ACastAsExternCall = {
+/* runtime type BashCompletion */
+const struct type type_toolcontext__BashCompletion = {
 -1, /*CAST DEAD*/
-"ACastAsExternCall", /* class_name_string */
+"BashCompletion", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-187, /* nullable AExternCall */
-622, /* ANode */
-1328, /* Prod */
-1694, /* AExternCall */
-1917, /* ACastAsExternCall */
+-1, /* empty */
+-1, /* empty */
+81, /* Streamable */
+1054, /* BashCompletion */
 },
 };
-/* runtime type AAsNullableExternCall */
-const struct type type_parser_nodes__AAsNullableExternCall = {
--1, /*CAST DEAD*/
-"AAsNullableExternCall", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AModule */
+const struct type type_parser_nodes__AModule = {
+1712,
+"AModule", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-187, /* nullable AExternCall */
-622, /* ANode */
-1328, /* Prod */
-1694, /* AExternCall */
-1918, /* AAsNullableExternCall */
+12, /* nullable ANode */
+169, /* nullable AModule */
+632, /* ANode */
+1380, /* Prod */
+1712, /* AModule */
 },
 };
-/* runtime type AAsNotNullableExternCall */
-const struct type type_parser_nodes__AAsNotNullableExternCall = {
+/* runtime type nullable AModule */
+const struct type type_nullable_parser_nodes__AModule = {
+169,
+"nullable AModule", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ANodes[AExternCodeBlock] */
+const struct type type_parser_nodes__ANodesparser_nodes__AExternCodeBlock = {
 -1, /*CAST DEAD*/
-"AAsNotNullableExternCall", /* class_name_string */
+"ANodes[AExternCodeBlock]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_parser_nodes__ANodesparser_nodes__AExternCodeBlock,
+11,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-187, /* nullable AExternCall */
-622, /* ANode */
-1328, /* Prod */
-1694, /* AExternCall */
-1919, /* AAsNotNullableExternCall */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1351, /* Collection[Prod] */
+-1, /* empty */
+1546, /* Collection[AExternCodeBlock] */
+1929, /* ANodes[AExternCodeBlock] */
 },
 };
-/* runtime type AInLanguage */
-const struct type type_parser_nodes__AInLanguage = {
--1, /*CAST DEAD*/
-"AInLanguage", /* class_name_string */
--1, /*CAST DEAD*/
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__AExternCodeBlock = {
+0, /* dummy */
+{
+&type_array__Arrayparser_nodes__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_parser_nodes__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_parser_nodes__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_abstract_collection__Collectionparser_nodes__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_array__Arrayparser_nodes__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_parser_nodes__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_parser_nodes__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_abstract_collection__Collectionparser_nodes__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_abstract_collection__Collectionparser_nodes__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_parser_nodes__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_parser_nodes__AExternCodeBlock, /* E: AExternCodeBlock */
+}
+};
+/* runtime type Collection[AExternCodeBlock] */
+const struct type type_abstract_collection__Collectionparser_nodes__AExternCodeBlock = {
+1546,
+"Collection[AExternCodeBlock]", /* class_name_string */
+9,
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type HashMap[MClass, AClassdef] */
+const struct type type_hash_collection__HashMapmodel__MClassparser_nodes__AClassdef = {
+170,
+"HashMap[MClass, AClassdef]", /* class_name_string */
+2,
+0,
+&resolution_table_hash_collection__HashMapmodel__MClassparser_nodes__AClassdef,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-188, /* nullable AInLanguage */
-622, /* ANode */
-1328, /* Prod */
-1695, /* AInLanguage */
+170, /* HashMap[MClass, AClassdef] */
 },
 };
-/* runtime type nullable AInLanguage */
-const struct type type_nullable_parser_nodes__AInLanguage = {
-188,
-"nullable AInLanguage", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+const struct types resolution_table_hash_collection__HashMapmodel__MClassparser_nodes__AClassdef = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapKeysmodel__MClassparser_nodes__AClassdef, /* HashMapKeys[K, V]: HashMapKeys[MClass, AClassdef] */
+&type_hash_collection__HashMapValuesmodel__MClassparser_nodes__AClassdef, /* HashMapValues[K, V]: HashMapValues[MClass, AClassdef] */
+&type_model__MClass, /* K: MClass */
+&type_hash_collection__HashMapIteratormodel__MClassparser_nodes__AClassdef, /* HashMapIterator[K, V]: HashMapIterator[MClass, AClassdef] */
+&type_model__MClass, /* K: MClass */
+&type_parser_nodes__AClassdef, /* V: AClassdef */
+&type_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* HashMapNode[K, V]: HashMapNode[MClass, AClassdef] */
+&type_model__MClass, /* K: MClass */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* nullable N: nullable HashMapNode[MClass, AClassdef] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, AClassdef]] */
+&type_hash_collection__HashMapNodemodel__MClassparser_nodes__AClassdef, /* N: HashMapNode[MClass, AClassdef] */
+&type_nullable_model__MClass, /* nullable K: nullable MClass */
+}
 };
-/* runtime type AExternCodeBlock */
-const struct type type_parser_nodes__AExternCodeBlock = {
-1696,
-"AExternCodeBlock", /* class_name_string */
+/* runtime type AModuledecl */
+const struct type type_parser_nodes__AModuledecl = {
+1713,
+"AModuledecl", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -4681,99 +4756,73 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-189, /* nullable AExternCodeBlock */
-622, /* ANode */
-1328, /* Prod */
-1696, /* AExternCodeBlock */
+12, /* nullable ANode */
+171, /* nullable AModuledecl */
+632, /* ANode */
+1380, /* Prod */
+1713, /* AModuledecl */
 },
 };
-/* runtime type nullable AExternCodeBlock */
-const struct type type_nullable_parser_nodes__AExternCodeBlock = {
-189,
-"nullable AExternCodeBlock", /* class_name_string */
+/* runtime type nullable AModuledecl */
+const struct type type_nullable_parser_nodes__AModuledecl = {
+171,
+"nullable AModuledecl", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AType */
-const struct type type_parser_nodes__AType = {
-1697,
-"AType", /* class_name_string */
-6,
+/* runtime type AStdImport */
+const struct type type_parser_nodes__AStdImport = {
+1714,
+"AStdImport", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-190, /* nullable AType */
-622, /* ANode */
-1328, /* Prod */
-1697, /* AType */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1380, /* Prod */
+1547, /* AImport */
+1714, /* AStdImport */
 },
 };
-/* runtime type nullable AType */
-const struct type type_nullable_parser_nodes__AType = {
-190,
-"nullable AType", /* class_name_string */
-3,
-1,
+/* runtime type AImport */
+const struct type type_parser_nodes__AImport = {
+1547,
+"AImport", /* class_name_string */
+6,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type ANodes[AType] */
-const struct type type_parser_nodes__ANodesparser_nodes__AType = {
+/* runtime type ANoImport */
+const struct type type_parser_nodes__ANoImport = {
 -1, /*CAST DEAD*/
-"ANodes[AType]", /* class_name_string */
+"ANoImport", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AType,
-10,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
+12, /* nullable ANode */
 -1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1499, /* Collection[AType] */
-1920, /* ANodes[AType] */
+632, /* ANode */
+1380, /* Prod */
+1547, /* AImport */
+1715, /* ANoImport */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AType = {
-0, /* dummy */
-{
-&type_parser_nodes__AType, /* Sequence#0: AType */
-&type_parser_nodes__AType, /* SimpleCollection#0: AType */
-&type_array__Arrayparser_nodes__AType, /* Array[ANodes#0]: Array[AType] */
-&type_parser_nodes__AType, /* ANodes#0: AType */
-NULL, /* empty */
-&type_parser_nodes__AType, /* RemovableCollection#0: AType */
-&type_abstract_collection__Collectionparser_nodes__AType, /* Collection[Sequence#0]: Collection[AType] */
-&type_abstract_collection__Collectionparser_nodes__AType, /* Collection[SimpleCollection#0]: Collection[AType] */
-&type_parser_nodes__AType, /* Collection#0: AType */
-&type_abstract_collection__Collectionparser_nodes__AType, /* Collection[Collection#0]: Collection[AType] */
-&type_parser_nodes__AType, /* SequenceRead#0: AType */
-}
-};
-/* runtime type Collection[AType] */
-const struct type type_abstract_collection__Collectionparser_nodes__AType = {
-1499,
-"Collection[AType]", /* class_name_string */
-8,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ABlockExpr */
-const struct type type_parser_nodes__ABlockExpr = {
-1921,
-"ABlockExpr", /* class_name_string */
+/* runtime type ATopClassdef */
+const struct type type_parser_nodes__ATopClassdef = {
+1930,
+"ATopClassdef", /* class_name_string */
 7,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -4781,216 +4830,264 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1921, /* ABlockExpr */
+12, /* nullable ANode */
+172, /* nullable AClassdef */
+632, /* ANode */
+1380, /* Prod */
+1716, /* AClassdef */
+1930, /* ATopClassdef */
 },
 };
-/* runtime type AExpr */
-const struct type type_parser_nodes__AExpr = {
-1698,
-"AExpr", /* class_name_string */
+/* runtime type AClassdef */
+const struct type type_parser_nodes__AClassdef = {
+1716,
+"AClassdef", /* class_name_string */
 6,
 0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type nullable AExpr */
-const struct type type_nullable_parser_nodes__AExpr = {
-191,
-"nullable AExpr", /* class_name_string */
+/* runtime type nullable AClassdef */
+const struct type type_nullable_parser_nodes__AClassdef = {
+172,
+"nullable AClassdef", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type ANodes[AExpr] */
-const struct type type_parser_nodes__ANodesparser_nodes__AExpr = {
--1, /*CAST DEAD*/
-"ANodes[AExpr]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AMainClassdef */
+const struct type type_parser_nodes__AMainClassdef = {
+1931,
+"AMainClassdef", /* class_name_string */
+7,
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AExpr,
-10,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1500, /* Collection[AExpr] */
-1922, /* ANodes[AExpr] */
+12, /* nullable ANode */
+172, /* nullable AClassdef */
+632, /* ANode */
+1380, /* Prod */
+1716, /* AClassdef */
+1931, /* AMainClassdef */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AExpr = {
-0, /* dummy */
-{
-&type_parser_nodes__AExpr, /* Sequence#0: AExpr */
-&type_parser_nodes__AExpr, /* SimpleCollection#0: AExpr */
-&type_array__Arrayparser_nodes__AExpr, /* Array[ANodes#0]: Array[AExpr] */
-&type_parser_nodes__AExpr, /* ANodes#0: AExpr */
-NULL, /* empty */
-&type_parser_nodes__AExpr, /* RemovableCollection#0: AExpr */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Sequence#0]: Collection[AExpr] */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[SimpleCollection#0]: Collection[AExpr] */
-&type_parser_nodes__AExpr, /* Collection#0: AExpr */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Collection#0]: Collection[AExpr] */
-&type_parser_nodes__AExpr, /* SequenceRead#0: AExpr */
-}
-};
-/* runtime type Collection[AExpr] */
-const struct type type_abstract_collection__Collectionparser_nodes__AExpr = {
-1500,
-"Collection[AExpr]", /* class_name_string */
+/* runtime type AMainMethPropdef */
+const struct type type_parser_nodes__AMainMethPropdef = {
+2104,
+"AMainMethPropdef", /* class_name_string */
 8,
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AReturnExpr */
-const struct type type_parser_nodes__AReturnExpr = {
--1, /*CAST DEAD*/
-"AReturnExpr", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_parser_nodes__AMainMethPropdef,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1923, /* AReturnExpr */
+12, /* nullable ANode */
+173, /* nullable APropdef */
+632, /* ANode */
+1380, /* Prod */
+1717, /* APropdef */
+1932, /* AMethPropdef */
+2104, /* AMainMethPropdef */
 },
 };
-/* runtime type ABreakExpr */
-const struct type type_parser_nodes__ABreakExpr = {
-1924,
-"ABreakExpr", /* class_name_string */
+const struct types resolution_table_parser_nodes__AMainMethPropdef = {
+0, /* dummy */
+{
+&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
+}
+};
+/* runtime type AMethPropdef */
+const struct type type_parser_nodes__AMethPropdef = {
+1932,
+"AMethPropdef", /* class_name_string */
 7,
 0,
-NULL, /*NO RESOLUTIONS*/
+&resolution_table_parser_nodes__AMethPropdef,
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1924, /* ABreakExpr */
+12, /* nullable ANode */
+173, /* nullable APropdef */
+632, /* ANode */
+1380, /* Prod */
+1717, /* APropdef */
+1932, /* AMethPropdef */
 },
 };
-/* runtime type AAbortExpr */
-const struct type type_parser_nodes__AAbortExpr = {
--1, /*CAST DEAD*/
-"AAbortExpr", /* class_name_string */
--1, /*CAST DEAD*/
+const struct types resolution_table_parser_nodes__AMethPropdef = {
+0, /* dummy */
+{
+&type_nullable_model__MMethodDef, /* nullable MPROPDEF: nullable MMethodDef */
+}
+};
+/* runtime type nullable APropdef */
+const struct type type_nullable_parser_nodes__APropdef = {
+173,
+"nullable APropdef", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type APropdef */
+const struct type type_parser_nodes__APropdef = {
+1717,
+"APropdef", /* class_name_string */
+6,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AStdClassdef */
+const struct type type_parser_nodes__AStdClassdef = {
+1933,
+"AStdClassdef", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1925, /* AAbortExpr */
+12, /* nullable ANode */
+172, /* nullable AClassdef */
+632, /* ANode */
+1380, /* Prod */
+1716, /* AClassdef */
+1933, /* AStdClassdef */
 },
 };
-/* runtime type AContinueExpr */
-const struct type type_parser_nodes__AContinueExpr = {
-1926,
-"AContinueExpr", /* class_name_string */
-7,
+/* runtime type AAnnotations */
+const struct type type_parser_nodes__AAnnotations = {
+1718,
+"AAnnotations", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1926, /* AContinueExpr */
+12, /* nullable ANode */
+174, /* nullable AAnnotations */
+632, /* ANode */
+1380, /* Prod */
+1718, /* AAnnotations */
 },
 };
-/* runtime type ACallExpr */
-const struct type type_parser_nodes__ACallExpr = {
-1927,
-"ACallExpr", /* class_name_string */
-7,
+/* runtime type nullable AAnnotations */
+const struct type type_nullable_parser_nodes__AAnnotations = {
+174,
+"nullable AAnnotations", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ANodes[AAnnotation] */
+const struct type type_parser_nodes__ANodesparser_nodes__AAnnotation = {
+-1, /*CAST DEAD*/
+"ANodes[AAnnotation]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_parser_nodes__ANodesparser_nodes__AAnnotation,
+11,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1927, /* ACallExpr */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1351, /* Collection[Prod] */
+-1, /* empty */
+1522, /* Collection[AAnnotation] */
+1934, /* ANodes[AAnnotation] */
 },
 };
-/* runtime type AImplicitSelfExpr */
-const struct type type_parser_nodes__AImplicitSelfExpr = {
-2048,
-"AImplicitSelfExpr", /* class_name_string */
-8,
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__AAnnotation = {
+0, /* dummy */
+{
+&type_array__Arrayparser_nodes__AAnnotation, /* Array[E]: Array[AAnnotation] */
+&type_parser_nodes__AAnnotation, /* E: AAnnotation */
+&type_parser_nodes__AAnnotation, /* E: AAnnotation */
+&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[E]: Collection[AAnnotation] */
+&type_array__Arrayparser_nodes__AAnnotation, /* Array[E]: Array[AAnnotation] */
+&type_parser_nodes__AAnnotation, /* E: AAnnotation */
+&type_parser_nodes__AAnnotation, /* E: AAnnotation */
+&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[E]: Collection[AAnnotation] */
+&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[E]: Collection[AAnnotation] */
+&type_parser_nodes__AAnnotation, /* E: AAnnotation */
+&type_parser_nodes__AAnnotation, /* E: AAnnotation */
+}
+};
+/* runtime type AConcreteClasskind */
+const struct type type_parser_nodes__AConcreteClasskind = {
+-1, /*CAST DEAD*/
+"AConcreteClasskind", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1928, /* ASelfExpr */
-2048, /* AImplicitSelfExpr */
+12, /* nullable ANode */
+175, /* nullable AClasskind */
+632, /* ANode */
+1380, /* Prod */
+1719, /* AClasskind */
+1935, /* AConcreteClasskind */
 },
 };
-/* runtime type ASelfExpr */
-const struct type type_parser_nodes__ASelfExpr = {
-1928,
-"ASelfExpr", /* class_name_string */
-7,
+/* runtime type nullable AClasskind */
+const struct type type_nullable_parser_nodes__AClasskind = {
+175,
+"nullable AClasskind", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AClasskind */
+const struct type type_parser_nodes__AClasskind = {
+1719,
+"AClasskind", /* class_name_string */
+6,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AAbstractClasskind */
+const struct type type_parser_nodes__AAbstractClasskind = {
+-1, /*CAST DEAD*/
+"AAbstractClasskind", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1928, /* ASelfExpr */
+12, /* nullable ANode */
+175, /* nullable AClasskind */
+632, /* ANode */
+1380, /* Prod */
+1719, /* AClasskind */
+1936, /* AAbstractClasskind */
 },
 };
-/* runtime type ASuperExpr */
-const struct type type_parser_nodes__ASuperExpr = {
+/* runtime type AInterfaceClasskind */
+const struct type type_parser_nodes__AInterfaceClasskind = {
 -1, /*CAST DEAD*/
-"ASuperExpr", /* class_name_string */
+"AInterfaceClasskind", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -4998,18 +5095,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1929, /* ASuperExpr */
+12, /* nullable ANode */
+175, /* nullable AClasskind */
+632, /* ANode */
+1380, /* Prod */
+1719, /* AClasskind */
+1937, /* AInterfaceClasskind */
 },
 };
-/* runtime type AInitExpr */
-const struct type type_parser_nodes__AInitExpr = {
+/* runtime type AEnumClasskind */
+const struct type type_parser_nodes__AEnumClasskind = {
 -1, /*CAST DEAD*/
-"AInitExpr", /* class_name_string */
+"AEnumClasskind", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5017,18 +5114,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1930, /* AInitExpr */
+12, /* nullable ANode */
+175, /* nullable AClasskind */
+632, /* ANode */
+1380, /* Prod */
+1719, /* AClasskind */
+1938, /* AEnumClasskind */
 },
 };
-/* runtime type ADebugTypeExpr */
-const struct type type_parser_nodes__ADebugTypeExpr = {
+/* runtime type AExternClasskind */
+const struct type type_parser_nodes__AExternClasskind = {
 -1, /*CAST DEAD*/
-"ADebugTypeExpr", /* class_name_string */
+"AExternClasskind", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5036,121 +5133,141 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1931, /* ADebugTypeExpr */
+12, /* nullable ANode */
+175, /* nullable AClasskind */
+632, /* ANode */
+1380, /* Prod */
+1719, /* AClasskind */
+1939, /* AExternClasskind */
 },
 };
-/* runtime type ALabel */
-const struct type type_parser_nodes__ALabel = {
--1, /*CAST DEAD*/
-"ALabel", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AFormaldef */
+const struct type type_parser_nodes__AFormaldef = {
+1548,
+"AFormaldef", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-192, /* nullable ALabel */
-622, /* ANode */
-1328, /* Prod */
-1699, /* ALabel */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1380, /* Prod */
+1548, /* AFormaldef */
 },
 };
-/* runtime type nullable ALabel */
-const struct type type_nullable_parser_nodes__ALabel = {
-192,
-"nullable ALabel", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AVardeclExpr */
-const struct type type_parser_nodes__AVardeclExpr = {
--1, /*CAST DEAD*/
-"AVardeclExpr", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ASuperclass */
+const struct type type_parser_nodes__ASuperclass = {
+1549,
+"ASuperclass", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1932, /* AVardeclExpr */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1380, /* Prod */
+1549, /* ASuperclass */
 },
 };
-/* runtime type AAttrAssignExpr */
-const struct type type_parser_nodes__AAttrAssignExpr = {
--1, /*CAST DEAD*/
-"AAttrAssignExpr", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AAttrPropdef */
+const struct type type_parser_nodes__AAttrPropdef = {
+1940,
+"AAttrPropdef", /* class_name_string */
+7,
 0,
-NULL, /*NO RESOLUTIONS*/
+&resolution_table_parser_nodes__AAttrPropdef,
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1933, /* AAttrAssignExpr */
+12, /* nullable ANode */
+173, /* nullable APropdef */
+632, /* ANode */
+1380, /* Prod */
+1717, /* APropdef */
+1940, /* AAttrPropdef */
 },
 };
-/* runtime type ACallAssignExpr */
-const struct type type_parser_nodes__ACallAssignExpr = {
+const struct types resolution_table_parser_nodes__AAttrPropdef = {
+0, /* dummy */
+{
+&type_nullable_model__MAttributeDef, /* nullable MPROPDEF: nullable MAttributeDef */
+}
+};
+/* runtime type ATypePropdef */
+const struct type type_parser_nodes__ATypePropdef = {
 -1, /*CAST DEAD*/
-"ACallAssignExpr", /* class_name_string */
+"ATypePropdef", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
+&resolution_table_parser_nodes__ATypePropdef,
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1934, /* ACallAssignExpr */
+12, /* nullable ANode */
+173, /* nullable APropdef */
+632, /* ANode */
+1380, /* Prod */
+1717, /* APropdef */
+1941, /* ATypePropdef */
 },
 };
-/* runtime type ABraAssignExpr */
-const struct type type_parser_nodes__ABraAssignExpr = {
--1, /*CAST DEAD*/
-"ABraAssignExpr", /* class_name_string */
--1, /*CAST DEAD*/
+const struct types resolution_table_parser_nodes__ATypePropdef = {
+0, /* dummy */
+{
+&type_nullable_model__MVirtualTypeDef, /* nullable MPROPDEF: nullable MVirtualTypeDef */
+}
+};
+/* runtime type APublicVisibility */
+const struct type type_parser_nodes__APublicVisibility = {
+1942,
+"APublicVisibility", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1935, /* ABraAssignExpr */
+12, /* nullable ANode */
+176, /* nullable AVisibility */
+632, /* ANode */
+1380, /* Prod */
+1720, /* AVisibility */
+1942, /* APublicVisibility */
 },
 };
-/* runtime type AAttrReassignExpr */
-const struct type type_parser_nodes__AAttrReassignExpr = {
+/* runtime type nullable AVisibility */
+const struct type type_nullable_parser_nodes__AVisibility = {
+176,
+"nullable AVisibility", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AVisibility */
+const struct type type_parser_nodes__AVisibility = {
+1720,
+"AVisibility", /* class_name_string */
+6,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type APrivateVisibility */
+const struct type type_parser_nodes__APrivateVisibility = {
 -1, /*CAST DEAD*/
-"AAttrReassignExpr", /* class_name_string */
+"APrivateVisibility", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5158,18 +5275,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1936, /* AAttrReassignExpr */
+12, /* nullable ANode */
+176, /* nullable AVisibility */
+632, /* ANode */
+1380, /* Prod */
+1720, /* AVisibility */
+1943, /* APrivateVisibility */
 },
 };
-/* runtime type ACallReassignExpr */
-const struct type type_parser_nodes__ACallReassignExpr = {
+/* runtime type AProtectedVisibility */
+const struct type type_parser_nodes__AProtectedVisibility = {
 -1, /*CAST DEAD*/
-"ACallReassignExpr", /* class_name_string */
+"AProtectedVisibility", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5177,18 +5294,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1937, /* ACallReassignExpr */
+12, /* nullable ANode */
+176, /* nullable AVisibility */
+632, /* ANode */
+1380, /* Prod */
+1720, /* AVisibility */
+1944, /* AProtectedVisibility */
 },
 };
-/* runtime type ABraReassignExpr */
-const struct type type_parser_nodes__ABraReassignExpr = {
+/* runtime type AIntrudeVisibility */
+const struct type type_parser_nodes__AIntrudeVisibility = {
 -1, /*CAST DEAD*/
-"ABraReassignExpr", /* class_name_string */
+"AIntrudeVisibility", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5196,74 +5313,93 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1938, /* ABraReassignExpr */
+12, /* nullable ANode */
+176, /* nullable AVisibility */
+632, /* ANode */
+1380, /* Prod */
+1720, /* AVisibility */
+1945, /* AIntrudeVisibility */
 },
 };
-/* runtime type APlusAssignOp */
-const struct type type_parser_nodes__APlusAssignOp = {
-1939,
-"APlusAssignOp", /* class_name_string */
-7,
+/* runtime type APlusMethid */
+const struct type type_parser_nodes__APlusMethid = {
+-1, /*CAST DEAD*/
+"APlusMethid", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-193, /* nullable AAssignOp */
-622, /* ANode */
-1328, /* Prod */
-1700, /* AAssignOp */
-1939, /* APlusAssignOp */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1946, /* APlusMethid */
 },
 };
-/* runtime type nullable AAssignOp */
-const struct type type_nullable_parser_nodes__AAssignOp = {
-193,
-"nullable AAssignOp", /* class_name_string */
+/* runtime type nullable AMethid */
+const struct type type_nullable_parser_nodes__AMethid = {
+177,
+"nullable AMethid", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AAssignOp */
-const struct type type_parser_nodes__AAssignOp = {
-1700,
-"AAssignOp", /* class_name_string */
+/* runtime type AMethid */
+const struct type type_parser_nodes__AMethid = {
+1721,
+"AMethid", /* class_name_string */
 6,
 0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AMinusAssignOp */
-const struct type type_parser_nodes__AMinusAssignOp = {
-1940,
-"AMinusAssignOp", /* class_name_string */
-7,
+/* runtime type AMinusMethid */
+const struct type type_parser_nodes__AMinusMethid = {
+-1, /*CAST DEAD*/
+"AMinusMethid", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+8,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1947, /* AMinusMethid */
+},
+};
+/* runtime type AStarMethid */
+const struct type type_parser_nodes__AStarMethid = {
+-1, /*CAST DEAD*/
+"AStarMethid", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-193, /* nullable AAssignOp */
-622, /* ANode */
-1328, /* Prod */
-1700, /* AAssignOp */
-1940, /* AMinusAssignOp */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1948, /* AStarMethid */
 },
 };
-/* runtime type ADoExpr */
-const struct type type_parser_nodes__ADoExpr = {
+/* runtime type AStarstarMethid */
+const struct type type_parser_nodes__AStarstarMethid = {
 -1, /*CAST DEAD*/
-"ADoExpr", /* class_name_string */
+"AStarstarMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5271,18 +5407,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1941, /* ADoExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1949, /* AStarstarMethid */
 },
 };
-/* runtime type AIfExpr */
-const struct type type_parser_nodes__AIfExpr = {
+/* runtime type ASlashMethid */
+const struct type type_parser_nodes__ASlashMethid = {
 -1, /*CAST DEAD*/
-"AIfExpr", /* class_name_string */
+"ASlashMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5290,18 +5426,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1942, /* AIfExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1950, /* ASlashMethid */
 },
 };
-/* runtime type ALoopExpr */
-const struct type type_parser_nodes__ALoopExpr = {
+/* runtime type APercentMethid */
+const struct type type_parser_nodes__APercentMethid = {
 -1, /*CAST DEAD*/
-"ALoopExpr", /* class_name_string */
+"APercentMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5309,18 +5445,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1943, /* ALoopExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1951, /* APercentMethid */
 },
 };
-/* runtime type AWhileExpr */
-const struct type type_parser_nodes__AWhileExpr = {
+/* runtime type AEqMethid */
+const struct type type_parser_nodes__AEqMethid = {
 -1, /*CAST DEAD*/
-"AWhileExpr", /* class_name_string */
+"AEqMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5328,18 +5464,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1944, /* AWhileExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1952, /* AEqMethid */
 },
 };
-/* runtime type AForExpr */
-const struct type type_parser_nodes__AForExpr = {
+/* runtime type ANeMethid */
+const struct type type_parser_nodes__ANeMethid = {
 -1, /*CAST DEAD*/
-"AForExpr", /* class_name_string */
+"ANeMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5347,18 +5483,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1945, /* AForExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1953, /* ANeMethid */
 },
 };
-/* runtime type AAssertExpr */
-const struct type type_parser_nodes__AAssertExpr = {
+/* runtime type ALeMethid */
+const struct type type_parser_nodes__ALeMethid = {
 -1, /*CAST DEAD*/
-"AAssertExpr", /* class_name_string */
+"ALeMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5366,18 +5502,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1946, /* AAssertExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1954, /* ALeMethid */
 },
 };
-/* runtime type AIfexprExpr */
-const struct type type_parser_nodes__AIfexprExpr = {
+/* runtime type AGeMethid */
+const struct type type_parser_nodes__AGeMethid = {
 -1, /*CAST DEAD*/
-"AIfexprExpr", /* class_name_string */
+"AGeMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5385,127 +5521,113 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1947, /* AIfexprExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1955, /* AGeMethid */
 },
 };
-/* runtime type AOrExpr */
-const struct type type_parser_nodes__AOrExpr = {
+/* runtime type ALtMethid */
+const struct type type_parser_nodes__ALtMethid = {
 -1, /*CAST DEAD*/
-"AOrExpr", /* class_name_string */
+"ALtMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2049, /* AOrExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1956, /* ALtMethid */
 },
 };
-/* runtime type ABoolExpr */
-const struct type type_parser_nodes__ABoolExpr = {
-1948,
-"ABoolExpr", /* class_name_string */
-7,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AAndExpr */
-const struct type type_parser_nodes__AAndExpr = {
+/* runtime type AGtMethid */
+const struct type type_parser_nodes__AGtMethid = {
 -1, /*CAST DEAD*/
-"AAndExpr", /* class_name_string */
+"AGtMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2050, /* AAndExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1957, /* AGtMethid */
 },
 };
-/* runtime type AOrElseExpr */
-const struct type type_parser_nodes__AOrElseExpr = {
+/* runtime type ALlMethid */
+const struct type type_parser_nodes__ALlMethid = {
 -1, /*CAST DEAD*/
-"AOrElseExpr", /* class_name_string */
+"ALlMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2051, /* AOrElseExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1958, /* ALlMethid */
 },
 };
-/* runtime type AImpliesExpr */
-const struct type type_parser_nodes__AImpliesExpr = {
+/* runtime type AGgMethid */
+const struct type type_parser_nodes__AGgMethid = {
 -1, /*CAST DEAD*/
-"AImpliesExpr", /* class_name_string */
+"AGgMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2052, /* AImpliesExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1959, /* AGgMethid */
 },
 };
-/* runtime type ANotExpr */
-const struct type type_parser_nodes__ANotExpr = {
+/* runtime type ABraMethid */
+const struct type type_parser_nodes__ABraMethid = {
 -1, /*CAST DEAD*/
-"ANotExpr", /* class_name_string */
+"ABraMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2053, /* ANotExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1960, /* ABraMethid */
 },
 };
-/* runtime type AEqExpr */
-const struct type type_parser_nodes__AEqExpr = {
+/* runtime type AStarshipMethid */
+const struct type type_parser_nodes__AStarshipMethid = {
 -1, /*CAST DEAD*/
-"AEqExpr", /* class_name_string */
+"AStarshipMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5513,18 +5635,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1949, /* AEqExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1961, /* AStarshipMethid */
 },
 };
-/* runtime type ANeExpr */
-const struct type type_parser_nodes__ANeExpr = {
+/* runtime type AAssignMethid */
+const struct type type_parser_nodes__AAssignMethid = {
 -1, /*CAST DEAD*/
-"ANeExpr", /* class_name_string */
+"AAssignMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5532,18 +5654,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1950, /* ANeExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1962, /* AAssignMethid */
 },
 };
-/* runtime type ALtExpr */
-const struct type type_parser_nodes__ALtExpr = {
+/* runtime type ABraassignMethid */
+const struct type type_parser_nodes__ABraassignMethid = {
 -1, /*CAST DEAD*/
-"ALtExpr", /* class_name_string */
+"ABraassignMethid", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5551,56 +5673,203 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1951, /* ALtExpr */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1963, /* ABraassignMethid */
 },
 };
-/* runtime type ALeExpr */
-const struct type type_parser_nodes__ALeExpr = {
+/* runtime type AIdMethid */
+const struct type type_parser_nodes__AIdMethid = {
+1964,
+"AIdMethid", /* class_name_string */
+7,
+0,
+NULL, /*NO RESOLUTIONS*/
+8,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+177, /* nullable AMethid */
+632, /* ANode */
+1380, /* Prod */
+1721, /* AMethid */
+1964, /* AIdMethid */
+},
+};
+/* runtime type ASignature */
+const struct type type_parser_nodes__ASignature = {
+1722,
+"ASignature", /* class_name_string */
+6,
+0,
+NULL, /*NO RESOLUTIONS*/
+7,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+178, /* nullable ASignature */
+632, /* ANode */
+1380, /* Prod */
+1722, /* ASignature */
+},
+};
+/* runtime type nullable ASignature */
+const struct type type_nullable_parser_nodes__ASignature = {
+178,
+"nullable ASignature", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ANodes[AParam] */
+const struct type type_parser_nodes__ANodesparser_nodes__AParam = {
 -1, /*CAST DEAD*/
-"ALeExpr", /* class_name_string */
+"ANodes[AParam]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
+&resolution_table_parser_nodes__ANodesparser_nodes__AParam,
+11,
+{
+0, /* nullable Object */
+1, /* Object */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1351, /* Collection[Prod] */
+-1, /* empty */
+1550, /* Collection[AParam] */
+1965, /* ANodes[AParam] */
+},
+};
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__AParam = {
+0, /* dummy */
+{
+&type_array__Arrayparser_nodes__AParam, /* Array[E]: Array[AParam] */
+&type_parser_nodes__AParam, /* E: AParam */
+&type_parser_nodes__AParam, /* E: AParam */
+&type_abstract_collection__Collectionparser_nodes__AParam, /* Collection[E]: Collection[AParam] */
+&type_array__Arrayparser_nodes__AParam, /* Array[E]: Array[AParam] */
+&type_parser_nodes__AParam, /* E: AParam */
+&type_parser_nodes__AParam, /* E: AParam */
+&type_abstract_collection__Collectionparser_nodes__AParam, /* Collection[E]: Collection[AParam] */
+&type_abstract_collection__Collectionparser_nodes__AParam, /* Collection[E]: Collection[AParam] */
+&type_parser_nodes__AParam, /* E: AParam */
+&type_parser_nodes__AParam, /* E: AParam */
+}
+};
+/* runtime type Collection[AParam] */
+const struct type type_abstract_collection__Collectionparser_nodes__AParam = {
+1550,
+"Collection[AParam]", /* class_name_string */
+9,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AParam */
+const struct type type_parser_nodes__AParam = {
+1551,
+"AParam", /* class_name_string */
+6,
+0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1952, /* ALeExpr */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1380, /* Prod */
+1551, /* AParam */
 },
 };
-/* runtime type ALlExpr */
-const struct type type_parser_nodes__ALlExpr = {
+/* runtime type AExternCalls */
+const struct type type_parser_nodes__AExternCalls = {
 -1, /*CAST DEAD*/
-"ALlExpr", /* class_name_string */
+"AExternCalls", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1953, /* ALlExpr */
+12, /* nullable ANode */
+179, /* nullable AExternCalls */
+632, /* ANode */
+1380, /* Prod */
+1723, /* AExternCalls */
 },
 };
-/* runtime type AGtExpr */
-const struct type type_parser_nodes__AGtExpr = {
+/* runtime type nullable AExternCalls */
+const struct type type_nullable_parser_nodes__AExternCalls = {
+179,
+"nullable AExternCalls", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ANodes[AExternCall] */
+const struct type type_parser_nodes__ANodesparser_nodes__AExternCall = {
 -1, /*CAST DEAD*/
-"AGtExpr", /* class_name_string */
+"ANodes[AExternCall]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_parser_nodes__ANodesparser_nodes__AExternCall,
+11,
+{
+0, /* nullable Object */
+1, /* Object */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1351, /* Collection[Prod] */
+-1, /* empty */
+1552, /* Collection[AExternCall] */
+1966, /* ANodes[AExternCall] */
+},
+};
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__AExternCall = {
+0, /* dummy */
+{
+&type_array__Arrayparser_nodes__AExternCall, /* Array[E]: Array[AExternCall] */
+&type_parser_nodes__AExternCall, /* E: AExternCall */
+&type_parser_nodes__AExternCall, /* E: AExternCall */
+&type_abstract_collection__Collectionparser_nodes__AExternCall, /* Collection[E]: Collection[AExternCall] */
+&type_array__Arrayparser_nodes__AExternCall, /* Array[E]: Array[AExternCall] */
+&type_parser_nodes__AExternCall, /* E: AExternCall */
+&type_parser_nodes__AExternCall, /* E: AExternCall */
+&type_abstract_collection__Collectionparser_nodes__AExternCall, /* Collection[E]: Collection[AExternCall] */
+&type_abstract_collection__Collectionparser_nodes__AExternCall, /* Collection[E]: Collection[AExternCall] */
+&type_parser_nodes__AExternCall, /* E: AExternCall */
+&type_parser_nodes__AExternCall, /* E: AExternCall */
+}
+};
+/* runtime type Collection[AExternCall] */
+const struct type type_abstract_collection__Collectionparser_nodes__AExternCall = {
+1552,
+"Collection[AExternCall]", /* class_name_string */
+9,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ASuperExternCall */
+const struct type type_parser_nodes__ASuperExternCall = {
+-1, /*CAST DEAD*/
+"ASuperExternCall", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5608,18 +5877,36 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1954, /* AGtExpr */
+12, /* nullable ANode */
+180, /* nullable AExternCall */
+632, /* ANode */
+1380, /* Prod */
+1724, /* AExternCall */
+1967, /* ASuperExternCall */
 },
 };
-/* runtime type AGeExpr */
-const struct type type_parser_nodes__AGeExpr = {
+/* runtime type nullable AExternCall */
+const struct type type_nullable_parser_nodes__AExternCall = {
+180,
+"nullable AExternCall", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AExternCall */
+const struct type type_parser_nodes__AExternCall = {
+1724,
+"AExternCall", /* class_name_string */
+6,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ALocalPropExternCall */
+const struct type type_parser_nodes__ALocalPropExternCall = {
 -1, /*CAST DEAD*/
-"AGeExpr", /* class_name_string */
+"ALocalPropExternCall", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5627,18 +5914,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1955, /* AGeExpr */
+12, /* nullable ANode */
+180, /* nullable AExternCall */
+632, /* ANode */
+1380, /* Prod */
+1724, /* AExternCall */
+1968, /* ALocalPropExternCall */
 },
 };
-/* runtime type AGgExpr */
-const struct type type_parser_nodes__AGgExpr = {
+/* runtime type AFullPropExternCall */
+const struct type type_parser_nodes__AFullPropExternCall = {
 -1, /*CAST DEAD*/
-"AGgExpr", /* class_name_string */
+"AFullPropExternCall", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5646,18 +5933,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1956, /* AGgExpr */
+12, /* nullable ANode */
+180, /* nullable AExternCall */
+632, /* ANode */
+1380, /* Prod */
+1724, /* AExternCall */
+1969, /* AFullPropExternCall */
 },
 };
-/* runtime type AStarshipExpr */
-const struct type type_parser_nodes__AStarshipExpr = {
+/* runtime type AInitPropExternCall */
+const struct type type_parser_nodes__AInitPropExternCall = {
 -1, /*CAST DEAD*/
-"AStarshipExpr", /* class_name_string */
+"AInitPropExternCall", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5665,38 +5952,37 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1957, /* AStarshipExpr */
+12, /* nullable ANode */
+180, /* nullable AExternCall */
+632, /* ANode */
+1380, /* Prod */
+1724, /* AExternCall */
+1970, /* AInitPropExternCall */
 },
 };
-/* runtime type AIsaExpr */
-const struct type type_parser_nodes__AIsaExpr = {
+/* runtime type ACastAsExternCall */
+const struct type type_parser_nodes__ACastAsExternCall = {
 -1, /*CAST DEAD*/
-"AIsaExpr", /* class_name_string */
+"ACastAsExternCall", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2054, /* AIsaExpr */
+12, /* nullable ANode */
+180, /* nullable AExternCall */
+632, /* ANode */
+1380, /* Prod */
+1724, /* AExternCall */
+1971, /* ACastAsExternCall */
 },
 };
-/* runtime type APlusExpr */
-const struct type type_parser_nodes__APlusExpr = {
+/* runtime type AAsNullableExternCall */
+const struct type type_parser_nodes__AAsNullableExternCall = {
 -1, /*CAST DEAD*/
-"APlusExpr", /* class_name_string */
+"AAsNullableExternCall", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5704,18 +5990,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1958, /* APlusExpr */
+12, /* nullable ANode */
+180, /* nullable AExternCall */
+632, /* ANode */
+1380, /* Prod */
+1724, /* AExternCall */
+1972, /* AAsNullableExternCall */
 },
 };
-/* runtime type AMinusExpr */
-const struct type type_parser_nodes__AMinusExpr = {
+/* runtime type AAsNotNullableExternCall */
+const struct type type_parser_nodes__AAsNotNullableExternCall = {
 -1, /*CAST DEAD*/
-"AMinusExpr", /* class_name_string */
+"AAsNotNullableExternCall", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5723,151 +6009,231 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1959, /* AMinusExpr */
+12, /* nullable ANode */
+180, /* nullable AExternCall */
+632, /* ANode */
+1380, /* Prod */
+1724, /* AExternCall */
+1973, /* AAsNotNullableExternCall */
 },
 };
-/* runtime type AStarExpr */
-const struct type type_parser_nodes__AStarExpr = {
+/* runtime type AInLanguage */
+const struct type type_parser_nodes__AInLanguage = {
 -1, /*CAST DEAD*/
-"AStarExpr", /* class_name_string */
+"AInLanguage", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1960, /* AStarExpr */
+12, /* nullable ANode */
+181, /* nullable AInLanguage */
+632, /* ANode */
+1380, /* Prod */
+1725, /* AInLanguage */
 },
 };
-/* runtime type ASlashExpr */
-const struct type type_parser_nodes__ASlashExpr = {
--1, /*CAST DEAD*/
-"ASlashExpr", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type nullable AInLanguage */
+const struct type type_nullable_parser_nodes__AInLanguage = {
+181,
+"nullable AInLanguage", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AExternCodeBlock */
+const struct type type_parser_nodes__AExternCodeBlock = {
+1726,
+"AExternCodeBlock", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1961, /* ASlashExpr */
+12, /* nullable ANode */
+182, /* nullable AExternCodeBlock */
+632, /* ANode */
+1380, /* Prod */
+1726, /* AExternCodeBlock */
 },
 };
-/* runtime type APercentExpr */
-const struct type type_parser_nodes__APercentExpr = {
--1, /*CAST DEAD*/
-"APercentExpr", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type nullable AExternCodeBlock */
+const struct type type_nullable_parser_nodes__AExternCodeBlock = {
+182,
+"nullable AExternCodeBlock", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AType */
+const struct type type_parser_nodes__AType = {
+1727,
+"AType", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1962, /* APercentExpr */
+12, /* nullable ANode */
+183, /* nullable AType */
+632, /* ANode */
+1380, /* Prod */
+1727, /* AType */
 },
 };
-/* runtime type AUminusExpr */
-const struct type type_parser_nodes__AUminusExpr = {
+/* runtime type nullable AType */
+const struct type type_nullable_parser_nodes__AType = {
+183,
+"nullable AType", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ANodes[AType] */
+const struct type type_parser_nodes__ANodesparser_nodes__AType = {
 -1, /*CAST DEAD*/
-"AUminusExpr", /* class_name_string */
+"ANodes[AType]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-8,
+&resolution_table_parser_nodes__ANodesparser_nodes__AType,
+11,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1963, /* AUminusExpr */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+-1, /* empty */
+1351, /* Collection[Prod] */
+-1, /* empty */
+1553, /* Collection[AType] */
+1974, /* ANodes[AType] */
 },
 };
-/* runtime type AOnceExpr */
-const struct type type_parser_nodes__AOnceExpr = {
--1, /*CAST DEAD*/
-"AOnceExpr", /* class_name_string */
--1, /*CAST DEAD*/
+const struct types resolution_table_parser_nodes__ANodesparser_nodes__AType = {
+0, /* dummy */
+{
+&type_array__Arrayparser_nodes__AType, /* Array[E]: Array[AType] */
+&type_parser_nodes__AType, /* E: AType */
+&type_parser_nodes__AType, /* E: AType */
+&type_abstract_collection__Collectionparser_nodes__AType, /* Collection[E]: Collection[AType] */
+&type_array__Arrayparser_nodes__AType, /* Array[E]: Array[AType] */
+&type_parser_nodes__AType, /* E: AType */
+&type_parser_nodes__AType, /* E: AType */
+&type_abstract_collection__Collectionparser_nodes__AType, /* Collection[E]: Collection[AType] */
+&type_abstract_collection__Collectionparser_nodes__AType, /* Collection[E]: Collection[AType] */
+&type_parser_nodes__AType, /* E: AType */
+&type_parser_nodes__AType, /* E: AType */
+}
+};
+/* runtime type Collection[AType] */
+const struct type type_abstract_collection__Collectionparser_nodes__AType = {
+1553,
+"Collection[AType]", /* class_name_string */
+9,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type ABlockExpr */
+const struct type type_parser_nodes__ABlockExpr = {
+1975,
+"ABlockExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1964, /* AOnceExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1975, /* ABlockExpr */
 },
 };
-/* runtime type ANewExpr */
-const struct type type_parser_nodes__ANewExpr = {
-1965,
-"ANewExpr", /* class_name_string */
-7,
+/* runtime type AExpr */
+const struct type type_parser_nodes__AExpr = {
+1728,
+"AExpr", /* class_name_string */
+6,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type nullable AExpr */
+const struct type type_nullable_parser_nodes__AExpr = {
+184,
+"nullable AExpr", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AReturnExpr */
+const struct type type_parser_nodes__AReturnExpr = {
+-1, /*CAST DEAD*/
+"AReturnExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1965, /* ANewExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1976, /* AReturnExpr */
 },
 };
-/* runtime type AIssetAttrExpr */
-const struct type type_parser_nodes__AIssetAttrExpr = {
+/* runtime type ABreakExpr */
+const struct type type_parser_nodes__ABreakExpr = {
 -1, /*CAST DEAD*/
-"AIssetAttrExpr", /* class_name_string */
+"ABreakExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1966, /* AIssetAttrExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1977, /* AEscapeExpr */
+2105, /* ABreakExpr */
 },
 };
-/* runtime type AAttrExpr */
-const struct type type_parser_nodes__AAttrExpr = {
+/* runtime type AEscapeExpr */
+const struct type type_parser_nodes__AEscapeExpr = {
+1977,
+"AEscapeExpr", /* class_name_string */
+7,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AAbortExpr */
+const struct type type_parser_nodes__AAbortExpr = {
 -1, /*CAST DEAD*/
-"AAttrExpr", /* class_name_string */
+"AAbortExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5875,37 +6241,38 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1967, /* AAttrExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1978, /* AAbortExpr */
 },
 };
-/* runtime type ABraExpr */
-const struct type type_parser_nodes__ABraExpr = {
+/* runtime type AContinueExpr */
+const struct type type_parser_nodes__AContinueExpr = {
 -1, /*CAST DEAD*/
-"ABraExpr", /* class_name_string */
+"AContinueExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1968, /* ABraExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1977, /* AEscapeExpr */
+2106, /* AContinueExpr */
 },
 };
-/* runtime type ACrangeExpr */
-const struct type type_parser_nodes__ACrangeExpr = {
-1969,
-"ACrangeExpr", /* class_name_string */
+/* runtime type ACallExpr */
+const struct type type_parser_nodes__ACallExpr = {
+1979,
+"ACallExpr", /* class_name_string */
 7,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -5913,96 +6280,95 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1969, /* ACrangeExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1979, /* ACallExpr */
 },
 };
-/* runtime type AOrangeExpr */
-const struct type type_parser_nodes__AOrangeExpr = {
-1970,
-"AOrangeExpr", /* class_name_string */
-7,
+/* runtime type AImplicitSelfExpr */
+const struct type type_parser_nodes__AImplicitSelfExpr = {
+2107,
+"AImplicitSelfExpr", /* class_name_string */
+8,
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1970, /* AOrangeExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1980, /* ASelfExpr */
+2107, /* AImplicitSelfExpr */
 },
 };
-/* runtime type AArrayExpr */
-const struct type type_parser_nodes__AArrayExpr = {
--1, /*CAST DEAD*/
-"AArrayExpr", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ASelfExpr */
+const struct type type_parser_nodes__ASelfExpr = {
+1980,
+"ASelfExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1971, /* AArrayExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1980, /* ASelfExpr */
 },
 };
-/* runtime type ATrueExpr */
-const struct type type_parser_nodes__ATrueExpr = {
+/* runtime type ASuperExpr */
+const struct type type_parser_nodes__ASuperExpr = {
 -1, /*CAST DEAD*/
-"ATrueExpr", /* class_name_string */
+"ASuperExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2055, /* ATrueExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1981, /* ASuperExpr */
 },
 };
-/* runtime type AFalseExpr */
-const struct type type_parser_nodes__AFalseExpr = {
+/* runtime type AInitExpr */
+const struct type type_parser_nodes__AInitExpr = {
 -1, /*CAST DEAD*/
-"AFalseExpr", /* class_name_string */
+"AInitExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1948, /* ABoolExpr */
-2056, /* AFalseExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1982, /* AInitExpr */
 },
 };
-/* runtime type ANullExpr */
-const struct type type_parser_nodes__ANullExpr = {
+/* runtime type ADebugTypeExpr */
+const struct type type_parser_nodes__ADebugTypeExpr = {
 -1, /*CAST DEAD*/
-"ANullExpr", /* class_name_string */
+"ADebugTypeExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6010,134 +6376,139 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1972, /* ANullExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1983, /* ADebugTypeExpr */
 },
 };
-/* runtime type ADecIntExpr */
-const struct type type_parser_nodes__ADecIntExpr = {
+/* runtime type ALabel */
+const struct type type_parser_nodes__ALabel = {
 -1, /*CAST DEAD*/
-"ADecIntExpr", /* class_name_string */
+"ALabel", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1973, /* AIntExpr */
-2057, /* ADecIntExpr */
+12, /* nullable ANode */
+185, /* nullable ALabel */
+632, /* ANode */
+1380, /* Prod */
+1729, /* ALabel */
 },
 };
-/* runtime type AIntExpr */
-const struct type type_parser_nodes__AIntExpr = {
-1973,
-"AIntExpr", /* class_name_string */
-7,
-0,
+/* runtime type nullable ALabel */
+const struct type type_nullable_parser_nodes__ALabel = {
+185,
+"nullable ALabel", /* class_name_string */
+3,
+1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AHexIntExpr */
-const struct type type_parser_nodes__AHexIntExpr = {
+/* runtime type AVardeclExpr */
+const struct type type_parser_nodes__AVardeclExpr = {
 -1, /*CAST DEAD*/
-"AHexIntExpr", /* class_name_string */
+"AVardeclExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1973, /* AIntExpr */
-2058, /* AHexIntExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1984, /* AVardeclExpr */
 },
 };
-/* runtime type AFloatExpr */
-const struct type type_parser_nodes__AFloatExpr = {
-1974,
-"AFloatExpr", /* class_name_string */
-7,
+/* runtime type AAttrAssignExpr */
+const struct type type_parser_nodes__AAttrAssignExpr = {
+-1, /*CAST DEAD*/
+"AAttrAssignExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1974, /* AFloatExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1985, /* AAttrAssignExpr */
 },
 };
-/* runtime type ACharExpr */
-const struct type type_parser_nodes__ACharExpr = {
-1975,
-"ACharExpr", /* class_name_string */
-7,
+/* runtime type ACallAssignExpr */
+const struct type type_parser_nodes__ACallAssignExpr = {
+-1, /*CAST DEAD*/
+"ACallAssignExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1975, /* ACharExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1986, /* ACallAssignExpr */
 },
 };
-/* runtime type AStringExpr */
-const struct type type_parser_nodes__AStringExpr = {
+/* runtime type AListExprs */
+const struct type type_parser_nodes__AListExprs = {
 -1, /*CAST DEAD*/
-"AStringExpr", /* class_name_string */
+"AListExprs", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1976, /* AStringFormExpr */
-2059, /* AStringExpr */
+12, /* nullable ANode */
+186, /* nullable AExprs */
+632, /* ANode */
+1380, /* Prod */
+1730, /* AExprs */
+1987, /* AListExprs */
 },
 };
-/* runtime type AStringFormExpr */
-const struct type type_parser_nodes__AStringFormExpr = {
-1976,
-"AStringFormExpr", /* class_name_string */
-7,
+/* runtime type nullable AExprs */
+const struct type type_nullable_parser_nodes__AExprs = {
+186,
+"nullable AExprs", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AExprs */
+const struct type type_parser_nodes__AExprs = {
+1730,
+"AExprs", /* class_name_string */
+6,
 0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type AParExpr */
-const struct type type_parser_nodes__AParExpr = {
+/* runtime type ABraAssignExpr */
+const struct type type_parser_nodes__ABraAssignExpr = {
 -1, /*CAST DEAD*/
-"AParExpr", /* class_name_string */
+"ABraAssignExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6145,18 +6516,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1977, /* AParExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1988, /* ABraAssignExpr */
 },
 };
-/* runtime type AAsCastExpr */
-const struct type type_parser_nodes__AAsCastExpr = {
+/* runtime type AAttrReassignExpr */
+const struct type type_parser_nodes__AAttrReassignExpr = {
 -1, /*CAST DEAD*/
-"AAsCastExpr", /* class_name_string */
+"AAttrReassignExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6164,18 +6535,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1978, /* AAsCastExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1989, /* AAttrReassignExpr */
 },
 };
-/* runtime type AAsNotnullExpr */
-const struct type type_parser_nodes__AAsNotnullExpr = {
+/* runtime type ACallReassignExpr */
+const struct type type_parser_nodes__ACallReassignExpr = {
 -1, /*CAST DEAD*/
-"AAsNotnullExpr", /* class_name_string */
+"ACallReassignExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6183,18 +6554,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1979, /* AAsNotnullExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1990, /* ACallReassignExpr */
 },
 };
-/* runtime type AVarargExpr */
-const struct type type_parser_nodes__AVarargExpr = {
+/* runtime type ABraReassignExpr */
+const struct type type_parser_nodes__ABraReassignExpr = {
 -1, /*CAST DEAD*/
-"AVarargExpr", /* class_name_string */
+"ABraReassignExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6202,18 +6573,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1980, /* AVarargExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1991, /* ABraReassignExpr */
 },
 };
-/* runtime type ASuperstringExpr */
-const struct type type_parser_nodes__ASuperstringExpr = {
-1981,
-"ASuperstringExpr", /* class_name_string */
+/* runtime type APlusAssignOp */
+const struct type type_parser_nodes__APlusAssignOp = {
+1992,
+"APlusAssignOp", /* class_name_string */
 7,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6221,151 +6592,112 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1981, /* ASuperstringExpr */
+12, /* nullable ANode */
+187, /* nullable AAssignOp */
+632, /* ANode */
+1380, /* Prod */
+1731, /* AAssignOp */
+1992, /* APlusAssignOp */
 },
 };
-/* runtime type AStartStringExpr */
-const struct type type_parser_nodes__AStartStringExpr = {
--1, /*CAST DEAD*/
-"AStartStringExpr", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type nullable AAssignOp */
+const struct type type_nullable_parser_nodes__AAssignOp = {
+187,
+"nullable AAssignOp", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AAssignOp */
+const struct type type_parser_nodes__AAssignOp = {
+1731,
+"AAssignOp", /* class_name_string */
+6,
 0,
-NULL, /*NO RESOLUTIONS*/
-9,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1976, /* AStringFormExpr */
-2060, /* AStartStringExpr */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type AMidStringExpr */
-const struct type type_parser_nodes__AMidStringExpr = {
--1, /*CAST DEAD*/
-"AMidStringExpr", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type AMinusAssignOp */
+const struct type type_parser_nodes__AMinusAssignOp = {
+1993,
+"AMinusAssignOp", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1976, /* AStringFormExpr */
-2061, /* AMidStringExpr */
+12, /* nullable ANode */
+187, /* nullable AAssignOp */
+632, /* ANode */
+1380, /* Prod */
+1731, /* AAssignOp */
+1993, /* AMinusAssignOp */
 },
 };
-/* runtime type AEndStringExpr */
-const struct type type_parser_nodes__AEndStringExpr = {
+/* runtime type ADoExpr */
+const struct type type_parser_nodes__ADoExpr = {
 -1, /*CAST DEAD*/
-"AEndStringExpr", /* class_name_string */
+"ADoExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-191, /* nullable AExpr */
-622, /* ANode */
-1328, /* Prod */
-1698, /* AExpr */
-1976, /* AStringFormExpr */
-2062, /* AEndStringExpr */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1994, /* ADoExpr */
 },
 };
-/* runtime type AAnnotation */
-const struct type type_parser_nodes__AAnnotation = {
-1701,
-"AAnnotation", /* class_name_string */
-6,
+/* runtime type AIfExpr */
+const struct type type_parser_nodes__AIfExpr = {
+-1, /*CAST DEAD*/
+"AIfExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-194, /* nullable AAnnotation */
-622, /* ANode */
-1328, /* Prod */
-1701, /* AAnnotation */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1995, /* AIfExpr */
 },
 };
-/* runtime type nullable AAnnotation */
-const struct type type_nullable_parser_nodes__AAnnotation = {
-194,
-"nullable AAnnotation", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ANodes[AAtArg] */
-const struct type type_parser_nodes__ANodesparser_nodes__AAtArg = {
+/* runtime type ALoopExpr */
+const struct type type_parser_nodes__ALoopExpr = {
 -1, /*CAST DEAD*/
-"ANodes[AAtArg]", /* class_name_string */
+"ALoopExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_parser_nodes__ANodesparser_nodes__AAtArg,
-10,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
--1, /* empty */
-1501, /* Collection[AAtArg] */
-1982, /* ANodes[AAtArg] */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1996, /* ALoopExpr */
 },
 };
-const struct types resolution_table_parser_nodes__ANodesparser_nodes__AAtArg = {
-0, /* dummy */
-{
-&type_parser_nodes__AAtArg, /* Sequence#0: AAtArg */
-&type_parser_nodes__AAtArg, /* SimpleCollection#0: AAtArg */
-&type_array__Arrayparser_nodes__AAtArg, /* Array[ANodes#0]: Array[AAtArg] */
-&type_parser_nodes__AAtArg, /* ANodes#0: AAtArg */
-NULL, /* empty */
-&type_parser_nodes__AAtArg, /* RemovableCollection#0: AAtArg */
-&type_abstract_collection__Collectionparser_nodes__AAtArg, /* Collection[Sequence#0]: Collection[AAtArg] */
-&type_abstract_collection__Collectionparser_nodes__AAtArg, /* Collection[SimpleCollection#0]: Collection[AAtArg] */
-&type_parser_nodes__AAtArg, /* Collection#0: AAtArg */
-&type_abstract_collection__Collectionparser_nodes__AAtArg, /* Collection[Collection#0]: Collection[AAtArg] */
-&type_parser_nodes__AAtArg, /* SequenceRead#0: AAtArg */
-}
-};
-/* runtime type Collection[AAtArg] */
-const struct type type_abstract_collection__Collectionparser_nodes__AAtArg = {
-1501,
-"Collection[AAtArg]", /* class_name_string */
-8,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ATypeAtArg */
-const struct type type_parser_nodes__ATypeAtArg = {
+/* runtime type AWhileExpr */
+const struct type type_parser_nodes__AWhileExpr = {
 -1, /*CAST DEAD*/
-"ATypeAtArg", /* class_name_string */
+"AWhileExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6373,27 +6705,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1502, /* AAtArg */
-1702, /* ATypeAtArg */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1997, /* AWhileExpr */
 },
 };
-/* runtime type AAtArg */
-const struct type type_parser_nodes__AAtArg = {
-1502,
-"AAtArg", /* class_name_string */
-6,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AExprAtArg */
-const struct type type_parser_nodes__AExprAtArg = {
-1703,
-"AExprAtArg", /* class_name_string */
+/* runtime type AForExpr */
+const struct type type_parser_nodes__AForExpr = {
+1998,
+"AForExpr", /* class_name_string */
 7,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6401,18 +6724,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1502, /* AAtArg */
-1703, /* AExprAtArg */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1998, /* AForExpr */
 },
 };
-/* runtime type AAtAtArg */
-const struct type type_parser_nodes__AAtAtArg = {
+/* runtime type AAssertExpr */
+const struct type type_parser_nodes__AAssertExpr = {
 -1, /*CAST DEAD*/
-"AAtAtArg", /* class_name_string */
+"AAssertExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6420,18 +6743,18 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1328, /* Prod */
-1502, /* AAtArg */
-1704, /* AAtAtArg */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+1999, /* AAssertExpr */
 },
 };
-/* runtime type AIdAtid */
-const struct type type_parser_nodes__AIdAtid = {
+/* runtime type AIfexprExpr */
+const struct type type_parser_nodes__AIfexprExpr = {
 -1, /*CAST DEAD*/
-"AIdAtid", /* class_name_string */
+"AIfexprExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -6439,1341 +6762,963 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-195, /* nullable AAtid */
-622, /* ANode */
-1328, /* Prod */
-1705, /* AAtid */
-1983, /* AIdAtid */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2000, /* AIfexprExpr */
 },
 };
-/* runtime type nullable AAtid */
-const struct type type_nullable_parser_nodes__AAtid = {
-195,
-"nullable AAtid", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AAtid */
-const struct type type_parser_nodes__AAtid = {
-1705,
-"AAtid", /* class_name_string */
-6,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AKwreadableAtid */
-const struct type type_parser_nodes__AKwreadableAtid = {
+/* runtime type AOrExpr */
+const struct type type_parser_nodes__AOrExpr = {
 -1, /*CAST DEAD*/
-"AKwreadableAtid", /* class_name_string */
+"AOrExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-195, /* nullable AAtid */
-622, /* ANode */
-1328, /* Prod */
-1705, /* AAtid */
-1984, /* AKwreadableAtid */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2108, /* AOrExpr */
 },
 };
-/* runtime type AKwwritableAtid */
-const struct type type_parser_nodes__AKwwritableAtid = {
+/* runtime type ABoolExpr */
+const struct type type_parser_nodes__ABoolExpr = {
+2001,
+"ABoolExpr", /* class_name_string */
+7,
+0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AAndExpr */
+const struct type type_parser_nodes__AAndExpr = {
 -1, /*CAST DEAD*/
-"AKwwritableAtid", /* class_name_string */
+"AAndExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-195, /* nullable AAtid */
-622, /* ANode */
-1328, /* Prod */
-1705, /* AAtid */
-1985, /* AKwwritableAtid */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2109, /* AAndExpr */
 },
 };
-/* runtime type AParExprs */
-const struct type type_parser_nodes__AParExprs = {
-1986,
-"AParExprs", /* class_name_string */
-7,
+/* runtime type AOrElseExpr */
+const struct type type_parser_nodes__AOrElseExpr = {
+-1, /*CAST DEAD*/
+"AOrElseExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-196, /* nullable AExprs */
-622, /* ANode */
-1328, /* Prod */
-1706, /* AExprs */
-1986, /* AParExprs */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2110, /* AOrElseExpr */
 },
 };
-/* runtime type nullable AExprs */
-const struct type type_nullable_parser_nodes__AExprs = {
-196,
-"nullable AExprs", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AExprs */
-const struct type type_parser_nodes__AExprs = {
-1706,
-"AExprs", /* class_name_string */
-6,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AListExprs */
-const struct type type_parser_nodes__AListExprs = {
+/* runtime type AImpliesExpr */
+const struct type type_parser_nodes__AImpliesExpr = {
 -1, /*CAST DEAD*/
-"AListExprs", /* class_name_string */
+"AImpliesExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-196, /* nullable AExprs */
-622, /* ANode */
-1328, /* Prod */
-1706, /* AExprs */
-1987, /* AListExprs */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2111, /* AImpliesExpr */
 },
 };
-/* runtime type ABraExprs */
-const struct type type_parser_nodes__ABraExprs = {
+/* runtime type ANotExpr */
+const struct type type_parser_nodes__ANotExpr = {
 -1, /*CAST DEAD*/
-"ABraExprs", /* class_name_string */
+"ANotExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-8,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-196, /* nullable AExprs */
-622, /* ANode */
-1328, /* Prod */
-1706, /* AExprs */
-1988, /* ABraExprs */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2112, /* ANotExpr */
 },
 };
-/* runtime type AModuleName */
-const struct type type_parser_nodes__AModuleName = {
-1707,
-"AModuleName", /* class_name_string */
-6,
+/* runtime type AEqExpr */
+const struct type type_parser_nodes__AEqExpr = {
+2002,
+"AEqExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-197, /* nullable AModuleName */
-622, /* ANode */
-1328, /* Prod */
-1707, /* AModuleName */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2002, /* AEqExpr */
 },
 };
-/* runtime type nullable AModuleName */
-const struct type type_nullable_parser_nodes__AModuleName = {
-197,
-"nullable AModuleName", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AQualified */
-const struct type type_parser_nodes__AQualified = {
--1, /*CAST DEAD*/
-"AQualified", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ANeExpr */
+const struct type type_parser_nodes__ANeExpr = {
+2003,
+"ANeExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-198, /* nullable AQualified */
-622, /* ANode */
-1328, /* Prod */
-1708, /* AQualified */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2003, /* ANeExpr */
 },
 };
-/* runtime type nullable AQualified */
-const struct type type_nullable_parser_nodes__AQualified = {
-198,
-"nullable AQualified", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ADoc */
-const struct type type_parser_nodes__ADoc = {
+/* runtime type ALtExpr */
+const struct type type_parser_nodes__ALtExpr = {
 -1, /*CAST DEAD*/
-"ADoc", /* class_name_string */
+"ALtExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-199, /* nullable ADoc */
-622, /* ANode */
-1328, /* Prod */
-1709, /* ADoc */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2004, /* ALtExpr */
 },
 };
-/* runtime type nullable ADoc */
-const struct type type_nullable_parser_nodes__ADoc = {
-199,
-"nullable ADoc", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type ALexerError */
-const struct type type_parser_nodes__ALexerError = {
+/* runtime type ALeExpr */
+const struct type type_parser_nodes__ALeExpr = {
 -1, /*CAST DEAD*/
-"ALexerError", /* class_name_string */
+"ALeExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-9,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1480, /* EOF */
-1663, /* AError */
-1989, /* ALexerError */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2005, /* ALeExpr */
 },
 };
-/* runtime type Array[MParameterType] */
-const struct type type_array__Arraymodel__MParameterType = {
+/* runtime type ALlExpr */
+const struct type type_parser_nodes__ALlExpr = {
 -1, /*CAST DEAD*/
-"Array[MParameterType]", /* class_name_string */
+"ALlExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arraymodel__MParameterType,
-17,
-{
-0, /* nullable Object */
-1, /* Object */
-11, /* nullable Array[nullable MType] */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-93, /* Collection[nullable MType] */
-1316, /* Collection[MType] */
-1294, /* AbstractArrayRead[Object] */
-1331, /* AbstractArrayRead[nullable MType] */
-1459, /* Array[Object] */
-1503, /* Collection[MParameterType] */
-1668, /* Array[nullable MType] */
--1, /* empty */
-2039, /* AbstractArrayRead[MType] */
-2126, /* AbstractArrayRead[MParameterType] */
-2165, /* Array[MType] */
-2197, /* Array[MParameterType] */
-},
-};
-const struct types resolution_table_array__Arraymodel__MParameterType = {
-0, /* dummy */
-{
-&type_model__MParameterType, /* Sequence#0: MParameterType */
-&type_model__MParameterType, /* SimpleCollection#0: MParameterType */
-&type_array__NativeArraymodel__MParameterType, /* NativeArray[Array#0]: NativeArray[MParameterType] */
-&type_array__Arraymodel__MParameterType, /* Array[Array#0]: Array[MParameterType] */
-&type_array__NativeArraymodel__MParameterType, /* NativeArray[ArrayCapable#0]: NativeArray[MParameterType] */
-&type_model__MParameterType, /* RemovableCollection#0: MParameterType */
-&type_abstract_collection__Collectionmodel__MParameterType, /* Collection[Sequence#0]: Collection[MParameterType] */
-&type_abstract_collection__Collectionmodel__MParameterType, /* Collection[SimpleCollection#0]: Collection[MParameterType] */
-&type_model__MParameterType, /* Collection#0: MParameterType */
-&type_abstract_collection__Collectionmodel__MParameterType, /* Collection[Collection#0]: Collection[MParameterType] */
-&type_model__MParameterType, /* SequenceRead#0: MParameterType */
-&type_model__MParameterType, /* AbstractArrayRead#0: MParameterType */
-&type_array__Arraymodel__MParameterType, /* Array[AbstractArrayRead#0]: Array[MParameterType] */
-&type_array__ArrayIteratormodel__MParameterType, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MParameterType] */
-}
-};
-/* runtime type Collection[MParameterType] */
-const struct type type_abstract_collection__Collectionmodel__MParameterType = {
-1503,
-"Collection[MParameterType]", /* class_name_string */
-10,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AbstractArrayRead[MParameterType] */
-const struct type type_array__AbstractArrayReadmodel__MParameterType = {
-2126,
-"AbstractArrayRead[MParameterType]", /* class_name_string */
-14,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type MParameterType */
-const struct type type_model__MParameterType = {
-1337,
-"MParameterType", /* class_name_string */
-5,
-0,
 NULL, /*NO RESOLUTIONS*/
-6,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-3, /* nullable MType */
--1, /* empty */
-600, /* MType */
-1337, /* MParameterType */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2006, /* ALlExpr */
 },
 };
-/* runtime type HashSet[MClassDef] */
-const struct type type_hash_collection__HashSetmodel__MClassDef = {
-1990,
-"HashSet[MClassDef]", /* class_name_string */
-10,
+/* runtime type AGtExpr */
+const struct type type_parser_nodes__AGtExpr = {
+-1, /*CAST DEAD*/
+"AGtExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_hash_collection__HashSetmodel__MClassDef,
-11,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
--1, /* empty */
-84, /* Collection[Object] */
-597, /* Collection[MClassDef] */
--1, /* empty */
-607, /* Set[Object] */
-1321, /* HashSet[Object] */
-1504, /* Set[MClassDef] */
-1990, /* HashSet[MClassDef] */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2007, /* AGtExpr */
 },
 };
-const struct types resolution_table_hash_collection__HashSetmodel__MClassDef = {
-0, /* dummy */
-{
-&type_hash_collection__HashSetNodemodel__MClassDef, /* HashSetNode[HashSet#0]: HashSetNode[MClassDef] */
-&type_model__MClassDef, /* SimpleCollection#0: MClassDef */
-&type_hash_collection__HashSetIteratormodel__MClassDef, /* HashSetIterator[HashSet#0]: HashSetIterator[MClassDef] */
-&type_abstract_collection__Collectionmodel__MClassDef, /* Collection[Set#0]: Collection[MClassDef] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassDef, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashSetNode[MClassDef]] */
-&type_model__MClassDef, /* RemovableCollection#0: MClassDef */
-&type_abstract_collection__Collectionmodel__MClassDef, /* Collection[HashSet#0]: Collection[MClassDef] */
-&type_abstract_collection__Collectionmodel__MClassDef, /* Collection[SimpleCollection#0]: Collection[MClassDef] */
-&type_model__MClassDef, /* Collection#0: MClassDef */
-&type_abstract_collection__Collectionmodel__MClassDef, /* Collection[Collection#0]: Collection[MClassDef] */
-NULL, /* empty */
-&type_model__MClassDef, /* HashCollection#0: MClassDef */
-&type_nullable_hash_collection__HashSetNodemodel__MClassDef, /* nullable HashCollection#1: nullable HashSetNode[MClassDef] */
-&type_hash_collection__HashSetNodemodel__MClassDef, /* HashCollection#1: HashSetNode[MClassDef] */
-&type_nullable_model__MClassDef, /* nullable HashCollection#0: nullable MClassDef */
-}
-};
-/* runtime type Set[MClassDef] */
-const struct type type_abstract_collection__Setmodel__MClassDef = {
-1504,
-"Set[MClassDef]", /* class_name_string */
-9,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type MNullableType */
-const struct type type_model__MNullableType = {
-1338,
-"MNullableType", /* class_name_string */
-5,
+/* runtime type AGeExpr */
+const struct type type_parser_nodes__AGeExpr = {
+-1, /*CAST DEAD*/
+"AGeExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-6,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-3, /* nullable MType */
--1, /* empty */
-600, /* MType */
-1338, /* MNullableType */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2008, /* AGeExpr */
 },
 };
-/* runtime type TextCollectorVisitor */
-const struct type type_modelize_property__TextCollectorVisitor = {
+/* runtime type AGgExpr */
+const struct type type_parser_nodes__AGgExpr = {
 -1, /*CAST DEAD*/
-"TextCollectorVisitor", /* class_name_string */
+"AGgExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-3,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-200, /* TextCollectorVisitor */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2009, /* AGgExpr */
 },
 };
-/* runtime type Frame */
-const struct type type_abstract_compiler__Frame = {
+/* runtime type AStarshipExpr */
+const struct type type_parser_nodes__AStarshipExpr = {
 -1, /*CAST DEAD*/
-"Frame", /* class_name_string */
+"AStarshipExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_abstract_compiler__Frame,
-3,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-201, /* Frame */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2010, /* AStarshipExpr */
 },
 };
-const struct types resolution_table_abstract_compiler__Frame = {
-0, /* dummy */
-{
-&type_abstract_compiler__AbstractCompilerVisitor, /* VISITOR: AbstractCompilerVisitor */
-}
-};
-/* runtime type MClassDefSorter */
-const struct type type_model__MClassDefSorter = {
+/* runtime type AIsaExpr */
+const struct type type_parser_nodes__AIsaExpr = {
 -1, /*CAST DEAD*/
-"MClassDefSorter", /* class_name_string */
+"AIsaExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_model__MClassDefSorter,
-3,
+NULL, /*NO RESOLUTIONS*/
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-202, /* MClassDefSorter */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2113, /* AIsaExpr */
 },
 };
-const struct types resolution_table_model__MClassDefSorter = {
-0, /* dummy */
-{
-NULL, /* empty */
-&type_array__Arraymodel__MClassDef, /* Array[Comparator#0]: Array[MClassDef] */
-}
-};
-/* runtime type ExternCFile */
-const struct type type_c_tools__ExternCFile = {
-1011,
-"ExternCFile", /* class_name_string */
-3,
+/* runtime type APlusExpr */
+const struct type type_parser_nodes__APlusExpr = {
+-1, /*CAST DEAD*/
+"APlusExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-4,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-203, /* ExternFile */
-1011, /* ExternCFile */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2011, /* APlusExpr */
 },
 };
-/* runtime type ExternFile */
-const struct type type_c_tools__ExternFile = {
-203,
-"ExternFile", /* class_name_string */
-2,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TypeVisitor */
-const struct type type_typing__TypeVisitor = {
+/* runtime type AMinusExpr */
+const struct type type_parser_nodes__AMinusExpr = {
 -1, /*CAST DEAD*/
-"TypeVisitor", /* class_name_string */
+"AMinusExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-3,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-204, /* TypeVisitor */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2012, /* AMinusExpr */
 },
 };
-/* runtime type MAttribute */
-const struct type type_model__MAttribute = {
-1991,
-"MAttribute", /* class_name_string */
-7,
+/* runtime type AStarExpr */
+const struct type type_parser_nodes__AStarExpr = {
+-1, /*CAST DEAD*/
+"AStarExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_model__MAttribute,
+NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-14, /* nullable PropertyLayoutElement */
-158, /* nullable MProperty */
-1012, /* nullable MAttribute */
-1008, /* PropertyLayoutElement */
-1486, /* MProperty */
-1991, /* MAttribute */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2013, /* AStarExpr */
 },
 };
-const struct types resolution_table_model__MAttribute = {
-0, /* dummy */
-{
-&type_array__Arraymodel__MAttributeDef, /* Array[MPROPDEF]: Array[MAttributeDef] */
-&type_more_collections__HashMap2mmodule__MModulemodel__MTypearray__Arraymodel__MAttributeDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MAttributeDef]] */
-}
-};
-/* runtime type nullable MAttribute */
-const struct type type_nullable_model__MAttribute = {
-1012,
-"nullable MAttribute", /* class_name_string */
-4,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type MAttributeDef */
-const struct type type_model__MAttributeDef = {
-1992,
-"MAttributeDef", /* class_name_string */
-7,
+/* runtime type ASlashExpr */
+const struct type type_parser_nodes__ASlashExpr = {
+-1, /*CAST DEAD*/
+"ASlashExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_model__MAttributeDef,
+NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-14, /* nullable PropertyLayoutElement */
-159, /* nullable MPropDef */
-1013, /* nullable MAttributeDef */
-1008, /* PropertyLayoutElement */
-1487, /* MPropDef */
-1992, /* MAttributeDef */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2014, /* ASlashExpr */
 },
 };
-const struct types resolution_table_model__MAttributeDef = {
-0, /* dummy */
-{
-&type_model__MAttribute, /* MPROPERTY: MAttribute */
-NULL, /* empty */
-&type_model__MAttributeDef, /* MPROPDEF: MAttributeDef */
-}
-};
-/* runtime type nullable MAttributeDef */
-const struct type type_nullable_model__MAttributeDef = {
-1013,
-"nullable MAttributeDef", /* class_name_string */
-4,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type MVirtualTypeProp */
-const struct type type_model__MVirtualTypeProp = {
-1993,
-"MVirtualTypeProp", /* class_name_string */
-7,
+/* runtime type APercentExpr */
+const struct type type_parser_nodes__APercentExpr = {
+-1, /*CAST DEAD*/
+"APercentExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_model__MVirtualTypeProp,
+NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-14, /* nullable PropertyLayoutElement */
-158, /* nullable MProperty */
-1014, /* nullable MVirtualTypeProp */
-1008, /* PropertyLayoutElement */
-1486, /* MProperty */
-1993, /* MVirtualTypeProp */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2015, /* APercentExpr */
 },
 };
-const struct types resolution_table_model__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_array__Arraymodel__MVirtualTypeDef, /* Array[MPROPDEF]: Array[MVirtualTypeDef] */
-&type_more_collections__HashMap2mmodule__MModulemodel__MTypearray__Arraymodel__MVirtualTypeDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MVirtualTypeDef]] */
-}
-};
-/* runtime type nullable MVirtualTypeProp */
-const struct type type_nullable_model__MVirtualTypeProp = {
-1014,
-"nullable MVirtualTypeProp", /* class_name_string */
-4,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type MVirtualType */
-const struct type type_model__MVirtualType = {
-1339,
-"MVirtualType", /* class_name_string */
-5,
+/* runtime type AStarstarExpr */
+const struct type type_parser_nodes__AStarstarExpr = {
+-1, /*CAST DEAD*/
+"AStarstarExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-6,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-3, /* nullable MType */
--1, /* empty */
-600, /* MType */
-1339, /* MVirtualType */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2016, /* AStarstarExpr */
 },
 };
-/* runtime type MVirtualTypeDef */
-const struct type type_model__MVirtualTypeDef = {
-1994,
-"MVirtualTypeDef", /* class_name_string */
-7,
+/* runtime type AUminusExpr */
+const struct type type_parser_nodes__AUminusExpr = {
+-1, /*CAST DEAD*/
+"AUminusExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_model__MVirtualTypeDef,
+NULL, /*NO RESOLUTIONS*/
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-14, /* nullable PropertyLayoutElement */
-159, /* nullable MPropDef */
-1015, /* nullable MVirtualTypeDef */
-1008, /* PropertyLayoutElement */
-1487, /* MPropDef */
-1994, /* MVirtualTypeDef */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2017, /* AUminusExpr */
 },
 };
-const struct types resolution_table_model__MVirtualTypeDef = {
-0, /* dummy */
-{
-&type_model__MVirtualTypeProp, /* MPROPERTY: MVirtualTypeProp */
-NULL, /* empty */
-&type_model__MVirtualTypeDef, /* MPROPDEF: MVirtualTypeDef */
-}
-};
-/* runtime type nullable MVirtualTypeDef */
-const struct type type_nullable_model__MVirtualTypeDef = {
-1015,
-"nullable MVirtualTypeDef", /* class_name_string */
-4,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type Array[MVirtualType] */
-const struct type type_array__Arraymodel__MVirtualType = {
+/* runtime type AOnceExpr */
+const struct type type_parser_nodes__AOnceExpr = {
 -1, /*CAST DEAD*/
-"Array[MVirtualType]", /* class_name_string */
+"AOnceExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arraymodel__MVirtualType,
-17,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-11, /* nullable Array[nullable MType] */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-93, /* Collection[nullable MType] */
-1316, /* Collection[MType] */
-1294, /* AbstractArrayRead[Object] */
-1331, /* AbstractArrayRead[nullable MType] */
-1459, /* Array[Object] */
-1505, /* Collection[MVirtualType] */
-1668, /* Array[nullable MType] */
--1, /* empty */
-2039, /* AbstractArrayRead[MType] */
-2127, /* AbstractArrayRead[MVirtualType] */
-2165, /* Array[MType] */
-2198, /* Array[MVirtualType] */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2018, /* AOnceExpr */
 },
 };
-const struct types resolution_table_array__Arraymodel__MVirtualType = {
-0, /* dummy */
-{
-&type_model__MVirtualType, /* Sequence#0: MVirtualType */
-&type_model__MVirtualType, /* SimpleCollection#0: MVirtualType */
-&type_array__NativeArraymodel__MVirtualType, /* NativeArray[Array#0]: NativeArray[MVirtualType] */
-&type_array__Arraymodel__MVirtualType, /* Array[Array#0]: Array[MVirtualType] */
-&type_array__NativeArraymodel__MVirtualType, /* NativeArray[ArrayCapable#0]: NativeArray[MVirtualType] */
-&type_model__MVirtualType, /* RemovableCollection#0: MVirtualType */
-&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[Sequence#0]: Collection[MVirtualType] */
-&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[SimpleCollection#0]: Collection[MVirtualType] */
-&type_model__MVirtualType, /* Collection#0: MVirtualType */
-&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[Collection#0]: Collection[MVirtualType] */
-&type_model__MVirtualType, /* SequenceRead#0: MVirtualType */
-&type_model__MVirtualType, /* AbstractArrayRead#0: MVirtualType */
-&type_array__Arraymodel__MVirtualType, /* Array[AbstractArrayRead#0]: Array[MVirtualType] */
-&type_array__ArrayIteratormodel__MVirtualType, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MVirtualType] */
-}
-};
-/* runtime type Collection[MVirtualType] */
-const struct type type_abstract_collection__Collectionmodel__MVirtualType = {
-1505,
-"Collection[MVirtualType]", /* class_name_string */
-10,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AbstractArrayRead[MVirtualType] */
-const struct type type_array__AbstractArrayReadmodel__MVirtualType = {
-2127,
-"AbstractArrayRead[MVirtualType]", /* class_name_string */
-14,
+/* runtime type ANewExpr */
+const struct type type_parser_nodes__ANewExpr = {
+2019,
+"ANewExpr", /* class_name_string */
+7,
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+8,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2019, /* ANewExpr */
+},
 };
-/* runtime type Array[AExpr] */
-const struct type type_array__Arrayparser_nodes__AExpr = {
+/* runtime type AIssetAttrExpr */
+const struct type type_parser_nodes__AIssetAttrExpr = {
 -1, /*CAST DEAD*/
-"Array[AExpr]", /* class_name_string */
+"AIssetAttrExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arrayparser_nodes__AExpr,
-18,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
-1294, /* AbstractArrayRead[Object] */
-1500, /* Collection[AExpr] */
-1459, /* Array[Object] */
-1648, /* AbstractArrayRead[ANode] */
--1, /* empty */
-2023, /* Array[ANode] */
-2024, /* AbstractArrayRead[Prod] */
-2128, /* AbstractArrayRead[AExpr] */
-2145, /* Array[Prod] */
--1, /* empty */
-2182, /* Array[AExpr] */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2020, /* AIssetAttrExpr */
 },
 };
-const struct types resolution_table_array__Arrayparser_nodes__AExpr = {
-0, /* dummy */
-{
-&type_parser_nodes__AExpr, /* Sequence#0: AExpr */
-&type_parser_nodes__AExpr, /* SimpleCollection#0: AExpr */
-&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[Array#0]: NativeArray[AExpr] */
-&type_array__Arrayparser_nodes__AExpr, /* Array[Array#0]: Array[AExpr] */
-&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[ArrayCapable#0]: NativeArray[AExpr] */
-&type_parser_nodes__AExpr, /* RemovableCollection#0: AExpr */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Sequence#0]: Collection[AExpr] */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[SimpleCollection#0]: Collection[AExpr] */
-&type_parser_nodes__AExpr, /* Collection#0: AExpr */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Collection#0]: Collection[AExpr] */
-&type_parser_nodes__AExpr, /* SequenceRead#0: AExpr */
-&type_parser_nodes__AExpr, /* AbstractArrayRead#0: AExpr */
-&type_array__Arrayparser_nodes__AExpr, /* Array[AbstractArrayRead#0]: Array[AExpr] */
-&type_array__ArrayIteratorparser_nodes__AExpr, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AExpr] */
-}
-};
-/* runtime type AbstractArrayRead[AExpr] */
-const struct type type_array__AbstractArrayReadparser_nodes__AExpr = {
-2128,
-"AbstractArrayRead[AExpr]", /* class_name_string */
-14,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type Array[Variable] */
-const struct type type_array__Arrayscope__Variable = {
+/* runtime type AAttrExpr */
+const struct type type_parser_nodes__AAttrExpr = {
 -1, /*CAST DEAD*/
-"Array[Variable]", /* class_name_string */
+"AAttrExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arrayscope__Variable,
-11,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-626, /* Collection[Variable] */
--1, /* empty */
-1294, /* AbstractArrayRead[Object] */
-1710, /* AbstractArrayRead[Variable] */
-1459, /* Array[Object] */
-2063, /* Array[Variable] */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2021, /* AAttrExpr */
 },
 };
-const struct types resolution_table_array__Arrayscope__Variable = {
-0, /* dummy */
-{
-&type_scope__Variable, /* Sequence#0: Variable */
-&type_scope__Variable, /* SimpleCollection#0: Variable */
-&type_array__NativeArrayscope__Variable, /* NativeArray[Array#0]: NativeArray[Variable] */
-&type_array__Arrayscope__Variable, /* Array[Array#0]: Array[Variable] */
-&type_array__NativeArrayscope__Variable, /* NativeArray[ArrayCapable#0]: NativeArray[Variable] */
-&type_scope__Variable, /* RemovableCollection#0: Variable */
-&type_abstract_collection__Collectionscope__Variable, /* Collection[Sequence#0]: Collection[Variable] */
-&type_abstract_collection__Collectionscope__Variable, /* Collection[SimpleCollection#0]: Collection[Variable] */
-&type_scope__Variable, /* Collection#0: Variable */
-&type_abstract_collection__Collectionscope__Variable, /* Collection[Collection#0]: Collection[Variable] */
-&type_scope__Variable, /* SequenceRead#0: Variable */
-&type_scope__Variable, /* AbstractArrayRead#0: Variable */
-&type_array__Arrayscope__Variable, /* Array[AbstractArrayRead#0]: Array[Variable] */
-&type_array__ArrayIteratorscope__Variable, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[Variable] */
-}
-};
-/* runtime type AbstractArrayRead[Variable] */
-const struct type type_array__AbstractArrayReadscope__Variable = {
-1710,
-"AbstractArrayRead[Variable]", /* class_name_string */
-8,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type Array[AIntExpr] */
-const struct type type_array__Arrayparser_nodes__AIntExpr = {
+/* runtime type ABraExpr */
+const struct type type_parser_nodes__ABraExpr = {
 -1, /*CAST DEAD*/
-"Array[AIntExpr]", /* class_name_string */
+"ABraExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_array__Arrayparser_nodes__AIntExpr,
-19,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
-1294, /* AbstractArrayRead[Object] */
-1500, /* Collection[AExpr] */
-1459, /* Array[Object] */
-1648, /* AbstractArrayRead[ANode] */
-1711, /* Collection[AIntExpr] */
-2023, /* Array[ANode] */
-2024, /* AbstractArrayRead[Prod] */
-2128, /* AbstractArrayRead[AExpr] */
-2145, /* Array[Prod] */
-2167, /* AbstractArrayRead[AIntExpr] */
-2182, /* Array[AExpr] */
-2200, /* Array[AIntExpr] */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2022, /* ABraExpr */
 },
 };
-const struct types resolution_table_array__Arrayparser_nodes__AIntExpr = {
-0, /* dummy */
-{
-&type_parser_nodes__AIntExpr, /* Sequence#0: AIntExpr */
-&type_parser_nodes__AIntExpr, /* SimpleCollection#0: AIntExpr */
-&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[Array#0]: NativeArray[AIntExpr] */
-&type_array__Arrayparser_nodes__AIntExpr, /* Array[Array#0]: Array[AIntExpr] */
-&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[ArrayCapable#0]: NativeArray[AIntExpr] */
-&type_parser_nodes__AIntExpr, /* RemovableCollection#0: AIntExpr */
-&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[Sequence#0]: Collection[AIntExpr] */
-&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[SimpleCollection#0]: Collection[AIntExpr] */
-&type_parser_nodes__AIntExpr, /* Collection#0: AIntExpr */
-&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[Collection#0]: Collection[AIntExpr] */
-&type_parser_nodes__AIntExpr, /* SequenceRead#0: AIntExpr */
-&type_parser_nodes__AIntExpr, /* AbstractArrayRead#0: AIntExpr */
-&type_array__Arrayparser_nodes__AIntExpr, /* Array[AbstractArrayRead#0]: Array[AIntExpr] */
-&type_array__ArrayIteratorparser_nodes__AIntExpr, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AIntExpr] */
-}
-};
-/* runtime type Collection[AIntExpr] */
-const struct type type_abstract_collection__Collectionparser_nodes__AIntExpr = {
-1711,
-"Collection[AIntExpr]", /* class_name_string */
-11,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AbstractArrayRead[AIntExpr] */
-const struct type type_array__AbstractArrayReadparser_nodes__AIntExpr = {
-2167,
-"AbstractArrayRead[AIntExpr]", /* class_name_string */
-16,
+/* runtime type AAsCastExpr */
+const struct type type_parser_nodes__AAsCastExpr = {
+-1, /*CAST DEAD*/
+"AAsCastExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+NULL, /*NO RESOLUTIONS*/
+8,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2023, /* AAsCastExpr */
+},
 };
-/* runtime type TEol */
-const struct type type_parser_nodes__TEol = {
+/* runtime type AAsNotnullExpr */
+const struct type type_parser_nodes__AAsNotnullExpr = {
 -1, /*CAST DEAD*/
-"TEol", /* class_name_string */
+"AAsNotnullExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1506, /* TEol */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2024, /* AAsNotnullExpr */
 },
 };
-/* runtime type TComment */
-const struct type type_parser_nodes__TComment = {
-1507,
-"TComment", /* class_name_string */
-6,
+/* runtime type AVarargExpr */
+const struct type type_parser_nodes__AVarargExpr = {
+2025,
+"AVarargExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1507, /* TComment */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2025, /* AVarargExpr */
 },
 };
-/* runtime type TKwpackage */
-const struct type type_parser_nodes__TKwpackage = {
+/* runtime type ATrueExpr */
+const struct type type_parser_nodes__ATrueExpr = {
 -1, /*CAST DEAD*/
-"TKwpackage", /* class_name_string */
+"ATrueExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1508, /* TKwpackage */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2114, /* ATrueExpr */
 },
 };
-/* runtime type TKwmodule */
-const struct type type_parser_nodes__TKwmodule = {
-1712,
-"TKwmodule", /* class_name_string */
-6,
+/* runtime type AFalseExpr */
+const struct type type_parser_nodes__AFalseExpr = {
+-1, /*CAST DEAD*/
+"AFalseExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-205, /* nullable TKwmodule */
-622, /* ANode */
-1329, /* Token */
-1712, /* TKwmodule */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2001, /* ABoolExpr */
+2115, /* AFalseExpr */
 },
 };
-/* runtime type nullable TKwmodule */
-const struct type type_nullable_parser_nodes__TKwmodule = {
-205,
-"nullable TKwmodule", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+/* runtime type ANullExpr */
+const struct type type_parser_nodes__ANullExpr = {
+-1, /*CAST DEAD*/
+"ANullExpr", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+8,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2026, /* ANullExpr */
+},
 };
-/* runtime type TKwimport */
-const struct type type_parser_nodes__TKwimport = {
-1713,
-"TKwimport", /* class_name_string */
-6,
+/* runtime type ADecIntExpr */
+const struct type type_parser_nodes__ADecIntExpr = {
+-1, /*CAST DEAD*/
+"ADecIntExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-206, /* nullable TKwimport */
-622, /* ANode */
-1329, /* Token */
-1713, /* TKwimport */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2027, /* AIntExpr */
+2116, /* ADecIntExpr */
 },
 };
-/* runtime type nullable TKwimport */
-const struct type type_nullable_parser_nodes__TKwimport = {
-206,
-"nullable TKwimport", /* class_name_string */
-3,
-1,
+/* runtime type AIntExpr */
+const struct type type_parser_nodes__AIntExpr = {
+2027,
+"AIntExpr", /* class_name_string */
+7,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwclass */
-const struct type type_parser_nodes__TKwclass = {
-1714,
-"TKwclass", /* class_name_string */
-6,
+/* runtime type AHexIntExpr */
+const struct type type_parser_nodes__AHexIntExpr = {
+-1, /*CAST DEAD*/
+"AHexIntExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-207, /* nullable TKwclass */
-622, /* ANode */
-1329, /* Token */
-1714, /* TKwclass */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2027, /* AIntExpr */
+2117, /* AHexIntExpr */
 },
 };
-/* runtime type nullable TKwclass */
-const struct type type_nullable_parser_nodes__TKwclass = {
-207,
-"nullable TKwclass", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwabstract */
-const struct type type_parser_nodes__TKwabstract = {
-1715,
-"TKwabstract", /* class_name_string */
-6,
+/* runtime type AFloatExpr */
+const struct type type_parser_nodes__AFloatExpr = {
+2028,
+"AFloatExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-208, /* nullable TKwabstract */
-622, /* ANode */
-1329, /* Token */
-1715, /* TKwabstract */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2028, /* AFloatExpr */
 },
 };
-/* runtime type nullable TKwabstract */
-const struct type type_nullable_parser_nodes__TKwabstract = {
-208,
-"nullable TKwabstract", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwinterface */
-const struct type type_parser_nodes__TKwinterface = {
-1716,
-"TKwinterface", /* class_name_string */
-6,
+/* runtime type ACharExpr */
+const struct type type_parser_nodes__ACharExpr = {
+2029,
+"ACharExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-209, /* nullable TKwinterface */
-622, /* ANode */
-1329, /* Token */
-1716, /* TKwinterface */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2029, /* ACharExpr */
 },
 };
-/* runtime type nullable TKwinterface */
-const struct type type_nullable_parser_nodes__TKwinterface = {
-209,
-"nullable TKwinterface", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwenum */
-const struct type type_parser_nodes__TKwenum = {
-1717,
-"TKwenum", /* class_name_string */
-6,
+/* runtime type AStringExpr */
+const struct type type_parser_nodes__AStringExpr = {
+-1, /*CAST DEAD*/
+"AStringExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-210, /* nullable TKwenum */
-622, /* ANode */
-1329, /* Token */
-1717, /* TKwenum */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2030, /* AStringFormExpr */
+2118, /* AStringExpr */
 },
 };
-/* runtime type nullable TKwenum */
-const struct type type_nullable_parser_nodes__TKwenum = {
-210,
-"nullable TKwenum", /* class_name_string */
-3,
-1,
+/* runtime type AStringFormExpr */
+const struct type type_parser_nodes__AStringFormExpr = {
+2030,
+"AStringFormExpr", /* class_name_string */
+7,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwend */
-const struct type type_parser_nodes__TKwend = {
-1718,
-"TKwend", /* class_name_string */
-6,
+/* runtime type ACrangeExpr */
+const struct type type_parser_nodes__ACrangeExpr = {
+2119,
+"ACrangeExpr", /* class_name_string */
+8,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-211, /* nullable TKwend */
-622, /* ANode */
-1329, /* Token */
-1718, /* TKwend */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2031, /* ARangeExpr */
+2119, /* ACrangeExpr */
 },
 };
-/* runtime type nullable TKwend */
-const struct type type_nullable_parser_nodes__TKwend = {
-211,
-"nullable TKwend", /* class_name_string */
-3,
-1,
+/* runtime type ARangeExpr */
+const struct type type_parser_nodes__ARangeExpr = {
+2031,
+"ARangeExpr", /* class_name_string */
+7,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwmeth */
-const struct type type_parser_nodes__TKwmeth = {
-1719,
-"TKwmeth", /* class_name_string */
-6,
+/* runtime type AOrangeExpr */
+const struct type type_parser_nodes__AOrangeExpr = {
+2120,
+"AOrangeExpr", /* class_name_string */
+8,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-212, /* nullable TKwmeth */
-622, /* ANode */
-1329, /* Token */
-1719, /* TKwmeth */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2031, /* ARangeExpr */
+2120, /* AOrangeExpr */
 },
 };
-/* runtime type nullable TKwmeth */
-const struct type type_nullable_parser_nodes__TKwmeth = {
-212,
-"nullable TKwmeth", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwtype */
-const struct type type_parser_nodes__TKwtype = {
-1720,
-"TKwtype", /* class_name_string */
-6,
+/* runtime type AArrayExpr */
+const struct type type_parser_nodes__AArrayExpr = {
+-1, /*CAST DEAD*/
+"AArrayExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-213, /* nullable TKwtype */
-622, /* ANode */
-1329, /* Token */
-1720, /* TKwtype */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2032, /* AArrayExpr */
 },
 };
-/* runtime type nullable TKwtype */
-const struct type type_nullable_parser_nodes__TKwtype = {
-213,
-"nullable TKwtype", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwinit */
-const struct type type_parser_nodes__TKwinit = {
-1721,
-"TKwinit", /* class_name_string */
-6,
+/* runtime type AParExpr */
+const struct type type_parser_nodes__AParExpr = {
+-1, /*CAST DEAD*/
+"AParExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-214, /* nullable TKwinit */
-622, /* ANode */
-1329, /* Token */
-1721, /* TKwinit */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2033, /* AParExpr */
 },
 };
-/* runtime type nullable TKwinit */
-const struct type type_nullable_parser_nodes__TKwinit = {
-214,
-"nullable TKwinit", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwredef */
-const struct type type_parser_nodes__TKwredef = {
+/* runtime type AManyExpr */
+const struct type type_parser_nodes__AManyExpr = {
 -1, /*CAST DEAD*/
-"TKwredef", /* class_name_string */
+"AManyExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-215, /* nullable TKwredef */
-622, /* ANode */
-1329, /* Token */
-1722, /* TKwredef */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2034, /* AManyExpr */
 },
 };
-/* runtime type nullable TKwredef */
-const struct type type_nullable_parser_nodes__TKwredef = {
-215,
-"nullable TKwredef", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwis */
-const struct type type_parser_nodes__TKwis = {
--1, /*CAST DEAD*/
-"TKwis", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ASuperstringExpr */
+const struct type type_parser_nodes__ASuperstringExpr = {
+2035,
+"ASuperstringExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1509, /* TKwis */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2035, /* ASuperstringExpr */
 },
 };
-/* runtime type TKwdo */
-const struct type type_parser_nodes__TKwdo = {
-1723,
-"TKwdo", /* class_name_string */
-6,
+/* runtime type AStartStringExpr */
+const struct type type_parser_nodes__AStartStringExpr = {
+-1, /*CAST DEAD*/
+"AStartStringExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-216, /* nullable TKwdo */
-622, /* ANode */
-1329, /* Token */
-1723, /* TKwdo */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2030, /* AStringFormExpr */
+2121, /* AStartStringExpr */
 },
 };
-/* runtime type nullable TKwdo */
-const struct type type_nullable_parser_nodes__TKwdo = {
-216,
-"nullable TKwdo", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwreadable */
-const struct type type_parser_nodes__TKwreadable = {
-1724,
-"TKwreadable", /* class_name_string */
-6,
+/* runtime type AMidStringExpr */
+const struct type type_parser_nodes__AMidStringExpr = {
+-1, /*CAST DEAD*/
+"AMidStringExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-217, /* nullable TKwreadable */
-622, /* ANode */
-1329, /* Token */
-1724, /* TKwreadable */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2030, /* AStringFormExpr */
+2122, /* AMidStringExpr */
 },
 };
-/* runtime type nullable TKwreadable */
-const struct type type_nullable_parser_nodes__TKwreadable = {
-217,
-"nullable TKwreadable", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwwritable */
-const struct type type_parser_nodes__TKwwritable = {
-1725,
-"TKwwritable", /* class_name_string */
-6,
+/* runtime type AEndStringExpr */
+const struct type type_parser_nodes__AEndStringExpr = {
+-1, /*CAST DEAD*/
+"AEndStringExpr", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-218, /* nullable TKwwritable */
-622, /* ANode */
-1329, /* Token */
-1725, /* TKwwritable */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2030, /* AStringFormExpr */
+2123, /* AEndStringExpr */
 },
 };
-/* runtime type nullable TKwwritable */
-const struct type type_nullable_parser_nodes__TKwwritable = {
-218,
-"nullable TKwwritable", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwvar */
-const struct type type_parser_nodes__TKwvar = {
-1726,
-"TKwvar", /* class_name_string */
+/* runtime type AAnnotation */
+const struct type type_parser_nodes__AAnnotation = {
+1732,
+"AAnnotation", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -7781,179 +7726,196 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-219, /* nullable TKwvar */
-622, /* ANode */
-1329, /* Token */
-1726, /* TKwvar */
+12, /* nullable ANode */
+188, /* nullable AAnnotation */
+632, /* ANode */
+1380, /* Prod */
+1732, /* AAnnotation */
 },
 };
-/* runtime type nullable TKwvar */
-const struct type type_nullable_parser_nodes__TKwvar = {
-219,
-"nullable TKwvar", /* class_name_string */
+/* runtime type nullable AAnnotation */
+const struct type type_nullable_parser_nodes__AAnnotation = {
+188,
+"nullable AAnnotation", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwintern */
-const struct type type_parser_nodes__TKwintern = {
+/* runtime type ATypeExpr */
+const struct type type_parser_nodes__ATypeExpr = {
 -1, /*CAST DEAD*/
-"TKwintern", /* class_name_string */
+"ATypeExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1510, /* TKwintern */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2036, /* ATypeExpr */
 },
 };
-/* runtime type TKwextern */
-const struct type type_parser_nodes__TKwextern = {
-1727,
-"TKwextern", /* class_name_string */
-6,
+/* runtime type AMethidExpr */
+const struct type type_parser_nodes__AMethidExpr = {
+2037,
+"AMethidExpr", /* class_name_string */
+7,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-220, /* nullable TKwextern */
-622, /* ANode */
-1329, /* Token */
-1727, /* TKwextern */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2037, /* AMethidExpr */
 },
 };
-/* runtime type nullable TKwextern */
-const struct type type_nullable_parser_nodes__TKwextern = {
-220,
-"nullable TKwextern", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwpublic */
-const struct type type_parser_nodes__TKwpublic = {
+/* runtime type AAtExpr */
+const struct type type_parser_nodes__AAtExpr = {
 -1, /*CAST DEAD*/
-"TKwpublic", /* class_name_string */
+"AAtExpr", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-221, /* nullable TKwpublic */
-622, /* ANode */
-1329, /* Token */
-1728, /* TKwpublic */
+12, /* nullable ANode */
+184, /* nullable AExpr */
+632, /* ANode */
+1380, /* Prod */
+1728, /* AExpr */
+2038, /* AAtExpr */
 },
 };
-/* runtime type nullable TKwpublic */
-const struct type type_nullable_parser_nodes__TKwpublic = {
-221,
-"nullable TKwpublic", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwprotected */
-const struct type type_parser_nodes__TKwprotected = {
-1729,
-"TKwprotected", /* class_name_string */
-6,
+/* runtime type AIdAtid */
+const struct type type_parser_nodes__AIdAtid = {
+-1, /*CAST DEAD*/
+"AIdAtid", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-222, /* nullable TKwprotected */
-622, /* ANode */
-1329, /* Token */
-1729, /* TKwprotected */
+12, /* nullable ANode */
+189, /* nullable AAtid */
+632, /* ANode */
+1380, /* Prod */
+1733, /* AAtid */
+2039, /* AIdAtid */
 },
 };
-/* runtime type nullable TKwprotected */
-const struct type type_nullable_parser_nodes__TKwprotected = {
-222,
-"nullable TKwprotected", /* class_name_string */
+/* runtime type nullable AAtid */
+const struct type type_nullable_parser_nodes__AAtid = {
+189,
+"nullable AAtid", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwprivate */
-const struct type type_parser_nodes__TKwprivate = {
-1730,
-"TKwprivate", /* class_name_string */
+/* runtime type AAtid */
+const struct type type_parser_nodes__AAtid = {
+1733,
+"AAtid", /* class_name_string */
 6,
 0,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type AKwexternAtid */
+const struct type type_parser_nodes__AKwexternAtid = {
+-1, /*CAST DEAD*/
+"AKwexternAtid", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
 NULL, /*NO RESOLUTIONS*/
-7,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-223, /* nullable TKwprivate */
-622, /* ANode */
-1329, /* Token */
-1730, /* TKwprivate */
+12, /* nullable ANode */
+189, /* nullable AAtid */
+632, /* ANode */
+1380, /* Prod */
+1733, /* AAtid */
+2040, /* AKwexternAtid */
 },
 };
-/* runtime type nullable TKwprivate */
-const struct type type_nullable_parser_nodes__TKwprivate = {
-223,
-"nullable TKwprivate", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwintrude */
-const struct type type_parser_nodes__TKwintrude = {
-1731,
-"TKwintrude", /* class_name_string */
-6,
+/* runtime type AKwabstractAtid */
+const struct type type_parser_nodes__AKwabstractAtid = {
+-1, /*CAST DEAD*/
+"AKwabstractAtid", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
+8,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+189, /* nullable AAtid */
+632, /* ANode */
+1380, /* Prod */
+1733, /* AAtid */
+2041, /* AKwabstractAtid */
+},
+};
+/* runtime type AParExprs */
+const struct type type_parser_nodes__AParExprs = {
+2042,
+"AParExprs", /* class_name_string */
 7,
+0,
+NULL, /*NO RESOLUTIONS*/
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-224, /* nullable TKwintrude */
-622, /* ANode */
-1329, /* Token */
-1731, /* TKwintrude */
+12, /* nullable ANode */
+186, /* nullable AExprs */
+632, /* ANode */
+1380, /* Prod */
+1730, /* AExprs */
+2042, /* AParExprs */
 },
 };
-/* runtime type nullable TKwintrude */
-const struct type type_nullable_parser_nodes__TKwintrude = {
-224,
-"nullable TKwintrude", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+/* runtime type ABraExprs */
+const struct type type_parser_nodes__ABraExprs = {
+-1, /*CAST DEAD*/
+"ABraExprs", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+NULL, /*NO RESOLUTIONS*/
+8,
+{
+0, /* nullable Object */
+1, /* Object */
+12, /* nullable ANode */
+186, /* nullable AExprs */
+632, /* ANode */
+1380, /* Prod */
+1730, /* AExprs */
+2043, /* ABraExprs */
+},
 };
-/* runtime type TKwif */
-const struct type type_parser_nodes__TKwif = {
-1732,
-"TKwif", /* class_name_string */
+/* runtime type AModuleName */
+const struct type type_parser_nodes__AModuleName = {
+1734,
+"AModuleName", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -7961,611 +7923,836 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-225, /* nullable TKwif */
-622, /* ANode */
-1329, /* Token */
-1732, /* TKwif */
+12, /* nullable ANode */
+190, /* nullable AModuleName */
+632, /* ANode */
+1380, /* Prod */
+1734, /* AModuleName */
 },
 };
-/* runtime type nullable TKwif */
-const struct type type_nullable_parser_nodes__TKwif = {
-225,
-"nullable TKwif", /* class_name_string */
+/* runtime type nullable AModuleName */
+const struct type type_nullable_parser_nodes__AModuleName = {
+190,
+"nullable AModuleName", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwthen */
-const struct type type_parser_nodes__TKwthen = {
-1733,
-"TKwthen", /* class_name_string */
-6,
+/* runtime type AQualified */
+const struct type type_parser_nodes__AQualified = {
+-1, /*CAST DEAD*/
+"AQualified", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-226, /* nullable TKwthen */
-622, /* ANode */
-1329, /* Token */
-1733, /* TKwthen */
+12, /* nullable ANode */
+191, /* nullable AQualified */
+632, /* ANode */
+1380, /* Prod */
+1735, /* AQualified */
 },
 };
-/* runtime type nullable TKwthen */
-const struct type type_nullable_parser_nodes__TKwthen = {
-226,
-"nullable TKwthen", /* class_name_string */
+/* runtime type nullable AQualified */
+const struct type type_nullable_parser_nodes__AQualified = {
+191,
+"nullable AQualified", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwelse */
-const struct type type_parser_nodes__TKwelse = {
-1734,
-"TKwelse", /* class_name_string */
-6,
+/* runtime type ADoc */
+const struct type type_parser_nodes__ADoc = {
+-1, /*CAST DEAD*/
+"ADoc", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-227, /* nullable TKwelse */
-622, /* ANode */
-1329, /* Token */
-1734, /* TKwelse */
+12, /* nullable ANode */
+192, /* nullable ADoc */
+632, /* ANode */
+1380, /* Prod */
+1736, /* ADoc */
 },
 };
-/* runtime type nullable TKwelse */
-const struct type type_nullable_parser_nodes__TKwelse = {
-227,
-"nullable TKwelse", /* class_name_string */
+/* runtime type nullable ADoc */
+const struct type type_nullable_parser_nodes__ADoc = {
+192,
+"nullable ADoc", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwwhile */
-const struct type type_parser_nodes__TKwwhile = {
-1735,
-"TKwwhile", /* class_name_string */
-6,
+/* runtime type ALexerError */
+const struct type type_parser_nodes__ALexerError = {
+-1, /*CAST DEAD*/
+"ALexerError", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-228, /* nullable TKwwhile */
-622, /* ANode */
-1329, /* Token */
-1735, /* TKwwhile */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1535, /* EOF */
+1697, /* AError */
+2044, /* ALexerError */
 },
 };
-/* runtime type nullable TKwwhile */
-const struct type type_nullable_parser_nodes__TKwwhile = {
-228,
-"nullable TKwwhile", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwloop */
-const struct type type_parser_nodes__TKwloop = {
-1736,
-"TKwloop", /* class_name_string */
+/* runtime type MNullableType */
+const struct type type_model__MNullableType = {
+1388,
+"MNullableType", /* class_name_string */
+5,
+0,
+NULL, /*NO RESOLUTIONS*/
 6,
+{
+0, /* nullable Object */
+1, /* Object */
+4, /* nullable MType */
+-1, /* empty */
+609, /* MType */
+1388, /* MNullableType */
+},
+};
+/* runtime type Scope */
+const struct type type_scope__Scope = {
+193,
+"Scope", /* class_name_string */
+2,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-229, /* nullable TKwloop */
-622, /* ANode */
-1329, /* Token */
-1736, /* TKwloop */
+193, /* Scope */
 },
 };
-/* runtime type nullable TKwloop */
-const struct type type_nullable_parser_nodes__TKwloop = {
-229,
-"nullable TKwloop", /* class_name_string */
+/* runtime type HashMap[String, Variable] */
+const struct type type_hash_collection__HashMapstring__Stringscope__Variable = {
+194,
+"HashMap[String, Variable]", /* class_name_string */
+2,
+0,
+&resolution_table_hash_collection__HashMapstring__Stringscope__Variable,
 3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+{
+0, /* nullable Object */
+1, /* Object */
+194, /* HashMap[String, Variable] */
+},
 };
-/* runtime type TKwfor */
-const struct type type_parser_nodes__TKwfor = {
-1737,
-"TKwfor", /* class_name_string */
-6,
+const struct types resolution_table_hash_collection__HashMapstring__Stringscope__Variable = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapKeysstring__Stringscope__Variable, /* HashMapKeys[K, V]: HashMapKeys[String, Variable] */
+&type_hash_collection__HashMapValuesstring__Stringscope__Variable, /* HashMapValues[K, V]: HashMapValues[String, Variable] */
+&type_string__String, /* K: String */
+&type_hash_collection__HashMapIteratorstring__Stringscope__Variable, /* HashMapIterator[K, V]: HashMapIterator[String, Variable] */
+&type_string__String, /* K: String */
+&type_scope__Variable, /* V: Variable */
+&type_hash_collection__HashMapNodestring__Stringscope__Variable, /* HashMapNode[K, V]: HashMapNode[String, Variable] */
+&type_string__String, /* K: String */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable_hash_collection__HashMapNodestring__Stringscope__Variable, /* nullable N: nullable HashMapNode[String, Variable] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringscope__Variable, /* NativeArray[E]: NativeArray[nullable HashMapNode[String, Variable]] */
+&type_hash_collection__HashMapNodestring__Stringscope__Variable, /* N: HashMapNode[String, Variable] */
+&type_nullable_string__String, /* nullable K: nullable String */
+}
+};
+/* runtime type FlowContext */
+const struct type type_flow__FlowContext = {
+195,
+"FlowContext", /* class_name_string */
+2,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-230, /* nullable TKwfor */
-622, /* ANode */
-1329, /* Token */
-1737, /* TKwfor */
+195, /* FlowContext */
 },
 };
-/* runtime type nullable TKwfor */
-const struct type type_nullable_parser_nodes__TKwfor = {
-230,
-"nullable TKwfor", /* class_name_string */
+/* runtime type HashMap[Variable, nullable MType] */
+const struct type type_hash_collection__HashMapscope__Variablenullable_model__MType = {
+196,
+"HashMap[Variable, nullable MType]", /* class_name_string */
+2,
+0,
+&resolution_table_hash_collection__HashMapscope__Variablenullable_model__MType,
 3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+{
+0, /* nullable Object */
+1, /* Object */
+196, /* HashMap[Variable, nullable MType] */
+},
 };
-/* runtime type TKwin */
-const struct type type_parser_nodes__TKwin = {
-1738,
-"TKwin", /* class_name_string */
-6,
+const struct types resolution_table_hash_collection__HashMapscope__Variablenullable_model__MType = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapKeysscope__Variablenullable_model__MType, /* HashMapKeys[K, V]: HashMapKeys[Variable, nullable MType] */
+&type_hash_collection__HashMapValuesscope__Variablenullable_model__MType, /* HashMapValues[K, V]: HashMapValues[Variable, nullable MType] */
+&type_scope__Variable, /* K: Variable */
+&type_hash_collection__HashMapIteratorscope__Variablenullable_model__MType, /* HashMapIterator[K, V]: HashMapIterator[Variable, nullable MType] */
+&type_scope__Variable, /* K: Variable */
+&type_nullable_model__MType, /* V: nullable MType */
+&type_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* HashMapNode[K, V]: HashMapNode[Variable, nullable MType] */
+&type_scope__Variable, /* K: Variable */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* nullable N: nullable HashMapNode[Variable, nullable MType] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[Variable, nullable MType]] */
+&type_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* N: HashMapNode[Variable, nullable MType] */
+&type_nullable_scope__Variable, /* nullable K: nullable Variable */
+}
+};
+/* runtime type HashMap[Variable, nullable Array[nullable MType]] */
+const struct type type_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType = {
+197,
+"HashMap[Variable, nullable Array[nullable MType]]", /* class_name_string */
+2,
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-231, /* nullable TKwin */
-622, /* ANode */
-1329, /* Token */
-1738, /* TKwin */
+197, /* HashMap[Variable, nullable Array[nullable MType]] */
 },
 };
-/* runtime type nullable TKwin */
-const struct type type_nullable_parser_nodes__TKwin = {
-231,
-"nullable TKwin", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
+const struct types resolution_table_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapKeysscope__Variablenullable_array__Arraynullable_model__MType, /* HashMapKeys[K, V]: HashMapKeys[Variable, nullable Array[nullable MType]] */
+&type_hash_collection__HashMapValuesscope__Variablenullable_array__Arraynullable_model__MType, /* HashMapValues[K, V]: HashMapValues[Variable, nullable Array[nullable MType]] */
+&type_scope__Variable, /* K: Variable */
+&type_hash_collection__HashMapIteratorscope__Variablenullable_array__Arraynullable_model__MType, /* HashMapIterator[K, V]: HashMapIterator[Variable, nullable Array[nullable MType]] */
+&type_scope__Variable, /* K: Variable */
+&type_nullable_array__Arraynullable_model__MType, /* V: nullable Array[nullable MType] */
+&type_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* HashMapNode[K, V]: HashMapNode[Variable, nullable Array[nullable MType]] */
+&type_scope__Variable, /* K: Variable */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* nullable N: nullable HashMapNode[Variable, nullable Array[nullable MType]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[Variable, nullable Array[nullable MType]]] */
+&type_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* N: HashMapNode[Variable, nullable Array[nullable MType]] */
+&type_nullable_scope__Variable, /* nullable K: nullable Variable */
+}
 };
-/* runtime type TKwand */
-const struct type type_parser_nodes__TKwand = {
+/* runtime type Frame */
+const struct type type_abstract_compiler__Frame = {
 -1, /*CAST DEAD*/
-"TKwand", /* class_name_string */
+"Frame", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_abstract_compiler__Frame,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1511, /* TKwand */
+198, /* Frame */
 },
 };
-/* runtime type TKwor */
-const struct type type_parser_nodes__TKwor = {
+const struct types resolution_table_abstract_compiler__Frame = {
+0, /* dummy */
+{
+&type_abstract_compiler__AbstractCompilerVisitor, /* VISITOR: AbstractCompilerVisitor */
+}
+};
+/* runtime type MClassDefSorter */
+const struct type type_model__MClassDefSorter = {
 -1, /*CAST DEAD*/
-"TKwor", /* class_name_string */
+"MClassDefSorter", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_model__MClassDefSorter,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1512, /* TKwor */
+199, /* MClassDefSorter */
 },
 };
-/* runtime type TKwnot */
-const struct type type_parser_nodes__TKwnot = {
-1739,
-"TKwnot", /* class_name_string */
-6,
+const struct types resolution_table_model__MClassDefSorter = {
+0, /* dummy */
+{
+&type_model__MClassDef, /* COMPARED: MClassDef */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_array__Arraymodel__MClassDef, /* Array[COMPARED]: Array[MClassDef] */
+}
+};
+/* runtime type ExternCFile */
+const struct type type_c_tools__ExternCFile = {
+1055,
+"ExternCFile", /* class_name_string */
+3,
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-232, /* nullable TKwnot */
-622, /* ANode */
-1329, /* Token */
-1739, /* TKwnot */
+200, /* ExternFile */
+1055, /* ExternCFile */
 },
 };
-/* runtime type nullable TKwnot */
-const struct type type_nullable_parser_nodes__TKwnot = {
-232,
-"nullable TKwnot", /* class_name_string */
-3,
-1,
+/* runtime type ExternFile */
+const struct type type_c_tools__ExternFile = {
+200,
+"ExternFile", /* class_name_string */
+2,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwimplies */
-const struct type type_parser_nodes__TKwimplies = {
+/* runtime type TypeVisitor */
+const struct type type_typing__TypeVisitor = {
 -1, /*CAST DEAD*/
-"TKwimplies", /* class_name_string */
+"TypeVisitor", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
-7,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1513, /* TKwimplies */
+201, /* TypeVisitor */
 },
 };
-/* runtime type TKwreturn */
-const struct type type_parser_nodes__TKwreturn = {
--1, /*CAST DEAD*/
-"TKwreturn", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
+/* runtime type MAttribute */
+const struct type type_model__MAttribute = {
+2045,
+"MAttribute", /* class_name_string */
 7,
+0,
+&resolution_table_model__MAttribute,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-233, /* nullable TKwreturn */
-622, /* ANode */
-1329, /* Token */
-1740, /* TKwreturn */
+8, /* nullable PropertyLayoutElement */
+155, /* nullable MProperty */
+615, /* PropertyLayoutElement */
+1056, /* nullable MAttribute */
+1543, /* MProperty */
+2045, /* MAttribute */
 },
 };
-/* runtime type nullable TKwreturn */
-const struct type type_nullable_parser_nodes__TKwreturn = {
-233,
-"nullable TKwreturn", /* class_name_string */
-3,
+const struct types resolution_table_model__MAttribute = {
+0, /* dummy */
+{
+&type_array__Arraymodel__MAttributeDef, /* Array[MPROPDEF]: Array[MAttributeDef] */
+&type_more_collections__HashMap2mmodule__MModulemodel__MTypearray__Arraymodel__MAttributeDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MAttributeDef]] */
+&type_model__MAttributeDef, /* MPROPDEF: MAttributeDef */
+}
+};
+/* runtime type nullable MAttribute */
+const struct type type_nullable_model__MAttribute = {
+1056,
+"nullable MAttribute", /* class_name_string */
+5,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwcontinue */
-const struct type type_parser_nodes__TKwcontinue = {
--1, /*CAST DEAD*/
-"TKwcontinue", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
+/* runtime type MAttributeDef */
+const struct type type_model__MAttributeDef = {
+2046,
+"MAttributeDef", /* class_name_string */
 7,
+0,
+&resolution_table_model__MAttributeDef,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-234, /* nullable TKwcontinue */
-622, /* ANode */
-1329, /* Token */
-1741, /* TKwcontinue */
+8, /* nullable PropertyLayoutElement */
+112, /* nullable MPropDef */
+615, /* PropertyLayoutElement */
+1057, /* nullable MAttributeDef */
+1526, /* MPropDef */
+2046, /* MAttributeDef */
 },
 };
-/* runtime type nullable TKwcontinue */
-const struct type type_nullable_parser_nodes__TKwcontinue = {
-234,
-"nullable TKwcontinue", /* class_name_string */
-3,
+const struct types resolution_table_model__MAttributeDef = {
+0, /* dummy */
+{
+&type_model__MAttribute, /* MPROPERTY: MAttribute */
+NULL, /* empty */
+&type_model__MAttributeDef, /* MPROPDEF: MAttributeDef */
+}
+};
+/* runtime type nullable MAttributeDef */
+const struct type type_nullable_model__MAttributeDef = {
+1057,
+"nullable MAttributeDef", /* class_name_string */
+5,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwbreak */
-const struct type type_parser_nodes__TKwbreak = {
-1742,
-"TKwbreak", /* class_name_string */
-6,
-0,
-NULL, /*NO RESOLUTIONS*/
+/* runtime type MVirtualTypeProp */
+const struct type type_model__MVirtualTypeProp = {
+2047,
+"MVirtualTypeProp", /* class_name_string */
 7,
+0,
+&resolution_table_model__MVirtualTypeProp,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-235, /* nullable TKwbreak */
-622, /* ANode */
-1329, /* Token */
-1742, /* TKwbreak */
+8, /* nullable PropertyLayoutElement */
+155, /* nullable MProperty */
+615, /* PropertyLayoutElement */
+1058, /* nullable MVirtualTypeProp */
+1543, /* MProperty */
+2047, /* MVirtualTypeProp */
 },
 };
-/* runtime type nullable TKwbreak */
-const struct type type_nullable_parser_nodes__TKwbreak = {
-235,
-"nullable TKwbreak", /* class_name_string */
-3,
+const struct types resolution_table_model__MVirtualTypeProp = {
+0, /* dummy */
+{
+&type_array__Arraymodel__MVirtualTypeDef, /* Array[MPROPDEF]: Array[MVirtualTypeDef] */
+&type_more_collections__HashMap2mmodule__MModulemodel__MTypearray__Arraymodel__MVirtualTypeDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MVirtualTypeDef]] */
+&type_model__MVirtualTypeDef, /* MPROPDEF: MVirtualTypeDef */
+}
+};
+/* runtime type nullable MVirtualTypeProp */
+const struct type type_nullable_model__MVirtualTypeProp = {
+1058,
+"nullable MVirtualTypeProp", /* class_name_string */
+5,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwabort */
-const struct type type_parser_nodes__TKwabort = {
-1743,
-"TKwabort", /* class_name_string */
-6,
+/* runtime type MVirtualType */
+const struct type type_model__MVirtualType = {
+1389,
+"MVirtualType", /* class_name_string */
+5,
 0,
 NULL, /*NO RESOLUTIONS*/
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+4, /* nullable MType */
+-1, /* empty */
+609, /* MType */
+1389, /* MVirtualType */
+},
+};
+/* runtime type MVirtualTypeDef */
+const struct type type_model__MVirtualTypeDef = {
+2048,
+"MVirtualTypeDef", /* class_name_string */
 7,
+0,
+&resolution_table_model__MVirtualTypeDef,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-236, /* nullable TKwabort */
-622, /* ANode */
-1329, /* Token */
-1743, /* TKwabort */
+8, /* nullable PropertyLayoutElement */
+112, /* nullable MPropDef */
+615, /* PropertyLayoutElement */
+1059, /* nullable MVirtualTypeDef */
+1526, /* MPropDef */
+2048, /* MVirtualTypeDef */
 },
 };
-/* runtime type nullable TKwabort */
-const struct type type_nullable_parser_nodes__TKwabort = {
-236,
-"nullable TKwabort", /* class_name_string */
-3,
+const struct types resolution_table_model__MVirtualTypeDef = {
+0, /* dummy */
+{
+&type_model__MVirtualTypeProp, /* MPROPERTY: MVirtualTypeProp */
+NULL, /* empty */
+&type_model__MVirtualTypeDef, /* MPROPDEF: MVirtualTypeDef */
+}
+};
+/* runtime type nullable MVirtualTypeDef */
+const struct type type_nullable_model__MVirtualTypeDef = {
+1059,
+"nullable MVirtualTypeDef", /* class_name_string */
+5,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwassert */
-const struct type type_parser_nodes__TKwassert = {
-1744,
-"TKwassert", /* class_name_string */
-6,
+/* runtime type Array[MVirtualType] */
+const struct type type_array__Arraymodel__MVirtualType = {
+-1, /*CAST DEAD*/
+"Array[MVirtualType]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_array__Arraymodel__MVirtualType,
+23,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-237, /* nullable TKwassert */
-622, /* ANode */
-1329, /* Token */
-1744, /* TKwassert */
+7, /* nullable Array[nullable MType] */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+93, /* Collection[nullable MType] */
+590, /* Array[nullable Object] */
+1370, /* Collection[MType] */
+1345, /* AbstractArrayRead[Object] */
+1374, /* AbstractArrayRead[nullable MType] */
+1512, /* AbstractArray[Object] */
+1554, /* Collection[MVirtualType] */
+1523, /* AbstractArray[nullable MType] */
+-1, /* empty */
+2085, /* Array[nullable MType] */
+1909, /* Array[Object] */
+2086, /* AbstractArrayRead[MType] */
+2187, /* AbstractArrayRead[MVirtualType] */
+2212, /* AbstractArray[MType] */
+2291, /* AbstractArray[MVirtualType] */
+-1, /* empty */
+2321, /* Array[MType] */
+2352, /* Array[MVirtualType] */
 },
 };
-/* runtime type nullable TKwassert */
-const struct type type_nullable_parser_nodes__TKwassert = {
-237,
-"nullable TKwassert", /* class_name_string */
-3,
-1,
+const struct types resolution_table_array__Arraymodel__MVirtualType = {
+0, /* dummy */
+{
+&type_array__NativeArraymodel__MVirtualType, /* NativeArray[E]: NativeArray[MVirtualType] */
+&type_model__MVirtualType, /* E: MVirtualType */
+&type_model__MVirtualType, /* E: MVirtualType */
+&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[E]: Collection[MVirtualType] */
+&type_array__Arraymodel__MVirtualType, /* Array[E]: Array[MVirtualType] */
+&type_model__MVirtualType, /* E: MVirtualType */
+&type_model__MVirtualType, /* E: MVirtualType */
+&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[E]: Collection[MVirtualType] */
+&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[E]: Collection[MVirtualType] */
+&type_model__MVirtualType, /* E: MVirtualType */
+&type_array__Arraymodel__MVirtualType, /* Array[E]: Array[MVirtualType] */
+&type_array__NativeArraymodel__MVirtualType, /* NativeArray[E]: NativeArray[MVirtualType] */
+&type_model__MVirtualType, /* E: MVirtualType */
+&type_model__MVirtualType, /* E: MVirtualType */
+&type_array__Arraymodel__MVirtualType, /* Array[E]: Array[MVirtualType] */
+&type_array__AbstractArraymodel__MVirtualType, /* AbstractArray[E]: AbstractArray[MVirtualType] */
+&type_array__ArrayIteratormodel__MVirtualType, /* ArrayIterator[E]: ArrayIterator[MVirtualType] */
+}
+};
+/* runtime type Collection[MVirtualType] */
+const struct type type_abstract_collection__Collectionmodel__MVirtualType = {
+1554,
+"Collection[MVirtualType]", /* class_name_string */
+11,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwnew */
-const struct type type_parser_nodes__TKwnew = {
-1745,
-"TKwnew", /* class_name_string */
-6,
+/* runtime type AbstractArrayRead[MVirtualType] */
+const struct type type_array__AbstractArrayReadmodel__MVirtualType = {
+2187,
+"AbstractArrayRead[MVirtualType]", /* class_name_string */
+17,
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-238, /* nullable TKwnew */
-622, /* ANode */
-1329, /* Token */
-1745, /* TKwnew */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type nullable TKwnew */
-const struct type type_nullable_parser_nodes__TKwnew = {
-238,
-"nullable TKwnew", /* class_name_string */
-3,
-1,
+/* runtime type AbstractArray[MVirtualType] */
+const struct type type_array__AbstractArraymodel__MVirtualType = {
+2291,
+"AbstractArray[MVirtualType]", /* class_name_string */
+19,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwisa */
-const struct type type_parser_nodes__TKwisa = {
+/* runtime type Array[AExpr] */
+const struct type type_array__Arrayparser_nodes__AExpr = {
 -1, /*CAST DEAD*/
-"TKwisa", /* class_name_string */
+"Array[AExpr]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_array__Arrayparser_nodes__AExpr,
+24,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
 -1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1514, /* TKwisa */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+590, /* Array[nullable Object] */
+1351, /* Collection[Prod] */
+1345, /* AbstractArrayRead[Object] */
+1538, /* Collection[AExpr] */
+1512, /* AbstractArray[Object] */
+1684, /* AbstractArrayRead[ANode] */
+-1, /* empty */
+2082, /* AbstractArrayRead[Prod] */
+2083, /* AbstractArray[ANode] */
+1909, /* Array[Object] */
+2188, /* AbstractArrayRead[AExpr] */
+2209, /* Array[ANode] */
+2210, /* AbstractArray[Prod] */
+-1, /* empty */
+2292, /* AbstractArray[AExpr] */
+2305, /* Array[Prod] */
+-1, /* empty */
+2338, /* Array[AExpr] */
 },
 };
-/* runtime type TKwonce */
-const struct type type_parser_nodes__TKwonce = {
-1746,
-"TKwonce", /* class_name_string */
-6,
-0,
-NULL, /*NO RESOLUTIONS*/
-7,
+const struct types resolution_table_array__Arrayparser_nodes__AExpr = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-239, /* nullable TKwonce */
-622, /* ANode */
-1329, /* Token */
-1746, /* TKwonce */
-},
+&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[E]: NativeArray[AExpr] */
+&type_parser_nodes__AExpr, /* E: AExpr */
+&type_parser_nodes__AExpr, /* E: AExpr */
+&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[E]: Collection[AExpr] */
+&type_array__Arrayparser_nodes__AExpr, /* Array[E]: Array[AExpr] */
+&type_parser_nodes__AExpr, /* E: AExpr */
+&type_parser_nodes__AExpr, /* E: AExpr */
+&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[E]: Collection[AExpr] */
+&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[E]: Collection[AExpr] */
+&type_parser_nodes__AExpr, /* E: AExpr */
+&type_array__Arrayparser_nodes__AExpr, /* Array[E]: Array[AExpr] */
+&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[E]: NativeArray[AExpr] */
+&type_parser_nodes__AExpr, /* E: AExpr */
+&type_parser_nodes__AExpr, /* E: AExpr */
+&type_array__Arrayparser_nodes__AExpr, /* Array[E]: Array[AExpr] */
+&type_array__AbstractArrayparser_nodes__AExpr, /* AbstractArray[E]: AbstractArray[AExpr] */
+&type_array__ArrayIteratorparser_nodes__AExpr, /* ArrayIterator[E]: ArrayIterator[AExpr] */
+}
 };
-/* runtime type nullable TKwonce */
-const struct type type_nullable_parser_nodes__TKwonce = {
-239,
-"nullable TKwonce", /* class_name_string */
-3,
-1,
+/* runtime type AbstractArrayRead[AExpr] */
+const struct type type_array__AbstractArrayReadparser_nodes__AExpr = {
+2188,
+"AbstractArrayRead[AExpr]", /* class_name_string */
+16,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwsuper */
-const struct type type_parser_nodes__TKwsuper = {
-1747,
-"TKwsuper", /* class_name_string */
-6,
+/* runtime type AbstractArray[AExpr] */
+const struct type type_array__AbstractArrayparser_nodes__AExpr = {
+2292,
+"AbstractArray[AExpr]", /* class_name_string */
+20,
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type Array[AVarExpr] */
+const struct type type_array__Arrayparser_nodes__AVarExpr = {
+-1, /*CAST DEAD*/
+"Array[AVarExpr]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_array__Arrayparser_nodes__AVarExpr,
+25,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-240, /* nullable TKwsuper */
-622, /* ANode */
-1329, /* Token */
-1747, /* TKwsuper */
-},
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+590, /* Array[nullable Object] */
+1351, /* Collection[Prod] */
+1345, /* AbstractArrayRead[Object] */
+1538, /* Collection[AExpr] */
+1512, /* AbstractArray[Object] */
+1684, /* AbstractArrayRead[ANode] */
+1737, /* Collection[AVarExpr] */
+2082, /* AbstractArrayRead[Prod] */
+2083, /* AbstractArray[ANode] */
+1909, /* Array[Object] */
+2188, /* AbstractArrayRead[AExpr] */
+2209, /* Array[ANode] */
+2210, /* AbstractArray[Prod] */
+2270, /* AbstractArrayRead[AVarExpr] */
+2292, /* AbstractArray[AExpr] */
+2305, /* Array[Prod] */
+2324, /* AbstractArray[AVarExpr] */
+2338, /* Array[AExpr] */
+2355, /* Array[AVarExpr] */
+},
+};
+const struct types resolution_table_array__Arrayparser_nodes__AVarExpr = {
+0, /* dummy */
+{
+&type_array__NativeArrayparser_nodes__AVarExpr, /* NativeArray[E]: NativeArray[AVarExpr] */
+&type_parser_nodes__AVarExpr, /* E: AVarExpr */
+&type_parser_nodes__AVarExpr, /* E: AVarExpr */
+&type_abstract_collection__Collectionparser_nodes__AVarExpr, /* Collection[E]: Collection[AVarExpr] */
+&type_array__Arrayparser_nodes__AVarExpr, /* Array[E]: Array[AVarExpr] */
+&type_parser_nodes__AVarExpr, /* E: AVarExpr */
+&type_parser_nodes__AVarExpr, /* E: AVarExpr */
+&type_abstract_collection__Collectionparser_nodes__AVarExpr, /* Collection[E]: Collection[AVarExpr] */
+&type_abstract_collection__Collectionparser_nodes__AVarExpr, /* Collection[E]: Collection[AVarExpr] */
+&type_parser_nodes__AVarExpr, /* E: AVarExpr */
+&type_array__Arrayparser_nodes__AVarExpr, /* Array[E]: Array[AVarExpr] */
+&type_array__NativeArrayparser_nodes__AVarExpr, /* NativeArray[E]: NativeArray[AVarExpr] */
+&type_parser_nodes__AVarExpr, /* E: AVarExpr */
+&type_parser_nodes__AVarExpr, /* E: AVarExpr */
+&type_array__Arrayparser_nodes__AVarExpr, /* Array[E]: Array[AVarExpr] */
+&type_array__AbstractArrayparser_nodes__AVarExpr, /* AbstractArray[E]: AbstractArray[AVarExpr] */
+&type_array__ArrayIteratorparser_nodes__AVarExpr, /* ArrayIterator[E]: ArrayIterator[AVarExpr] */
+}
 };
-/* runtime type nullable TKwsuper */
-const struct type type_nullable_parser_nodes__TKwsuper = {
-240,
-"nullable TKwsuper", /* class_name_string */
-3,
-1,
+/* runtime type Collection[AVarExpr] */
+const struct type type_abstract_collection__Collectionparser_nodes__AVarExpr = {
+1737,
+"Collection[AVarExpr]", /* class_name_string */
+12,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwself */
-const struct type type_parser_nodes__TKwself = {
-1748,
-"TKwself", /* class_name_string */
-6,
+/* runtime type AbstractArrayRead[AVarExpr] */
+const struct type type_array__AbstractArrayReadparser_nodes__AVarExpr = {
+2270,
+"AbstractArrayRead[AVarExpr]", /* class_name_string */
+19,
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-241, /* nullable TKwself */
-622, /* ANode */
-1329, /* Token */
-1748, /* TKwself */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type nullable TKwself */
-const struct type type_nullable_parser_nodes__TKwself = {
-241,
-"nullable TKwself", /* class_name_string */
-3,
-1,
+/* runtime type AbstractArray[AVarExpr] */
+const struct type type_array__AbstractArrayparser_nodes__AVarExpr = {
+2324,
+"AbstractArray[AVarExpr]", /* class_name_string */
+22,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwtrue */
-const struct type type_parser_nodes__TKwtrue = {
-1749,
-"TKwtrue", /* class_name_string */
-6,
+/* runtime type Array[AIntExpr] */
+const struct type type_array__Arrayparser_nodes__AIntExpr = {
+-1, /*CAST DEAD*/
+"Array[AIntExpr]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
+&resolution_table_array__Arrayparser_nodes__AIntExpr,
+25,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-242, /* nullable TKwtrue */
-622, /* ANode */
-1329, /* Token */
-1749, /* TKwtrue */
+-1, /* empty */
+82, /* SequenceRead[nullable Object] */
+83, /* Collection[Object] */
+599, /* Collection[ANode] */
+590, /* Array[nullable Object] */
+1351, /* Collection[Prod] */
+1345, /* AbstractArrayRead[Object] */
+1538, /* Collection[AExpr] */
+1512, /* AbstractArray[Object] */
+1684, /* AbstractArrayRead[ANode] */
+1738, /* Collection[AIntExpr] */
+2082, /* AbstractArrayRead[Prod] */
+2083, /* AbstractArray[ANode] */
+1909, /* Array[Object] */
+2188, /* AbstractArrayRead[AExpr] */
+2209, /* Array[ANode] */
+2210, /* AbstractArray[Prod] */
+2271, /* AbstractArrayRead[AIntExpr] */
+2292, /* AbstractArray[AExpr] */
+2305, /* Array[Prod] */
+2325, /* AbstractArray[AIntExpr] */
+2338, /* Array[AExpr] */
+2356, /* Array[AIntExpr] */
 },
 };
-/* runtime type nullable TKwtrue */
-const struct type type_nullable_parser_nodes__TKwtrue = {
-242,
-"nullable TKwtrue", /* class_name_string */
-3,
-1,
+const struct types resolution_table_array__Arrayparser_nodes__AIntExpr = {
+0, /* dummy */
+{
+&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[E]: NativeArray[AIntExpr] */
+&type_parser_nodes__AIntExpr, /* E: AIntExpr */
+&type_parser_nodes__AIntExpr, /* E: AIntExpr */
+&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[E]: Collection[AIntExpr] */
+&type_array__Arrayparser_nodes__AIntExpr, /* Array[E]: Array[AIntExpr] */
+&type_parser_nodes__AIntExpr, /* E: AIntExpr */
+&type_parser_nodes__AIntExpr, /* E: AIntExpr */
+&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[E]: Collection[AIntExpr] */
+&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[E]: Collection[AIntExpr] */
+&type_parser_nodes__AIntExpr, /* E: AIntExpr */
+&type_array__Arrayparser_nodes__AIntExpr, /* Array[E]: Array[AIntExpr] */
+&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[E]: NativeArray[AIntExpr] */
+&type_parser_nodes__AIntExpr, /* E: AIntExpr */
+&type_parser_nodes__AIntExpr, /* E: AIntExpr */
+&type_array__Arrayparser_nodes__AIntExpr, /* Array[E]: Array[AIntExpr] */
+&type_array__AbstractArrayparser_nodes__AIntExpr, /* AbstractArray[E]: AbstractArray[AIntExpr] */
+&type_array__ArrayIteratorparser_nodes__AIntExpr, /* ArrayIterator[E]: ArrayIterator[AIntExpr] */
+}
+};
+/* runtime type Collection[AIntExpr] */
+const struct type type_abstract_collection__Collectionparser_nodes__AIntExpr = {
+1738,
+"Collection[AIntExpr]", /* class_name_string */
+12,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwfalse */
-const struct type type_parser_nodes__TKwfalse = {
-1750,
-"TKwfalse", /* class_name_string */
-6,
+/* runtime type AbstractArrayRead[AIntExpr] */
+const struct type type_array__AbstractArrayReadparser_nodes__AIntExpr = {
+2271,
+"AbstractArrayRead[AIntExpr]", /* class_name_string */
+19,
 0,
-NULL, /*NO RESOLUTIONS*/
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
-243, /* nullable TKwfalse */
-622, /* ANode */
-1329, /* Token */
-1750, /* TKwfalse */
-},
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type nullable TKwfalse */
-const struct type type_nullable_parser_nodes__TKwfalse = {
-243,
-"nullable TKwfalse", /* class_name_string */
-3,
-1,
+/* runtime type AbstractArray[AIntExpr] */
+const struct type type_array__AbstractArrayparser_nodes__AIntExpr = {
+2325,
+"AbstractArray[AIntExpr]", /* class_name_string */
+22,
+0,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwnull */
-const struct type type_parser_nodes__TKwnull = {
-1751,
-"TKwnull", /* class_name_string */
-6,
+/* runtime type TEol */
+const struct type type_parser_nodes__TEol = {
+-1, /*CAST DEAD*/
+"TEol", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-244, /* nullable TKwnull */
-622, /* ANode */
-1329, /* Token */
-1751, /* TKwnull */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1555, /* TEol */
 },
 };
-/* runtime type nullable TKwnull */
-const struct type type_nullable_parser_nodes__TKwnull = {
-244,
-"nullable TKwnull", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwas */
-const struct type type_parser_nodes__TKwas = {
-1752,
-"TKwas", /* class_name_string */
+/* runtime type TComment */
+const struct type type_parser_nodes__TComment = {
+1556,
+"TComment", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8573,53 +8760,35 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-245, /* nullable TKwas */
-622, /* ANode */
-1329, /* Token */
-1752, /* TKwas */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1556, /* TComment */
 },
 };
-/* runtime type nullable TKwas */
-const struct type type_nullable_parser_nodes__TKwas = {
-245,
-"nullable TKwas", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwnullable */
-const struct type type_parser_nodes__TKwnullable = {
-1753,
-"TKwnullable", /* class_name_string */
-6,
+/* runtime type TKwpackage */
+const struct type type_parser_nodes__TKwpackage = {
+-1, /*CAST DEAD*/
+"TKwpackage", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-246, /* nullable TKwnullable */
-622, /* ANode */
-1329, /* Token */
-1753, /* TKwnullable */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1557, /* TKwpackage */
 },
 };
-/* runtime type nullable TKwnullable */
-const struct type type_nullable_parser_nodes__TKwnullable = {
-246,
-"nullable TKwnullable", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TKwisset */
-const struct type type_parser_nodes__TKwisset = {
-1754,
-"TKwisset", /* class_name_string */
+/* runtime type TKwmodule */
+const struct type type_parser_nodes__TKwmodule = {
+1739,
+"TKwmodule", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8627,26 +8796,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-247, /* nullable TKwisset */
-622, /* ANode */
-1329, /* Token */
-1754, /* TKwisset */
+12, /* nullable ANode */
+202, /* nullable TKwmodule */
+632, /* ANode */
+1381, /* Token */
+1739, /* TKwmodule */
 },
 };
-/* runtime type nullable TKwisset */
-const struct type type_nullable_parser_nodes__TKwisset = {
-247,
-"nullable TKwisset", /* class_name_string */
+/* runtime type nullable TKwmodule */
+const struct type type_nullable_parser_nodes__TKwmodule = {
+202,
+"nullable TKwmodule", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwlabel */
-const struct type type_parser_nodes__TKwlabel = {
-1755,
-"TKwlabel", /* class_name_string */
+/* runtime type TKwimport */
+const struct type type_parser_nodes__TKwimport = {
+1740,
+"TKwimport", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8654,26 +8823,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-248, /* nullable TKwlabel */
-622, /* ANode */
-1329, /* Token */
-1755, /* TKwlabel */
+12, /* nullable ANode */
+203, /* nullable TKwimport */
+632, /* ANode */
+1381, /* Token */
+1740, /* TKwimport */
 },
 };
-/* runtime type nullable TKwlabel */
-const struct type type_nullable_parser_nodes__TKwlabel = {
-248,
-"nullable TKwlabel", /* class_name_string */
+/* runtime type nullable TKwimport */
+const struct type type_nullable_parser_nodes__TKwimport = {
+203,
+"nullable TKwimport", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TKwdebug */
-const struct type type_parser_nodes__TKwdebug = {
-1756,
-"TKwdebug", /* class_name_string */
+/* runtime type TKwclass */
+const struct type type_parser_nodes__TKwclass = {
+1741,
+"TKwclass", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8681,26 +8850,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-249, /* nullable TKwdebug */
-622, /* ANode */
-1329, /* Token */
-1756, /* TKwdebug */
+12, /* nullable ANode */
+204, /* nullable TKwclass */
+632, /* ANode */
+1381, /* Token */
+1741, /* TKwclass */
 },
 };
-/* runtime type nullable TKwdebug */
-const struct type type_nullable_parser_nodes__TKwdebug = {
-249,
-"nullable TKwdebug", /* class_name_string */
+/* runtime type nullable TKwclass */
+const struct type type_nullable_parser_nodes__TKwclass = {
+204,
+"nullable TKwclass", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TOpar */
-const struct type type_parser_nodes__TOpar = {
-1757,
-"TOpar", /* class_name_string */
+/* runtime type TKwabstract */
+const struct type type_parser_nodes__TKwabstract = {
+1742,
+"TKwabstract", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8708,26 +8877,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-250, /* nullable TOpar */
-622, /* ANode */
-1329, /* Token */
-1757, /* TOpar */
+12, /* nullable ANode */
+205, /* nullable TKwabstract */
+632, /* ANode */
+1381, /* Token */
+1742, /* TKwabstract */
 },
 };
-/* runtime type nullable TOpar */
-const struct type type_nullable_parser_nodes__TOpar = {
-250,
-"nullable TOpar", /* class_name_string */
+/* runtime type nullable TKwabstract */
+const struct type type_nullable_parser_nodes__TKwabstract = {
+205,
+"nullable TKwabstract", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TCpar */
-const struct type type_parser_nodes__TCpar = {
-1758,
-"TCpar", /* class_name_string */
+/* runtime type TKwinterface */
+const struct type type_parser_nodes__TKwinterface = {
+1743,
+"TKwinterface", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8735,26 +8904,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-251, /* nullable TCpar */
-622, /* ANode */
-1329, /* Token */
-1758, /* TCpar */
+12, /* nullable ANode */
+206, /* nullable TKwinterface */
+632, /* ANode */
+1381, /* Token */
+1743, /* TKwinterface */
 },
 };
-/* runtime type nullable TCpar */
-const struct type type_nullable_parser_nodes__TCpar = {
-251,
-"nullable TCpar", /* class_name_string */
+/* runtime type nullable TKwinterface */
+const struct type type_nullable_parser_nodes__TKwinterface = {
+206,
+"nullable TKwinterface", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TObra */
-const struct type type_parser_nodes__TObra = {
-1759,
-"TObra", /* class_name_string */
+/* runtime type TKwenum */
+const struct type type_parser_nodes__TKwenum = {
+1744,
+"TKwenum", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8762,26 +8931,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-252, /* nullable TObra */
-622, /* ANode */
-1329, /* Token */
-1759, /* TObra */
+12, /* nullable ANode */
+207, /* nullable TKwenum */
+632, /* ANode */
+1381, /* Token */
+1744, /* TKwenum */
 },
 };
-/* runtime type nullable TObra */
-const struct type type_nullable_parser_nodes__TObra = {
-252,
-"nullable TObra", /* class_name_string */
+/* runtime type nullable TKwenum */
+const struct type type_nullable_parser_nodes__TKwenum = {
+207,
+"nullable TKwenum", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TCbra */
-const struct type type_parser_nodes__TCbra = {
-1760,
-"TCbra", /* class_name_string */
+/* runtime type TKwend */
+const struct type type_parser_nodes__TKwend = {
+1745,
+"TKwend", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8789,26 +8958,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-253, /* nullable TCbra */
-622, /* ANode */
-1329, /* Token */
-1760, /* TCbra */
+12, /* nullable ANode */
+208, /* nullable TKwend */
+632, /* ANode */
+1381, /* Token */
+1745, /* TKwend */
 },
 };
-/* runtime type nullable TCbra */
-const struct type type_nullable_parser_nodes__TCbra = {
-253,
-"nullable TCbra", /* class_name_string */
+/* runtime type nullable TKwend */
+const struct type type_nullable_parser_nodes__TKwend = {
+208,
+"nullable TKwend", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TComma */
-const struct type type_parser_nodes__TComma = {
+/* runtime type TKwmeth */
+const struct type type_parser_nodes__TKwmeth = {
 -1, /*CAST DEAD*/
-"TComma", /* class_name_string */
+"TKwmeth", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8816,62 +8985,53 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1515, /* TComma */
+12, /* nullable ANode */
+209, /* nullable TKwmeth */
+632, /* ANode */
+1381, /* Token */
+1746, /* TKwmeth */
 },
 };
-/* runtime type TColumn */
-const struct type type_parser_nodes__TColumn = {
--1, /*CAST DEAD*/
-"TColumn", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1516, /* TColumn */
-},
+/* runtime type nullable TKwmeth */
+const struct type type_nullable_parser_nodes__TKwmeth = {
+209,
+"nullable TKwmeth", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type TQuad */
-const struct type type_parser_nodes__TQuad = {
--1, /*CAST DEAD*/
-"TQuad", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type TKwtype */
+const struct type type_parser_nodes__TKwtype = {
+1747,
+"TKwtype", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-254, /* nullable TQuad */
-622, /* ANode */
-1329, /* Token */
-1761, /* TQuad */
+12, /* nullable ANode */
+210, /* nullable TKwtype */
+632, /* ANode */
+1381, /* Token */
+1747, /* TKwtype */
 },
 };
-/* runtime type nullable TQuad */
-const struct type type_nullable_parser_nodes__TQuad = {
-254,
-"nullable TQuad", /* class_name_string */
+/* runtime type nullable TKwtype */
+const struct type type_nullable_parser_nodes__TKwtype = {
+210,
+"nullable TKwtype", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TAssign */
-const struct type type_parser_nodes__TAssign = {
-1762,
-"TAssign", /* class_name_string */
+/* runtime type TKwinit */
+const struct type type_parser_nodes__TKwinit = {
+1748,
+"TKwinit", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8879,80 +9039,71 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-255, /* nullable TAssign */
-622, /* ANode */
-1329, /* Token */
-1762, /* TAssign */
+12, /* nullable ANode */
+211, /* nullable TKwinit */
+632, /* ANode */
+1381, /* Token */
+1748, /* TKwinit */
 },
 };
-/* runtime type nullable TAssign */
-const struct type type_nullable_parser_nodes__TAssign = {
-255,
-"nullable TAssign", /* class_name_string */
+/* runtime type nullable TKwinit */
+const struct type type_nullable_parser_nodes__TKwinit = {
+211,
+"nullable TKwinit", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TPluseq */
-const struct type type_parser_nodes__TPluseq = {
-1763,
-"TPluseq", /* class_name_string */
-6,
+/* runtime type TKwredef */
+const struct type type_parser_nodes__TKwredef = {
+-1, /*CAST DEAD*/
+"TKwredef", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-256, /* nullable TPluseq */
-622, /* ANode */
-1329, /* Token */
-1763, /* TPluseq */
+12, /* nullable ANode */
+212, /* nullable TKwredef */
+632, /* ANode */
+1381, /* Token */
+1749, /* TKwredef */
 },
 };
-/* runtime type nullable TPluseq */
-const struct type type_nullable_parser_nodes__TPluseq = {
-256,
-"nullable TPluseq", /* class_name_string */
+/* runtime type nullable TKwredef */
+const struct type type_nullable_parser_nodes__TKwredef = {
+212,
+"nullable TKwredef", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TMinuseq */
-const struct type type_parser_nodes__TMinuseq = {
-1764,
-"TMinuseq", /* class_name_string */
-6,
+/* runtime type TKwis */
+const struct type type_parser_nodes__TKwis = {
+-1, /*CAST DEAD*/
+"TKwis", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-257, /* nullable TMinuseq */
-622, /* ANode */
-1329, /* Token */
-1764, /* TMinuseq */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1558, /* TKwis */
 },
 };
-/* runtime type nullable TMinuseq */
-const struct type type_nullable_parser_nodes__TMinuseq = {
-257,
-"nullable TMinuseq", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TDotdotdot */
-const struct type type_parser_nodes__TDotdotdot = {
-1765,
-"TDotdotdot", /* class_name_string */
+/* runtime type TKwdo */
+const struct type type_parser_nodes__TKwdo = {
+1750,
+"TKwdo", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -8960,98 +9111,107 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-258, /* nullable TDotdotdot */
-622, /* ANode */
-1329, /* Token */
-1765, /* TDotdotdot */
+12, /* nullable ANode */
+213, /* nullable TKwdo */
+632, /* ANode */
+1381, /* Token */
+1750, /* TKwdo */
 },
 };
-/* runtime type nullable TDotdotdot */
-const struct type type_nullable_parser_nodes__TDotdotdot = {
-258,
-"nullable TDotdotdot", /* class_name_string */
+/* runtime type nullable TKwdo */
+const struct type type_nullable_parser_nodes__TKwdo = {
+213,
+"nullable TKwdo", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TDotdot */
-const struct type type_parser_nodes__TDotdot = {
--1, /*CAST DEAD*/
-"TDotdot", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type TKwvar */
+const struct type type_parser_nodes__TKwvar = {
+1751,
+"TKwvar", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1517, /* TDotdot */
+12, /* nullable ANode */
+214, /* nullable TKwvar */
+632, /* ANode */
+1381, /* Token */
+1751, /* TKwvar */
 },
 };
-/* runtime type TDot */
-const struct type type_parser_nodes__TDot = {
--1, /*CAST DEAD*/
-"TDot", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type nullable TKwvar */
+const struct type type_nullable_parser_nodes__TKwvar = {
+214,
+"nullable TKwvar", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
+};
+/* runtime type TKwextern */
+const struct type type_parser_nodes__TKwextern = {
+1752,
+"TKwextern", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-259, /* nullable TDot */
-622, /* ANode */
-1329, /* Token */
-1766, /* TDot */
+12, /* nullable ANode */
+215, /* nullable TKwextern */
+632, /* ANode */
+1381, /* Token */
+1752, /* TKwextern */
 },
 };
-/* runtime type nullable TDot */
-const struct type type_nullable_parser_nodes__TDot = {
-259,
-"nullable TDot", /* class_name_string */
+/* runtime type nullable TKwextern */
+const struct type type_nullable_parser_nodes__TKwextern = {
+215,
+"nullable TKwextern", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TPlus */
-const struct type type_parser_nodes__TPlus = {
-1767,
-"TPlus", /* class_name_string */
-6,
+/* runtime type TKwpublic */
+const struct type type_parser_nodes__TKwpublic = {
+-1, /*CAST DEAD*/
+"TKwpublic", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-260, /* nullable TPlus */
-622, /* ANode */
-1329, /* Token */
-1767, /* TPlus */
+12, /* nullable ANode */
+216, /* nullable TKwpublic */
+632, /* ANode */
+1381, /* Token */
+1753, /* TKwpublic */
 },
 };
-/* runtime type nullable TPlus */
-const struct type type_nullable_parser_nodes__TPlus = {
-260,
-"nullable TPlus", /* class_name_string */
+/* runtime type nullable TKwpublic */
+const struct type type_nullable_parser_nodes__TKwpublic = {
+216,
+"nullable TKwpublic", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TMinus */
-const struct type type_parser_nodes__TMinus = {
-1768,
-"TMinus", /* class_name_string */
+/* runtime type TKwprotected */
+const struct type type_parser_nodes__TKwprotected = {
+1754,
+"TKwprotected", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9059,26 +9219,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-261, /* nullable TMinus */
-622, /* ANode */
-1329, /* Token */
-1768, /* TMinus */
+12, /* nullable ANode */
+217, /* nullable TKwprotected */
+632, /* ANode */
+1381, /* Token */
+1754, /* TKwprotected */
 },
 };
-/* runtime type nullable TMinus */
-const struct type type_nullable_parser_nodes__TMinus = {
-261,
-"nullable TMinus", /* class_name_string */
+/* runtime type nullable TKwprotected */
+const struct type type_nullable_parser_nodes__TKwprotected = {
+217,
+"nullable TKwprotected", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TStar */
-const struct type type_parser_nodes__TStar = {
-1769,
-"TStar", /* class_name_string */
+/* runtime type TKwprivate */
+const struct type type_parser_nodes__TKwprivate = {
+1755,
+"TKwprivate", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9086,26 +9246,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-262, /* nullable TStar */
-622, /* ANode */
-1329, /* Token */
-1769, /* TStar */
+12, /* nullable ANode */
+218, /* nullable TKwprivate */
+632, /* ANode */
+1381, /* Token */
+1755, /* TKwprivate */
 },
 };
-/* runtime type nullable TStar */
-const struct type type_nullable_parser_nodes__TStar = {
-262,
-"nullable TStar", /* class_name_string */
+/* runtime type nullable TKwprivate */
+const struct type type_nullable_parser_nodes__TKwprivate = {
+218,
+"nullable TKwprivate", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TSlash */
-const struct type type_parser_nodes__TSlash = {
-1770,
-"TSlash", /* class_name_string */
+/* runtime type TKwintrude */
+const struct type type_parser_nodes__TKwintrude = {
+1756,
+"TKwintrude", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9113,26 +9273,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-263, /* nullable TSlash */
-622, /* ANode */
-1329, /* Token */
-1770, /* TSlash */
+12, /* nullable ANode */
+219, /* nullable TKwintrude */
+632, /* ANode */
+1381, /* Token */
+1756, /* TKwintrude */
 },
 };
-/* runtime type nullable TSlash */
-const struct type type_nullable_parser_nodes__TSlash = {
-263,
-"nullable TSlash", /* class_name_string */
+/* runtime type nullable TKwintrude */
+const struct type type_nullable_parser_nodes__TKwintrude = {
+219,
+"nullable TKwintrude", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TPercent */
-const struct type type_parser_nodes__TPercent = {
-1771,
-"TPercent", /* class_name_string */
+/* runtime type TKwif */
+const struct type type_parser_nodes__TKwif = {
+1757,
+"TKwif", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9140,26 +9300,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-264, /* nullable TPercent */
-622, /* ANode */
-1329, /* Token */
-1771, /* TPercent */
+12, /* nullable ANode */
+220, /* nullable TKwif */
+632, /* ANode */
+1381, /* Token */
+1757, /* TKwif */
 },
 };
-/* runtime type nullable TPercent */
-const struct type type_nullable_parser_nodes__TPercent = {
-264,
-"nullable TPercent", /* class_name_string */
+/* runtime type nullable TKwif */
+const struct type type_nullable_parser_nodes__TKwif = {
+220,
+"nullable TKwif", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TEq */
-const struct type type_parser_nodes__TEq = {
-1772,
-"TEq", /* class_name_string */
+/* runtime type TKwthen */
+const struct type type_parser_nodes__TKwthen = {
+1758,
+"TKwthen", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9167,26 +9327,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-265, /* nullable TEq */
-622, /* ANode */
-1329, /* Token */
-1772, /* TEq */
+12, /* nullable ANode */
+221, /* nullable TKwthen */
+632, /* ANode */
+1381, /* Token */
+1758, /* TKwthen */
 },
 };
-/* runtime type nullable TEq */
-const struct type type_nullable_parser_nodes__TEq = {
-265,
-"nullable TEq", /* class_name_string */
+/* runtime type nullable TKwthen */
+const struct type type_nullable_parser_nodes__TKwthen = {
+221,
+"nullable TKwthen", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TNe */
-const struct type type_parser_nodes__TNe = {
-1773,
-"TNe", /* class_name_string */
+/* runtime type TKwelse */
+const struct type type_parser_nodes__TKwelse = {
+1759,
+"TKwelse", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9194,26 +9354,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-266, /* nullable TNe */
-622, /* ANode */
-1329, /* Token */
-1773, /* TNe */
+12, /* nullable ANode */
+222, /* nullable TKwelse */
+632, /* ANode */
+1381, /* Token */
+1759, /* TKwelse */
 },
 };
-/* runtime type nullable TNe */
-const struct type type_nullable_parser_nodes__TNe = {
-266,
-"nullable TNe", /* class_name_string */
+/* runtime type nullable TKwelse */
+const struct type type_nullable_parser_nodes__TKwelse = {
+222,
+"nullable TKwelse", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TLt */
-const struct type type_parser_nodes__TLt = {
-1774,
-"TLt", /* class_name_string */
+/* runtime type TKwwhile */
+const struct type type_parser_nodes__TKwwhile = {
+1760,
+"TKwwhile", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9221,26 +9381,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-267, /* nullable TLt */
-622, /* ANode */
-1329, /* Token */
-1774, /* TLt */
+12, /* nullable ANode */
+223, /* nullable TKwwhile */
+632, /* ANode */
+1381, /* Token */
+1760, /* TKwwhile */
 },
 };
-/* runtime type nullable TLt */
-const struct type type_nullable_parser_nodes__TLt = {
-267,
-"nullable TLt", /* class_name_string */
+/* runtime type nullable TKwwhile */
+const struct type type_nullable_parser_nodes__TKwwhile = {
+223,
+"nullable TKwwhile", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TLe */
-const struct type type_parser_nodes__TLe = {
-1775,
-"TLe", /* class_name_string */
+/* runtime type TKwloop */
+const struct type type_parser_nodes__TKwloop = {
+1761,
+"TKwloop", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9248,26 +9408,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-268, /* nullable TLe */
-622, /* ANode */
-1329, /* Token */
-1775, /* TLe */
+12, /* nullable ANode */
+224, /* nullable TKwloop */
+632, /* ANode */
+1381, /* Token */
+1761, /* TKwloop */
 },
 };
-/* runtime type nullable TLe */
-const struct type type_nullable_parser_nodes__TLe = {
-268,
-"nullable TLe", /* class_name_string */
+/* runtime type nullable TKwloop */
+const struct type type_nullable_parser_nodes__TKwloop = {
+224,
+"nullable TKwloop", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TLl */
-const struct type type_parser_nodes__TLl = {
-1776,
-"TLl", /* class_name_string */
+/* runtime type TKwfor */
+const struct type type_parser_nodes__TKwfor = {
+1762,
+"TKwfor", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9275,26 +9435,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-269, /* nullable TLl */
-622, /* ANode */
-1329, /* Token */
-1776, /* TLl */
+12, /* nullable ANode */
+225, /* nullable TKwfor */
+632, /* ANode */
+1381, /* Token */
+1762, /* TKwfor */
 },
 };
-/* runtime type nullable TLl */
-const struct type type_nullable_parser_nodes__TLl = {
-269,
-"nullable TLl", /* class_name_string */
+/* runtime type nullable TKwfor */
+const struct type type_nullable_parser_nodes__TKwfor = {
+225,
+"nullable TKwfor", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TGt */
-const struct type type_parser_nodes__TGt = {
-1777,
-"TGt", /* class_name_string */
+/* runtime type TKwin */
+const struct type type_parser_nodes__TKwin = {
+1763,
+"TKwin", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9302,80 +9462,62 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-270, /* nullable TGt */
-622, /* ANode */
-1329, /* Token */
-1777, /* TGt */
+12, /* nullable ANode */
+226, /* nullable TKwin */
+632, /* ANode */
+1381, /* Token */
+1763, /* TKwin */
 },
 };
-/* runtime type nullable TGt */
-const struct type type_nullable_parser_nodes__TGt = {
-270,
-"nullable TGt", /* class_name_string */
+/* runtime type nullable TKwin */
+const struct type type_nullable_parser_nodes__TKwin = {
+226,
+"nullable TKwin", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TGe */
-const struct type type_parser_nodes__TGe = {
-1778,
-"TGe", /* class_name_string */
-6,
+/* runtime type TKwand */
+const struct type type_parser_nodes__TKwand = {
+-1, /*CAST DEAD*/
+"TKwand", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-271, /* nullable TGe */
-622, /* ANode */
-1329, /* Token */
-1778, /* TGe */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1559, /* TKwand */
 },
 };
-/* runtime type nullable TGe */
-const struct type type_nullable_parser_nodes__TGe = {
-271,
-"nullable TGe", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TGg */
-const struct type type_parser_nodes__TGg = {
-1779,
-"TGg", /* class_name_string */
-6,
+/* runtime type TKwor */
+const struct type type_parser_nodes__TKwor = {
+-1, /*CAST DEAD*/
+"TKwor", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-272, /* nullable TGg */
-622, /* ANode */
-1329, /* Token */
-1779, /* TGg */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1560, /* TKwor */
 },
 };
-/* runtime type nullable TGg */
-const struct type type_nullable_parser_nodes__TGg = {
-272,
-"nullable TGg", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TStarship */
-const struct type type_parser_nodes__TStarship = {
-1780,
-"TStarship", /* class_name_string */
+/* runtime type TKwnot */
+const struct type type_parser_nodes__TKwnot = {
+1764,
+"TKwnot", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9383,26 +9525,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-273, /* nullable TStarship */
-622, /* ANode */
-1329, /* Token */
-1780, /* TStarship */
+12, /* nullable ANode */
+227, /* nullable TKwnot */
+632, /* ANode */
+1381, /* Token */
+1764, /* TKwnot */
 },
 };
-/* runtime type nullable TStarship */
-const struct type type_nullable_parser_nodes__TStarship = {
-273,
-"nullable TStarship", /* class_name_string */
+/* runtime type nullable TKwnot */
+const struct type type_nullable_parser_nodes__TKwnot = {
+227,
+"nullable TKwnot", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TBang */
-const struct type type_parser_nodes__TBang = {
+/* runtime type TKwimplies */
+const struct type type_parser_nodes__TKwimplies = {
 -1, /*CAST DEAD*/
-"TBang", /* class_name_string */
+"TKwimplies", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9410,17 +9552,17 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
+12, /* nullable ANode */
 -1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1518, /* TBang */
+632, /* ANode */
+1381, /* Token */
+1561, /* TKwimplies */
 },
 };
-/* runtime type TAt */
-const struct type type_parser_nodes__TAt = {
+/* runtime type TKwreturn */
+const struct type type_parser_nodes__TKwreturn = {
 -1, /*CAST DEAD*/
-"TAt", /* class_name_string */
+"TKwreturn", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9428,53 +9570,53 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-274, /* nullable TAt */
-622, /* ANode */
-1329, /* Token */
-1781, /* TAt */
+12, /* nullable ANode */
+228, /* nullable TKwreturn */
+632, /* ANode */
+1381, /* Token */
+1765, /* TKwreturn */
 },
 };
-/* runtime type nullable TAt */
-const struct type type_nullable_parser_nodes__TAt = {
-274,
-"nullable TAt", /* class_name_string */
+/* runtime type nullable TKwreturn */
+const struct type type_nullable_parser_nodes__TKwreturn = {
+228,
+"nullable TKwreturn", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TClassid */
-const struct type type_parser_nodes__TClassid = {
-1782,
-"TClassid", /* class_name_string */
-6,
+/* runtime type TKwcontinue */
+const struct type type_parser_nodes__TKwcontinue = {
+-1, /*CAST DEAD*/
+"TKwcontinue", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-275, /* nullable TClassid */
-622, /* ANode */
-1329, /* Token */
-1782, /* TClassid */
+12, /* nullable ANode */
+229, /* nullable TKwcontinue */
+632, /* ANode */
+1381, /* Token */
+1766, /* TKwcontinue */
 },
 };
-/* runtime type nullable TClassid */
-const struct type type_nullable_parser_nodes__TClassid = {
-275,
-"nullable TClassid", /* class_name_string */
+/* runtime type nullable TKwcontinue */
+const struct type type_nullable_parser_nodes__TKwcontinue = {
+229,
+"nullable TKwcontinue", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TId */
-const struct type type_parser_nodes__TId = {
-1783,
-"TId", /* class_name_string */
+/* runtime type TKwbreak */
+const struct type type_parser_nodes__TKwbreak = {
+1767,
+"TKwbreak", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9482,26 +9624,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-276, /* nullable TId */
-622, /* ANode */
-1329, /* Token */
-1783, /* TId */
+12, /* nullable ANode */
+230, /* nullable TKwbreak */
+632, /* ANode */
+1381, /* Token */
+1767, /* TKwbreak */
 },
 };
-/* runtime type nullable TId */
-const struct type type_nullable_parser_nodes__TId = {
-276,
-"nullable TId", /* class_name_string */
+/* runtime type nullable TKwbreak */
+const struct type type_nullable_parser_nodes__TKwbreak = {
+230,
+"nullable TKwbreak", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TAttrid */
-const struct type type_parser_nodes__TAttrid = {
-1784,
-"TAttrid", /* class_name_string */
+/* runtime type TKwabort */
+const struct type type_parser_nodes__TKwabort = {
+1768,
+"TKwabort", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9509,26 +9651,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-277, /* nullable TAttrid */
-622, /* ANode */
-1329, /* Token */
-1784, /* TAttrid */
+12, /* nullable ANode */
+231, /* nullable TKwabort */
+632, /* ANode */
+1381, /* Token */
+1768, /* TKwabort */
 },
 };
-/* runtime type nullable TAttrid */
-const struct type type_nullable_parser_nodes__TAttrid = {
-277,
-"nullable TAttrid", /* class_name_string */
+/* runtime type nullable TKwabort */
+const struct type type_nullable_parser_nodes__TKwabort = {
+231,
+"nullable TKwabort", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TNumber */
-const struct type type_parser_nodes__TNumber = {
-1785,
-"TNumber", /* class_name_string */
+/* runtime type TKwassert */
+const struct type type_parser_nodes__TKwassert = {
+1769,
+"TKwassert", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9536,26 +9678,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-278, /* nullable TNumber */
-622, /* ANode */
-1329, /* Token */
-1785, /* TNumber */
+12, /* nullable ANode */
+232, /* nullable TKwassert */
+632, /* ANode */
+1381, /* Token */
+1769, /* TKwassert */
 },
 };
-/* runtime type nullable TNumber */
-const struct type type_nullable_parser_nodes__TNumber = {
-278,
-"nullable TNumber", /* class_name_string */
+/* runtime type nullable TKwassert */
+const struct type type_nullable_parser_nodes__TKwassert = {
+232,
+"nullable TKwassert", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type THexNumber */
-const struct type type_parser_nodes__THexNumber = {
-1786,
-"THexNumber", /* class_name_string */
+/* runtime type TKwnew */
+const struct type type_parser_nodes__TKwnew = {
+1770,
+"TKwnew", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9563,53 +9705,44 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-279, /* nullable THexNumber */
-622, /* ANode */
-1329, /* Token */
-1786, /* THexNumber */
+12, /* nullable ANode */
+233, /* nullable TKwnew */
+632, /* ANode */
+1381, /* Token */
+1770, /* TKwnew */
 },
 };
-/* runtime type nullable THexNumber */
-const struct type type_nullable_parser_nodes__THexNumber = {
-279,
-"nullable THexNumber", /* class_name_string */
+/* runtime type nullable TKwnew */
+const struct type type_nullable_parser_nodes__TKwnew = {
+233,
+"nullable TKwnew", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TFloat */
-const struct type type_parser_nodes__TFloat = {
-1787,
-"TFloat", /* class_name_string */
-6,
+/* runtime type TKwisa */
+const struct type type_parser_nodes__TKwisa = {
+-1, /*CAST DEAD*/
+"TKwisa", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-280, /* nullable TFloat */
-622, /* ANode */
-1329, /* Token */
-1787, /* TFloat */
+12, /* nullable ANode */
+-1, /* empty */
+632, /* ANode */
+1381, /* Token */
+1562, /* TKwisa */
 },
 };
-/* runtime type nullable TFloat */
-const struct type type_nullable_parser_nodes__TFloat = {
-280,
-"nullable TFloat", /* class_name_string */
-3,
-1,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type TString */
-const struct type type_parser_nodes__TString = {
-1788,
-"TString", /* class_name_string */
+/* runtime type TKwonce */
+const struct type type_parser_nodes__TKwonce = {
+1771,
+"TKwonce", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9617,26 +9750,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-281, /* nullable TString */
-622, /* ANode */
-1329, /* Token */
-1788, /* TString */
+12, /* nullable ANode */
+234, /* nullable TKwonce */
+632, /* ANode */
+1381, /* Token */
+1771, /* TKwonce */
 },
 };
-/* runtime type nullable TString */
-const struct type type_nullable_parser_nodes__TString = {
-281,
-"nullable TString", /* class_name_string */
+/* runtime type nullable TKwonce */
+const struct type type_nullable_parser_nodes__TKwonce = {
+234,
+"nullable TKwonce", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TStartString */
-const struct type type_parser_nodes__TStartString = {
-1789,
-"TStartString", /* class_name_string */
+/* runtime type TKwsuper */
+const struct type type_parser_nodes__TKwsuper = {
+1772,
+"TKwsuper", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9644,26 +9777,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-282, /* nullable TStartString */
-622, /* ANode */
-1329, /* Token */
-1789, /* TStartString */
+12, /* nullable ANode */
+235, /* nullable TKwsuper */
+632, /* ANode */
+1381, /* Token */
+1772, /* TKwsuper */
 },
 };
-/* runtime type nullable TStartString */
-const struct type type_nullable_parser_nodes__TStartString = {
-282,
-"nullable TStartString", /* class_name_string */
+/* runtime type nullable TKwsuper */
+const struct type type_nullable_parser_nodes__TKwsuper = {
+235,
+"nullable TKwsuper", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TMidString */
-const struct type type_parser_nodes__TMidString = {
-1790,
-"TMidString", /* class_name_string */
+/* runtime type TKwself */
+const struct type type_parser_nodes__TKwself = {
+1773,
+"TKwself", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9671,26 +9804,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-283, /* nullable TMidString */
-622, /* ANode */
-1329, /* Token */
-1790, /* TMidString */
+12, /* nullable ANode */
+236, /* nullable TKwself */
+632, /* ANode */
+1381, /* Token */
+1773, /* TKwself */
 },
 };
-/* runtime type nullable TMidString */
-const struct type type_nullable_parser_nodes__TMidString = {
-283,
-"nullable TMidString", /* class_name_string */
+/* runtime type nullable TKwself */
+const struct type type_nullable_parser_nodes__TKwself = {
+236,
+"nullable TKwself", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TEndString */
-const struct type type_parser_nodes__TEndString = {
-1791,
-"TEndString", /* class_name_string */
+/* runtime type TKwtrue */
+const struct type type_parser_nodes__TKwtrue = {
+1774,
+"TKwtrue", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9698,26 +9831,26 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-284, /* nullable TEndString */
-622, /* ANode */
-1329, /* Token */
-1791, /* TEndString */
+12, /* nullable ANode */
+237, /* nullable TKwtrue */
+632, /* ANode */
+1381, /* Token */
+1774, /* TKwtrue */
 },
 };
-/* runtime type nullable TEndString */
-const struct type type_nullable_parser_nodes__TEndString = {
-284,
-"nullable TEndString", /* class_name_string */
+/* runtime type nullable TKwtrue */
+const struct type type_nullable_parser_nodes__TKwtrue = {
+237,
+"nullable TKwtrue", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TChar */
-const struct type type_parser_nodes__TChar = {
-1792,
-"TChar", /* class_name_string */
+/* runtime type TKwfalse */
+const struct type type_parser_nodes__TKwfalse = {
+1775,
+"TKwfalse", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9725,62 +9858,53 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-285, /* nullable TChar */
-622, /* ANode */
-1329, /* Token */
-1792, /* TChar */
+12, /* nullable ANode */
+238, /* nullable TKwfalse */
+632, /* ANode */
+1381, /* Token */
+1775, /* TKwfalse */
 },
 };
-/* runtime type nullable TChar */
-const struct type type_nullable_parser_nodes__TChar = {
-285,
-"nullable TChar", /* class_name_string */
+/* runtime type nullable TKwfalse */
+const struct type type_nullable_parser_nodes__TKwfalse = {
+238,
+"nullable TKwfalse", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type TBadString */
-const struct type type_parser_nodes__TBadString = {
--1, /*CAST DEAD*/
-"TBadString", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type TKwnull */
+const struct type type_parser_nodes__TKwnull = {
+1776,
+"TKwnull", /* class_name_string */
+6,
 0,
 NULL, /*NO RESOLUTIONS*/
 7,
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1519, /* TBadString */
+12, /* nullable ANode */
+239, /* nullable TKwnull */
+632, /* ANode */
+1381, /* Token */
+1776, /* TKwnull */
 },
 };
-/* runtime type TBadChar */
-const struct type type_parser_nodes__TBadChar = {
--1, /*CAST DEAD*/
-"TBadChar", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-NULL, /*NO RESOLUTIONS*/
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-8, /* nullable ANode */
--1, /* empty */
-622, /* ANode */
-1329, /* Token */
-1520, /* TBadChar */
-},
+/* runtime type nullable TKwnull */
+const struct type type_nullable_parser_nodes__TKwnull = {
+239,
+"nullable TKwnull", /* class_name_string */
+3,
+1,
+NULL, /*DEAD*/
+0, {}, /*DEAD TYPE*/
 };
-/* runtime type TExternCodeSegment */
-const struct type type_parser_nodes__TExternCodeSegment = {
-1793,
-"TExternCodeSegment", /* class_name_string */
+/* runtime type TKwas */
+const struct type type_parser_nodes__TKwas = {
+1777,
+"TKwas", /* class_name_string */
 6,
 0,
 NULL, /*NO RESOLUTIONS*/
@@ -9788,209 +9912,73 @@ NULL, /*NO RESOLUTIONS*/
 {
 0, /* nullable Object */
 1, /* Object */
-8, /* nullable ANode */
-286, /* nullable TExternCodeSegment */
-622, /* ANode */
-1329, /* Token */
-1793, /* TExternCodeSegment */
+12, /* nullable ANode */
+240, /* nullable TKwas */
+632, /* ANode */
+1381, /* Token */
+1777, /* TKwas */
 },
 };
-/* runtime type nullable TExternCodeSegment */
-const struct type type_nullable_parser_nodes__TExternCodeSegment = {
-286,
-"nullable TExternCodeSegment", /* class_name_string */
+/* runtime type nullable TKwas */
+const struct type type_nullable_parser_nodes__TKwas = {
+240,
+"nullable TKwas", /* class_name_string */
 3,
 1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type Array[AAnnotation] */
-const struct type type_array__Arrayparser_nodes__AAnnotation = {
--1, /*CAST DEAD*/
-"Array[AAnnotation]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type TKwnullable */
+const struct type type_parser_nodes__TKwnullable = {
+1778,
+"TKwnullable", /* class_name_string */
+6,
 0,
-&resolution_table_array__Arrayparser_nodes__AAnnotation,
-17,
+NULL, /*NO RESOLUTIONS*/
+7,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
-1294, /* AbstractArrayRead[Object] */
-1493, /* Collection[AAnnotation] */
-1459, /* Array[Object] */
-1648, /* AbstractArrayRead[ANode] */
--1, /* empty */
-2023, /* Array[ANode] */
-2024, /* AbstractArrayRead[Prod] */
-2129, /* AbstractArrayRead[AAnnotation] */
-2145, /* Array[Prod] */
-2183, /* Array[AAnnotation] */
+12, /* nullable ANode */
+241, /* nullable TKwnullable */
+632, /* ANode */
+1381, /* Token */
+1778, /* TKwnullable */
 },
 };
-const struct types resolution_table_array__Arrayparser_nodes__AAnnotation = {
-0, /* dummy */
-{
-&type_parser_nodes__AAnnotation, /* Sequence#0: AAnnotation */
-&type_parser_nodes__AAnnotation, /* SimpleCollection#0: AAnnotation */
-&type_array__NativeArrayparser_nodes__AAnnotation, /* NativeArray[Array#0]: NativeArray[AAnnotation] */
-&type_array__Arrayparser_nodes__AAnnotation, /* Array[Array#0]: Array[AAnnotation] */
-&type_array__NativeArrayparser_nodes__AAnnotation, /* NativeArray[ArrayCapable#0]: NativeArray[AAnnotation] */
-&type_parser_nodes__AAnnotation, /* RemovableCollection#0: AAnnotation */
-&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[Sequence#0]: Collection[AAnnotation] */
-&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[SimpleCollection#0]: Collection[AAnnotation] */
-&type_parser_nodes__AAnnotation, /* Collection#0: AAnnotation */
-&type_abstract_collection__Collectionparser_nodes__AAnnotation, /* Collection[Collection#0]: Collection[AAnnotation] */
-&type_parser_nodes__AAnnotation, /* SequenceRead#0: AAnnotation */
-&type_parser_nodes__AAnnotation, /* AbstractArrayRead#0: AAnnotation */
-&type_array__Arrayparser_nodes__AAnnotation, /* Array[AbstractArrayRead#0]: Array[AAnnotation] */
-&type_array__ArrayIteratorparser_nodes__AAnnotation, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AAnnotation] */
-}
-};
-/* runtime type AbstractArrayRead[AAnnotation] */
-const struct type type_array__AbstractArrayReadparser_nodes__AAnnotation = {
-2129,
-"AbstractArrayRead[AAnnotation]", /* class_name_string */
-14,
-0,
+/* runtime type nullable TKwnullable */
+const struct type type_nullable_parser_nodes__TKwnullable = {
+241,
+"nullable TKwnullable", /* class_name_string */
+3,
+1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type ArraySet[MType] */
-const struct type type_array__ArraySetmodel__MType = {
--1, /*CAST DEAD*/
-"ArraySet[MType]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type TKwisset */
+const struct type type_parser_nodes__TKwisset = {
+1779,
+"TKwisset", /* class_name_string */
+6,
 0,
-&resolution_table_array__ArraySetmodel__MType,
-11,
+NULL, /*NO RESOLUTIONS*/
+7,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
--1, /* empty */
-84, /* Collection[Object] */
-93, /* Collection[nullable MType] */
-1316, /* Collection[MType] */
-607, /* Set[Object] */
--1, /* empty */
-1654, /* Set[MType] */
-1995, /* ArraySet[MType] */
+12, /* nullable ANode */
+242, /* nullable TKwisset */
+632, /* ANode */
+1381, /* Token */
+1779, /* TKwisset */
 },
 };
-const struct types resolution_table_array__ArraySetmodel__MType = {
-0, /* dummy */
-{
-&type_array__ArraySetIteratormodel__MType, /* ArraySetIterator[ArraySet#0]: ArraySetIterator[MType] */
-&type_model__MType, /* SimpleCollection#0: MType */
-&type_array__Arraymodel__MType, /* Array[ArraySet#0]: Array[MType] */
-&type_abstract_collection__Collectionmodel__MType, /* Collection[Set#0]: Collection[MType] */
-NULL, /* empty */
-&type_model__MType, /* RemovableCollection#0: MType */
-NULL, /* empty */
-&type_abstract_collection__Collectionmodel__MType, /* Collection[SimpleCollection#0]: Collection[MType] */
-&type_model__MType, /* Collection#0: MType */
-&type_abstract_collection__Collectionmodel__MType, /* Collection[Collection#0]: Collection[MType] */
-}
-};
-/* runtime type Array[ABreakExpr] */
-const struct type type_array__Arrayparser_nodes__ABreakExpr = {
--1, /*CAST DEAD*/
-"Array[ABreakExpr]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_array__Arrayparser_nodes__ABreakExpr,
-19,
-{
-0, /* nullable Object */
-1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
-1294, /* AbstractArrayRead[Object] */
-1500, /* Collection[AExpr] */
-1459, /* Array[Object] */
-1648, /* AbstractArrayRead[ANode] */
-1794, /* Collection[ABreakExpr] */
-2023, /* Array[ANode] */
-2024, /* AbstractArrayRead[Prod] */
-2128, /* AbstractArrayRead[AExpr] */
-2145, /* Array[Prod] */
-2168, /* AbstractArrayRead[ABreakExpr] */
-2182, /* Array[AExpr] */
-2201, /* Array[ABreakExpr] */
-},
-};
-const struct types resolution_table_array__Arrayparser_nodes__ABreakExpr = {
-0, /* dummy */
-{
-&type_parser_nodes__ABreakExpr, /* Sequence#0: ABreakExpr */
-&type_parser_nodes__ABreakExpr, /* SimpleCollection#0: ABreakExpr */
-&type_array__NativeArrayparser_nodes__ABreakExpr, /* NativeArray[Array#0]: NativeArray[ABreakExpr] */
-&type_array__Arrayparser_nodes__ABreakExpr, /* Array[Array#0]: Array[ABreakExpr] */
-&type_array__NativeArrayparser_nodes__ABreakExpr, /* NativeArray[ArrayCapable#0]: NativeArray[ABreakExpr] */
-&type_parser_nodes__ABreakExpr, /* RemovableCollection#0: ABreakExpr */
-&type_abstract_collection__Collectionparser_nodes__ABreakExpr, /* Collection[Sequence#0]: Collection[ABreakExpr] */
-&type_abstract_collection__Collectionparser_nodes__ABreakExpr, /* Collection[SimpleCollection#0]: Collection[ABreakExpr] */
-&type_parser_nodes__ABreakExpr, /* Collection#0: ABreakExpr */
-&type_abstract_collection__Collectionparser_nodes__ABreakExpr, /* Collection[Collection#0]: Collection[ABreakExpr] */
-&type_parser_nodes__ABreakExpr, /* SequenceRead#0: ABreakExpr */
-&type_parser_nodes__ABreakExpr, /* AbstractArrayRead#0: ABreakExpr */
-&type_array__Arrayparser_nodes__ABreakExpr, /* Array[AbstractArrayRead#0]: Array[ABreakExpr] */
-&type_array__ArrayIteratorparser_nodes__ABreakExpr, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[ABreakExpr] */
-}
-};
-/* runtime type Collection[ABreakExpr] */
-const struct type type_abstract_collection__Collectionparser_nodes__ABreakExpr = {
-1794,
-"Collection[ABreakExpr]", /* class_name_string */
-11,
-0,
-NULL, /*DEAD*/
-0, {}, /*DEAD TYPE*/
-};
-/* runtime type AbstractArrayRead[ABreakExpr] */
-const struct type type_array__AbstractArrayReadparser_nodes__ABreakExpr = {
-2168,
-"AbstractArrayRead[ABreakExpr]", /* class_name_string */
-16,
-0,
+/* runtime type nullable TKwisset */
+const struct type type_nullable_parser_nodes__TKwisset = {
+242,
+"nullable TKwisset", /* class_name_string */
+3,
+1,
 NULL, /*DEAD*/
 0, {}, /*DEAD TYPE*/
 };
-/* runtime type Array[AContinueExpr] */
-const struct type type_array__Arrayparser_nodes__AContinueExpr = {
--1, /*CAST DEAD*/
-"Array[AContinueExpr]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_array__Arrayparser_nodes__AContinueExpr,
-19,
-{
-0, /* nullable Object */
-1, /* Object */
--1, /* empty */
-83, /* SequenceRead[nullable Object] */
-84, /* Collection[Object] */
-601, /* Collection[ANode] */
-1318, /* Collection[Prod] */
-1294, /* AbstractArrayRead[Object] */
-1500, /* Collection[AExpr] */
-1459, /* Array[Object] */
-1648, /* AbstractArrayRead[ANode] */
-1795, /* Collection[AContinueExpr] */
-2023, /* Array[ANode] */
-2024, /* AbstractArrayRead[Prod] */
-2128, /* AbstractArrayRead[AExpr] */
-2145, /* Array[Prod] */
-2169, /* AbstractArrayRead[AContinueExpr] */
-2182, /* Array[AExpr] */
-2202, /* Array[AContinueExpr] */
-},
-};