c_src: update for new ffi syntax
[nit.git] / c_src / nitg.types.4.c
index db2a805..b44e4b2 100644 (file)
 #include "nitg.types.0.h"
-const struct types resolution_table_parser_nodes__TKwthen = {
+const struct types resolution_table_parser_nodes__TComment = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwthen */
-const struct type type_nullable_parser_nodes__TKwthen = {
-48,
-"nullable TKwthen", /* class_name_string */
+/* runtime type TKwpackage */
+const struct type type_parser_nodes__TKwpackage = {
+1822,
+"TKwpackage", /* class_name_string */
+2,
+0,
+&resolution_table_parser_nodes__TKwpackage,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+1822, /* TKwpackage */
+254, /* ANode */
+672, /* Token */
+},
+};
+const struct types resolution_table_parser_nodes__TKwpackage = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TKwmodule */
+const struct type type_parser_nodes__TKwmodule = {
+2043,
+"TKwmodule", /* class_name_string */
+5,
+0,
+&resolution_table_parser_nodes__TKwmodule,
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+32, /* nullable TKwmodule */
+254, /* ANode */
+672, /* Token */
+2043, /* TKwmodule */
+},
+};
+const struct types resolution_table_parser_nodes__TKwmodule = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TKwmodule */
+const struct type type_nullable_parser_nodes__TKwmodule = {
+32,
+"nullable TKwmodule", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwthen,
+&resolution_table_nullable_parser_nodes__TKwmodule,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-48, /* nullable TKwthen */
+32, /* nullable TKwmodule */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwthen = {
+const struct types resolution_table_nullable_parser_nodes__TKwmodule = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwelse */
-const struct type type_parser_nodes__TKwelse = {
-1996,
-"TKwelse", /* class_name_string */
+/* runtime type TKwimport */
+const struct type type_parser_nodes__TKwimport = {
+2044,
+"TKwimport", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwelse,
+&resolution_table_parser_nodes__TKwimport,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-49, /* nullable TKwelse */
-223, /* ANode */
-623, /* Token */
-1996, /* TKwelse */
+33, /* nullable TKwimport */
+254, /* ANode */
+672, /* Token */
+2044, /* TKwimport */
 },
 };
-const struct types resolution_table_parser_nodes__TKwelse = {
+const struct types resolution_table_parser_nodes__TKwimport = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwelse */
-const struct type type_nullable_parser_nodes__TKwelse = {
-49,
-"nullable TKwelse", /* class_name_string */
+/* runtime type nullable TKwimport */
+const struct type type_nullable_parser_nodes__TKwimport = {
+33,
+"nullable TKwimport", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwelse,
+&resolution_table_nullable_parser_nodes__TKwimport,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-49, /* nullable TKwelse */
+33, /* nullable TKwimport */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwelse = {
+const struct types resolution_table_nullable_parser_nodes__TKwimport = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwwhile */
-const struct type type_parser_nodes__TKwwhile = {
-1997,
-"TKwwhile", /* class_name_string */
+/* runtime type TKwclass */
+const struct type type_parser_nodes__TKwclass = {
+2045,
+"TKwclass", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwwhile,
+&resolution_table_parser_nodes__TKwclass,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-50, /* nullable TKwwhile */
-223, /* ANode */
-623, /* Token */
-1997, /* TKwwhile */
+34, /* nullable TKwclass */
+254, /* ANode */
+672, /* Token */
+2045, /* TKwclass */
 },
 };
-const struct types resolution_table_parser_nodes__TKwwhile = {
+const struct types resolution_table_parser_nodes__TKwclass = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwwhile */
-const struct type type_nullable_parser_nodes__TKwwhile = {
-50,
-"nullable TKwwhile", /* class_name_string */
+/* runtime type nullable TKwclass */
+const struct type type_nullable_parser_nodes__TKwclass = {
+34,
+"nullable TKwclass", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwwhile,
+&resolution_table_nullable_parser_nodes__TKwclass,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-50, /* nullable TKwwhile */
+34, /* nullable TKwclass */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwwhile = {
+const struct types resolution_table_nullable_parser_nodes__TKwclass = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwloop */
-const struct type type_parser_nodes__TKwloop = {
-1998,
-"TKwloop", /* class_name_string */
+/* runtime type TKwabstract */
+const struct type type_parser_nodes__TKwabstract = {
+2046,
+"TKwabstract", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwloop,
+&resolution_table_parser_nodes__TKwabstract,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-51, /* nullable TKwloop */
-223, /* ANode */
-623, /* Token */
-1998, /* TKwloop */
+35, /* nullable TKwabstract */
+254, /* ANode */
+672, /* Token */
+2046, /* TKwabstract */
 },
 };
-const struct types resolution_table_parser_nodes__TKwloop = {
+const struct types resolution_table_parser_nodes__TKwabstract = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwloop */
-const struct type type_nullable_parser_nodes__TKwloop = {
-51,
-"nullable TKwloop", /* class_name_string */
+/* runtime type nullable TKwabstract */
+const struct type type_nullable_parser_nodes__TKwabstract = {
+35,
+"nullable TKwabstract", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwloop,
+&resolution_table_nullable_parser_nodes__TKwabstract,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-51, /* nullable TKwloop */
+35, /* nullable TKwabstract */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwloop = {
+const struct types resolution_table_nullable_parser_nodes__TKwabstract = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwfor */
-const struct type type_parser_nodes__TKwfor = {
-1999,
-"TKwfor", /* class_name_string */
+/* runtime type TKwinterface */
+const struct type type_parser_nodes__TKwinterface = {
+2047,
+"TKwinterface", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwfor,
+&resolution_table_parser_nodes__TKwinterface,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-52, /* nullable TKwfor */
-223, /* ANode */
-623, /* Token */
-1999, /* TKwfor */
+36, /* nullable TKwinterface */
+254, /* ANode */
+672, /* Token */
+2047, /* TKwinterface */
 },
 };
-const struct types resolution_table_parser_nodes__TKwfor = {
+const struct types resolution_table_parser_nodes__TKwinterface = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwfor */
-const struct type type_nullable_parser_nodes__TKwfor = {
-52,
-"nullable TKwfor", /* class_name_string */
+/* runtime type nullable TKwinterface */
+const struct type type_nullable_parser_nodes__TKwinterface = {
+36,
+"nullable TKwinterface", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwfor,
+&resolution_table_nullable_parser_nodes__TKwinterface,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-52, /* nullable TKwfor */
+36, /* nullable TKwinterface */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwfor = {
+const struct types resolution_table_nullable_parser_nodes__TKwinterface = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwin */
-const struct type type_parser_nodes__TKwin = {
-2000,
-"TKwin", /* class_name_string */
+/* runtime type TKwenum */
+const struct type type_parser_nodes__TKwenum = {
+2048,
+"TKwenum", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwin,
+&resolution_table_parser_nodes__TKwenum,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-53, /* nullable TKwin */
-223, /* ANode */
-623, /* Token */
-2000, /* TKwin */
+37, /* nullable TKwenum */
+254, /* ANode */
+672, /* Token */
+2048, /* TKwenum */
 },
 };
-const struct types resolution_table_parser_nodes__TKwin = {
+const struct types resolution_table_parser_nodes__TKwenum = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwin */
-const struct type type_nullable_parser_nodes__TKwin = {
-53,
-"nullable TKwin", /* class_name_string */
+/* runtime type nullable TKwenum */
+const struct type type_nullable_parser_nodes__TKwenum = {
+37,
+"nullable TKwenum", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwin,
+&resolution_table_nullable_parser_nodes__TKwenum,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-53, /* nullable TKwin */
+37, /* nullable TKwenum */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwin = {
+const struct types resolution_table_nullable_parser_nodes__TKwenum = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwand */
-const struct type type_parser_nodes__TKwand = {
-1767,
-"TKwand", /* class_name_string */
-2,
-0,
-&resolution_table_parser_nodes__TKwand,
+/* runtime type TKwend */
+const struct type type_parser_nodes__TKwend = {
+2049,
+"TKwend", /* class_name_string */
 5,
+0,
+&resolution_table_parser_nodes__TKwend,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1767, /* TKwand */
-223, /* ANode */
-623, /* Token */
+38, /* nullable TKwend */
+254, /* ANode */
+672, /* Token */
+2049, /* TKwend */
 },
 };
-const struct types resolution_table_parser_nodes__TKwand = {
+const struct types resolution_table_parser_nodes__TKwend = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwor */
-const struct type type_parser_nodes__TKwor = {
-1768,
-"TKwor", /* class_name_string */
+/* runtime type nullable TKwend */
+const struct type type_nullable_parser_nodes__TKwend = {
+38,
+"nullable TKwend", /* class_name_string */
 2,
-0,
-&resolution_table_parser_nodes__TKwor,
-5,
+1,
+&resolution_table_nullable_parser_nodes__TKwend,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-1768, /* TKwor */
-223, /* ANode */
-623, /* Token */
+-1, /* empty */
+38, /* nullable TKwend */
 },
 };
-const struct types resolution_table_parser_nodes__TKwor = {
+const struct types resolution_table_nullable_parser_nodes__TKwend = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwnot */
-const struct type type_parser_nodes__TKwnot = {
-2001,
-"TKwnot", /* class_name_string */
+/* runtime type TKwmeth */
+const struct type type_parser_nodes__TKwmeth = {
+2050,
+"TKwmeth", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwnot,
+&resolution_table_parser_nodes__TKwmeth,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-54, /* nullable TKwnot */
-223, /* ANode */
-623, /* Token */
-2001, /* TKwnot */
+39, /* nullable TKwmeth */
+254, /* ANode */
+672, /* Token */
+2050, /* TKwmeth */
 },
 };
-const struct types resolution_table_parser_nodes__TKwnot = {
+const struct types resolution_table_parser_nodes__TKwmeth = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwnot */
-const struct type type_nullable_parser_nodes__TKwnot = {
-54,
-"nullable TKwnot", /* class_name_string */
+/* runtime type nullable TKwmeth */
+const struct type type_nullable_parser_nodes__TKwmeth = {
+39,
+"nullable TKwmeth", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwnot,
+&resolution_table_nullable_parser_nodes__TKwmeth,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-54, /* nullable TKwnot */
+39, /* nullable TKwmeth */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwnot = {
+const struct types resolution_table_nullable_parser_nodes__TKwmeth = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwimplies */
-const struct type type_parser_nodes__TKwimplies = {
-1769,
-"TKwimplies", /* class_name_string */
-2,
-0,
-&resolution_table_parser_nodes__TKwimplies,
+/* runtime type TKwtype */
+const struct type type_parser_nodes__TKwtype = {
+2051,
+"TKwtype", /* class_name_string */
 5,
+0,
+&resolution_table_parser_nodes__TKwtype,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1769, /* TKwimplies */
-223, /* ANode */
-623, /* Token */
+40, /* nullable TKwtype */
+254, /* ANode */
+672, /* Token */
+2051, /* TKwtype */
 },
 };
-const struct types resolution_table_parser_nodes__TKwimplies = {
+const struct types resolution_table_parser_nodes__TKwtype = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwreturn */
-const struct type type_parser_nodes__TKwreturn = {
-2002,
-"TKwreturn", /* class_name_string */
+/* runtime type nullable TKwtype */
+const struct type type_nullable_parser_nodes__TKwtype = {
+40,
+"nullable TKwtype", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TKwtype,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+40, /* nullable TKwtype */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TKwtype = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TKwinit */
+const struct type type_parser_nodes__TKwinit = {
+2052,
+"TKwinit", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwreturn,
+&resolution_table_parser_nodes__TKwinit,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-55, /* nullable TKwreturn */
-223, /* ANode */
-623, /* Token */
-2002, /* TKwreturn */
+41, /* nullable TKwinit */
+254, /* ANode */
+672, /* Token */
+2052, /* TKwinit */
 },
 };
-const struct types resolution_table_parser_nodes__TKwreturn = {
+const struct types resolution_table_parser_nodes__TKwinit = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwreturn */
-const struct type type_nullable_parser_nodes__TKwreturn = {
-55,
-"nullable TKwreturn", /* class_name_string */
+/* runtime type nullable TKwinit */
+const struct type type_nullable_parser_nodes__TKwinit = {
+41,
+"nullable TKwinit", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwreturn,
+&resolution_table_nullable_parser_nodes__TKwinit,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-55, /* nullable TKwreturn */
+41, /* nullable TKwinit */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwreturn = {
+const struct types resolution_table_nullable_parser_nodes__TKwinit = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwcontinue */
-const struct type type_parser_nodes__TKwcontinue = {
-2003,
-"TKwcontinue", /* class_name_string */
+/* runtime type TKwredef */
+const struct type type_parser_nodes__TKwredef = {
+2053,
+"TKwredef", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwcontinue,
+&resolution_table_parser_nodes__TKwredef,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-56, /* nullable TKwcontinue */
-223, /* ANode */
-623, /* Token */
-2003, /* TKwcontinue */
+42, /* nullable TKwredef */
+254, /* ANode */
+672, /* Token */
+2053, /* TKwredef */
 },
 };
-const struct types resolution_table_parser_nodes__TKwcontinue = {
+const struct types resolution_table_parser_nodes__TKwredef = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwcontinue */
-const struct type type_nullable_parser_nodes__TKwcontinue = {
-56,
-"nullable TKwcontinue", /* class_name_string */
+/* runtime type nullable TKwredef */
+const struct type type_nullable_parser_nodes__TKwredef = {
+42,
+"nullable TKwredef", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwcontinue,
+&resolution_table_nullable_parser_nodes__TKwredef,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-56, /* nullable TKwcontinue */
+42, /* nullable TKwredef */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwcontinue = {
+const struct types resolution_table_nullable_parser_nodes__TKwredef = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwbreak */
-const struct type type_parser_nodes__TKwbreak = {
-2004,
-"TKwbreak", /* class_name_string */
+/* runtime type TKwis */
+const struct type type_parser_nodes__TKwis = {
+1823,
+"TKwis", /* class_name_string */
+2,
+0,
+&resolution_table_parser_nodes__TKwis,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+1823, /* TKwis */
+254, /* ANode */
+672, /* Token */
+},
+};
+const struct types resolution_table_parser_nodes__TKwis = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TKwdo */
+const struct type type_parser_nodes__TKwdo = {
+2054,
+"TKwdo", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwbreak,
+&resolution_table_parser_nodes__TKwdo,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-57, /* nullable TKwbreak */
-223, /* ANode */
-623, /* Token */
-2004, /* TKwbreak */
+43, /* nullable TKwdo */
+254, /* ANode */
+672, /* Token */
+2054, /* TKwdo */
 },
 };
-const struct types resolution_table_parser_nodes__TKwbreak = {
+const struct types resolution_table_parser_nodes__TKwdo = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwbreak */
-const struct type type_nullable_parser_nodes__TKwbreak = {
-57,
-"nullable TKwbreak", /* class_name_string */
+/* runtime type nullable TKwdo */
+const struct type type_nullable_parser_nodes__TKwdo = {
+43,
+"nullable TKwdo", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwbreak,
+&resolution_table_nullable_parser_nodes__TKwdo,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-57, /* nullable TKwbreak */
+43, /* nullable TKwdo */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwbreak = {
+const struct types resolution_table_nullable_parser_nodes__TKwdo = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwabort */
-const struct type type_parser_nodes__TKwabort = {
-2005,
-"TKwabort", /* class_name_string */
+/* runtime type TKwreadable */
+const struct type type_parser_nodes__TKwreadable = {
+2055,
+"TKwreadable", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwabort,
+&resolution_table_parser_nodes__TKwreadable,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-58, /* nullable TKwabort */
-223, /* ANode */
-623, /* Token */
-2005, /* TKwabort */
+44, /* nullable TKwreadable */
+254, /* ANode */
+672, /* Token */
+2055, /* TKwreadable */
 },
 };
-const struct types resolution_table_parser_nodes__TKwabort = {
+const struct types resolution_table_parser_nodes__TKwreadable = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwabort */
-const struct type type_nullable_parser_nodes__TKwabort = {
-58,
-"nullable TKwabort", /* class_name_string */
+/* runtime type nullable TKwreadable */
+const struct type type_nullable_parser_nodes__TKwreadable = {
+44,
+"nullable TKwreadable", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwabort,
+&resolution_table_nullable_parser_nodes__TKwreadable,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-58, /* nullable TKwabort */
+44, /* nullable TKwreadable */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwabort = {
+const struct types resolution_table_nullable_parser_nodes__TKwreadable = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwassert */
-const struct type type_parser_nodes__TKwassert = {
-2006,
-"TKwassert", /* class_name_string */
+/* runtime type TKwwritable */
+const struct type type_parser_nodes__TKwwritable = {
+2056,
+"TKwwritable", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwassert,
+&resolution_table_parser_nodes__TKwwritable,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-59, /* nullable TKwassert */
-223, /* ANode */
-623, /* Token */
-2006, /* TKwassert */
+45, /* nullable TKwwritable */
+254, /* ANode */
+672, /* Token */
+2056, /* TKwwritable */
 },
 };
-const struct types resolution_table_parser_nodes__TKwassert = {
+const struct types resolution_table_parser_nodes__TKwwritable = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwassert */
-const struct type type_nullable_parser_nodes__TKwassert = {
-59,
-"nullable TKwassert", /* class_name_string */
+/* runtime type nullable TKwwritable */
+const struct type type_nullable_parser_nodes__TKwwritable = {
+45,
+"nullable TKwwritable", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwassert,
+&resolution_table_nullable_parser_nodes__TKwwritable,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-59, /* nullable TKwassert */
+45, /* nullable TKwwritable */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwassert = {
+const struct types resolution_table_nullable_parser_nodes__TKwwritable = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwnew */
-const struct type type_parser_nodes__TKwnew = {
-2007,
-"TKwnew", /* class_name_string */
+/* runtime type TKwvar */
+const struct type type_parser_nodes__TKwvar = {
+2057,
+"TKwvar", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwnew,
+&resolution_table_parser_nodes__TKwvar,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-60, /* nullable TKwnew */
-223, /* ANode */
-623, /* Token */
-2007, /* TKwnew */
+46, /* nullable TKwvar */
+254, /* ANode */
+672, /* Token */
+2057, /* TKwvar */
 },
 };
-const struct types resolution_table_parser_nodes__TKwnew = {
+const struct types resolution_table_parser_nodes__TKwvar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwnew */
-const struct type type_nullable_parser_nodes__TKwnew = {
-60,
-"nullable TKwnew", /* class_name_string */
+/* runtime type nullable TKwvar */
+const struct type type_nullable_parser_nodes__TKwvar = {
+46,
+"nullable TKwvar", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwnew,
+&resolution_table_nullable_parser_nodes__TKwvar,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-60, /* nullable TKwnew */
+46, /* nullable TKwvar */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwnew = {
+const struct types resolution_table_nullable_parser_nodes__TKwvar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwisa */
-const struct type type_parser_nodes__TKwisa = {
-1770,
-"TKwisa", /* class_name_string */
+/* runtime type TKwintern */
+const struct type type_parser_nodes__TKwintern = {
+1824,
+"TKwintern", /* class_name_string */
 2,
 0,
-&resolution_table_parser_nodes__TKwisa,
+&resolution_table_parser_nodes__TKwintern,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-1770, /* TKwisa */
-223, /* ANode */
-623, /* Token */
+1824, /* TKwintern */
+254, /* ANode */
+672, /* Token */
 },
 };
-const struct types resolution_table_parser_nodes__TKwisa = {
+const struct types resolution_table_parser_nodes__TKwintern = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwonce */
-const struct type type_parser_nodes__TKwonce = {
-2008,
-"TKwonce", /* class_name_string */
+/* runtime type TKwextern */
+const struct type type_parser_nodes__TKwextern = {
+2058,
+"TKwextern", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwonce,
+&resolution_table_parser_nodes__TKwextern,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-61, /* nullable TKwonce */
-223, /* ANode */
-623, /* Token */
-2008, /* TKwonce */
+47, /* nullable TKwextern */
+254, /* ANode */
+672, /* Token */
+2058, /* TKwextern */
 },
 };
-const struct types resolution_table_parser_nodes__TKwonce = {
+const struct types resolution_table_parser_nodes__TKwextern = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwonce */
-const struct type type_nullable_parser_nodes__TKwonce = {
-61,
-"nullable TKwonce", /* class_name_string */
+/* runtime type nullable TKwextern */
+const struct type type_nullable_parser_nodes__TKwextern = {
+47,
+"nullable TKwextern", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwonce,
+&resolution_table_nullable_parser_nodes__TKwextern,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-61, /* nullable TKwonce */
+47, /* nullable TKwextern */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwonce = {
+const struct types resolution_table_nullable_parser_nodes__TKwextern = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwsuper */
-const struct type type_parser_nodes__TKwsuper = {
-2009,
-"TKwsuper", /* class_name_string */
+/* runtime type TKwprotected */
+const struct type type_parser_nodes__TKwprotected = {
+2059,
+"TKwprotected", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwsuper,
+&resolution_table_parser_nodes__TKwprotected,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-62, /* nullable TKwsuper */
-223, /* ANode */
-623, /* Token */
-2009, /* TKwsuper */
+48, /* nullable TKwprotected */
+254, /* ANode */
+672, /* Token */
+2059, /* TKwprotected */
 },
 };
-const struct types resolution_table_parser_nodes__TKwsuper = {
+const struct types resolution_table_parser_nodes__TKwprotected = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwsuper */
-const struct type type_nullable_parser_nodes__TKwsuper = {
-62,
-"nullable TKwsuper", /* class_name_string */
+/* runtime type nullable TKwprotected */
+const struct type type_nullable_parser_nodes__TKwprotected = {
+48,
+"nullable TKwprotected", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwsuper,
+&resolution_table_nullable_parser_nodes__TKwprotected,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-62, /* nullable TKwsuper */
+48, /* nullable TKwprotected */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwsuper = {
+const struct types resolution_table_nullable_parser_nodes__TKwprotected = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwself */
-const struct type type_parser_nodes__TKwself = {
-2010,
-"TKwself", /* class_name_string */
+/* runtime type TKwprivate */
+const struct type type_parser_nodes__TKwprivate = {
+2060,
+"TKwprivate", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwself,
+&resolution_table_parser_nodes__TKwprivate,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-63, /* nullable TKwself */
-223, /* ANode */
-623, /* Token */
-2010, /* TKwself */
+49, /* nullable TKwprivate */
+254, /* ANode */
+672, /* Token */
+2060, /* TKwprivate */
 },
 };
-const struct types resolution_table_parser_nodes__TKwself = {
+const struct types resolution_table_parser_nodes__TKwprivate = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwself */
-const struct type type_nullable_parser_nodes__TKwself = {
-63,
-"nullable TKwself", /* class_name_string */
+/* runtime type nullable TKwprivate */
+const struct type type_nullable_parser_nodes__TKwprivate = {
+49,
+"nullable TKwprivate", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwself,
+&resolution_table_nullable_parser_nodes__TKwprivate,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-63, /* nullable TKwself */
+49, /* nullable TKwprivate */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwself = {
+const struct types resolution_table_nullable_parser_nodes__TKwprivate = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwtrue */
-const struct type type_parser_nodes__TKwtrue = {
-2011,
-"TKwtrue", /* class_name_string */
+/* runtime type TKwintrude */
+const struct type type_parser_nodes__TKwintrude = {
+2061,
+"TKwintrude", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwtrue,
+&resolution_table_parser_nodes__TKwintrude,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-64, /* nullable TKwtrue */
-223, /* ANode */
-623, /* Token */
-2011, /* TKwtrue */
+50, /* nullable TKwintrude */
+254, /* ANode */
+672, /* Token */
+2061, /* TKwintrude */
 },
 };
-const struct types resolution_table_parser_nodes__TKwtrue = {
+const struct types resolution_table_parser_nodes__TKwintrude = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwtrue */
-const struct type type_nullable_parser_nodes__TKwtrue = {
-64,
-"nullable TKwtrue", /* class_name_string */
+/* runtime type nullable TKwintrude */
+const struct type type_nullable_parser_nodes__TKwintrude = {
+50,
+"nullable TKwintrude", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwtrue,
+&resolution_table_nullable_parser_nodes__TKwintrude,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-64, /* nullable TKwtrue */
+50, /* nullable TKwintrude */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwtrue = {
+const struct types resolution_table_nullable_parser_nodes__TKwintrude = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwfalse */
-const struct type type_parser_nodes__TKwfalse = {
-2012,
-"TKwfalse", /* class_name_string */
+/* runtime type TKwif */
+const struct type type_parser_nodes__TKwif = {
+2062,
+"TKwif", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwfalse,
+&resolution_table_parser_nodes__TKwif,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-65, /* nullable TKwfalse */
-223, /* ANode */
-623, /* Token */
-2012, /* TKwfalse */
+51, /* nullable TKwif */
+254, /* ANode */
+672, /* Token */
+2062, /* TKwif */
 },
 };
-const struct types resolution_table_parser_nodes__TKwfalse = {
+const struct types resolution_table_parser_nodes__TKwif = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwfalse */
-const struct type type_nullable_parser_nodes__TKwfalse = {
-65,
-"nullable TKwfalse", /* class_name_string */
+/* runtime type nullable TKwif */
+const struct type type_nullable_parser_nodes__TKwif = {
+51,
+"nullable TKwif", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwfalse,
+&resolution_table_nullable_parser_nodes__TKwif,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-65, /* nullable TKwfalse */
+51, /* nullable TKwif */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwfalse = {
+const struct types resolution_table_nullable_parser_nodes__TKwif = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwnull */
-const struct type type_parser_nodes__TKwnull = {
-2013,
-"TKwnull", /* class_name_string */
+/* runtime type TKwthen */
+const struct type type_parser_nodes__TKwthen = {
+2063,
+"TKwthen", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwnull,
+&resolution_table_parser_nodes__TKwthen,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-66, /* nullable TKwnull */
-223, /* ANode */
-623, /* Token */
-2013, /* TKwnull */
+52, /* nullable TKwthen */
+254, /* ANode */
+672, /* Token */
+2063, /* TKwthen */
 },
 };
-const struct types resolution_table_parser_nodes__TKwnull = {
+const struct types resolution_table_parser_nodes__TKwthen = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwnull */
-const struct type type_nullable_parser_nodes__TKwnull = {
-66,
-"nullable TKwnull", /* class_name_string */
+/* runtime type nullable TKwthen */
+const struct type type_nullable_parser_nodes__TKwthen = {
+52,
+"nullable TKwthen", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwnull,
+&resolution_table_nullable_parser_nodes__TKwthen,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-66, /* nullable TKwnull */
+52, /* nullable TKwthen */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwnull = {
+const struct types resolution_table_nullable_parser_nodes__TKwthen = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwas */
-const struct type type_parser_nodes__TKwas = {
-2014,
-"TKwas", /* class_name_string */
+/* runtime type TKwelse */
+const struct type type_parser_nodes__TKwelse = {
+2064,
+"TKwelse", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwas,
+&resolution_table_parser_nodes__TKwelse,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-67, /* nullable TKwas */
-223, /* ANode */
-623, /* Token */
-2014, /* TKwas */
+53, /* nullable TKwelse */
+254, /* ANode */
+672, /* Token */
+2064, /* TKwelse */
 },
 };
-const struct types resolution_table_parser_nodes__TKwas = {
+const struct types resolution_table_parser_nodes__TKwelse = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwas */
-const struct type type_nullable_parser_nodes__TKwas = {
-67,
-"nullable TKwas", /* class_name_string */
+/* runtime type nullable TKwelse */
+const struct type type_nullable_parser_nodes__TKwelse = {
+53,
+"nullable TKwelse", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwas,
+&resolution_table_nullable_parser_nodes__TKwelse,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-67, /* nullable TKwas */
+53, /* nullable TKwelse */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwas = {
+const struct types resolution_table_nullable_parser_nodes__TKwelse = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwnullable */
-const struct type type_parser_nodes__TKwnullable = {
-2015,
-"TKwnullable", /* class_name_string */
+/* runtime type TKwwhile */
+const struct type type_parser_nodes__TKwwhile = {
+2065,
+"TKwwhile", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwnullable,
+&resolution_table_parser_nodes__TKwwhile,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-68, /* nullable TKwnullable */
-223, /* ANode */
-623, /* Token */
-2015, /* TKwnullable */
+54, /* nullable TKwwhile */
+254, /* ANode */
+672, /* Token */
+2065, /* TKwwhile */
 },
 };
-const struct types resolution_table_parser_nodes__TKwnullable = {
+const struct types resolution_table_parser_nodes__TKwwhile = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwnullable */
-const struct type type_nullable_parser_nodes__TKwnullable = {
-68,
-"nullable TKwnullable", /* class_name_string */
+/* runtime type nullable TKwwhile */
+const struct type type_nullable_parser_nodes__TKwwhile = {
+54,
+"nullable TKwwhile", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwnullable,
+&resolution_table_nullable_parser_nodes__TKwwhile,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-68, /* nullable TKwnullable */
+54, /* nullable TKwwhile */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwnullable = {
+const struct types resolution_table_nullable_parser_nodes__TKwwhile = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwisset */
-const struct type type_parser_nodes__TKwisset = {
-2016,
-"TKwisset", /* class_name_string */
+/* runtime type TKwloop */
+const struct type type_parser_nodes__TKwloop = {
+2066,
+"TKwloop", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwisset,
+&resolution_table_parser_nodes__TKwloop,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-69, /* nullable TKwisset */
-223, /* ANode */
-623, /* Token */
-2016, /* TKwisset */
+55, /* nullable TKwloop */
+254, /* ANode */
+672, /* Token */
+2066, /* TKwloop */
 },
 };
-const struct types resolution_table_parser_nodes__TKwisset = {
+const struct types resolution_table_parser_nodes__TKwloop = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwisset */
-const struct type type_nullable_parser_nodes__TKwisset = {
-69,
-"nullable TKwisset", /* class_name_string */
+/* runtime type nullable TKwloop */
+const struct type type_nullable_parser_nodes__TKwloop = {
+55,
+"nullable TKwloop", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwisset,
+&resolution_table_nullable_parser_nodes__TKwloop,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-69, /* nullable TKwisset */
+55, /* nullable TKwloop */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwisset = {
+const struct types resolution_table_nullable_parser_nodes__TKwloop = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwlabel */
-const struct type type_parser_nodes__TKwlabel = {
-2017,
-"TKwlabel", /* class_name_string */
+/* runtime type TKwfor */
+const struct type type_parser_nodes__TKwfor = {
+2067,
+"TKwfor", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwlabel,
+&resolution_table_parser_nodes__TKwfor,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-70, /* nullable TKwlabel */
-223, /* ANode */
-623, /* Token */
-2017, /* TKwlabel */
+56, /* nullable TKwfor */
+254, /* ANode */
+672, /* Token */
+2067, /* TKwfor */
 },
 };
-const struct types resolution_table_parser_nodes__TKwlabel = {
+const struct types resolution_table_parser_nodes__TKwfor = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwlabel */
-const struct type type_nullable_parser_nodes__TKwlabel = {
-70,
-"nullable TKwlabel", /* class_name_string */
+/* runtime type nullable TKwfor */
+const struct type type_nullable_parser_nodes__TKwfor = {
+56,
+"nullable TKwfor", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwlabel,
+&resolution_table_nullable_parser_nodes__TKwfor,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-70, /* nullable TKwlabel */
+56, /* nullable TKwfor */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwlabel = {
+const struct types resolution_table_nullable_parser_nodes__TKwfor = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TKwdebug */
-const struct type type_parser_nodes__TKwdebug = {
-2018,
-"TKwdebug", /* class_name_string */
+/* runtime type TKwin */
+const struct type type_parser_nodes__TKwin = {
+2068,
+"TKwin", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TKwdebug,
+&resolution_table_parser_nodes__TKwin,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-71, /* nullable TKwdebug */
-223, /* ANode */
-623, /* Token */
-2018, /* TKwdebug */
+57, /* nullable TKwin */
+254, /* ANode */
+672, /* Token */
+2068, /* TKwin */
 },
 };
-const struct types resolution_table_parser_nodes__TKwdebug = {
+const struct types resolution_table_parser_nodes__TKwin = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TKwdebug */
-const struct type type_nullable_parser_nodes__TKwdebug = {
-71,
-"nullable TKwdebug", /* class_name_string */
+/* runtime type nullable TKwin */
+const struct type type_nullable_parser_nodes__TKwin = {
+57,
+"nullable TKwin", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TKwdebug,
+&resolution_table_nullable_parser_nodes__TKwin,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-71, /* nullable TKwdebug */
+57, /* nullable TKwin */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TKwdebug = {
+const struct types resolution_table_nullable_parser_nodes__TKwin = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TOpar */
-const struct type type_parser_nodes__TOpar = {
-2019,
-"TOpar", /* class_name_string */
-5,
+/* runtime type TKwand */
+const struct type type_parser_nodes__TKwand = {
+1825,
+"TKwand", /* class_name_string */
+2,
 0,
-&resolution_table_parser_nodes__TOpar,
-6,
+&resolution_table_parser_nodes__TKwand,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-72, /* nullable TOpar */
-223, /* ANode */
-623, /* Token */
-2019, /* TOpar */
+1825, /* TKwand */
+254, /* ANode */
+672, /* Token */
 },
 };
-const struct types resolution_table_parser_nodes__TOpar = {
+const struct types resolution_table_parser_nodes__TKwand = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TOpar */
-const struct type type_nullable_parser_nodes__TOpar = {
-72,
-"nullable TOpar", /* class_name_string */
+/* runtime type TKwor */
+const struct type type_parser_nodes__TKwor = {
+1826,
+"TKwor", /* class_name_string */
 2,
-1,
-&resolution_table_nullable_parser_nodes__TOpar,
-3,
+0,
+&resolution_table_parser_nodes__TKwor,
+5,
 {
 0, /* nullable Object */
--1, /* empty */
-72, /* nullable TOpar */
+1, /* Object */
+1826, /* TKwor */
+254, /* ANode */
+672, /* Token */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TOpar = {
+const struct types resolution_table_parser_nodes__TKwor = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TCpar */
-const struct type type_parser_nodes__TCpar = {
-2020,
-"TCpar", /* class_name_string */
+/* runtime type TKwnot */
+const struct type type_parser_nodes__TKwnot = {
+2069,
+"TKwnot", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TCpar,
+&resolution_table_parser_nodes__TKwnot,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-73, /* nullable TCpar */
-223, /* ANode */
-623, /* Token */
-2020, /* TCpar */
+58, /* nullable TKwnot */
+254, /* ANode */
+672, /* Token */
+2069, /* TKwnot */
 },
 };
-const struct types resolution_table_parser_nodes__TCpar = {
+const struct types resolution_table_parser_nodes__TKwnot = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TCpar */
-const struct type type_nullable_parser_nodes__TCpar = {
-73,
-"nullable TCpar", /* class_name_string */
+/* runtime type nullable TKwnot */
+const struct type type_nullable_parser_nodes__TKwnot = {
+58,
+"nullable TKwnot", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TCpar,
+&resolution_table_nullable_parser_nodes__TKwnot,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-73, /* nullable TCpar */
+58, /* nullable TKwnot */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TCpar = {
+const struct types resolution_table_nullable_parser_nodes__TKwnot = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TObra */
-const struct type type_parser_nodes__TObra = {
-2021,
-"TObra", /* class_name_string */
-5,
+/* runtime type TKwimplies */
+const struct type type_parser_nodes__TKwimplies = {
+1827,
+"TKwimplies", /* class_name_string */
+2,
 0,
-&resolution_table_parser_nodes__TObra,
-6,
+&resolution_table_parser_nodes__TKwimplies,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-74, /* nullable TObra */
-223, /* ANode */
-623, /* Token */
-2021, /* TObra */
+1827, /* TKwimplies */
+254, /* ANode */
+672, /* Token */
 },
 };
-const struct types resolution_table_parser_nodes__TObra = {
+const struct types resolution_table_parser_nodes__TKwimplies = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TObra */
-const struct type type_nullable_parser_nodes__TObra = {
-74,
-"nullable TObra", /* class_name_string */
-2,
-1,
-&resolution_table_nullable_parser_nodes__TObra,
-3,
-{
-0, /* nullable Object */
--1, /* empty */
-74, /* nullable TObra */
-},
-};
-const struct types resolution_table_nullable_parser_nodes__TObra = {
-0, /* dummy */
-{
-}
-};
-/* runtime type TCbra */
-const struct type type_parser_nodes__TCbra = {
-2022,
-"TCbra", /* class_name_string */
+/* runtime type TKwreturn */
+const struct type type_parser_nodes__TKwreturn = {
+2070,
+"TKwreturn", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TCbra,
+&resolution_table_parser_nodes__TKwreturn,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-75, /* nullable TCbra */
-223, /* ANode */
-623, /* Token */
-2022, /* TCbra */
+59, /* nullable TKwreturn */
+254, /* ANode */
+672, /* Token */
+2070, /* TKwreturn */
 },
 };
-const struct types resolution_table_parser_nodes__TCbra = {
+const struct types resolution_table_parser_nodes__TKwreturn = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TCbra */
-const struct type type_nullable_parser_nodes__TCbra = {
-75,
-"nullable TCbra", /* class_name_string */
+/* runtime type nullable TKwreturn */
+const struct type type_nullable_parser_nodes__TKwreturn = {
+59,
+"nullable TKwreturn", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TCbra,
+&resolution_table_nullable_parser_nodes__TKwreturn,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-75, /* nullable TCbra */
+59, /* nullable TKwreturn */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TCbra = {
+const struct types resolution_table_nullable_parser_nodes__TKwreturn = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TComma */
-const struct type type_parser_nodes__TComma = {
-1771,
-"TComma", /* class_name_string */
-2,
-0,
-&resolution_table_parser_nodes__TComma,
+/* runtime type TKwcontinue */
+const struct type type_parser_nodes__TKwcontinue = {
+2071,
+"TKwcontinue", /* class_name_string */
 5,
+0,
+&resolution_table_parser_nodes__TKwcontinue,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1771, /* TComma */
-223, /* ANode */
-623, /* Token */
+60, /* nullable TKwcontinue */
+254, /* ANode */
+672, /* Token */
+2071, /* TKwcontinue */
 },
 };
-const struct types resolution_table_parser_nodes__TComma = {
+const struct types resolution_table_parser_nodes__TKwcontinue = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TColumn */
-const struct type type_parser_nodes__TColumn = {
-1772,
-"TColumn", /* class_name_string */
+/* runtime type nullable TKwcontinue */
+const struct type type_nullable_parser_nodes__TKwcontinue = {
+60,
+"nullable TKwcontinue", /* class_name_string */
 2,
-0,
-&resolution_table_parser_nodes__TColumn,
-5,
+1,
+&resolution_table_nullable_parser_nodes__TKwcontinue,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-1772, /* TColumn */
-223, /* ANode */
-623, /* Token */
+-1, /* empty */
+60, /* nullable TKwcontinue */
 },
 };
-const struct types resolution_table_parser_nodes__TColumn = {
+const struct types resolution_table_nullable_parser_nodes__TKwcontinue = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TQuad */
-const struct type type_parser_nodes__TQuad = {
-2023,
-"TQuad", /* class_name_string */
+/* runtime type TKwbreak */
+const struct type type_parser_nodes__TKwbreak = {
+2072,
+"TKwbreak", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TQuad,
+&resolution_table_parser_nodes__TKwbreak,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-76, /* nullable TQuad */
-223, /* ANode */
-623, /* Token */
-2023, /* TQuad */
+61, /* nullable TKwbreak */
+254, /* ANode */
+672, /* Token */
+2072, /* TKwbreak */
 },
 };
-const struct types resolution_table_parser_nodes__TQuad = {
+const struct types resolution_table_parser_nodes__TKwbreak = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TQuad */
-const struct type type_nullable_parser_nodes__TQuad = {
-76,
-"nullable TQuad", /* class_name_string */
+/* runtime type nullable TKwbreak */
+const struct type type_nullable_parser_nodes__TKwbreak = {
+61,
+"nullable TKwbreak", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TQuad,
+&resolution_table_nullable_parser_nodes__TKwbreak,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-76, /* nullable TQuad */
+61, /* nullable TKwbreak */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TQuad = {
+const struct types resolution_table_nullable_parser_nodes__TKwbreak = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TAssign */
-const struct type type_parser_nodes__TAssign = {
-2024,
-"TAssign", /* class_name_string */
+/* runtime type TKwabort */
+const struct type type_parser_nodes__TKwabort = {
+2073,
+"TKwabort", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TAssign,
+&resolution_table_parser_nodes__TKwabort,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-77, /* nullable TAssign */
-223, /* ANode */
-623, /* Token */
-2024, /* TAssign */
+62, /* nullable TKwabort */
+254, /* ANode */
+672, /* Token */
+2073, /* TKwabort */
 },
 };
-const struct types resolution_table_parser_nodes__TAssign = {
+const struct types resolution_table_parser_nodes__TKwabort = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TAssign */
-const struct type type_nullable_parser_nodes__TAssign = {
-77,
-"nullable TAssign", /* class_name_string */
+/* runtime type nullable TKwabort */
+const struct type type_nullable_parser_nodes__TKwabort = {
+62,
+"nullable TKwabort", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TAssign,
+&resolution_table_nullable_parser_nodes__TKwabort,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-77, /* nullable TAssign */
+62, /* nullable TKwabort */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TAssign = {
+const struct types resolution_table_nullable_parser_nodes__TKwabort = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TPluseq */
-const struct type type_parser_nodes__TPluseq = {
-2025,
-"TPluseq", /* class_name_string */
+/* runtime type TKwassert */
+const struct type type_parser_nodes__TKwassert = {
+2074,
+"TKwassert", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TPluseq,
+&resolution_table_parser_nodes__TKwassert,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-78, /* nullable TPluseq */
-223, /* ANode */
-623, /* Token */
-2025, /* TPluseq */
+63, /* nullable TKwassert */
+254, /* ANode */
+672, /* Token */
+2074, /* TKwassert */
 },
 };
-const struct types resolution_table_parser_nodes__TPluseq = {
+const struct types resolution_table_parser_nodes__TKwassert = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TPluseq */
-const struct type type_nullable_parser_nodes__TPluseq = {
-78,
-"nullable TPluseq", /* class_name_string */
+/* runtime type nullable TKwassert */
+const struct type type_nullable_parser_nodes__TKwassert = {
+63,
+"nullable TKwassert", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TPluseq,
+&resolution_table_nullable_parser_nodes__TKwassert,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-78, /* nullable TPluseq */
+63, /* nullable TKwassert */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TPluseq = {
+const struct types resolution_table_nullable_parser_nodes__TKwassert = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TMinuseq */
-const struct type type_parser_nodes__TMinuseq = {
-2026,
-"TMinuseq", /* class_name_string */
+/* runtime type TKwnew */
+const struct type type_parser_nodes__TKwnew = {
+2075,
+"TKwnew", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TMinuseq,
+&resolution_table_parser_nodes__TKwnew,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-79, /* nullable TMinuseq */
-223, /* ANode */
-623, /* Token */
-2026, /* TMinuseq */
+64, /* nullable TKwnew */
+254, /* ANode */
+672, /* Token */
+2075, /* TKwnew */
 },
 };
-const struct types resolution_table_parser_nodes__TMinuseq = {
+const struct types resolution_table_parser_nodes__TKwnew = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TMinuseq */
-const struct type type_nullable_parser_nodes__TMinuseq = {
-79,
-"nullable TMinuseq", /* class_name_string */
+/* runtime type nullable TKwnew */
+const struct type type_nullable_parser_nodes__TKwnew = {
+64,
+"nullable TKwnew", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TMinuseq,
+&resolution_table_nullable_parser_nodes__TKwnew,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-79, /* nullable TMinuseq */
+64, /* nullable TKwnew */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TMinuseq = {
+const struct types resolution_table_nullable_parser_nodes__TKwnew = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TDotdotdot */
-const struct type type_parser_nodes__TDotdotdot = {
-2027,
-"TDotdotdot", /* class_name_string */
+/* runtime type TKwisa */
+const struct type type_parser_nodes__TKwisa = {
+1828,
+"TKwisa", /* class_name_string */
+2,
+0,
+&resolution_table_parser_nodes__TKwisa,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+1828, /* TKwisa */
+254, /* ANode */
+672, /* Token */
+},
+};
+const struct types resolution_table_parser_nodes__TKwisa = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TKwonce */
+const struct type type_parser_nodes__TKwonce = {
+2076,
+"TKwonce", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TDotdotdot,
+&resolution_table_parser_nodes__TKwonce,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-80, /* nullable TDotdotdot */
-223, /* ANode */
-623, /* Token */
-2027, /* TDotdotdot */
+65, /* nullable TKwonce */
+254, /* ANode */
+672, /* Token */
+2076, /* TKwonce */
 },
 };
-const struct types resolution_table_parser_nodes__TDotdotdot = {
+const struct types resolution_table_parser_nodes__TKwonce = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TDotdotdot */
-const struct type type_nullable_parser_nodes__TDotdotdot = {
-80,
-"nullable TDotdotdot", /* class_name_string */
+/* runtime type nullable TKwonce */
+const struct type type_nullable_parser_nodes__TKwonce = {
+65,
+"nullable TKwonce", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TDotdotdot,
+&resolution_table_nullable_parser_nodes__TKwonce,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-80, /* nullable TDotdotdot */
+65, /* nullable TKwonce */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TDotdotdot = {
+const struct types resolution_table_nullable_parser_nodes__TKwonce = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TDotdot */
-const struct type type_parser_nodes__TDotdot = {
-1773,
-"TDotdot", /* class_name_string */
-2,
-0,
-&resolution_table_parser_nodes__TDotdot,
+/* runtime type TKwsuper */
+const struct type type_parser_nodes__TKwsuper = {
+2077,
+"TKwsuper", /* class_name_string */
 5,
+0,
+&resolution_table_parser_nodes__TKwsuper,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1773, /* TDotdot */
-223, /* ANode */
-623, /* Token */
+66, /* nullable TKwsuper */
+254, /* ANode */
+672, /* Token */
+2077, /* TKwsuper */
 },
 };
-const struct types resolution_table_parser_nodes__TDotdot = {
+const struct types resolution_table_parser_nodes__TKwsuper = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TDot */
-const struct type type_parser_nodes__TDot = {
-1774,
-"TDot", /* class_name_string */
+/* runtime type nullable TKwsuper */
+const struct type type_nullable_parser_nodes__TKwsuper = {
+66,
+"nullable TKwsuper", /* class_name_string */
 2,
-0,
-&resolution_table_parser_nodes__TDot,
-5,
+1,
+&resolution_table_nullable_parser_nodes__TKwsuper,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-1774, /* TDot */
-223, /* ANode */
-623, /* Token */
+-1, /* empty */
+66, /* nullable TKwsuper */
 },
 };
-const struct types resolution_table_parser_nodes__TDot = {
+const struct types resolution_table_nullable_parser_nodes__TKwsuper = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TPlus */
-const struct type type_parser_nodes__TPlus = {
-2028,
-"TPlus", /* class_name_string */
+/* runtime type TKwself */
+const struct type type_parser_nodes__TKwself = {
+2078,
+"TKwself", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TPlus,
+&resolution_table_parser_nodes__TKwself,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-81, /* nullable TPlus */
-223, /* ANode */
-623, /* Token */
-2028, /* TPlus */
+67, /* nullable TKwself */
+254, /* ANode */
+672, /* Token */
+2078, /* TKwself */
 },
 };
-const struct types resolution_table_parser_nodes__TPlus = {
+const struct types resolution_table_parser_nodes__TKwself = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TPlus */
-const struct type type_nullable_parser_nodes__TPlus = {
-81,
-"nullable TPlus", /* class_name_string */
+/* runtime type nullable TKwself */
+const struct type type_nullable_parser_nodes__TKwself = {
+67,
+"nullable TKwself", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TPlus,
+&resolution_table_nullable_parser_nodes__TKwself,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-81, /* nullable TPlus */
+67, /* nullable TKwself */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TPlus = {
+const struct types resolution_table_nullable_parser_nodes__TKwself = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TMinus */
-const struct type type_parser_nodes__TMinus = {
-2029,
-"TMinus", /* class_name_string */
-5,
-0,
-&resolution_table_parser_nodes__TMinus,
+/* runtime type TKwtrue */
+const struct type type_parser_nodes__TKwtrue = {
+2079,
+"TKwtrue", /* class_name_string */
+5,
+0,
+&resolution_table_parser_nodes__TKwtrue,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-82, /* nullable TMinus */
-223, /* ANode */
-623, /* Token */
-2029, /* TMinus */
+68, /* nullable TKwtrue */
+254, /* ANode */
+672, /* Token */
+2079, /* TKwtrue */
 },
 };
-const struct types resolution_table_parser_nodes__TMinus = {
+const struct types resolution_table_parser_nodes__TKwtrue = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TMinus */
-const struct type type_nullable_parser_nodes__TMinus = {
-82,
-"nullable TMinus", /* class_name_string */
+/* runtime type nullable TKwtrue */
+const struct type type_nullable_parser_nodes__TKwtrue = {
+68,
+"nullable TKwtrue", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TMinus,
+&resolution_table_nullable_parser_nodes__TKwtrue,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-82, /* nullable TMinus */
+68, /* nullable TKwtrue */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TMinus = {
+const struct types resolution_table_nullable_parser_nodes__TKwtrue = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TStar */
-const struct type type_parser_nodes__TStar = {
-2030,
-"TStar", /* class_name_string */
+/* runtime type TKwfalse */
+const struct type type_parser_nodes__TKwfalse = {
+2080,
+"TKwfalse", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TStar,
+&resolution_table_parser_nodes__TKwfalse,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-83, /* nullable TStar */
-223, /* ANode */
-623, /* Token */
-2030, /* TStar */
+69, /* nullable TKwfalse */
+254, /* ANode */
+672, /* Token */
+2080, /* TKwfalse */
 },
 };
-const struct types resolution_table_parser_nodes__TStar = {
+const struct types resolution_table_parser_nodes__TKwfalse = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TStar */
-const struct type type_nullable_parser_nodes__TStar = {
-83,
-"nullable TStar", /* class_name_string */
+/* runtime type nullable TKwfalse */
+const struct type type_nullable_parser_nodes__TKwfalse = {
+69,
+"nullable TKwfalse", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TStar,
+&resolution_table_nullable_parser_nodes__TKwfalse,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-83, /* nullable TStar */
+69, /* nullable TKwfalse */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TStar = {
+const struct types resolution_table_nullable_parser_nodes__TKwfalse = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TSlash */
-const struct type type_parser_nodes__TSlash = {
-2031,
-"TSlash", /* class_name_string */
+/* runtime type TKwnull */
+const struct type type_parser_nodes__TKwnull = {
+2081,
+"TKwnull", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TSlash,
+&resolution_table_parser_nodes__TKwnull,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-84, /* nullable TSlash */
-223, /* ANode */
-623, /* Token */
-2031, /* TSlash */
+70, /* nullable TKwnull */
+254, /* ANode */
+672, /* Token */
+2081, /* TKwnull */
 },
 };
-const struct types resolution_table_parser_nodes__TSlash = {
+const struct types resolution_table_parser_nodes__TKwnull = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TSlash */
-const struct type type_nullable_parser_nodes__TSlash = {
-84,
-"nullable TSlash", /* class_name_string */
+/* runtime type nullable TKwnull */
+const struct type type_nullable_parser_nodes__TKwnull = {
+70,
+"nullable TKwnull", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TSlash,
+&resolution_table_nullable_parser_nodes__TKwnull,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-84, /* nullable TSlash */
+70, /* nullable TKwnull */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TSlash = {
+const struct types resolution_table_nullable_parser_nodes__TKwnull = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TPercent */
-const struct type type_parser_nodes__TPercent = {
-2032,
-"TPercent", /* class_name_string */
+/* runtime type TKwas */
+const struct type type_parser_nodes__TKwas = {
+2082,
+"TKwas", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TPercent,
+&resolution_table_parser_nodes__TKwas,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-85, /* nullable TPercent */
-223, /* ANode */
-623, /* Token */
-2032, /* TPercent */
+71, /* nullable TKwas */
+254, /* ANode */
+672, /* Token */
+2082, /* TKwas */
 },
 };
-const struct types resolution_table_parser_nodes__TPercent = {
+const struct types resolution_table_parser_nodes__TKwas = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TPercent */
-const struct type type_nullable_parser_nodes__TPercent = {
-85,
-"nullable TPercent", /* class_name_string */
+/* runtime type nullable TKwas */
+const struct type type_nullable_parser_nodes__TKwas = {
+71,
+"nullable TKwas", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TPercent,
+&resolution_table_nullable_parser_nodes__TKwas,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-85, /* nullable TPercent */
+71, /* nullable TKwas */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TPercent = {
+const struct types resolution_table_nullable_parser_nodes__TKwas = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TEq */
-const struct type type_parser_nodes__TEq = {
-2033,
-"TEq", /* class_name_string */
+/* runtime type TKwnullable */
+const struct type type_parser_nodes__TKwnullable = {
+2083,
+"TKwnullable", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TEq,
+&resolution_table_parser_nodes__TKwnullable,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-86, /* nullable TEq */
-223, /* ANode */
-623, /* Token */
-2033, /* TEq */
+72, /* nullable TKwnullable */
+254, /* ANode */
+672, /* Token */
+2083, /* TKwnullable */
 },
 };
-const struct types resolution_table_parser_nodes__TEq = {
+const struct types resolution_table_parser_nodes__TKwnullable = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TEq */
-const struct type type_nullable_parser_nodes__TEq = {
-86,
-"nullable TEq", /* class_name_string */
+/* runtime type nullable TKwnullable */
+const struct type type_nullable_parser_nodes__TKwnullable = {
+72,
+"nullable TKwnullable", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TEq,
+&resolution_table_nullable_parser_nodes__TKwnullable,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-86, /* nullable TEq */
+72, /* nullable TKwnullable */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TEq = {
+const struct types resolution_table_nullable_parser_nodes__TKwnullable = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TNe */
-const struct type type_parser_nodes__TNe = {
-2034,
-"TNe", /* class_name_string */
+/* runtime type TKwisset */
+const struct type type_parser_nodes__TKwisset = {
+2084,
+"TKwisset", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TNe,
+&resolution_table_parser_nodes__TKwisset,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-87, /* nullable TNe */
-223, /* ANode */
-623, /* Token */
-2034, /* TNe */
+73, /* nullable TKwisset */
+254, /* ANode */
+672, /* Token */
+2084, /* TKwisset */
 },
 };
-const struct types resolution_table_parser_nodes__TNe = {
+const struct types resolution_table_parser_nodes__TKwisset = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TNe */
-const struct type type_nullable_parser_nodes__TNe = {
-87,
-"nullable TNe", /* class_name_string */
+/* runtime type nullable TKwisset */
+const struct type type_nullable_parser_nodes__TKwisset = {
+73,
+"nullable TKwisset", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TNe,
+&resolution_table_nullable_parser_nodes__TKwisset,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-87, /* nullable TNe */
+73, /* nullable TKwisset */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TNe = {
+const struct types resolution_table_nullable_parser_nodes__TKwisset = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TLt */
-const struct type type_parser_nodes__TLt = {
-2035,
-"TLt", /* class_name_string */
+/* runtime type TKwlabel */
+const struct type type_parser_nodes__TKwlabel = {
+2085,
+"TKwlabel", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TLt,
+&resolution_table_parser_nodes__TKwlabel,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-88, /* nullable TLt */
-223, /* ANode */
-623, /* Token */
-2035, /* TLt */
+74, /* nullable TKwlabel */
+254, /* ANode */
+672, /* Token */
+2085, /* TKwlabel */
 },
 };
-const struct types resolution_table_parser_nodes__TLt = {
+const struct types resolution_table_parser_nodes__TKwlabel = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TLt */
-const struct type type_nullable_parser_nodes__TLt = {
-88,
-"nullable TLt", /* class_name_string */
+/* runtime type nullable TKwlabel */
+const struct type type_nullable_parser_nodes__TKwlabel = {
+74,
+"nullable TKwlabel", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TLt,
+&resolution_table_nullable_parser_nodes__TKwlabel,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-88, /* nullable TLt */
+74, /* nullable TKwlabel */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TLt = {
+const struct types resolution_table_nullable_parser_nodes__TKwlabel = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TLe */
-const struct type type_parser_nodes__TLe = {
-2036,
-"TLe", /* class_name_string */
+/* runtime type TKwdebug */
+const struct type type_parser_nodes__TKwdebug = {
+2086,
+"TKwdebug", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TLe,
+&resolution_table_parser_nodes__TKwdebug,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-89, /* nullable TLe */
-223, /* ANode */
-623, /* Token */
-2036, /* TLe */
+75, /* nullable TKwdebug */
+254, /* ANode */
+672, /* Token */
+2086, /* TKwdebug */
 },
 };
-const struct types resolution_table_parser_nodes__TLe = {
+const struct types resolution_table_parser_nodes__TKwdebug = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TLe */
-const struct type type_nullable_parser_nodes__TLe = {
-89,
-"nullable TLe", /* class_name_string */
+/* runtime type nullable TKwdebug */
+const struct type type_nullable_parser_nodes__TKwdebug = {
+75,
+"nullable TKwdebug", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TLe,
+&resolution_table_nullable_parser_nodes__TKwdebug,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-89, /* nullable TLe */
+75, /* nullable TKwdebug */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TLe = {
+const struct types resolution_table_nullable_parser_nodes__TKwdebug = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TLl */
-const struct type type_parser_nodes__TLl = {
-2037,
-"TLl", /* class_name_string */
+/* runtime type TOpar */
+const struct type type_parser_nodes__TOpar = {
+2087,
+"TOpar", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TLl,
+&resolution_table_parser_nodes__TOpar,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-90, /* nullable TLl */
-223, /* ANode */
-623, /* Token */
-2037, /* TLl */
+76, /* nullable TOpar */
+254, /* ANode */
+672, /* Token */
+2087, /* TOpar */
 },
 };
-const struct types resolution_table_parser_nodes__TLl = {
+const struct types resolution_table_parser_nodes__TOpar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TLl */
-const struct type type_nullable_parser_nodes__TLl = {
-90,
-"nullable TLl", /* class_name_string */
+/* runtime type nullable TOpar */
+const struct type type_nullable_parser_nodes__TOpar = {
+76,
+"nullable TOpar", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TLl,
+&resolution_table_nullable_parser_nodes__TOpar,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-90, /* nullable TLl */
+76, /* nullable TOpar */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TLl = {
+const struct types resolution_table_nullable_parser_nodes__TOpar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TGt */
-const struct type type_parser_nodes__TGt = {
-2038,
-"TGt", /* class_name_string */
+/* runtime type TCpar */
+const struct type type_parser_nodes__TCpar = {
+2088,
+"TCpar", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TGt,
+&resolution_table_parser_nodes__TCpar,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-91, /* nullable TGt */
-223, /* ANode */
-623, /* Token */
-2038, /* TGt */
+77, /* nullable TCpar */
+254, /* ANode */
+672, /* Token */
+2088, /* TCpar */
 },
 };
-const struct types resolution_table_parser_nodes__TGt = {
+const struct types resolution_table_parser_nodes__TCpar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TGt */
-const struct type type_nullable_parser_nodes__TGt = {
-91,
-"nullable TGt", /* class_name_string */
+/* runtime type nullable TCpar */
+const struct type type_nullable_parser_nodes__TCpar = {
+77,
+"nullable TCpar", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TGt,
+&resolution_table_nullable_parser_nodes__TCpar,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-91, /* nullable TGt */
+77, /* nullable TCpar */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TGt = {
+const struct types resolution_table_nullable_parser_nodes__TCpar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TGe */
-const struct type type_parser_nodes__TGe = {
-2039,
-"TGe", /* class_name_string */
+/* runtime type TObra */
+const struct type type_parser_nodes__TObra = {
+2089,
+"TObra", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TGe,
+&resolution_table_parser_nodes__TObra,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-92, /* nullable TGe */
-223, /* ANode */
-623, /* Token */
-2039, /* TGe */
+78, /* nullable TObra */
+254, /* ANode */
+672, /* Token */
+2089, /* TObra */
 },
 };
-const struct types resolution_table_parser_nodes__TGe = {
+const struct types resolution_table_parser_nodes__TObra = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TGe */
-const struct type type_nullable_parser_nodes__TGe = {
-92,
-"nullable TGe", /* class_name_string */
+/* runtime type nullable TObra */
+const struct type type_nullable_parser_nodes__TObra = {
+78,
+"nullable TObra", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TGe,
+&resolution_table_nullable_parser_nodes__TObra,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-92, /* nullable TGe */
+78, /* nullable TObra */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TGe = {
+const struct types resolution_table_nullable_parser_nodes__TObra = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TGg */
-const struct type type_parser_nodes__TGg = {
-2040,
-"TGg", /* class_name_string */
+/* runtime type TCbra */
+const struct type type_parser_nodes__TCbra = {
+2090,
+"TCbra", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TGg,
+&resolution_table_parser_nodes__TCbra,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-93, /* nullable TGg */
-223, /* ANode */
-623, /* Token */
-2040, /* TGg */
+79, /* nullable TCbra */
+254, /* ANode */
+672, /* Token */
+2090, /* TCbra */
 },
 };
-const struct types resolution_table_parser_nodes__TGg = {
+const struct types resolution_table_parser_nodes__TCbra = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TGg */
-const struct type type_nullable_parser_nodes__TGg = {
-93,
-"nullable TGg", /* class_name_string */
+/* runtime type nullable TCbra */
+const struct type type_nullable_parser_nodes__TCbra = {
+79,
+"nullable TCbra", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TGg,
+&resolution_table_nullable_parser_nodes__TCbra,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-93, /* nullable TGg */
+79, /* nullable TCbra */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TGg = {
+const struct types resolution_table_nullable_parser_nodes__TCbra = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TStarship */
-const struct type type_parser_nodes__TStarship = {
-2041,
-"TStarship", /* class_name_string */
-5,
+/* runtime type TComma */
+const struct type type_parser_nodes__TComma = {
+1829,
+"TComma", /* class_name_string */
+2,
 0,
-&resolution_table_parser_nodes__TStarship,
-6,
+&resolution_table_parser_nodes__TComma,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-94, /* nullable TStarship */
-223, /* ANode */
-623, /* Token */
-2041, /* TStarship */
-},
-};
-const struct types resolution_table_parser_nodes__TStarship = {
-0, /* dummy */
-{
-}
-};
-/* runtime type nullable TStarship */
-const struct type type_nullable_parser_nodes__TStarship = {
-94,
-"nullable TStarship", /* class_name_string */
-2,
-1,
-&resolution_table_nullable_parser_nodes__TStarship,
-3,
-{
-0, /* nullable Object */
--1, /* empty */
-94, /* nullable TStarship */
+1829, /* TComma */
+254, /* ANode */
+672, /* Token */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TStarship = {
+const struct types resolution_table_parser_nodes__TComma = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TBang */
-const struct type type_parser_nodes__TBang = {
-1775,
-"TBang", /* class_name_string */
+/* runtime type TColumn */
+const struct type type_parser_nodes__TColumn = {
+1830,
+"TColumn", /* class_name_string */
 2,
 0,
-&resolution_table_parser_nodes__TBang,
+&resolution_table_parser_nodes__TColumn,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-1775, /* TBang */
-223, /* ANode */
-623, /* Token */
+1830, /* TColumn */
+254, /* ANode */
+672, /* Token */
 },
 };
-const struct types resolution_table_parser_nodes__TBang = {
+const struct types resolution_table_parser_nodes__TColumn = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TAt */
-const struct type type_parser_nodes__TAt = {
-2042,
-"TAt", /* class_name_string */
+/* runtime type TQuad */
+const struct type type_parser_nodes__TQuad = {
+2091,
+"TQuad", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TAt,
+&resolution_table_parser_nodes__TQuad,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-95, /* nullable TAt */
-223, /* ANode */
-623, /* Token */
-2042, /* TAt */
+80, /* nullable TQuad */
+254, /* ANode */
+672, /* Token */
+2091, /* TQuad */
 },
 };
-const struct types resolution_table_parser_nodes__TAt = {
+const struct types resolution_table_parser_nodes__TQuad = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TAt */
-const struct type type_nullable_parser_nodes__TAt = {
-95,
-"nullable TAt", /* class_name_string */
+/* runtime type nullable TQuad */
+const struct type type_nullable_parser_nodes__TQuad = {
+80,
+"nullable TQuad", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TAt,
+&resolution_table_nullable_parser_nodes__TQuad,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-95, /* nullable TAt */
+80, /* nullable TQuad */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TAt = {
+const struct types resolution_table_nullable_parser_nodes__TQuad = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TClassid */
-const struct type type_parser_nodes__TClassid = {
-2043,
-"TClassid", /* class_name_string */
+/* runtime type TAssign */
+const struct type type_parser_nodes__TAssign = {
+2092,
+"TAssign", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TClassid,
+&resolution_table_parser_nodes__TAssign,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-96, /* nullable TClassid */
-223, /* ANode */
-623, /* Token */
-2043, /* TClassid */
+81, /* nullable TAssign */
+254, /* ANode */
+672, /* Token */
+2092, /* TAssign */
 },
 };
-const struct types resolution_table_parser_nodes__TClassid = {
+const struct types resolution_table_parser_nodes__TAssign = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TClassid */
-const struct type type_nullable_parser_nodes__TClassid = {
-96,
-"nullable TClassid", /* class_name_string */
+/* runtime type nullable TAssign */
+const struct type type_nullable_parser_nodes__TAssign = {
+81,
+"nullable TAssign", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TClassid,
+&resolution_table_nullable_parser_nodes__TAssign,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-96, /* nullable TClassid */
+81, /* nullable TAssign */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TClassid = {
+const struct types resolution_table_nullable_parser_nodes__TAssign = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TId */
-const struct type type_parser_nodes__TId = {
-2044,
-"TId", /* class_name_string */
+/* runtime type TPluseq */
+const struct type type_parser_nodes__TPluseq = {
+2093,
+"TPluseq", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TId,
+&resolution_table_parser_nodes__TPluseq,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-97, /* nullable TId */
-223, /* ANode */
-623, /* Token */
-2044, /* TId */
+82, /* nullable TPluseq */
+254, /* ANode */
+672, /* Token */
+2093, /* TPluseq */
 },
 };
-const struct types resolution_table_parser_nodes__TId = {
+const struct types resolution_table_parser_nodes__TPluseq = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TId */
-const struct type type_nullable_parser_nodes__TId = {
-97,
-"nullable TId", /* class_name_string */
+/* runtime type nullable TPluseq */
+const struct type type_nullable_parser_nodes__TPluseq = {
+82,
+"nullable TPluseq", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TId,
+&resolution_table_nullable_parser_nodes__TPluseq,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-97, /* nullable TId */
+82, /* nullable TPluseq */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TId = {
+const struct types resolution_table_nullable_parser_nodes__TPluseq = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TAttrid */
-const struct type type_parser_nodes__TAttrid = {
-2045,
-"TAttrid", /* class_name_string */
+/* runtime type TMinuseq */
+const struct type type_parser_nodes__TMinuseq = {
+2094,
+"TMinuseq", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TAttrid,
+&resolution_table_parser_nodes__TMinuseq,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-98, /* nullable TAttrid */
-223, /* ANode */
-623, /* Token */
-2045, /* TAttrid */
+83, /* nullable TMinuseq */
+254, /* ANode */
+672, /* Token */
+2094, /* TMinuseq */
 },
 };
-const struct types resolution_table_parser_nodes__TAttrid = {
+const struct types resolution_table_parser_nodes__TMinuseq = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TAttrid */
-const struct type type_nullable_parser_nodes__TAttrid = {
-98,
-"nullable TAttrid", /* class_name_string */
+/* runtime type nullable TMinuseq */
+const struct type type_nullable_parser_nodes__TMinuseq = {
+83,
+"nullable TMinuseq", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TAttrid,
+&resolution_table_nullable_parser_nodes__TMinuseq,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-98, /* nullable TAttrid */
+83, /* nullable TMinuseq */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TAttrid = {
+const struct types resolution_table_nullable_parser_nodes__TMinuseq = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TNumber */
-const struct type type_parser_nodes__TNumber = {
-2046,
-"TNumber", /* class_name_string */
+/* runtime type TDotdotdot */
+const struct type type_parser_nodes__TDotdotdot = {
+2095,
+"TDotdotdot", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TNumber,
+&resolution_table_parser_nodes__TDotdotdot,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-99, /* nullable TNumber */
-223, /* ANode */
-623, /* Token */
-2046, /* TNumber */
+84, /* nullable TDotdotdot */
+254, /* ANode */
+672, /* Token */
+2095, /* TDotdotdot */
 },
 };
-const struct types resolution_table_parser_nodes__TNumber = {
+const struct types resolution_table_parser_nodes__TDotdotdot = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TNumber */
-const struct type type_nullable_parser_nodes__TNumber = {
-99,
-"nullable TNumber", /* class_name_string */
+/* runtime type nullable TDotdotdot */
+const struct type type_nullable_parser_nodes__TDotdotdot = {
+84,
+"nullable TDotdotdot", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TNumber,
+&resolution_table_nullable_parser_nodes__TDotdotdot,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-99, /* nullable TNumber */
+84, /* nullable TDotdotdot */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TNumber = {
+const struct types resolution_table_nullable_parser_nodes__TDotdotdot = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TFloat */
-const struct type type_parser_nodes__TFloat = {
-2047,
-"TFloat", /* class_name_string */
+/* runtime type TDotdot */
+const struct type type_parser_nodes__TDotdot = {
+1831,
+"TDotdot", /* class_name_string */
+2,
+0,
+&resolution_table_parser_nodes__TDotdot,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+1831, /* TDotdot */
+254, /* ANode */
+672, /* Token */
+},
+};
+const struct types resolution_table_parser_nodes__TDotdot = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TDot */
+const struct type type_parser_nodes__TDot = {
+2096,
+"TDot", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TFloat,
+&resolution_table_parser_nodes__TDot,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-100, /* nullable TFloat */
-223, /* ANode */
-623, /* Token */
-2047, /* TFloat */
+85, /* nullable TDot */
+254, /* ANode */
+672, /* Token */
+2096, /* TDot */
 },
 };
-const struct types resolution_table_parser_nodes__TFloat = {
+const struct types resolution_table_parser_nodes__TDot = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TFloat */
-const struct type type_nullable_parser_nodes__TFloat = {
-100,
-"nullable TFloat", /* class_name_string */
+/* runtime type nullable TDot */
+const struct type type_nullable_parser_nodes__TDot = {
+85,
+"nullable TDot", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TFloat,
+&resolution_table_nullable_parser_nodes__TDot,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-100, /* nullable TFloat */
+85, /* nullable TDot */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TFloat = {
+const struct types resolution_table_nullable_parser_nodes__TDot = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TString */
-const struct type type_parser_nodes__TString = {
-2048,
-"TString", /* class_name_string */
+/* runtime type TPlus */
+const struct type type_parser_nodes__TPlus = {
+2097,
+"TPlus", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TString,
+&resolution_table_parser_nodes__TPlus,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-101, /* nullable TString */
-223, /* ANode */
-623, /* Token */
-2048, /* TString */
+86, /* nullable TPlus */
+254, /* ANode */
+672, /* Token */
+2097, /* TPlus */
 },
 };
-const struct types resolution_table_parser_nodes__TString = {
+const struct types resolution_table_parser_nodes__TPlus = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TString */
-const struct type type_nullable_parser_nodes__TString = {
-101,
-"nullable TString", /* class_name_string */
+/* runtime type nullable TPlus */
+const struct type type_nullable_parser_nodes__TPlus = {
+86,
+"nullable TPlus", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TString,
+&resolution_table_nullable_parser_nodes__TPlus,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-101, /* nullable TString */
+86, /* nullable TPlus */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TString = {
+const struct types resolution_table_nullable_parser_nodes__TPlus = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TStartString */
-const struct type type_parser_nodes__TStartString = {
-2049,
-"TStartString", /* class_name_string */
+/* runtime type TMinus */
+const struct type type_parser_nodes__TMinus = {
+2098,
+"TMinus", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TStartString,
+&resolution_table_parser_nodes__TMinus,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-102, /* nullable TStartString */
-223, /* ANode */
-623, /* Token */
-2049, /* TStartString */
+87, /* nullable TMinus */
+254, /* ANode */
+672, /* Token */
+2098, /* TMinus */
 },
 };
-const struct types resolution_table_parser_nodes__TStartString = {
+const struct types resolution_table_parser_nodes__TMinus = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TStartString */
-const struct type type_nullable_parser_nodes__TStartString = {
-102,
-"nullable TStartString", /* class_name_string */
+/* runtime type nullable TMinus */
+const struct type type_nullable_parser_nodes__TMinus = {
+87,
+"nullable TMinus", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TStartString,
+&resolution_table_nullable_parser_nodes__TMinus,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-102, /* nullable TStartString */
+87, /* nullable TMinus */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TStartString = {
+const struct types resolution_table_nullable_parser_nodes__TMinus = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TMidString */
-const struct type type_parser_nodes__TMidString = {
-2050,
-"TMidString", /* class_name_string */
-5,
+/* runtime type TStar */
+const struct type type_parser_nodes__TStar = {
+2099,
+"TStar", /* class_name_string */
+5,
 0,
-&resolution_table_parser_nodes__TMidString,
+&resolution_table_parser_nodes__TStar,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-103, /* nullable TMidString */
-223, /* ANode */
-623, /* Token */
-2050, /* TMidString */
+88, /* nullable TStar */
+254, /* ANode */
+672, /* Token */
+2099, /* TStar */
 },
 };
-const struct types resolution_table_parser_nodes__TMidString = {
+const struct types resolution_table_parser_nodes__TStar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TMidString */
-const struct type type_nullable_parser_nodes__TMidString = {
-103,
-"nullable TMidString", /* class_name_string */
+/* runtime type nullable TStar */
+const struct type type_nullable_parser_nodes__TStar = {
+88,
+"nullable TStar", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TMidString,
+&resolution_table_nullable_parser_nodes__TStar,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-103, /* nullable TMidString */
+88, /* nullable TStar */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TMidString = {
+const struct types resolution_table_nullable_parser_nodes__TStar = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TEndString */
-const struct type type_parser_nodes__TEndString = {
-2051,
-"TEndString", /* class_name_string */
+/* runtime type TSlash */
+const struct type type_parser_nodes__TSlash = {
+2100,
+"TSlash", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TEndString,
+&resolution_table_parser_nodes__TSlash,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-104, /* nullable TEndString */
-223, /* ANode */
-623, /* Token */
-2051, /* TEndString */
+89, /* nullable TSlash */
+254, /* ANode */
+672, /* Token */
+2100, /* TSlash */
 },
 };
-const struct types resolution_table_parser_nodes__TEndString = {
+const struct types resolution_table_parser_nodes__TSlash = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TEndString */
-const struct type type_nullable_parser_nodes__TEndString = {
-104,
-"nullable TEndString", /* class_name_string */
+/* runtime type nullable TSlash */
+const struct type type_nullable_parser_nodes__TSlash = {
+89,
+"nullable TSlash", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TEndString,
+&resolution_table_nullable_parser_nodes__TSlash,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-104, /* nullable TEndString */
+89, /* nullable TSlash */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TEndString = {
+const struct types resolution_table_nullable_parser_nodes__TSlash = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TChar */
-const struct type type_parser_nodes__TChar = {
-2052,
-"TChar", /* class_name_string */
+/* runtime type TPercent */
+const struct type type_parser_nodes__TPercent = {
+2101,
+"TPercent", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TChar,
+&resolution_table_parser_nodes__TPercent,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-105, /* nullable TChar */
-223, /* ANode */
-623, /* Token */
-2052, /* TChar */
+90, /* nullable TPercent */
+254, /* ANode */
+672, /* Token */
+2101, /* TPercent */
 },
 };
-const struct types resolution_table_parser_nodes__TChar = {
+const struct types resolution_table_parser_nodes__TPercent = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TChar */
-const struct type type_nullable_parser_nodes__TChar = {
-105,
-"nullable TChar", /* class_name_string */
+/* runtime type nullable TPercent */
+const struct type type_nullable_parser_nodes__TPercent = {
+90,
+"nullable TPercent", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TChar,
+&resolution_table_nullable_parser_nodes__TPercent,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-105, /* nullable TChar */
+90, /* nullable TPercent */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TChar = {
+const struct types resolution_table_nullable_parser_nodes__TPercent = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TBadString */
-const struct type type_parser_nodes__TBadString = {
-1776,
-"TBadString", /* class_name_string */
-2,
-0,
-&resolution_table_parser_nodes__TBadString,
+/* runtime type TEq */
+const struct type type_parser_nodes__TEq = {
+2102,
+"TEq", /* class_name_string */
 5,
+0,
+&resolution_table_parser_nodes__TEq,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1776, /* TBadString */
-223, /* ANode */
-623, /* Token */
+91, /* nullable TEq */
+254, /* ANode */
+672, /* Token */
+2102, /* TEq */
 },
 };
-const struct types resolution_table_parser_nodes__TBadString = {
+const struct types resolution_table_parser_nodes__TEq = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TBadChar */
-const struct type type_parser_nodes__TBadChar = {
-1777,
-"TBadChar", /* class_name_string */
+/* runtime type nullable TEq */
+const struct type type_nullable_parser_nodes__TEq = {
+91,
+"nullable TEq", /* class_name_string */
 2,
-0,
-&resolution_table_parser_nodes__TBadChar,
-5,
+1,
+&resolution_table_nullable_parser_nodes__TEq,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-1777, /* TBadChar */
-223, /* ANode */
-623, /* Token */
+-1, /* empty */
+91, /* nullable TEq */
 },
 };
-const struct types resolution_table_parser_nodes__TBadChar = {
+const struct types resolution_table_nullable_parser_nodes__TEq = {
 0, /* dummy */
 {
 }
 };
-/* runtime type TExternCodeSegment */
-const struct type type_parser_nodes__TExternCodeSegment = {
-2053,
-"TExternCodeSegment", /* class_name_string */
+/* runtime type TNe */
+const struct type type_parser_nodes__TNe = {
+2103,
+"TNe", /* class_name_string */
 5,
 0,
-&resolution_table_parser_nodes__TExternCodeSegment,
+&resolution_table_parser_nodes__TNe,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-106, /* nullable TExternCodeSegment */
-223, /* ANode */
-623, /* Token */
-2053, /* TExternCodeSegment */
+92, /* nullable TNe */
+254, /* ANode */
+672, /* Token */
+2103, /* TNe */
 },
 };
-const struct types resolution_table_parser_nodes__TExternCodeSegment = {
+const struct types resolution_table_parser_nodes__TNe = {
 0, /* dummy */
 {
 }
 };
-/* runtime type nullable TExternCodeSegment */
-const struct type type_nullable_parser_nodes__TExternCodeSegment = {
-106,
-"nullable TExternCodeSegment", /* class_name_string */
+/* runtime type nullable TNe */
+const struct type type_nullable_parser_nodes__TNe = {
+92,
+"nullable TNe", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_parser_nodes__TExternCodeSegment,
+&resolution_table_nullable_parser_nodes__TNe,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-106, /* nullable TExternCodeSegment */
+92, /* nullable TNe */
 },
 };
-const struct types resolution_table_nullable_parser_nodes__TExternCodeSegment = {
+const struct types resolution_table_nullable_parser_nodes__TNe = {
 0, /* dummy */
 {
 }
 };
-/* runtime type ALexerError */
-const struct type type_parser_nodes__ALexerError = {
-2335,
-"ALexerError", /* class_name_string */
-6,
+/* runtime type TLt */
+const struct type type_parser_nodes__TLt = {
+2104,
+"TLt", /* class_name_string */
+5,
 0,
-&resolution_table_parser_nodes__ALexerError,
-7,
+&resolution_table_parser_nodes__TLt,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1747, /* EOF */
-223, /* ANode */
-623, /* Token */
-1925, /* AError */
-2335, /* ALexerError */
+93, /* nullable TLt */
+254, /* ANode */
+672, /* Token */
+2104, /* TLt */
 },
 };
-const struct types resolution_table_parser_nodes__ALexerError = {
+const struct types resolution_table_parser_nodes__TLt = {
 0, /* dummy */
 {
 }
 };
-/* runtime type MMethod */
-const struct type type_model__MMethod = {
-2336,
-"MMethod", /* class_name_string */
-6,
-0,
-&resolution_table_model__MMethod,
-7,
+/* runtime type nullable TLt */
+const struct type type_nullable_parser_nodes__TLt = {
+93,
+"nullable TLt", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TLt,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-107, /* nullable MProperty */
-262, /* PropertyLayoutElement */
-263, /* nullable MMethod */
-1778, /* MProperty */
-2336, /* MMethod */
+-1, /* empty */
+93, /* nullable TLt */
 },
 };
-const struct types resolution_table_model__MMethod = {
+const struct types resolution_table_nullable_parser_nodes__TLt = {
 0, /* dummy */
 {
-&type_array__Arraymodel__MMethodDef, /* Array[MPROPDEF]: Array[MMethodDef] */
-&type_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MMethodDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MMethodDef]] */
 }
 };
-/* runtime type MProperty */
-const struct type type_model__MProperty = {
-1778,
-"MProperty", /* class_name_string */
+/* runtime type TLe */
+const struct type type_parser_nodes__TLe = {
+2105,
+"TLe", /* class_name_string */
 5,
 0,
-NULL,
+&resolution_table_parser_nodes__TLe,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-107, /* nullable MProperty */
-262, /* PropertyLayoutElement */
--1, /* empty */
-1778, /* MProperty */
+94, /* nullable TLe */
+254, /* ANode */
+672, /* Token */
+2105, /* TLe */
 },
 };
-/* runtime type PropertyLayoutElement */
-const struct type type_layout_builders__PropertyLayoutElement = {
-262,
-"PropertyLayoutElement", /* class_name_string */
+const struct types resolution_table_parser_nodes__TLe = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TLe */
+const struct type type_nullable_parser_nodes__TLe = {
+94,
+"nullable TLe", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TLe,
 3,
-0,
-NULL,
-4,
 {
 0, /* nullable Object */
-1, /* Object */
 -1, /* empty */
-262, /* PropertyLayoutElement */
+94, /* nullable TLe */
 },
 };
-/* runtime type nullable MMethod */
-const struct type type_nullable_model__MMethod = {
-263,
-"nullable MMethod", /* class_name_string */
-4,
-1,
-&resolution_table_nullable_model__MMethod,
+const struct types resolution_table_nullable_parser_nodes__TLe = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TLl */
+const struct type type_parser_nodes__TLl = {
+2106,
+"TLl", /* class_name_string */
 5,
+0,
+&resolution_table_parser_nodes__TLl,
+6,
 {
 0, /* nullable Object */
--1, /* empty */
-107, /* nullable MProperty */
--1, /* empty */
-263, /* nullable MMethod */
+1, /* Object */
+95, /* nullable TLl */
+254, /* ANode */
+672, /* Token */
+2106, /* TLl */
 },
 };
-const struct types resolution_table_nullable_model__MMethod = {
+const struct types resolution_table_parser_nodes__TLl = {
 0, /* dummy */
 {
-&type_array__Arraymodel__MMethodDef, /* Array[MPROPDEF]: Array[MMethodDef] */
-&type_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MMethodDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MMethodDef]] */
 }
 };
-/* runtime type nullable MProperty */
-const struct type type_nullable_model__MProperty = {
-107,
-"nullable MProperty", /* class_name_string */
+/* runtime type nullable TLl */
+const struct type type_nullable_parser_nodes__TLl = {
+95,
+"nullable TLl", /* class_name_string */
 2,
 1,
-NULL,
+&resolution_table_nullable_parser_nodes__TLl,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-107, /* nullable MProperty */
+95, /* nullable TLl */
 },
 };
-/* runtime type MMethodDef */
-const struct type type_model__MMethodDef = {
-2054,
-"MMethodDef", /* class_name_string */
+const struct types resolution_table_nullable_parser_nodes__TLl = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TGt */
+const struct type type_parser_nodes__TGt = {
+2107,
+"TGt", /* class_name_string */
 5,
 0,
-&resolution_table_model__MMethodDef,
+&resolution_table_parser_nodes__TGt,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-108, /* nullable MPropDef */
-262, /* PropertyLayoutElement */
-1779, /* MPropDef */
-2054, /* MMethodDef */
+96, /* nullable TGt */
+254, /* ANode */
+672, /* Token */
+2107, /* TGt */
 },
 };
-const struct types resolution_table_model__MMethodDef = {
+const struct types resolution_table_parser_nodes__TGt = {
 0, /* dummy */
 {
-&type_model__MMethod, /* MPROPERTY: MMethod */
-&type_abstract_compiler__AbstractCompilerVisitor, /* VISITOR: AbstractCompilerVisitor */
-&type_model__MMethodDef, /* MPROPDEF: MMethodDef */
 }
 };
-/* runtime type MPropDef */
-const struct type type_model__MPropDef = {
-1779,
-"MPropDef", /* class_name_string */
-4,
-0,
-NULL,
-5,
-{
-0, /* nullable Object */
-1, /* Object */
-108, /* nullable MPropDef */
-262, /* PropertyLayoutElement */
-1779, /* MPropDef */
-},
-};
-/* runtime type nullable MPropDef */
-const struct type type_nullable_model__MPropDef = {
-108,
-"nullable MPropDef", /* class_name_string */
+/* runtime type nullable TGt */
+const struct type type_nullable_parser_nodes__TGt = {
+96,
+"nullable TGt", /* class_name_string */
 2,
 1,
-NULL,
+&resolution_table_nullable_parser_nodes__TGt,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-108, /* nullable MPropDef */
+96, /* nullable TGt */
 },
 };
-/* runtime type Array[MParameter] */
-const struct type type_array__Arraymodel__MParameter = {
-2503,
-"Array[MParameter]", /* class_name_string */
-7,
+const struct types resolution_table_nullable_parser_nodes__TGt = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TGe */
+const struct type type_parser_nodes__TGe = {
+2108,
+"TGe", /* class_name_string */
+5,
 0,
-&resolution_table_array__Arraymodel__MParameter,
-10,
+&resolution_table_parser_nodes__TGe,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1424, /* Collection[MParameter] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-2337, /* AbstractArrayRead[MParameter] */
-1728, /* AbstractArrayRead[Object] */
-2503, /* Array[MParameter] */
--1, /* empty */
-1911, /* Array[Object] */
+97, /* nullable TGe */
+254, /* ANode */
+672, /* Token */
+2108, /* TGe */
 },
 };
-const struct types resolution_table_array__Arraymodel__MParameter = {
+const struct types resolution_table_parser_nodes__TGe = {
 0, /* dummy */
 {
-&type_array__Arraymodel__MParameter, /* Array[Array#0]: Array[MParameter] */
-&type_array__NativeArraymodel__MParameter, /* NativeArray[Array#0]: NativeArray[MParameter] */
-&type_model__MParameter, /* Sequence#0: MParameter */
-&type_model__MParameter, /* SimpleCollection#0: MParameter */
-&type_abstract_collection__Collectionmodel__MParameter, /* Collection[Array#0]: Collection[MParameter] */
-&type_model__MParameter, /* Array#0: MParameter */
-&type_array__NativeArraymodel__MParameter, /* NativeArray[ArrayCapable#0]: NativeArray[MParameter] */
-&type_model__MParameter, /* AbstractArray#0: MParameter */
-&type_model__MParameter, /* RemovableCollection#0: MParameter */
-&type_abstract_collection__Collectionmodel__MParameter, /* Collection[Sequence#0]: Collection[MParameter] */
-&type_array__Arraymodel__MParameter, /* Array[Sequence#0]: Array[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] */
-NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[MParameter] not a live type) */
-&type_array__ArrayIteratormodel__MParameter, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MParameter] */
 }
 };
-/* runtime type Collection[MParameter] */
-const struct type type_abstract_collection__Collectionmodel__MParameter = {
-1424,
-"Collection[MParameter]", /* class_name_string */
+/* runtime type nullable TGe */
+const struct type type_nullable_parser_nodes__TGe = {
+97,
+"nullable TGe", /* class_name_string */
 2,
-0,
-NULL,
-5,
+1,
+&resolution_table_nullable_parser_nodes__TGe,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-1424, /* Collection[MParameter] */
 -1, /* empty */
-164, /* Collection[Object] */
+97, /* nullable TGe */
 },
 };
-/* runtime type AbstractArrayRead[MParameter] */
-const struct type type_array__AbstractArrayReadmodel__MParameter = {
-2337,
-"AbstractArrayRead[MParameter]", /* class_name_string */
+const struct types resolution_table_nullable_parser_nodes__TGe = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TGg */
+const struct type type_parser_nodes__TGg = {
+2109,
+"TGg", /* class_name_string */
 5,
 0,
-NULL,
-7,
+&resolution_table_parser_nodes__TGg,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-1424, /* Collection[MParameter] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-2337, /* AbstractArrayRead[MParameter] */
-1728, /* AbstractArrayRead[Object] */
+98, /* nullable TGg */
+254, /* ANode */
+672, /* Token */
+2109, /* TGg */
 },
 };
-/* runtime type MSignature */
-const struct type type_model__MSignature = {
-1780,
-"MSignature", /* class_name_string */
-4,
-0,
-&resolution_table_model__MSignature,
+const struct types resolution_table_parser_nodes__TGg = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TGg */
+const struct type type_nullable_parser_nodes__TGg = {
+98,
+"nullable TGg", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TGg,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+98, /* nullable TGg */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TGg = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TStarship */
+const struct type type_parser_nodes__TStarship = {
+2110,
+"TStarship", /* class_name_string */
 5,
+0,
+&resolution_table_parser_nodes__TStarship,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-2, /* nullable MType */
-594, /* MType */
-1780, /* MSignature */
+99, /* nullable TStarship */
+254, /* ANode */
+672, /* Token */
+2110, /* TStarship */
 },
 };
-const struct types resolution_table_model__MSignature = {
+const struct types resolution_table_parser_nodes__TStarship = {
 0, /* dummy */
 {
 }
 };
-/* runtime type MParameter */
-const struct type type_model__MParameter = {
-264,
-"MParameter", /* class_name_string */
+/* runtime type nullable TStarship */
+const struct type type_nullable_parser_nodes__TStarship = {
+99,
+"nullable TStarship", /* class_name_string */
 2,
-0,
-&resolution_table_model__MParameter,
+1,
+&resolution_table_nullable_parser_nodes__TStarship,
 3,
 {
 0, /* nullable Object */
-1, /* Object */
-264, /* MParameter */
+-1, /* empty */
+99, /* nullable TStarship */
 },
 };
-const struct types resolution_table_model__MParameter = {
+const struct types resolution_table_nullable_parser_nodes__TStarship = {
 0, /* dummy */
 {
 }
 };
-/* runtime type Scope */
-const struct type type_scope__Scope = {
-265,
-"Scope", /* class_name_string */
+/* runtime type TBang */
+const struct type type_parser_nodes__TBang = {
+1832,
+"TBang", /* class_name_string */
 2,
 0,
-&resolution_table_scope__Scope,
-3,
+&resolution_table_parser_nodes__TBang,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-265, /* Scope */
+1832, /* TBang */
+254, /* ANode */
+672, /* Token */
 },
 };
-const struct types resolution_table_scope__Scope = {
+const struct types resolution_table_parser_nodes__TBang = {
 0, /* dummy */
 {
 }
 };
-/* runtime type HashMap[String, Variable] */
-const struct type type_hash_collection__HashMapstring__Stringscope__Variable = {
-266,
-"HashMap[String, Variable]", /* class_name_string */
-2,
+/* runtime type TAt */
+const struct type type_parser_nodes__TAt = {
+2111,
+"TAt", /* class_name_string */
+5,
 0,
-&resolution_table_hash_collection__HashMapstring__Stringscope__Variable,
-3,
+&resolution_table_parser_nodes__TAt,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-266, /* HashMap[String, Variable] */
+100, /* nullable TAt */
+254, /* ANode */
+672, /* Token */
+2111, /* TAt */
 },
 };
-const struct types resolution_table_hash_collection__HashMapstring__Stringscope__Variable = {
+const struct types resolution_table_parser_nodes__TAt = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&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_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringscope__Variable, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[String, Variable]] */
-&type_string__String, /* MapRead#0: String */
-&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] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[String, Variable] not a live type) */
-&type_scope__Variable, /* MapRead#1: Variable */
-&type_string__String, /* HashCollection#0: String */
-&type_hash_collection__HashMapNodestring__Stringscope__Variable, /* HashCollection#1: HashMapNode[String, Variable] */
 }
 };
-/* runtime type FlowContext */
-const struct type type_flow__FlowContext = {
-267,
-"FlowContext", /* class_name_string */
+/* runtime type nullable TAt */
+const struct type type_nullable_parser_nodes__TAt = {
+100,
+"nullable TAt", /* class_name_string */
 2,
-0,
-&resolution_table_flow__FlowContext,
+1,
+&resolution_table_nullable_parser_nodes__TAt,
 3,
 {
 0, /* nullable Object */
-1, /* Object */
-267, /* FlowContext */
+-1, /* empty */
+100, /* nullable TAt */
 },
 };
-const struct types resolution_table_flow__FlowContext = {
+const struct types resolution_table_nullable_parser_nodes__TAt = {
 0, /* dummy */
 {
 }
 };
-/* runtime type HashMap[Variable, nullable MType] */
-const struct type type_hash_collection__HashMapscope__Variablenullable_model__MType = {
-268,
-"HashMap[Variable, nullable MType]", /* class_name_string */
-2,
+/* runtime type TClassid */
+const struct type type_parser_nodes__TClassid = {
+2112,
+"TClassid", /* class_name_string */
+5,
 0,
-&resolution_table_hash_collection__HashMapscope__Variablenullable_model__MType,
-3,
+&resolution_table_parser_nodes__TClassid,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-268, /* HashMap[Variable, nullable MType] */
+101, /* nullable TClassid */
+254, /* ANode */
+672, /* Token */
+2112, /* TClassid */
 },
 };
-const struct types resolution_table_hash_collection__HashMapscope__Variablenullable_model__MType = {
+const struct types resolution_table_parser_nodes__TClassid = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&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_array__NativeArraynullable_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[Variable, nullable MType]] */
-&type_scope__Variable, /* MapRead#0: Variable */
-&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] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[Variable, nullable MType] not a live type) */
-&type_nullable_model__MType, /* MapRead#1: nullable MType */
-&type_scope__Variable, /* HashCollection#0: Variable */
-&type_hash_collection__HashMapNodescope__Variablenullable_model__MType, /* HashCollection#1: HashMapNode[Variable, nullable MType] */
 }
 };
-/* runtime type HashMap[Variable, nullable Array[nullable MType]] */
-const struct type type_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType = {
-269,
-"HashMap[Variable, nullable Array[nullable MType]]", /* class_name_string */
+/* runtime type nullable TClassid */
+const struct type type_nullable_parser_nodes__TClassid = {
+101,
+"nullable TClassid", /* class_name_string */
 2,
-0,
-&resolution_table_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType,
+1,
+&resolution_table_nullable_parser_nodes__TClassid,
 3,
 {
 0, /* nullable Object */
-1, /* Object */
-269, /* HashMap[Variable, nullable Array[nullable MType]] */
+-1, /* empty */
+101, /* nullable TClassid */
 },
 };
-const struct types resolution_table_hash_collection__HashMapscope__Variablenullable_array__Arraynullable_model__MType = {
+const struct types resolution_table_nullable_parser_nodes__TClassid = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&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_array__NativeArraynullable_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[Variable, nullable Array[nullable MType]]] */
-&type_scope__Variable, /* MapRead#0: Variable */
-&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]] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[Variable, nullable Array[nullable MType]] not a live type) */
-&type_nullable_array__Arraynullable_model__MType, /* MapRead#1: nullable Array[nullable MType] */
-&type_scope__Variable, /* HashCollection#0: Variable */
-&type_hash_collection__HashMapNodescope__Variablenullable_array__Arraynullable_model__MType, /* HashCollection#1: HashMapNode[Variable, nullable Array[nullable MType]] */
 }
 };
-/* runtime type MAttributeDef */
-const struct type type_model__MAttributeDef = {
-2055,
-"MAttributeDef", /* class_name_string */
+/* runtime type TId */
+const struct type type_parser_nodes__TId = {
+2113,
+"TId", /* class_name_string */
 5,
 0,
-&resolution_table_model__MAttributeDef,
+&resolution_table_parser_nodes__TId,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-108, /* nullable MPropDef */
-262, /* PropertyLayoutElement */
-1779, /* MPropDef */
-2055, /* MAttributeDef */
+102, /* nullable TId */
+254, /* ANode */
+672, /* Token */
+2113, /* TId */
 },
 };
-const struct types resolution_table_model__MAttributeDef = {
+const struct types resolution_table_parser_nodes__TId = {
 0, /* dummy */
 {
-&type_model__MAttribute, /* MPROPERTY: MAttribute */
-NULL, /* empty */
-&type_model__MAttributeDef, /* MPROPDEF: MAttributeDef */
 }
 };
-/* runtime type MAttribute */
-const struct type type_model__MAttribute = {
-2056,
-"MAttribute", /* class_name_string */
-4,
-0,
-&resolution_table_model__MAttribute,
-6,
+/* runtime type nullable TId */
+const struct type type_nullable_parser_nodes__TId = {
+102,
+"nullable TId", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TId,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-107, /* nullable MProperty */
-262, /* PropertyLayoutElement */
-2056, /* MAttribute */
-1778, /* MProperty */
+-1, /* empty */
+102, /* nullable TId */
 },
 };
-const struct types resolution_table_model__MAttribute = {
+const struct types resolution_table_nullable_parser_nodes__TId = {
 0, /* dummy */
 {
-&type_array__Arraymodel__MAttributeDef, /* Array[MPROPDEF]: Array[MAttributeDef] */
-&type_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MAttributeDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MAttributeDef]] */
 }
 };
-/* runtime type List[Int] */
-const struct type type_list__Listkernel__Int = {
-2057,
-"List[Int]", /* class_name_string */
+/* runtime type TAttrid */
+const struct type type_parser_nodes__TAttrid = {
+2114,
+"TAttrid", /* class_name_string */
 5,
 0,
-&resolution_table_list__Listkernel__Int,
+&resolution_table_parser_nodes__TAttrid,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-612, /* Collection[Int] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-2057, /* List[Int] */
+103, /* nullable TAttrid */
+254, /* ANode */
+672, /* Token */
+2114, /* TAttrid */
 },
 };
-const struct types resolution_table_list__Listkernel__Int = {
+const struct types resolution_table_parser_nodes__TAttrid = {
 0, /* dummy */
 {
-&type_list__Listkernel__Int, /* List[List#0]: List[Int] */
-&type_list__ListNodekernel__Int, /* ListNode[List#0]: ListNode[Int] */
-&type_kernel__Int, /* Sequence#0: Int */
-&type_kernel__Int, /* SimpleCollection#0: Int */
-&type_list__ListIteratorkernel__Int, /* ListIterator[List#0]: ListIterator[Int] */
-&type_abstract_collection__Collectionkernel__Int, /* Collection[List#0]: Collection[Int] */
-&type_kernel__Int, /* List#0: Int */
-NULL, /* empty */
-&type_kernel__Int, /* RemovableCollection#0: Int */
-&type_abstract_collection__Collectionkernel__Int, /* Collection[Sequence#0]: Collection[Int] */
-&type_array__Arraykernel__Int, /* Array[Sequence#0]: Array[Int] */
-&type_abstract_collection__Collectionkernel__Int, /* Collection[SimpleCollection#0]: Collection[Int] */
-&type_kernel__Int, /* Collection#0: Int */
-&type_abstract_collection__Collectionkernel__Int, /* Collection[Collection#0]: Collection[Int] */
-&type_kernel__Int, /* SequenceRead#0: Int */
 }
 };
-/* runtime type TypeVisitor */
-const struct type type_typing__TypeVisitor = {
-270,
-"TypeVisitor", /* class_name_string */
+/* runtime type nullable TAttrid */
+const struct type type_nullable_parser_nodes__TAttrid = {
+103,
+"nullable TAttrid", /* class_name_string */
 2,
-0,
-&resolution_table_typing__TypeVisitor,
+1,
+&resolution_table_nullable_parser_nodes__TAttrid,
 3,
 {
 0, /* nullable Object */
-1, /* Object */
-270, /* TypeVisitor */
+-1, /* empty */
+103, /* nullable TAttrid */
 },
 };
-const struct types resolution_table_typing__TypeVisitor = {
+const struct types resolution_table_nullable_parser_nodes__TAttrid = {
 0, /* dummy */
 {
 }
 };
-/* runtime type MVirtualTypeProp */
-const struct type type_model__MVirtualTypeProp = {
-2338,
-"MVirtualTypeProp", /* class_name_string */
-6,
+/* runtime type TNumber */
+const struct type type_parser_nodes__TNumber = {
+2115,
+"TNumber", /* class_name_string */
+5,
 0,
-&resolution_table_model__MVirtualTypeProp,
-7,
+&resolution_table_parser_nodes__TNumber,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-107, /* nullable MProperty */
-262, /* PropertyLayoutElement */
-271, /* nullable MVirtualTypeProp */
-1778, /* MProperty */
-2338, /* MVirtualTypeProp */
+104, /* nullable TNumber */
+254, /* ANode */
+672, /* Token */
+2115, /* TNumber */
 },
 };
-const struct types resolution_table_model__MVirtualTypeProp = {
+const struct types resolution_table_parser_nodes__TNumber = {
 0, /* dummy */
 {
-&type_array__Arraymodel__MVirtualTypeDef, /* Array[MPROPDEF]: Array[MVirtualTypeDef] */
-&type_more_collections__HashMap2model_base__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 = {
-271,
-"nullable MVirtualTypeProp", /* class_name_string */
-4,
+/* runtime type nullable TNumber */
+const struct type type_nullable_parser_nodes__TNumber = {
+104,
+"nullable TNumber", /* class_name_string */
+2,
 1,
-&resolution_table_nullable_model__MVirtualTypeProp,
-5,
+&resolution_table_nullable_parser_nodes__TNumber,
+3,
 {
 0, /* nullable Object */
 -1, /* empty */
-107, /* nullable MProperty */
--1, /* empty */
-271, /* nullable MVirtualTypeProp */
+104, /* nullable TNumber */
 },
 };
-const struct types resolution_table_nullable_model__MVirtualTypeProp = {
+const struct types resolution_table_nullable_parser_nodes__TNumber = {
 0, /* dummy */
 {
-&type_array__Arraymodel__MVirtualTypeDef, /* Array[MPROPDEF]: Array[MVirtualTypeDef] */
-&type_more_collections__HashMap2model_base__MModulemodel__MTypearray__Arraymodel__MVirtualTypeDef, /* HashMap2[MModule, MType, Array[MPROPDEF]]: HashMap2[MModule, MType, Array[MVirtualTypeDef]] */
 }
 };
-/* runtime type MVirtualTypeDef */
-const struct type type_model__MVirtualTypeDef = {
-2058,
-"MVirtualTypeDef", /* class_name_string */
+/* runtime type TFloat */
+const struct type type_parser_nodes__TFloat = {
+2116,
+"TFloat", /* class_name_string */
 5,
 0,
-&resolution_table_model__MVirtualTypeDef,
+&resolution_table_parser_nodes__TFloat,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-108, /* nullable MPropDef */
-262, /* PropertyLayoutElement */
-1779, /* MPropDef */
-2058, /* MVirtualTypeDef */
+105, /* nullable TFloat */
+254, /* ANode */
+672, /* Token */
+2116, /* TFloat */
 },
 };
-const struct types resolution_table_model__MVirtualTypeDef = {
+const struct types resolution_table_parser_nodes__TFloat = {
 0, /* dummy */
 {
-&type_model__MVirtualTypeProp, /* MPROPERTY: MVirtualTypeProp */
-NULL, /* empty */
-&type_model__MVirtualTypeDef, /* MPROPDEF: MVirtualTypeDef */
 }
 };
-/* runtime type Array[MVirtualType] */
-const struct type type_array__Arraymodel__MVirtualType = {
-2631,
-"Array[MVirtualType]", /* class_name_string */
-14,
-0,
-&resolution_table_array__Arraymodel__MVirtualType,
-16,
+/* runtime type nullable TFloat */
+const struct type type_nullable_parser_nodes__TFloat = {
+105,
+"nullable TFloat", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TFloat,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-4, /* nullable Array[nullable MType] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
-1728, /* AbstractArrayRead[Object] */
-1737, /* Collection[MType] */
-1744, /* AbstractArrayRead[nullable MType] */
-1911, /* Array[Object] */
-2059, /* Collection[MVirtualType] */
-2207, /* Array[nullable MType] */
-2560, /* AbstractArrayRead[MVirtualType] */
-2495, /* AbstractArrayRead[MType] */
-2631, /* Array[MVirtualType] */
-2594, /* Array[MType] */
+-1, /* empty */
+105, /* nullable TFloat */
 },
 };
-const struct types resolution_table_array__Arraymodel__MVirtualType = {
+const struct types resolution_table_nullable_parser_nodes__TFloat = {
 0, /* dummy */
 {
-&type_array__Arraymodel__MVirtualType, /* Array[Array#0]: Array[MVirtualType] */
-&type_array__NativeArraymodel__MVirtualType, /* NativeArray[Array#0]: NativeArray[MVirtualType] */
-&type_model__MVirtualType, /* Sequence#0: MVirtualType */
-&type_model__MVirtualType, /* SimpleCollection#0: MVirtualType */
-&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[Array#0]: Collection[MVirtualType] */
-&type_model__MVirtualType, /* Array#0: MVirtualType */
-&type_array__NativeArraymodel__MVirtualType, /* NativeArray[ArrayCapable#0]: NativeArray[MVirtualType] */
-&type_model__MVirtualType, /* AbstractArray#0: MVirtualType */
-&type_model__MVirtualType, /* RemovableCollection#0: MVirtualType */
-&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[Sequence#0]: Collection[MVirtualType] */
-&type_array__Arraymodel__MVirtualType, /* Array[Sequence#0]: Array[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] */
-NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[MVirtualType] not a live type) */
-&type_array__ArrayIteratormodel__MVirtualType, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MVirtualType] */
 }
 };
-/* runtime type Collection[MVirtualType] */
-const struct type type_abstract_collection__Collectionmodel__MVirtualType = {
-2059,
-"Collection[MVirtualType]", /* class_name_string */
-10,
+/* runtime type TString */
+const struct type type_parser_nodes__TString = {
+2117,
+"TString", /* class_name_string */
+5,
 0,
-NULL,
-11,
+&resolution_table_parser_nodes__TString,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
--1, /* empty */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
--1, /* empty */
-1737, /* Collection[MType] */
--1, /* empty */
--1, /* empty */
-2059, /* Collection[MVirtualType] */
+106, /* nullable TString */
+254, /* ANode */
+672, /* Token */
+2117, /* TString */
 },
 };
-/* runtime type AbstractArrayRead[MVirtualType] */
-const struct type type_array__AbstractArrayReadmodel__MVirtualType = {
-2560,
-"AbstractArrayRead[MVirtualType]", /* class_name_string */
-12,
+const struct types resolution_table_parser_nodes__TString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TString */
+const struct type type_nullable_parser_nodes__TString = {
+106,
+"nullable TString", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TString,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+106, /* nullable TString */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TStartString */
+const struct type type_parser_nodes__TStartString = {
+2118,
+"TStartString", /* class_name_string */
+5,
+0,
+&resolution_table_parser_nodes__TStartString,
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+107, /* nullable TStartString */
+254, /* ANode */
+672, /* Token */
+2118, /* TStartString */
+},
+};
+const struct types resolution_table_parser_nodes__TStartString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TStartString */
+const struct type type_nullable_parser_nodes__TStartString = {
+107,
+"nullable TStartString", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TStartString,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+107, /* nullable TStartString */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TStartString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TMidString */
+const struct type type_parser_nodes__TMidString = {
+2119,
+"TMidString", /* class_name_string */
+5,
+0,
+&resolution_table_parser_nodes__TMidString,
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+108, /* nullable TMidString */
+254, /* ANode */
+672, /* Token */
+2119, /* TMidString */
+},
+};
+const struct types resolution_table_parser_nodes__TMidString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TMidString */
+const struct type type_nullable_parser_nodes__TMidString = {
+108,
+"nullable TMidString", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TMidString,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+108, /* nullable TMidString */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TMidString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TEndString */
+const struct type type_parser_nodes__TEndString = {
+2120,
+"TEndString", /* class_name_string */
+5,
+0,
+&resolution_table_parser_nodes__TEndString,
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+109, /* nullable TEndString */
+254, /* ANode */
+672, /* Token */
+2120, /* TEndString */
+},
+};
+const struct types resolution_table_parser_nodes__TEndString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TEndString */
+const struct type type_nullable_parser_nodes__TEndString = {
+109,
+"nullable TEndString", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TEndString,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+109, /* nullable TEndString */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TEndString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TChar */
+const struct type type_parser_nodes__TChar = {
+2121,
+"TChar", /* class_name_string */
+5,
+0,
+&resolution_table_parser_nodes__TChar,
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+110, /* nullable TChar */
+254, /* ANode */
+672, /* Token */
+2121, /* TChar */
+},
+};
+const struct types resolution_table_parser_nodes__TChar = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TChar */
+const struct type type_nullable_parser_nodes__TChar = {
+110,
+"nullable TChar", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TChar,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+110, /* nullable TChar */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TChar = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TBadString */
+const struct type type_parser_nodes__TBadString = {
+1833,
+"TBadString", /* class_name_string */
+2,
+0,
+&resolution_table_parser_nodes__TBadString,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+1833, /* TBadString */
+254, /* ANode */
+672, /* Token */
+},
+};
+const struct types resolution_table_parser_nodes__TBadString = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TBadChar */
+const struct type type_parser_nodes__TBadChar = {
+1834,
+"TBadChar", /* class_name_string */
+2,
+0,
+&resolution_table_parser_nodes__TBadChar,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+1834, /* TBadChar */
+254, /* ANode */
+672, /* Token */
+},
+};
+const struct types resolution_table_parser_nodes__TBadChar = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TExternCodeSegment */
+const struct type type_parser_nodes__TExternCodeSegment = {
+2122,
+"TExternCodeSegment", /* class_name_string */
+5,
+0,
+&resolution_table_parser_nodes__TExternCodeSegment,
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+111, /* nullable TExternCodeSegment */
+254, /* ANode */
+672, /* Token */
+2122, /* TExternCodeSegment */
+},
+};
+const struct types resolution_table_parser_nodes__TExternCodeSegment = {
+0, /* dummy */
+{
+}
+};
+/* runtime type nullable TExternCodeSegment */
+const struct type type_nullable_parser_nodes__TExternCodeSegment = {
+111,
+"nullable TExternCodeSegment", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_parser_nodes__TExternCodeSegment,
+3,
+{
+0, /* nullable Object */
+-1, /* empty */
+111, /* nullable TExternCodeSegment */
+},
+};
+const struct types resolution_table_nullable_parser_nodes__TExternCodeSegment = {
+0, /* dummy */
+{
+}
+};
+/* runtime type ALexerError */
+const struct type type_parser_nodes__ALexerError = {
+2403,
+"ALexerError", /* class_name_string */
+6,
+0,
+&resolution_table_parser_nodes__ALexerError,
+7,
+{
+0, /* nullable Object */
+1, /* Object */
+1805, /* EOF */
+254, /* ANode */
+672, /* Token */
+1996, /* AError */
+2403, /* ALexerError */
+},
+};
+const struct types resolution_table_parser_nodes__ALexerError = {
+0, /* dummy */
+{
+}
+};
+/* runtime type MNullableType */
+const struct type type_model__MNullableType = {
+1835,
+"MNullableType", /* class_name_string */
+4,
+0,
+&resolution_table_model__MNullableType,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+2, /* nullable MType */
+630, /* MType */
+1835, /* MNullableType */
+},
+};
+const struct types resolution_table_model__MNullableType = {
+0, /* dummy */
+{
+}
+};
+/* runtime type CollectTokensByTextVisitor */
+const struct type type_parser_util__CollectTokensByTextVisitor = {
+282,
+"CollectTokensByTextVisitor", /* class_name_string */
+2,
 0,
-NULL,
+&resolution_table_parser_util__CollectTokensByTextVisitor,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+282, /* CollectTokensByTextVisitor */
+},
+};
+const struct types resolution_table_parser_util__CollectTokensByTextVisitor = {
+0, /* dummy */
+{
+}
+};
+/* runtime type Array[Token] */
+const struct type type_array__Arrayparser_nodes__Token = {
+2661,
+"Array[Token]", /* class_name_string */
+13,
+0,
+&resolution_table_array__Arrayparser_nodes__Token,
 14,
 {
 0, /* nullable Object */
 1, /* Object */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1818, /* Collection[Token] */
+1782, /* AbstractArrayRead[Object] */
 -1, /* empty */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
-1728, /* AbstractArrayRead[Object] */
-1737, /* Collection[MType] */
-1744, /* AbstractArrayRead[nullable MType] */
--1, /* empty */
-2059, /* Collection[MVirtualType] */
+2266, /* AbstractArrayRead[ANode] */
+1973, /* Array[Object] */
+2577, /* AbstractArrayRead[Token] */
+2555, /* Array[ANode] */
 -1, /* empty */
-2560, /* AbstractArrayRead[MVirtualType] */
-2495, /* AbstractArrayRead[MType] */
+2661, /* Array[Token] */
 },
 };
-/* runtime type Array[AExpr] */
-const struct type type_array__Arrayparser_nodes__AExpr = {
-2612,
-"Array[AExpr]", /* class_name_string */
-16,
+const struct types resolution_table_array__Arrayparser_nodes__Token = {
+0, /* dummy */
+{
+&type_array__Arrayparser_nodes__Token, /* Array[Array#0]: Array[Token] */
+&type_array__NativeArrayparser_nodes__Token, /* NativeArray[Array#0]: NativeArray[Token] */
+&type_parser_nodes__Token, /* Sequence#0: Token */
+&type_parser_nodes__Token, /* SimpleCollection#0: Token */
+&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[Array#0]: Collection[Token] */
+&type_parser_nodes__Token, /* Array#0: Token */
+&type_array__NativeArrayparser_nodes__Token, /* NativeArray[ArrayCapable#0]: NativeArray[Token] */
+&type_parser_nodes__Token, /* AbstractArray#0: Token */
+&type_parser_nodes__Token, /* RemovableCollection#0: Token */
+&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[Sequence#0]: Collection[Token] */
+&type_array__Arrayparser_nodes__Token, /* Array[Sequence#0]: Array[Token] */
+&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[SimpleCollection#0]: Collection[Token] */
+&type_parser_nodes__Token, /* Collection#0: Token */
+&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[Collection#0]: Collection[Token] */
+&type_parser_nodes__Token, /* SequenceRead#0: Token */
+&type_parser_nodes__Token, /* AbstractArrayRead#0: Token */
+&type_array__Arrayparser_nodes__Token, /* Array[AbstractArrayRead#0]: Array[Token] */
+NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[Token] not a live type) */
+&type_array__ArrayIteratorparser_nodes__Token, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[Token] */
+}
+};
+/* runtime type AbstractArrayRead[Token] */
+const struct type type_array__AbstractArrayReadparser_nodes__Token = {
+2577,
+"AbstractArrayRead[Token]", /* class_name_string */
+10,
 0,
-&resolution_table_array__Arrayparser_nodes__AExpr,
-17,
+NULL,
+11,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
-1911, /* Array[Object] */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1818, /* Collection[Token] */
+1782, /* AbstractArrayRead[Object] */
 -1, /* empty */
-2483, /* Array[ANode] */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
-2579, /* Array[Prod] */
+2266, /* AbstractArrayRead[ANode] */
 -1, /* empty */
-2612, /* Array[AExpr] */
+2577, /* AbstractArrayRead[Token] */
 },
 };
-const struct types resolution_table_array__Arrayparser_nodes__AExpr = {
+/* runtime type MPropDefSorter */
+const struct type type_model__MPropDefSorter = {
+283,
+"MPropDefSorter", /* class_name_string */
+2,
+0,
+&resolution_table_model__MPropDefSorter,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+283, /* MPropDefSorter */
+},
+};
+const struct types resolution_table_model__MPropDefSorter = {
 0, /* dummy */
 {
-&type_array__Arrayparser_nodes__AExpr, /* Array[Array#0]: Array[AExpr] */
-&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[Array#0]: NativeArray[AExpr] */
-&type_parser_nodes__AExpr, /* Sequence#0: AExpr */
-&type_parser_nodes__AExpr, /* SimpleCollection#0: AExpr */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Array#0]: Collection[AExpr] */
-&type_parser_nodes__AExpr, /* Array#0: AExpr */
-&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[ArrayCapable#0]: NativeArray[AExpr] */
-&type_parser_nodes__AExpr, /* AbstractArray#0: AExpr */
-&type_parser_nodes__AExpr, /* RemovableCollection#0: AExpr */
-&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Sequence#0]: Collection[AExpr] */
-&type_array__Arrayparser_nodes__AExpr, /* Array[Sequence#0]: Array[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] */
-NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[AExpr] not a live type) */
-&type_array__ArrayIteratorparser_nodes__AExpr, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AExpr] */
+&type_model__MPropDef, /* AbstractSorter#0: MPropDef */
+&type_array__Arraymodel__MPropDef, /* Array[AbstractSorter#0]: Array[MPropDef] */
 }
 };
-/* runtime type AbstractArrayRead[AExpr] */
-const struct type type_array__AbstractArrayReadparser_nodes__AExpr = {
-2561,
-"AbstractArrayRead[AExpr]", /* class_name_string */
-13,
+/* runtime type CustomizedRuntimeFunction */
+const struct type type_global_compiler__CustomizedRuntimeFunction = {
+1459,
+"CustomizedRuntimeFunction", /* class_name_string */
+3,
 0,
-NULL,
-14,
+&resolution_table_global_compiler__CustomizedRuntimeFunction,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
--1, /* empty */
+239, /* AbstractRuntimeFunction */
+1459, /* CustomizedRuntimeFunction */
+},
+};
+const struct types resolution_table_global_compiler__CustomizedRuntimeFunction = {
+0, /* dummy */
+{
+&type_global_compiler__GlobalCompiler, /* COMPILER: GlobalCompiler */
+&type_global_compiler__GlobalCompilerVisitor, /* VISITOR: GlobalCompilerVisitor */
+}
+};
+/* runtime type NativeProcess */
+const struct type type_exec__NativeProcess = {
+1460,
+"NativeProcess", /* class_name_string */
+3,
+0,
+&resolution_table_exec__NativeProcess,
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+225, /* Pointer */
+1460, /* NativeProcess */
+},
+};
+const struct types resolution_table_exec__NativeProcess = {
+0, /* dummy */
+{
+}
+};
+/* runtime type TypeVisitor */
+const struct type type_typing__TypeVisitor = {
+284,
+"TypeVisitor", /* class_name_string */
+2,
+0,
+&resolution_table_typing__TypeVisitor,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+284, /* TypeVisitor */
+},
+};
+const struct types resolution_table_typing__TypeVisitor = {
+0, /* dummy */
+{
+}
+};
+/* runtime type MVirtualTypeProp */
+const struct type type_model__MVirtualTypeProp = {
+2404,
+"MVirtualTypeProp", /* class_name_string */
+6,
+0,
+&resolution_table_model__MVirtualTypeProp,
+7,
+{
+0, /* nullable Object */
+1, /* Object */
+8, /* nullable MProperty */
+272, /* PropertyLayoutElement */
+285, /* nullable MVirtualTypeProp */
+1809, /* MProperty */
+2404, /* MVirtualTypeProp */
+},
+};
+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 = {
+285,
+"nullable MVirtualTypeProp", /* class_name_string */
+4,
+1,
+&resolution_table_nullable_model__MVirtualTypeProp,
+5,
+{
+0, /* nullable Object */
 -1, /* empty */
+8, /* nullable MProperty */
 -1, /* empty */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
+285, /* nullable MVirtualTypeProp */
 },
 };
-/* runtime type Array[AIntExpr] */
-const struct type type_array__Arrayparser_nodes__AIntExpr = {
-2633,
-"Array[AIntExpr]", /* class_name_string */
-17,
+const struct types resolution_table_nullable_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 MVirtualTypeDef */
+const struct type type_model__MVirtualTypeDef = {
+2123,
+"MVirtualTypeDef", /* class_name_string */
+5,
 0,
-&resolution_table_array__Arrayparser_nodes__AIntExpr,
-18,
+&resolution_table_model__MVirtualTypeDef,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
-1911, /* Array[Object] */
-2339, /* Collection[AIntExpr] */
-2483, /* Array[ANode] */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
-2579, /* Array[Prod] */
-2597, /* AbstractArrayRead[AIntExpr] */
-2612, /* Array[AExpr] */
-2633, /* Array[AIntExpr] */
+9, /* nullable MPropDef */
+272, /* PropertyLayoutElement */
+1810, /* MPropDef */
+2123, /* MVirtualTypeDef */
 },
 };
-const struct types resolution_table_array__Arrayparser_nodes__AIntExpr = {
+const struct types resolution_table_model__MVirtualTypeDef = {
 0, /* dummy */
 {
-&type_array__Arrayparser_nodes__AIntExpr, /* Array[Array#0]: Array[AIntExpr] */
-&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[Array#0]: NativeArray[AIntExpr] */
-&type_parser_nodes__AIntExpr, /* Sequence#0: AIntExpr */
-&type_parser_nodes__AIntExpr, /* SimpleCollection#0: AIntExpr */
-&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[Array#0]: Collection[AIntExpr] */
-&type_parser_nodes__AIntExpr, /* Array#0: AIntExpr */
-&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[ArrayCapable#0]: NativeArray[AIntExpr] */
-&type_parser_nodes__AIntExpr, /* AbstractArray#0: AIntExpr */
-&type_parser_nodes__AIntExpr, /* RemovableCollection#0: AIntExpr */
-&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[Sequence#0]: Collection[AIntExpr] */
-&type_array__Arrayparser_nodes__AIntExpr, /* Array[Sequence#0]: Array[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] */
-NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[AIntExpr] not a live type) */
-&type_array__ArrayIteratorparser_nodes__AIntExpr, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AIntExpr] */
+&type_model__MVirtualTypeProp, /* MPROPERTY: MVirtualTypeProp */
+NULL, /* empty */
+&type_model__MVirtualTypeDef, /* MPROPDEF: MVirtualTypeDef */
+}
+};
+/* runtime type Array[MVirtualType] */
+const struct type type_array__Arraymodel__MVirtualType = {
+2710,
+"Array[MVirtualType]", /* class_name_string */
+14,
+0,
+&resolution_table_array__Arraymodel__MVirtualType,
+16,
+{
+0, /* nullable Object */
+1, /* Object */
+4, /* nullable Array[nullable MType] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+180, /* Collection[nullable MType] */
+1782, /* AbstractArrayRead[Object] */
+1791, /* Collection[MType] */
+1799, /* AbstractArrayRead[nullable MType] */
+1973, /* Array[Object] */
+2124, /* Collection[MVirtualType] */
+2283, /* Array[nullable MType] */
+2638, /* AbstractArrayRead[MVirtualType] */
+2568, /* AbstractArrayRead[MType] */
+2710, /* Array[MVirtualType] */
+2673, /* Array[MType] */
+},
+};
+const struct types resolution_table_array__Arraymodel__MVirtualType = {
+0, /* dummy */
+{
+&type_array__Arraymodel__MVirtualType, /* Array[Array#0]: Array[MVirtualType] */
+&type_array__NativeArraymodel__MVirtualType, /* NativeArray[Array#0]: NativeArray[MVirtualType] */
+&type_model__MVirtualType, /* Sequence#0: MVirtualType */
+&type_model__MVirtualType, /* SimpleCollection#0: MVirtualType */
+&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[Array#0]: Collection[MVirtualType] */
+&type_model__MVirtualType, /* Array#0: MVirtualType */
+&type_array__NativeArraymodel__MVirtualType, /* NativeArray[ArrayCapable#0]: NativeArray[MVirtualType] */
+&type_model__MVirtualType, /* AbstractArray#0: MVirtualType */
+&type_model__MVirtualType, /* RemovableCollection#0: MVirtualType */
+&type_abstract_collection__Collectionmodel__MVirtualType, /* Collection[Sequence#0]: Collection[MVirtualType] */
+&type_array__Arraymodel__MVirtualType, /* Array[Sequence#0]: Array[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] */
+NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[MVirtualType] not a live type) */
+&type_array__ArrayIteratormodel__MVirtualType, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[MVirtualType] */
 }
 };
-/* runtime type Collection[AIntExpr] */
-const struct type type_abstract_collection__Collectionparser_nodes__AIntExpr = {
-2339,
-"Collection[AIntExpr]", /* class_name_string */
+/* runtime type Collection[MVirtualType] */
+const struct type type_abstract_collection__Collectionmodel__MVirtualType = {
+2124,
+"Collection[MVirtualType]", /* class_name_string */
 10,
 0,
 NULL,
@@ -3483,68 +3908,122 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
 -1, /* empty */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
 -1, /* empty */
-1961, /* Collection[AExpr] */
+170, /* Collection[Object] */
+180, /* Collection[nullable MType] */
+-1, /* empty */
+1791, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
-2339, /* Collection[AIntExpr] */
+2124, /* Collection[MVirtualType] */
 },
 };
-/* runtime type AbstractArrayRead[AIntExpr] */
-const struct type type_array__AbstractArrayReadparser_nodes__AIntExpr = {
-2597,
-"AbstractArrayRead[AIntExpr]", /* class_name_string */
-15,
+/* runtime type AbstractArrayRead[MVirtualType] */
+const struct type type_array__AbstractArrayReadmodel__MVirtualType = {
+2638,
+"AbstractArrayRead[MVirtualType]", /* class_name_string */
+12,
 0,
 NULL,
-16,
+14,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
 -1, /* empty */
-2339, /* Collection[AIntExpr] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+180, /* Collection[nullable MType] */
+1782, /* AbstractArrayRead[Object] */
+1791, /* Collection[MType] */
+1799, /* AbstractArrayRead[nullable MType] */
 -1, /* empty */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
+2124, /* Collection[MVirtualType] */
 -1, /* empty */
-2597, /* AbstractArrayRead[AIntExpr] */
+2638, /* AbstractArrayRead[MVirtualType] */
+2568, /* AbstractArrayRead[MType] */
 },
 };
-/* runtime type MNullableType */
-const struct type type_model__MNullableType = {
-1781,
-"MNullableType", /* class_name_string */
-4,
+/* runtime type Array[AExpr] */
+const struct type type_array__Arrayparser_nodes__AExpr = {
+2691,
+"Array[AExpr]", /* class_name_string */
+16,
 0,
-&resolution_table_model__MNullableType,
-5,
+&resolution_table_array__Arrayparser_nodes__AExpr,
+17,
 {
 0, /* nullable Object */
 1, /* Object */
-2, /* nullable MType */
-594, /* MType */
-1781, /* MNullableType */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
+1973, /* Array[Object] */
+-1, /* empty */
+2555, /* Array[ANode] */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
+2657, /* Array[Prod] */
+-1, /* empty */
+2691, /* Array[AExpr] */
 },
 };
-const struct types resolution_table_model__MNullableType = {
+const struct types resolution_table_array__Arrayparser_nodes__AExpr = {
 0, /* dummy */
 {
+&type_array__Arrayparser_nodes__AExpr, /* Array[Array#0]: Array[AExpr] */
+&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[Array#0]: NativeArray[AExpr] */
+&type_parser_nodes__AExpr, /* Sequence#0: AExpr */
+&type_parser_nodes__AExpr, /* SimpleCollection#0: AExpr */
+&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Array#0]: Collection[AExpr] */
+&type_parser_nodes__AExpr, /* Array#0: AExpr */
+&type_array__NativeArrayparser_nodes__AExpr, /* NativeArray[ArrayCapable#0]: NativeArray[AExpr] */
+&type_parser_nodes__AExpr, /* AbstractArray#0: AExpr */
+&type_parser_nodes__AExpr, /* RemovableCollection#0: AExpr */
+&type_abstract_collection__Collectionparser_nodes__AExpr, /* Collection[Sequence#0]: Collection[AExpr] */
+&type_array__Arrayparser_nodes__AExpr, /* Array[Sequence#0]: Array[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] */
+NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[AExpr] not a live type) */
+&type_array__ArrayIteratorparser_nodes__AExpr, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AExpr] */
 }
 };
+/* runtime type AbstractArrayRead[AExpr] */
+const struct type type_array__AbstractArrayReadparser_nodes__AExpr = {
+2639,
+"AbstractArrayRead[AExpr]", /* class_name_string */
+13,
+0,
+NULL,
+14,
+{
+0, /* nullable Object */
+1, /* Object */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
+},
+};
 /* runtime type Array[Variable] */
 const struct type type_array__Arrayscope__Variable = {
-2504,
+2578,
 "Array[Variable]", /* class_name_string */
 7,
 0,
@@ -3553,14 +4032,14 @@ const struct type type_array__Arrayscope__Variable = {
 {
 0, /* nullable Object */
 1, /* Object */
-1422, /* Collection[Variable] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-2340, /* AbstractArrayRead[Variable] */
-1728, /* AbstractArrayRead[Object] */
-2504, /* Array[Variable] */
+675, /* Collection[Variable] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+2405, /* AbstractArrayRead[Variable] */
+1782, /* AbstractArrayRead[Object] */
+2578, /* Array[Variable] */
 -1, /* empty */
-1911, /* Array[Object] */
+1973, /* Array[Object] */
 },
 };
 const struct types resolution_table_array__Arrayscope__Variable = {
@@ -3589,7 +4068,7 @@ NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[Variable] not
 };
 /* runtime type AbstractArrayRead[Variable] */
 const struct type type_array__AbstractArrayReadscope__Variable = {
-2340,
+2405,
 "AbstractArrayRead[Variable]", /* class_name_string */
 5,
 0,
@@ -3598,85 +4077,70 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-1422, /* Collection[Variable] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-2340, /* AbstractArrayRead[Variable] */
-1728, /* AbstractArrayRead[Object] */
-},
-};
-/* runtime type CollectTokensByTextVisitor */
-const struct type type_parser_util__CollectTokensByTextVisitor = {
-272,
-"CollectTokensByTextVisitor", /* class_name_string */
-2,
-0,
-&resolution_table_parser_util__CollectTokensByTextVisitor,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-272, /* CollectTokensByTextVisitor */
+675, /* Collection[Variable] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+2405, /* AbstractArrayRead[Variable] */
+1782, /* AbstractArrayRead[Object] */
 },
 };
-const struct types resolution_table_parser_util__CollectTokensByTextVisitor = {
-0, /* dummy */
-{
-}
-};
-/* runtime type Array[Token] */
-const struct type type_array__Arrayparser_nodes__Token = {
-2583,
-"Array[Token]", /* class_name_string */
-13,
+/* runtime type Array[AIntExpr] */
+const struct type type_array__Arrayparser_nodes__AIntExpr = {
+2712,
+"Array[AIntExpr]", /* class_name_string */
+17,
 0,
-&resolution_table_array__Arrayparser_nodes__Token,
-14,
+&resolution_table_array__Arrayparser_nodes__AIntExpr,
+18,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1760, /* Collection[Token] */
-1728, /* AbstractArrayRead[Object] */
--1, /* empty */
-2196, /* AbstractArrayRead[ANode] */
-1911, /* Array[Object] */
-2505, /* AbstractArrayRead[Token] */
-2483, /* Array[ANode] */
--1, /* empty */
-2583, /* Array[Token] */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
+1973, /* Array[Object] */
+2406, /* Collection[AIntExpr] */
+2555, /* Array[ANode] */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
+2657, /* Array[Prod] */
+2676, /* AbstractArrayRead[AIntExpr] */
+2691, /* Array[AExpr] */
+2712, /* Array[AIntExpr] */
 },
 };
-const struct types resolution_table_array__Arrayparser_nodes__Token = {
+const struct types resolution_table_array__Arrayparser_nodes__AIntExpr = {
 0, /* dummy */
 {
-&type_array__Arrayparser_nodes__Token, /* Array[Array#0]: Array[Token] */
-&type_array__NativeArrayparser_nodes__Token, /* NativeArray[Array#0]: NativeArray[Token] */
-&type_parser_nodes__Token, /* Sequence#0: Token */
-&type_parser_nodes__Token, /* SimpleCollection#0: Token */
-&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[Array#0]: Collection[Token] */
-&type_parser_nodes__Token, /* Array#0: Token */
-&type_array__NativeArrayparser_nodes__Token, /* NativeArray[ArrayCapable#0]: NativeArray[Token] */
-&type_parser_nodes__Token, /* AbstractArray#0: Token */
-&type_parser_nodes__Token, /* RemovableCollection#0: Token */
-&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[Sequence#0]: Collection[Token] */
-&type_array__Arrayparser_nodes__Token, /* Array[Sequence#0]: Array[Token] */
-&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[SimpleCollection#0]: Collection[Token] */
-&type_parser_nodes__Token, /* Collection#0: Token */
-&type_abstract_collection__Collectionparser_nodes__Token, /* Collection[Collection#0]: Collection[Token] */
-&type_parser_nodes__Token, /* SequenceRead#0: Token */
-&type_parser_nodes__Token, /* AbstractArrayRead#0: Token */
-&type_array__Arrayparser_nodes__Token, /* Array[AbstractArrayRead#0]: Array[Token] */
-NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[Token] not a live type) */
-&type_array__ArrayIteratorparser_nodes__Token, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[Token] */
+&type_array__Arrayparser_nodes__AIntExpr, /* Array[Array#0]: Array[AIntExpr] */
+&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[Array#0]: NativeArray[AIntExpr] */
+&type_parser_nodes__AIntExpr, /* Sequence#0: AIntExpr */
+&type_parser_nodes__AIntExpr, /* SimpleCollection#0: AIntExpr */
+&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[Array#0]: Collection[AIntExpr] */
+&type_parser_nodes__AIntExpr, /* Array#0: AIntExpr */
+&type_array__NativeArrayparser_nodes__AIntExpr, /* NativeArray[ArrayCapable#0]: NativeArray[AIntExpr] */
+&type_parser_nodes__AIntExpr, /* AbstractArray#0: AIntExpr */
+&type_parser_nodes__AIntExpr, /* RemovableCollection#0: AIntExpr */
+&type_abstract_collection__Collectionparser_nodes__AIntExpr, /* Collection[Sequence#0]: Collection[AIntExpr] */
+&type_array__Arrayparser_nodes__AIntExpr, /* Array[Sequence#0]: Array[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] */
+NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[AIntExpr] not a live type) */
+&type_array__ArrayIteratorparser_nodes__AIntExpr, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[AIntExpr] */
 }
 };
-/* runtime type AbstractArrayRead[Token] */
-const struct type type_array__AbstractArrayReadparser_nodes__Token = {
-2505,
-"AbstractArrayRead[Token]", /* class_name_string */
+/* runtime type Collection[AIntExpr] */
+const struct type type_abstract_collection__Collectionparser_nodes__AIntExpr = {
+2406,
+"Collection[AIntExpr]", /* class_name_string */
 10,
 0,
 NULL,
@@ -3684,63 +4148,47 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1760, /* Collection[Token] */
-1728, /* AbstractArrayRead[Object] */
+632, /* Collection[ANode] */
 -1, /* empty */
-2196, /* AbstractArrayRead[ANode] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
 -1, /* empty */
-2505, /* AbstractArrayRead[Token] */
-},
-};
-/* runtime type MPropDefSorter */
-const struct type type_model__MPropDefSorter = {
-273,
-"MPropDefSorter", /* class_name_string */
-2,
-0,
-&resolution_table_model__MPropDefSorter,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-273, /* MPropDefSorter */
+2029, /* Collection[AExpr] */
+-1, /* empty */
+-1, /* empty */
+2406, /* Collection[AIntExpr] */
 },
 };
-const struct types resolution_table_model__MPropDefSorter = {
-0, /* dummy */
-{
-&type_model__MPropDef, /* AbstractSorter#0: MPropDef */
-&type_array__Arraymodel__MPropDef, /* Array[AbstractSorter#0]: Array[MPropDef] */
-}
-};
-/* runtime type CustomizedRuntimeFunction */
-const struct type type_global_compiler__CustomizedRuntimeFunction = {
-1425,
-"CustomizedRuntimeFunction", /* class_name_string */
-3,
+/* runtime type AbstractArrayRead[AIntExpr] */
+const struct type type_array__AbstractArrayReadparser_nodes__AIntExpr = {
+2676,
+"AbstractArrayRead[AIntExpr]", /* class_name_string */
+15,
 0,
-&resolution_table_global_compiler__CustomizedRuntimeFunction,
-4,
+NULL,
+16,
 {
 0, /* nullable Object */
 1, /* Object */
-235, /* AbstractRuntimeFunction */
-1425, /* CustomizedRuntimeFunction */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
+-1, /* empty */
+2406, /* Collection[AIntExpr] */
+-1, /* empty */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
+-1, /* empty */
+2676, /* AbstractArrayRead[AIntExpr] */
 },
 };
-const struct types resolution_table_global_compiler__CustomizedRuntimeFunction = {
-0, /* dummy */
-{
-&type_global_compiler__GlobalCompiler, /* COMPILER: GlobalCompiler */
-&type_global_compiler__GlobalCompilerVisitor, /* VISITOR: GlobalCompilerVisitor */
-}
-};
 /* runtime type TextCollectorVisitor */
 const struct type type_modelize_property__TextCollectorVisitor = {
-274,
+286,
 "TextCollectorVisitor", /* class_name_string */
 2,
 0,
@@ -3749,7 +4197,7 @@ const struct type type_modelize_property__TextCollectorVisitor = {
 {
 0, /* nullable Object */
 1, /* Object */
-274, /* TextCollectorVisitor */
+286, /* TextCollectorVisitor */
 },
 };
 const struct types resolution_table_modelize_property__TextCollectorVisitor = {
@@ -3757,55 +4205,9 @@ const struct types resolution_table_modelize_property__TextCollectorVisitor = {
 {
 }
 };
-/* runtime type AVarAssignExpr */
-const struct type type_parser_nodes__AVarAssignExpr = {
-2341,
-"AVarAssignExpr", /* class_name_string */
-6,
-0,
-&resolution_table_parser_nodes__AVarAssignExpr,
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-15, /* nullable AExpr */
-223, /* ANode */
-622, /* Prod */
-1953, /* AExpr */
-2341, /* AVarAssignExpr */
-},
-};
-const struct types resolution_table_parser_nodes__AVarAssignExpr = {
-0, /* dummy */
-{
-}
-};
-/* runtime type AVarExpr */
-const struct type type_parser_nodes__AVarExpr = {
-2342,
-"AVarExpr", /* class_name_string */
-6,
-0,
-&resolution_table_parser_nodes__AVarExpr,
-7,
-{
-0, /* nullable Object */
-1, /* Object */
-15, /* nullable AExpr */
-223, /* ANode */
-622, /* Prod */
-1953, /* AExpr */
-2342, /* AVarExpr */
-},
-};
-const struct types resolution_table_parser_nodes__AVarExpr = {
-0, /* dummy */
-{
-}
-};
 /* runtime type Array[ABreakExpr] */
 const struct type type_array__Arrayparser_nodes__ABreakExpr = {
-2634,
+2713,
 "Array[ABreakExpr]", /* class_name_string */
 17,
 0,
@@ -3814,22 +4216,22 @@ const struct type type_array__Arrayparser_nodes__ABreakExpr = {
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
-1911, /* Array[Object] */
-2343, /* Collection[ABreakExpr] */
-2483, /* Array[ANode] */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
-2579, /* Array[Prod] */
-2598, /* AbstractArrayRead[ABreakExpr] */
-2612, /* Array[AExpr] */
-2634, /* Array[ABreakExpr] */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
+1973, /* Array[Object] */
+2407, /* Collection[ABreakExpr] */
+2555, /* Array[ANode] */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
+2657, /* Array[Prod] */
+2677, /* AbstractArrayRead[ABreakExpr] */
+2691, /* Array[AExpr] */
+2713, /* Array[ABreakExpr] */
 },
 };
 const struct types resolution_table_array__Arrayparser_nodes__ABreakExpr = {
@@ -3858,7 +4260,7 @@ NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[ABreakExpr] no
 };
 /* runtime type Collection[ABreakExpr] */
 const struct type type_abstract_collection__Collectionparser_nodes__ABreakExpr = {
-2343,
+2407,
 "Collection[ABreakExpr]", /* class_name_string */
 10,
 0,
@@ -3867,20 +4269,20 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
+632, /* Collection[ANode] */
 -1, /* empty */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
 -1, /* empty */
-1961, /* Collection[AExpr] */
+2029, /* Collection[AExpr] */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[ABreakExpr] */
+2407, /* Collection[ABreakExpr] */
 },
 };
 /* runtime type AbstractArrayRead[ABreakExpr] */
 const struct type type_array__AbstractArrayReadparser_nodes__ABreakExpr = {
-2598,
+2677,
 "AbstractArrayRead[ABreakExpr]", /* class_name_string */
 15,
 0,
@@ -3889,25 +4291,25 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
 -1, /* empty */
-2343, /* Collection[ABreakExpr] */
+2407, /* Collection[ABreakExpr] */
 -1, /* empty */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
 -1, /* empty */
-2598, /* AbstractArrayRead[ABreakExpr] */
+2677, /* AbstractArrayRead[ABreakExpr] */
 },
 };
 /* runtime type Array[AContinueExpr] */
 const struct type type_array__Arrayparser_nodes__AContinueExpr = {
-2635,
+2714,
 "Array[AContinueExpr]", /* class_name_string */
 17,
 0,
@@ -3916,22 +4318,22 @@ const struct type type_array__Arrayparser_nodes__AContinueExpr = {
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
-1911, /* Array[Object] */
-2344, /* Collection[AContinueExpr] */
-2483, /* Array[ANode] */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
-2579, /* Array[Prod] */
-2599, /* AbstractArrayRead[AContinueExpr] */
-2612, /* Array[AExpr] */
-2635, /* Array[AContinueExpr] */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
+1973, /* Array[Object] */
+2408, /* Collection[AContinueExpr] */
+2555, /* Array[ANode] */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
+2657, /* Array[Prod] */
+2678, /* AbstractArrayRead[AContinueExpr] */
+2691, /* Array[AExpr] */
+2714, /* Array[AContinueExpr] */
 },
 };
 const struct types resolution_table_array__Arrayparser_nodes__AContinueExpr = {
@@ -3960,7 +4362,7 @@ NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[AContinueExpr]
 };
 /* runtime type Collection[AContinueExpr] */
 const struct type type_abstract_collection__Collectionparser_nodes__AContinueExpr = {
-2344,
+2408,
 "Collection[AContinueExpr]", /* class_name_string */
 10,
 0,
@@ -3969,47 +4371,93 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
+632, /* Collection[ANode] */
 -1, /* empty */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
 -1, /* empty */
-1961, /* Collection[AExpr] */
+2029, /* Collection[AExpr] */
 -1, /* empty */
 -1, /* empty */
-2344, /* Collection[AContinueExpr] */
+2408, /* Collection[AContinueExpr] */
 },
 };
 /* runtime type AbstractArrayRead[AContinueExpr] */
 const struct type type_array__AbstractArrayReadparser_nodes__AContinueExpr = {
-2599,
+2678,
 "AbstractArrayRead[AContinueExpr]", /* class_name_string */
 15,
 0,
-NULL,
-16,
+NULL,
+16,
+{
+0, /* nullable Object */
+1, /* Object */
+632, /* Collection[ANode] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+1782, /* AbstractArrayRead[Object] */
+2029, /* Collection[AExpr] */
+2266, /* AbstractArrayRead[ANode] */
+-1, /* empty */
+2408, /* Collection[AContinueExpr] */
+-1, /* empty */
+2556, /* AbstractArrayRead[Prod] */
+2639, /* AbstractArrayRead[AExpr] */
+-1, /* empty */
+2678, /* AbstractArrayRead[AContinueExpr] */
+},
+};
+/* runtime type AVarExpr */
+const struct type type_parser_nodes__AVarExpr = {
+2409,
+"AVarExpr", /* class_name_string */
+6,
+0,
+&resolution_table_parser_nodes__AVarExpr,
+7,
+{
+0, /* nullable Object */
+1, /* Object */
+19, /* nullable AExpr */
+254, /* ANode */
+671, /* Prod */
+2021, /* AExpr */
+2409, /* AVarExpr */
+},
+};
+const struct types resolution_table_parser_nodes__AVarExpr = {
+0, /* dummy */
+{
+}
+};
+/* runtime type AVarAssignExpr */
+const struct type type_parser_nodes__AVarAssignExpr = {
+2410,
+"AVarAssignExpr", /* class_name_string */
+6,
+0,
+&resolution_table_parser_nodes__AVarAssignExpr,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
-1728, /* AbstractArrayRead[Object] */
-1961, /* Collection[AExpr] */
-2196, /* AbstractArrayRead[ANode] */
--1, /* empty */
-2344, /* Collection[AContinueExpr] */
--1, /* empty */
-2484, /* AbstractArrayRead[Prod] */
-2561, /* AbstractArrayRead[AExpr] */
--1, /* empty */
-2599, /* AbstractArrayRead[AContinueExpr] */
+19, /* nullable AExpr */
+254, /* ANode */
+671, /* Prod */
+2021, /* AExpr */
+2410, /* AVarAssignExpr */
 },
 };
+const struct types resolution_table_parser_nodes__AVarAssignExpr = {
+0, /* dummy */
+{
+}
+};
 /* runtime type AVarReassignExpr */
 const struct type type_parser_nodes__AVarReassignExpr = {
-2345,
+2411,
 "AVarReassignExpr", /* class_name_string */
 6,
 0,
@@ -4018,11 +4466,11 @@ const struct type type_parser_nodes__AVarReassignExpr = {
 {
 0, /* nullable Object */
 1, /* Object */
-15, /* nullable AExpr */
-223, /* ANode */
-622, /* Prod */
-1953, /* AExpr */
-2345, /* AVarReassignExpr */
+19, /* nullable AExpr */
+254, /* ANode */
+671, /* Prod */
+2021, /* AExpr */
+2411, /* AVarReassignExpr */
 },
 };
 const struct types resolution_table_parser_nodes__AVarReassignExpr = {
@@ -4032,7 +4480,7 @@ const struct types resolution_table_parser_nodes__AVarReassignExpr = {
 };
 /* runtime type EscapeMark */
 const struct type type_scope__EscapeMark = {
-275,
+287,
 "EscapeMark", /* class_name_string */
 2,
 0,
@@ -4041,7 +4489,7 @@ const struct type type_scope__EscapeMark = {
 {
 0, /* nullable Object */
 1, /* Object */
-275, /* EscapeMark */
+287, /* EscapeMark */
 },
 };
 const struct types resolution_table_scope__EscapeMark = {
@@ -4051,7 +4499,7 @@ const struct types resolution_table_scope__EscapeMark = {
 };
 /* runtime type APlaceholderExpr */
 const struct type type_astbuilder__APlaceholderExpr = {
-2346,
+2412,
 "APlaceholderExpr", /* class_name_string */
 6,
 0,
@@ -4060,11 +4508,11 @@ const struct type type_astbuilder__APlaceholderExpr = {
 {
 0, /* nullable Object */
 1, /* Object */
-15, /* nullable AExpr */
-223, /* ANode */
-622, /* Prod */
-1953, /* AExpr */
-2346, /* APlaceholderExpr */
+19, /* nullable AExpr */
+254, /* ANode */
+671, /* Prod */
+2021, /* AExpr */
+2412, /* APlaceholderExpr */
 },
 };
 const struct types resolution_table_astbuilder__APlaceholderExpr = {
@@ -4074,7 +4522,7 @@ const struct types resolution_table_astbuilder__APlaceholderExpr = {
 };
 /* runtime type CallSite */
 const struct type type_typing__CallSite = {
-276,
+288,
 "CallSite", /* class_name_string */
 2,
 0,
@@ -4083,7 +4531,7 @@ const struct type type_typing__CallSite = {
 {
 0, /* nullable Object */
 1, /* Object */
-276, /* CallSite */
+288, /* CallSite */
 },
 };
 const struct types resolution_table_typing__CallSite = {
@@ -4093,7 +4541,7 @@ const struct types resolution_table_typing__CallSite = {
 };
 /* runtime type ArrayIterator[Message] */
 const struct type type_array__ArrayIteratortoolcontext__Message = {
-1426,
+1461,
 "ArrayIterator[Message]", /* class_name_string */
 3,
 0,
@@ -4102,8 +4550,8 @@ const struct type type_array__ArrayIteratortoolcontext__Message = {
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1426, /* ArrayIterator[Message] */
+289, /* ArrayIterator[Object] */
+1461, /* ArrayIterator[Message] */
 },
 };
 const struct types resolution_table_array__ArrayIteratortoolcontext__Message = {
@@ -4115,7 +4563,7 @@ const struct types resolution_table_array__ArrayIteratortoolcontext__Message = {
 };
 /* runtime type ArrayIterator[Object] */
 const struct type type_array__ArrayIteratorkernel__Object = {
-277,
+289,
 "ArrayIterator[Object]", /* class_name_string */
 2,
 0,
@@ -4124,7 +4572,7 @@ const struct type type_array__ArrayIteratorkernel__Object = {
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
+289, /* ArrayIterator[Object] */
 },
 };
 const struct types resolution_table_array__ArrayIteratorkernel__Object = {
@@ -4136,7 +4584,7 @@ const struct types resolution_table_array__ArrayIteratorkernel__Object = {
 };
 /* runtime type NativeArray[Message] */
 const struct type type_array__NativeArraytoolcontext__Message = {
-1427,
+1462,
 "NativeArray[Message]", /* class_name_string */
 3,
 0,
@@ -4145,8 +4593,8 @@ const struct type type_array__NativeArraytoolcontext__Message = {
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-1427, /* NativeArray[Message] */
+193, /* NativeArray[Object] */
+1462, /* NativeArray[Message] */
 },
 };
 const struct types resolution_table_array__NativeArraytoolcontext__Message = {
@@ -4158,7 +4606,7 @@ const struct types resolution_table_array__NativeArraytoolcontext__Message = {
 };
 /* runtime type HashMap[Phase, POSetElement[Phase]] */
 const struct type type_hash_collection__HashMapphase__Phaseposet__POSetElementphase__Phase = {
-278,
+290,
 "HashMap[Phase, POSetElement[Phase]]", /* class_name_string */
 2,
 0,
@@ -4167,7 +4615,7 @@ const struct type type_hash_collection__HashMapphase__Phaseposet__POSetElementph
 {
 0, /* nullable Object */
 1, /* Object */
-278, /* HashMap[Phase, POSetElement[Phase]] */
+290, /* HashMap[Phase, POSetElement[Phase]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapphase__Phaseposet__POSetElementphase__Phase = {
@@ -4193,7 +4641,7 @@ NULL, /* empty (Map[Map#0, Map#1]: Map[Phase, POSetElement[Phase]] not a live ty
 };
 /* runtime type POSetElement[Phase] */
 const struct type type_poset__POSetElementphase__Phase = {
-279,
+291,
 "POSetElement[Phase]", /* class_name_string */
 2,
 0,
@@ -4202,7 +4650,7 @@ const struct type type_poset__POSetElementphase__Phase = {
 {
 0, /* nullable Object */
 1, /* Object */
-279, /* POSetElement[Phase] */
+291, /* POSetElement[Phase] */
 },
 };
 const struct types resolution_table_poset__POSetElementphase__Phase = {
@@ -4215,7 +4663,7 @@ const struct types resolution_table_poset__POSetElementphase__Phase = {
 };
 /* runtime type ArrayIterator[Phase] */
 const struct type type_array__ArrayIteratorphase__Phase = {
-1428,
+1463,
 "ArrayIterator[Phase]", /* class_name_string */
 3,
 0,
@@ -4224,8 +4672,8 @@ const struct type type_array__ArrayIteratorphase__Phase = {
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1428, /* ArrayIterator[Phase] */
+289, /* ArrayIterator[Object] */
+1463, /* ArrayIterator[Phase] */
 },
 };
 const struct types resolution_table_array__ArrayIteratorphase__Phase = {
@@ -4237,7 +4685,7 @@ const struct types resolution_table_array__ArrayIteratorphase__Phase = {
 };
 /* runtime type NativeArray[Phase] */
 const struct type type_array__NativeArrayphase__Phase = {
-1429,
+1464,
 "NativeArray[Phase]", /* class_name_string */
 3,
 0,
@@ -4246,8 +4694,8 @@ const struct type type_array__NativeArrayphase__Phase = {
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-1429, /* NativeArray[Phase] */
+193, /* NativeArray[Object] */
+1464, /* NativeArray[Phase] */
 },
 };
 const struct types resolution_table_array__NativeArrayphase__Phase = {
@@ -4257,128 +4705,71 @@ const struct types resolution_table_array__NativeArrayphase__Phase = {
 &type_array__NativeArrayphase__Phase, /* NativeArray[NativeArray#0]: NativeArray[Phase] */
 }
 };
-/* runtime type ArrayIterator[MModule] */
-const struct type type_array__ArrayIteratormodel_base__MModule = {
-1430,
-"ArrayIterator[MModule]", /* class_name_string */
+/* runtime type ArrayIterator[MProject] */
+const struct type type_array__ArrayIteratormproject__MProject = {
+1465,
+"ArrayIterator[MProject]", /* class_name_string */
 3,
 0,
-&resolution_table_array__ArrayIteratormodel_base__MModule,
+&resolution_table_array__ArrayIteratormproject__MProject,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1430, /* ArrayIterator[MModule] */
+289, /* ArrayIterator[Object] */
+1465, /* ArrayIterator[MProject] */
 },
 };
-const struct types resolution_table_array__ArrayIteratormodel_base__MModule = {
+const struct types resolution_table_array__ArrayIteratormproject__MProject = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadmodel_base__MModule, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MModule] */
-&type_array__Arraymodel_base__MModule, /* Array[Iterator#0]: Array[MModule] */
+&type_array__AbstractArrayReadmproject__MProject, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MProject] */
+&type_array__Arraymproject__MProject, /* Array[Iterator#0]: Array[MProject] */
 }
 };
-/* runtime type NativeArray[MModule] */
-const struct type type_array__NativeArraymodel_base__MModule = {
-1431,
-"NativeArray[MModule]", /* class_name_string */
+/* runtime type NativeArray[MProject] */
+const struct type type_array__NativeArraymproject__MProject = {
+1466,
+"NativeArray[MProject]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraymodel_base__MModule,
+&resolution_table_array__NativeArraymproject__MProject,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-1431, /* NativeArray[MModule] */
-},
-};
-const struct types resolution_table_array__NativeArraymodel_base__MModule = {
-0, /* dummy */
-{
-&type_model_base__MModule, /* NativeArray#0: MModule */
-&type_array__NativeArraymodel_base__MModule, /* NativeArray[NativeArray#0]: NativeArray[MModule] */
-}
-};
-/* runtime type HashMap[MModule, POSetElement[MModule]] */
-const struct type type_hash_collection__HashMapmodel_base__MModuleposet__POSetElementmodel_base__MModule = {
-280,
-"HashMap[MModule, POSetElement[MModule]]", /* class_name_string */
-2,
-0,
-&resolution_table_hash_collection__HashMapmodel_base__MModuleposet__POSetElementmodel_base__MModule,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-280, /* HashMap[MModule, POSetElement[MModule]] */
-},
-};
-const struct types resolution_table_hash_collection__HashMapmodel_base__MModuleposet__POSetElementmodel_base__MModule = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_hash_collection__HashMapKeysmodel_base__MModuleposet__POSetElementmodel_base__MModule, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MModule, POSetElement[MModule]] */
-&type_hash_collection__HashMapValuesmodel_base__MModuleposet__POSetElementmodel_base__MModule, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MModule, POSetElement[MModule]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel_base__MModuleposet__POSetElementmodel_base__MModule, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MModule, POSetElement[MModule]]] */
-&type_model_base__MModule, /* MapRead#0: MModule */
-&type_hash_collection__HashMapIteratormodel_base__MModuleposet__POSetElementmodel_base__MModule, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MModule, POSetElement[MModule]] */
-&type_model_base__MModule, /* Map#0: MModule */
-&type_poset__POSetElementmodel_base__MModule, /* Map#1: POSetElement[MModule] */
-&type_hash_collection__HashMapNodemodel_base__MModuleposet__POSetElementmodel_base__MModule, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MModule, POSetElement[MModule]] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[MModule, POSetElement[MModule]] not a live type) */
-&type_poset__POSetElementmodel_base__MModule, /* MapRead#1: POSetElement[MModule] */
-&type_model_base__MModule, /* HashCollection#0: MModule */
-&type_hash_collection__HashMapNodemodel_base__MModuleposet__POSetElementmodel_base__MModule, /* HashCollection#1: HashMapNode[MModule, POSetElement[MModule]] */
-}
-};
-/* runtime type POSetElement[MModule] */
-const struct type type_poset__POSetElementmodel_base__MModule = {
-281,
-"POSetElement[MModule]", /* class_name_string */
-2,
-0,
-&resolution_table_poset__POSetElementmodel_base__MModule,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-281, /* POSetElement[MModule] */
+193, /* NativeArray[Object] */
+1466, /* NativeArray[MProject] */
 },
 };
-const struct types resolution_table_poset__POSetElementmodel_base__MModule = {
+const struct types resolution_table_array__NativeArraymproject__MProject = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel_base__MModule, /* HashSet[POSetElement#0]: HashSet[MModule] */
-&type_poset__POSetmodel_base__MModule, /* POSet[POSetElement#0]: POSet[MModule] */
-&type_model_base__MModule, /* POSetElement#0: MModule */
+&type_mproject__MProject, /* NativeArray#0: MProject */
+&type_array__NativeArraymproject__MProject, /* NativeArray[NativeArray#0]: NativeArray[MProject] */
 }
 };
-/* runtime type HashMapKeys[String, Array[MModule]] */
-const struct type type_hash_collection__HashMapKeysstring__Stringarray__Arraymodel_base__MModule = {
-1782,
-"HashMapKeys[String, Array[MModule]]", /* class_name_string */
+/* runtime type HashMapKeys[String, Array[MProject]] */
+const struct type type_hash_collection__HashMapKeysstring__Stringarray__Arraymproject__MProject = {
+1836,
+"HashMapKeys[String, Array[MProject]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel_base__MModule,
+&resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymproject__MProject,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-595, /* Collection[String] */
-1782, /* HashMapKeys[String, Array[MModule]] */
-164, /* Collection[Object] */
+631, /* Collection[String] */
+1836, /* HashMapKeys[String, Array[MProject]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel_base__MModule = {
+const struct types resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymproject__MProject = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel_base__MModule, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Array[MModule]] */
-&type_abstract_collection__MapKeysIteratorstring__Stringarray__Arraymodel_base__MModule, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Array[MModule]] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymproject__MProject, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Array[MProject]] */
+&type_abstract_collection__MapKeysIteratorstring__Stringarray__Arraymproject__MProject, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Array[MProject]] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
@@ -4386,589 +4777,289 @@ NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 &type_string__String, /* RemovableCollection#0: String */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* Collection#0: String */
-&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
-}
-};
-/* runtime type HashMapValues[String, Array[MModule]] */
-const struct type type_hash_collection__HashMapValuesstring__Stringarray__Arraymodel_base__MModule = {
-1783,
-"HashMapValues[String, Array[MModule]]", /* class_name_string */
-3,
-0,
-&resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel_base__MModule,
-5,
-{
-0, /* nullable Object */
-1, /* Object */
-1432, /* Collection[Array[MModule]] */
-1783, /* HashMapValues[String, Array[MModule]] */
-164, /* Collection[Object] */
-},
-};
-const struct types resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel_base__MModule = {
-0, /* dummy */
-{
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel_base__MModule, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Array[MModule]] */
-&type_abstract_collection__MapValuesIteratorstring__Stringarray__Arraymodel_base__MModule, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Array[MModule]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_array__Arraymodel_base__MModule, /* RemovableCollection#0: Array[MModule] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_array__Arraymodel_base__MModule, /* Collection#0: Array[MModule] */
-&type_abstract_collection__Collectionarray__Arraymodel_base__MModule, /* Collection[Collection#0]: Collection[Array[MModule]] */
-}
-};
-/* runtime type Collection[Array[MModule]] */
-const struct type type_abstract_collection__Collectionarray__Arraymodel_base__MModule = {
-1432,
-"Collection[Array[MModule]]", /* class_name_string */
-2,
-0,
-NULL,
-5,
-{
-0, /* nullable Object */
-1, /* Object */
-1432, /* Collection[Array[MModule]] */
--1, /* empty */
-164, /* Collection[Object] */
-},
-};
-/* runtime type NativeArray[nullable HashMapNode[String, Array[MModule]]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule = {
-282,
-"NativeArray[nullable HashMapNode[String, Array[MModule]]]", /* class_name_string */
-2,
-0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-282, /* NativeArray[nullable HashMapNode[String, Array[MModule]]] */
-},
-};
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule = {
-0, /* dummy */
-{
-&type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule, /* NativeArray#0: nullable HashMapNode[String, Array[MModule]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Array[MModule]]] */
-}
-};
-/* runtime type HashMapNode[String, Array[MModule]] */
-const struct type type_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule = {
-1433,
-"HashMapNode[String, Array[MModule]]", /* class_name_string */
-3,
-0,
-&resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule,
-4,
-{
-0, /* nullable Object */
-1, /* Object */
-109, /* nullable HashMapNode[String, Array[MModule]] */
-1433, /* HashMapNode[String, Array[MModule]] */
-},
-};
-const struct types resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule = {
-0, /* dummy */
-{
-&type_string__String, /* HashMapNode#0: String */
-&type_array__Arraymodel_base__MModule, /* HashMapNode#1: Array[MModule] */
-&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule, /* N: HashMapNode[String, Array[MModule]] */
-&type_string__String, /* HashNode#0: String */
-}
-};
-/* runtime type nullable HashMapNode[String, Array[MModule]] */
-const struct type type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule = {
-109,
-"nullable HashMapNode[String, Array[MModule]]", /* class_name_string */
-2,
-1,
-&resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule,
-3,
-{
-0, /* nullable Object */
--1, /* empty */
-109, /* nullable HashMapNode[String, Array[MModule]] */
-},
-};
-const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule = {
-0, /* dummy */
-{
-&type_string__String, /* HashMapNode#0: String */
-&type_array__Arraymodel_base__MModule, /* HashMapNode#1: Array[MModule] */
-&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel_base__MModule, /* N: HashMapNode[String, Array[MModule]] */
-&type_string__String, /* HashNode#0: String */
-}
-};
-/* runtime type HashMapIterator[String, Array[MModule]] */
-const struct type type_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel_base__MModule = {
-1434,
-"HashMapIterator[String, Array[MModule]]", /* class_name_string */
-3,
-0,
-&resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel_base__MModule,
-4,
-{
-0, /* nullable Object */
-1, /* Object */
-283, /* MapIterator[String, Array[MModule]] */
-1434, /* HashMapIterator[String, Array[MModule]] */
-},
-};
-const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel_base__MModule = {
-0, /* dummy */
-{
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel_base__MModule, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Array[MModule]] */
-}
-};
-/* runtime type MapIterator[String, Array[MModule]] */
-const struct type type_abstract_collection__MapIteratorstring__Stringarray__Arraymodel_base__MModule = {
-283,
-"MapIterator[String, Array[MModule]]", /* class_name_string */
-2,
-0,
-NULL,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-283, /* MapIterator[String, Array[MModule]] */
-},
-};
-/* runtime type ArrayIterator[MClass] */
-const struct type type_array__ArrayIteratormodel__MClass = {
-1784,
-"ArrayIterator[MClass]", /* class_name_string */
-4,
-0,
-&resolution_table_array__ArrayIteratormodel__MClass,
-5,
-{
-0, /* nullable Object */
-1, /* Object */
-277, /* ArrayIterator[Object] */
-284, /* ArrayIterator[nullable MClass] */
-1784, /* ArrayIterator[MClass] */
-},
-};
-const struct types resolution_table_array__ArrayIteratormodel__MClass = {
-0, /* dummy */
-{
-&type_array__AbstractArrayReadmodel__MClass, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MClass] */
-&type_array__Arraymodel__MClass, /* Array[Iterator#0]: Array[MClass] */
-}
-};
-/* runtime type ArrayIterator[nullable MClass] */
-const struct type type_array__ArrayIteratornullable_model__MClass = {
-284,
-"ArrayIterator[nullable MClass]", /* class_name_string */
-3,
-0,
-&resolution_table_array__ArrayIteratornullable_model__MClass,
-4,
-{
-0, /* nullable Object */
-1, /* Object */
--1, /* empty */
-284, /* ArrayIterator[nullable MClass] */
-},
-};
-const struct types resolution_table_array__ArrayIteratornullable_model__MClass = {
-0, /* dummy */
-{
-&type_array__AbstractArrayReadnullable_model__MClass, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[nullable MClass] */
-&type_array__Arraynullable_model__MClass, /* Array[Iterator#0]: Array[nullable MClass] */
-}
-};
-/* runtime type NativeArray[MClass] */
-const struct type type_array__NativeArraymodel__MClass = {
-1785,
-"NativeArray[MClass]", /* class_name_string */
-4,
-0,
-&resolution_table_array__NativeArraymodel__MClass,
-5,
-{
-0, /* nullable Object */
-1, /* Object */
-185, /* NativeArray[Object] */
-285, /* NativeArray[nullable MClass] */
-1785, /* NativeArray[MClass] */
-},
-};
-const struct types resolution_table_array__NativeArraymodel__MClass = {
-0, /* dummy */
-{
-&type_model__MClass, /* NativeArray#0: MClass */
-&type_array__NativeArraymodel__MClass, /* NativeArray[NativeArray#0]: NativeArray[MClass] */
-}
-};
-/* runtime type NativeArray[nullable MClass] */
-const struct type type_array__NativeArraynullable_model__MClass = {
-285,
-"NativeArray[nullable MClass]", /* class_name_string */
-3,
-0,
-&resolution_table_array__NativeArraynullable_model__MClass,
-4,
-{
-0, /* nullable Object */
-1, /* Object */
--1, /* empty */
-285, /* NativeArray[nullable MClass] */
-},
-};
-const struct types resolution_table_array__NativeArraynullable_model__MClass = {
-0, /* dummy */
-{
-&type_nullable_model__MClass, /* NativeArray#0: nullable MClass */
-&type_array__NativeArraynullable_model__MClass, /* NativeArray[NativeArray#0]: NativeArray[nullable MClass] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_string__String, /* Collection#0: String */
+&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
 }
 };
-/* runtime type ArrayIterator[MProperty] */
-const struct type type_array__ArrayIteratormodel__MProperty = {
-2060,
-"ArrayIterator[MProperty]", /* class_name_string */
-5,
+/* runtime type HashMapValues[String, Array[MProject]] */
+const struct type type_hash_collection__HashMapValuesstring__Stringarray__Arraymproject__MProject = {
+1837,
+"HashMapValues[String, Array[MProject]]", /* class_name_string */
+3,
 0,
-&resolution_table_array__ArrayIteratormodel__MProperty,
-6,
+&resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymproject__MProject,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-286, /* ArrayIterator[nullable MProperty] */
-1435, /* ArrayIterator[PropertyLayoutElement] */
-2060, /* ArrayIterator[MProperty] */
+1467, /* Collection[Array[MProject]] */
+1837, /* HashMapValues[String, Array[MProject]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_array__ArrayIteratormodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymproject__MProject = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadmodel__MProperty, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MProperty] */
-&type_array__Arraymodel__MProperty, /* Array[Iterator#0]: Array[MProperty] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymproject__MProject, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Array[MProject]] */
+&type_abstract_collection__MapValuesIteratorstring__Stringarray__Arraymproject__MProject, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Array[MProject]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_array__Arraymproject__MProject, /* RemovableCollection#0: Array[MProject] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_array__Arraymproject__MProject, /* Collection#0: Array[MProject] */
+&type_abstract_collection__Collectionarray__Arraymproject__MProject, /* Collection[Collection#0]: Collection[Array[MProject]] */
 }
 };
-/* runtime type ArrayIterator[PropertyLayoutElement] */
-const struct type type_array__ArrayIteratorlayout_builders__PropertyLayoutElement = {
-1435,
-"ArrayIterator[PropertyLayoutElement]", /* class_name_string */
-4,
+/* runtime type Collection[Array[MProject]] */
+const struct type type_abstract_collection__Collectionarray__Arraymproject__MProject = {
+1467,
+"Collection[Array[MProject]]", /* class_name_string */
+2,
 0,
-&resolution_table_array__ArrayIteratorlayout_builders__PropertyLayoutElement,
+NULL,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
+1467, /* Collection[Array[MProject]] */
 -1, /* empty */
-1435, /* ArrayIterator[PropertyLayoutElement] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_array__ArrayIteratorlayout_builders__PropertyLayoutElement = {
-0, /* dummy */
-{
-&type_array__AbstractArrayReadlayout_builders__PropertyLayoutElement, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[PropertyLayoutElement] */
-&type_array__Arraylayout_builders__PropertyLayoutElement, /* Array[Iterator#0]: Array[PropertyLayoutElement] */
-}
-};
-/* runtime type ArrayIterator[nullable MProperty] */
-const struct type type_array__ArrayIteratornullable_model__MProperty = {
-286,
-"ArrayIterator[nullable MProperty]", /* class_name_string */
-3,
+/* runtime type NativeArray[nullable HashMapNode[String, Array[MProject]]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject = {
+292,
+"NativeArray[nullable HashMapNode[String, Array[MProject]]]", /* class_name_string */
+2,
 0,
-&resolution_table_array__ArrayIteratornullable_model__MProperty,
-4,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-286, /* ArrayIterator[nullable MProperty] */
+292, /* NativeArray[nullable HashMapNode[String, Array[MProject]]] */
 },
 };
-const struct types resolution_table_array__ArrayIteratornullable_model__MProperty = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadnullable_model__MProperty, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[nullable MProperty] */
-&type_array__Arraynullable_model__MProperty, /* Array[Iterator#0]: Array[nullable MProperty] */
+&type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject, /* NativeArray#0: nullable HashMapNode[String, Array[MProject]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Array[MProject]]] */
 }
 };
-/* runtime type NativeArray[MProperty] */
-const struct type type_array__NativeArraymodel__MProperty = {
-2061,
-"NativeArray[MProperty]", /* class_name_string */
-5,
+/* runtime type HashMapNode[String, Array[MProject]] */
+const struct type type_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject = {
+1468,
+"HashMapNode[String, Array[MProject]]", /* class_name_string */
+3,
 0,
-&resolution_table_array__NativeArraymodel__MProperty,
-6,
+&resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-287, /* NativeArray[nullable MProperty] */
-1436, /* NativeArray[PropertyLayoutElement] */
-2061, /* NativeArray[MProperty] */
+112, /* nullable HashMapNode[String, Array[MProject]] */
+1468, /* HashMapNode[String, Array[MProject]] */
 },
 };
-const struct types resolution_table_array__NativeArraymodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject = {
 0, /* dummy */
 {
-&type_model__MProperty, /* NativeArray#0: MProperty */
-&type_array__NativeArraymodel__MProperty, /* NativeArray[NativeArray#0]: NativeArray[MProperty] */
+&type_string__String, /* HashMapNode#0: String */
+&type_array__Arraymproject__MProject, /* HashMapNode#1: Array[MProject] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject, /* N: HashMapNode[String, Array[MProject]] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type NativeArray[PropertyLayoutElement] */
-const struct type type_array__NativeArraylayout_builders__PropertyLayoutElement = {
-1436,
-"NativeArray[PropertyLayoutElement]", /* class_name_string */
-4,
-0,
-&resolution_table_array__NativeArraylayout_builders__PropertyLayoutElement,
-5,
+/* runtime type nullable HashMapNode[String, Array[MProject]] */
+const struct type type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject = {
+112,
+"nullable HashMapNode[String, Array[MProject]]", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-185, /* NativeArray[Object] */
 -1, /* empty */
-1436, /* NativeArray[PropertyLayoutElement] */
+112, /* nullable HashMapNode[String, Array[MProject]] */
 },
 };
-const struct types resolution_table_array__NativeArraylayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject = {
 0, /* dummy */
 {
-&type_layout_builders__PropertyLayoutElement, /* NativeArray#0: PropertyLayoutElement */
-&type_array__NativeArraylayout_builders__PropertyLayoutElement, /* NativeArray[NativeArray#0]: NativeArray[PropertyLayoutElement] */
+&type_string__String, /* HashMapNode#0: String */
+&type_array__Arraymproject__MProject, /* HashMapNode#1: Array[MProject] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymproject__MProject, /* N: HashMapNode[String, Array[MProject]] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type NativeArray[nullable MProperty] */
-const struct type type_array__NativeArraynullable_model__MProperty = {
-287,
-"NativeArray[nullable MProperty]", /* class_name_string */
+/* runtime type HashMapIterator[String, Array[MProject]] */
+const struct type type_hash_collection__HashMapIteratorstring__Stringarray__Arraymproject__MProject = {
+1469,
+"HashMapIterator[String, Array[MProject]]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraynullable_model__MProperty,
+&resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymproject__MProject,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
--1, /* empty */
-287, /* NativeArray[nullable MProperty] */
+293, /* MapIterator[String, Array[MProject]] */
+1469, /* HashMapIterator[String, Array[MProject]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_model__MProperty = {
+const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymproject__MProject = {
 0, /* dummy */
 {
-&type_nullable_model__MProperty, /* NativeArray#0: nullable MProperty */
-&type_array__NativeArraynullable_model__MProperty, /* NativeArray[NativeArray#0]: NativeArray[nullable MProperty] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymproject__MProject, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Array[MProject]] */
 }
 };
-/* runtime type HashMap[MClassDef, POSetElement[MClassDef]] */
-const struct type type_hash_collection__HashMapmodel__MClassDefposet__POSetElementmodel__MClassDef = {
-288,
-"HashMap[MClassDef, POSetElement[MClassDef]]", /* class_name_string */
+/* runtime type MapIterator[String, Array[MProject]] */
+const struct type type_abstract_collection__MapIteratorstring__Stringarray__Arraymproject__MProject = {
+293,
+"MapIterator[String, Array[MProject]]", /* class_name_string */
 2,
 0,
-&resolution_table_hash_collection__HashMapmodel__MClassDefposet__POSetElementmodel__MClassDef,
+NULL,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-288, /* HashMap[MClassDef, POSetElement[MClassDef]] */
+293, /* MapIterator[String, Array[MProject]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MClassDefposet__POSetElementmodel__MClassDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_hash_collection__HashMapKeysmodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MClassDef, POSetElement[MClassDef]] */
-&type_hash_collection__HashMapValuesmodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MClassDef, POSetElement[MClassDef]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefposet__POSetElementmodel__MClassDef, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MClassDef, POSetElement[MClassDef]]] */
-&type_model__MClassDef, /* MapRead#0: MClassDef */
-&type_hash_collection__HashMapIteratormodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MClassDef, POSetElement[MClassDef]] */
-&type_model__MClassDef, /* Map#0: MClassDef */
-&type_poset__POSetElementmodel__MClassDef, /* Map#1: POSetElement[MClassDef] */
-&type_hash_collection__HashMapNodemodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MClassDef, POSetElement[MClassDef]] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[MClassDef, POSetElement[MClassDef]] not a live type) */
-&type_poset__POSetElementmodel__MClassDef, /* MapRead#1: POSetElement[MClassDef] */
-&type_model__MClassDef, /* HashCollection#0: MClassDef */
-&type_hash_collection__HashMapNodemodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashCollection#1: HashMapNode[MClassDef, POSetElement[MClassDef]] */
-}
-};
-/* runtime type POSetElement[MClassDef] */
-const struct type type_poset__POSetElementmodel__MClassDef = {
-289,
-"POSetElement[MClassDef]", /* class_name_string */
-2,
-0,
-&resolution_table_poset__POSetElementmodel__MClassDef,
+/* runtime type ArrayIterator[MModule] */
+const struct type type_array__ArrayIteratormmodule__MModule = {
+1470,
+"ArrayIterator[MModule]", /* class_name_string */
 3,
+0,
+&resolution_table_array__ArrayIteratormmodule__MModule,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-289, /* POSetElement[MClassDef] */
+289, /* ArrayIterator[Object] */
+1470, /* ArrayIterator[MModule] */
 },
 };
-const struct types resolution_table_poset__POSetElementmodel__MClassDef = {
+const struct types resolution_table_array__ArrayIteratormmodule__MModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel__MClassDef, /* HashSet[POSetElement#0]: HashSet[MClassDef] */
-&type_poset__POSetmodel__MClassDef, /* POSet[POSetElement#0]: POSet[MClassDef] */
-&type_model__MClassDef, /* POSetElement#0: MClassDef */
+&type_array__AbstractArrayReadmmodule__MModule, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MModule] */
+&type_array__Arraymmodule__MModule, /* Array[Iterator#0]: Array[MModule] */
 }
 };
-/* runtime type HashMap[MClassType, POSetElement[MClassType]] */
-const struct type type_hash_collection__HashMapmodel__MClassTypeposet__POSetElementmodel__MClassType = {
-1437,
-"HashMap[MClassType, POSetElement[MClassType]]", /* class_name_string */
+/* runtime type NativeArray[MModule] */
+const struct type type_array__NativeArraymmodule__MModule = {
+1471,
+"NativeArray[MModule]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapmodel__MClassTypeposet__POSetElementmodel__MClassType,
+&resolution_table_array__NativeArraymmodule__MModule,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-290, /* HashMap[MType, POSetElement[MType]] */
-1437, /* HashMap[MClassType, POSetElement[MClassType]] */
+193, /* NativeArray[Object] */
+1471, /* NativeArray[MModule] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MClassTypeposet__POSetElementmodel__MClassType = {
+const struct types resolution_table_array__NativeArraymmodule__MModule = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_hash_collection__HashMapKeysmodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MClassType, POSetElement[MClassType]] */
-&type_hash_collection__HashMapValuesmodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MClassType, POSetElement[MClassType]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypeposet__POSetElementmodel__MClassType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MClassType, POSetElement[MClassType]]] */
-&type_model__MClassType, /* MapRead#0: MClassType */
-&type_hash_collection__HashMapIteratormodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MClassType, POSetElement[MClassType]] */
-&type_model__MClassType, /* Map#0: MClassType */
-&type_poset__POSetElementmodel__MClassType, /* Map#1: POSetElement[MClassType] */
-&type_hash_collection__HashMapNodemodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MClassType, POSetElement[MClassType]] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[MClassType, POSetElement[MClassType]] not a live type) */
-&type_poset__POSetElementmodel__MClassType, /* MapRead#1: POSetElement[MClassType] */
-&type_model__MClassType, /* HashCollection#0: MClassType */
-&type_hash_collection__HashMapNodemodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashCollection#1: HashMapNode[MClassType, POSetElement[MClassType]] */
+&type_mmodule__MModule, /* NativeArray#0: MModule */
+&type_array__NativeArraymmodule__MModule, /* NativeArray[NativeArray#0]: NativeArray[MModule] */
 }
 };
-/* runtime type HashMap[MType, POSetElement[MType]] */
-const struct type type_hash_collection__HashMapmodel__MTypeposet__POSetElementmodel__MType = {
-290,
-"HashMap[MType, POSetElement[MType]]", /* class_name_string */
+/* runtime type HashMap[MModule, POSetElement[MModule]] */
+const struct type type_hash_collection__HashMapmmodule__MModuleposet__POSetElementmmodule__MModule = {
+294,
+"HashMap[MModule, POSetElement[MModule]]", /* class_name_string */
 2,
 0,
-&resolution_table_hash_collection__HashMapmodel__MTypeposet__POSetElementmodel__MType,
+&resolution_table_hash_collection__HashMapmmodule__MModuleposet__POSetElementmmodule__MModule,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-290, /* HashMap[MType, POSetElement[MType]] */
+294, /* HashMap[MModule, POSetElement[MModule]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel__MTypeposet__POSetElementmodel__MType = {
+const struct types resolution_table_hash_collection__HashMapmmodule__MModuleposet__POSetElementmmodule__MModule = {
 0, /* dummy */
 {
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_hash_collection__HashMapKeysmodel__MTypeposet__POSetElementmodel__MType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MType, POSetElement[MType]] */
-&type_hash_collection__HashMapValuesmodel__MTypeposet__POSetElementmodel__MType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MType, POSetElement[MType]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypeposet__POSetElementmodel__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
-&type_model__MType, /* MapRead#0: MType */
-&type_hash_collection__HashMapIteratormodel__MTypeposet__POSetElementmodel__MType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MType, POSetElement[MType]] */
-&type_model__MType, /* Map#0: MType */
-&type_poset__POSetElementmodel__MType, /* Map#1: POSetElement[MType] */
-&type_hash_collection__HashMapNodemodel__MTypeposet__POSetElementmodel__MType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MType, POSetElement[MType]] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[MType, POSetElement[MType]] not a live type) */
-&type_poset__POSetElementmodel__MType, /* MapRead#1: POSetElement[MType] */
-&type_model__MType, /* HashCollection#0: MType */
-&type_hash_collection__HashMapNodemodel__MTypeposet__POSetElementmodel__MType, /* HashCollection#1: HashMapNode[MType, POSetElement[MType]] */
-}
-};
-/* runtime type POSetElement[MClassType] */
-const struct type type_poset__POSetElementmodel__MClassType = {
-1438,
-"POSetElement[MClassType]", /* class_name_string */
-3,
-0,
-&resolution_table_poset__POSetElementmodel__MClassType,
-4,
-{
-0, /* nullable Object */
-1, /* Object */
-291, /* POSetElement[MType] */
-1438, /* POSetElement[MClassType] */
-},
-};
-const struct types resolution_table_poset__POSetElementmodel__MClassType = {
-0, /* dummy */
-{
-&type_hash_collection__HashSetmodel__MClassType, /* HashSet[POSetElement#0]: HashSet[MClassType] */
-&type_poset__POSetmodel__MClassType, /* POSet[POSetElement#0]: POSet[MClassType] */
-&type_model__MClassType, /* POSetElement#0: MClassType */
+&type_hash_collection__HashMapKeysmmodule__MModuleposet__POSetElementmmodule__MModule, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MModule, POSetElement[MModule]] */
+&type_hash_collection__HashMapValuesmmodule__MModuleposet__POSetElementmmodule__MModule, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MModule, POSetElement[MModule]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleposet__POSetElementmmodule__MModule, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MModule, POSetElement[MModule]]] */
+&type_mmodule__MModule, /* MapRead#0: MModule */
+&type_hash_collection__HashMapIteratormmodule__MModuleposet__POSetElementmmodule__MModule, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MModule, POSetElement[MModule]] */
+&type_mmodule__MModule, /* Map#0: MModule */
+&type_poset__POSetElementmmodule__MModule, /* Map#1: POSetElement[MModule] */
+&type_hash_collection__HashMapNodemmodule__MModuleposet__POSetElementmmodule__MModule, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MModule, POSetElement[MModule]] */
+NULL, /* empty (Map[Map#0, Map#1]: Map[MModule, POSetElement[MModule]] not a live type) */
+&type_poset__POSetElementmmodule__MModule, /* MapRead#1: POSetElement[MModule] */
+&type_mmodule__MModule, /* HashCollection#0: MModule */
+&type_hash_collection__HashMapNodemmodule__MModuleposet__POSetElementmmodule__MModule, /* HashCollection#1: HashMapNode[MModule, POSetElement[MModule]] */
 }
 };
-/* runtime type POSetElement[MType] */
-const struct type type_poset__POSetElementmodel__MType = {
-291,
-"POSetElement[MType]", /* class_name_string */
+/* runtime type POSetElement[MModule] */
+const struct type type_poset__POSetElementmmodule__MModule = {
+295,
+"POSetElement[MModule]", /* class_name_string */
 2,
 0,
-&resolution_table_poset__POSetElementmodel__MType,
+&resolution_table_poset__POSetElementmmodule__MModule,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-291, /* POSetElement[MType] */
+295, /* POSetElement[MModule] */
 },
 };
-const struct types resolution_table_poset__POSetElementmodel__MType = {
+const struct types resolution_table_poset__POSetElementmmodule__MModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel__MType, /* HashSet[POSetElement#0]: HashSet[MType] */
-&type_poset__POSetmodel__MType, /* POSet[POSetElement#0]: POSet[MType] */
-&type_model__MType, /* POSetElement#0: MType */
+&type_hash_collection__HashSetmmodule__MModule, /* HashSet[POSetElement#0]: HashSet[MModule] */
+&type_poset__POSetmmodule__MModule, /* POSet[POSetElement#0]: POSet[MModule] */
+&type_mmodule__MModule, /* POSetElement#0: MModule */
 }
 };
-/* runtime type HashMapKeys[String, Array[MClass]] */
-const struct type type_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MClass = {
-1786,
-"HashMapKeys[String, Array[MClass]]", /* class_name_string */
+/* runtime type HashMapKeys[String, Array[MModule]] */
+const struct type type_hash_collection__HashMapKeysstring__Stringarray__Arraymmodule__MModule = {
+1838,
+"HashMapKeys[String, Array[MModule]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MClass,
+&resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymmodule__MModule,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-595, /* Collection[String] */
-1786, /* HashMapKeys[String, Array[MClass]] */
-164, /* Collection[Object] */
+631, /* Collection[String] */
+1838, /* HashMapKeys[String, Array[MModule]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MClass = {
+const struct types resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymmodule__MModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MClass, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Array[MClass]] */
-&type_abstract_collection__MapKeysIteratorstring__Stringarray__Arraymodel__MClass, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Array[MClass]] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymmodule__MModule, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Array[MModule]] */
+&type_abstract_collection__MapKeysIteratorstring__Stringarray__Arraymmodule__MModule, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Array[MModule]] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
@@ -4983,63 +5074,45 @@ NULL, /* empty */
 &type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
 }
 };
-/* runtime type HashMapValues[String, Array[MClass]] */
-const struct type type_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MClass = {
-2062,
-"HashMapValues[String, Array[MClass]]", /* class_name_string */
+/* runtime type HashMapValues[String, Array[MModule]] */
+const struct type type_hash_collection__HashMapValuesstring__Stringarray__Arraymmodule__MModule = {
+1839,
+"HashMapValues[String, Array[MModule]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MClass,
-6,
+&resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymmodule__MModule,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-1439, /* Collection[Array[nullable MClass]] */
-2062, /* HashMapValues[String, Array[MClass]] */
-164, /* Collection[Object] */
-1787, /* Collection[Array[MClass]] */
+1472, /* Collection[Array[MModule]] */
+1839, /* HashMapValues[String, Array[MModule]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MClass = {
+const struct types resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymmodule__MModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MClass, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Array[MClass]] */
-&type_abstract_collection__MapValuesIteratorstring__Stringarray__Arraymodel__MClass, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Array[MClass]] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymmodule__MModule, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Array[MModule]] */
+&type_abstract_collection__MapValuesIteratorstring__Stringarray__Arraymmodule__MModule, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Array[MModule]] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_array__Arraymodel__MClass, /* RemovableCollection#0: Array[MClass] */
+&type_array__Arraymmodule__MModule, /* RemovableCollection#0: Array[MModule] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_array__Arraymodel__MClass, /* Collection#0: Array[MClass] */
-&type_abstract_collection__Collectionarray__Arraymodel__MClass, /* Collection[Collection#0]: Collection[Array[MClass]] */
+&type_array__Arraymmodule__MModule, /* Collection#0: Array[MModule] */
+&type_abstract_collection__Collectionarray__Arraymmodule__MModule, /* Collection[Collection#0]: Collection[Array[MModule]] */
 }
 };
-/* runtime type Collection[Array[MClass]] */
-const struct type type_abstract_collection__Collectionarray__Arraymodel__MClass = {
-1787,
-"Collection[Array[MClass]]", /* class_name_string */
-5,
-0,
-NULL,
-6,
-{
-0, /* nullable Object */
-1, /* Object */
-1439, /* Collection[Array[nullable MClass]] */
--1, /* empty */
-164, /* Collection[Object] */
-1787, /* Collection[Array[MClass]] */
-},
-};
-/* runtime type Collection[Array[nullable MClass]] */
-const struct type type_abstract_collection__Collectionarray__Arraynullable_model__MClass = {
-1439,
-"Collection[Array[nullable MClass]]", /* class_name_string */
+/* runtime type Collection[Array[MModule]] */
+const struct type type_abstract_collection__Collectionarray__Arraymmodule__MModule = {
+1472,
+"Collection[Array[MModule]]", /* class_name_string */
 2,
 0,
 NULL,
@@ -5047,104 +5120,104 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-1439, /* Collection[Array[nullable MClass]] */
+1472, /* Collection[Array[MModule]] */
 -1, /* empty */
-164, /* Collection[Object] */
+170, /* Collection[Object] */
 },
 };
-/* runtime type NativeArray[nullable HashMapNode[String, Array[MClass]]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
-292,
-"NativeArray[nullable HashMapNode[String, Array[MClass]]]", /* class_name_string */
+/* runtime type NativeArray[nullable HashMapNode[String, Array[MModule]]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule = {
+296,
+"NativeArray[nullable HashMapNode[String, Array[MModule]]]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-292, /* NativeArray[nullable HashMapNode[String, Array[MClass]]] */
+296, /* NativeArray[nullable HashMapNode[String, Array[MModule]]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* NativeArray#0: nullable HashMapNode[String, Array[MClass]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Array[MClass]]] */
+&type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule, /* NativeArray#0: nullable HashMapNode[String, Array[MModule]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Array[MModule]]] */
 }
 };
-/* runtime type HashMapNode[String, Array[MClass]] */
-const struct type type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
-1440,
-"HashMapNode[String, Array[MClass]]", /* class_name_string */
+/* runtime type HashMapNode[String, Array[MModule]] */
+const struct type type_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule = {
+1473,
+"HashMapNode[String, Array[MModule]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass,
+&resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-110, /* nullable HashMapNode[String, Array[MClass]] */
-1440, /* HashMapNode[String, Array[MClass]] */
+113, /* nullable HashMapNode[String, Array[MModule]] */
+1473, /* HashMapNode[String, Array[MModule]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
+const struct types resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule = {
 0, /* dummy */
 {
 &type_string__String, /* HashMapNode#0: String */
-&type_array__Arraymodel__MClass, /* HashMapNode#1: Array[MClass] */
-&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* N: HashMapNode[String, Array[MClass]] */
+&type_array__Arraymmodule__MModule, /* HashMapNode#1: Array[MModule] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule, /* N: HashMapNode[String, Array[MModule]] */
 &type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type nullable HashMapNode[String, Array[MClass]] */
-const struct type type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
-110,
-"nullable HashMapNode[String, Array[MClass]]", /* class_name_string */
+/* runtime type nullable HashMapNode[String, Array[MModule]] */
+const struct type type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule = {
+113,
+"nullable HashMapNode[String, Array[MModule]]", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass,
+&resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-110, /* nullable HashMapNode[String, Array[MClass]] */
+113, /* nullable HashMapNode[String, Array[MModule]] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule = {
 0, /* dummy */
 {
 &type_string__String, /* HashMapNode#0: String */
-&type_array__Arraymodel__MClass, /* HashMapNode#1: Array[MClass] */
-&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* N: HashMapNode[String, Array[MClass]] */
+&type_array__Arraymmodule__MModule, /* HashMapNode#1: Array[MModule] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymmodule__MModule, /* N: HashMapNode[String, Array[MModule]] */
 &type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type HashMapIterator[String, Array[MClass]] */
-const struct type type_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MClass = {
-1441,
-"HashMapIterator[String, Array[MClass]]", /* class_name_string */
+/* runtime type HashMapIterator[String, Array[MModule]] */
+const struct type type_hash_collection__HashMapIteratorstring__Stringarray__Arraymmodule__MModule = {
+1474,
+"HashMapIterator[String, Array[MModule]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MClass,
+&resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymmodule__MModule,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-293, /* MapIterator[String, Array[MClass]] */
-1441, /* HashMapIterator[String, Array[MClass]] */
+297, /* MapIterator[String, Array[MModule]] */
+1474, /* HashMapIterator[String, Array[MModule]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MClass = {
+const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymmodule__MModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MClass, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Array[MClass]] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymmodule__MModule, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Array[MModule]] */
 }
 };
-/* runtime type MapIterator[String, Array[MClass]] */
-const struct type type_abstract_collection__MapIteratorstring__Stringarray__Arraymodel__MClass = {
-293,
-"MapIterator[String, Array[MClass]]", /* class_name_string */
+/* runtime type MapIterator[String, Array[MModule]] */
+const struct type type_abstract_collection__MapIteratorstring__Stringarray__Arraymmodule__MModule = {
+297,
+"MapIterator[String, Array[MModule]]", /* class_name_string */
 2,
 0,
 NULL,
@@ -5152,759 +5225,796 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-293, /* MapIterator[String, Array[MClass]] */
+297, /* MapIterator[String, Array[MModule]] */
 },
 };
-/* runtime type HashMapKeys[String, Array[MProperty]] */
-const struct type type_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MProperty = {
-1788,
-"HashMapKeys[String, Array[MProperty]]", /* class_name_string */
-3,
+/* runtime type ArrayIterator[MClass] */
+const struct type type_array__ArrayIteratormodel__MClass = {
+1840,
+"ArrayIterator[MClass]", /* class_name_string */
+4,
 0,
-&resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MProperty,
+&resolution_table_array__ArrayIteratormodel__MClass,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-595, /* Collection[String] */
-1788, /* HashMapKeys[String, Array[MProperty]] */
-164, /* Collection[Object] */
+289, /* ArrayIterator[Object] */
+298, /* ArrayIterator[nullable MClass] */
+1840, /* ArrayIterator[MClass] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MProperty = {
+const struct types resolution_table_array__ArrayIteratormodel__MClass = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MProperty, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Array[MProperty]] */
-&type_abstract_collection__MapKeysIteratorstring__Stringarray__Arraymodel__MProperty, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Array[MProperty]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* RemovableCollection#0: String */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* Collection#0: String */
-&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
+&type_array__AbstractArrayReadmodel__MClass, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MClass] */
+&type_array__Arraymodel__MClass, /* Array[Iterator#0]: Array[MClass] */
 }
 };
-/* runtime type HashMapValues[String, Array[MProperty]] */
-const struct type type_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MProperty = {
-1789,
-"HashMapValues[String, Array[MProperty]]", /* class_name_string */
+/* runtime type ArrayIterator[nullable MClass] */
+const struct type type_array__ArrayIteratornullable_model__MClass = {
+298,
+"ArrayIterator[nullable MClass]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MProperty,
-5,
+&resolution_table_array__ArrayIteratornullable_model__MClass,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-1442, /* Collection[Array[MProperty]] */
-1789, /* HashMapValues[String, Array[MProperty]] */
-164, /* Collection[Object] */
+-1, /* empty */
+298, /* ArrayIterator[nullable MClass] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MProperty = {
+const struct types resolution_table_array__ArrayIteratornullable_model__MClass = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MProperty, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Array[MProperty]] */
-&type_abstract_collection__MapValuesIteratorstring__Stringarray__Arraymodel__MProperty, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Array[MProperty]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_array__Arraymodel__MProperty, /* RemovableCollection#0: Array[MProperty] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_array__Arraymodel__MProperty, /* Collection#0: Array[MProperty] */
-&type_abstract_collection__Collectionarray__Arraymodel__MProperty, /* Collection[Collection#0]: Collection[Array[MProperty]] */
+&type_array__AbstractArrayReadnullable_model__MClass, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[nullable MClass] */
+&type_array__Arraynullable_model__MClass, /* Array[Iterator#0]: Array[nullable MClass] */
 }
 };
-/* runtime type Collection[Array[MProperty]] */
-const struct type type_abstract_collection__Collectionarray__Arraymodel__MProperty = {
-1442,
-"Collection[Array[MProperty]]", /* class_name_string */
-2,
+/* runtime type NativeArray[MClass] */
+const struct type type_array__NativeArraymodel__MClass = {
+1841,
+"NativeArray[MClass]", /* class_name_string */
+4,
 0,
-NULL,
+&resolution_table_array__NativeArraymodel__MClass,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-1442, /* Collection[Array[MProperty]] */
+193, /* NativeArray[Object] */
+299, /* NativeArray[nullable MClass] */
+1841, /* NativeArray[MClass] */
+},
+};
+const struct types resolution_table_array__NativeArraymodel__MClass = {
+0, /* dummy */
+{
+&type_model__MClass, /* NativeArray#0: MClass */
+&type_array__NativeArraymodel__MClass, /* NativeArray[NativeArray#0]: NativeArray[MClass] */
+}
+};
+/* runtime type NativeArray[nullable MClass] */
+const struct type type_array__NativeArraynullable_model__MClass = {
+299,
+"NativeArray[nullable MClass]", /* class_name_string */
+3,
+0,
+&resolution_table_array__NativeArraynullable_model__MClass,
+4,
+{
+0, /* nullable Object */
+1, /* Object */
 -1, /* empty */
-164, /* Collection[Object] */
+299, /* NativeArray[nullable MClass] */
 },
 };
-/* runtime type NativeArray[nullable HashMapNode[String, Array[MProperty]]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
-294,
-"NativeArray[nullable HashMapNode[String, Array[MProperty]]]", /* class_name_string */
-2,
+const struct types resolution_table_array__NativeArraynullable_model__MClass = {
+0, /* dummy */
+{
+&type_nullable_model__MClass, /* NativeArray#0: nullable MClass */
+&type_array__NativeArraynullable_model__MClass, /* NativeArray[NativeArray#0]: NativeArray[nullable MClass] */
+}
+};
+/* runtime type ArrayIterator[MProperty] */
+const struct type type_array__ArrayIteratormodel__MProperty = {
+2125,
+"ArrayIterator[MProperty]", /* class_name_string */
+5,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty,
-3,
+&resolution_table_array__ArrayIteratormodel__MProperty,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-294, /* NativeArray[nullable HashMapNode[String, Array[MProperty]]] */
+289, /* ArrayIterator[Object] */
+300, /* ArrayIterator[nullable MProperty] */
+1475, /* ArrayIterator[PropertyLayoutElement] */
+2125, /* ArrayIterator[MProperty] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
+const struct types resolution_table_array__ArrayIteratormodel__MProperty = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* NativeArray#0: nullable HashMapNode[String, Array[MProperty]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Array[MProperty]]] */
+&type_array__AbstractArrayReadmodel__MProperty, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MProperty] */
+&type_array__Arraymodel__MProperty, /* Array[Iterator#0]: Array[MProperty] */
 }
 };
-/* runtime type HashMapNode[String, Array[MProperty]] */
-const struct type type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
-1443,
-"HashMapNode[String, Array[MProperty]]", /* class_name_string */
+/* runtime type ArrayIterator[PropertyLayoutElement] */
+const struct type type_array__ArrayIteratorlayout_builders__PropertyLayoutElement = {
+1475,
+"ArrayIterator[PropertyLayoutElement]", /* class_name_string */
+4,
+0,
+&resolution_table_array__ArrayIteratorlayout_builders__PropertyLayoutElement,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+289, /* ArrayIterator[Object] */
+-1, /* empty */
+1475, /* ArrayIterator[PropertyLayoutElement] */
+},
+};
+const struct types resolution_table_array__ArrayIteratorlayout_builders__PropertyLayoutElement = {
+0, /* dummy */
+{
+&type_array__AbstractArrayReadlayout_builders__PropertyLayoutElement, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[PropertyLayoutElement] */
+&type_array__Arraylayout_builders__PropertyLayoutElement, /* Array[Iterator#0]: Array[PropertyLayoutElement] */
+}
+};
+/* runtime type ArrayIterator[nullable MProperty] */
+const struct type type_array__ArrayIteratornullable_model__MProperty = {
+300,
+"ArrayIterator[nullable MProperty]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty,
+&resolution_table_array__ArrayIteratornullable_model__MProperty,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-111, /* nullable HashMapNode[String, Array[MProperty]] */
-1443, /* HashMapNode[String, Array[MProperty]] */
+-1, /* empty */
+300, /* ArrayIterator[nullable MProperty] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
+const struct types resolution_table_array__ArrayIteratornullable_model__MProperty = {
 0, /* dummy */
 {
-&type_string__String, /* HashMapNode#0: String */
-&type_array__Arraymodel__MProperty, /* HashMapNode#1: Array[MProperty] */
-&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* N: HashMapNode[String, Array[MProperty]] */
-&type_string__String, /* HashNode#0: String */
+&type_array__AbstractArrayReadnullable_model__MProperty, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[nullable MProperty] */
+&type_array__Arraynullable_model__MProperty, /* Array[Iterator#0]: Array[nullable MProperty] */
 }
 };
-/* runtime type nullable HashMapNode[String, Array[MProperty]] */
-const struct type type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
-111,
-"nullable HashMapNode[String, Array[MProperty]]", /* class_name_string */
-2,
-1,
-&resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty,
-3,
+/* runtime type NativeArray[MProperty] */
+const struct type type_array__NativeArraymodel__MProperty = {
+2126,
+"NativeArray[MProperty]", /* class_name_string */
+5,
+0,
+&resolution_table_array__NativeArraymodel__MProperty,
+6,
+{
+0, /* nullable Object */
+1, /* Object */
+193, /* NativeArray[Object] */
+301, /* NativeArray[nullable MProperty] */
+1476, /* NativeArray[PropertyLayoutElement] */
+2126, /* NativeArray[MProperty] */
+},
+};
+const struct types resolution_table_array__NativeArraymodel__MProperty = {
+0, /* dummy */
+{
+&type_model__MProperty, /* NativeArray#0: MProperty */
+&type_array__NativeArraymodel__MProperty, /* NativeArray[NativeArray#0]: NativeArray[MProperty] */
+}
+};
+/* runtime type NativeArray[PropertyLayoutElement] */
+const struct type type_array__NativeArraylayout_builders__PropertyLayoutElement = {
+1476,
+"NativeArray[PropertyLayoutElement]", /* class_name_string */
+4,
+0,
+&resolution_table_array__NativeArraylayout_builders__PropertyLayoutElement,
+5,
 {
 0, /* nullable Object */
+1, /* Object */
+193, /* NativeArray[Object] */
 -1, /* empty */
-111, /* nullable HashMapNode[String, Array[MProperty]] */
+1476, /* NativeArray[PropertyLayoutElement] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
+const struct types resolution_table_array__NativeArraylayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_string__String, /* HashMapNode#0: String */
-&type_array__Arraymodel__MProperty, /* HashMapNode#1: Array[MProperty] */
-&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* N: HashMapNode[String, Array[MProperty]] */
-&type_string__String, /* HashNode#0: String */
+&type_layout_builders__PropertyLayoutElement, /* NativeArray#0: PropertyLayoutElement */
+&type_array__NativeArraylayout_builders__PropertyLayoutElement, /* NativeArray[NativeArray#0]: NativeArray[PropertyLayoutElement] */
 }
 };
-/* runtime type HashMapIterator[String, Array[MProperty]] */
-const struct type type_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MProperty = {
-1444,
-"HashMapIterator[String, Array[MProperty]]", /* class_name_string */
+/* runtime type NativeArray[nullable MProperty] */
+const struct type type_array__NativeArraynullable_model__MProperty = {
+301,
+"NativeArray[nullable MProperty]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MProperty,
+&resolution_table_array__NativeArraynullable_model__MProperty,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-295, /* MapIterator[String, Array[MProperty]] */
-1444, /* HashMapIterator[String, Array[MProperty]] */
+-1, /* empty */
+301, /* NativeArray[nullable MProperty] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MProperty = {
+const struct types resolution_table_array__NativeArraynullable_model__MProperty = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MProperty, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Array[MProperty]] */
+&type_nullable_model__MProperty, /* NativeArray#0: nullable MProperty */
+&type_array__NativeArraynullable_model__MProperty, /* NativeArray[NativeArray#0]: NativeArray[nullable MProperty] */
 }
 };
-/* runtime type MapIterator[String, Array[MProperty]] */
-const struct type type_abstract_collection__MapIteratorstring__Stringarray__Arraymodel__MProperty = {
-295,
-"MapIterator[String, Array[MProperty]]", /* class_name_string */
-2,
-0,
-NULL,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-295, /* MapIterator[String, Array[MProperty]] */
-},
-};
-/* runtime type HashMap[MModule, HashMap2[MType, String, nullable MProperty]] */
-const struct type type_hash_collection__HashMapmodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
-296,
-"HashMap[MModule, HashMap2[MType, String, nullable MProperty]]", /* class_name_string */
+/* runtime type HashMap[MClassDef, POSetElement[MClassDef]] */
+const struct type type_hash_collection__HashMapmodel__MClassDefposet__POSetElementmodel__MClassDef = {
+302,
+"HashMap[MClassDef, POSetElement[MClassDef]]", /* class_name_string */
 2,
 0,
-&resolution_table_hash_collection__HashMapmodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty,
+&resolution_table_hash_collection__HashMapmodel__MClassDefposet__POSetElementmodel__MClassDef,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-296, /* HashMap[MModule, HashMap2[MType, String, nullable MProperty]] */
+302, /* HashMap[MClassDef, POSetElement[MClassDef]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapmodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
+const struct types resolution_table_hash_collection__HashMapmodel__MClassDefposet__POSetElementmodel__MClassDef = {
 0, /* dummy */
 {
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_hash_collection__HashMapKeysmodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MModule, HashMap2[MType, String, nullable MProperty]] */
-&type_hash_collection__HashMapValuesmodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MModule, HashMap2[MType, String, nullable MProperty]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MModule, HashMap2[MType, String, nullable MProperty]]] */
-&type_model_base__MModule, /* MapRead#0: MModule */
-&type_hash_collection__HashMapIteratormodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MModule, HashMap2[MType, String, nullable MProperty]] */
-&type_model_base__MModule, /* Map#0: MModule */
-&type_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* Map#1: HashMap2[MType, String, nullable MProperty] */
-&type_hash_collection__HashMapNodemodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MModule, HashMap2[MType, String, nullable MProperty]] */
-NULL, /* empty (Map[Map#0, Map#1]: Map[MModule, HashMap2[MType, String, nullable MProperty]] not a live type) */
-&type_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* MapRead#1: HashMap2[MType, String, nullable MProperty] */
-&type_model_base__MModule, /* HashCollection#0: MModule */
-&type_hash_collection__HashMapNodemodel_base__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashCollection#1: HashMapNode[MModule, HashMap2[MType, String, nullable MProperty]] */
+&type_hash_collection__HashMapKeysmodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MClassDef, POSetElement[MClassDef]] */
+&type_hash_collection__HashMapValuesmodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MClassDef, POSetElement[MClassDef]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefposet__POSetElementmodel__MClassDef, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MClassDef, POSetElement[MClassDef]]] */
+&type_model__MClassDef, /* MapRead#0: MClassDef */
+&type_hash_collection__HashMapIteratormodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MClassDef, POSetElement[MClassDef]] */
+&type_model__MClassDef, /* Map#0: MClassDef */
+&type_poset__POSetElementmodel__MClassDef, /* Map#1: POSetElement[MClassDef] */
+&type_hash_collection__HashMapNodemodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MClassDef, POSetElement[MClassDef]] */
+NULL, /* empty (Map[Map#0, Map#1]: Map[MClassDef, POSetElement[MClassDef]] not a live type) */
+&type_poset__POSetElementmodel__MClassDef, /* MapRead#1: POSetElement[MClassDef] */
+&type_model__MClassDef, /* HashCollection#0: MClassDef */
+&type_hash_collection__HashMapNodemodel__MClassDefposet__POSetElementmodel__MClassDef, /* HashCollection#1: HashMapNode[MClassDef, POSetElement[MClassDef]] */
 }
 };
-/* runtime type HashMap2[MType, String, nullable MProperty] */
-const struct type type_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
-297,
-"HashMap2[MType, String, nullable MProperty]", /* class_name_string */
+/* runtime type POSetElement[MClassDef] */
+const struct type type_poset__POSetElementmodel__MClassDef = {
+303,
+"POSetElement[MClassDef]", /* class_name_string */
 2,
 0,
-&resolution_table_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty,
+&resolution_table_poset__POSetElementmodel__MClassDef,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-297, /* HashMap2[MType, String, nullable MProperty] */
+303, /* POSetElement[MClassDef] */
 },
 };
-const struct types resolution_table_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
+const struct types resolution_table_poset__POSetElementmodel__MClassDef = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MTypehash_collection__HashMapstring__Stringnullable_model__MProperty, /* HashMap[HashMap2#0, HashMap[HashMap2#1, HashMap2#2]]: HashMap[MType, HashMap[String, nullable MProperty]] */
-&type_model__MType, /* HashMap2#0: MType */
-&type_string__String, /* HashMap2#1: String */
-&type_nullable_model__MProperty, /* HashMap2#2: nullable MProperty */
-&type_hash_collection__HashMapstring__Stringnullable_model__MProperty, /* HashMap[HashMap2#1, HashMap2#2]: HashMap[String, nullable MProperty] */
+&type_hash_collection__HashSetmodel__MClassDef, /* HashSet[POSetElement#0]: HashSet[MClassDef] */
+&type_poset__POSetmodel__MClassDef, /* POSet[POSetElement#0]: POSet[MClassDef] */
+&type_model__MClassDef, /* POSetElement#0: MClassDef */
 }
 };
-/* runtime type ArrayIterator[String] */
-const struct type type_array__ArrayIteratorstring__String = {
-1445,
-"ArrayIterator[String]", /* class_name_string */
+/* runtime type HashMap[MClassType, POSetElement[MClassType]] */
+const struct type type_hash_collection__HashMapmodel__MClassTypeposet__POSetElementmodel__MClassType = {
+1477,
+"HashMap[MClassType, POSetElement[MClassType]]", /* class_name_string */
 3,
 0,
-&resolution_table_array__ArrayIteratorstring__String,
+&resolution_table_hash_collection__HashMapmodel__MClassTypeposet__POSetElementmodel__MClassType,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1445, /* ArrayIterator[String] */
+304, /* HashMap[MType, POSetElement[MType]] */
+1477, /* HashMap[MClassType, POSetElement[MClassType]] */
 },
 };
-const struct types resolution_table_array__ArrayIteratorstring__String = {
+const struct types resolution_table_hash_collection__HashMapmodel__MClassTypeposet__POSetElementmodel__MClassType = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadstring__String, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[String] */
-&type_array__Arraystring__String, /* Array[Iterator#0]: Array[String] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_hash_collection__HashMapKeysmodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MClassType, POSetElement[MClassType]] */
+&type_hash_collection__HashMapValuesmodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MClassType, POSetElement[MClassType]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypeposet__POSetElementmodel__MClassType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MClassType, POSetElement[MClassType]]] */
+&type_model__MClassType, /* MapRead#0: MClassType */
+&type_hash_collection__HashMapIteratormodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MClassType, POSetElement[MClassType]] */
+&type_model__MClassType, /* Map#0: MClassType */
+&type_poset__POSetElementmodel__MClassType, /* Map#1: POSetElement[MClassType] */
+&type_hash_collection__HashMapNodemodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MClassType, POSetElement[MClassType]] */
+NULL, /* empty (Map[Map#0, Map#1]: Map[MClassType, POSetElement[MClassType]] not a live type) */
+&type_poset__POSetElementmodel__MClassType, /* MapRead#1: POSetElement[MClassType] */
+&type_model__MClassType, /* HashCollection#0: MClassType */
+&type_hash_collection__HashMapNodemodel__MClassTypeposet__POSetElementmodel__MClassType, /* HashCollection#1: HashMapNode[MClassType, POSetElement[MClassType]] */
 }
 };
-/* runtime type HashMapKeys[String, AModule] */
-const struct type type_hash_collection__HashMapKeysstring__Stringparser_nodes__AModule = {
-1790,
-"HashMapKeys[String, AModule]", /* class_name_string */
-3,
+/* runtime type HashMap[MType, POSetElement[MType]] */
+const struct type type_hash_collection__HashMapmodel__MTypeposet__POSetElementmodel__MType = {
+304,
+"HashMap[MType, POSetElement[MType]]", /* class_name_string */
+2,
 0,
-&resolution_table_hash_collection__HashMapKeysstring__Stringparser_nodes__AModule,
-5,
+&resolution_table_hash_collection__HashMapmodel__MTypeposet__POSetElementmodel__MType,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-595, /* Collection[String] */
-1790, /* HashMapKeys[String, AModule] */
-164, /* Collection[Object] */
+304, /* HashMap[MType, POSetElement[MType]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysstring__Stringparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapmodel__MTypeposet__POSetElementmodel__MType = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringparser_nodes__AModule, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, AModule] */
-&type_abstract_collection__MapKeysIteratorstring__Stringparser_nodes__AModule, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, AModule] */
-NULL, /* empty */
-NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_string__String, /* RemovableCollection#0: String */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* Collection#0: String */
-&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
+&type_hash_collection__HashMapKeysmodel__MTypeposet__POSetElementmodel__MType, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MType, POSetElement[MType]] */
+&type_hash_collection__HashMapValuesmodel__MTypeposet__POSetElementmodel__MType, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MType, POSetElement[MType]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypeposet__POSetElementmodel__MType, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
+&type_model__MType, /* MapRead#0: MType */
+&type_hash_collection__HashMapIteratormodel__MTypeposet__POSetElementmodel__MType, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MType, POSetElement[MType]] */
+&type_model__MType, /* Map#0: MType */
+&type_poset__POSetElementmodel__MType, /* Map#1: POSetElement[MType] */
+&type_hash_collection__HashMapNodemodel__MTypeposet__POSetElementmodel__MType, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MType, POSetElement[MType]] */
+NULL, /* empty (Map[Map#0, Map#1]: Map[MType, POSetElement[MType]] not a live type) */
+&type_poset__POSetElementmodel__MType, /* MapRead#1: POSetElement[MType] */
+&type_model__MType, /* HashCollection#0: MType */
+&type_hash_collection__HashMapNodemodel__MTypeposet__POSetElementmodel__MType, /* HashCollection#1: HashMapNode[MType, POSetElement[MType]] */
 }
 };
-/* runtime type HashMapValues[String, AModule] */
-const struct type type_hash_collection__HashMapValuesstring__Stringparser_nodes__AModule = {
-2347,
-"HashMapValues[String, AModule]", /* class_name_string */
+/* runtime type POSetElement[MClassType] */
+const struct type type_poset__POSetElementmodel__MClassType = {
+1478,
+"POSetElement[MClassType]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesstring__Stringparser_nodes__AModule,
-8,
+&resolution_table_poset__POSetElementmodel__MClassType,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-2347, /* HashMapValues[String, AModule] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
--1, /* empty */
-1917, /* Collection[AModule] */
+305, /* POSetElement[MType] */
+1478, /* POSetElement[MClassType] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesstring__Stringparser_nodes__AModule = {
+const struct types resolution_table_poset__POSetElementmodel__MClassType = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringparser_nodes__AModule, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, AModule] */
-&type_abstract_collection__MapValuesIteratorstring__Stringparser_nodes__AModule, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, AModule] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_parser_nodes__AModule, /* RemovableCollection#0: AModule */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_parser_nodes__AModule, /* Collection#0: AModule */
-&type_abstract_collection__Collectionparser_nodes__AModule, /* Collection[Collection#0]: Collection[AModule] */
+&type_hash_collection__HashSetmodel__MClassType, /* HashSet[POSetElement#0]: HashSet[MClassType] */
+&type_poset__POSetmodel__MClassType, /* POSet[POSetElement#0]: POSet[MClassType] */
+&type_model__MClassType, /* POSetElement#0: MClassType */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[String, AModule]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule = {
-298,
-"NativeArray[nullable HashMapNode[String, AModule]]", /* class_name_string */
+/* runtime type POSetElement[MType] */
+const struct type type_poset__POSetElementmodel__MType = {
+305,
+"POSetElement[MType]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule,
+&resolution_table_poset__POSetElementmodel__MType,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-298, /* NativeArray[nullable HashMapNode[String, AModule]] */
+305, /* POSetElement[MType] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule = {
+const struct types resolution_table_poset__POSetElementmodel__MType = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule, /* NativeArray#0: nullable HashMapNode[String, AModule] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, AModule]] */
+&type_hash_collection__HashSetmodel__MType, /* HashSet[POSetElement#0]: HashSet[MType] */
+&type_poset__POSetmodel__MType, /* POSet[POSetElement#0]: POSet[MType] */
+&type_model__MType, /* POSetElement#0: MType */
 }
 };
-/* runtime type HashMapNode[String, AModule] */
-const struct type type_hash_collection__HashMapNodestring__Stringparser_nodes__AModule = {
-1446,
-"HashMapNode[String, AModule]", /* class_name_string */
+/* runtime type HashMapKeys[String, Array[MClass]] */
+const struct type type_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MClass = {
+1842,
+"HashMapKeys[String, Array[MClass]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapNodestring__Stringparser_nodes__AModule,
-4,
+&resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MClass,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-112, /* nullable HashMapNode[String, AModule] */
-1446, /* HashMapNode[String, AModule] */
-},
-};
-const struct types resolution_table_hash_collection__HashMapNodestring__Stringparser_nodes__AModule = {
-0, /* dummy */
-{
-&type_string__String, /* HashMapNode#0: String */
-&type_parser_nodes__AModule, /* HashMapNode#1: AModule */
-&type_hash_collection__HashMapNodestring__Stringparser_nodes__AModule, /* N: HashMapNode[String, AModule] */
-&type_string__String, /* HashNode#0: String */
-}
-};
-/* runtime type nullable HashMapNode[String, AModule] */
-const struct type type_nullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule = {
-112,
-"nullable HashMapNode[String, AModule]", /* class_name_string */
-2,
-1,
-&resolution_table_nullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule,
-3,
-{
-0, /* nullable Object */
--1, /* empty */
-112, /* nullable HashMapNode[String, AModule] */
+631, /* Collection[String] */
+1842, /* HashMapKeys[String, Array[MClass]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MClass = {
 0, /* dummy */
 {
-&type_string__String, /* HashMapNode#0: String */
-&type_parser_nodes__AModule, /* HashMapNode#1: AModule */
-&type_hash_collection__HashMapNodestring__Stringparser_nodes__AModule, /* N: HashMapNode[String, AModule] */
-&type_string__String, /* HashNode#0: String */
+&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MClass, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Array[MClass]] */
+&type_abstract_collection__MapKeysIteratorstring__Stringarray__Arraymodel__MClass, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Array[MClass]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_string__String, /* RemovableCollection#0: String */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_string__String, /* Collection#0: String */
+&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
 }
 };
-/* runtime type HashMapIterator[String, AModule] */
-const struct type type_hash_collection__HashMapIteratorstring__Stringparser_nodes__AModule = {
-1447,
-"HashMapIterator[String, AModule]", /* class_name_string */
+/* runtime type HashMapValues[String, Array[MClass]] */
+const struct type type_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MClass = {
+2127,
+"HashMapValues[String, Array[MClass]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapIteratorstring__Stringparser_nodes__AModule,
-4,
+&resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MClass,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-299, /* MapIterator[String, AModule] */
-1447, /* HashMapIterator[String, AModule] */
+1479, /* Collection[Array[nullable MClass]] */
+2127, /* HashMapValues[String, Array[MClass]] */
+170, /* Collection[Object] */
+1843, /* Collection[Array[MClass]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MClass = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringparser_nodes__AModule, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, AModule] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MClass, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Array[MClass]] */
+&type_abstract_collection__MapValuesIteratorstring__Stringarray__Arraymodel__MClass, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Array[MClass]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_array__Arraymodel__MClass, /* RemovableCollection#0: Array[MClass] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_array__Arraymodel__MClass, /* Collection#0: Array[MClass] */
+&type_abstract_collection__Collectionarray__Arraymodel__MClass, /* Collection[Collection#0]: Collection[Array[MClass]] */
 }
 };
-/* runtime type MapIterator[String, AModule] */
-const struct type type_abstract_collection__MapIteratorstring__Stringparser_nodes__AModule = {
-299,
-"MapIterator[String, AModule]", /* class_name_string */
-2,
-0,
-NULL,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-299, /* MapIterator[String, AModule] */
-},
-};
-/* runtime type ArrayIterator[AModule] */
-const struct type type_array__ArrayIteratorparser_nodes__AModule = {
-2063,
-"ArrayIterator[AModule]", /* class_name_string */
+/* runtime type Collection[Array[MClass]] */
+const struct type type_abstract_collection__Collectionarray__Arraymodel__MClass = {
+1843,
+"Collection[Array[MClass]]", /* class_name_string */
 5,
 0,
-&resolution_table_array__ArrayIteratorparser_nodes__AModule,
+NULL,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1448, /* ArrayIterator[ANode] */
-1791, /* ArrayIterator[Prod] */
-2063, /* ArrayIterator[AModule] */
+1479, /* Collection[Array[nullable MClass]] */
+-1, /* empty */
+170, /* Collection[Object] */
+1843, /* Collection[Array[MClass]] */
 },
 };
-const struct types resolution_table_array__ArrayIteratorparser_nodes__AModule = {
-0, /* dummy */
-{
-&type_array__AbstractArrayReadparser_nodes__AModule, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[AModule] */
-&type_array__Arrayparser_nodes__AModule, /* Array[Iterator#0]: Array[AModule] */
-}
-};
-/* runtime type ArrayIterator[Prod] */
-const struct type type_array__ArrayIteratorparser_nodes__Prod = {
-1791,
-"ArrayIterator[Prod]", /* class_name_string */
-4,
+/* runtime type Collection[Array[nullable MClass]] */
+const struct type type_abstract_collection__Collectionarray__Arraynullable_model__MClass = {
+1479,
+"Collection[Array[nullable MClass]]", /* class_name_string */
+2,
 0,
-&resolution_table_array__ArrayIteratorparser_nodes__Prod,
+NULL,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1448, /* ArrayIterator[ANode] */
-1791, /* ArrayIterator[Prod] */
+1479, /* Collection[Array[nullable MClass]] */
+-1, /* empty */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_array__ArrayIteratorparser_nodes__Prod = {
-0, /* dummy */
-{
-&type_array__AbstractArrayReadparser_nodes__Prod, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[Prod] */
-&type_array__Arrayparser_nodes__Prod, /* Array[Iterator#0]: Array[Prod] */
-}
-};
-/* runtime type ArrayIterator[ANode] */
-const struct type type_array__ArrayIteratorparser_nodes__ANode = {
-1448,
-"ArrayIterator[ANode]", /* class_name_string */
-3,
+/* runtime type NativeArray[nullable HashMapNode[String, Array[MClass]]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
+306,
+"NativeArray[nullable HashMapNode[String, Array[MClass]]]", /* class_name_string */
+2,
 0,
-&resolution_table_array__ArrayIteratorparser_nodes__ANode,
-4,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1448, /* ArrayIterator[ANode] */
+306, /* NativeArray[nullable HashMapNode[String, Array[MClass]]] */
 },
 };
-const struct types resolution_table_array__ArrayIteratorparser_nodes__ANode = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadparser_nodes__ANode, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[ANode] */
-&type_array__Arrayparser_nodes__ANode, /* Array[Iterator#0]: Array[ANode] */
+&type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* NativeArray#0: nullable HashMapNode[String, Array[MClass]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Array[MClass]]] */
 }
 };
-/* runtime type NativeArray[AModule] */
-const struct type type_array__NativeArrayparser_nodes__AModule = {
-2064,
-"NativeArray[AModule]", /* class_name_string */
-5,
+/* runtime type HashMapNode[String, Array[MClass]] */
+const struct type type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
+1480,
+"HashMapNode[String, Array[MClass]]", /* class_name_string */
+3,
 0,
-&resolution_table_array__NativeArrayparser_nodes__AModule,
-6,
+&resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-1449, /* NativeArray[ANode] */
-1792, /* NativeArray[Prod] */
-2064, /* NativeArray[AModule] */
+114, /* nullable HashMapNode[String, Array[MClass]] */
+1480, /* HashMapNode[String, Array[MClass]] */
 },
 };
-const struct types resolution_table_array__NativeArrayparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
 0, /* dummy */
 {
-&type_parser_nodes__AModule, /* NativeArray#0: AModule */
-&type_array__NativeArrayparser_nodes__AModule, /* NativeArray[NativeArray#0]: NativeArray[AModule] */
+&type_string__String, /* HashMapNode#0: String */
+&type_array__Arraymodel__MClass, /* HashMapNode#1: Array[MClass] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* N: HashMapNode[String, Array[MClass]] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type NativeArray[Prod] */
-const struct type type_array__NativeArrayparser_nodes__Prod = {
-1792,
-"NativeArray[Prod]", /* class_name_string */
-4,
-0,
-&resolution_table_array__NativeArrayparser_nodes__Prod,
-5,
+/* runtime type nullable HashMapNode[String, Array[MClass]] */
+const struct type type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
+114,
+"nullable HashMapNode[String, Array[MClass]]", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-185, /* NativeArray[Object] */
-1449, /* NativeArray[ANode] */
-1792, /* NativeArray[Prod] */
+-1, /* empty */
+114, /* nullable HashMapNode[String, Array[MClass]] */
 },
 };
-const struct types resolution_table_array__NativeArrayparser_nodes__Prod = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass = {
 0, /* dummy */
 {
-&type_parser_nodes__Prod, /* NativeArray#0: Prod */
-&type_array__NativeArrayparser_nodes__Prod, /* NativeArray[NativeArray#0]: NativeArray[Prod] */
+&type_string__String, /* HashMapNode#0: String */
+&type_array__Arraymodel__MClass, /* HashMapNode#1: Array[MClass] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MClass, /* N: HashMapNode[String, Array[MClass]] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type NativeArray[ANode] */
-const struct type type_array__NativeArrayparser_nodes__ANode = {
-1449,
-"NativeArray[ANode]", /* class_name_string */
+/* runtime type HashMapIterator[String, Array[MClass]] */
+const struct type type_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MClass = {
+1481,
+"HashMapIterator[String, Array[MClass]]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArrayparser_nodes__ANode,
+&resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MClass,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-1449, /* NativeArray[ANode] */
+307, /* MapIterator[String, Array[MClass]] */
+1481, /* HashMapIterator[String, Array[MClass]] */
 },
 };
-const struct types resolution_table_array__NativeArrayparser_nodes__ANode = {
+const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MClass = {
 0, /* dummy */
 {
-&type_parser_nodes__ANode, /* NativeArray#0: ANode */
-&type_array__NativeArrayparser_nodes__ANode, /* NativeArray[NativeArray#0]: NativeArray[ANode] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MClass, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Array[MClass]] */
 }
 };
-/* runtime type HashMapKeys[MModule, AModule] */
-const struct type type_hash_collection__HashMapKeysmodel_base__MModuleparser_nodes__AModule = {
-1793,
-"HashMapKeys[MModule, AModule]", /* class_name_string */
+/* runtime type MapIterator[String, Array[MClass]] */
+const struct type type_abstract_collection__MapIteratorstring__Stringarray__Arraymodel__MClass = {
+307,
+"MapIterator[String, Array[MClass]]", /* class_name_string */
+2,
+0,
+NULL,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+307, /* MapIterator[String, Array[MClass]] */
+},
+};
+/* runtime type HashMapKeys[String, Array[MProperty]] */
+const struct type type_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MProperty = {
+1844,
+"HashMapKeys[String, Array[MProperty]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel_base__MModuleparser_nodes__AModule,
+&resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MProperty,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-588, /* Collection[MModule] */
-1793, /* HashMapKeys[MModule, AModule] */
-164, /* Collection[Object] */
+631, /* Collection[String] */
+1844, /* HashMapKeys[String, Array[MProperty]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel_base__MModuleparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapKeysstring__Stringarray__Arraymodel__MProperty = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel_base__MModuleparser_nodes__AModule, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MModule, AModule] */
-&type_abstract_collection__MapKeysIteratormodel_base__MModuleparser_nodes__AModule, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MModule, AModule] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MProperty, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Array[MProperty]] */
+&type_abstract_collection__MapKeysIteratorstring__Stringarray__Arraymodel__MProperty, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Array[MProperty]] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model_base__MModule, /* RemovableCollection#0: MModule */
+&type_string__String, /* RemovableCollection#0: String */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model_base__MModule, /* Collection#0: MModule */
-&type_abstract_collection__Collectionmodel_base__MModule, /* Collection[Collection#0]: Collection[MModule] */
+&type_string__String, /* Collection#0: String */
+&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
 }
 };
-/* runtime type HashMapValues[MModule, AModule] */
-const struct type type_hash_collection__HashMapValuesmodel_base__MModuleparser_nodes__AModule = {
-2348,
-"HashMapValues[MModule, AModule]", /* class_name_string */
+/* runtime type HashMapValues[String, Array[MProperty]] */
+const struct type type_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MProperty = {
+1845,
+"HashMapValues[String, Array[MProperty]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesmodel_base__MModuleparser_nodes__AModule,
-8,
+&resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MProperty,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-2348, /* HashMapValues[MModule, AModule] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
--1, /* empty */
-1917, /* Collection[AModule] */
+1482, /* Collection[Array[MProperty]] */
+1845, /* HashMapValues[String, Array[MProperty]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel_base__MModuleparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapValuesstring__Stringarray__Arraymodel__MProperty = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel_base__MModuleparser_nodes__AModule, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MModule, AModule] */
-&type_abstract_collection__MapValuesIteratormodel_base__MModuleparser_nodes__AModule, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MModule, AModule] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MProperty, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Array[MProperty]] */
+&type_abstract_collection__MapValuesIteratorstring__Stringarray__Arraymodel__MProperty, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Array[MProperty]] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_parser_nodes__AModule, /* RemovableCollection#0: AModule */
+&type_array__Arraymodel__MProperty, /* RemovableCollection#0: Array[MProperty] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_parser_nodes__AModule, /* Collection#0: AModule */
-&type_abstract_collection__Collectionparser_nodes__AModule, /* Collection[Collection#0]: Collection[AModule] */
+&type_array__Arraymodel__MProperty, /* Collection#0: Array[MProperty] */
+&type_abstract_collection__Collectionarray__Arraymodel__MProperty, /* Collection[Collection#0]: Collection[Array[MProperty]] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MModule, AModule]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule = {
-300,
-"NativeArray[nullable HashMapNode[MModule, AModule]]", /* class_name_string */
+/* runtime type Collection[Array[MProperty]] */
+const struct type type_abstract_collection__Collectionarray__Arraymodel__MProperty = {
+1482,
+"Collection[Array[MProperty]]", /* class_name_string */
+2,
+0,
+NULL,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+1482, /* Collection[Array[MProperty]] */
+-1, /* empty */
+170, /* Collection[Object] */
+},
+};
+/* runtime type NativeArray[nullable HashMapNode[String, Array[MProperty]]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
+308,
+"NativeArray[nullable HashMapNode[String, Array[MProperty]]]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-300, /* NativeArray[nullable HashMapNode[MModule, AModule]] */
+308, /* NativeArray[nullable HashMapNode[String, Array[MProperty]]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule, /* NativeArray#0: nullable HashMapNode[MModule, AModule] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MModule, AModule]] */
+&type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* NativeArray#0: nullable HashMapNode[String, Array[MProperty]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Array[MProperty]]] */
 }
 };
-/* runtime type HashMapNode[MModule, AModule] */
-const struct type type_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule = {
-1450,
-"HashMapNode[MModule, AModule]", /* class_name_string */
+/* runtime type HashMapNode[String, Array[MProperty]] */
+const struct type type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
+1483,
+"HashMapNode[String, Array[MProperty]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule,
+&resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-113, /* nullable HashMapNode[MModule, AModule] */
-1450, /* HashMapNode[MModule, AModule] */
+115, /* nullable HashMapNode[String, Array[MProperty]] */
+1483, /* HashMapNode[String, Array[MProperty]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
 0, /* dummy */
 {
-&type_model_base__MModule, /* HashMapNode#0: MModule */
-&type_parser_nodes__AModule, /* HashMapNode#1: AModule */
-&type_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule, /* N: HashMapNode[MModule, AModule] */
-&type_model_base__MModule, /* HashNode#0: MModule */
+&type_string__String, /* HashMapNode#0: String */
+&type_array__Arraymodel__MProperty, /* HashMapNode#1: Array[MProperty] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* N: HashMapNode[String, Array[MProperty]] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type nullable HashMapNode[MModule, AModule] */
-const struct type type_nullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule = {
-113,
-"nullable HashMapNode[MModule, AModule]", /* class_name_string */
+/* runtime type nullable HashMapNode[String, Array[MProperty]] */
+const struct type type_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
+115,
+"nullable HashMapNode[String, Array[MProperty]]", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule,
+&resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-113, /* nullable HashMapNode[MModule, AModule] */
+115, /* nullable HashMapNode[String, Array[MProperty]] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty = {
 0, /* dummy */
 {
-&type_model_base__MModule, /* HashMapNode#0: MModule */
-&type_parser_nodes__AModule, /* HashMapNode#1: AModule */
-&type_hash_collection__HashMapNodemodel_base__MModuleparser_nodes__AModule, /* N: HashMapNode[MModule, AModule] */
-&type_model_base__MModule, /* HashNode#0: MModule */
+&type_string__String, /* HashMapNode#0: String */
+&type_array__Arraymodel__MProperty, /* HashMapNode#1: Array[MProperty] */
+&type_hash_collection__HashMapNodestring__Stringarray__Arraymodel__MProperty, /* N: HashMapNode[String, Array[MProperty]] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type HashMapIterator[MModule, AModule] */
-const struct type type_hash_collection__HashMapIteratormodel_base__MModuleparser_nodes__AModule = {
-1451,
-"HashMapIterator[MModule, AModule]", /* class_name_string */
+/* runtime type HashMapIterator[String, Array[MProperty]] */
+const struct type type_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MProperty = {
+1484,
+"HashMapIterator[String, Array[MProperty]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapIteratormodel_base__MModuleparser_nodes__AModule,
+&resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MProperty,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-301, /* MapIterator[MModule, AModule] */
-1451, /* HashMapIterator[MModule, AModule] */
+309, /* MapIterator[String, Array[MProperty]] */
+1484, /* HashMapIterator[String, Array[MProperty]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratormodel_base__MModuleparser_nodes__AModule = {
+const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringarray__Arraymodel__MProperty = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel_base__MModuleparser_nodes__AModule, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MModule, AModule] */
+&type_hash_collection__HashMapstring__Stringarray__Arraymodel__MProperty, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Array[MProperty]] */
 }
 };
-/* runtime type MapIterator[MModule, AModule] */
-const struct type type_abstract_collection__MapIteratormodel_base__MModuleparser_nodes__AModule = {
-301,
-"MapIterator[MModule, AModule]", /* class_name_string */
+/* runtime type MapIterator[String, Array[MProperty]] */
+const struct type type_abstract_collection__MapIteratorstring__Stringarray__Arraymodel__MProperty = {
+309,
+"MapIterator[String, Array[MProperty]]", /* class_name_string */
 2,
 0,
 NULL,
@@ -5912,175 +6022,266 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-301, /* MapIterator[MModule, AModule] */
+309, /* MapIterator[String, Array[MProperty]] */
+},
+};
+/* runtime type HashMap[MModule, HashMap2[MType, String, nullable MProperty]] */
+const struct type type_hash_collection__HashMapmmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
+310,
+"HashMap[MModule, HashMap2[MType, String, nullable MProperty]]", /* class_name_string */
+2,
+0,
+&resolution_table_hash_collection__HashMapmmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+310, /* HashMap[MModule, HashMap2[MType, String, nullable MProperty]] */
+},
+};
+const struct types resolution_table_hash_collection__HashMapmmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
+0, /* dummy */
+{
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_hash_collection__HashMapKeysmmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapKeys[HashMap#0, HashMap#1]: HashMapKeys[MModule, HashMap2[MType, String, nullable MProperty]] */
+&type_hash_collection__HashMapValuesmmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapValues[HashMap#0, HashMap#1]: HashMapValues[MModule, HashMap2[MType, String, nullable MProperty]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* NativeArray[ArrayCapable#0]: NativeArray[nullable HashMapNode[MModule, HashMap2[MType, String, nullable MProperty]]] */
+&type_mmodule__MModule, /* MapRead#0: MModule */
+&type_hash_collection__HashMapIteratormmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapIterator[HashMap#0, HashMap#1]: HashMapIterator[MModule, HashMap2[MType, String, nullable MProperty]] */
+&type_mmodule__MModule, /* Map#0: MModule */
+&type_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* Map#1: HashMap2[MType, String, nullable MProperty] */
+&type_hash_collection__HashMapNodemmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashMapNode[HashMap#0, HashMap#1]: HashMapNode[MModule, HashMap2[MType, String, nullable MProperty]] */
+NULL, /* empty (Map[Map#0, Map#1]: Map[MModule, HashMap2[MType, String, nullable MProperty]] not a live type) */
+&type_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* MapRead#1: HashMap2[MType, String, nullable MProperty] */
+&type_mmodule__MModule, /* HashCollection#0: MModule */
+&type_hash_collection__HashMapNodemmodule__MModulemore_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty, /* HashCollection#1: HashMapNode[MModule, HashMap2[MType, String, nullable MProperty]] */
+}
+};
+/* runtime type HashMap2[MType, String, nullable MProperty] */
+const struct type type_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
+311,
+"HashMap2[MType, String, nullable MProperty]", /* class_name_string */
+2,
+0,
+&resolution_table_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+311, /* HashMap2[MType, String, nullable MProperty] */
+},
+};
+const struct types resolution_table_more_collections__HashMap2model__MTypestring__Stringnullable_model__MProperty = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapmodel__MTypehash_collection__HashMapstring__Stringnullable_model__MProperty, /* HashMap[HashMap2#0, HashMap[HashMap2#1, HashMap2#2]]: HashMap[MType, HashMap[String, nullable MProperty]] */
+&type_model__MType, /* HashMap2#0: MType */
+&type_string__String, /* HashMap2#1: String */
+&type_nullable_model__MProperty, /* HashMap2#2: nullable MProperty */
+&type_hash_collection__HashMapstring__Stringnullable_model__MProperty, /* HashMap[HashMap2#1, HashMap2#2]: HashMap[String, nullable MProperty] */
+}
+};
+/* runtime type ArrayIterator[String] */
+const struct type type_array__ArrayIteratorstring__String = {
+1485,
+"ArrayIterator[String]", /* class_name_string */
+3,
+0,
+&resolution_table_array__ArrayIteratorstring__String,
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+289, /* ArrayIterator[Object] */
+1485, /* ArrayIterator[String] */
 },
 };
-/* runtime type HashMapKeys[MClassDef, AClassdef] */
-const struct type type_hash_collection__HashMapKeysmodel__MClassDefparser_nodes__AClassdef = {
-1794,
-"HashMapKeys[MClassDef, AClassdef]", /* class_name_string */
+const struct types resolution_table_array__ArrayIteratorstring__String = {
+0, /* dummy */
+{
+&type_array__AbstractArrayReadstring__String, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[String] */
+&type_array__Arraystring__String, /* Array[Iterator#0]: Array[String] */
+}
+};
+/* runtime type HashMapKeys[String, nullable ModulePath] */
+const struct type type_hash_collection__HashMapKeysstring__Stringnullable_modelbuilder__ModulePath = {
+1846,
+"HashMapKeys[String, nullable ModulePath]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel__MClassDefparser_nodes__AClassdef,
+&resolution_table_hash_collection__HashMapKeysstring__Stringnullable_modelbuilder__ModulePath,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-591, /* Collection[MClassDef] */
-1794, /* HashMapKeys[MClassDef, AClassdef] */
-164, /* Collection[Object] */
+631, /* Collection[String] */
+1846, /* HashMapKeys[String, nullable ModulePath] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassDefparser_nodes__AClassdef = {
+const struct types resolution_table_hash_collection__HashMapKeysstring__Stringnullable_modelbuilder__ModulePath = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassDefparser_nodes__AClassdef, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MClassDef, AClassdef] */
-&type_abstract_collection__MapKeysIteratormodel__MClassDefparser_nodes__AClassdef, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MClassDef, AClassdef] */
+&type_hash_collection__HashMapstring__Stringnullable_modelbuilder__ModulePath, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, nullable ModulePath] */
+&type_abstract_collection__MapKeysIteratorstring__Stringnullable_modelbuilder__ModulePath, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, nullable ModulePath] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MClassDef, /* RemovableCollection#0: MClassDef */
+&type_string__String, /* RemovableCollection#0: String */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MClassDef, /* Collection#0: MClassDef */
-&type_abstract_collection__Collectionmodel__MClassDef, /* Collection[Collection#0]: Collection[MClassDef] */
+&type_string__String, /* Collection#0: String */
+&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
 }
 };
-/* runtime type HashMapValues[MClassDef, AClassdef] */
-const struct type type_hash_collection__HashMapValuesmodel__MClassDefparser_nodes__AClassdef = {
-2349,
-"HashMapValues[MClassDef, AClassdef]", /* class_name_string */
+/* runtime type HashMapValues[String, nullable ModulePath] */
+const struct type type_hash_collection__HashMapValuesstring__Stringnullable_modelbuilder__ModulePath = {
+1486,
+"HashMapValues[String, nullable ModulePath]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesmodel__MClassDefparser_nodes__AClassdef,
-8,
+&resolution_table_hash_collection__HashMapValuesstring__Stringnullable_modelbuilder__ModulePath,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-2349, /* HashMapValues[MClassDef, AClassdef] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
--1, /* empty */
-1926, /* Collection[AClassdef] */
+312, /* Collection[nullable ModulePath] */
+1486, /* HashMapValues[String, nullable ModulePath] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassDefparser_nodes__AClassdef = {
+const struct types resolution_table_hash_collection__HashMapValuesstring__Stringnullable_modelbuilder__ModulePath = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassDefparser_nodes__AClassdef, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MClassDef, AClassdef] */
-&type_abstract_collection__MapValuesIteratormodel__MClassDefparser_nodes__AClassdef, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MClassDef, AClassdef] */
+&type_hash_collection__HashMapstring__Stringnullable_modelbuilder__ModulePath, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, nullable ModulePath] */
+&type_abstract_collection__MapValuesIteratorstring__Stringnullable_modelbuilder__ModulePath, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, nullable ModulePath] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_parser_nodes__AClassdef, /* RemovableCollection#0: AClassdef */
+&type_nullable_modelbuilder__ModulePath, /* RemovableCollection#0: nullable ModulePath */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_parser_nodes__AClassdef, /* Collection#0: AClassdef */
-&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[Collection#0]: Collection[AClassdef] */
+&type_nullable_modelbuilder__ModulePath, /* Collection#0: nullable ModulePath */
+&type_abstract_collection__Collectionnullable_modelbuilder__ModulePath, /* Collection[Collection#0]: Collection[nullable ModulePath] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MClassDef, AClassdef]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
-302,
-"NativeArray[nullable HashMapNode[MClassDef, AClassdef]]", /* class_name_string */
+/* runtime type Collection[nullable ModulePath] */
+const struct type type_abstract_collection__Collectionnullable_modelbuilder__ModulePath = {
+312,
+"Collection[nullable ModulePath]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef,
+NULL,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-302, /* NativeArray[nullable HashMapNode[MClassDef, AClassdef]] */
+312, /* Collection[nullable ModulePath] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
+/* runtime type NativeArray[nullable HashMapNode[String, nullable ModulePath]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath = {
+313,
+"NativeArray[nullable HashMapNode[String, nullable ModulePath]]", /* class_name_string */
+2,
+0,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+313, /* NativeArray[nullable HashMapNode[String, nullable ModulePath]] */
+},
+};
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* NativeArray#0: nullable HashMapNode[MClassDef, AClassdef] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MClassDef, AClassdef]] */
+&type_nullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath, /* NativeArray#0: nullable HashMapNode[String, nullable ModulePath] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, nullable ModulePath]] */
 }
 };
-/* runtime type HashMapNode[MClassDef, AClassdef] */
-const struct type type_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
-1452,
-"HashMapNode[MClassDef, AClassdef]", /* class_name_string */
+/* runtime type HashMapNode[String, nullable ModulePath] */
+const struct type type_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath = {
+1487,
+"HashMapNode[String, nullable ModulePath]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef,
+&resolution_table_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-114, /* nullable HashMapNode[MClassDef, AClassdef] */
-1452, /* HashMapNode[MClassDef, AClassdef] */
+116, /* nullable HashMapNode[String, nullable ModulePath] */
+1487, /* HashMapNode[String, nullable ModulePath] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
+const struct types resolution_table_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath = {
 0, /* dummy */
 {
-&type_model__MClassDef, /* HashMapNode#0: MClassDef */
-&type_parser_nodes__AClassdef, /* HashMapNode#1: AClassdef */
-&type_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* N: HashMapNode[MClassDef, AClassdef] */
-&type_model__MClassDef, /* HashNode#0: MClassDef */
+&type_string__String, /* HashMapNode#0: String */
+&type_nullable_modelbuilder__ModulePath, /* HashMapNode#1: nullable ModulePath */
+&type_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath, /* N: HashMapNode[String, nullable ModulePath] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type nullable HashMapNode[MClassDef, AClassdef] */
-const struct type type_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
-114,
-"nullable HashMapNode[MClassDef, AClassdef]", /* class_name_string */
+/* runtime type nullable HashMapNode[String, nullable ModulePath] */
+const struct type type_nullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath = {
+116,
+"nullable HashMapNode[String, nullable ModulePath]", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef,
+&resolution_table_nullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-114, /* nullable HashMapNode[MClassDef, AClassdef] */
+116, /* nullable HashMapNode[String, nullable ModulePath] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath = {
 0, /* dummy */
 {
-&type_model__MClassDef, /* HashMapNode#0: MClassDef */
-&type_parser_nodes__AClassdef, /* HashMapNode#1: AClassdef */
-&type_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* N: HashMapNode[MClassDef, AClassdef] */
-&type_model__MClassDef, /* HashNode#0: MClassDef */
+&type_string__String, /* HashMapNode#0: String */
+&type_nullable_modelbuilder__ModulePath, /* HashMapNode#1: nullable ModulePath */
+&type_hash_collection__HashMapNodestring__Stringnullable_modelbuilder__ModulePath, /* N: HashMapNode[String, nullable ModulePath] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type HashMapIterator[MClassDef, AClassdef] */
-const struct type type_hash_collection__HashMapIteratormodel__MClassDefparser_nodes__AClassdef = {
-1453,
-"HashMapIterator[MClassDef, AClassdef]", /* class_name_string */
+/* runtime type HashMapIterator[String, nullable ModulePath] */
+const struct type type_hash_collection__HashMapIteratorstring__Stringnullable_modelbuilder__ModulePath = {
+1488,
+"HashMapIterator[String, nullable ModulePath]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapIteratormodel__MClassDefparser_nodes__AClassdef,
+&resolution_table_hash_collection__HashMapIteratorstring__Stringnullable_modelbuilder__ModulePath,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-303, /* MapIterator[MClassDef, AClassdef] */
-1453, /* HashMapIterator[MClassDef, AClassdef] */
+314, /* MapIterator[String, nullable ModulePath] */
+1488, /* HashMapIterator[String, nullable ModulePath] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassDefparser_nodes__AClassdef = {
+const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringnullable_modelbuilder__ModulePath = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassDefparser_nodes__AClassdef, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MClassDef, AClassdef] */
+&type_hash_collection__HashMapstring__Stringnullable_modelbuilder__ModulePath, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, nullable ModulePath] */
 }
 };
-/* runtime type MapIterator[MClassDef, AClassdef] */
-const struct type type_abstract_collection__MapIteratormodel__MClassDefparser_nodes__AClassdef = {
-303,
-"MapIterator[MClassDef, AClassdef]", /* class_name_string */
+/* runtime type MapIterator[String, nullable ModulePath] */
+const struct type type_abstract_collection__MapIteratorstring__Stringnullable_modelbuilder__ModulePath = {
+314,
+"MapIterator[String, nullable ModulePath]", /* class_name_string */
 2,
 0,
 NULL,
@@ -6088,179 +6289,171 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-303, /* MapIterator[MClassDef, AClassdef] */
+314, /* MapIterator[String, nullable ModulePath] */
 },
 };
-/* runtime type HashMapKeys[MPropDef, APropdef] */
-const struct type type_hash_collection__HashMapKeysmodel__MPropDefparser_nodes__APropdef = {
-2350,
-"HashMapKeys[MPropDef, APropdef]", /* class_name_string */
+/* runtime type HashMapKeys[String, nullable MGroup] */
+const struct type type_hash_collection__HashMapKeysstring__Stringnullable_mproject__MGroup = {
+1847,
+"HashMapKeys[String, nullable MGroup]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel__MPropDefparser_nodes__APropdef,
-9,
+&resolution_table_hash_collection__HashMapKeysstring__Stringnullable_mproject__MGroup,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-188, /* Collection[nullable MPropDef] */
-2350, /* HashMapKeys[MPropDef, APropdef] */
-164, /* Collection[Object] */
-590, /* Collection[PropertyLayoutElement] */
--1, /* empty */
--1, /* empty */
-1920, /* Collection[MPropDef] */
+631, /* Collection[String] */
+1847, /* HashMapKeys[String, nullable MGroup] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel__MPropDefparser_nodes__APropdef = {
+const struct types resolution_table_hash_collection__HashMapKeysstring__Stringnullable_mproject__MGroup = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MPropDefparser_nodes__APropdef, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MPropDef, APropdef] */
-&type_abstract_collection__MapKeysIteratormodel__MPropDefparser_nodes__APropdef, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MPropDef, APropdef] */
+&type_hash_collection__HashMapstring__Stringnullable_mproject__MGroup, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, nullable MGroup] */
+&type_abstract_collection__MapKeysIteratorstring__Stringnullable_mproject__MGroup, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, nullable MGroup] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MPropDef, /* RemovableCollection#0: MPropDef */
+&type_string__String, /* RemovableCollection#0: String */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MPropDef, /* Collection#0: MPropDef */
-&type_abstract_collection__Collectionmodel__MPropDef, /* Collection[Collection#0]: Collection[MPropDef] */
+&type_string__String, /* Collection#0: String */
+&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
 }
 };
-/* runtime type HashMapValues[MPropDef, APropdef] */
-const struct type type_hash_collection__HashMapValuesmodel__MPropDefparser_nodes__APropdef = {
-2351,
-"HashMapValues[MPropDef, APropdef]", /* class_name_string */
+/* runtime type HashMapValues[String, nullable MGroup] */
+const struct type type_hash_collection__HashMapValuesstring__Stringnullable_mproject__MGroup = {
+1489,
+"HashMapValues[String, nullable MGroup]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesmodel__MPropDefparser_nodes__APropdef,
-8,
+&resolution_table_hash_collection__HashMapValuesstring__Stringnullable_mproject__MGroup,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-596, /* Collection[ANode] */
-2351, /* HashMapValues[MPropDef, APropdef] */
-164, /* Collection[Object] */
-1739, /* Collection[Prod] */
--1, /* empty */
-1927, /* Collection[APropdef] */
+227, /* Collection[nullable MGroup] */
+1489, /* HashMapValues[String, nullable MGroup] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel__MPropDefparser_nodes__APropdef = {
+const struct types resolution_table_hash_collection__HashMapValuesstring__Stringnullable_mproject__MGroup = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MPropDefparser_nodes__APropdef, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MPropDef, APropdef] */
-&type_abstract_collection__MapValuesIteratormodel__MPropDefparser_nodes__APropdef, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MPropDef, APropdef] */
+&type_hash_collection__HashMapstring__Stringnullable_mproject__MGroup, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, nullable MGroup] */
+&type_abstract_collection__MapValuesIteratorstring__Stringnullable_mproject__MGroup, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, nullable MGroup] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_parser_nodes__APropdef, /* RemovableCollection#0: APropdef */
+&type_nullable_mproject__MGroup, /* RemovableCollection#0: nullable MGroup */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_parser_nodes__APropdef, /* Collection#0: APropdef */
-&type_abstract_collection__Collectionparser_nodes__APropdef, /* Collection[Collection#0]: Collection[APropdef] */
+&type_nullable_mproject__MGroup, /* Collection#0: nullable MGroup */
+&type_abstract_collection__Collectionnullable_mproject__MGroup, /* Collection[Collection#0]: Collection[nullable MGroup] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MPropDef, APropdef]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
-304,
-"NativeArray[nullable HashMapNode[MPropDef, APropdef]]", /* class_name_string */
+/* runtime type NativeArray[nullable HashMapNode[String, nullable MGroup]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup = {
+315,
+"NativeArray[nullable HashMapNode[String, nullable MGroup]]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-304, /* NativeArray[nullable HashMapNode[MPropDef, APropdef]] */
+315, /* NativeArray[nullable HashMapNode[String, nullable MGroup]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* NativeArray#0: nullable HashMapNode[MPropDef, APropdef] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MPropDef, APropdef]] */
+&type_nullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup, /* NativeArray#0: nullable HashMapNode[String, nullable MGroup] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, nullable MGroup]] */
 }
 };
-/* runtime type HashMapNode[MPropDef, APropdef] */
-const struct type type_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
-1454,
-"HashMapNode[MPropDef, APropdef]", /* class_name_string */
+/* runtime type HashMapNode[String, nullable MGroup] */
+const struct type type_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup = {
+1490,
+"HashMapNode[String, nullable MGroup]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef,
+&resolution_table_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-115, /* nullable HashMapNode[MPropDef, APropdef] */
-1454, /* HashMapNode[MPropDef, APropdef] */
+117, /* nullable HashMapNode[String, nullable MGroup] */
+1490, /* HashMapNode[String, nullable MGroup] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
+const struct types resolution_table_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup = {
 0, /* dummy */
 {
-&type_model__MPropDef, /* HashMapNode#0: MPropDef */
-&type_parser_nodes__APropdef, /* HashMapNode#1: APropdef */
-&type_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* N: HashMapNode[MPropDef, APropdef] */
-&type_model__MPropDef, /* HashNode#0: MPropDef */
+&type_string__String, /* HashMapNode#0: String */
+&type_nullable_mproject__MGroup, /* HashMapNode#1: nullable MGroup */
+&type_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup, /* N: HashMapNode[String, nullable MGroup] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type nullable HashMapNode[MPropDef, APropdef] */
-const struct type type_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
-115,
-"nullable HashMapNode[MPropDef, APropdef]", /* class_name_string */
+/* runtime type nullable HashMapNode[String, nullable MGroup] */
+const struct type type_nullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup = {
+117,
+"nullable HashMapNode[String, nullable MGroup]", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef,
+&resolution_table_nullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-115, /* nullable HashMapNode[MPropDef, APropdef] */
+117, /* nullable HashMapNode[String, nullable MGroup] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup = {
 0, /* dummy */
 {
-&type_model__MPropDef, /* HashMapNode#0: MPropDef */
-&type_parser_nodes__APropdef, /* HashMapNode#1: APropdef */
-&type_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* N: HashMapNode[MPropDef, APropdef] */
-&type_model__MPropDef, /* HashNode#0: MPropDef */
+&type_string__String, /* HashMapNode#0: String */
+&type_nullable_mproject__MGroup, /* HashMapNode#1: nullable MGroup */
+&type_hash_collection__HashMapNodestring__Stringnullable_mproject__MGroup, /* N: HashMapNode[String, nullable MGroup] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type HashMapIterator[MPropDef, APropdef] */
-const struct type type_hash_collection__HashMapIteratormodel__MPropDefparser_nodes__APropdef = {
-1455,
-"HashMapIterator[MPropDef, APropdef]", /* class_name_string */
+/* runtime type HashMapIterator[String, nullable MGroup] */
+const struct type type_hash_collection__HashMapIteratorstring__Stringnullable_mproject__MGroup = {
+1491,
+"HashMapIterator[String, nullable MGroup]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapIteratormodel__MPropDefparser_nodes__APropdef,
+&resolution_table_hash_collection__HashMapIteratorstring__Stringnullable_mproject__MGroup,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-305, /* MapIterator[MPropDef, APropdef] */
-1455, /* HashMapIterator[MPropDef, APropdef] */
+316, /* MapIterator[String, nullable MGroup] */
+1491, /* HashMapIterator[String, nullable MGroup] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratormodel__MPropDefparser_nodes__APropdef = {
+const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringnullable_mproject__MGroup = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MPropDefparser_nodes__APropdef, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MPropDef, APropdef] */
+&type_hash_collection__HashMapstring__Stringnullable_mproject__MGroup, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, nullable MGroup] */
 }
 };
-/* runtime type MapIterator[MPropDef, APropdef] */
-const struct type type_abstract_collection__MapIteratormodel__MPropDefparser_nodes__APropdef = {
-305,
-"MapIterator[MPropDef, APropdef]", /* class_name_string */
+/* runtime type MapIterator[String, nullable MGroup] */
+const struct type type_abstract_collection__MapIteratorstring__Stringnullable_mproject__MGroup = {
+316,
+"MapIterator[String, nullable MGroup]", /* class_name_string */
 2,
 0,
 NULL,
@@ -6268,1677 +6461,1683 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-305, /* MapIterator[MPropDef, APropdef] */
+316, /* MapIterator[String, nullable MGroup] */
 },
 };
-/* runtime type HashSetNode[MModule] */
-const struct type type_hash_collection__HashSetNodemodel_base__MModule = {
-2065,
-"HashSetNode[MModule]", /* class_name_string */
+/* runtime type ArrayIterator[AModule] */
+const struct type type_array__ArrayIteratorparser_nodes__AModule = {
+2128,
+"ArrayIterator[AModule]", /* class_name_string */
 5,
 0,
-&resolution_table_hash_collection__HashSetNodemodel_base__MModule,
+&resolution_table_array__ArrayIteratorparser_nodes__AModule,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-306, /* nullable HashSetNode[MModule] */
-1456, /* HashSetNode[Object] */
-2065, /* HashSetNode[MModule] */
-},
-};
-const struct types resolution_table_hash_collection__HashSetNodemodel_base__MModule = {
-0, /* dummy */
-{
-&type_model_base__MModule, /* HashSetNode#0: MModule */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel_base__MModule, /* N: HashSetNode[MModule] */
-&type_model_base__MModule, /* HashNode#0: MModule */
-}
-};
-/* runtime type HashSetNode[Object] */
-const struct type type_hash_collection__HashSetNodekernel__Object = {
-1456,
-"HashSetNode[Object]", /* class_name_string */
-4,
-0,
-&resolution_table_hash_collection__HashSetNodekernel__Object,
-5,
-{
-0, /* nullable Object */
-1, /* Object */
-116, /* nullable HashSetNode[Object] */
--1, /* empty */
-1456, /* HashSetNode[Object] */
-},
-};
-const struct types resolution_table_hash_collection__HashSetNodekernel__Object = {
-0, /* dummy */
-{
-&type_kernel__Object, /* HashSetNode#0: Object */
-NULL, /* empty */
-&type_hash_collection__HashSetNodekernel__Object, /* N: HashSetNode[Object] */
-&type_kernel__Object, /* HashNode#0: Object */
-}
-};
-/* runtime type nullable HashSetNode[MModule] */
-const struct type type_nullable_hash_collection__HashSetNodemodel_base__MModule = {
-306,
-"nullable HashSetNode[MModule]", /* class_name_string */
-3,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodemodel_base__MModule,
-4,
-{
-0, /* nullable Object */
--1, /* empty */
-116, /* nullable HashSetNode[Object] */
-306, /* nullable HashSetNode[MModule] */
-},
-};
-const struct types resolution_table_nullable_hash_collection__HashSetNodemodel_base__MModule = {
-0, /* dummy */
-{
-&type_model_base__MModule, /* HashSetNode#0: MModule */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel_base__MModule, /* N: HashSetNode[MModule] */
-&type_model_base__MModule, /* HashNode#0: MModule */
-}
-};
-/* runtime type nullable HashSetNode[Object] */
-const struct type type_nullable_hash_collection__HashSetNodekernel__Object = {
-116,
-"nullable HashSetNode[Object]", /* class_name_string */
-2,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodekernel__Object,
-3,
-{
-0, /* nullable Object */
--1, /* empty */
-116, /* nullable HashSetNode[Object] */
-},
-};
-const struct types resolution_table_nullable_hash_collection__HashSetNodekernel__Object = {
-0, /* dummy */
-{
-&type_kernel__Object, /* HashSetNode#0: Object */
-NULL, /* empty */
-&type_hash_collection__HashSetNodekernel__Object, /* N: HashSetNode[Object] */
-&type_kernel__Object, /* HashNode#0: Object */
-}
-};
-/* runtime type HashSetIterator[MModule] */
-const struct type type_hash_collection__HashSetIteratormodel_base__MModule = {
-1457,
-"HashSetIterator[MModule]", /* class_name_string */
-3,
-0,
-&resolution_table_hash_collection__HashSetIteratormodel_base__MModule,
-4,
-{
-0, /* nullable Object */
-1, /* Object */
-307, /* HashSetIterator[Object] */
-1457, /* HashSetIterator[MModule] */
+289, /* ArrayIterator[Object] */
+1492, /* ArrayIterator[ANode] */
+1848, /* ArrayIterator[Prod] */
+2128, /* ArrayIterator[AModule] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratormodel_base__MModule = {
+const struct types resolution_table_array__ArrayIteratorparser_nodes__AModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel_base__MModule, /* HashSet[HashSetIterator#0]: HashSet[MModule] */
-&type_array__Arraymodel_base__MModule, /* Array[Iterator#0]: Array[MModule] */
+&type_array__AbstractArrayReadparser_nodes__AModule, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[AModule] */
+&type_array__Arrayparser_nodes__AModule, /* Array[Iterator#0]: Array[AModule] */
 }
 };
-/* runtime type HashSetIterator[Object] */
-const struct type type_hash_collection__HashSetIteratorkernel__Object = {
-307,
-"HashSetIterator[Object]", /* class_name_string */
-2,
+/* runtime type ArrayIterator[Prod] */
+const struct type type_array__ArrayIteratorparser_nodes__Prod = {
+1848,
+"ArrayIterator[Prod]", /* class_name_string */
+4,
 0,
-&resolution_table_hash_collection__HashSetIteratorkernel__Object,
-3,
+&resolution_table_array__ArrayIteratorparser_nodes__Prod,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
+289, /* ArrayIterator[Object] */
+1492, /* ArrayIterator[ANode] */
+1848, /* ArrayIterator[Prod] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratorkernel__Object = {
+const struct types resolution_table_array__ArrayIteratorparser_nodes__Prod = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetkernel__Object, /* HashSet[HashSetIterator#0]: HashSet[Object] */
-&type_array__Arraykernel__Object, /* Array[Iterator#0]: Array[Object] */
+&type_array__AbstractArrayReadparser_nodes__Prod, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[Prod] */
+&type_array__Arrayparser_nodes__Prod, /* Array[Iterator#0]: Array[Prod] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[MModule]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel_base__MModule = {
-1458,
-"NativeArray[nullable HashSetNode[MModule]]", /* class_name_string */
+/* runtime type ArrayIterator[ANode] */
+const struct type type_array__ArrayIteratorparser_nodes__ANode = {
+1492,
+"ArrayIterator[ANode]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel_base__MModule,
+&resolution_table_array__ArrayIteratorparser_nodes__ANode,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1458, /* NativeArray[nullable HashSetNode[MModule]] */
+289, /* ArrayIterator[Object] */
+1492, /* ArrayIterator[ANode] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel_base__MModule = {
+const struct types resolution_table_array__ArrayIteratorparser_nodes__ANode = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodemodel_base__MModule, /* NativeArray#0: nullable HashSetNode[MModule] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel_base__MModule, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MModule]] */
+&type_array__AbstractArrayReadparser_nodes__ANode, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[ANode] */
+&type_array__Arrayparser_nodes__ANode, /* Array[Iterator#0]: Array[ANode] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[Object]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object = {
-308,
-"NativeArray[nullable HashSetNode[Object]]", /* class_name_string */
-2,
+/* runtime type NativeArray[AModule] */
+const struct type type_array__NativeArrayparser_nodes__AModule = {
+2129,
+"NativeArray[AModule]", /* class_name_string */
+5,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object,
-3,
+&resolution_table_array__NativeArrayparser_nodes__AModule,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
+193, /* NativeArray[Object] */
+1493, /* NativeArray[ANode] */
+1849, /* NativeArray[Prod] */
+2129, /* NativeArray[AModule] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object = {
+const struct types resolution_table_array__NativeArrayparser_nodes__AModule = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodekernel__Object, /* NativeArray#0: nullable HashSetNode[Object] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[Object]] */
+&type_parser_nodes__AModule, /* NativeArray#0: AModule */
+&type_array__NativeArrayparser_nodes__AModule, /* NativeArray[NativeArray#0]: NativeArray[AModule] */
 }
 };
-/* runtime type ArrayIterator[MClassDef] */
-const struct type type_array__ArrayIteratormodel__MClassDef = {
-1459,
-"ArrayIterator[MClassDef]", /* class_name_string */
-3,
-0,
-&resolution_table_array__ArrayIteratormodel__MClassDef,
+/* runtime type NativeArray[Prod] */
+const struct type type_array__NativeArrayparser_nodes__Prod = {
+1849,
+"NativeArray[Prod]", /* class_name_string */
 4,
+0,
+&resolution_table_array__NativeArrayparser_nodes__Prod,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1459, /* ArrayIterator[MClassDef] */
+193, /* NativeArray[Object] */
+1493, /* NativeArray[ANode] */
+1849, /* NativeArray[Prod] */
 },
 };
-const struct types resolution_table_array__ArrayIteratormodel__MClassDef = {
+const struct types resolution_table_array__NativeArrayparser_nodes__Prod = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadmodel__MClassDef, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MClassDef] */
-&type_array__Arraymodel__MClassDef, /* Array[Iterator#0]: Array[MClassDef] */
+&type_parser_nodes__Prod, /* NativeArray#0: Prod */
+&type_array__NativeArrayparser_nodes__Prod, /* NativeArray[NativeArray#0]: NativeArray[Prod] */
 }
 };
-/* runtime type NativeArray[MClassDef] */
-const struct type type_array__NativeArraymodel__MClassDef = {
-1460,
-"NativeArray[MClassDef]", /* class_name_string */
+/* runtime type NativeArray[ANode] */
+const struct type type_array__NativeArrayparser_nodes__ANode = {
+1493,
+"NativeArray[ANode]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraymodel__MClassDef,
+&resolution_table_array__NativeArrayparser_nodes__ANode,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-1460, /* NativeArray[MClassDef] */
+193, /* NativeArray[Object] */
+1493, /* NativeArray[ANode] */
 },
 };
-const struct types resolution_table_array__NativeArraymodel__MClassDef = {
+const struct types resolution_table_array__NativeArrayparser_nodes__ANode = {
 0, /* dummy */
 {
-&type_model__MClassDef, /* NativeArray#0: MClassDef */
-&type_array__NativeArraymodel__MClassDef, /* NativeArray[NativeArray#0]: NativeArray[MClassDef] */
+&type_parser_nodes__ANode, /* NativeArray#0: ANode */
+&type_array__NativeArrayparser_nodes__ANode, /* NativeArray[NativeArray#0]: NativeArray[ANode] */
 }
 };
-/* runtime type HashMapKeys[MClass, Set[MProperty]] */
-const struct type type_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setmodel__MProperty = {
-2352,
-"HashMapKeys[MClass, Set[MProperty]]", /* class_name_string */
-6,
+/* runtime type HashMapKeys[MModule, AModule] */
+const struct type type_hash_collection__HashMapKeysmmodule__MModuleparser_nodes__AModule = {
+1850,
+"HashMapKeys[MModule, AModule]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setmodel__MProperty,
-7,
+&resolution_table_hash_collection__HashMapKeysmmodule__MModuleparser_nodes__AModule,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-171, /* Collection[nullable MClass] */
-2066, /* HashMapKeys[MClass, Set[PropertyLayoutElement]] */
-164, /* Collection[Object] */
-1733, /* Collection[MClass] */
-2352, /* HashMapKeys[MClass, Set[MProperty]] */
+624, /* Collection[MModule] */
+1850, /* HashMapKeys[MModule, AModule] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setmodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapKeysmmodule__MModuleparser_nodes__AModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MProperty, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MClass, Set[MProperty]] */
-&type_abstract_collection__MapKeysIteratormodel__MClassabstract_collection__Setmodel__MProperty, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MClass, Set[MProperty]] */
+&type_hash_collection__HashMapmmodule__MModuleparser_nodes__AModule, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MModule, AModule] */
+&type_abstract_collection__MapKeysIteratormmodule__MModuleparser_nodes__AModule, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MModule, AModule] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MClass, /* RemovableCollection#0: MClass */
+&type_mmodule__MModule, /* RemovableCollection#0: MModule */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MClass, /* Collection#0: MClass */
-&type_abstract_collection__Collectionmodel__MClass, /* Collection[Collection#0]: Collection[MClass] */
+&type_mmodule__MModule, /* Collection#0: MModule */
+&type_abstract_collection__Collectionmmodule__MModule, /* Collection[Collection#0]: Collection[MModule] */
 }
 };
-/* runtime type HashMapKeys[MClass, Set[PropertyLayoutElement]] */
-const struct type type_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-2066,
-"HashMapKeys[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+/* runtime type HashMapValues[MModule, AModule] */
+const struct type type_hash_collection__HashMapValuesmmodule__MModuleparser_nodes__AModule = {
+2413,
+"HashMapValues[MModule, AModule]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
-6,
+&resolution_table_hash_collection__HashMapValuesmmodule__MModuleparser_nodes__AModule,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-171, /* Collection[nullable MClass] */
-2066, /* HashMapKeys[MClass, Set[PropertyLayoutElement]] */
-164, /* Collection[Object] */
-1733, /* Collection[MClass] */
+632, /* Collection[ANode] */
+2413, /* HashMapValues[MModule, AModule] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
+-1, /* empty */
+1979, /* Collection[AModule] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_hash_collection__HashMapValuesmmodule__MModuleparser_nodes__AModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MClass, Set[PropertyLayoutElement]] */
-&type_abstract_collection__MapKeysIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MClass, Set[PropertyLayoutElement]] */
+&type_hash_collection__HashMapmmodule__MModuleparser_nodes__AModule, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MModule, AModule] */
+&type_abstract_collection__MapValuesIteratormmodule__MModuleparser_nodes__AModule, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MModule, AModule] */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MClass, /* RemovableCollection#0: MClass */
+&type_parser_nodes__AModule, /* RemovableCollection#0: AModule */
 NULL, /* empty */
 NULL, /* empty */
 NULL, /* empty */
-&type_model__MClass, /* Collection#0: MClass */
-&type_abstract_collection__Collectionmodel__MClass, /* Collection[Collection#0]: Collection[MClass] */
+&type_parser_nodes__AModule, /* Collection#0: AModule */
+&type_abstract_collection__Collectionparser_nodes__AModule, /* Collection[Collection#0]: Collection[AModule] */
 }
 };
-/* runtime type HashMapValues[MClass, Set[MProperty]] */
-const struct type type_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setmodel__MProperty = {
-2353,
-"HashMapValues[MClass, Set[MProperty]]", /* class_name_string */
-6,
+/* runtime type NativeArray[nullable HashMapNode[MModule, AModule]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule = {
+317,
+"NativeArray[nullable HashMapNode[MModule, AModule]]", /* class_name_string */
+2,
 0,
-&resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setmodel__MProperty,
-7,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-1461, /* Collection[Set[PropertyLayoutElement]] */
-1795, /* HashMapValues[MClass, Set[PropertyLayoutElement]] */
-164, /* Collection[Object] */
-1796, /* Collection[Set[MProperty]] */
-2353, /* HashMapValues[MClass, Set[MProperty]] */
+317, /* NativeArray[nullable HashMapNode[MModule, AModule]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setmodel__MProperty = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MProperty, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MClass, Set[MProperty]] */
-&type_abstract_collection__MapValuesIteratormodel__MClassabstract_collection__Setmodel__MProperty, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MClass, Set[MProperty]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_abstract_collection__Setmodel__MProperty, /* RemovableCollection#0: Set[MProperty] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_abstract_collection__Setmodel__MProperty, /* Collection#0: Set[MProperty] */
-&type_abstract_collection__Collectionabstract_collection__Setmodel__MProperty, /* Collection[Collection#0]: Collection[Set[MProperty]] */
+&type_nullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule, /* NativeArray#0: nullable HashMapNode[MModule, AModule] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MModule, AModule]] */
 }
 };
-/* runtime type HashMapValues[MClass, Set[PropertyLayoutElement]] */
-const struct type type_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-1795,
-"HashMapValues[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+/* runtime type HashMapNode[MModule, AModule] */
+const struct type type_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule = {
+1494,
+"HashMapNode[MModule, AModule]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
-5,
+&resolution_table_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-1461, /* Collection[Set[PropertyLayoutElement]] */
-1795, /* HashMapValues[MClass, Set[PropertyLayoutElement]] */
-164, /* Collection[Object] */
+118, /* nullable HashMapNode[MModule, AModule] */
+1494, /* HashMapNode[MModule, AModule] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MClass, Set[PropertyLayoutElement]] */
-&type_abstract_collection__MapValuesIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MClass, Set[PropertyLayoutElement]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* RemovableCollection#0: Set[PropertyLayoutElement] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* Collection#0: Set[PropertyLayoutElement] */
-&type_abstract_collection__Collectionabstract_collection__Setlayout_builders__PropertyLayoutElement, /* Collection[Collection#0]: Collection[Set[PropertyLayoutElement]] */
+&type_mmodule__MModule, /* HashMapNode#0: MModule */
+&type_parser_nodes__AModule, /* HashMapNode#1: AModule */
+&type_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule, /* N: HashMapNode[MModule, AModule] */
+&type_mmodule__MModule, /* HashNode#0: MModule */
 }
 };
-/* runtime type Collection[Set[MProperty]] */
-const struct type type_abstract_collection__Collectionabstract_collection__Setmodel__MProperty = {
-1796,
-"Collection[Set[MProperty]]", /* class_name_string */
-5,
-0,
-NULL,
-6,
+/* runtime type nullable HashMapNode[MModule, AModule] */
+const struct type type_nullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule = {
+118,
+"nullable HashMapNode[MModule, AModule]", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-1461, /* Collection[Set[PropertyLayoutElement]] */
 -1, /* empty */
-164, /* Collection[Object] */
-1796, /* Collection[Set[MProperty]] */
+118, /* nullable HashMapNode[MModule, AModule] */
 },
 };
-/* runtime type Collection[Set[PropertyLayoutElement]] */
-const struct type type_abstract_collection__Collectionabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-1461,
-"Collection[Set[PropertyLayoutElement]]", /* class_name_string */
-2,
-0,
-NULL,
-5,
+const struct types resolution_table_nullable_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-1461, /* Collection[Set[PropertyLayoutElement]] */
--1, /* empty */
-164, /* Collection[Object] */
-},
+&type_mmodule__MModule, /* HashMapNode#0: MModule */
+&type_parser_nodes__AModule, /* HashMapNode#1: AModule */
+&type_hash_collection__HashMapNodemmodule__MModuleparser_nodes__AModule, /* N: HashMapNode[MModule, AModule] */
+&type_mmodule__MModule, /* HashNode#0: MModule */
+}
 };
-/* runtime type NativeArray[nullable HashMapNode[MClass, Set[MProperty]]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
-1462,
-"NativeArray[nullable HashMapNode[MClass, Set[MProperty]]]", /* class_name_string */
+/* runtime type HashMapIterator[MModule, AModule] */
+const struct type type_hash_collection__HashMapIteratormmodule__MModuleparser_nodes__AModule = {
+1495,
+"HashMapIterator[MModule, AModule]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty,
+&resolution_table_hash_collection__HashMapIteratormmodule__MModuleparser_nodes__AModule,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-309, /* NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
-1462, /* NativeArray[nullable HashMapNode[MClass, Set[MProperty]]] */
+318, /* MapIterator[MModule, AModule] */
+1495, /* HashMapIterator[MModule, AModule] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapIteratormmodule__MModuleparser_nodes__AModule = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* NativeArray#0: nullable HashMapNode[MClass, Set[MProperty]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MClass, Set[MProperty]]] */
+&type_hash_collection__HashMapmmodule__MModuleparser_nodes__AModule, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MModule, AModule] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-309,
-"NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]]", /* class_name_string */
+/* runtime type MapIterator[MModule, AModule] */
+const struct type type_abstract_collection__MapIteratormmodule__MModuleparser_nodes__AModule = {
+318,
+"MapIterator[MModule, AModule]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
+NULL,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-309, /* NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
+318, /* MapIterator[MModule, AModule] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+/* runtime type HashMapKeys[MClassDef, AClassdef] */
+const struct type type_hash_collection__HashMapKeysmodel__MClassDefparser_nodes__AClassdef = {
+1851,
+"HashMapKeys[MClassDef, AClassdef]", /* class_name_string */
+3,
+0,
+&resolution_table_hash_collection__HashMapKeysmodel__MClassDefparser_nodes__AClassdef,
+5,
+{
+0, /* nullable Object */
+1, /* Object */
+627, /* Collection[MClassDef] */
+1851, /* HashMapKeys[MClassDef, AClassdef] */
+170, /* Collection[Object] */
+},
+};
+const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassDefparser_nodes__AClassdef = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* NativeArray#0: nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
+&type_hash_collection__HashMapmodel__MClassDefparser_nodes__AClassdef, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MClassDef, AClassdef] */
+&type_abstract_collection__MapKeysIteratormodel__MClassDefparser_nodes__AClassdef, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MClassDef, AClassdef] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MClassDef, /* RemovableCollection#0: MClassDef */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MClassDef, /* Collection#0: MClassDef */
+&type_abstract_collection__Collectionmodel__MClassDef, /* Collection[Collection#0]: Collection[MClassDef] */
 }
 };
-/* runtime type HashMapNode[MClass, Set[MProperty]] */
-const struct type type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
-2067,
-"HashMapNode[MClass, Set[MProperty]]", /* class_name_string */
-6,
+/* runtime type HashMapValues[MClassDef, AClassdef] */
+const struct type type_hash_collection__HashMapValuesmodel__MClassDefparser_nodes__AClassdef = {
+2414,
+"HashMapValues[MClassDef, AClassdef]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty,
-7,
+&resolution_table_hash_collection__HashMapValuesmodel__MClassDefparser_nodes__AClassdef,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-117, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
-310, /* nullable HashMapNode[MClass, Set[MProperty]] */
-1463, /* HashMapNode[MClass, Set[PropertyLayoutElement]] */
+632, /* Collection[ANode] */
+2414, /* HashMapValues[MClassDef, AClassdef] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
 -1, /* empty */
-2067, /* HashMapNode[MClass, Set[MProperty]] */
+1989, /* Collection[AClassdef] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassDefparser_nodes__AClassdef = {
 0, /* dummy */
 {
-&type_model__MClass, /* HashMapNode#0: MClass */
-&type_abstract_collection__Setmodel__MProperty, /* HashMapNode#1: Set[MProperty] */
-&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* N: HashMapNode[MClass, Set[MProperty]] */
-&type_model__MClass, /* HashNode#0: MClass */
+&type_hash_collection__HashMapmodel__MClassDefparser_nodes__AClassdef, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MClassDef, AClassdef] */
+&type_abstract_collection__MapValuesIteratormodel__MClassDefparser_nodes__AClassdef, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MClassDef, AClassdef] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_parser_nodes__AClassdef, /* RemovableCollection#0: AClassdef */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_parser_nodes__AClassdef, /* Collection#0: AClassdef */
+&type_abstract_collection__Collectionparser_nodes__AClassdef, /* Collection[Collection#0]: Collection[AClassdef] */
 }
 };
-/* runtime type HashMapNode[MClass, Set[PropertyLayoutElement]] */
-const struct type type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-1463,
-"HashMapNode[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
-4,
+/* runtime type NativeArray[nullable HashMapNode[MClassDef, AClassdef]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
+319,
+"NativeArray[nullable HashMapNode[MClassDef, AClassdef]]", /* class_name_string */
+2,
 0,
-&resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
-5,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-117, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
--1, /* empty */
-1463, /* HashMapNode[MClass, Set[PropertyLayoutElement]] */
+319, /* NativeArray[nullable HashMapNode[MClassDef, AClassdef]] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
 0, /* dummy */
 {
-&type_model__MClass, /* HashMapNode#0: MClass */
-&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMapNode#1: Set[PropertyLayoutElement] */
-&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* N: HashMapNode[MClass, Set[PropertyLayoutElement]] */
-&type_model__MClass, /* HashNode#0: MClass */
+&type_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* NativeArray#0: nullable HashMapNode[MClassDef, AClassdef] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MClassDef, AClassdef]] */
 }
 };
-/* runtime type nullable HashMapNode[MClass, Set[MProperty]] */
-const struct type type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
-310,
-"nullable HashMapNode[MClass, Set[MProperty]]", /* class_name_string */
+/* runtime type HashMapNode[MClassDef, AClassdef] */
+const struct type type_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
+1496,
+"HashMapNode[MClassDef, AClassdef]", /* class_name_string */
 3,
-1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty,
+0,
+&resolution_table_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef,
 4,
 {
 0, /* nullable Object */
--1, /* empty */
-117, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
-310, /* nullable HashMapNode[MClass, Set[MProperty]] */
+1, /* Object */
+119, /* nullable HashMapNode[MClassDef, AClassdef] */
+1496, /* HashMapNode[MClassDef, AClassdef] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
 0, /* dummy */
 {
-&type_model__MClass, /* HashMapNode#0: MClass */
-&type_abstract_collection__Setmodel__MProperty, /* HashMapNode#1: Set[MProperty] */
-&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* N: HashMapNode[MClass, Set[MProperty]] */
-&type_model__MClass, /* HashNode#0: MClass */
+&type_model__MClassDef, /* HashMapNode#0: MClassDef */
+&type_parser_nodes__AClassdef, /* HashMapNode#1: AClassdef */
+&type_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* N: HashMapNode[MClassDef, AClassdef] */
+&type_model__MClassDef, /* HashNode#0: MClassDef */
 }
 };
-/* runtime type nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
-const struct type type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-117,
-"nullable HashMapNode[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+/* runtime type nullable HashMapNode[MClassDef, AClassdef] */
+const struct type type_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
+119,
+"nullable HashMapNode[MClassDef, AClassdef]", /* class_name_string */
 2,
 1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
+&resolution_table_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef,
 3,
 {
 0, /* nullable Object */
 -1, /* empty */
-117, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
+119, /* nullable HashMapNode[MClassDef, AClassdef] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef = {
 0, /* dummy */
 {
-&type_model__MClass, /* HashMapNode#0: MClass */
-&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMapNode#1: Set[PropertyLayoutElement] */
-&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* N: HashMapNode[MClass, Set[PropertyLayoutElement]] */
-&type_model__MClass, /* HashNode#0: MClass */
+&type_model__MClassDef, /* HashMapNode#0: MClassDef */
+&type_parser_nodes__AClassdef, /* HashMapNode#1: AClassdef */
+&type_hash_collection__HashMapNodemodel__MClassDefparser_nodes__AClassdef, /* N: HashMapNode[MClassDef, AClassdef] */
+&type_model__MClassDef, /* HashNode#0: MClassDef */
 }
 };
-/* runtime type HashMapIterator[MClass, Set[MProperty]] */
-const struct type type_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setmodel__MProperty = {
-2068,
-"HashMapIterator[MClass, Set[MProperty]]", /* class_name_string */
-6,
+/* runtime type HashMapIterator[MClassDef, AClassdef] */
+const struct type type_hash_collection__HashMapIteratormodel__MClassDefparser_nodes__AClassdef = {
+1497,
+"HashMapIterator[MClassDef, AClassdef]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setmodel__MProperty,
-7,
+&resolution_table_hash_collection__HashMapIteratormodel__MClassDefparser_nodes__AClassdef,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-311, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
-1464, /* HashMapIterator[MClass, Set[PropertyLayoutElement]] */
-1465, /* MapIterator[MClass, Set[MProperty]] */
--1, /* empty */
-2068, /* HashMapIterator[MClass, Set[MProperty]] */
+320, /* MapIterator[MClassDef, AClassdef] */
+1497, /* HashMapIterator[MClassDef, AClassdef] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setmodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassDefparser_nodes__AClassdef = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MProperty, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MClass, Set[MProperty]] */
+&type_hash_collection__HashMapmodel__MClassDefparser_nodes__AClassdef, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MClassDef, AClassdef] */
 }
 };
-/* runtime type HashMapIterator[MClass, Set[PropertyLayoutElement]] */
-const struct type type_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-1464,
-"HashMapIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+/* runtime type MapIterator[MClassDef, AClassdef] */
+const struct type type_abstract_collection__MapIteratormodel__MClassDefparser_nodes__AClassdef = {
+320,
+"MapIterator[MClassDef, AClassdef]", /* class_name_string */
+2,
+0,
+NULL,
+3,
+{
+0, /* nullable Object */
+1, /* Object */
+320, /* MapIterator[MClassDef, AClassdef] */
+},
+};
+/* runtime type HashMapKeys[MPropDef, APropdef] */
+const struct type type_hash_collection__HashMapKeysmodel__MPropDefparser_nodes__APropdef = {
+2415,
+"HashMapKeys[MPropDef, APropdef]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
-4,
+&resolution_table_hash_collection__HashMapKeysmodel__MPropDefparser_nodes__APropdef,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-311, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
-1464, /* HashMapIterator[MClass, Set[PropertyLayoutElement]] */
+202, /* Collection[nullable MPropDef] */
+2415, /* HashMapKeys[MPropDef, APropdef] */
+170, /* Collection[Object] */
+626, /* Collection[PropertyLayoutElement] */
+-1, /* empty */
+-1, /* empty */
+1985, /* Collection[MPropDef] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_hash_collection__HashMapKeysmodel__MPropDefparser_nodes__APropdef = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MClass, Set[PropertyLayoutElement]] */
+&type_hash_collection__HashMapmodel__MPropDefparser_nodes__APropdef, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MPropDef, APropdef] */
+&type_abstract_collection__MapKeysIteratormodel__MPropDefparser_nodes__APropdef, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MPropDef, APropdef] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MPropDef, /* RemovableCollection#0: MPropDef */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MPropDef, /* Collection#0: MPropDef */
+&type_abstract_collection__Collectionmodel__MPropDef, /* Collection[Collection#0]: Collection[MPropDef] */
 }
 };
-/* runtime type MapIterator[MClass, Set[MProperty]] */
-const struct type type_abstract_collection__MapIteratormodel__MClassabstract_collection__Setmodel__MProperty = {
-1465,
-"MapIterator[MClass, Set[MProperty]]", /* class_name_string */
-4,
+/* runtime type HashMapValues[MPropDef, APropdef] */
+const struct type type_hash_collection__HashMapValuesmodel__MPropDefparser_nodes__APropdef = {
+2416,
+"HashMapValues[MPropDef, APropdef]", /* class_name_string */
+3,
 0,
-NULL,
-5,
+&resolution_table_hash_collection__HashMapValuesmodel__MPropDefparser_nodes__APropdef,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-311, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
+632, /* Collection[ANode] */
+2416, /* HashMapValues[MPropDef, APropdef] */
+170, /* Collection[Object] */
+1793, /* Collection[Prod] */
 -1, /* empty */
-1465, /* MapIterator[MClass, Set[MProperty]] */
+1990, /* Collection[APropdef] */
 },
 };
-/* runtime type MapIterator[MClass, Set[PropertyLayoutElement]] */
-const struct type type_abstract_collection__MapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
-311,
-"MapIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+const struct types resolution_table_hash_collection__HashMapValuesmodel__MPropDefparser_nodes__APropdef = {
+0, /* dummy */
+{
+&type_hash_collection__HashMapmodel__MPropDefparser_nodes__APropdef, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MPropDef, APropdef] */
+&type_abstract_collection__MapValuesIteratormodel__MPropDefparser_nodes__APropdef, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MPropDef, APropdef] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_parser_nodes__APropdef, /* RemovableCollection#0: APropdef */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_parser_nodes__APropdef, /* Collection#0: APropdef */
+&type_abstract_collection__Collectionparser_nodes__APropdef, /* Collection[Collection#0]: Collection[APropdef] */
+}
+};
+/* runtime type NativeArray[nullable HashMapNode[MPropDef, APropdef]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
+321,
+"NativeArray[nullable HashMapNode[MPropDef, APropdef]]", /* class_name_string */
 2,
 0,
-NULL,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-311, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
+321, /* NativeArray[nullable HashMapNode[MPropDef, APropdef]] */
 },
 };
-/* runtime type ArrayIterator[Option] */
-const struct type type_array__ArrayIteratoropts__Option = {
-1466,
-"ArrayIterator[Option]", /* class_name_string */
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
+0, /* dummy */
+{
+&type_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* NativeArray#0: nullable HashMapNode[MPropDef, APropdef] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MPropDef, APropdef]] */
+}
+};
+/* runtime type HashMapNode[MPropDef, APropdef] */
+const struct type type_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
+1498,
+"HashMapNode[MPropDef, APropdef]", /* class_name_string */
 3,
 0,
-&resolution_table_array__ArrayIteratoropts__Option,
+&resolution_table_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1466, /* ArrayIterator[Option] */
+120, /* nullable HashMapNode[MPropDef, APropdef] */
+1498, /* HashMapNode[MPropDef, APropdef] */
 },
 };
-const struct types resolution_table_array__ArrayIteratoropts__Option = {
+const struct types resolution_table_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadopts__Option, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[Option] */
-&type_array__Arrayopts__Option, /* Array[Iterator#0]: Array[Option] */
+&type_model__MPropDef, /* HashMapNode#0: MPropDef */
+&type_parser_nodes__APropdef, /* HashMapNode#1: APropdef */
+&type_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* N: HashMapNode[MPropDef, APropdef] */
+&type_model__MPropDef, /* HashNode#0: MPropDef */
 }
 };
-/* runtime type HashMapKeys[String, Option] */
-const struct type type_hash_collection__HashMapKeysstring__Stringopts__Option = {
-1797,
-"HashMapKeys[String, Option]", /* class_name_string */
+/* runtime type nullable HashMapNode[MPropDef, APropdef] */
+const struct type type_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
+120,
+"nullable HashMapNode[MPropDef, APropdef]", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef,
 3,
-0,
-&resolution_table_hash_collection__HashMapKeysstring__Stringopts__Option,
-5,
 {
 0, /* nullable Object */
-1, /* Object */
-595, /* Collection[String] */
-1797, /* HashMapKeys[String, Option] */
-164, /* Collection[Object] */
+-1, /* empty */
+120, /* nullable HashMapNode[MPropDef, APropdef] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysstring__Stringopts__Option = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringopts__Option, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Option] */
-&type_abstract_collection__MapKeysIteratorstring__Stringopts__Option, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Option] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* RemovableCollection#0: String */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* Collection#0: String */
-&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
+&type_model__MPropDef, /* HashMapNode#0: MPropDef */
+&type_parser_nodes__APropdef, /* HashMapNode#1: APropdef */
+&type_hash_collection__HashMapNodemodel__MPropDefparser_nodes__APropdef, /* N: HashMapNode[MPropDef, APropdef] */
+&type_model__MPropDef, /* HashNode#0: MPropDef */
 }
 };
-/* runtime type HashMapValues[String, Option] */
-const struct type type_hash_collection__HashMapValuesstring__Stringopts__Option = {
-1798,
-"HashMapValues[String, Option]", /* class_name_string */
+/* runtime type HashMapIterator[MPropDef, APropdef] */
+const struct type type_hash_collection__HashMapIteratormodel__MPropDefparser_nodes__APropdef = {
+1499,
+"HashMapIterator[MPropDef, APropdef]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesstring__Stringopts__Option,
-5,
+&resolution_table_hash_collection__HashMapIteratormodel__MPropDefparser_nodes__APropdef,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-599, /* Collection[Option] */
-1798, /* HashMapValues[String, Option] */
-164, /* Collection[Object] */
+322, /* MapIterator[MPropDef, APropdef] */
+1499, /* HashMapIterator[MPropDef, APropdef] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesstring__Stringopts__Option = {
+const struct types resolution_table_hash_collection__HashMapIteratormodel__MPropDefparser_nodes__APropdef = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringopts__Option, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Option] */
-&type_abstract_collection__MapValuesIteratorstring__Stringopts__Option, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Option] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_opts__Option, /* RemovableCollection#0: Option */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_opts__Option, /* Collection#0: Option */
-&type_abstract_collection__Collectionopts__Option, /* Collection[Collection#0]: Collection[Option] */
+&type_hash_collection__HashMapmodel__MPropDefparser_nodes__APropdef, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MPropDef, APropdef] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[String, Option]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option = {
-312,
-"NativeArray[nullable HashMapNode[String, Option]]", /* class_name_string */
+/* runtime type MapIterator[MPropDef, APropdef] */
+const struct type type_abstract_collection__MapIteratormodel__MPropDefparser_nodes__APropdef = {
+322,
+"MapIterator[MPropDef, APropdef]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option,
+NULL,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-312, /* NativeArray[nullable HashMapNode[String, Option]] */
+322, /* MapIterator[MPropDef, APropdef] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option = {
-0, /* dummy */
-{
-&type_nullable_hash_collection__HashMapNodestring__Stringopts__Option, /* NativeArray#0: nullable HashMapNode[String, Option] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Option]] */
-}
-};
-/* runtime type HashMapNode[String, Option] */
-const struct type type_hash_collection__HashMapNodestring__Stringopts__Option = {
-1467,
-"HashMapNode[String, Option]", /* class_name_string */
-3,
+/* runtime type HashSetNode[MModule] */
+const struct type type_hash_collection__HashSetNodemmodule__MModule = {
+2130,
+"HashSetNode[MModule]", /* class_name_string */
+5,
 0,
-&resolution_table_hash_collection__HashMapNodestring__Stringopts__Option,
-4,
+&resolution_table_hash_collection__HashSetNodemmodule__MModule,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-118, /* nullable HashMapNode[String, Option] */
-1467, /* HashMapNode[String, Option] */
+121, /* nullable HashSetNode[Object] */
+323, /* nullable HashSetNode[MModule] */
+1500, /* HashSetNode[Object] */
+2130, /* HashSetNode[MModule] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodestring__Stringopts__Option = {
+const struct types resolution_table_hash_collection__HashSetNodemmodule__MModule = {
 0, /* dummy */
 {
-&type_string__String, /* HashMapNode#0: String */
-&type_opts__Option, /* HashMapNode#1: Option */
-&type_hash_collection__HashMapNodestring__Stringopts__Option, /* N: HashMapNode[String, Option] */
-&type_string__String, /* HashNode#0: String */
+&type_mmodule__MModule, /* HashSetNode#0: MModule */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemmodule__MModule, /* N: HashSetNode[MModule] */
+&type_mmodule__MModule, /* HashNode#0: MModule */
 }
 };
-/* runtime type nullable HashMapNode[String, Option] */
-const struct type type_nullable_hash_collection__HashMapNodestring__Stringopts__Option = {
-118,
-"nullable HashMapNode[String, Option]", /* class_name_string */
-2,
-1,
-&resolution_table_nullable_hash_collection__HashMapNodestring__Stringopts__Option,
-3,
+/* runtime type HashSetNode[Object] */
+const struct type type_hash_collection__HashSetNodekernel__Object = {
+1500,
+"HashSetNode[Object]", /* class_name_string */
+4,
+0,
+&resolution_table_hash_collection__HashSetNodekernel__Object,
+5,
 {
 0, /* nullable Object */
+1, /* Object */
+121, /* nullable HashSetNode[Object] */
 -1, /* empty */
-118, /* nullable HashMapNode[String, Option] */
+1500, /* HashSetNode[Object] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringopts__Option = {
+const struct types resolution_table_hash_collection__HashSetNodekernel__Object = {
 0, /* dummy */
 {
-&type_string__String, /* HashMapNode#0: String */
-&type_opts__Option, /* HashMapNode#1: Option */
-&type_hash_collection__HashMapNodestring__Stringopts__Option, /* N: HashMapNode[String, Option] */
-&type_string__String, /* HashNode#0: String */
+&type_kernel__Object, /* HashSetNode#0: Object */
+NULL, /* empty */
+&type_hash_collection__HashSetNodekernel__Object, /* N: HashSetNode[Object] */
+&type_kernel__Object, /* HashNode#0: Object */
 }
 };
-/* runtime type HashMapIterator[String, Option] */
-const struct type type_hash_collection__HashMapIteratorstring__Stringopts__Option = {
-1468,
-"HashMapIterator[String, Option]", /* class_name_string */
+/* runtime type nullable HashSetNode[MModule] */
+const struct type type_nullable_hash_collection__HashSetNodemmodule__MModule = {
+323,
+"nullable HashSetNode[MModule]", /* class_name_string */
 3,
-0,
-&resolution_table_hash_collection__HashMapIteratorstring__Stringopts__Option,
+1,
+&resolution_table_nullable_hash_collection__HashSetNodemmodule__MModule,
 4,
 {
 0, /* nullable Object */
-1, /* Object */
-313, /* MapIterator[String, Option] */
-1468, /* HashMapIterator[String, Option] */
+-1, /* empty */
+121, /* nullable HashSetNode[Object] */
+323, /* nullable HashSetNode[MModule] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringopts__Option = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodemmodule__MModule = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapstring__Stringopts__Option, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Option] */
+&type_mmodule__MModule, /* HashSetNode#0: MModule */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemmodule__MModule, /* N: HashSetNode[MModule] */
+&type_mmodule__MModule, /* HashNode#0: MModule */
 }
 };
-/* runtime type MapIterator[String, Option] */
-const struct type type_abstract_collection__MapIteratorstring__Stringopts__Option = {
-313,
-"MapIterator[String, Option]", /* class_name_string */
+/* runtime type nullable HashSetNode[Object] */
+const struct type type_nullable_hash_collection__HashSetNodekernel__Object = {
+121,
+"nullable HashSetNode[Object]", /* class_name_string */
 2,
-0,
-NULL,
+1,
+&resolution_table_nullable_hash_collection__HashSetNodekernel__Object,
 3,
 {
 0, /* nullable Object */
-1, /* Object */
-313, /* MapIterator[String, Option] */
+-1, /* empty */
+121, /* nullable HashSetNode[Object] */
 },
 };
-/* runtime type ArrayIterator[Char] */
-const struct type type_array__ArrayIteratorkernel__Char = {
-1469,
-"ArrayIterator[Char]", /* class_name_string */
+const struct types resolution_table_nullable_hash_collection__HashSetNodekernel__Object = {
+0, /* dummy */
+{
+&type_kernel__Object, /* HashSetNode#0: Object */
+NULL, /* empty */
+&type_hash_collection__HashSetNodekernel__Object, /* N: HashSetNode[Object] */
+&type_kernel__Object, /* HashNode#0: Object */
+}
+};
+/* runtime type HashSetIterator[MModule] */
+const struct type type_hash_collection__HashSetIteratormmodule__MModule = {
+1501,
+"HashSetIterator[MModule]", /* class_name_string */
 3,
 0,
-&resolution_table_array__ArrayIteratorkernel__Char,
+&resolution_table_hash_collection__HashSetIteratormmodule__MModule,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1469, /* ArrayIterator[Char] */
+324, /* HashSetIterator[Object] */
+1501, /* HashSetIterator[MModule] */
 },
 };
-const struct types resolution_table_array__ArrayIteratorkernel__Char = {
+const struct types resolution_table_hash_collection__HashSetIteratormmodule__MModule = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadkernel__Char, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[Char] */
-&type_array__Arraykernel__Char, /* Array[Iterator#0]: Array[Char] */
+&type_hash_collection__HashSetmmodule__MModule, /* HashSet[HashSetIterator#0]: HashSet[MModule] */
+&type_array__Arraymmodule__MModule, /* Array[Iterator#0]: Array[MModule] */
 }
 };
-/* runtime type Array[Char] */
-const struct type type_array__Arraykernel__Char = {
-2547,
-"Array[Char]", /* class_name_string */
+/* runtime type HashSetIterator[Object] */
+const struct type type_hash_collection__HashSetIteratorkernel__Object = {
+324,
+"HashSetIterator[Object]", /* class_name_string */
 2,
 0,
-&resolution_table_array__Arraykernel__Char,
-10,
+&resolution_table_hash_collection__HashSetIteratorkernel__Object,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-2547, /* Array[Char] */
-163, /* SequenceRead[nullable Object] */
-164, /* Collection[Object] */
-602, /* Collection[Char] */
-1728, /* AbstractArrayRead[Object] */
-1918, /* SequenceRead[Char] */
-2423, /* AbstractArrayRead[Char] */
-1911, /* Array[Object] */
+324, /* HashSetIterator[Object] */
 },
 };
-const struct types resolution_table_array__Arraykernel__Char = {
+const struct types resolution_table_hash_collection__HashSetIteratorkernel__Object = {
 0, /* dummy */
 {
-&type_array__Arraykernel__Char, /* Array[Array#0]: Array[Char] */
-&type_array__NativeArraykernel__Char, /* NativeArray[Array#0]: NativeArray[Char] */
-&type_kernel__Char, /* Sequence#0: Char */
-&type_kernel__Char, /* SimpleCollection#0: Char */
-&type_abstract_collection__Collectionkernel__Char, /* Collection[Array#0]: Collection[Char] */
-&type_kernel__Char, /* Array#0: Char */
-&type_array__NativeArraykernel__Char, /* NativeArray[ArrayCapable#0]: NativeArray[Char] */
-&type_kernel__Char, /* AbstractArray#0: Char */
-&type_kernel__Char, /* RemovableCollection#0: Char */
-&type_abstract_collection__Collectionkernel__Char, /* Collection[Sequence#0]: Collection[Char] */
-&type_array__Arraykernel__Char, /* Array[Sequence#0]: Array[Char] */
-&type_abstract_collection__Collectionkernel__Char, /* Collection[SimpleCollection#0]: Collection[Char] */
-&type_kernel__Char, /* Collection#0: Char */
-&type_abstract_collection__Collectionkernel__Char, /* Collection[Collection#0]: Collection[Char] */
-&type_kernel__Char, /* SequenceRead#0: Char */
-&type_kernel__Char, /* AbstractArrayRead#0: Char */
-&type_array__Arraykernel__Char, /* Array[AbstractArrayRead#0]: Array[Char] */
-NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[Char] not a live type) */
-&type_array__ArrayIteratorkernel__Char, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[Char] */
+&type_hash_collection__HashSetkernel__Object, /* HashSet[HashSetIterator#0]: HashSet[Object] */
+&type_array__Arraykernel__Object, /* Array[Iterator#0]: Array[Object] */
 }
 };
-/* runtime type HashSetNode[MClassType] */
-const struct type type_hash_collection__HashSetNodemodel__MClassType = {
-2457,
-"HashSetNode[MClassType]", /* class_name_string */
-7,
+/* runtime type NativeArray[nullable HashSetNode[MModule]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemmodule__MModule = {
+1502,
+"NativeArray[nullable HashSetNode[MModule]]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashSetNodemodel__MClassType,
-8,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemmodule__MModule,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-314, /* nullable HashSetNode[MType] */
-1456, /* HashSetNode[Object] */
-1470, /* nullable HashSetNode[MClassType] */
-2069, /* HashSetNode[MType] */
-2457, /* HashSetNode[MClassType] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
+1502, /* NativeArray[nullable HashSetNode[MModule]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodemodel__MClassType = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemmodule__MModule = {
 0, /* dummy */
 {
-&type_model__MClassType, /* HashSetNode#0: MClassType */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MClassType, /* N: HashSetNode[MClassType] */
-&type_model__MClassType, /* HashNode#0: MClassType */
+&type_nullable_hash_collection__HashSetNodemmodule__MModule, /* NativeArray#0: nullable HashSetNode[MModule] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodemmodule__MModule, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MModule]] */
 }
 };
-/* runtime type HashSetNode[MType] */
-const struct type type_hash_collection__HashSetNodemodel__MType = {
-2069,
-"HashSetNode[MType]", /* class_name_string */
-6,
+/* runtime type NativeArray[nullable HashSetNode[Object]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object = {
+325,
+"NativeArray[nullable HashSetNode[Object]]", /* class_name_string */
+2,
 0,
-&resolution_table_hash_collection__HashSetNodemodel__MType,
-7,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-314, /* nullable HashSetNode[MType] */
-1456, /* HashSetNode[Object] */
--1, /* empty */
-2069, /* HashSetNode[MType] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodemodel__MType = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object = {
 0, /* dummy */
 {
-&type_model__MType, /* HashSetNode#0: MType */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MType, /* N: HashSetNode[MType] */
-&type_model__MType, /* HashNode#0: MType */
+&type_nullable_hash_collection__HashSetNodekernel__Object, /* NativeArray#0: nullable HashSetNode[Object] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodekernel__Object, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[Object]] */
 }
 };
-/* runtime type nullable HashSetNode[MClassType] */
-const struct type type_nullable_hash_collection__HashSetNodemodel__MClassType = {
-1470,
-"nullable HashSetNode[MClassType]", /* class_name_string */
-5,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodemodel__MClassType,
-6,
+/* runtime type ArrayIterator[MClassDef] */
+const struct type type_array__ArrayIteratormodel__MClassDef = {
+1503,
+"ArrayIterator[MClassDef]", /* class_name_string */
+3,
+0,
+&resolution_table_array__ArrayIteratormodel__MClassDef,
+4,
 {
 0, /* nullable Object */
--1, /* empty */
-116, /* nullable HashSetNode[Object] */
-314, /* nullable HashSetNode[MType] */
--1, /* empty */
-1470, /* nullable HashSetNode[MClassType] */
+1, /* Object */
+289, /* ArrayIterator[Object] */
+1503, /* ArrayIterator[MClassDef] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MClassType = {
+const struct types resolution_table_array__ArrayIteratormodel__MClassDef = {
 0, /* dummy */
 {
-&type_model__MClassType, /* HashSetNode#0: MClassType */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MClassType, /* N: HashSetNode[MClassType] */
-&type_model__MClassType, /* HashNode#0: MClassType */
+&type_array__AbstractArrayReadmodel__MClassDef, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[MClassDef] */
+&type_array__Arraymodel__MClassDef, /* Array[Iterator#0]: Array[MClassDef] */
 }
 };
-/* runtime type nullable HashSetNode[MType] */
-const struct type type_nullable_hash_collection__HashSetNodemodel__MType = {
-314,
-"nullable HashSetNode[MType]", /* class_name_string */
+/* runtime type NativeArray[MClassDef] */
+const struct type type_array__NativeArraymodel__MClassDef = {
+1504,
+"NativeArray[MClassDef]", /* class_name_string */
 3,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodemodel__MType,
+0,
+&resolution_table_array__NativeArraymodel__MClassDef,
 4,
 {
 0, /* nullable Object */
--1, /* empty */
-116, /* nullable HashSetNode[Object] */
-314, /* nullable HashSetNode[MType] */
+1, /* Object */
+193, /* NativeArray[Object] */
+1504, /* NativeArray[MClassDef] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MType = {
+const struct types resolution_table_array__NativeArraymodel__MClassDef = {
 0, /* dummy */
 {
-&type_model__MType, /* HashSetNode#0: MType */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MType, /* N: HashSetNode[MType] */
-&type_model__MType, /* HashNode#0: MType */
+&type_model__MClassDef, /* NativeArray#0: MClassDef */
+&type_array__NativeArraymodel__MClassDef, /* NativeArray[NativeArray#0]: NativeArray[MClassDef] */
 }
 };
-/* runtime type HashSetIterator[MClassType] */
-const struct type type_hash_collection__HashSetIteratormodel__MClassType = {
-1799,
-"HashSetIterator[MClassType]", /* class_name_string */
-4,
+/* runtime type HashMapKeys[MClass, Set[MProperty]] */
+const struct type type_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setmodel__MProperty = {
+2417,
+"HashMapKeys[MClass, Set[MProperty]]", /* class_name_string */
+6,
 0,
-&resolution_table_hash_collection__HashSetIteratormodel__MClassType,
-5,
+&resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setmodel__MProperty,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1471, /* HashSetIterator[MType] */
-1799, /* HashSetIterator[MClassType] */
+178, /* Collection[nullable MClass] */
+2131, /* HashMapKeys[MClass, Set[PropertyLayoutElement]] */
+170, /* Collection[Object] */
+1787, /* Collection[MClass] */
+2417, /* HashMapKeys[MClass, Set[MProperty]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratormodel__MClassType = {
+const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setmodel__MProperty = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel__MClassType, /* HashSet[HashSetIterator#0]: HashSet[MClassType] */
-&type_array__Arraymodel__MClassType, /* Array[Iterator#0]: Array[MClassType] */
+&type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MProperty, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MClass, Set[MProperty]] */
+&type_abstract_collection__MapKeysIteratormodel__MClassabstract_collection__Setmodel__MProperty, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MClass, Set[MProperty]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MClass, /* RemovableCollection#0: MClass */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MClass, /* Collection#0: MClass */
+&type_abstract_collection__Collectionmodel__MClass, /* Collection[Collection#0]: Collection[MClass] */
 }
 };
-/* runtime type HashSetIterator[MType] */
-const struct type type_hash_collection__HashSetIteratormodel__MType = {
-1471,
-"HashSetIterator[MType]", /* class_name_string */
+/* runtime type HashMapKeys[MClass, Set[PropertyLayoutElement]] */
+const struct type type_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+2131,
+"HashMapKeys[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashSetIteratormodel__MType,
-4,
+&resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1471, /* HashSetIterator[MType] */
+178, /* Collection[nullable MClass] */
+2131, /* HashMapKeys[MClass, Set[PropertyLayoutElement]] */
+170, /* Collection[Object] */
+1787, /* Collection[MClass] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratormodel__MType = {
+const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel__MType, /* HashSet[HashSetIterator#0]: HashSet[MType] */
-&type_array__Arraymodel__MType, /* Array[Iterator#0]: Array[MType] */
+&type_hash_collection__HashMapmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MClass, Set[PropertyLayoutElement]] */
+&type_abstract_collection__MapKeysIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MClass, Set[PropertyLayoutElement]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MClass, /* RemovableCollection#0: MClass */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_model__MClass, /* Collection#0: MClass */
+&type_abstract_collection__Collectionmodel__MClass, /* Collection[Collection#0]: Collection[MClass] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[MClassType]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType = {
-1800,
-"NativeArray[nullable HashSetNode[MClassType]]", /* class_name_string */
-4,
+/* runtime type HashMapValues[MClass, Set[MProperty]] */
+const struct type type_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setmodel__MProperty = {
+2418,
+"HashMapValues[MClass, Set[MProperty]]", /* class_name_string */
+6,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType,
-5,
+&resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setmodel__MProperty,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1472, /* NativeArray[nullable HashSetNode[MType]] */
-1800, /* NativeArray[nullable HashSetNode[MClassType]] */
+1505, /* Collection[Set[PropertyLayoutElement]] */
+1852, /* HashMapValues[MClass, Set[PropertyLayoutElement]] */
+170, /* Collection[Object] */
+1853, /* Collection[Set[MProperty]] */
+2418, /* HashMapValues[MClass, Set[MProperty]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType = {
+const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setmodel__MProperty = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodemodel__MClassType, /* NativeArray#0: nullable HashSetNode[MClassType] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MClassType]] */
+&type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MProperty, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MClass, Set[MProperty]] */
+&type_abstract_collection__MapValuesIteratormodel__MClassabstract_collection__Setmodel__MProperty, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MClass, Set[MProperty]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_abstract_collection__Setmodel__MProperty, /* RemovableCollection#0: Set[MProperty] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_abstract_collection__Setmodel__MProperty, /* Collection#0: Set[MProperty] */
+&type_abstract_collection__Collectionabstract_collection__Setmodel__MProperty, /* Collection[Collection#0]: Collection[Set[MProperty]] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[MType]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType = {
-1472,
-"NativeArray[nullable HashSetNode[MType]]", /* class_name_string */
+/* runtime type HashMapValues[MClass, Set[PropertyLayoutElement]] */
+const struct type type_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+1852,
+"HashMapValues[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType,
-4,
+&resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1472, /* NativeArray[nullable HashSetNode[MType]] */
+1505, /* Collection[Set[PropertyLayoutElement]] */
+1852, /* HashMapValues[MClass, Set[PropertyLayoutElement]] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType = {
+const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodemodel__MType, /* NativeArray#0: nullable HashSetNode[MType] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MType]] */
+&type_hash_collection__HashMapmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MClass, Set[PropertyLayoutElement]] */
+&type_abstract_collection__MapValuesIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MClass, Set[PropertyLayoutElement]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* RemovableCollection#0: Set[PropertyLayoutElement] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* Collection#0: Set[PropertyLayoutElement] */
+&type_abstract_collection__Collectionabstract_collection__Setlayout_builders__PropertyLayoutElement, /* Collection[Collection#0]: Collection[Set[PropertyLayoutElement]] */
 }
 };
-/* runtime type HashSetNode[MClass] */
-const struct type type_hash_collection__HashSetNodemodel__MClass = {
-2070,
-"HashSetNode[MClass]", /* class_name_string */
+/* runtime type Collection[Set[MProperty]] */
+const struct type type_abstract_collection__Collectionabstract_collection__Setmodel__MProperty = {
+1853,
+"Collection[Set[MProperty]]", /* class_name_string */
 5,
 0,
-&resolution_table_hash_collection__HashSetNodemodel__MClass,
+NULL,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-315, /* nullable HashSetNode[MClass] */
-1456, /* HashSetNode[Object] */
-2070, /* HashSetNode[MClass] */
+1505, /* Collection[Set[PropertyLayoutElement]] */
+-1, /* empty */
+170, /* Collection[Object] */
+1853, /* Collection[Set[MProperty]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodemodel__MClass = {
-0, /* dummy */
+/* runtime type Collection[Set[PropertyLayoutElement]] */
+const struct type type_abstract_collection__Collectionabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+1505,
+"Collection[Set[PropertyLayoutElement]]", /* class_name_string */
+2,
+0,
+NULL,
+5,
 {
-&type_model__MClass, /* HashSetNode#0: MClass */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MClass, /* N: HashSetNode[MClass] */
-&type_model__MClass, /* HashNode#0: MClass */
-}
+0, /* nullable Object */
+1, /* Object */
+1505, /* Collection[Set[PropertyLayoutElement]] */
+-1, /* empty */
+170, /* Collection[Object] */
+},
 };
-/* runtime type nullable HashSetNode[MClass] */
-const struct type type_nullable_hash_collection__HashSetNodemodel__MClass = {
-315,
-"nullable HashSetNode[MClass]", /* class_name_string */
+/* runtime type NativeArray[nullable HashMapNode[MClass, Set[MProperty]]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
+1506,
+"NativeArray[nullable HashMapNode[MClass, Set[MProperty]]]", /* class_name_string */
 3,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodemodel__MClass,
+0,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty,
 4,
 {
 0, /* nullable Object */
--1, /* empty */
-116, /* nullable HashSetNode[Object] */
-315, /* nullable HashSetNode[MClass] */
+1, /* Object */
+326, /* NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
+1506, /* NativeArray[nullable HashMapNode[MClass, Set[MProperty]]] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MClass = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
 0, /* dummy */
 {
-&type_model__MClass, /* HashSetNode#0: MClass */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MClass, /* N: HashSetNode[MClass] */
-&type_model__MClass, /* HashNode#0: MClass */
+&type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* NativeArray#0: nullable HashMapNode[MClass, Set[MProperty]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MClass, Set[MProperty]]] */
 }
 };
-/* runtime type HashSetIterator[MClass] */
-const struct type type_hash_collection__HashSetIteratormodel__MClass = {
-1473,
-"HashSetIterator[MClass]", /* class_name_string */
-3,
+/* runtime type NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+326,
+"NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]]", /* class_name_string */
+2,
 0,
-&resolution_table_hash_collection__HashSetIteratormodel__MClass,
-4,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1473, /* HashSetIterator[MClass] */
+326, /* NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratormodel__MClass = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel__MClass, /* HashSet[HashSetIterator#0]: HashSet[MClass] */
-&type_array__Arraymodel__MClass, /* Array[Iterator#0]: Array[MClass] */
+&type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* NativeArray#0: nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[MClass]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass = {
-1474,
-"NativeArray[nullable HashSetNode[MClass]]", /* class_name_string */
-3,
+/* runtime type HashMapNode[MClass, Set[MProperty]] */
+const struct type type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
+2132,
+"HashMapNode[MClass, Set[MProperty]]", /* class_name_string */
+6,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass,
-4,
+&resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1474, /* NativeArray[nullable HashSetNode[MClass]] */
+122, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
+327, /* nullable HashMapNode[MClass, Set[MProperty]] */
+1507, /* HashMapNode[MClass, Set[PropertyLayoutElement]] */
+-1, /* empty */
+2132, /* HashMapNode[MClass, Set[MProperty]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass = {
+const struct types resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodemodel__MClass, /* NativeArray#0: nullable HashSetNode[MClass] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MClass]] */
+&type_model__MClass, /* HashMapNode#0: MClass */
+&type_abstract_collection__Setmodel__MProperty, /* HashMapNode#1: Set[MProperty] */
+&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* N: HashMapNode[MClass, Set[MProperty]] */
+&type_model__MClass, /* HashNode#0: MClass */
 }
 };
-/* runtime type HashSetNode[MMethodDef] */
-const struct type type_hash_collection__HashSetNodemodel__MMethodDef = {
-2458,
-"HashSetNode[MMethodDef]", /* class_name_string */
-6,
+/* runtime type HashMapNode[MClass, Set[PropertyLayoutElement]] */
+const struct type type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+1507,
+"HashMapNode[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+4,
 0,
-&resolution_table_hash_collection__HashSetNodemodel__MMethodDef,
-8,
+&resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
-1456, /* HashSetNode[Object] */
-1475, /* nullable HashSetNode[MMethodDef] */
-2458, /* HashSetNode[MMethodDef] */
-2071, /* HashSetNode[PropertyLayoutElement] */
+122, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
+-1, /* empty */
+1507, /* HashMapNode[MClass, Set[PropertyLayoutElement]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodemodel__MMethodDef = {
+const struct types resolution_table_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_model__MMethodDef, /* HashSetNode#0: MMethodDef */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MMethodDef, /* N: HashSetNode[MMethodDef] */
-&type_model__MMethodDef, /* HashNode#0: MMethodDef */
+&type_model__MClass, /* HashMapNode#0: MClass */
+&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMapNode#1: Set[PropertyLayoutElement] */
+&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* N: HashMapNode[MClass, Set[PropertyLayoutElement]] */
+&type_model__MClass, /* HashNode#0: MClass */
 }
 };
-/* runtime type HashSetNode[PropertyLayoutElement] */
-const struct type type_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
-2071,
-"HashSetNode[PropertyLayoutElement]", /* class_name_string */
-7,
-0,
-&resolution_table_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement,
-8,
+/* runtime type nullable HashMapNode[MClass, Set[MProperty]] */
+const struct type type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
+327,
+"nullable HashMapNode[MClass, Set[MProperty]]", /* class_name_string */
+3,
+1,
+&resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty,
+4,
+{
+0, /* nullable Object */
+-1, /* empty */
+122, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
+327, /* nullable HashMapNode[MClass, Set[MProperty]] */
+},
+};
+const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty = {
+0, /* dummy */
+{
+&type_model__MClass, /* HashMapNode#0: MClass */
+&type_abstract_collection__Setmodel__MProperty, /* HashMapNode#1: Set[MProperty] */
+&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setmodel__MProperty, /* N: HashMapNode[MClass, Set[MProperty]] */
+&type_model__MClass, /* HashNode#0: MClass */
+}
+};
+/* runtime type nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
+const struct type type_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+122,
+"nullable HashMapNode[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+2,
+1,
+&resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
+3,
 {
 0, /* nullable Object */
-1, /* Object */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
-1456, /* HashSetNode[Object] */
 -1, /* empty */
--1, /* empty */
-2071, /* HashSetNode[PropertyLayoutElement] */
+122, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_layout_builders__PropertyLayoutElement, /* HashSetNode#0: PropertyLayoutElement */
-NULL, /* empty */
-&type_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* N: HashSetNode[PropertyLayoutElement] */
-&type_layout_builders__PropertyLayoutElement, /* HashNode#0: PropertyLayoutElement */
+&type_model__MClass, /* HashMapNode#0: MClass */
+&type_abstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMapNode#1: Set[PropertyLayoutElement] */
+&type_hash_collection__HashMapNodemodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* N: HashMapNode[MClass, Set[PropertyLayoutElement]] */
+&type_model__MClass, /* HashNode#0: MClass */
 }
 };
-/* runtime type nullable HashSetNode[MMethodDef] */
-const struct type type_nullable_hash_collection__HashSetNodemodel__MMethodDef = {
-1475,
-"nullable HashSetNode[MMethodDef]", /* class_name_string */
-5,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodemodel__MMethodDef,
+/* runtime type HashMapIterator[MClass, Set[MProperty]] */
+const struct type type_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setmodel__MProperty = {
+2133,
+"HashMapIterator[MClass, Set[MProperty]]", /* class_name_string */
 6,
+0,
+&resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setmodel__MProperty,
+7,
 {
 0, /* nullable Object */
+1, /* Object */
+328, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
+1508, /* HashMapIterator[MClass, Set[PropertyLayoutElement]] */
+1509, /* MapIterator[MClass, Set[MProperty]] */
 -1, /* empty */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
--1, /* empty */
-1475, /* nullable HashSetNode[MMethodDef] */
+2133, /* HashMapIterator[MClass, Set[MProperty]] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MMethodDef = {
+const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setmodel__MProperty = {
 0, /* dummy */
 {
-&type_model__MMethodDef, /* HashSetNode#0: MMethodDef */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MMethodDef, /* N: HashSetNode[MMethodDef] */
-&type_model__MMethodDef, /* HashNode#0: MMethodDef */
+&type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MProperty, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MClass, Set[MProperty]] */
 }
 };
-/* runtime type nullable HashSetNode[PropertyLayoutElement] */
-const struct type type_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
-316,
-"nullable HashSetNode[PropertyLayoutElement]", /* class_name_string */
+/* runtime type HashMapIterator[MClass, Set[PropertyLayoutElement]] */
+const struct type type_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+1508,
+"HashMapIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
 3,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement,
+0,
+&resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement,
 4,
 {
 0, /* nullable Object */
--1, /* empty */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
+1, /* Object */
+328, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
+1508, /* HashMapIterator[MClass, Set[PropertyLayoutElement]] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_layout_builders__PropertyLayoutElement, /* HashSetNode#0: PropertyLayoutElement */
-NULL, /* empty */
-&type_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* N: HashSetNode[PropertyLayoutElement] */
-&type_layout_builders__PropertyLayoutElement, /* HashNode#0: PropertyLayoutElement */
+&type_hash_collection__HashMapmodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MClass, Set[PropertyLayoutElement]] */
 }
 };
-/* runtime type HashSetIterator[MMethodDef] */
-const struct type type_hash_collection__HashSetIteratormodel__MMethodDef = {
-1801,
-"HashSetIterator[MMethodDef]", /* class_name_string */
+/* runtime type MapIterator[MClass, Set[MProperty]] */
+const struct type type_abstract_collection__MapIteratormodel__MClassabstract_collection__Setmodel__MProperty = {
+1509,
+"MapIterator[MClass, Set[MProperty]]", /* class_name_string */
 4,
 0,
-&resolution_table_hash_collection__HashSetIteratormodel__MMethodDef,
+NULL,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1476, /* HashSetIterator[PropertyLayoutElement] */
-1801, /* HashSetIterator[MMethodDef] */
+328, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
+-1, /* empty */
+1509, /* MapIterator[MClass, Set[MProperty]] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratormodel__MMethodDef = {
-0, /* dummy */
+/* runtime type MapIterator[MClass, Set[PropertyLayoutElement]] */
+const struct type type_abstract_collection__MapIteratormodel__MClassabstract_collection__Setlayout_builders__PropertyLayoutElement = {
+328,
+"MapIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+2,
+0,
+NULL,
+3,
 {
-&type_hash_collection__HashSetmodel__MMethodDef, /* HashSet[HashSetIterator#0]: HashSet[MMethodDef] */
-&type_array__Arraymodel__MMethodDef, /* Array[Iterator#0]: Array[MMethodDef] */
-}
+0, /* nullable Object */
+1, /* Object */
+328, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
+},
 };
-/* runtime type HashSetIterator[PropertyLayoutElement] */
-const struct type type_hash_collection__HashSetIteratorlayout_builders__PropertyLayoutElement = {
-1476,
-"HashSetIterator[PropertyLayoutElement]", /* class_name_string */
+/* runtime type ArrayIterator[Char] */
+const struct type type_array__ArrayIteratorkernel__Char = {
+1510,
+"ArrayIterator[Char]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashSetIteratorlayout_builders__PropertyLayoutElement,
+&resolution_table_array__ArrayIteratorkernel__Char,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1476, /* HashSetIterator[PropertyLayoutElement] */
+289, /* ArrayIterator[Object] */
+1510, /* ArrayIterator[Char] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratorlayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_array__ArrayIteratorkernel__Char = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetlayout_builders__PropertyLayoutElement, /* HashSet[HashSetIterator#0]: HashSet[PropertyLayoutElement] */
-&type_array__Arraylayout_builders__PropertyLayoutElement, /* Array[Iterator#0]: Array[PropertyLayoutElement] */
+&type_array__AbstractArrayReadkernel__Char, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[Char] */
+&type_array__Arraykernel__Char, /* Array[Iterator#0]: Array[Char] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[MMethodDef]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef = {
-1802,
-"NativeArray[nullable HashSetNode[MMethodDef]]", /* class_name_string */
-4,
+/* runtime type Array[Char] */
+const struct type type_array__Arraykernel__Char = {
+2625,
+"Array[Char]", /* class_name_string */
+2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef,
-5,
+&resolution_table_array__Arraykernel__Char,
+10,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1477, /* NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
-1802, /* NativeArray[nullable HashSetNode[MMethodDef]] */
+2625, /* Array[Char] */
+169, /* SequenceRead[nullable Object] */
+170, /* Collection[Object] */
+635, /* Collection[Char] */
+1782, /* AbstractArrayRead[Object] */
+1980, /* SequenceRead[Char] */
+2490, /* AbstractArrayRead[Char] */
+1973, /* Array[Object] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef = {
+const struct types resolution_table_array__Arraykernel__Char = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodemodel__MMethodDef, /* NativeArray#0: nullable HashSetNode[MMethodDef] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MMethodDef]] */
+&type_array__Arraykernel__Char, /* Array[Array#0]: Array[Char] */
+&type_array__NativeArraykernel__Char, /* NativeArray[Array#0]: NativeArray[Char] */
+&type_kernel__Char, /* Sequence#0: Char */
+&type_kernel__Char, /* SimpleCollection#0: Char */
+&type_abstract_collection__Collectionkernel__Char, /* Collection[Array#0]: Collection[Char] */
+&type_kernel__Char, /* Array#0: Char */
+&type_array__NativeArraykernel__Char, /* NativeArray[ArrayCapable#0]: NativeArray[Char] */
+&type_kernel__Char, /* AbstractArray#0: Char */
+&type_kernel__Char, /* RemovableCollection#0: Char */
+&type_abstract_collection__Collectionkernel__Char, /* Collection[Sequence#0]: Collection[Char] */
+&type_array__Arraykernel__Char, /* Array[Sequence#0]: Array[Char] */
+&type_abstract_collection__Collectionkernel__Char, /* Collection[SimpleCollection#0]: Collection[Char] */
+&type_kernel__Char, /* Collection#0: Char */
+&type_abstract_collection__Collectionkernel__Char, /* Collection[Collection#0]: Collection[Char] */
+&type_kernel__Char, /* SequenceRead#0: Char */
+&type_kernel__Char, /* AbstractArrayRead#0: Char */
+&type_array__Arraykernel__Char, /* Array[AbstractArrayRead#0]: Array[Char] */
+NULL, /* empty (AbstractArray[AbstractArrayRead#0]: AbstractArray[Char] not a live type) */
+&type_array__ArrayIteratorkernel__Char, /* ArrayIterator[AbstractArrayRead#0]: ArrayIterator[Char] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
-1477,
-"NativeArray[nullable HashSetNode[PropertyLayoutElement]]", /* class_name_string */
+/* runtime type ArrayIterator[Option] */
+const struct type type_array__ArrayIteratoropts__Option = {
+1511,
+"ArrayIterator[Option]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement,
+&resolution_table_array__ArrayIteratoropts__Option,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1477, /* NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
+289, /* ArrayIterator[Object] */
+1511, /* ArrayIterator[Option] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
+const struct types resolution_table_array__ArrayIteratoropts__Option = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* NativeArray#0: nullable HashSetNode[PropertyLayoutElement] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
+&type_array__AbstractArrayReadopts__Option, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[Option] */
+&type_array__Arrayopts__Option, /* Array[Iterator#0]: Array[Option] */
 }
 };
-/* runtime type HashSetNode[MMethod] */
-const struct type type_hash_collection__HashSetNodemodel__MMethod = {
-2548,
-"HashSetNode[MMethod]", /* class_name_string */
-9,
+/* runtime type HashMapKeys[String, Option] */
+const struct type type_hash_collection__HashMapKeysstring__Stringopts__Option = {
+1854,
+"HashMapKeys[String, Option]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashSetNodemodel__MMethod,
-10,
+&resolution_table_hash_collection__HashMapKeysstring__Stringopts__Option,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
-1456, /* HashSetNode[Object] */
-1478, /* nullable HashSetNode[MProperty] */
-1803, /* nullable HashSetNode[MMethod] */
-2071, /* HashSetNode[PropertyLayoutElement] */
-2459, /* HashSetNode[MProperty] */
-2548, /* HashSetNode[MMethod] */
+631, /* Collection[String] */
+1854, /* HashMapKeys[String, Option] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodemodel__MMethod = {
+const struct types resolution_table_hash_collection__HashMapKeysstring__Stringopts__Option = {
 0, /* dummy */
 {
-&type_model__MMethod, /* HashSetNode#0: MMethod */
+&type_hash_collection__HashMapstring__Stringopts__Option, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[String, Option] */
+&type_abstract_collection__MapKeysIteratorstring__Stringopts__Option, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[String, Option] */
 NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MMethod, /* N: HashSetNode[MMethod] */
-&type_model__MMethod, /* HashNode#0: MMethod */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_string__String, /* RemovableCollection#0: String */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_string__String, /* Collection#0: String */
+&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
 }
 };
-/* runtime type HashSetNode[MProperty] */
-const struct type type_hash_collection__HashSetNodemodel__MProperty = {
-2459,
-"HashSetNode[MProperty]", /* class_name_string */
-8,
+/* runtime type HashMapValues[String, Option] */
+const struct type type_hash_collection__HashMapValuesstring__Stringopts__Option = {
+1855,
+"HashMapValues[String, Option]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashSetNodemodel__MProperty,
-9,
+&resolution_table_hash_collection__HashMapValuesstring__Stringopts__Option,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
-1456, /* HashSetNode[Object] */
-1478, /* nullable HashSetNode[MProperty] */
--1, /* empty */
-2071, /* HashSetNode[PropertyLayoutElement] */
-2459, /* HashSetNode[MProperty] */
+636, /* Collection[Option] */
+1855, /* HashMapValues[String, Option] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodemodel__MProperty = {
+const struct types resolution_table_hash_collection__HashMapValuesstring__Stringopts__Option = {
 0, /* dummy */
 {
-&type_model__MProperty, /* HashSetNode#0: MProperty */
+&type_hash_collection__HashMapstring__Stringopts__Option, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[String, Option] */
+&type_abstract_collection__MapValuesIteratorstring__Stringopts__Option, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[String, Option] */
 NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MProperty, /* N: HashSetNode[MProperty] */
-&type_model__MProperty, /* HashNode#0: MProperty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_opts__Option, /* RemovableCollection#0: Option */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_opts__Option, /* Collection#0: Option */
+&type_abstract_collection__Collectionopts__Option, /* Collection[Collection#0]: Collection[Option] */
 }
 };
-/* runtime type nullable HashSetNode[MMethod] */
-const struct type type_nullable_hash_collection__HashSetNodemodel__MMethod = {
-1803,
-"nullable HashSetNode[MMethod]", /* class_name_string */
-6,
-1,
-&resolution_table_nullable_hash_collection__HashSetNodemodel__MMethod,
-7,
+/* runtime type NativeArray[nullable HashMapNode[String, Option]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option = {
+329,
+"NativeArray[nullable HashMapNode[String, Option]]", /* class_name_string */
+2,
+0,
+&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option,
+3,
 {
 0, /* nullable Object */
--1, /* empty */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
--1, /* empty */
-1478, /* nullable HashSetNode[MProperty] */
-1803, /* nullable HashSetNode[MMethod] */
+1, /* Object */
+329, /* NativeArray[nullable HashMapNode[String, Option]] */
+},
+};
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option = {
+0, /* dummy */
+{
+&type_nullable_hash_collection__HashMapNodestring__Stringopts__Option, /* NativeArray#0: nullable HashMapNode[String, Option] */
+&type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringopts__Option, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[String, Option]] */
+}
+};
+/* runtime type HashMapNode[String, Option] */
+const struct type type_hash_collection__HashMapNodestring__Stringopts__Option = {
+1512,
+"HashMapNode[String, Option]", /* class_name_string */
+3,
+0,
+&resolution_table_hash_collection__HashMapNodestring__Stringopts__Option,
+4,
+{
+0, /* nullable Object */
+1, /* Object */
+123, /* nullable HashMapNode[String, Option] */
+1512, /* HashMapNode[String, Option] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MMethod = {
+const struct types resolution_table_hash_collection__HashMapNodestring__Stringopts__Option = {
 0, /* dummy */
 {
-&type_model__MMethod, /* HashSetNode#0: MMethod */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MMethod, /* N: HashSetNode[MMethod] */
-&type_model__MMethod, /* HashNode#0: MMethod */
+&type_string__String, /* HashMapNode#0: String */
+&type_opts__Option, /* HashMapNode#1: Option */
+&type_hash_collection__HashMapNodestring__Stringopts__Option, /* N: HashMapNode[String, Option] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type nullable HashSetNode[MProperty] */
-const struct type type_nullable_hash_collection__HashSetNodemodel__MProperty = {
-1478,
-"nullable HashSetNode[MProperty]", /* class_name_string */
-5,
+/* runtime type nullable HashMapNode[String, Option] */
+const struct type type_nullable_hash_collection__HashMapNodestring__Stringopts__Option = {
+123,
+"nullable HashMapNode[String, Option]", /* class_name_string */
+2,
 1,
-&resolution_table_nullable_hash_collection__HashSetNodemodel__MProperty,
-6,
+&resolution_table_nullable_hash_collection__HashMapNodestring__Stringopts__Option,
+3,
 {
 0, /* nullable Object */
 -1, /* empty */
-116, /* nullable HashSetNode[Object] */
-316, /* nullable HashSetNode[PropertyLayoutElement] */
--1, /* empty */
-1478, /* nullable HashSetNode[MProperty] */
+123, /* nullable HashMapNode[String, Option] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MProperty = {
+const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringopts__Option = {
 0, /* dummy */
 {
-&type_model__MProperty, /* HashSetNode#0: MProperty */
-NULL, /* empty */
-&type_hash_collection__HashSetNodemodel__MProperty, /* N: HashSetNode[MProperty] */
-&type_model__MProperty, /* HashNode#0: MProperty */
+&type_string__String, /* HashMapNode#0: String */
+&type_opts__Option, /* HashMapNode#1: Option */
+&type_hash_collection__HashMapNodestring__Stringopts__Option, /* N: HashMapNode[String, Option] */
+&type_string__String, /* HashNode#0: String */
 }
 };
-/* runtime type HashSetIterator[MMethod] */
-const struct type type_hash_collection__HashSetIteratormodel__MMethod = {
-2072,
-"HashSetIterator[MMethod]", /* class_name_string */
-5,
+/* runtime type HashMapIterator[String, Option] */
+const struct type type_hash_collection__HashMapIteratorstring__Stringopts__Option = {
+1513,
+"HashMapIterator[String, Option]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashSetIteratormodel__MMethod,
-6,
+&resolution_table_hash_collection__HashMapIteratorstring__Stringopts__Option,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1476, /* HashSetIterator[PropertyLayoutElement] */
-1804, /* HashSetIterator[MProperty] */
-2072, /* HashSetIterator[MMethod] */
+330, /* MapIterator[String, Option] */
+1513, /* HashMapIterator[String, Option] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratormodel__MMethod = {
+const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringopts__Option = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetmodel__MMethod, /* HashSet[HashSetIterator#0]: HashSet[MMethod] */
-&type_array__Arraymodel__MMethod, /* Array[Iterator#0]: Array[MMethod] */
+&type_hash_collection__HashMapstring__Stringopts__Option, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[String, Option] */
 }
 };
-/* runtime type HashSetIterator[MProperty] */
-const struct type type_hash_collection__HashSetIteratormodel__MProperty = {
-1804,
-"HashSetIterator[MProperty]", /* class_name_string */
-4,
+/* runtime type MapIterator[String, Option] */
+const struct type type_abstract_collection__MapIteratorstring__Stringopts__Option = {
+330,
+"MapIterator[String, Option]", /* class_name_string */
+2,
 0,
-&resolution_table_hash_collection__HashSetIteratormodel__MProperty,
-5,
+NULL,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1476, /* HashSetIterator[PropertyLayoutElement] */
-1804, /* HashSetIterator[MProperty] */
+330, /* MapIterator[String, Option] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratormodel__MProperty = {
-0, /* dummy */
-{
-&type_hash_collection__HashSetmodel__MProperty, /* HashSet[HashSetIterator#0]: HashSet[MProperty] */
-&type_array__Arraymodel__MProperty, /* Array[Iterator#0]: Array[MProperty] */
-}
-};
-/* runtime type NativeArray[nullable HashSetNode[MMethod]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod = {
-2073,
-"NativeArray[nullable HashSetNode[MMethod]]", /* class_name_string */
-5,
+/* runtime type ArraySetIterator[MModule] */
+const struct type type_array__ArraySetIteratormmodule__MModule = {
+331,
+"ArraySetIterator[MModule]", /* class_name_string */
+2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod,
-6,
+&resolution_table_array__ArraySetIteratormmodule__MModule,
+3,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1477, /* NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
-1805, /* NativeArray[nullable HashSetNode[MProperty]] */
-2073, /* NativeArray[nullable HashSetNode[MMethod]] */
+331, /* ArraySetIterator[MModule] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod = {
+const struct types resolution_table_array__ArraySetIteratormmodule__MModule = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodemodel__MMethod, /* NativeArray#0: nullable HashSetNode[MMethod] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MMethod]] */
+&type_array__ArrayIteratormmodule__MModule, /* ArrayIterator[ArraySetIterator#0]: ArrayIterator[MModule] */
+&type_array__Arraymmodule__MModule, /* Array[Iterator#0]: Array[MModule] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[MProperty]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MProperty = {
-1805,
-"NativeArray[nullable HashSetNode[MProperty]]", /* class_name_string */
-4,
+/* runtime type HashSetNode[MType] */
+const struct type type_hash_collection__HashSetNodemodel__MType = {
+2134,
+"HashSetNode[MType]", /* class_name_string */
+6,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MProperty,
-5,
+&resolution_table_hash_collection__HashSetNodemodel__MType,
+7,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1477, /* NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
-1805, /* NativeArray[nullable HashSetNode[MProperty]] */
+121, /* nullable HashSetNode[Object] */
+332, /* nullable HashSetNode[MType] */
+1500, /* HashSetNode[Object] */
+-1, /* empty */
+2134, /* HashSetNode[MType] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MProperty = {
+const struct types resolution_table_hash_collection__HashSetNodemodel__MType = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodemodel__MProperty, /* NativeArray#0: nullable HashSetNode[MProperty] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MProperty, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MProperty]] */
+&type_model__MType, /* HashSetNode#0: MType */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemodel__MType, /* N: HashSetNode[MType] */
+&type_model__MType, /* HashNode#0: MType */
 }
 };
-/* runtime type ListNode[MMethodDef] */
-const struct type type_list__ListNodemodel__MMethodDef = {
-2506,
-"ListNode[MMethodDef]", /* class_name_string */
-6,
-0,
-&resolution_table_list__ListNodemodel__MMethodDef,
-13,
+/* runtime type nullable HashSetNode[MType] */
+const struct type type_nullable_hash_collection__HashSetNodemodel__MType = {
+332,
+"nullable HashSetNode[MType]", /* class_name_string */
+3,
+1,
+&resolution_table_nullable_hash_collection__HashSetNodemodel__MType,
+4,
 {
 0, /* nullable Object */
-1, /* Object */
-188, /* Collection[nullable MPropDef] */
-2460, /* Container[MMethodDef] */
-164, /* Collection[Object] */
-590, /* Collection[PropertyLayoutElement] */
-2506, /* ListNode[MMethodDef] */
--1, /* empty */
-1920, /* Collection[MPropDef] */
--1, /* empty */
--1, /* empty */
 -1, /* empty */
-2202, /* Collection[MMethodDef] */
+121, /* nullable HashSetNode[Object] */
+332, /* nullable HashSetNode[MType] */
 },
 };
-const struct types resolution_table_list__ListNodemodel__MMethodDef = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MType = {
 0, /* dummy */
 {
-&type_model__MMethodDef, /* ListNode#0: MMethodDef */
-&type_list__ListNodemodel__MMethodDef, /* ListNode[ListNode#0]: ListNode[MMethodDef] */
-&type_abstract_collection__ContainerIteratormodel__MMethodDef, /* ContainerIterator[Container#0]: ContainerIterator[MMethodDef] */
-&type_model__MMethodDef, /* Container#0: MMethodDef */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
+&type_model__MType, /* HashSetNode#0: MType */
 NULL, /* empty */
-&type_model__MMethodDef, /* Collection#0: MMethodDef */
-&type_abstract_collection__Collectionmodel__MMethodDef, /* Collection[Collection#0]: Collection[MMethodDef] */
+&type_hash_collection__HashSetNodemodel__MType, /* N: HashSetNode[MType] */
+&type_model__MType, /* HashNode#0: MType */
 }
 };
-/* runtime type Container[MMethodDef] */
-const struct type type_abstract_collection__Containermodel__MMethodDef = {
-2460,
-"Container[MMethodDef]", /* class_name_string */
+/* runtime type HashSetIterator[MType] */
+const struct type type_hash_collection__HashSetIteratormodel__MType = {
+1514,
+"HashSetIterator[MType]", /* class_name_string */
 3,
 0,
-NULL,
-13,
+&resolution_table_hash_collection__HashSetIteratormodel__MType,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-188, /* Collection[nullable MPropDef] */
-2460, /* Container[MMethodDef] */
-164, /* Collection[Object] */
-590, /* Collection[PropertyLayoutElement] */
--1, /* empty */
--1, /* empty */
-1920, /* Collection[MPropDef] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2202, /* Collection[MMethodDef] */
+324, /* HashSetIterator[Object] */
+1514, /* HashSetIterator[MType] */
 },
 };
-/* runtime type ListIterator[MMethodDef] */
-const struct type type_list__ListIteratormodel__MMethodDef = {
-317,
-"ListIterator[MMethodDef]", /* class_name_string */
-2,
-0,
-&resolution_table_list__ListIteratormodel__MMethodDef,
+const struct types resolution_table_hash_collection__HashSetIteratormodel__MType = {
+0, /* dummy */
+{
+&type_hash_collection__HashSetmodel__MType, /* HashSet[HashSetIterator#0]: HashSet[MType] */
+&type_array__Arraymodel__MType, /* Array[Iterator#0]: Array[MType] */
+}
+};
+/* runtime type NativeArray[nullable HashSetNode[MType]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType = {
+1515,
+"NativeArray[nullable HashSetNode[MType]]", /* class_name_string */
 3,
+0,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-317, /* ListIterator[MMethodDef] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
+1515, /* NativeArray[nullable HashSetNode[MType]] */
 },
 };
-const struct types resolution_table_list__ListIteratormodel__MMethodDef = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType = {
 0, /* dummy */
 {
-&type_model__MMethodDef, /* ListIterator#0: MMethodDef */
-&type_array__Arraymodel__MMethodDef, /* Array[Iterator#0]: Array[MMethodDef] */
-&type_list__Listmodel__MMethodDef, /* List[ListIterator#0]: List[MMethodDef] */
+&type_nullable_hash_collection__HashSetNodemodel__MType, /* NativeArray#0: nullable HashSetNode[MType] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MType, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MType]] */
 }
 };
 /* runtime type HashMapKeys[MClassDef, HashSet[MType]] */
 const struct type type_hash_collection__HashMapKeysmodel__MClassDefhash_collection__HashSetmodel__MType = {
-1806,
+1856,
 "HashMapKeys[MClassDef, HashSet[MType]]", /* class_name_string */
 3,
 0,
@@ -7947,9 +8146,9 @@ const struct type type_hash_collection__HashMapKeysmodel__MClassDefhash_collecti
 {
 0, /* nullable Object */
 1, /* Object */
-591, /* Collection[MClassDef] */
-1806, /* HashMapKeys[MClassDef, HashSet[MType]] */
-164, /* Collection[Object] */
+627, /* Collection[MClassDef] */
+1856, /* HashMapKeys[MClassDef, HashSet[MType]] */
+170, /* Collection[Object] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassDefhash_collection__HashSetmodel__MType = {
@@ -7973,7 +8172,7 @@ NULL, /* empty */
 };
 /* runtime type HashMapValues[MClassDef, HashSet[MType]] */
 const struct type type_hash_collection__HashMapValuesmodel__MClassDefhash_collection__HashSetmodel__MType = {
-2074,
+2135,
 "HashMapValues[MClassDef, HashSet[MType]]", /* class_name_string */
 3,
 0,
@@ -7982,10 +8181,10 @@ const struct type type_hash_collection__HashMapValuesmodel__MClassDefhash_collec
 {
 0, /* nullable Object */
 1, /* Object */
-1479, /* Collection[Set[MType]] */
-2074, /* HashMapValues[MClassDef, HashSet[MType]] */
-164, /* Collection[Object] */
-1807, /* Collection[HashSet[MType]] */
+1516, /* Collection[Set[MType]] */
+2135, /* HashMapValues[MClassDef, HashSet[MType]] */
+170, /* Collection[Object] */
+1857, /* Collection[HashSet[MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassDefhash_collection__HashSetmodel__MType = {
@@ -8009,7 +8208,7 @@ NULL, /* empty */
 };
 /* runtime type Collection[HashSet[MType]] */
 const struct type type_abstract_collection__Collectionhash_collection__HashSetmodel__MType = {
-1807,
+1857,
 "Collection[HashSet[MType]]", /* class_name_string */
 5,
 0,
@@ -8018,15 +8217,15 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-1479, /* Collection[Set[MType]] */
+1516, /* Collection[Set[MType]] */
 -1, /* empty */
-164, /* Collection[Object] */
-1807, /* Collection[HashSet[MType]] */
+170, /* Collection[Object] */
+1857, /* Collection[HashSet[MType]] */
 },
 };
 /* runtime type Collection[Set[MType]] */
 const struct type type_abstract_collection__Collectionabstract_collection__Setmodel__MType = {
-1479,
+1516,
 "Collection[Set[MType]]", /* class_name_string */
 2,
 0,
@@ -8035,14 +8234,14 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-1479, /* Collection[Set[MType]] */
+1516, /* Collection[Set[MType]] */
 -1, /* empty */
-164, /* Collection[Object] */
+170, /* Collection[Object] */
 },
 };
 /* runtime type NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
 const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefhash_collection__HashSetmodel__MType = {
-318,
+333,
 "NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]]", /* class_name_string */
 2,
 0,
@@ -8051,7 +8250,7 @@ const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemo
 {
 0, /* nullable Object */
 1, /* Object */
-318, /* NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
+333, /* NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
 },
 };
 const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassDefhash_collection__HashSetmodel__MType = {
@@ -8063,7 +8262,7 @@ const struct types resolution_table_array__NativeArraynullable_hash_collection__
 };
 /* runtime type HashMapNode[MClassDef, HashSet[MType]] */
 const struct type type_hash_collection__HashMapNodemodel__MClassDefhash_collection__HashSetmodel__MType = {
-1480,
+1517,
 "HashMapNode[MClassDef, HashSet[MType]]", /* class_name_string */
 3,
 0,
@@ -8072,8 +8271,8 @@ const struct type type_hash_collection__HashMapNodemodel__MClassDefhash_collecti
 {
 0, /* nullable Object */
 1, /* Object */
-119, /* nullable HashMapNode[MClassDef, HashSet[MType]] */
-1480, /* HashMapNode[MClassDef, HashSet[MType]] */
+124, /* nullable HashMapNode[MClassDef, HashSet[MType]] */
+1517, /* HashMapNode[MClassDef, HashSet[MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapNodemodel__MClassDefhash_collection__HashSetmodel__MType = {
@@ -8087,7 +8286,7 @@ const struct types resolution_table_hash_collection__HashMapNodemodel__MClassDef
 };
 /* runtime type nullable HashMapNode[MClassDef, HashSet[MType]] */
 const struct type type_nullable_hash_collection__HashMapNodemodel__MClassDefhash_collection__HashSetmodel__MType = {
-119,
+124,
 "nullable HashMapNode[MClassDef, HashSet[MType]]", /* class_name_string */
 2,
 1,
@@ -8096,7 +8295,7 @@ const struct type type_nullable_hash_collection__HashMapNodemodel__MClassDefhash
 {
 0, /* nullable Object */
 -1, /* empty */
-119, /* nullable HashMapNode[MClassDef, HashSet[MType]] */
+124, /* nullable HashMapNode[MClassDef, HashSet[MType]] */
 },
 };
 const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassDefhash_collection__HashSetmodel__MType = {
@@ -8110,7 +8309,7 @@ const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__
 };
 /* runtime type HashMapIterator[MClassDef, HashSet[MType]] */
 const struct type type_hash_collection__HashMapIteratormodel__MClassDefhash_collection__HashSetmodel__MType = {
-1481,
+1518,
 "HashMapIterator[MClassDef, HashSet[MType]]", /* class_name_string */
 3,
 0,
@@ -8119,8 +8318,8 @@ const struct type type_hash_collection__HashMapIteratormodel__MClassDefhash_coll
 {
 0, /* nullable Object */
 1, /* Object */
-319, /* MapIterator[MClassDef, HashSet[MType]] */
-1481, /* HashMapIterator[MClassDef, HashSet[MType]] */
+334, /* MapIterator[MClassDef, HashSet[MType]] */
+1518, /* HashMapIterator[MClassDef, HashSet[MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassDefhash_collection__HashSetmodel__MType = {
@@ -8131,7 +8330,7 @@ const struct types resolution_table_hash_collection__HashMapIteratormodel__MClas
 };
 /* runtime type MapIterator[MClassDef, HashSet[MType]] */
 const struct type type_abstract_collection__MapIteratormodel__MClassDefhash_collection__HashSetmodel__MType = {
-319,
+334,
 "MapIterator[MClassDef, HashSet[MType]]", /* class_name_string */
 2,
 0,
@@ -8140,12 +8339,12 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-319, /* MapIterator[MClassDef, HashSet[MType]] */
+334, /* MapIterator[MClassDef, HashSet[MType]] */
 },
 };
 /* runtime type HashMapKeys[MClass, Int] */
 const struct type type_hash_collection__HashMapKeysmodel__MClasskernel__Int = {
-2075,
+2136,
 "HashMapKeys[MClass, Int]", /* class_name_string */
 3,
 0,
@@ -8154,10 +8353,10 @@ const struct type type_hash_collection__HashMapKeysmodel__MClasskernel__Int = {
 {
 0, /* nullable Object */
 1, /* Object */
-171, /* Collection[nullable MClass] */
-2075, /* HashMapKeys[MClass, Int] */
-164, /* Collection[Object] */
-1733, /* Collection[MClass] */
+178, /* Collection[nullable MClass] */
+2136, /* HashMapKeys[MClass, Int] */
+170, /* Collection[Object] */
+1787, /* Collection[MClass] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapKeysmodel__MClasskernel__Int = {
@@ -8181,7 +8380,7 @@ NULL, /* empty */
 };
 /* runtime type HashMapValues[MClass, Int] */
 const struct type type_hash_collection__HashMapValuesmodel__MClasskernel__Int = {
-1808,
+1858,
 "HashMapValues[MClass, Int]", /* class_name_string */
 3,
 0,
@@ -8190,9 +8389,9 @@ const struct type type_hash_collection__HashMapValuesmodel__MClasskernel__Int =
 {
 0, /* nullable Object */
 1, /* Object */
-612, /* Collection[Int] */
-1808, /* HashMapValues[MClass, Int] */
-164, /* Collection[Object] */
+653, /* Collection[Int] */
+1858, /* HashMapValues[MClass, Int] */
+170, /* Collection[Object] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapValuesmodel__MClasskernel__Int = {
@@ -8216,7 +8415,7 @@ NULL, /* empty */
 };
 /* runtime type NativeArray[nullable HashMapNode[MClass, Int]] */
 const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClasskernel__Int = {
-320,
+335,
 "NativeArray[nullable HashMapNode[MClass, Int]]", /* class_name_string */
 2,
 0,
@@ -8225,7 +8424,7 @@ const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemo
 {
 0, /* nullable Object */
 1, /* Object */
-320, /* NativeArray[nullable HashMapNode[MClass, Int]] */
+335, /* NativeArray[nullable HashMapNode[MClass, Int]] */
 },
 };
 const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClasskernel__Int = {
@@ -8237,7 +8436,7 @@ const struct types resolution_table_array__NativeArraynullable_hash_collection__
 };
 /* runtime type HashMapNode[MClass, Int] */
 const struct type type_hash_collection__HashMapNodemodel__MClasskernel__Int = {
-1482,
+1519,
 "HashMapNode[MClass, Int]", /* class_name_string */
 3,
 0,
@@ -8246,8 +8445,8 @@ const struct type type_hash_collection__HashMapNodemodel__MClasskernel__Int = {
 {
 0, /* nullable Object */
 1, /* Object */
-120, /* nullable HashMapNode[MClass, Int] */
-1482, /* HashMapNode[MClass, Int] */
+125, /* nullable HashMapNode[MClass, Int] */
+1519, /* HashMapNode[MClass, Int] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapNodemodel__MClasskernel__Int = {
@@ -8261,7 +8460,7 @@ const struct types resolution_table_hash_collection__HashMapNodemodel__MClassker
 };
 /* runtime type nullable HashMapNode[MClass, Int] */
 const struct type type_nullable_hash_collection__HashMapNodemodel__MClasskernel__Int = {
-120,
+125,
 "nullable HashMapNode[MClass, Int]", /* class_name_string */
 2,
 1,
@@ -8270,7 +8469,7 @@ const struct type type_nullable_hash_collection__HashMapNodemodel__MClasskernel_
 {
 0, /* nullable Object */
 -1, /* empty */
-120, /* nullable HashMapNode[MClass, Int] */
+125, /* nullable HashMapNode[MClass, Int] */
 },
 };
 const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClasskernel__Int = {
@@ -8284,7 +8483,7 @@ const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__
 };
 /* runtime type HashMapIterator[MClass, Int] */
 const struct type type_hash_collection__HashMapIteratormodel__MClasskernel__Int = {
-1483,
+1520,
 "HashMapIterator[MClass, Int]", /* class_name_string */
 3,
 0,
@@ -8293,8 +8492,8 @@ const struct type type_hash_collection__HashMapIteratormodel__MClasskernel__Int
 {
 0, /* nullable Object */
 1, /* Object */
-321, /* MapIterator[MClass, Int] */
-1483, /* HashMapIterator[MClass, Int] */
+336, /* MapIterator[MClass, Int] */
+1520, /* HashMapIterator[MClass, Int] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapIteratormodel__MClasskernel__Int = {
@@ -8305,7 +8504,7 @@ const struct types resolution_table_hash_collection__HashMapIteratormodel__MClas
 };
 /* runtime type MapIterator[MClass, Int] */
 const struct type type_abstract_collection__MapIteratormodel__MClasskernel__Int = {
-321,
+336,
 "MapIterator[MClass, Int]", /* class_name_string */
 2,
 0,
@@ -8314,12 +8513,12 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-321, /* MapIterator[MClass, Int] */
+336, /* MapIterator[MClass, Int] */
 },
 };
 /* runtime type HashMapKeys[MType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapKeysmodel__MTypearray__Arraynullable_model__MType = {
-2076,
+2137,
 "HashMapKeys[MType, Array[nullable MType]]", /* class_name_string */
 2,
 0,
@@ -8328,12 +8527,12 @@ const struct type type_hash_collection__HashMapKeysmodel__MTypearray__Arraynulla
 {
 0, /* nullable Object */
 1, /* Object */
-2076, /* HashMapKeys[MType, Array[nullable MType]] */
+2137, /* HashMapKeys[MType, Array[nullable MType]] */
 -1, /* empty */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
+170, /* Collection[Object] */
+180, /* Collection[nullable MType] */
 -1, /* empty */
-1737, /* Collection[MType] */
+1791, /* Collection[MType] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapKeysmodel__MTypearray__Arraynullable_model__MType = {
@@ -8357,7 +8556,7 @@ NULL, /* empty */
 };
 /* runtime type HashMapValues[MType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapValuesmodel__MTypearray__Arraynullable_model__MType = {
-2077,
+2138,
 "HashMapValues[MType, Array[nullable MType]]", /* class_name_string */
 3,
 0,
@@ -8366,10 +8565,10 @@ const struct type type_hash_collection__HashMapValuesmodel__MTypearray__Arraynul
 {
 0, /* nullable Object */
 1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
-2077, /* HashMapValues[MType, Array[nullable MType]] */
-164, /* Collection[Object] */
-1809, /* Collection[Array[nullable MType]] */
+337, /* Collection[nullable Array[nullable MType]] */
+2138, /* HashMapValues[MType, Array[nullable MType]] */
+170, /* Collection[Object] */
+1859, /* Collection[Array[nullable MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapValuesmodel__MTypearray__Arraynullable_model__MType = {
@@ -8393,7 +8592,7 @@ NULL, /* empty */
 };
 /* runtime type Collection[Array[nullable MType]] */
 const struct type type_abstract_collection__Collectionarray__Arraynullable_model__MType = {
-1809,
+1859,
 "Collection[Array[nullable MType]]", /* class_name_string */
 5,
 0,
@@ -8402,15 +8601,15 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
+337, /* Collection[nullable Array[nullable MType]] */
 -1, /* empty */
-164, /* Collection[Object] */
-1809, /* Collection[Array[nullable MType]] */
+170, /* Collection[Object] */
+1859, /* Collection[Array[nullable MType]] */
 },
 };
 /* runtime type Collection[nullable Array[nullable MType]] */
 const struct type type_abstract_collection__Collectionnullable_array__Arraynullable_model__MType = {
-322,
+337,
 "Collection[nullable Array[nullable MType]]", /* class_name_string */
 2,
 0,
@@ -8419,12 +8618,12 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
+337, /* Collection[nullable Array[nullable MType]] */
 },
 };
 /* runtime type NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
 const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraynullable_model__MType = {
-323,
+338,
 "NativeArray[nullable HashMapNode[MType, Array[nullable MType]]]", /* class_name_string */
 2,
 0,
@@ -8433,7 +8632,7 @@ const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemo
 {
 0, /* nullable Object */
 1, /* Object */
-323, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
+338, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
 },
 };
 const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraynullable_model__MType = {
@@ -8445,7 +8644,7 @@ const struct types resolution_table_array__NativeArraynullable_hash_collection__
 };
 /* runtime type HashMapNode[MType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapNodemodel__MTypearray__Arraynullable_model__MType = {
-1484,
+1521,
 "HashMapNode[MType, Array[nullable MType]]", /* class_name_string */
 4,
 0,
@@ -8454,9 +8653,9 @@ const struct type type_hash_collection__HashMapNodemodel__MTypearray__Arraynulla
 {
 0, /* nullable Object */
 1, /* Object */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
+126, /* nullable HashMapNode[MType, Array[nullable MType]] */
 -1, /* empty */
-1484, /* HashMapNode[MType, Array[nullable MType]] */
+1521, /* HashMapNode[MType, Array[nullable MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapNodemodel__MTypearray__Arraynullable_model__MType = {
@@ -8470,7 +8669,7 @@ const struct types resolution_table_hash_collection__HashMapNodemodel__MTypearra
 };
 /* runtime type nullable HashMapNode[MType, Array[nullable MType]] */
 const struct type type_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraynullable_model__MType = {
-121,
+126,
 "nullable HashMapNode[MType, Array[nullable MType]]", /* class_name_string */
 2,
 1,
@@ -8479,7 +8678,7 @@ const struct type type_nullable_hash_collection__HashMapNodemodel__MTypearray__A
 {
 0, /* nullable Object */
 -1, /* empty */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
+126, /* nullable HashMapNode[MType, Array[nullable MType]] */
 },
 };
 const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraynullable_model__MType = {
@@ -8493,7 +8692,7 @@ const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__
 };
 /* runtime type HashMapIterator[MType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapIteratormodel__MTypearray__Arraynullable_model__MType = {
-1485,
+1522,
 "HashMapIterator[MType, Array[nullable MType]]", /* class_name_string */
 3,
 0,
@@ -8502,8 +8701,8 @@ const struct type type_hash_collection__HashMapIteratormodel__MTypearray__Arrayn
 {
 0, /* nullable Object */
 1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
-1485, /* HashMapIterator[MType, Array[nullable MType]] */
+339, /* MapIterator[MType, Array[nullable MType]] */
+1522, /* HashMapIterator[MType, Array[nullable MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapIteratormodel__MTypearray__Arraynullable_model__MType = {
@@ -8514,7 +8713,7 @@ const struct types resolution_table_hash_collection__HashMapIteratormodel__MType
 };
 /* runtime type MapIterator[MType, Array[nullable MType]] */
 const struct type type_abstract_collection__MapIteratormodel__MTypearray__Arraynullable_model__MType = {
-324,
+339,
 "MapIterator[MType, Array[nullable MType]]", /* class_name_string */
 2,
 0,
@@ -8523,12 +8722,12 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
+339, /* MapIterator[MType, Array[nullable MType]] */
 },
 };
 /* runtime type HashMapKeys[MClassType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapKeysmodel__MClassTypearray__Arraynullable_model__MType = {
-2461,
+2527,
 "HashMapKeys[MClassType, Array[nullable MType]]", /* class_name_string */
 3,
 0,
@@ -8537,15 +8736,15 @@ const struct type type_hash_collection__HashMapKeysmodel__MClassTypearray__Array
 {
 0, /* nullable Object */
 1, /* Object */
-2076, /* HashMapKeys[MType, Array[nullable MType]] */
-2461, /* HashMapKeys[MClassType, Array[nullable MType]] */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
+2137, /* HashMapKeys[MType, Array[nullable MType]] */
+2527, /* HashMapKeys[MClassType, Array[nullable MType]] */
+170, /* Collection[Object] */
+180, /* Collection[nullable MType] */
 -1, /* empty */
-1737, /* Collection[MType] */
+1791, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
-1916, /* Collection[MClassType] */
+1978, /* Collection[MClassType] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassTypearray__Arraynullable_model__MType = {
@@ -8569,7 +8768,7 @@ NULL, /* empty */
 };
 /* runtime type HashMapValues[MClassType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapValuesmodel__MClassTypearray__Arraynullable_model__MType = {
-2354,
+2419,
 "HashMapValues[MClassType, Array[nullable MType]]", /* class_name_string */
 6,
 0,
@@ -8578,11 +8777,11 @@ const struct type type_hash_collection__HashMapValuesmodel__MClassTypearray__Arr
 {
 0, /* nullable Object */
 1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
-2077, /* HashMapValues[MType, Array[nullable MType]] */
-164, /* Collection[Object] */
-1809, /* Collection[Array[nullable MType]] */
-2354, /* HashMapValues[MClassType, Array[nullable MType]] */
+337, /* Collection[nullable Array[nullable MType]] */
+2138, /* HashMapValues[MType, Array[nullable MType]] */
+170, /* Collection[Object] */
+1859, /* Collection[Array[nullable MType]] */
+2419, /* HashMapValues[MClassType, Array[nullable MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassTypearray__Arraynullable_model__MType = {
@@ -8606,7 +8805,7 @@ NULL, /* empty */
 };
 /* runtime type NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
 const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypearray__Arraynullable_model__MType = {
-1486,
+1523,
 "NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]]", /* class_name_string */
 3,
 0,
@@ -8615,8 +8814,8 @@ const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemo
 {
 0, /* nullable Object */
 1, /* Object */
-323, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
-1486, /* NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
+338, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
+1523, /* NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
 },
 };
 const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypearray__Arraynullable_model__MType = {
@@ -8628,7 +8827,7 @@ const struct types resolution_table_array__NativeArraynullable_hash_collection__
 };
 /* runtime type HashMapNode[MClassType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapNodemodel__MClassTypearray__Arraynullable_model__MType = {
-2078,
+2139,
 "HashMapNode[MClassType, Array[nullable MType]]", /* class_name_string */
 5,
 0,
@@ -8637,10 +8836,10 @@ const struct type type_hash_collection__HashMapNodemodel__MClassTypearray__Array
 {
 0, /* nullable Object */
 1, /* Object */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
-325, /* nullable HashMapNode[MClassType, Array[nullable MType]] */
-1484, /* HashMapNode[MType, Array[nullable MType]] */
-2078, /* HashMapNode[MClassType, Array[nullable MType]] */
+126, /* nullable HashMapNode[MType, Array[nullable MType]] */
+340, /* nullable HashMapNode[MClassType, Array[nullable MType]] */
+1521, /* HashMapNode[MType, Array[nullable MType]] */
+2139, /* HashMapNode[MClassType, Array[nullable MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapNodemodel__MClassTypearray__Arraynullable_model__MType = {
@@ -8654,7 +8853,7 @@ const struct types resolution_table_hash_collection__HashMapNodemodel__MClassTyp
 };
 /* runtime type nullable HashMapNode[MClassType, Array[nullable MType]] */
 const struct type type_nullable_hash_collection__HashMapNodemodel__MClassTypearray__Arraynullable_model__MType = {
-325,
+340,
 "nullable HashMapNode[MClassType, Array[nullable MType]]", /* class_name_string */
 3,
 1,
@@ -8663,8 +8862,8 @@ const struct type type_nullable_hash_collection__HashMapNodemodel__MClassTypearr
 {
 0, /* nullable Object */
 -1, /* empty */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
-325, /* nullable HashMapNode[MClassType, Array[nullable MType]] */
+126, /* nullable HashMapNode[MType, Array[nullable MType]] */
+340, /* nullable HashMapNode[MClassType, Array[nullable MType]] */
 },
 };
 const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassTypearray__Arraynullable_model__MType = {
@@ -8678,7 +8877,7 @@ const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__
 };
 /* runtime type HashMapIterator[MClassType, Array[nullable MType]] */
 const struct type type_hash_collection__HashMapIteratormodel__MClassTypearray__Arraynullable_model__MType = {
-2079,
+2140,
 "HashMapIterator[MClassType, Array[nullable MType]]", /* class_name_string */
 5,
 0,
@@ -8687,10 +8886,10 @@ const struct type type_hash_collection__HashMapIteratormodel__MClassTypearray__A
 {
 0, /* nullable Object */
 1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
-1485, /* HashMapIterator[MType, Array[nullable MType]] */
-1487, /* MapIterator[MClassType, Array[nullable MType]] */
-2079, /* HashMapIterator[MClassType, Array[nullable MType]] */
+339, /* MapIterator[MType, Array[nullable MType]] */
+1522, /* HashMapIterator[MType, Array[nullable MType]] */
+1524, /* MapIterator[MClassType, Array[nullable MType]] */
+2140, /* HashMapIterator[MClassType, Array[nullable MType]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassTypearray__Arraynullable_model__MType = {
@@ -8701,7 +8900,7 @@ const struct types resolution_table_hash_collection__HashMapIteratormodel__MClas
 };
 /* runtime type MapIterator[MClassType, Array[nullable MType]] */
 const struct type type_abstract_collection__MapIteratormodel__MClassTypearray__Arraynullable_model__MType = {
-1487,
+1524,
 "MapIterator[MClassType, Array[nullable MType]]", /* class_name_string */
 4,
 0,
@@ -8710,14 +8909,14 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
+339, /* MapIterator[MType, Array[nullable MType]] */
 -1, /* empty */
-1487, /* MapIterator[MClassType, Array[nullable MType]] */
+1524, /* MapIterator[MClassType, Array[nullable MType]] */
 },
 };
 /* runtime type HashMapKeys[MClass, Array[nullable MPropDef]] */
 const struct type type_hash_collection__HashMapKeysmodel__MClassarray__Arraynullable_model__MPropDef = {
-2080,
+2141,
 "HashMapKeys[MClass, Array[nullable MPropDef]]", /* class_name_string */
 3,
 0,
@@ -8726,10 +8925,10 @@ const struct type type_hash_collection__HashMapKeysmodel__MClassarray__Arraynull
 {
 0, /* nullable Object */
 1, /* Object */
-171, /* Collection[nullable MClass] */
-2080, /* HashMapKeys[MClass, Array[nullable MPropDef]] */
-164, /* Collection[Object] */
-1733, /* Collection[MClass] */
+178, /* Collection[nullable MClass] */
+2141, /* HashMapKeys[MClass, Array[nullable MPropDef]] */
+170, /* Collection[Object] */
+1787, /* Collection[MClass] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassarray__Arraynullable_model__MPropDef = {
@@ -8753,7 +8952,7 @@ NULL, /* empty */
 };
 /* runtime type HashMapValues[MClass, Array[nullable MPropDef]] */
 const struct type type_hash_collection__HashMapValuesmodel__MClassarray__Arraynullable_model__MPropDef = {
-1810,
+1860,
 "HashMapValues[MClass, Array[nullable MPropDef]]", /* class_name_string */
 3,
 0,
@@ -8762,9 +8961,9 @@ const struct type type_hash_collection__HashMapValuesmodel__MClassarray__Arraynu
 {
 0, /* nullable Object */
 1, /* Object */
-1488, /* Collection[Array[nullable MPropDef]] */
-1810, /* HashMapValues[MClass, Array[nullable MPropDef]] */
-164, /* Collection[Object] */
+1525, /* Collection[Array[nullable MPropDef]] */
+1860, /* HashMapValues[MClass, Array[nullable MPropDef]] */
+170, /* Collection[Object] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassarray__Arraynullable_model__MPropDef = {
@@ -8788,7 +8987,7 @@ NULL, /* empty */
 };
 /* runtime type Collection[Array[nullable MPropDef]] */
 const struct type type_abstract_collection__Collectionarray__Arraynullable_model__MPropDef = {
-1488,
+1525,
 "Collection[Array[nullable MPropDef]]", /* class_name_string */
 2,
 0,
@@ -8797,14 +8996,14 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-1488, /* Collection[Array[nullable MPropDef]] */
+1525, /* Collection[Array[nullable MPropDef]] */
 -1, /* empty */
-164, /* Collection[Object] */
+170, /* Collection[Object] */
 },
 };
 /* runtime type NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
 const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MPropDef = {
-326,
+341,
 "NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]]", /* class_name_string */
 2,
 0,
@@ -8813,7 +9012,7 @@ const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemo
 {
 0, /* nullable Object */
 1, /* Object */
-326, /* NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
+341, /* NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
 },
 };
 const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MPropDef = {
@@ -8825,7 +9024,7 @@ const struct types resolution_table_array__NativeArraynullable_hash_collection__
 };
 /* runtime type HashMapNode[MClass, Array[nullable MPropDef]] */
 const struct type type_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MPropDef = {
-1489,
+1526,
 "HashMapNode[MClass, Array[nullable MPropDef]]", /* class_name_string */
 3,
 0,
@@ -8834,8 +9033,8 @@ const struct type type_hash_collection__HashMapNodemodel__MClassarray__Arraynull
 {
 0, /* nullable Object */
 1, /* Object */
-122, /* nullable HashMapNode[MClass, Array[nullable MPropDef]] */
-1489, /* HashMapNode[MClass, Array[nullable MPropDef]] */
+127, /* nullable HashMapNode[MClass, Array[nullable MPropDef]] */
+1526, /* HashMapNode[MClass, Array[nullable MPropDef]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MPropDef = {
@@ -8849,7 +9048,7 @@ const struct types resolution_table_hash_collection__HashMapNodemodel__MClassarr
 };
 /* runtime type nullable HashMapNode[MClass, Array[nullable MPropDef]] */
 const struct type type_nullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MPropDef = {
-122,
+127,
 "nullable HashMapNode[MClass, Array[nullable MPropDef]]", /* class_name_string */
 2,
 1,
@@ -8858,7 +9057,7 @@ const struct type type_nullable_hash_collection__HashMapNodemodel__MClassarray__
 {
 0, /* nullable Object */
 -1, /* empty */
-122, /* nullable HashMapNode[MClass, Array[nullable MPropDef]] */
+127, /* nullable HashMapNode[MClass, Array[nullable MPropDef]] */
 },
 };
 const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassarray__Arraynullable_model__MPropDef = {
@@ -8872,7 +9071,7 @@ const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__
 };
 /* runtime type HashMapIterator[MClass, Array[nullable MPropDef]] */
 const struct type type_hash_collection__HashMapIteratormodel__MClassarray__Arraynullable_model__MPropDef = {
-1490,
+1527,
 "HashMapIterator[MClass, Array[nullable MPropDef]]", /* class_name_string */
 3,
 0,
@@ -8881,8 +9080,8 @@ const struct type type_hash_collection__HashMapIteratormodel__MClassarray__Array
 {
 0, /* nullable Object */
 1, /* Object */
-327, /* MapIterator[MClass, Array[nullable MPropDef]] */
-1490, /* HashMapIterator[MClass, Array[nullable MPropDef]] */
+342, /* MapIterator[MClass, Array[nullable MPropDef]] */
+1527, /* HashMapIterator[MClass, Array[nullable MPropDef]] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassarray__Arraynullable_model__MPropDef = {
@@ -8892,96 +9091,22 @@ const struct types resolution_table_hash_collection__HashMapIteratormodel__MClas
 }
 };
 /* runtime type MapIterator[MClass, Array[nullable MPropDef]] */
-const struct type type_abstract_collection__MapIteratormodel__MClassarray__Arraynullable_model__MPropDef = {
-327,
-"MapIterator[MClass, Array[nullable MPropDef]]", /* class_name_string */
-2,
-0,
-NULL,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-327, /* MapIterator[MClass, Array[nullable MPropDef]] */
-},
-};
-/* runtime type ListNode[CodeFile] */
-const struct type type_list__ListNodeabstract_compiler__CodeFile = {
-2081,
-"ListNode[CodeFile]", /* class_name_string */
-5,
-0,
-&resolution_table_list__ListNodeabstract_compiler__CodeFile,
-6,
-{
-0, /* nullable Object */
-1, /* Object */
-606, /* Collection[CodeFile] */
-1811, /* Container[CodeFile] */
-164, /* Collection[Object] */
-2081, /* ListNode[CodeFile] */
-},
-};
-const struct types resolution_table_list__ListNodeabstract_compiler__CodeFile = {
-0, /* dummy */
-{
-&type_abstract_compiler__CodeFile, /* ListNode#0: CodeFile */
-&type_list__ListNodeabstract_compiler__CodeFile, /* ListNode[ListNode#0]: ListNode[CodeFile] */
-&type_abstract_collection__ContainerIteratorabstract_compiler__CodeFile, /* ContainerIterator[Container#0]: ContainerIterator[CodeFile] */
-&type_abstract_compiler__CodeFile, /* Container#0: CodeFile */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_abstract_compiler__CodeFile, /* Collection#0: CodeFile */
-&type_abstract_collection__Collectionabstract_compiler__CodeFile, /* Collection[Collection#0]: Collection[CodeFile] */
-}
-};
-/* runtime type Container[CodeFile] */
-const struct type type_abstract_collection__Containerabstract_compiler__CodeFile = {
-1811,
-"Container[CodeFile]", /* class_name_string */
-3,
-0,
-NULL,
-5,
-{
-0, /* nullable Object */
-1, /* Object */
-606, /* Collection[CodeFile] */
-1811, /* Container[CodeFile] */
-164, /* Collection[Object] */
-},
-};
-/* runtime type ListIterator[CodeFile] */
-const struct type type_list__ListIteratorabstract_compiler__CodeFile = {
-328,
-"ListIterator[CodeFile]", /* class_name_string */
+const struct type type_abstract_collection__MapIteratormodel__MClassarray__Arraynullable_model__MPropDef = {
+342,
+"MapIterator[MClass, Array[nullable MPropDef]]", /* class_name_string */
 2,
 0,
-&resolution_table_list__ListIteratorabstract_compiler__CodeFile,
+NULL,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-328, /* ListIterator[CodeFile] */
+342, /* MapIterator[MClass, Array[nullable MPropDef]] */
 },
 };
-const struct types resolution_table_list__ListIteratorabstract_compiler__CodeFile = {
-0, /* dummy */
-{
-&type_abstract_compiler__CodeFile, /* ListIterator#0: CodeFile */
-&type_array__Arrayabstract_compiler__CodeFile, /* Array[Iterator#0]: Array[CodeFile] */
-&type_list__Listabstract_compiler__CodeFile, /* List[ListIterator#0]: List[CodeFile] */
-}
-};
 /* runtime type HashMapKeys[String, String] */
 const struct type type_hash_collection__HashMapKeysstring__Stringstring__String = {
-1812,
+1861,
 "HashMapKeys[String, String]", /* class_name_string */
 3,
 0,
@@ -8990,9 +9115,9 @@ const struct type type_hash_collection__HashMapKeysstring__Stringstring__String
 {
 0, /* nullable Object */
 1, /* Object */
-595, /* Collection[String] */
-1812, /* HashMapKeys[String, String] */
-164, /* Collection[Object] */
+631, /* Collection[String] */
+1861, /* HashMapKeys[String, String] */
+170, /* Collection[Object] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapKeysstring__Stringstring__String = {
@@ -9016,7 +9141,7 @@ NULL, /* empty */
 };
 /* runtime type HashMapValues[String, String] */
 const struct type type_hash_collection__HashMapValuesstring__Stringstring__String = {
-1813,
+1862,
 "HashMapValues[String, String]", /* class_name_string */
 3,
 0,
@@ -9025,9 +9150,9 @@ const struct type type_hash_collection__HashMapValuesstring__Stringstring__Strin
 {
 0, /* nullable Object */
 1, /* Object */
-595, /* Collection[String] */
-1813, /* HashMapValues[String, String] */
-164, /* Collection[Object] */
+631, /* Collection[String] */
+1862, /* HashMapValues[String, String] */
+170, /* Collection[Object] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapValuesstring__Stringstring__String = {
@@ -9051,7 +9176,7 @@ NULL, /* empty */
 };
 /* runtime type NativeArray[nullable HashMapNode[String, String]] */
 const struct type type_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringstring__String = {
-329,
+343,
 "NativeArray[nullable HashMapNode[String, String]]", /* class_name_string */
 2,
 0,
@@ -9060,7 +9185,7 @@ const struct type type_array__NativeArraynullable_hash_collection__HashMapNodest
 {
 0, /* nullable Object */
 1, /* Object */
-329, /* NativeArray[nullable HashMapNode[String, String]] */
+343, /* NativeArray[nullable HashMapNode[String, String]] */
 },
 };
 const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodestring__Stringstring__String = {
@@ -9072,7 +9197,7 @@ const struct types resolution_table_array__NativeArraynullable_hash_collection__
 };
 /* runtime type HashMapNode[String, String] */
 const struct type type_hash_collection__HashMapNodestring__Stringstring__String = {
-1491,
+1528,
 "HashMapNode[String, String]", /* class_name_string */
 3,
 0,
@@ -9081,8 +9206,8 @@ const struct type type_hash_collection__HashMapNodestring__Stringstring__String
 {
 0, /* nullable Object */
 1, /* Object */
-123, /* nullable HashMapNode[String, String] */
-1491, /* HashMapNode[String, String] */
+128, /* nullable HashMapNode[String, String] */
+1528, /* HashMapNode[String, String] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapNodestring__Stringstring__String = {
@@ -9096,7 +9221,7 @@ const struct types resolution_table_hash_collection__HashMapNodestring__Stringst
 };
 /* runtime type nullable HashMapNode[String, String] */
 const struct type type_nullable_hash_collection__HashMapNodestring__Stringstring__String = {
-123,
+128,
 "nullable HashMapNode[String, String]", /* class_name_string */
 2,
 1,
@@ -9105,7 +9230,7 @@ const struct type type_nullable_hash_collection__HashMapNodestring__Stringstring
 {
 0, /* nullable Object */
 -1, /* empty */
-123, /* nullable HashMapNode[String, String] */
+128, /* nullable HashMapNode[String, String] */
 },
 };
 const struct types resolution_table_nullable_hash_collection__HashMapNodestring__Stringstring__String = {
@@ -9119,7 +9244,7 @@ const struct types resolution_table_nullable_hash_collection__HashMapNodestring_
 };
 /* runtime type HashMapIterator[String, String] */
 const struct type type_hash_collection__HashMapIteratorstring__Stringstring__String = {
-1492,
+1529,
 "HashMapIterator[String, String]", /* class_name_string */
 3,
 0,
@@ -9128,8 +9253,8 @@ const struct type type_hash_collection__HashMapIteratorstring__Stringstring__Str
 {
 0, /* nullable Object */
 1, /* Object */
-330, /* MapIterator[String, String] */
-1492, /* HashMapIterator[String, String] */
+344, /* MapIterator[String, String] */
+1529, /* HashMapIterator[String, String] */
 },
 };
 const struct types resolution_table_hash_collection__HashMapIteratorstring__Stringstring__String = {
@@ -9140,7 +9265,7 @@ const struct types resolution_table_hash_collection__HashMapIteratorstring__Stri
 };
 /* runtime type MapIterator[String, String] */
 const struct type type_abstract_collection__MapIteratorstring__Stringstring__String = {
-330,
+344,
 "MapIterator[String, String]", /* class_name_string */
 2,
 0,
@@ -9149,850 +9274,718 @@ NULL,
 {
 0, /* nullable Object */
 1, /* Object */
-330, /* MapIterator[String, String] */
+344, /* MapIterator[String, String] */
 },
 };
-/* runtime type ArrayIterator[ExternCFile] */
-const struct type type_array__ArrayIteratorabstract_compiler__ExternCFile = {
-1493,
-"ArrayIterator[ExternCFile]", /* class_name_string */
-3,
+/* runtime type ListNode[CodeFile] */
+const struct type type_list__ListNodeabstract_compiler__CodeFile = {
+2142,
+"ListNode[CodeFile]", /* class_name_string */
+5,
 0,
-&resolution_table_array__ArrayIteratorabstract_compiler__ExternCFile,
-4,
+&resolution_table_list__ListNodeabstract_compiler__CodeFile,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-277, /* ArrayIterator[Object] */
-1493, /* ArrayIterator[ExternCFile] */
+642, /* Collection[CodeFile] */
+1863, /* Container[CodeFile] */
+170, /* Collection[Object] */
+2142, /* ListNode[CodeFile] */
 },
 };
-const struct types resolution_table_array__ArrayIteratorabstract_compiler__ExternCFile = {
+const struct types resolution_table_list__ListNodeabstract_compiler__CodeFile = {
 0, /* dummy */
 {
-&type_array__AbstractArrayReadabstract_compiler__ExternCFile, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[ExternCFile] */
-&type_array__Arrayabstract_compiler__ExternCFile, /* Array[Iterator#0]: Array[ExternCFile] */
+&type_abstract_compiler__CodeFile, /* ListNode#0: CodeFile */
+&type_list__ListNodeabstract_compiler__CodeFile, /* ListNode[ListNode#0]: ListNode[CodeFile] */
+&type_abstract_collection__ContainerIteratorabstract_compiler__CodeFile, /* ContainerIterator[Container#0]: ContainerIterator[CodeFile] */
+&type_abstract_compiler__CodeFile, /* Container#0: CodeFile */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_abstract_compiler__CodeFile, /* Collection#0: CodeFile */
+&type_abstract_collection__Collectionabstract_compiler__CodeFile, /* Collection[Collection#0]: Collection[CodeFile] */
 }
 };
-/* runtime type NativeArray[ExternCFile] */
-const struct type type_array__NativeArrayabstract_compiler__ExternCFile = {
-1494,
-"NativeArray[ExternCFile]", /* class_name_string */
+/* runtime type Container[CodeFile] */
+const struct type type_abstract_collection__Containerabstract_compiler__CodeFile = {
+1863,
+"Container[CodeFile]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArrayabstract_compiler__ExternCFile,
-4,
+NULL,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-185, /* NativeArray[Object] */
-1494, /* NativeArray[ExternCFile] */
+642, /* Collection[CodeFile] */
+1863, /* Container[CodeFile] */
+170, /* Collection[Object] */
 },
 };
-const struct types resolution_table_array__NativeArrayabstract_compiler__ExternCFile = {
-0, /* dummy */
-{
-&type_abstract_compiler__ExternCFile, /* NativeArray#0: ExternCFile */
-&type_array__NativeArrayabstract_compiler__ExternCFile, /* NativeArray[NativeArray#0]: NativeArray[ExternCFile] */
-}
-};
-/* runtime type ArraySetIterator[String] */
-const struct type type_array__ArraySetIteratorstring__String = {
-331,
-"ArraySetIterator[String]", /* class_name_string */
+/* runtime type ListIterator[CodeFile] */
+const struct type type_list__ListIteratorabstract_compiler__CodeFile = {
+345,
+"ListIterator[CodeFile]", /* class_name_string */
 2,
 0,
-&resolution_table_array__ArraySetIteratorstring__String,
+&resolution_table_list__ListIteratorabstract_compiler__CodeFile,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-331, /* ArraySetIterator[String] */
+345, /* ListIterator[CodeFile] */
 },
 };
-const struct types resolution_table_array__ArraySetIteratorstring__String = {
+const struct types resolution_table_list__ListIteratorabstract_compiler__CodeFile = {
 0, /* dummy */
 {
-&type_array__ArrayIteratorstring__String, /* ArrayIterator[ArraySetIterator#0]: ArrayIterator[String] */
-&type_array__Arraystring__String, /* Array[Iterator#0]: Array[String] */
+&type_abstract_compiler__CodeFile, /* ListIterator#0: CodeFile */
+&type_array__Arrayabstract_compiler__CodeFile, /* Array[Iterator#0]: Array[CodeFile] */
+&type_list__Listabstract_compiler__CodeFile, /* List[ListIterator#0]: List[CodeFile] */
 }
 };
-/* runtime type HashMapKeys[MClassType, String] */
-const struct type type_hash_collection__HashMapKeysmodel__MClassTypestring__String = {
-2355,
-"HashMapKeys[MClassType, String]", /* class_name_string */
-2,
+/* runtime type ArrayIterator[ExternCFile] */
+const struct type type_array__ArrayIteratorabstract_compiler__ExternCFile = {
+1530,
+"ArrayIterator[ExternCFile]", /* class_name_string */
+3,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel__MClassTypestring__String,
-11,
+&resolution_table_array__ArrayIteratorabstract_compiler__ExternCFile,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-2355, /* HashMapKeys[MClassType, String] */
--1, /* empty */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
--1, /* empty */
-1737, /* Collection[MType] */
--1, /* empty */
--1, /* empty */
-1916, /* Collection[MClassType] */
+289, /* ArrayIterator[Object] */
+1530, /* ArrayIterator[ExternCFile] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel__MClassTypestring__String = {
+const struct types resolution_table_array__ArrayIteratorabstract_compiler__ExternCFile = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassTypestring__String, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MClassType, String] */
-&type_abstract_collection__MapKeysIteratormodel__MClassTypestring__String, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MClassType, String] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MClassType, /* RemovableCollection#0: MClassType */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MClassType, /* Collection#0: MClassType */
-&type_abstract_collection__Collectionmodel__MClassType, /* Collection[Collection#0]: Collection[MClassType] */
+&type_array__AbstractArrayReadabstract_compiler__ExternCFile, /* AbstractArrayRead[ArrayIterator#0]: AbstractArrayRead[ExternCFile] */
+&type_array__Arrayabstract_compiler__ExternCFile, /* Array[Iterator#0]: Array[ExternCFile] */
 }
 };
-/* runtime type HashMapValues[MClassType, String] */
-const struct type type_hash_collection__HashMapValuesmodel__MClassTypestring__String = {
-1814,
-"HashMapValues[MClassType, String]", /* class_name_string */
+/* runtime type NativeArray[ExternCFile] */
+const struct type type_array__NativeArrayabstract_compiler__ExternCFile = {
+1531,
+"NativeArray[ExternCFile]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashMapValuesmodel__MClassTypestring__String,
-5,
+&resolution_table_array__NativeArrayabstract_compiler__ExternCFile,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-595, /* Collection[String] */
-1814, /* HashMapValues[MClassType, String] */
-164, /* Collection[Object] */
+193, /* NativeArray[Object] */
+1531, /* NativeArray[ExternCFile] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel__MClassTypestring__String = {
+const struct types resolution_table_array__NativeArrayabstract_compiler__ExternCFile = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MClassTypestring__String, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MClassType, String] */
-&type_abstract_collection__MapValuesIteratormodel__MClassTypestring__String, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MClassType, String] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* RemovableCollection#0: String */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_string__String, /* Collection#0: String */
-&type_abstract_collection__Collectionstring__String, /* Collection[Collection#0]: Collection[String] */
+&type_abstract_compiler__ExternCFile, /* NativeArray#0: ExternCFile */
+&type_array__NativeArrayabstract_compiler__ExternCFile, /* NativeArray[NativeArray#0]: NativeArray[ExternCFile] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MClassType, String]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypestring__String = {
-332,
-"NativeArray[nullable HashMapNode[MClassType, String]]", /* class_name_string */
+/* runtime type ArraySetIterator[String] */
+const struct type type_array__ArraySetIteratorstring__String = {
+346,
+"ArraySetIterator[String]", /* class_name_string */
 2,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypestring__String,
+&resolution_table_array__ArraySetIteratorstring__String,
 3,
 {
 0, /* nullable Object */
 1, /* Object */
-332, /* NativeArray[nullable HashMapNode[MClassType, String]] */
+346, /* ArraySetIterator[String] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypestring__String = {
+const struct types resolution_table_array__ArraySetIteratorstring__String = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel__MClassTypestring__String, /* NativeArray#0: nullable HashMapNode[MClassType, String] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MClassTypestring__String, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MClassType, String]] */
+&type_array__ArrayIteratorstring__String, /* ArrayIterator[ArraySetIterator#0]: ArrayIterator[String] */
+&type_array__Arraystring__String, /* Array[Iterator#0]: Array[String] */
 }
 };
-/* runtime type HashMapNode[MClassType, String] */
-const struct type type_hash_collection__HashMapNodemodel__MClassTypestring__String = {
-1495,
-"HashMapNode[MClassType, String]", /* class_name_string */
-3,
+/* runtime type HashSetNode[MClassType] */
+const struct type type_hash_collection__HashSetNodemodel__MClassType = {
+2528,
+"HashSetNode[MClassType]", /* class_name_string */
+7,
 0,
-&resolution_table_hash_collection__HashMapNodemodel__MClassTypestring__String,
-4,
+&resolution_table_hash_collection__HashSetNodemodel__MClassType,
+8,
 {
 0, /* nullable Object */
 1, /* Object */
-124, /* nullable HashMapNode[MClassType, String] */
-1495, /* HashMapNode[MClassType, String] */
+121, /* nullable HashSetNode[Object] */
+332, /* nullable HashSetNode[MType] */
+1500, /* HashSetNode[Object] */
+1532, /* nullable HashSetNode[MClassType] */
+2134, /* HashSetNode[MType] */
+2528, /* HashSetNode[MClassType] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel__MClassTypestring__String = {
+const struct types resolution_table_hash_collection__HashSetNodemodel__MClassType = {
 0, /* dummy */
 {
-&type_model__MClassType, /* HashMapNode#0: MClassType */
-&type_string__String, /* HashMapNode#1: String */
-&type_hash_collection__HashMapNodemodel__MClassTypestring__String, /* N: HashMapNode[MClassType, String] */
+&type_model__MClassType, /* HashSetNode#0: MClassType */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemodel__MClassType, /* N: HashSetNode[MClassType] */
 &type_model__MClassType, /* HashNode#0: MClassType */
 }
 };
-/* runtime type nullable HashMapNode[MClassType, String] */
-const struct type type_nullable_hash_collection__HashMapNodemodel__MClassTypestring__String = {
-124,
-"nullable HashMapNode[MClassType, String]", /* class_name_string */
-2,
+/* runtime type nullable HashSetNode[MClassType] */
+const struct type type_nullable_hash_collection__HashSetNodemodel__MClassType = {
+1532,
+"nullable HashSetNode[MClassType]", /* class_name_string */
+5,
 1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel__MClassTypestring__String,
-3,
+&resolution_table_nullable_hash_collection__HashSetNodemodel__MClassType,
+6,
 {
 0, /* nullable Object */
 -1, /* empty */
-124, /* nullable HashMapNode[MClassType, String] */
+121, /* nullable HashSetNode[Object] */
+332, /* nullable HashSetNode[MType] */
+-1, /* empty */
+1532, /* nullable HashSetNode[MClassType] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MClassTypestring__String = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MClassType = {
 0, /* dummy */
 {
-&type_model__MClassType, /* HashMapNode#0: MClassType */
-&type_string__String, /* HashMapNode#1: String */
-&type_hash_collection__HashMapNodemodel__MClassTypestring__String, /* N: HashMapNode[MClassType, String] */
+&type_model__MClassType, /* HashSetNode#0: MClassType */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemodel__MClassType, /* N: HashSetNode[MClassType] */
 &type_model__MClassType, /* HashNode#0: MClassType */
 }
 };
-/* runtime type HashMapIterator[MClassType, String] */
-const struct type type_hash_collection__HashMapIteratormodel__MClassTypestring__String = {
-1496,
-"HashMapIterator[MClassType, String]", /* class_name_string */
-3,
-0,
-&resolution_table_hash_collection__HashMapIteratormodel__MClassTypestring__String,
+/* runtime type HashSetIterator[MClassType] */
+const struct type type_hash_collection__HashSetIteratormodel__MClassType = {
+1864,
+"HashSetIterator[MClassType]", /* class_name_string */
 4,
-{
-0, /* nullable Object */
-1, /* Object */
-333, /* MapIterator[MClassType, String] */
-1496, /* HashMapIterator[MClassType, String] */
-},
-};
-const struct types resolution_table_hash_collection__HashMapIteratormodel__MClassTypestring__String = {
-0, /* dummy */
-{
-&type_hash_collection__HashMapmodel__MClassTypestring__String, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MClassType, String] */
-}
-};
-/* runtime type MapIterator[MClassType, String] */
-const struct type type_abstract_collection__MapIteratormodel__MClassTypestring__String = {
-333,
-"MapIterator[MClassType, String]", /* class_name_string */
-2,
 0,
-NULL,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-333, /* MapIterator[MClassType, String] */
-},
-};
-/* runtime type ListNode[AbstractRuntimeFunction] */
-const struct type type_list__ListNodeabstract_compiler__AbstractRuntimeFunction = {
-2082,
-"ListNode[AbstractRuntimeFunction]", /* class_name_string */
+&resolution_table_hash_collection__HashSetIteratormodel__MClassType,
 5,
-0,
-&resolution_table_list__ListNodeabstract_compiler__AbstractRuntimeFunction,
-6,
 {
 0, /* nullable Object */
 1, /* Object */
-609, /* Collection[AbstractRuntimeFunction] */
-1815, /* Container[AbstractRuntimeFunction] */
-164, /* Collection[Object] */
-2082, /* ListNode[AbstractRuntimeFunction] */
+324, /* HashSetIterator[Object] */
+1514, /* HashSetIterator[MType] */
+1864, /* HashSetIterator[MClassType] */
 },
 };
-const struct types resolution_table_list__ListNodeabstract_compiler__AbstractRuntimeFunction = {
+const struct types resolution_table_hash_collection__HashSetIteratormodel__MClassType = {
 0, /* dummy */
 {
-&type_abstract_compiler__AbstractRuntimeFunction, /* ListNode#0: AbstractRuntimeFunction */
-&type_list__ListNodeabstract_compiler__AbstractRuntimeFunction, /* ListNode[ListNode#0]: ListNode[AbstractRuntimeFunction] */
-&type_abstract_collection__ContainerIteratorabstract_compiler__AbstractRuntimeFunction, /* ContainerIterator[Container#0]: ContainerIterator[AbstractRuntimeFunction] */
-&type_abstract_compiler__AbstractRuntimeFunction, /* Container#0: AbstractRuntimeFunction */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_abstract_compiler__AbstractRuntimeFunction, /* Collection#0: AbstractRuntimeFunction */
-&type_abstract_collection__Collectionabstract_compiler__AbstractRuntimeFunction, /* Collection[Collection#0]: Collection[AbstractRuntimeFunction] */
+&type_hash_collection__HashSetmodel__MClassType, /* HashSet[HashSetIterator#0]: HashSet[MClassType] */
+&type_array__Arraymodel__MClassType, /* Array[Iterator#0]: Array[MClassType] */
 }
 };
-/* runtime type Container[AbstractRuntimeFunction] */
-const struct type type_abstract_collection__Containerabstract_compiler__AbstractRuntimeFunction = {
-1815,
-"Container[AbstractRuntimeFunction]", /* class_name_string */
-3,
+/* runtime type NativeArray[nullable HashSetNode[MClassType]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType = {
+1865,
+"NativeArray[nullable HashSetNode[MClassType]]", /* class_name_string */
+4,
 0,
-NULL,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-609, /* Collection[AbstractRuntimeFunction] */
-1815, /* Container[AbstractRuntimeFunction] */
-164, /* Collection[Object] */
-},
-};
-/* runtime type ListIterator[AbstractRuntimeFunction] */
-const struct type type_list__ListIteratorabstract_compiler__AbstractRuntimeFunction = {
-334,
-"ListIterator[AbstractRuntimeFunction]", /* class_name_string */
-2,
-0,
-&resolution_table_list__ListIteratorabstract_compiler__AbstractRuntimeFunction,
-3,
-{
-0, /* nullable Object */
-1, /* Object */
-334, /* ListIterator[AbstractRuntimeFunction] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
+1515, /* NativeArray[nullable HashSetNode[MType]] */
+1865, /* NativeArray[nullable HashSetNode[MClassType]] */
 },
 };
-const struct types resolution_table_list__ListIteratorabstract_compiler__AbstractRuntimeFunction = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType = {
 0, /* dummy */
 {
-&type_abstract_compiler__AbstractRuntimeFunction, /* ListIterator#0: AbstractRuntimeFunction */
-&type_array__Arrayabstract_compiler__AbstractRuntimeFunction, /* Array[Iterator#0]: Array[AbstractRuntimeFunction] */
-&type_list__Listabstract_compiler__AbstractRuntimeFunction, /* List[ListIterator#0]: List[AbstractRuntimeFunction] */
+&type_nullable_hash_collection__HashSetNodemodel__MClassType, /* NativeArray#0: nullable HashSetNode[MClassType] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClassType, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MClassType]] */
 }
 };
-/* runtime type HashSetNode[AbstractRuntimeFunction] */
-const struct type type_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction = {
-2083,
-"HashSetNode[AbstractRuntimeFunction]", /* class_name_string */
+/* runtime type HashSetNode[MClass] */
+const struct type type_hash_collection__HashSetNodemodel__MClass = {
+2143,
+"HashSetNode[MClass]", /* class_name_string */
 5,
 0,
-&resolution_table_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction,
+&resolution_table_hash_collection__HashSetNodemodel__MClass,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-116, /* nullable HashSetNode[Object] */
-335, /* nullable HashSetNode[AbstractRuntimeFunction] */
-1456, /* HashSetNode[Object] */
-2083, /* HashSetNode[AbstractRuntimeFunction] */
+121, /* nullable HashSetNode[Object] */
+347, /* nullable HashSetNode[MClass] */
+1500, /* HashSetNode[Object] */
+2143, /* HashSetNode[MClass] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction = {
+const struct types resolution_table_hash_collection__HashSetNodemodel__MClass = {
 0, /* dummy */
 {
-&type_abstract_compiler__AbstractRuntimeFunction, /* HashSetNode#0: AbstractRuntimeFunction */
+&type_model__MClass, /* HashSetNode#0: MClass */
 NULL, /* empty */
-&type_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction, /* N: HashSetNode[AbstractRuntimeFunction] */
-&type_abstract_compiler__AbstractRuntimeFunction, /* HashNode#0: AbstractRuntimeFunction */
+&type_hash_collection__HashSetNodemodel__MClass, /* N: HashSetNode[MClass] */
+&type_model__MClass, /* HashNode#0: MClass */
 }
 };
-/* runtime type nullable HashSetNode[AbstractRuntimeFunction] */
-const struct type type_nullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction = {
-335,
-"nullable HashSetNode[AbstractRuntimeFunction]", /* class_name_string */
+/* runtime type nullable HashSetNode[MClass] */
+const struct type type_nullable_hash_collection__HashSetNodemodel__MClass = {
+347,
+"nullable HashSetNode[MClass]", /* class_name_string */
 3,
 1,
-&resolution_table_nullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction,
+&resolution_table_nullable_hash_collection__HashSetNodemodel__MClass,
 4,
 {
 0, /* nullable Object */
 -1, /* empty */
-116, /* nullable HashSetNode[Object] */
-335, /* nullable HashSetNode[AbstractRuntimeFunction] */
+121, /* nullable HashSetNode[Object] */
+347, /* nullable HashSetNode[MClass] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MClass = {
 0, /* dummy */
 {
-&type_abstract_compiler__AbstractRuntimeFunction, /* HashSetNode#0: AbstractRuntimeFunction */
+&type_model__MClass, /* HashSetNode#0: MClass */
 NULL, /* empty */
-&type_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction, /* N: HashSetNode[AbstractRuntimeFunction] */
-&type_abstract_compiler__AbstractRuntimeFunction, /* HashNode#0: AbstractRuntimeFunction */
+&type_hash_collection__HashSetNodemodel__MClass, /* N: HashSetNode[MClass] */
+&type_model__MClass, /* HashNode#0: MClass */
 }
 };
-/* runtime type HashSetIterator[AbstractRuntimeFunction] */
-const struct type type_hash_collection__HashSetIteratorabstract_compiler__AbstractRuntimeFunction = {
-1497,
-"HashSetIterator[AbstractRuntimeFunction]", /* class_name_string */
+/* runtime type HashSetIterator[MClass] */
+const struct type type_hash_collection__HashSetIteratormodel__MClass = {
+1533,
+"HashSetIterator[MClass]", /* class_name_string */
 3,
 0,
-&resolution_table_hash_collection__HashSetIteratorabstract_compiler__AbstractRuntimeFunction,
+&resolution_table_hash_collection__HashSetIteratormodel__MClass,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-307, /* HashSetIterator[Object] */
-1497, /* HashSetIterator[AbstractRuntimeFunction] */
+324, /* HashSetIterator[Object] */
+1533, /* HashSetIterator[MClass] */
 },
 };
-const struct types resolution_table_hash_collection__HashSetIteratorabstract_compiler__AbstractRuntimeFunction = {
+const struct types resolution_table_hash_collection__HashSetIteratormodel__MClass = {
 0, /* dummy */
 {
-&type_hash_collection__HashSetabstract_compiler__AbstractRuntimeFunction, /* HashSet[HashSetIterator#0]: HashSet[AbstractRuntimeFunction] */
-&type_array__Arrayabstract_compiler__AbstractRuntimeFunction, /* Array[Iterator#0]: Array[AbstractRuntimeFunction] */
+&type_hash_collection__HashSetmodel__MClass, /* HashSet[HashSetIterator#0]: HashSet[MClass] */
+&type_array__Arraymodel__MClass, /* Array[Iterator#0]: Array[MClass] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[AbstractRuntimeFunction]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction = {
-1498,
-"NativeArray[nullable HashSetNode[AbstractRuntimeFunction]]", /* class_name_string */
+/* runtime type NativeArray[nullable HashSetNode[MClass]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass = {
+1534,
+"NativeArray[nullable HashSetNode[MClass]]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-308, /* NativeArray[nullable HashSetNode[Object]] */
-1498, /* NativeArray[nullable HashSetNode[AbstractRuntimeFunction]] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
+1534, /* NativeArray[nullable HashSetNode[MClass]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction, /* NativeArray#0: nullable HashSetNode[AbstractRuntimeFunction] */
-&type_array__NativeArraynullable_hash_collection__HashSetNodeabstract_compiler__AbstractRuntimeFunction, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[AbstractRuntimeFunction]] */
+&type_nullable_hash_collection__HashSetNodemodel__MClass, /* NativeArray#0: nullable HashSetNode[MClass] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MClass, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MClass]] */
 }
 };
-/* runtime type HashMapKeys[MType, Array[MClassType]] */
-const struct type type_hash_collection__HashMapKeysmodel__MTypearray__Arraymodel__MClassType = {
-2462,
-"HashMapKeys[MType, Array[MClassType]]", /* class_name_string */
+/* runtime type HashSetNode[MMethodDef] */
+const struct type type_hash_collection__HashSetNodemodel__MMethodDef = {
+2529,
+"HashSetNode[MMethodDef]", /* class_name_string */
 6,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel__MTypearray__Arraymodel__MClassType,
+&resolution_table_hash_collection__HashSetNodemodel__MMethodDef,
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-2076, /* HashMapKeys[MType, Array[nullable MType]] */
-2356, /* HashMapKeys[MType, Array[MType]] */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
-2462, /* HashMapKeys[MType, Array[MClassType]] */
-1737, /* Collection[MType] */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
+1500, /* HashSetNode[Object] */
+1535, /* nullable HashSetNode[MMethodDef] */
+2529, /* HashSetNode[MMethodDef] */
+2144, /* HashSetNode[PropertyLayoutElement] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel__MTypearray__Arraymodel__MClassType = {
+const struct types resolution_table_hash_collection__HashSetNodemodel__MMethodDef = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MTypearray__Arraymodel__MClassType, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MType, Array[MClassType]] */
-&type_abstract_collection__MapKeysIteratormodel__MTypearray__Arraymodel__MClassType, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MType, Array[MClassType]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MType, /* RemovableCollection#0: MType */
-NULL, /* empty */
-NULL, /* empty */
+&type_model__MMethodDef, /* HashSetNode#0: MMethodDef */
 NULL, /* empty */
-&type_model__MType, /* Collection#0: MType */
-&type_abstract_collection__Collectionmodel__MType, /* Collection[Collection#0]: Collection[MType] */
+&type_hash_collection__HashSetNodemodel__MMethodDef, /* N: HashSetNode[MMethodDef] */
+&type_model__MMethodDef, /* HashNode#0: MMethodDef */
 }
 };
-/* runtime type HashMapKeys[MType, Array[MType]] */
-const struct type type_hash_collection__HashMapKeysmodel__MTypearray__Arraymodel__MType = {
-2356,
-"HashMapKeys[MType, Array[MType]]", /* class_name_string */
-3,
+/* runtime type HashSetNode[PropertyLayoutElement] */
+const struct type type_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
+2144,
+"HashSetNode[PropertyLayoutElement]", /* class_name_string */
+7,
 0,
-&resolution_table_hash_collection__HashMapKeysmodel__MTypearray__Arraymodel__MType,
+&resolution_table_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement,
 8,
 {
 0, /* nullable Object */
 1, /* Object */
-2076, /* HashMapKeys[MType, Array[nullable MType]] */
-2356, /* HashMapKeys[MType, Array[MType]] */
-164, /* Collection[Object] */
-173, /* Collection[nullable MType] */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
+1500, /* HashSetNode[Object] */
 -1, /* empty */
-1737, /* Collection[MType] */
+-1, /* empty */
+2144, /* HashSetNode[PropertyLayoutElement] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapKeysmodel__MTypearray__Arraymodel__MType = {
+const struct types resolution_table_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MTypearray__Arraymodel__MType, /* HashMap[HashMapKeys#0, HashMapKeys#1]: HashMap[MType, Array[MType]] */
-&type_abstract_collection__MapKeysIteratormodel__MTypearray__Arraymodel__MType, /* MapKeysIterator[HashMapKeys#0, HashMapKeys#1]: MapKeysIterator[MType, Array[MType]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_model__MType, /* RemovableCollection#0: MType */
-NULL, /* empty */
-NULL, /* empty */
+&type_layout_builders__PropertyLayoutElement, /* HashSetNode#0: PropertyLayoutElement */
 NULL, /* empty */
-&type_model__MType, /* Collection#0: MType */
-&type_abstract_collection__Collectionmodel__MType, /* Collection[Collection#0]: Collection[MType] */
+&type_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* N: HashSetNode[PropertyLayoutElement] */
+&type_layout_builders__PropertyLayoutElement, /* HashNode#0: PropertyLayoutElement */
 }
 };
-/* runtime type HashMapValues[MType, Array[MClassType]] */
-const struct type type_hash_collection__HashMapValuesmodel__MTypearray__Arraymodel__MClassType = {
-2549,
-"HashMapValues[MType, Array[MClassType]]", /* class_name_string */
-7,
-0,
-&resolution_table_hash_collection__HashMapValuesmodel__MTypearray__Arraymodel__MClassType,
-12,
+/* runtime type nullable HashSetNode[MMethodDef] */
+const struct type type_nullable_hash_collection__HashSetNodemodel__MMethodDef = {
+1535,
+"nullable HashSetNode[MMethodDef]", /* class_name_string */
+5,
+1,
+&resolution_table_nullable_hash_collection__HashSetNodemodel__MMethodDef,
+6,
 {
 0, /* nullable Object */
-1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
-2077, /* HashMapValues[MType, Array[nullable MType]] */
-164, /* Collection[Object] */
-1809, /* Collection[Array[nullable MType]] */
-2463, /* HashMapValues[MType, Array[MType]] */
-2549, /* HashMapValues[MType, Array[MClassType]] */
-2084, /* Collection[Array[MType]] */
 -1, /* empty */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
 -1, /* empty */
-2357, /* Collection[Array[MClassType]] */
+1535, /* nullable HashSetNode[MMethodDef] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel__MTypearray__Arraymodel__MClassType = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MMethodDef = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MTypearray__Arraymodel__MClassType, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MType, Array[MClassType]] */
-&type_abstract_collection__MapValuesIteratormodel__MTypearray__Arraymodel__MClassType, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MType, Array[MClassType]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_array__Arraymodel__MClassType, /* RemovableCollection#0: Array[MClassType] */
-NULL, /* empty */
-NULL, /* empty */
+&type_model__MMethodDef, /* HashSetNode#0: MMethodDef */
 NULL, /* empty */
-&type_array__Arraymodel__MClassType, /* Collection#0: Array[MClassType] */
-&type_abstract_collection__Collectionarray__Arraymodel__MClassType, /* Collection[Collection#0]: Collection[Array[MClassType]] */
+&type_hash_collection__HashSetNodemodel__MMethodDef, /* N: HashSetNode[MMethodDef] */
+&type_model__MMethodDef, /* HashNode#0: MMethodDef */
 }
 };
-/* runtime type HashMapValues[MType, Array[MType]] */
-const struct type type_hash_collection__HashMapValuesmodel__MTypearray__Arraymodel__MType = {
-2463,
-"HashMapValues[MType, Array[MType]]", /* class_name_string */
-6,
-0,
-&resolution_table_hash_collection__HashMapValuesmodel__MTypearray__Arraymodel__MType,
-9,
+/* runtime type nullable HashSetNode[PropertyLayoutElement] */
+const struct type type_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
+348,
+"nullable HashSetNode[PropertyLayoutElement]", /* class_name_string */
+3,
+1,
+&resolution_table_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement,
+4,
 {
 0, /* nullable Object */
-1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
-2077, /* HashMapValues[MType, Array[nullable MType]] */
-164, /* Collection[Object] */
-1809, /* Collection[Array[nullable MType]] */
-2463, /* HashMapValues[MType, Array[MType]] */
 -1, /* empty */
-2084, /* Collection[Array[MType]] */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapValuesmodel__MTypearray__Arraymodel__MType = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MTypearray__Arraymodel__MType, /* HashMap[HashMapValues#0, HashMapValues#1]: HashMap[MType, Array[MType]] */
-&type_abstract_collection__MapValuesIteratormodel__MTypearray__Arraymodel__MType, /* MapValuesIterator[HashMapValues#0, HashMapValues#1]: MapValuesIterator[MType, Array[MType]] */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_array__Arraymodel__MType, /* RemovableCollection#0: Array[MType] */
-NULL, /* empty */
-NULL, /* empty */
+&type_layout_builders__PropertyLayoutElement, /* HashSetNode#0: PropertyLayoutElement */
 NULL, /* empty */
-&type_array__Arraymodel__MType, /* Collection#0: Array[MType] */
-&type_abstract_collection__Collectionarray__Arraymodel__MType, /* Collection[Collection#0]: Collection[Array[MType]] */
+&type_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* N: HashSetNode[PropertyLayoutElement] */
+&type_layout_builders__PropertyLayoutElement, /* HashNode#0: PropertyLayoutElement */
 }
 };
-/* runtime type Collection[Array[MClassType]] */
-const struct type type_abstract_collection__Collectionarray__Arraymodel__MClassType = {
-2357,
-"Collection[Array[MClassType]]", /* class_name_string */
-11,
+/* runtime type HashSetIterator[MMethodDef] */
+const struct type type_hash_collection__HashSetIteratormodel__MMethodDef = {
+1866,
+"HashSetIterator[MMethodDef]", /* class_name_string */
+4,
 0,
-NULL,
-12,
+&resolution_table_hash_collection__HashSetIteratormodel__MMethodDef,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
--1, /* empty */
-164, /* Collection[Object] */
-1809, /* Collection[Array[nullable MType]] */
--1, /* empty */
--1, /* empty */
-2084, /* Collection[Array[MType]] */
--1, /* empty */
--1, /* empty */
-2357, /* Collection[Array[MClassType]] */
+324, /* HashSetIterator[Object] */
+1536, /* HashSetIterator[PropertyLayoutElement] */
+1866, /* HashSetIterator[MMethodDef] */
 },
 };
-/* runtime type Collection[Array[MType]] */
-const struct type type_abstract_collection__Collectionarray__Arraymodel__MType = {
-2084,
-"Collection[Array[MType]]", /* class_name_string */
-8,
+const struct types resolution_table_hash_collection__HashSetIteratormodel__MMethodDef = {
+0, /* dummy */
+{
+&type_hash_collection__HashSetmodel__MMethodDef, /* HashSet[HashSetIterator#0]: HashSet[MMethodDef] */
+&type_array__Arraymodel__MMethodDef, /* Array[Iterator#0]: Array[MMethodDef] */
+}
+};
+/* runtime type HashSetIterator[PropertyLayoutElement] */
+const struct type type_hash_collection__HashSetIteratorlayout_builders__PropertyLayoutElement = {
+1536,
+"HashSetIterator[PropertyLayoutElement]", /* class_name_string */
+3,
 0,
-NULL,
-9,
+&resolution_table_hash_collection__HashSetIteratorlayout_builders__PropertyLayoutElement,
+4,
 {
 0, /* nullable Object */
 1, /* Object */
-322, /* Collection[nullable Array[nullable MType]] */
--1, /* empty */
-164, /* Collection[Object] */
-1809, /* Collection[Array[nullable MType]] */
--1, /* empty */
--1, /* empty */
-2084, /* Collection[Array[MType]] */
+324, /* HashSetIterator[Object] */
+1536, /* HashSetIterator[PropertyLayoutElement] */
 },
 };
-/* runtime type NativeArray[nullable HashMapNode[MType, Array[MClassType]]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType = {
-1816,
-"NativeArray[nullable HashMapNode[MType, Array[MClassType]]]", /* class_name_string */
+const struct types resolution_table_hash_collection__HashSetIteratorlayout_builders__PropertyLayoutElement = {
+0, /* dummy */
+{
+&type_hash_collection__HashSetlayout_builders__PropertyLayoutElement, /* HashSet[HashSetIterator#0]: HashSet[PropertyLayoutElement] */
+&type_array__Arraylayout_builders__PropertyLayoutElement, /* Array[Iterator#0]: Array[PropertyLayoutElement] */
+}
+};
+/* runtime type NativeArray[nullable HashSetNode[MMethodDef]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef = {
+1867,
+"NativeArray[nullable HashSetNode[MMethodDef]]", /* class_name_string */
 4,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef,
 5,
 {
 0, /* nullable Object */
 1, /* Object */
-323, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
-1499, /* NativeArray[nullable HashMapNode[MType, Array[MType]]] */
-1816, /* NativeArray[nullable HashMapNode[MType, Array[MClassType]]] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
+1537, /* NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
+1867, /* NativeArray[nullable HashSetNode[MMethodDef]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType, /* NativeArray#0: nullable HashMapNode[MType, Array[MClassType]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MType, Array[MClassType]]] */
+&type_nullable_hash_collection__HashSetNodemodel__MMethodDef, /* NativeArray#0: nullable HashSetNode[MMethodDef] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethodDef, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MMethodDef]] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MType, Array[MType]]] */
-const struct type type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType = {
-1499,
-"NativeArray[nullable HashMapNode[MType, Array[MType]]]", /* class_name_string */
+/* runtime type NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
+1537,
+"NativeArray[nullable HashSetNode[PropertyLayoutElement]]", /* class_name_string */
 3,
 0,
-&resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement,
 4,
 {
 0, /* nullable Object */
 1, /* Object */
-323, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
-1499, /* NativeArray[nullable HashMapNode[MType, Array[MType]]] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
+1537, /* NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
 },
 };
-const struct types resolution_table_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType = {
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType, /* NativeArray#0: nullable HashMapNode[MType, Array[MType]] */
-&type_array__NativeArraynullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType, /* NativeArray[NativeArray#0]: NativeArray[nullable HashMapNode[MType, Array[MType]]] */
+&type_nullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* NativeArray#0: nullable HashSetNode[PropertyLayoutElement] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodelayout_builders__PropertyLayoutElement, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
 }
 };
-/* runtime type HashMapNode[MType, Array[MClassType]] */
-const struct type type_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType = {
-2464,
-"HashMapNode[MType, Array[MClassType]]", /* class_name_string */
-7,
+/* runtime type HashSetNode[MMethod] */
+const struct type type_hash_collection__HashSetNodemodel__MMethod = {
+2626,
+"HashSetNode[MMethod]", /* class_name_string */
+9,
 0,
-&resolution_table_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType,
-8,
+&resolution_table_hash_collection__HashSetNodemodel__MMethod,
+10,
 {
 0, /* nullable Object */
 1, /* Object */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
-336, /* nullable HashMapNode[MType, Array[MType]] */
-1484, /* HashMapNode[MType, Array[nullable MType]] */
-1500, /* nullable HashMapNode[MType, Array[MClassType]] */
-2085, /* HashMapNode[MType, Array[MType]] */
-2464, /* HashMapNode[MType, Array[MClassType]] */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
+1500, /* HashSetNode[Object] */
+1538, /* nullable HashSetNode[MProperty] */
+1868, /* nullable HashSetNode[MMethod] */
+2144, /* HashSetNode[PropertyLayoutElement] */
+2530, /* HashSetNode[MProperty] */
+2626, /* HashSetNode[MMethod] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType = {
+const struct types resolution_table_hash_collection__HashSetNodemodel__MMethod = {
 0, /* dummy */
 {
-&type_model__MType, /* HashMapNode#0: MType */
-&type_array__Arraymodel__MClassType, /* HashMapNode#1: Array[MClassType] */
-&type_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType, /* N: HashMapNode[MType, Array[MClassType]] */
-&type_model__MType, /* HashNode#0: MType */
+&type_model__MMethod, /* HashSetNode#0: MMethod */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemodel__MMethod, /* N: HashSetNode[MMethod] */
+&type_model__MMethod, /* HashNode#0: MMethod */
 }
 };
-/* runtime type HashMapNode[MType, Array[MType]] */
-const struct type type_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType = {
-2085,
-"HashMapNode[MType, Array[MType]]", /* class_name_string */
-6,
+/* runtime type HashSetNode[MProperty] */
+const struct type type_hash_collection__HashSetNodemodel__MProperty = {
+2530,
+"HashSetNode[MProperty]", /* class_name_string */
+8,
 0,
-&resolution_table_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType,
-7,
+&resolution_table_hash_collection__HashSetNodemodel__MProperty,
+9,
 {
 0, /* nullable Object */
 1, /* Object */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
-336, /* nullable HashMapNode[MType, Array[MType]] */
-1484, /* HashMapNode[MType, Array[nullable MType]] */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
+1500, /* HashSetNode[Object] */
+1538, /* nullable HashSetNode[MProperty] */
 -1, /* empty */
-2085, /* HashMapNode[MType, Array[MType]] */
+2144, /* HashSetNode[PropertyLayoutElement] */
+2530, /* HashSetNode[MProperty] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType = {
+const struct types resolution_table_hash_collection__HashSetNodemodel__MProperty = {
 0, /* dummy */
 {
-&type_model__MType, /* HashMapNode#0: MType */
-&type_array__Arraymodel__MType, /* HashMapNode#1: Array[MType] */
-&type_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType, /* N: HashMapNode[MType, Array[MType]] */
-&type_model__MType, /* HashNode#0: MType */
+&type_model__MProperty, /* HashSetNode#0: MProperty */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemodel__MProperty, /* N: HashSetNode[MProperty] */
+&type_model__MProperty, /* HashNode#0: MProperty */
 }
 };
-/* runtime type nullable HashMapNode[MType, Array[MClassType]] */
-const struct type type_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType = {
-1500,
-"nullable HashMapNode[MType, Array[MClassType]]", /* class_name_string */
-5,
-1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType,
+/* runtime type nullable HashSetNode[MMethod] */
+const struct type type_nullable_hash_collection__HashSetNodemodel__MMethod = {
+1868,
+"nullable HashSetNode[MMethod]", /* class_name_string */
 6,
+1,
+&resolution_table_nullable_hash_collection__HashSetNodemodel__MMethod,
+7,
 {
 0, /* nullable Object */
 -1, /* empty */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
-336, /* nullable HashMapNode[MType, Array[MType]] */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
 -1, /* empty */
-1500, /* nullable HashMapNode[MType, Array[MClassType]] */
+1538, /* nullable HashSetNode[MProperty] */
+1868, /* nullable HashSetNode[MMethod] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MMethod = {
 0, /* dummy */
 {
-&type_model__MType, /* HashMapNode#0: MType */
-&type_array__Arraymodel__MClassType, /* HashMapNode#1: Array[MClassType] */
-&type_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MClassType, /* N: HashMapNode[MType, Array[MClassType]] */
-&type_model__MType, /* HashNode#0: MType */
+&type_model__MMethod, /* HashSetNode#0: MMethod */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemodel__MMethod, /* N: HashSetNode[MMethod] */
+&type_model__MMethod, /* HashNode#0: MMethod */
 }
 };
-/* runtime type nullable HashMapNode[MType, Array[MType]] */
-const struct type type_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType = {
-336,
-"nullable HashMapNode[MType, Array[MType]]", /* class_name_string */
-3,
+/* runtime type nullable HashSetNode[MProperty] */
+const struct type type_nullable_hash_collection__HashSetNodemodel__MProperty = {
+1538,
+"nullable HashSetNode[MProperty]", /* class_name_string */
+5,
 1,
-&resolution_table_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType,
-4,
+&resolution_table_nullable_hash_collection__HashSetNodemodel__MProperty,
+6,
 {
 0, /* nullable Object */
 -1, /* empty */
-121, /* nullable HashMapNode[MType, Array[nullable MType]] */
-336, /* nullable HashMapNode[MType, Array[MType]] */
+121, /* nullable HashSetNode[Object] */
+348, /* nullable HashSetNode[PropertyLayoutElement] */
+-1, /* empty */
+1538, /* nullable HashSetNode[MProperty] */
 },
 };
-const struct types resolution_table_nullable_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType = {
+const struct types resolution_table_nullable_hash_collection__HashSetNodemodel__MProperty = {
 0, /* dummy */
 {
-&type_model__MType, /* HashMapNode#0: MType */
-&type_array__Arraymodel__MType, /* HashMapNode#1: Array[MType] */
-&type_hash_collection__HashMapNodemodel__MTypearray__Arraymodel__MType, /* N: HashMapNode[MType, Array[MType]] */
-&type_model__MType, /* HashNode#0: MType */
+&type_model__MProperty, /* HashSetNode#0: MProperty */
+NULL, /* empty */
+&type_hash_collection__HashSetNodemodel__MProperty, /* N: HashSetNode[MProperty] */
+&type_model__MProperty, /* HashNode#0: MProperty */
 }
 };
-/* runtime type HashMapIterator[MType, Array[MClassType]] */
-const struct type type_hash_collection__HashMapIteratormodel__MTypearray__Arraymodel__MClassType = {
-2465,
-"HashMapIterator[MType, Array[MClassType]]", /* class_name_string */
-7,
+/* runtime type HashSetIterator[MMethod] */
+const struct type type_hash_collection__HashSetIteratormodel__MMethod = {
+2145,
+"HashSetIterator[MMethod]", /* class_name_string */
+5,
 0,
-&resolution_table_hash_collection__HashMapIteratormodel__MTypearray__Arraymodel__MClassType,
-8,
+&resolution_table_hash_collection__HashSetIteratormodel__MMethod,
+6,
 {
 0, /* nullable Object */
 1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
-1485, /* HashMapIterator[MType, Array[nullable MType]] */
-1501, /* MapIterator[MType, Array[MType]] */
-1817, /* MapIterator[MType, Array[MClassType]] */
-2086, /* HashMapIterator[MType, Array[MType]] */
-2465, /* HashMapIterator[MType, Array[MClassType]] */
+324, /* HashSetIterator[Object] */
+1536, /* HashSetIterator[PropertyLayoutElement] */
+1869, /* HashSetIterator[MProperty] */
+2145, /* HashSetIterator[MMethod] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratormodel__MTypearray__Arraymodel__MClassType = {
+const struct types resolution_table_hash_collection__HashSetIteratormodel__MMethod = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MTypearray__Arraymodel__MClassType, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MType, Array[MClassType]] */
+&type_hash_collection__HashSetmodel__MMethod, /* HashSet[HashSetIterator#0]: HashSet[MMethod] */
+&type_array__Arraymodel__MMethod, /* Array[Iterator#0]: Array[MMethod] */
 }
 };
-/* runtime type HashMapIterator[MType, Array[MType]] */
-const struct type type_hash_collection__HashMapIteratormodel__MTypearray__Arraymodel__MType = {
-2086,
-"HashMapIterator[MType, Array[MType]]", /* class_name_string */
-6,
+/* runtime type HashSetIterator[MProperty] */
+const struct type type_hash_collection__HashSetIteratormodel__MProperty = {
+1869,
+"HashSetIterator[MProperty]", /* class_name_string */
+4,
 0,
-&resolution_table_hash_collection__HashMapIteratormodel__MTypearray__Arraymodel__MType,
-7,
+&resolution_table_hash_collection__HashSetIteratormodel__MProperty,
+5,
 {
 0, /* nullable Object */
 1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
-1485, /* HashMapIterator[MType, Array[nullable MType]] */
-1501, /* MapIterator[MType, Array[MType]] */
--1, /* empty */
-2086, /* HashMapIterator[MType, Array[MType]] */
+324, /* HashSetIterator[Object] */
+1536, /* HashSetIterator[PropertyLayoutElement] */
+1869, /* HashSetIterator[MProperty] */
 },
 };
-const struct types resolution_table_hash_collection__HashMapIteratormodel__MTypearray__Arraymodel__MType = {
+const struct types resolution_table_hash_collection__HashSetIteratormodel__MProperty = {
 0, /* dummy */
 {
-&type_hash_collection__HashMapmodel__MTypearray__Arraymodel__MType, /* HashMap[HashMapIterator#0, HashMapIterator#1]: HashMap[MType, Array[MType]] */
+&type_hash_collection__HashSetmodel__MProperty, /* HashSet[HashSetIterator#0]: HashSet[MProperty] */
+&type_array__Arraymodel__MProperty, /* Array[Iterator#0]: Array[MProperty] */
 }
 };
-/* runtime type MapIterator[MType, Array[MClassType]] */
-const struct type type_abstract_collection__MapIteratormodel__MTypearray__Arraymodel__MClassType = {
-1817,
-"MapIterator[MType, Array[MClassType]]", /* class_name_string */
+/* runtime type NativeArray[nullable HashSetNode[MMethod]] */
+const struct type type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod = {
+2146,
+"NativeArray[nullable HashSetNode[MMethod]]", /* class_name_string */
 5,
 0,
-NULL,
+&resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod,
 6,
 {
 0, /* nullable Object */
 1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
--1, /* empty */
-1501, /* MapIterator[MType, Array[MType]] */
-1817, /* MapIterator[MType, Array[MClassType]] */
+325, /* NativeArray[nullable HashSetNode[Object]] */
+1537, /* NativeArray[nullable HashSetNode[PropertyLayoutElement]] */
+1870, /* NativeArray[nullable HashSetNode[MProperty]] */
+2146, /* NativeArray[nullable HashSetNode[MMethod]] */
 },
 };
-/* runtime type MapIterator[MType, Array[MType]] */
-const struct type type_abstract_collection__MapIteratormodel__MTypearray__Arraymodel__MType = {
-1501,
-"MapIterator[MType, Array[MType]]", /* class_name_string */
-4,
-0,
-NULL,
-5,
+const struct types resolution_table_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod = {
+0, /* dummy */
 {
-0, /* nullable Object */
-1, /* Object */
-324, /* MapIterator[MType, Array[nullable MType]] */
--1, /* empty */
-1501, /* MapIterator[MType, Array[MType]] */
-},
+&type_nullable_hash_collection__HashSetNodemodel__MMethod, /* NativeArray#0: nullable HashSetNode[MMethod] */
+&type_array__NativeArraynullable_hash_collection__HashSetNodemodel__MMethod, /* NativeArray[NativeArray#0]: NativeArray[nullable HashSetNode[MMethod]] */
+}
 };