c_src: regenerate
[nit.git] / c_src / nitc__nith.types.14.c
similarity index 69%
rename from c_src/nit__nith.types.10.c
rename to c_src/nitc__nith.types.14.c
index 0aa923f..0967586 100644 (file)
@@ -1,15 +1,29 @@
-#include "nit__nith.types.0.h"
-/* runtime type HashMapKeys[MClass, MClassType] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__nit__MClassType = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClass, MClassType]", /* class_name_string */
--1, /*CAST DEAD*/
+#include "nitc__nith.types.0.h"
+/* runtime type HashMapNode[MClass, Set[MType]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType = {
+1544,
+"HashMapNode[MClass, Set[MType]]", /* class_name_string */
+119,
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__nit__MClassType,
-124,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType,
+152,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -20,7 +34,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -39,18 +52,18 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2791, /* nullable HashMapNode[MClass, Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2341, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -114,6 +127,21 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1544, /* HashMapNode[MClass, Set[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -134,25 +162,24 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__nit_
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__nit__MClassType = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClass__nit__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapKeysIterator__nit__MClass__nit__MClassType, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, MClassType] */
+&type_core__Set__nitc__MType, /* V: Set[MType] */
+&type_nitc__MClass, /* K: MClass */
 }
 };
-/* runtime type HashMapValues[MClass, MClassType] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClass__nit__MClassType = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, MClassType]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[MClass, Set[MType]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType = {
+1545,
+"NativeArray[nullable HashMapNode[MClass, Set[MType]]]", /* class_name_string */
+190,
 0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClass__nit__MClassType,
-124,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -170,7 +197,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2320, /* Collection[MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -179,7 +205,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2329, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -187,7 +212,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -199,7 +223,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2349, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -268,6 +291,16 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -275,27 +308,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClass__nit__MClassType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__nit__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
-&type_standard__Array__nit__MClassType, /* Array[E]: Array[MClassType] */
-&type_standard__MapValuesIterator__nit__MClass__nit__MClassType, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, MClassType] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClass, MClassType]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType = {
-1258,
-"NativeArray[nullable HashMapNode[MClass, MClassType]]", /* class_name_string */
-158,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -356,6 +368,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1545, /* NativeArray[nullable HashMapNode[MClass, Set[MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -367,6 +380,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -390,6 +404,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType, /* E: nullable HashMapNode[MClass, Set[MType]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Set[MType]]] */
+}
+};
+/* runtime type HashMapKeys[MClass, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MType = {
+-1, /*CAST DEAD*/
+"HashMapKeys[MClass, Array[nullable MType]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MType,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -400,6 +434,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2409, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -423,9 +458,11 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2437, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -452,7 +489,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1258, /* NativeArray[nullable HashMapNode[MClass, MClassType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -500,6 +536,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -515,24 +553,25 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType, /* E: nullable HashMapNode[MClass, MClassType] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, MClassType]] */
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClass, Array[nullable MType]] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Array[nullable MType]] */
 }
 };
-/* runtime type HashMapIterator[MClass, MClassType] */
-const struct type type_standard__HashMapIterator__nit__MClass__nit__MClassType = {
+/* runtime type HashMapValues[MClass, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MType = {
 -1, /*CAST DEAD*/
-"HashMapIterator[MClass, MClassType]", /* class_name_string */
+"HashMapValues[MClass, Array[nullable MType]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__nit__MClass__nit__MClassType,
-77,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MType,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -557,7 +596,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__nit__MClassType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2570, /* MapIterator[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -568,6 +606,8 @@ const struct type type_standard__HashMapIterator__nit__MClass__nit__MClassType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -608,25 +648,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__nit__MClassType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MClass__nit__MClassType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__nit__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
-}
-};
-/* runtime type HashMapNode[MClass, MClassType] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType = {
-1260,
-"HashMapNode[MClass, MClassType]", /* class_name_string */
-99,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -641,6 +662,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2489, /* Collection[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -651,7 +673,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2245, /* nullable HashMapNode[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -663,6 +684,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -677,6 +699,27 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClass, Array[nullable MType]] */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
+&type_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Array[nullable MType]] */
+}
+};
+/* runtime type HashMapIterator[MClass, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MType = {
+-1, /*CAST DEAD*/
+"HashMapIterator[MClass, Array[nullable MType]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MType,
+79,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -721,10 +764,10 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2696, /* MapIterator[MClass, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1260, /* HashMapNode[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -732,6 +775,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -753,6 +797,25 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClass, Array[nullable MType]] */
+}
+};
+/* runtime type HashMapNode[MClass, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType = {
+1549,
+"HashMapNode[MClass, Array[nullable MType]]", /* class_name_string */
+120,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -773,26 +836,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__nit_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClass__nit__MClassType = {
-0, /* dummy */
-{
-&type_nit__MClassType, /* V: MClassType */
-&type_nit__MClass, /* K: MClass */
-}
-};
-/* runtime type ArrayMapKeys[MClass, AType] */
-const struct type type_standard__array__ArrayMapKeys__nit__MClass__nit__AType = {
--1, /*CAST DEAD*/
-"ArrayMapKeys[MClass, AType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayMapKeys__nit__MClass__nit__AType,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -803,7 +846,6 @@ const struct type type_standard__array__ArrayMapKeys__nit__MClass__nit__AType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -817,6 +859,7 @@ const struct type type_standard__array__ArrayMapKeys__nit__MClass__nit__AType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2792, /* nullable HashMapNode[MClass, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -826,12 +869,11 @@ const struct type type_standard__array__ArrayMapKeys__nit__MClass__nit__AType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2341, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -892,6 +934,7 @@ const struct type type_standard__array__ArrayMapKeys__nit__MClass__nit__AType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1549, /* HashMapNode[MClass, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -901,6 +944,14 @@ const struct type type_standard__array__ArrayMapKeys__nit__MClass__nit__AType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -917,26 +968,24 @@ const struct type type_standard__array__ArrayMapKeys__nit__MClass__nit__AType =
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArrayMapKeys__nit__MClass__nit__AType = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_standard__ArrayMap__nit__MClass__nit__AType, /* ArrayMap[K, E]: ArrayMap[MClass, AType] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_nit__MClass, /* K: MClass */
-&type_standard__MapKeysIterator__nit__MClass__nit__AType, /* MapKeysIterator[K, E]: MapKeysIterator[MClass, AType] */
+&type_core__Array__nullable__nitc__MType, /* V: Array[nullable MType] */
+&type_nitc__MClass, /* K: MClass */
 }
 };
-/* runtime type ArrayMapValues[MClass, AType] */
-const struct type type_standard__array__ArrayMapValues__nit__MClass__nit__AType = {
--1, /*CAST DEAD*/
-"ArrayMapValues[MClass, AType]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[MClass, Array[nullable MType]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType = {
+1550,
+"NativeArray[nullable HashMapNode[MClass, Array[nullable MType]]]", /* class_name_string */
+191,
 0,
-&resolution_table_standard__array__ArrayMapValues__nit__MClass__nit__AType,
-124,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -961,7 +1010,6 @@ const struct type type_standard__array__ArrayMapValues__nit__MClass__nit__AType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2327, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -971,7 +1019,6 @@ const struct type type_standard__array__ArrayMapValues__nit__MClass__nit__AType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -997,7 +1044,6 @@ const struct type type_standard__array__ArrayMapValues__nit__MClass__nit__AType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2363, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1007,7 +1053,6 @@ const struct type type_standard__array__ArrayMapValues__nit__MClass__nit__AType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2373, /* Collection[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1052,6 +1097,10 @@ const struct type type_standard__array__ArrayMapValues__nit__MClass__nit__AType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1059,27 +1108,6 @@ const struct type type_standard__array__ArrayMapValues__nit__MClass__nit__AType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayMapValues__nit__MClass__nit__AType = {
-0, /* dummy */
-{
-&type_standard__ArrayMap__nit__MClass__nit__AType, /* ArrayMap[K, E]: ArrayMap[MClass, AType] */
-&type_standard__Array__nit__AType, /* Array[E]: Array[AType] */
-&type_standard__MapValuesIterator__nit__MClass__nit__AType, /* MapValuesIterator[K, E]: MapValuesIterator[MClass, AType] */
-}
-};
-/* runtime type Array[Couple[MClass, AType]] */
-const struct type type_standard__Array__standard__Couple__nit__MClass__nit__AType = {
-1263,
-"Array[Couple[MClass, AType]]", /* class_name_string */
-429,
-0,
-&resolution_table_standard__Array__standard__Couple__nit__MClass__nit__AType,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1114,7 +1142,6 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1138,7 +1165,6 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2361, /* Collection[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1149,6 +1175,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1550, /* NativeArray[nullable HashMapNode[MClass, Array[nullable MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1159,6 +1186,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1182,9 +1210,33 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType, /* E: nullable HashMapNode[MClass, Array[nullable MType]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Array[nullable MType]]] */
+}
+};
+/* runtime type HashMap[MType, Set[MType]] */
+const struct type type_core__HashMap__nitc__MType__core__Set__nitc__MType = {
+1551,
+"HashMap[MType, Set[MType]]", /* class_name_string */
+70,
+0,
+&resolution_table_core__HashMap__nitc__MType__core__Set__nitc__MType,
+85,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2203, /* MapRead[nullable Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2979, /* Map[MType, Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1202,7 +1254,6 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1235,18 +1286,19 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1551, /* HashMap[MType, Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1260,8 +1312,38 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2482, /* AbstractArrayRead[Couple[MClass, AType]] */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__HashMap__nitc__MType__core__Set__nitc__MType = {
+0, /* dummy */
+{
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__hash_collection__HashMapIterator__nitc__MType__core__Set__nitc__MType, /* HashMapIterator[K, V]: HashMapIterator[MType, Set[MType]] */
+&type_nitc__MType, /* K: MType */
+&type_core__Set__nitc__MType, /* V: Set[MType] */
+&type_core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType, /* HashMapNode[K, V]: HashMapNode[MType, Set[MType]] */
+&type_core__hash_collection__HashMapKeys__nitc__MType__core__Set__nitc__MType, /* HashMapKeys[K, V]: HashMapKeys[MType, Set[MType]] */
+&type_core__hash_collection__HashMapValues__nitc__MType__core__Set__nitc__MType, /* HashMapValues[K, V]: HashMapValues[MType, Set[MType]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType, /* nullable N: nullable HashMapNode[MType, Set[MType]] */
+NULL, /* empty */
+&type_core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType, /* N: HashMapNode[MType, Set[MType]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, Set[MType]]] */
+}
+};
+/* runtime type Array[AParam] */
+const struct type type_core__Array__nitc__AParam = {
+1552,
+"Array[AParam]", /* class_name_string */
+459,
+0,
+&resolution_table_core__Array__nitc__AParam,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1296,12 +1378,14 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2440, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1321,6 +1405,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2460, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1331,6 +1416,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2471, /* Collection[AParam] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1356,7 +1442,6 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1371,6 +1456,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1381,11 +1467,12 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2706, /* AbstractArray[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1418,6 +1505,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1425,6 +1513,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2565, /* AbstractArrayRead[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1445,8 +1534,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
+2586, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1457,6 +1545,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2597, /* AbstractArrayRead[AParam] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1496,6 +1585,7 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1507,7 +1597,6 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1263, /* Array[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1542,12 +1631,14 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1568,38 +1659,8 @@ const struct type type_standard__Array__standard__Couple__nit__MClass__nit__ATyp
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Array__standard__Couple__nit__MClass__nit__AType = {
-0, /* dummy */
-{
-&type_standard__Couple__nit__MClass__nit__AType, /* E: Couple[MClass, AType] */
-&type_standard__Array__standard__Couple__nit__MClass__nit__AType, /* Array[E]: Array[Couple[MClass, AType]] */
-&type_standard__Collection__standard__Couple__nit__MClass__nit__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
-&type_standard__Array__standard__Couple__nit__MClass__nit__AType, /* Array[E]: Array[Couple[MClass, AType]] */
-&type_standard__NativeArray__standard__Couple__nit__MClass__nit__AType, /* NativeArray[E]: NativeArray[Couple[MClass, AType]] */
-&type_standard__Couple__nit__MClass__nit__AType, /* E: Couple[MClass, AType] */
-&type_standard__Collection__standard__Couple__nit__MClass__nit__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
-&type_standard__Couple__nit__MClass__nit__AType, /* E: Couple[MClass, AType] */
-&type_standard__Collection__standard__Couple__nit__MClass__nit__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
-&type_standard__Collection__standard__Couple__nit__MClass__nit__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
-&type_standard__Array__standard__Couple__nit__MClass__nit__AType, /* Array[E]: Array[Couple[MClass, AType]] */
-&type_standard__AbstractArray__standard__Couple__nit__MClass__nit__AType, /* AbstractArray[E]: AbstractArray[Couple[MClass, AType]] */
-&type_standard__array__ArrayIterator__standard__Couple__nit__MClass__nit__AType, /* ArrayIterator[E]: ArrayIterator[Couple[MClass, AType]] */
-}
-};
-/* runtime type CoupleMapIterator[MClass, AType] */
-const struct type type_standard__abstract_collection__CoupleMapIterator__nit__MClass__nit__AType = {
--1, /*CAST DEAD*/
-"CoupleMapIterator[MClass, AType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__abstract_collection__CoupleMapIterator__nit__MClass__nit__AType,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
+2910, /* AbstractArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1610,6 +1671,7 @@ const struct type type_standard__abstract_collection__CoupleMapIterator__nit__MC
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2921, /* AbstractArray[AParam] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1624,7 +1686,6 @@ const struct type type_standard__abstract_collection__CoupleMapIterator__nit__MC
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2571, /* MapIterator[MClass, AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1650,6 +1711,7 @@ const struct type type_standard__abstract_collection__CoupleMapIterator__nit__MC
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1664,6 +1726,7 @@ const struct type type_standard__abstract_collection__CoupleMapIterator__nit__MC
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1674,47 +1737,7 @@ const struct type type_standard__abstract_collection__CoupleMapIterator__nit__MC
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__abstract_collection__CoupleMapIterator__nit__MClass__nit__AType = {
-0, /* dummy */
-{
-&type_standard__Iterator__standard__Couple__nit__MClass__nit__AType, /* Iterator[Couple[K, V]]: Iterator[Couple[MClass, AType]] */
-}
-};
-/* runtime type Couple[MClass, AType] */
-const struct type type_standard__Couple__nit__MClass__nit__AType = {
-1265,
-"Couple[MClass, AType]", /* class_name_string */
-2,
-0,
-&resolution_table_standard__Couple__nit__MClass__nit__AType,
-4,
-{
-80, /* Object */
-2622, /* nullable Object */
-1265, /* Couple[MClass, AType] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Couple__nit__MClass__nit__AType = {
-0, /* dummy */
-{
-&type_nit__MClass, /* F: MClass */
-&type_nit__AType, /* S: AType */
-}
-};
-/* runtime type Array[AExternCodeBlock] */
-const struct type type_standard__Array__nit__AExternCodeBlock = {
-1266,
-"Array[AExternCodeBlock]", /* class_name_string */
-430,
-0,
-&resolution_table_standard__Array__nit__AExternCodeBlock,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1739,7 +1762,6 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2327, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1749,7 +1771,7 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
+258, /* Array[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1768,18 +1790,18 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1327, /* Array[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2362, /* Collection[AExternCodeBlock] */
-2363, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1552, /* Array[AParam] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1830,6 +1852,39 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__nitc__AParam = {
+0, /* dummy */
+{
+&type_nitc__AParam, /* E: AParam */
+&type_core__Array__nitc__AParam, /* Array[E]: Array[AParam] */
+&type_core__Collection__nitc__AParam, /* Collection[E]: Collection[AParam] */
+&type_core__Array__nitc__AParam, /* Array[E]: Array[AParam] */
+&type_core__AbstractArray__nitc__AParam, /* AbstractArray[E]: AbstractArray[AParam] */
+&type_core__NativeArray__nitc__AParam, /* NativeArray[E]: NativeArray[AParam] */
+&type_nitc__AParam, /* E: AParam */
+&type_core__Collection__nitc__AParam, /* Collection[E]: Collection[AParam] */
+&type_nitc__AParam, /* E: AParam */
+&type_core__Collection__nitc__AParam, /* Collection[E]: Collection[AParam] */
+&type_core__Collection__nitc__AParam, /* Collection[E]: Collection[AParam] */
+&type_core__Array__nitc__AParam, /* Array[E]: Array[AParam] */
+&type_core__AbstractArray__nitc__AParam, /* AbstractArray[E]: AbstractArray[AParam] */
+&type_core__array__ArrayIterator__nitc__AParam, /* ArrayIterator[E]: ArrayIterator[AParam] */
+&type_core__array__ArrayReverseIterator__nitc__AParam, /* ArrayReverseIterator[E]: ArrayReverseIterator[AParam] */
+}
+};
+/* runtime type Array[AExternCall] */
+const struct type type_core__Array__nitc__AExternCall = {
+1553,
+"Array[AExternCall]", /* class_name_string */
+460,
+0,
+&resolution_table_core__Array__nitc__AExternCall,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1837,7 +1892,6 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1860,19 +1914,19 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2447, /* AbstractArrayRead[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
+2440, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1892,12 +1946,11 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2460, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2483, /* AbstractArrayRead[AExternCodeBlock] */
-2484, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1905,6 +1958,7 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2472, /* Collection[AExternCall] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1943,6 +1997,7 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1957,6 +2012,8 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1981,7 +2038,6 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2671, /* AbstractArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1990,14 +2046,15 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2565, /* AbstractArrayRead[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2017,9 +2074,8 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2707, /* AbstractArray[AExternCodeBlock] */
-2708, /* AbstractArray[ANode] */
 -1, /* empty */
+2586, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2031,6 +2087,7 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2598, /* AbstractArrayRead[AExternCall] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2069,6 +2126,7 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2080,8 +2138,6 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2114,15 +2170,16 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-150, /* Array[Prod] */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2143,9 +2200,8 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1266, /* Array[AExternCodeBlock] */
-1267, /* Array[ANode] */
 -1, /* empty */
+2910, /* AbstractArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2157,6 +2213,7 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2922, /* AbstractArray[AExternCall] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2195,6 +2252,7 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2203,43 +2261,13 @@ const struct type type_standard__Array__nit__AExternCodeBlock = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Array__nit__AExternCodeBlock = {
-0, /* dummy */
-{
-&type_nit__AExternCodeBlock, /* E: AExternCodeBlock */
-&type_standard__Array__nit__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
-&type_standard__Collection__nit__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
-&type_standard__Array__nit__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
-&type_standard__NativeArray__nit__AExternCodeBlock, /* NativeArray[E]: NativeArray[AExternCodeBlock] */
-&type_nit__AExternCodeBlock, /* E: AExternCodeBlock */
-&type_standard__Collection__nit__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
-&type_nit__AExternCodeBlock, /* E: AExternCodeBlock */
-&type_standard__Collection__nit__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
-&type_standard__Collection__nit__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
-&type_standard__Array__nit__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
-&type_standard__AbstractArray__nit__AExternCodeBlock, /* AbstractArray[E]: AbstractArray[AExternCodeBlock] */
-&type_standard__array__ArrayIterator__nit__AExternCodeBlock, /* ArrayIterator[E]: ArrayIterator[AExternCodeBlock] */
-}
-};
-/* runtime type Array[ANode] */
-const struct type type_standard__Array__nit__ANode = {
-1267,
-"Array[ANode]", /* class_name_string */
-431,
-0,
-&resolution_table_standard__Array__nit__ANode,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2268,7 +2296,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2285,6 +2312,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+258, /* Array[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2294,7 +2322,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2363, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2304,6 +2331,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1327, /* Array[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2315,6 +2343,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1553, /* Array[AExternCall] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2356,7 +2385,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2365,6 +2393,39 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__nitc__AExternCall = {
+0, /* dummy */
+{
+&type_nitc__AExternCall, /* E: AExternCall */
+&type_core__Array__nitc__AExternCall, /* Array[E]: Array[AExternCall] */
+&type_core__Collection__nitc__AExternCall, /* Collection[E]: Collection[AExternCall] */
+&type_core__Array__nitc__AExternCall, /* Array[E]: Array[AExternCall] */
+&type_core__AbstractArray__nitc__AExternCall, /* AbstractArray[E]: AbstractArray[AExternCall] */
+&type_core__NativeArray__nitc__AExternCall, /* NativeArray[E]: NativeArray[AExternCall] */
+&type_nitc__AExternCall, /* E: AExternCall */
+&type_core__Collection__nitc__AExternCall, /* Collection[E]: Collection[AExternCall] */
+&type_nitc__AExternCall, /* E: AExternCall */
+&type_core__Collection__nitc__AExternCall, /* Collection[E]: Collection[AExternCall] */
+&type_core__Collection__nitc__AExternCall, /* Collection[E]: Collection[AExternCall] */
+&type_core__Array__nitc__AExternCall, /* Array[E]: Array[AExternCall] */
+&type_core__AbstractArray__nitc__AExternCall, /* AbstractArray[E]: AbstractArray[AExternCall] */
+&type_core__array__ArrayIterator__nitc__AExternCall, /* ArrayIterator[E]: ArrayIterator[AExternCall] */
+&type_core__array__ArrayReverseIterator__nitc__AExternCall, /* ArrayReverseIterator[E]: ArrayReverseIterator[AExternCall] */
+}
+};
+/* runtime type Array[AForGroup] */
+const struct type type_core__Array__nitc__AForGroup = {
+1554,
+"Array[AForGroup]", /* class_name_string */
+461,
+0,
+&resolution_table_core__Array__nitc__AForGroup,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2389,7 +2450,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2400,12 +2460,14 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2440, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2416,7 +2478,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2484, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2426,6 +2487,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2460, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2438,6 +2500,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2473, /* Collection[AForGroup] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2475,6 +2538,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2489,6 +2553,8 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2510,7 +2576,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2522,6 +2587,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2529,6 +2595,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2565, /* AbstractArrayRead[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2537,7 +2604,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2708, /* AbstractArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2550,6 +2616,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2586, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2562,6 +2629,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2599, /* AbstractArrayRead[AForGroup] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2599,8 +2667,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2646,12 +2713,14 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2663,7 +2732,6 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1267, /* Array[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2674,6 +2742,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2910, /* AbstractArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2686,6 +2755,7 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2923, /* AbstractArray[AForGroup] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2722,38 +2792,8 @@ const struct type type_standard__Array__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Array__nit__ANode = {
-0, /* dummy */
-{
-&type_nit__ANode, /* E: ANode */
-&type_standard__Array__nit__ANode, /* Array[E]: Array[ANode] */
-&type_standard__Collection__nit__ANode, /* Collection[E]: Collection[ANode] */
-&type_standard__Array__nit__ANode, /* Array[E]: Array[ANode] */
-&type_standard__NativeArray__nit__ANode, /* NativeArray[E]: NativeArray[ANode] */
-&type_nit__ANode, /* E: ANode */
-&type_standard__Collection__nit__ANode, /* Collection[E]: Collection[ANode] */
-&type_nit__ANode, /* E: ANode */
-&type_standard__Collection__nit__ANode, /* Collection[E]: Collection[ANode] */
-&type_standard__Collection__nit__ANode, /* Collection[E]: Collection[ANode] */
-&type_standard__Array__nit__ANode, /* Array[E]: Array[ANode] */
-&type_standard__AbstractArray__nit__ANode, /* AbstractArray[E]: AbstractArray[ANode] */
-&type_standard__array__ArrayIterator__nit__ANode, /* ArrayIterator[E]: ArrayIterator[ANode] */
-}
-};
-/* runtime type ListNode[ANode] */
-const struct type type_standard__list__ListNode__nit__ANode = {
-1268,
-"ListNode[ANode]", /* class_name_string */
-139,
-0,
-&resolution_table_standard__list__ListNode__nit__ANode,
-144,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2768,6 +2808,7 @@ const struct type type_standard__list__ListNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2787,7 +2828,6 @@ const struct type type_standard__list__ListNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2813,7 +2853,7 @@ const struct type type_standard__list__ListNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2363, /* Collection[ANode] */
+258, /* Array[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2832,6 +2872,7 @@ const struct type type_standard__list__ListNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1327, /* Array[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2844,6 +2885,7 @@ const struct type type_standard__list__ListNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1554, /* Array[AForGroup] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2876,93 +2918,84 @@ const struct type type_standard__list__ListNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2636, /* Container[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2625, /* nullable ListNode[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1268, /* ListNode[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__list__ListNode__nit__ANode = {
+const struct types resolution_table_core__Array__nitc__AForGroup = {
 0, /* dummy */
 {
-&type_nullable__standard__list__ListNode__nit__ANode, /* nullable ListNode[E]: nullable ListNode[ANode] */
-&type_standard__Array__nit__ANode, /* Array[E]: Array[ANode] */
-&type_standard__abstract_collection__ContainerIterator__nit__ANode, /* ContainerIterator[E]: ContainerIterator[ANode] */
-&type_nit__ANode, /* E: ANode */
+&type_nitc__AForGroup, /* E: AForGroup */
+&type_core__Array__nitc__AForGroup, /* Array[E]: Array[AForGroup] */
+&type_core__Collection__nitc__AForGroup, /* Collection[E]: Collection[AForGroup] */
+&type_core__Array__nitc__AForGroup, /* Array[E]: Array[AForGroup] */
+&type_core__AbstractArray__nitc__AForGroup, /* AbstractArray[E]: AbstractArray[AForGroup] */
+&type_core__NativeArray__nitc__AForGroup, /* NativeArray[E]: NativeArray[AForGroup] */
+&type_nitc__AForGroup, /* E: AForGroup */
+&type_core__Collection__nitc__AForGroup, /* Collection[E]: Collection[AForGroup] */
+&type_nitc__AForGroup, /* E: AForGroup */
+&type_core__Collection__nitc__AForGroup, /* Collection[E]: Collection[AForGroup] */
+&type_core__Collection__nitc__AForGroup, /* Collection[E]: Collection[AForGroup] */
+&type_core__Array__nitc__AForGroup, /* Array[E]: Array[AForGroup] */
+&type_core__AbstractArray__nitc__AForGroup, /* AbstractArray[E]: AbstractArray[AForGroup] */
+&type_core__array__ArrayIterator__nitc__AForGroup, /* ArrayIterator[E]: ArrayIterator[AForGroup] */
+&type_core__array__ArrayReverseIterator__nitc__AForGroup, /* ArrayReverseIterator[E]: ArrayReverseIterator[AForGroup] */
 }
 };
-/* runtime type ListIterator[ANode] */
-const struct type type_standard__ListIterator__nit__ANode = {
+/* runtime type ArraySetIterator[MType] */
+const struct type type_core__array__ArraySetIterator__nitc__MType = {
 -1, /*CAST DEAD*/
-"ListIterator[ANode]", /* class_name_string */
+"ArraySetIterator[MType]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__ListIterator__nit__ANode,
-5,
+&resolution_table_core__array__ArraySetIterator__nitc__MType,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__ListIterator__nit__ANode = {
-0, /* dummy */
-{
-&type_standard__Array__nit__ANode, /* Array[E]: Array[ANode] */
-&type_standard__List__nit__ANode, /* List[E]: List[ANode] */
-}
-};
-/* runtime type HashSetIterator[ANode] */
-const struct type type_standard__hash_collection__HashSetIterator__nit__ANode = {
--1, /*CAST DEAD*/
-"HashSetIterator[ANode]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashSetIterator__nit__ANode,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+-1, /* empty */
+2831, /* Iterator[MType] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashSetIterator__nit__ANode = {
+const struct types resolution_table_core__array__ArraySetIterator__nitc__MType = {
 0, /* dummy */
 {
-&type_standard__Array__nit__ANode, /* Array[E]: Array[ANode] */
-&type_standard__HashSet__nit__ANode, /* HashSet[E]: HashSet[ANode] */
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__Iterator__nitc__MType, /* Iterator[E]: Iterator[MType] */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[ANode]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__ANode = {
-1271,
-"NativeArray[nullable HashSetNode[ANode]]", /* class_name_string */
-159,
+/* runtime type Array[MAttributeDef] */
+const struct type type_core__Array__nitc__MAttributeDef = {
+1556,
+"Array[MAttributeDef]", /* class_name_string */
+402,
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__ANode,
-219,
+&resolution_table_core__Array__nitc__MAttributeDef,
+510,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2981,6 +3014,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2417, /* Collection[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2996,7 +3030,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
+2435, /* Collection[PropertyLayoutElement] */
+2436, /* Collection[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3026,6 +3063,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2466, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3033,6 +3071,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2474, /* Collection[MAttributeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3069,6 +3108,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3083,6 +3123,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3099,6 +3141,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2541, /* AbstractArrayRead[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3112,15 +3155,16 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1211, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
+2559, /* AbstractArrayRead[PropertyLayoutElement] */
+2560, /* AbstractArrayRead[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1271, /* NativeArray[nullable HashSetNode[ANode]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3148,6 +3192,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2592, /* AbstractArrayRead[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3155,6 +3200,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2600, /* AbstractArrayRead[MAttributeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3180,26 +3226,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__ANode = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashSetNode__nit__ANode, /* E: nullable HashSetNode[ANode] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__ANode, /* NativeArray[E]: NativeArray[nullable HashSetNode[ANode]] */
-}
-};
-/* runtime type HashSetNode[ANode] */
-const struct type type_standard__hash_collection__HashSetNode__nit__ANode = {
-1272,
-"HashSetNode[ANode]", /* class_name_string */
-36,
-0,
-&resolution_table_standard__hash_collection__HashSetNode__nit__ANode,
-48,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3210,9 +3236,8 @@ const struct type type_standard__hash_collection__HashSetNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2238, /* nullable HashSetNode[Object] */
-2246, /* nullable HashSetNode[ANode] */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3233,8 +3258,6 @@ const struct type type_standard__hash_collection__HashSetNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1212, /* HashSetNode[Object] */
-1272, /* HashSetNode[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3244,28 +3267,13 @@ const struct type type_standard__hash_collection__HashSetNode__nit__ANode = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2865, /* AbstractArray[MPropDef] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashSetNode__nit__ANode = {
-0, /* dummy */
-{
-NULL, /* empty */
-&type_nit__ANode, /* K: ANode */
-}
-};
-/* runtime type NativeArray[MType] */
-const struct type type_standard__NativeArray__nit__MType = {
-1273,
-"NativeArray[MType]", /* class_name_string */
-26,
-0,
-&resolution_table_standard__NativeArray__nit__MType,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3275,7 +3283,10 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
+2883, /* AbstractArray[PropertyLayoutElement] */
+2884, /* AbstractArray[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3290,7 +3301,6 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1273, /* NativeArray[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3298,7 +3308,6 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3309,14 +3318,15 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2916, /* AbstractArray[nullable PropertyLayoutElement] */
 -1, /* empty */
-1451, /* NativeArray[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2924, /* AbstractArray[MAttributeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3353,6 +3363,7 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3367,6 +3378,7 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3376,12 +3388,15 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+106, /* Array[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+242, /* Array[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1556, /* Array[MAttributeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3405,6 +3420,7 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+236, /* Array[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3432,6 +3448,11 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1457, /* Array[nullable PropertyLayoutElement] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3485,51 +3506,61 @@ const struct type type_standard__NativeArray__nit__MType = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nit__MType = {
+const struct types resolution_table_core__Array__nitc__MAttributeDef = {
 0, /* dummy */
 {
-&type_nit__MType, /* E: MType */
-&type_standard__NativeArray__nit__MType, /* NativeArray[E]: NativeArray[MType] */
+&type_nitc__MAttributeDef, /* E: MAttributeDef */
+&type_core__Array__nitc__MAttributeDef, /* Array[E]: Array[MAttributeDef] */
+&type_core__Collection__nitc__MAttributeDef, /* Collection[E]: Collection[MAttributeDef] */
+&type_core__Array__nitc__MAttributeDef, /* Array[E]: Array[MAttributeDef] */
+&type_core__AbstractArray__nitc__MAttributeDef, /* AbstractArray[E]: AbstractArray[MAttributeDef] */
+&type_core__NativeArray__nitc__MAttributeDef, /* NativeArray[E]: NativeArray[MAttributeDef] */
+&type_nitc__MAttributeDef, /* E: MAttributeDef */
+&type_core__Collection__nitc__MAttributeDef, /* Collection[E]: Collection[MAttributeDef] */
+&type_nitc__MAttributeDef, /* E: MAttributeDef */
+&type_core__Collection__nitc__MAttributeDef, /* Collection[E]: Collection[MAttributeDef] */
+&type_core__Collection__nitc__MAttributeDef, /* Collection[E]: Collection[MAttributeDef] */
+&type_core__Array__nitc__MAttributeDef, /* Array[E]: Array[MAttributeDef] */
+&type_core__AbstractArray__nitc__MAttributeDef, /* AbstractArray[E]: AbstractArray[MAttributeDef] */
+&type_core__array__ArrayIterator__nitc__MAttributeDef, /* ArrayIterator[E]: ArrayIterator[MAttributeDef] */
+&type_core__array__ArrayReverseIterator__nitc__MAttributeDef, /* ArrayReverseIterator[E]: ArrayReverseIterator[MAttributeDef] */
 }
 };
-/* runtime type ArrayIterator[MType] */
-const struct type type_standard__array__ArrayIterator__nit__MType = {
-1274,
-"ArrayIterator[MType]", /* class_name_string */
-7,
+/* runtime type HashMap2[MModule, MType, Array[MAttributeDef]] */
+const struct type type_more_collections__HashMap2__nitc__MModule__nitc__MType__core__Array__nitc__MAttributeDef = {
+-1, /*CAST DEAD*/
+"HashMap2[MModule, MType, Array[MAttributeDef]]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__array__ArrayIterator__nit__MType,
-9,
+&resolution_table_more_collections__HashMap2__nitc__MModule__nitc__MType__core__Array__nitc__MAttributeDef,
+3,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-1274, /* ArrayIterator[MType] */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArrayIterator__nit__MType = {
+const struct types resolution_table_more_collections__HashMap2__nitc__MModule__nitc__MType__core__Array__nitc__MAttributeDef = {
 0, /* dummy */
 {
-&type_standard__Array__nit__MType, /* Array[E]: Array[MType] */
-&type_standard__AbstractArrayRead__nit__MType, /* AbstractArrayRead[E]: AbstractArrayRead[MType] */
+&type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMap[K1, HashMap[K2, V]]: HashMap[MModule, HashMap[MType, Array[MAttributeDef]]] */
+&type_nitc__MModule, /* K1: MModule */
+&type_nitc__MType, /* K2: MType */
+&type_core__Array__nitc__MAttributeDef, /* V: Array[MAttributeDef] */
+&type_core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMap[K2, V]: HashMap[MType, Array[MAttributeDef]] */
 }
 };
-/* runtime type HashMapKeys[MModule, Set[MClassDef]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClassDef = {
--1, /*CAST DEAD*/
-"HashMapKeys[MModule, Set[MClassDef]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Array[MVirtualTypeDef] */
+const struct type type_core__Array__nitc__MVirtualTypeDef = {
+1558,
+"Array[MVirtualTypeDef]", /* class_name_string */
+403,
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClassDef,
-124,
+&resolution_table_core__Array__nitc__MVirtualTypeDef,
+510,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3539,7 +3570,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2312, /* Collection[MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3549,6 +3579,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2417, /* Collection[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3564,8 +3595,10 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
+2433, /* Collection[Object] */
 -1, /* empty */
+2435, /* Collection[PropertyLayoutElement] */
+2436, /* Collection[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3595,6 +3628,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2466, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3603,6 +3637,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2475, /* Collection[MVirtualTypeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3638,6 +3673,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3652,27 +3688,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClassDef = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClassDef, /* HashMap[K, V]: HashMap[MModule, Set[MClassDef]] */
-&type_standard__Array__nit__MModule, /* Array[E]: Array[MModule] */
-&type_standard__MapKeysIterator__nit__MModule__standard__Set__nit__MClassDef, /* MapKeysIterator[K, V]: MapKeysIterator[MModule, Set[MClassDef]] */
-}
-};
-/* runtime type HashMapValues[MModule, Set[MClassDef]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClassDef = {
--1, /*CAST DEAD*/
-"HashMapValues[MModule, Set[MClassDef]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClassDef,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3689,6 +3706,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2541, /* AbstractArrayRead[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3704,10 +3722,12 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
+2559, /* AbstractArrayRead[PropertyLayoutElement] */
+2560, /* AbstractArrayRead[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3737,6 +3757,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2592, /* AbstractArrayRead[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3745,6 +3766,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2601, /* AbstractArrayRead[MVirtualTypeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3762,7 +3784,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2392, /* Collection[Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3781,6 +3802,17 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3795,32 +3827,12 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClassDef = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClassDef, /* HashMap[K, V]: HashMap[MModule, Set[MClassDef]] */
-&type_standard__Array__standard__Set__nit__MClassDef, /* Array[E]: Array[Set[MClassDef]] */
-&type_standard__MapValuesIterator__nit__MModule__standard__Set__nit__MClassDef, /* MapValuesIterator[K, V]: MapValuesIterator[MModule, Set[MClassDef]] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef = {
-1277,
-"NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]]", /* class_name_string */
-160,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2865, /* AbstractArray[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3836,7 +3848,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
+2883, /* AbstractArray[PropertyLayoutElement] */
+2884, /* AbstractArray[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3868,6 +3883,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2916, /* AbstractArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3876,6 +3892,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2925, /* AbstractArray[MVirtualTypeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3911,6 +3928,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3925,6 +3943,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3934,13 +3953,16 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+106, /* Array[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+242, /* Array[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1558, /* Array[MVirtualTypeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3963,6 +3985,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+236, /* Array[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3974,7 +3997,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1277, /* NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3991,6 +4013,20 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1457, /* Array[nullable PropertyLayoutElement] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4035,24 +4071,61 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef = {
+const struct types resolution_table_core__Array__nitc__MVirtualTypeDef = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef, /* E: nullable HashMapNode[MModule, Set[MClassDef]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef, /* NativeArray[E]: NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]] */
+&type_nitc__MVirtualTypeDef, /* E: MVirtualTypeDef */
+&type_core__Array__nitc__MVirtualTypeDef, /* Array[E]: Array[MVirtualTypeDef] */
+&type_core__Collection__nitc__MVirtualTypeDef, /* Collection[E]: Collection[MVirtualTypeDef] */
+&type_core__Array__nitc__MVirtualTypeDef, /* Array[E]: Array[MVirtualTypeDef] */
+&type_core__AbstractArray__nitc__MVirtualTypeDef, /* AbstractArray[E]: AbstractArray[MVirtualTypeDef] */
+&type_core__NativeArray__nitc__MVirtualTypeDef, /* NativeArray[E]: NativeArray[MVirtualTypeDef] */
+&type_nitc__MVirtualTypeDef, /* E: MVirtualTypeDef */
+&type_core__Collection__nitc__MVirtualTypeDef, /* Collection[E]: Collection[MVirtualTypeDef] */
+&type_nitc__MVirtualTypeDef, /* E: MVirtualTypeDef */
+&type_core__Collection__nitc__MVirtualTypeDef, /* Collection[E]: Collection[MVirtualTypeDef] */
+&type_core__Collection__nitc__MVirtualTypeDef, /* Collection[E]: Collection[MVirtualTypeDef] */
+&type_core__Array__nitc__MVirtualTypeDef, /* Array[E]: Array[MVirtualTypeDef] */
+&type_core__AbstractArray__nitc__MVirtualTypeDef, /* AbstractArray[E]: AbstractArray[MVirtualTypeDef] */
+&type_core__array__ArrayIterator__nitc__MVirtualTypeDef, /* ArrayIterator[E]: ArrayIterator[MVirtualTypeDef] */
+&type_core__array__ArrayReverseIterator__nitc__MVirtualTypeDef, /* ArrayReverseIterator[E]: ArrayReverseIterator[MVirtualTypeDef] */
 }
 };
-/* runtime type HashMapIterator[MModule, Set[MClassDef]] */
-const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClassDef = {
+/* runtime type HashMap2[MModule, MType, Array[MVirtualTypeDef]] */
+const struct type type_more_collections__HashMap2__nitc__MModule__nitc__MType__core__Array__nitc__MVirtualTypeDef = {
 -1, /*CAST DEAD*/
-"HashMapIterator[MModule, Set[MClassDef]]", /* class_name_string */
+"HashMap2[MModule, MType, Array[MVirtualTypeDef]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClassDef,
-77,
+&resolution_table_more_collections__HashMap2__nitc__MModule__nitc__MType__core__Array__nitc__MVirtualTypeDef,
+3,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+},
+};
+const struct types resolution_table_more_collections__HashMap2__nitc__MModule__nitc__MType__core__Array__nitc__MVirtualTypeDef = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMap[K1, HashMap[K2, V]]: HashMap[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
+&type_nitc__MModule, /* K1: MModule */
+&type_nitc__MType, /* K2: MType */
+&type_core__Array__nitc__MVirtualTypeDef, /* V: Array[MVirtualTypeDef] */
+&type_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMap[K2, V]: HashMap[MType, Array[MVirtualTypeDef]] */
+}
+};
+/* runtime type NativeArray[AExpr] */
+const struct type type_core__NativeArray__nitc__AExpr = {
+1560,
+"NativeArray[AExpr]", /* class_name_string */
+45,
+0,
+&resolution_table_core__NativeArray__nitc__AExpr,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4079,22 +4152,24 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2572, /* MapIterator[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1560, /* NativeArray[AExpr] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4111,6 +4186,9 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1329, /* NativeArray[ANode] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4128,25 +4206,6 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClassDef = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClassDef, /* HashMap[K, V]: HashMap[MModule, Set[MClassDef]] */
-}
-};
-/* runtime type HashMapNode[MModule, Set[MClassDef]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef = {
-1279,
-"HashMapNode[MModule, Set[MClassDef]]", /* class_name_string */
-100,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4172,13 +4231,13 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2247, /* nullable HashMapNode[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4245,7 +4304,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1279, /* HashMapNode[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4292,27 +4350,56 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__AExpr = {
+0, /* dummy */
+{
+&type_nitc__AExpr, /* E: AExpr */
+&type_core__NativeArray__nitc__AExpr, /* NativeArray[E]: NativeArray[AExpr] */
+}
+};
+/* runtime type ArrayIterator[AExpr] */
+const struct type type_core__array__ArrayIterator__nitc__AExpr = {
+-1, /*CAST DEAD*/
+"ArrayIterator[AExpr]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__AExpr,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassDef = {
+const struct types resolution_table_core__array__ArrayIterator__nitc__AExpr = {
 0, /* dummy */
 {
-&type_standard__Set__nit__MClassDef, /* V: Set[MClassDef] */
-&type_nit__MModule, /* K: MModule */
+&type_core__Array__nitc__AExpr, /* Array[E]: Array[AExpr] */
+&type_core__AbstractArrayRead__nitc__AExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AExpr] */
 }
 };
-/* runtime type HashMapKeys[MModule, Set[MClass]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClass = {
+/* runtime type ArrayReverseIterator[AExpr] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AExpr = {
 -1, /*CAST DEAD*/
-"HashMapKeys[MModule, Set[MClass]]", /* class_name_string */
+"ArrayReverseIterator[AExpr]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClass,
-124,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AExpr,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4321,8 +4408,27 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AExpr = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AExpr, /* Array[E]: Array[AExpr] */
+&type_core__AbstractArrayRead__nitc__AExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AExpr] */
+}
+};
+/* runtime type NativeArray[Variable] */
+const struct type type_core__NativeArray__nitc__Variable = {
+1563,
+"NativeArray[Variable]", /* class_name_string */
+46,
+0,
+&resolution_table_core__NativeArray__nitc__Variable,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
-2312, /* Collection[MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4347,13 +4453,13 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4366,6 +4472,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1563, /* NativeArray[Variable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4432,30 +4539,15 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClass, /* HashMap[K, V]: HashMap[MModule, Set[MClass]] */
-&type_standard__Array__nit__MModule, /* Array[E]: Array[MModule] */
-&type_standard__MapKeysIterator__nit__MModule__standard__Set__nit__MClass, /* MapKeysIterator[K, V]: MapKeysIterator[MModule, Set[MClass]] */
-}
-};
-/* runtime type HashMapValues[MModule, Set[MClass]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClass = {
--1, /*CAST DEAD*/
-"HashMapValues[MModule, Set[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClass,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4490,7 +4582,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4546,7 +4637,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2393, /* Collection[Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4562,6 +4652,27 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__Variable = {
+0, /* dummy */
+{
+&type_nitc__Variable, /* E: Variable */
+&type_core__NativeArray__nitc__Variable, /* NativeArray[E]: NativeArray[Variable] */
+}
+};
+/* runtime type ArrayIterator[Variable] */
+const struct type type_core__array__ArrayIterator__nitc__Variable = {
+-1, /*CAST DEAD*/
+"ArrayIterator[Variable]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__Variable,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4570,6 +4681,27 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__Variable = {
+0, /* dummy */
+{
+&type_core__Array__nitc__Variable, /* Array[E]: Array[Variable] */
+&type_core__AbstractArrayRead__nitc__Variable, /* AbstractArrayRead[E]: AbstractArrayRead[Variable] */
+}
+};
+/* runtime type ArrayReverseIterator[Variable] */
+const struct type type_core__array__ArrayReverseIterator__nitc__Variable = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[Variable]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__Variable,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4580,25 +4712,28 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClass = {
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__Variable = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClass, /* HashMap[K, V]: HashMap[MModule, Set[MClass]] */
-&type_standard__Array__standard__Set__nit__MClass, /* Array[E]: Array[Set[MClass]] */
-&type_standard__MapValuesIterator__nit__MModule__standard__Set__nit__MClass, /* MapValuesIterator[K, V]: MapValuesIterator[MModule, Set[MClass]] */
+&type_core__Array__nitc__Variable, /* Array[E]: Array[Variable] */
+&type_core__AbstractArrayRead__nitc__Variable, /* AbstractArrayRead[E]: AbstractArrayRead[Variable] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MModule, Set[MClass]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass = {
-1282,
-"NativeArray[nullable HashMapNode[MModule, Set[MClass]]]", /* class_name_string */
-161,
+/* runtime type NativeArray[AIntegerExpr] */
+const struct type type_core__NativeArray__nitc__AIntegerExpr = {
+1566,
+"NativeArray[AIntegerExpr]", /* class_name_string */
+47,
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass,
-219,
+&resolution_table_core__NativeArray__nitc__AIntegerExpr,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4626,17 +4761,21 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1560, /* NativeArray[AExpr] */
 -1, /* empty */
+1566, /* NativeArray[AIntegerExpr] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4651,6 +4790,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4701,6 +4841,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4758,7 +4899,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1282, /* NativeArray[nullable HashMapNode[MModule, Set[MClass]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4814,28 +4954,56 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__AIntegerExpr = {
+0, /* dummy */
+{
+&type_nitc__AIntegerExpr, /* E: AIntegerExpr */
+&type_core__NativeArray__nitc__AIntegerExpr, /* NativeArray[E]: NativeArray[AIntegerExpr] */
+}
+};
+/* runtime type ArrayIterator[AIntegerExpr] */
+const struct type type_core__array__ArrayIterator__nitc__AIntegerExpr = {
+-1, /*CAST DEAD*/
+"ArrayIterator[AIntegerExpr]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__AIntegerExpr,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass = {
+const struct types resolution_table_core__array__ArrayIterator__nitc__AIntegerExpr = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass, /* E: nullable HashMapNode[MModule, Set[MClass]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass, /* NativeArray[E]: NativeArray[nullable HashMapNode[MModule, Set[MClass]]] */
+&type_core__Array__nitc__AIntegerExpr, /* Array[E]: Array[AIntegerExpr] */
+&type_core__AbstractArrayRead__nitc__AIntegerExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AIntegerExpr] */
 }
 };
-/* runtime type HashMapIterator[MModule, Set[MClass]] */
-const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClass = {
+/* runtime type ArrayReverseIterator[AIntegerExpr] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AIntegerExpr = {
 -1, /*CAST DEAD*/
-"HashMapIterator[MModule, Set[MClass]]", /* class_name_string */
+"ArrayReverseIterator[AIntegerExpr]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClass,
-77,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AIntegerExpr,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4844,6 +5012,26 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AIntegerExpr = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AIntegerExpr, /* Array[E]: Array[AIntegerExpr] */
+&type_core__AbstractArrayRead__nitc__AIntegerExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AIntegerExpr] */
+}
+};
+/* runtime type NativeArray[AEscapeExpr] */
+const struct type type_core__NativeArray__nitc__AEscapeExpr = {
+1569,
+"NativeArray[AEscapeExpr]", /* class_name_string */
+48,
+0,
+&resolution_table_core__NativeArray__nitc__AEscapeExpr,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4863,7 +5051,6 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2573, /* MapIterator[MModule, Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4876,18 +5063,22 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1560, /* NativeArray[AExpr] */
 -1, /* empty */
 -1, /* empty */
+1569, /* NativeArray[AEscapeExpr] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4901,6 +5092,14 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1329, /* NativeArray[ANode] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4911,25 +5110,6 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClass, /* HashMap[K, V]: HashMap[MModule, Set[MClass]] */
-}
-};
-/* runtime type HashMapNode[MModule, Set[MClass]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass = {
-1284,
-"HashMapNode[MModule, Set[MClass]]", /* class_name_string */
-101,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4956,7 +5136,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2248, /* nullable HashMapNode[MModule, Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4964,6 +5143,8 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5029,7 +5210,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1284, /* HashMapNode[MModule, Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5078,38 +5258,82 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClass = {
+const struct types resolution_table_core__NativeArray__nitc__AEscapeExpr = {
 0, /* dummy */
 {
-&type_standard__Set__nit__MClass, /* V: Set[MClass] */
-&type_nit__MModule, /* K: MModule */
+&type_nitc__AEscapeExpr, /* E: AEscapeExpr */
+&type_core__NativeArray__nitc__AEscapeExpr, /* NativeArray[E]: NativeArray[AEscapeExpr] */
 }
 };
-/* runtime type HashMapKeys[MModule, Set[MClassType]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClassType = {
+/* runtime type ArrayIterator[AEscapeExpr] */
+const struct type type_core__array__ArrayIterator__nitc__AEscapeExpr = {
 -1, /*CAST DEAD*/
-"HashMapKeys[MModule, Set[MClassType]]", /* class_name_string */
+"ArrayIterator[AEscapeExpr]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClassType,
-124,
+&resolution_table_core__array__ArrayIterator__nitc__AEscapeExpr,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__AEscapeExpr = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AEscapeExpr, /* Array[E]: Array[AEscapeExpr] */
+&type_core__AbstractArrayRead__nitc__AEscapeExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AEscapeExpr] */
+}
+};
+/* runtime type ArrayReverseIterator[AEscapeExpr] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AEscapeExpr = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[AEscapeExpr]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AEscapeExpr,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2312, /* Collection[MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AEscapeExpr = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AEscapeExpr, /* Array[E]: Array[AEscapeExpr] */
+&type_core__AbstractArrayRead__nitc__AEscapeExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AEscapeExpr] */
+}
+};
+/* runtime type NativeArray[AVarExpr] */
+const struct type type_core__NativeArray__nitc__AVarExpr = {
+1572,
+"NativeArray[AVarExpr]", /* class_name_string */
+49,
+0,
+&resolution_table_core__NativeArray__nitc__AVarExpr,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5130,7 +5354,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5142,19 +5365,23 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1560, /* NativeArray[AExpr] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1572, /* NativeArray[AVarExpr] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5167,6 +5394,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5217,28 +5445,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MModule__standard__Set__nit__MClassType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClassType, /* HashMap[K, V]: HashMap[MModule, Set[MClassType]] */
-&type_standard__Array__nit__MModule, /* Array[E]: Array[MModule] */
-&type_standard__MapKeysIterator__nit__MModule__standard__Set__nit__MClassType, /* MapKeysIterator[K, V]: MapKeysIterator[MModule, Set[MClassType]] */
-}
-};
-/* runtime type HashMapValues[MModule, Set[MClassType]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClassType = {
--1, /*CAST DEAD*/
-"HashMapValues[MModule, Set[MClassType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClassType,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5273,7 +5481,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5330,14 +5537,12 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2394, /* Collection[Set[MClassType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2401, /* Collection[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5353,6 +5558,27 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__AVarExpr = {
+0, /* dummy */
+{
+&type_nitc__AVarExpr, /* E: AVarExpr */
+&type_core__NativeArray__nitc__AVarExpr, /* NativeArray[E]: NativeArray[AVarExpr] */
+}
+};
+/* runtime type ArrayIterator[AVarExpr] */
+const struct type type_core__array__ArrayIterator__nitc__AVarExpr = {
+-1, /*CAST DEAD*/
+"ArrayIterator[AVarExpr]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__AVarExpr,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5363,25 +5589,25 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MModule__s
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MModule__standard__Set__nit__MClassType = {
+const struct types resolution_table_core__array__ArrayIterator__nitc__AVarExpr = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClassType, /* HashMap[K, V]: HashMap[MModule, Set[MClassType]] */
-&type_standard__Array__standard__Set__nit__MClassType, /* Array[E]: Array[Set[MClassType]] */
-&type_standard__MapValuesIterator__nit__MModule__standard__Set__nit__MClassType, /* MapValuesIterator[K, V]: MapValuesIterator[MModule, Set[MClassType]] */
+&type_core__Array__nitc__AVarExpr, /* Array[E]: Array[AVarExpr] */
+&type_core__AbstractArrayRead__nitc__AVarExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AVarExpr] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MModule, Set[MClassType]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType = {
-1287,
-"NativeArray[nullable HashMapNode[MModule, Set[MClassType]]]", /* class_name_string */
-162,
+/* runtime type ArrayReverseIterator[AVarExpr] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AVarExpr = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[AVarExpr]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType,
-219,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AVarExpr,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5390,13 +5616,55 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AVarExpr = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AVarExpr, /* Array[E]: Array[AVarExpr] */
+&type_core__AbstractArrayRead__nitc__AVarExpr, /* AbstractArrayRead[E]: AbstractArrayRead[AVarExpr] */
+}
+};
+/* runtime type ArraySetIterator[MMethodDef] */
+const struct type type_core__array__ArraySetIterator__nitc__MMethodDef = {
+-1, /*CAST DEAD*/
+"ArraySetIterator[MMethodDef]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArraySetIterator__nitc__MMethodDef,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2832, /* Iterator[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArraySetIterator__nitc__MMethodDef = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MMethodDef, /* Array[E]: Array[MMethodDef] */
+&type_core__Iterator__nitc__MMethodDef, /* Iterator[E]: Iterator[MMethodDef] */
+}
+};
+/* runtime type ArrayMapKeys[Int, Int] */
+const struct type type_core__array__ArrayMapKeys__core__Int__core__Int = {
+-1, /*CAST DEAD*/
+"ArrayMapKeys[Int, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayMapKeys__core__Int__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5416,6 +5684,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2418, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5430,6 +5699,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5507,6 +5777,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5521,6 +5792,28 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayMapKeys__core__Int__core__Int = {
+0, /* dummy */
+{
+&type_core__ArrayMap__core__Int__core__Int, /* ArrayMap[K, E]: ArrayMap[Int, Int] */
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+&type_core__Int, /* K: Int */
+&type_core__MapKeysIterator__core__Int__core__Int, /* MapKeysIterator[K, E]: MapKeysIterator[Int, Int] */
+}
+};
+/* runtime type ArrayMapValues[Int, Int] */
+const struct type type_core__array__ArrayMapValues__core__Int__core__Int = {
+-1, /*CAST DEAD*/
+"ArrayMapValues[Int, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayMapValues__core__Int__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5540,9 +5833,9 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2418, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
-1287, /* NativeArray[nullable HashMapNode[MModule, Set[MClassType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5555,6 +5848,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5599,26 +5893,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType, /* E: nullable HashMapNode[MModule, Set[MClassType]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MModule, Set[MClassType]]] */
-}
-};
-/* runtime type HashMapIterator[MModule, Set[MClassType]] */
-const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClassType = {
--1, /*CAST DEAD*/
-"HashMapIterator[MModule, Set[MClassType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClassType,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5647,12 +5921,12 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2574, /* MapIterator[MModule, Set[MClassType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5667,6 +5941,27 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayMapValues__core__Int__core__Int = {
+0, /* dummy */
+{
+&type_core__ArrayMap__core__Int__core__Int, /* ArrayMap[K, E]: ArrayMap[Int, Int] */
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+&type_core__MapValuesIterator__core__Int__core__Int, /* MapValuesIterator[K, E]: MapValuesIterator[Int, Int] */
+}
+};
+/* runtime type Array[Couple[Int, Int]] */
+const struct type type_core__Array__core__Couple__core__Int__core__Int = {
+1578,
+"Array[Couple[Int, Int]]", /* class_name_string */
+462,
+0,
+&resolution_table_core__Array__core__Couple__core__Int__core__Int,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5694,25 +5989,6 @@ const struct type type_standard__HashMapIterator__nit__MModule__standard__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MModule__standard__Set__nit__MClassType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MModule__standard__Set__nit__MClassType, /* HashMap[K, V]: HashMap[MModule, Set[MClassType]] */
-}
-};
-/* runtime type HashMapNode[MModule, Set[MClassType]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType = {
-1289,
-"HashMapNode[MModule, Set[MClassType]]", /* class_name_string */
-102,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5720,6 +5996,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5740,7 +6017,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2249, /* nullable HashMapNode[MModule, Set[MClassType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5763,6 +6039,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2476, /* Collection[Couple[Int, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5797,6 +6074,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5811,9 +6089,10 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
-1289, /* HashMapNode[MModule, Set[MClassType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5844,6 +6123,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5859,49 +6139,8 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MModule__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MModule__standard__Set__nit__MClassType = {
-0, /* dummy */
-{
-&type_standard__Set__nit__MClassType, /* V: Set[MClassType] */
-&type_nit__MModule, /* K: MModule */
-}
-};
-/* runtime type HashSetIterator[MClassDef] */
-const struct type type_standard__hash_collection__HashSetIterator__nit__MClassDef = {
--1, /*CAST DEAD*/
-"HashSetIterator[MClassDef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashSetIterator__nit__MClassDef,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashSetIterator__nit__MClassDef = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MClassDef, /* Array[E]: Array[MClassDef] */
-&type_standard__HashSet__nit__MClassDef, /* HashSet[E]: HashSet[MClassDef] */
-}
-};
-/* runtime type NativeArray[nullable HashSetNode[MClassDef]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__MClassDef = {
-1291,
-"NativeArray[nullable HashSetNode[MClassDef]]", /* class_name_string */
-163,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__MClassDef,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5929,6 +6168,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2602, /* AbstractArrayRead[Couple[Int, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5963,6 +6203,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6008,6 +6249,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6051,8 +6293,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1211, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
+2926, /* AbstractArray[Couple[Int, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6063,7 +6305,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1291, /* NativeArray[nullable HashSetNode[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6088,6 +6329,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6102,6 +6344,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6119,26 +6365,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__MClassDef = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashSetNode__nit__MClassDef, /* E: nullable HashSetNode[MClassDef] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__MClassDef, /* NativeArray[E]: NativeArray[nullable HashSetNode[MClassDef]] */
-}
-};
-/* runtime type HashSetNode[MClassDef] */
-const struct type type_standard__hash_collection__HashSetNode__nit__MClassDef = {
-1292,
-"HashSetNode[MClassDef]", /* class_name_string */
-37,
-0,
-&resolution_table_standard__hash_collection__HashSetNode__nit__MClassDef,
-48,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6149,9 +6375,7 @@ const struct type type_standard__hash_collection__HashSetNode__nit__MClassDef =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2238, /* nullable HashSetNode[Object] */
 -1, /* empty */
-2250, /* nullable HashSetNode[MClassDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6172,9 +6396,7 @@ const struct type type_standard__hash_collection__HashSetNode__nit__MClassDef =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1212, /* HashSetNode[Object] */
 -1, /* empty */
-1292, /* HashSetNode[MClassDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6185,26 +6407,6 @@ const struct type type_standard__hash_collection__HashSetNode__nit__MClassDef =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashSetNode__nit__MClassDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-&type_nit__MClassDef, /* K: MClassDef */
-}
-};
-/* runtime type ListNode[MClassType] */
-const struct type type_standard__list__ListNode__nit__MClassType = {
-1293,
-"ListNode[MClassType]", /* class_name_string */
-140,
-0,
-&resolution_table_standard__list__ListNode__nit__MClassType,
-144,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6220,9 +6422,9 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1578, /* Array[Couple[Int, Int]] */
 -1, /* empty */
 -1, /* empty */
-2320, /* Collection[MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6231,7 +6433,6 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2329, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6239,7 +6440,6 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6251,7 +6451,6 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2349, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6271,6 +6470,44 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__core__Couple__core__Int__core__Int = {
+0, /* dummy */
+{
+&type_core__Couple__core__Int__core__Int, /* E: Couple[Int, Int] */
+&type_core__Array__core__Couple__core__Int__core__Int, /* Array[E]: Array[Couple[Int, Int]] */
+&type_core__Collection__core__Couple__core__Int__core__Int, /* Collection[E]: Collection[Couple[Int, Int]] */
+&type_core__Array__core__Couple__core__Int__core__Int, /* Array[E]: Array[Couple[Int, Int]] */
+&type_core__AbstractArray__core__Couple__core__Int__core__Int, /* AbstractArray[E]: AbstractArray[Couple[Int, Int]] */
+&type_core__NativeArray__core__Couple__core__Int__core__Int, /* NativeArray[E]: NativeArray[Couple[Int, Int]] */
+&type_core__Couple__core__Int__core__Int, /* E: Couple[Int, Int] */
+&type_core__Collection__core__Couple__core__Int__core__Int, /* Collection[E]: Collection[Couple[Int, Int]] */
+&type_core__Couple__core__Int__core__Int, /* E: Couple[Int, Int] */
+&type_core__Collection__core__Couple__core__Int__core__Int, /* Collection[E]: Collection[Couple[Int, Int]] */
+&type_core__Collection__core__Couple__core__Int__core__Int, /* Collection[E]: Collection[Couple[Int, Int]] */
+&type_core__Array__core__Couple__core__Int__core__Int, /* Array[E]: Array[Couple[Int, Int]] */
+&type_core__AbstractArray__core__Couple__core__Int__core__Int, /* AbstractArray[E]: AbstractArray[Couple[Int, Int]] */
+&type_core__array__ArrayIterator__core__Couple__core__Int__core__Int, /* ArrayIterator[E]: ArrayIterator[Couple[Int, Int]] */
+&type_core__array__ArrayReverseIterator__core__Couple__core__Int__core__Int, /* ArrayReverseIterator[E]: ArrayReverseIterator[Couple[Int, Int]] */
+}
+};
+/* runtime type CoupleMapIterator[Int, Int] */
+const struct type type_core__abstract_collection__CoupleMapIterator__core__Int__core__Int = {
+-1, /*CAST DEAD*/
+"CoupleMapIterator[Int, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__abstract_collection__CoupleMapIterator__core__Int__core__Int,
+79,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6311,6 +6548,7 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2697, /* MapIterator[Int, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6320,6 +6558,7 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6329,99 +6568,60 @@ const struct type type_standard__list__ListNode__nit__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2637, /* Container[MClassType] */
 -1, /* empty */
-2639, /* Container[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2626, /* nullable ListNode[MClassType] */
 -1, /* empty */
-2628, /* nullable ListNode[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1293, /* ListNode[MClassType] */
 -1, /* empty */
-1333, /* ListNode[MType] */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__list__ListNode__nit__MClassType = {
+const struct types resolution_table_core__abstract_collection__CoupleMapIterator__core__Int__core__Int = {
 0, /* dummy */
 {
-&type_nullable__standard__list__ListNode__nit__MClassType, /* nullable ListNode[E]: nullable ListNode[MClassType] */
-&type_standard__Array__nit__MClassType, /* Array[E]: Array[MClassType] */
-&type_standard__abstract_collection__ContainerIterator__nit__MClassType, /* ContainerIterator[E]: ContainerIterator[MClassType] */
-&type_nit__MClassType, /* E: MClassType */
+&type_core__Iterator__core__Couple__core__Int__core__Int, /* Iterator[Couple[K, V]]: Iterator[Couple[Int, Int]] */
 }
 };
-/* runtime type ListIterator[MClassType] */
-const struct type type_standard__ListIterator__nit__MClassType = {
--1, /*CAST DEAD*/
-"ListIterator[MClassType]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Couple[Int, Int] */
+const struct type type_core__Couple__core__Int__core__Int = {
+1580,
+"Couple[Int, Int]", /* class_name_string */
+3,
 0,
-&resolution_table_standard__ListIterator__nit__MClassType,
-5,
+&resolution_table_core__Couple__core__Int__core__Int,
+4,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
+1580, /* Couple[Int, Int] */
 },
 };
-const struct types resolution_table_standard__ListIterator__nit__MClassType = {
+const struct types resolution_table_core__Couple__core__Int__core__Int = {
 0, /* dummy */
 {
-&type_standard__Array__nit__MClassType, /* Array[E]: Array[MClassType] */
-&type_standard__List__nit__MClassType, /* List[E]: List[MClassType] */
+&type_core__Int, /* F: Int */
+&type_core__Int, /* S: Int */
 }
 };
-/* runtime type HashMap[Object, Array[Object]] */
-const struct type type_standard__HashMap__standard__Object__standard__Array__standard__Object = {
-1295,
-"HashMap[Object, Array[Object]]", /* class_name_string */
-61,
+/* runtime type HashSetIterator[FlowContext] */
+const struct type type_core__hash_collection__HashSetIterator__nitc__FlowContext = {
+-1, /*CAST DEAD*/
+"HashSetIterator[FlowContext]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMap__standard__Object__standard__Array__standard__Object,
-83,
+&resolution_table_core__hash_collection__HashSetIterator__nitc__FlowContext,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6430,6 +6630,26 @@ const struct type type_standard__HashMap__standard__Object__standard__Array__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashSetIterator__nitc__FlowContext = {
+0, /* dummy */
+{
+&type_core__Array__nitc__FlowContext, /* Array[E]: Array[FlowContext] */
+&type_core__HashSet__nitc__FlowContext, /* HashSet[E]: HashSet[FlowContext] */
+}
+};
+/* runtime type HashSetNode[FlowContext] */
+const struct type type_core__hash_collection__HashSetNode__nitc__FlowContext = {
+1582,
+"HashSetNode[FlowContext]", /* class_name_string */
+45,
+0,
+&resolution_table_core__hash_collection__HashSetNode__nitc__FlowContext,
+48,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6440,6 +6660,7 @@ const struct type type_standard__HashMap__standard__Object__standard__Array__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2757, /* nullable HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6449,9 +6670,9 @@ const struct type type_standard__HashMap__standard__Object__standard__Array__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2793, /* nullable HashSetNode[FlowContext] */
 -1, /* empty */
 -1, /* empty */
-1295, /* HashMap[Object, Array[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6462,6 +6683,7 @@ const struct type type_standard__HashMap__standard__Object__standard__Array__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1270, /* HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6471,70 +6693,29 @@ const struct type type_standard__HashMap__standard__Object__standard__Array__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1582, /* HashSetNode[FlowContext] */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__HashMap__standard__Object__standard__Array__standard__Object = {
+const struct types resolution_table_core__hash_collection__HashSetNode__nitc__FlowContext = {
 0, /* dummy */
 {
 NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__standard__Object__standard__Array__standard__Object, /* HashMapIterator[K, V]: HashMapIterator[Object, Array[Object]] */
-&type_standard__Object, /* K: Object */
-&type_standard__Array__standard__Object, /* V: Array[Object] */
-&type_standard__hash_collection__HashMapNode__standard__Object__standard__Array__standard__Object, /* HashMapNode[K, V]: HashMapNode[Object, Array[Object]] */
-&type_standard__hash_collection__HashMapKeys__standard__Object__standard__Array__standard__Object, /* HashMapKeys[K, V]: HashMapKeys[Object, Array[Object]] */
-&type_standard__hash_collection__HashMapValues__standard__Object__standard__Array__standard__Object, /* HashMapValues[K, V]: HashMapValues[Object, Array[Object]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__standard__Object__standard__Array__standard__Object, /* nullable N: nullable HashMapNode[Object, Array[Object]] */
-&type_standard__hash_collection__HashMapNode__standard__Object__standard__Array__standard__Object, /* N: HashMapNode[Object, Array[Object]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__Object__standard__Array__standard__Object, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[Object, Array[Object]]] */
-}
-};
-/* runtime type OrderedTreeIterator[Object] */
-const struct type type_ordered_tree__OrderedTreeIterator__standard__Object = {
--1, /*CAST DEAD*/
-"OrderedTreeIterator[Object]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_ordered_tree__OrderedTreeIterator__standard__Object,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
--1, /* empty */
--1, /* empty */
-},
-};
-const struct types resolution_table_ordered_tree__OrderedTreeIterator__standard__Object = {
-0, /* dummy */
-{
-&type_standard__Array__standard__Object, /* Array[E]: Array[Object] */
-&type_standard__Array__standard__Iterator__standard__Object, /* Array[Iterator[E]]: Array[Iterator[Object]] */
-&type_ordered_tree__OrderedTree__standard__Object, /* OrderedTree[E]: OrderedTree[Object] */
-&type_ordered_tree__OrderedTreeIterator__standard__Object, /* OrderedTreeIterator[E]: OrderedTreeIterator[Object] */
+&type_nitc__FlowContext, /* K: FlowContext */
 }
 };
-/* runtime type HashMapKeys[Object, String] */
-const struct type type_standard__hash_collection__HashMapKeys__standard__Object__standard__String = {
--1, /*CAST DEAD*/
-"HashMapKeys[Object, String]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashSetNode[FlowContext]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__FlowContext = {
+1583,
+"NativeArray[nullable HashSetNode[FlowContext]]", /* class_name_string */
+192,
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__standard__Object__standard__String,
-124,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__FlowContext,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6563,7 +6744,6 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__Object_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6647,41 +6827,7 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__Object_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__standard__Object__standard__String = {
-0, /* dummy */
-{
-&type_standard__HashMap__standard__Object__standard__String, /* HashMap[K, V]: HashMap[Object, String] */
-&type_standard__Array__standard__Object, /* Array[E]: Array[Object] */
-&type_standard__MapKeysIterator__standard__Object__standard__String, /* MapKeysIterator[K, V]: MapKeysIterator[Object, String] */
-}
-};
-/* runtime type HashMapValues[Object, String] */
-const struct type type_standard__hash_collection__HashMapValues__standard__Object__standard__String = {
--1, /*CAST DEAD*/
-"HashMapValues[Object, String]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__standard__Object__standard__String,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2306, /* Collection[String] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6706,13 +6852,11 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Objec
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6726,6 +6870,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Objec
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1271, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6761,6 +6906,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Objec
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1583, /* NativeArray[nullable HashSetNode[FlowContext]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6796,25 +6942,29 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Objec
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__standard__Object__standard__String = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__FlowContext = {
 0, /* dummy */
 {
-&type_standard__HashMap__standard__Object__standard__String, /* HashMap[K, V]: HashMap[Object, String] */
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__MapValuesIterator__standard__Object__standard__String, /* MapValuesIterator[K, V]: MapValuesIterator[Object, String] */
+&type_nullable__core__hash_collection__HashSetNode__nitc__FlowContext, /* E: nullable HashSetNode[FlowContext] */
+&type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__FlowContext, /* NativeArray[E]: NativeArray[nullable HashSetNode[FlowContext]] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[Object, String]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__Object__standard__String = {
-1299,
-"NativeArray[nullable HashMapNode[Object, String]]", /* class_name_string */
-164,
+/* runtime type NativeArray[Char] */
+const struct type type_core__NativeArray__core__Char = {
+1584,
+"NativeArray[Char]", /* class_name_string */
+50,
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__Object__standard__String,
-219,
+&resolution_table_core__NativeArray__core__Char,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6841,6 +6991,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6857,6 +7008,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1584, /* NativeArray[Char] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6919,6 +7071,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6977,7 +7130,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1299, /* NativeArray[nullable HashMapNode[Object, String]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7034,91 +7186,25 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__Object__standard__String = {
+const struct types resolution_table_core__NativeArray__core__Char = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__standard__Object__standard__String, /* E: nullable HashMapNode[Object, String] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__Object__standard__String, /* NativeArray[E]: NativeArray[nullable HashMapNode[Object, String]] */
+&type_core__Char, /* E: Char */
+&type_core__NativeArray__core__Char, /* NativeArray[E]: NativeArray[Char] */
 }
 };
-/* runtime type HashMapIterator[Object, String] */
-const struct type type_standard__HashMapIterator__standard__Object__standard__String = {
+/* runtime type ArrayIterator[Char] */
+const struct type type_core__array__ArrayIterator__core__Char = {
 -1, /*CAST DEAD*/
-"HashMapIterator[Object, String]", /* class_name_string */
+"ArrayIterator[Char]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__standard__Object__standard__String,
-77,
+&resolution_table_core__array__ArrayIterator__core__Char,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2575, /* MapIterator[Object, String] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7129,161 +7215,25 @@ const struct type type_standard__HashMapIterator__standard__Object__standard__St
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__HashMapIterator__standard__Object__standard__String = {
+const struct types resolution_table_core__array__ArrayIterator__core__Char = {
 0, /* dummy */
 {
-&type_standard__HashMap__standard__Object__standard__String, /* HashMap[K, V]: HashMap[Object, String] */
+&type_core__Array__core__Char, /* Array[E]: Array[Char] */
+&type_core__AbstractArrayRead__core__Char, /* AbstractArrayRead[E]: AbstractArrayRead[Char] */
 }
 };
-/* runtime type HashMapNode[Object, String] */
-const struct type type_standard__hash_collection__HashMapNode__standard__Object__standard__String = {
-1301,
-"HashMapNode[Object, String]", /* class_name_string */
-103,
+/* runtime type ArrayReverseIterator[Char] */
+const struct type type_core__array__ArrayReverseIterator__core__Char = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[Char]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapNode__standard__Object__standard__String,
-148,
+&resolution_table_core__array__ArrayReverseIterator__core__Char,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2251, /* nullable HashMapNode[Object, String] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-1301, /* HashMapNode[Object, String] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7294,24 +7244,24 @@ const struct type type_standard__hash_collection__HashMapNode__standard__Object_
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__standard__Object__standard__String = {
+const struct types resolution_table_core__array__ArrayReverseIterator__core__Char = {
 0, /* dummy */
 {
-&type_standard__String, /* V: String */
-&type_standard__Object, /* K: Object */
+&type_core__Array__core__Char, /* Array[E]: Array[Char] */
+&type_core__AbstractArrayRead__core__Char, /* AbstractArrayRead[E]: AbstractArrayRead[Char] */
 }
 };
-/* runtime type NativeArray[Array[String]] */
-const struct type type_standard__NativeArray__standard__Array__standard__String = {
-1302,
-"NativeArray[Array[String]]", /* class_name_string */
-27,
+/* runtime type NativeArray[Byte] */
+const struct type type_core__NativeArray__core__Byte = {
+1587,
+"NativeArray[Byte]", /* class_name_string */
+51,
 0,
-&resolution_table_standard__NativeArray__standard__Array__standard__String,
-219,
+&resolution_table_core__NativeArray__core__Byte,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7337,14 +7287,13 @@ const struct type type_standard__NativeArray__standard__Array__standard__String
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1302, /* NativeArray[Array[String]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7362,6 +7311,7 @@ const struct type type_standard__NativeArray__standard__Array__standard__String
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1587, /* NativeArray[Byte] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7418,12 +7368,13 @@ const struct type type_standard__NativeArray__standard__Array__standard__String
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1953, /* NativeArray[Array[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7529,27 +7480,6 @@ const struct type type_standard__NativeArray__standard__Array__standard__String
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__standard__Array__standard__String = {
-0, /* dummy */
-{
-&type_standard__Array__standard__String, /* E: Array[String] */
-&type_standard__NativeArray__standard__Array__standard__String, /* NativeArray[E]: NativeArray[Array[String]] */
-}
-};
-/* runtime type ArrayIterator[Array[String]] */
-const struct type type_standard__array__ArrayIterator__standard__Array__standard__String = {
--1, /*CAST DEAD*/
-"ArrayIterator[Array[String]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__standard__Array__standard__String,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7558,28 +7488,38 @@ const struct type type_standard__array__ArrayIterator__standard__Array__standard
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArrayIterator__standard__Array__standard__String = {
+const struct types resolution_table_core__NativeArray__core__Byte = {
 0, /* dummy */
 {
-&type_standard__Array__standard__Array__standard__String, /* Array[E]: Array[Array[String]] */
-&type_standard__AbstractArrayRead__standard__Array__standard__String, /* AbstractArrayRead[E]: AbstractArrayRead[Array[String]] */
+&type_core__Byte, /* E: Byte */
+&type_core__NativeArray__core__Byte, /* NativeArray[E]: NativeArray[Byte] */
 }
 };
-/* runtime type ListNode[String] */
-const struct type type_standard__list__ListNode__standard__String = {
-1304,
-"ListNode[String]", /* class_name_string */
-141,
+/* runtime type Array[SourceFile] */
+const struct type type_core__Array__nitc__SourceFile = {
+1588,
+"Array[SourceFile]", /* class_name_string */
+463,
 0,
-&resolution_table_standard__list__ListNode__standard__String,
-144,
+&resolution_table_core__Array__nitc__SourceFile,
+510,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2306, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7600,6 +7540,7 @@ const struct type type_standard__list__ListNode__standard__String = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7610,13 +7551,11 @@ const struct type type_standard__list__ListNode__standard__String = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7645,6 +7584,7 @@ const struct type type_standard__list__ListNode__standard__String = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2477, /* Collection[SourceFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7678,6 +7618,7 @@ const struct type type_standard__list__ListNode__standard__String = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7692,6 +7633,8 @@ const struct type type_standard__list__ListNode__standard__String = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7701,76 +7644,30 @@ const struct type type_standard__list__ListNode__standard__String = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2638, /* Container[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2627, /* nullable ListNode[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1304, /* ListNode[String] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__list__ListNode__standard__String = {
-0, /* dummy */
-{
-&type_nullable__standard__list__ListNode__standard__String, /* nullable ListNode[E]: nullable ListNode[String] */
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__abstract_collection__ContainerIterator__standard__String, /* ContainerIterator[E]: ContainerIterator[String] */
-&type_standard__String, /* E: String */
-}
-};
-/* runtime type ListIterator[String] */
-const struct type type_standard__ListIterator__standard__String = {
--1, /*CAST DEAD*/
-"ListIterator[String]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__ListIterator__standard__String,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__ListIterator__standard__String = {
-0, /* dummy */
-{
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__List__standard__String, /* List[E]: List[String] */
-}
-};
-/* runtime type HashMapKeys[String, Int] */
-const struct type type_standard__hash_collection__HashMapKeys__standard__String__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapKeys[String, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapKeys__standard__String__standard__Int,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2306, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7797,13 +7694,11 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7818,6 +7713,7 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2603, /* AbstractArrayRead[SourceFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7851,6 +7747,7 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7885,30 +7782,8 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__standard__String__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__standard__String__standard__Int, /* HashMap[K, V]: HashMap[String, Int] */
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__MapKeysIterator__standard__String__standard__Int, /* MapKeysIterator[K, V]: MapKeysIterator[String, Int] */
-}
-};
-/* runtime type HashMapValues[String, Int] */
-const struct type type_standard__hash_collection__HashMapValues__standard__String__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapValues[String, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__standard__String__standard__Int,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-2147, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7918,6 +7793,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7940,7 +7816,6 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7964,6 +7839,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2927, /* AbstractArray[SourceFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7997,6 +7873,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8011,6 +7888,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8028,27 +7906,6 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__standard__String__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__standard__String__standard__Int, /* HashMap[K, V]: HashMap[String, Int] */
-&type_standard__Array__standard__Int, /* Array[E]: Array[Int] */
-&type_standard__MapValuesIterator__standard__String__standard__Int, /* MapValuesIterator[K, V]: MapValuesIterator[String, Int] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[String, Int]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__Int = {
-1308,
-"NativeArray[nullable HashMapNode[String, Int]]", /* class_name_string */
-165,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__Int,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8110,6 +7967,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1588, /* Array[SourceFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8156,6 +8014,40 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__nitc__SourceFile = {
+0, /* dummy */
+{
+&type_nitc__SourceFile, /* E: SourceFile */
+&type_core__Array__nitc__SourceFile, /* Array[E]: Array[SourceFile] */
+&type_core__Collection__nitc__SourceFile, /* Collection[E]: Collection[SourceFile] */
+&type_core__Array__nitc__SourceFile, /* Array[E]: Array[SourceFile] */
+&type_core__AbstractArray__nitc__SourceFile, /* AbstractArray[E]: AbstractArray[SourceFile] */
+&type_core__NativeArray__nitc__SourceFile, /* NativeArray[E]: NativeArray[SourceFile] */
+&type_nitc__SourceFile, /* E: SourceFile */
+&type_core__Collection__nitc__SourceFile, /* Collection[E]: Collection[SourceFile] */
+&type_nitc__SourceFile, /* E: SourceFile */
+&type_core__Collection__nitc__SourceFile, /* Collection[E]: Collection[SourceFile] */
+&type_core__Collection__nitc__SourceFile, /* Collection[E]: Collection[SourceFile] */
+&type_core__Array__nitc__SourceFile, /* Array[E]: Array[SourceFile] */
+&type_core__AbstractArray__nitc__SourceFile, /* AbstractArray[E]: AbstractArray[SourceFile] */
+&type_core__array__ArrayIterator__nitc__SourceFile, /* ArrayIterator[E]: ArrayIterator[SourceFile] */
+&type_core__array__ArrayReverseIterator__nitc__SourceFile, /* ArrayReverseIterator[E]: ArrayReverseIterator[SourceFile] */
+}
+};
+/* runtime type MapKeysIterator[SourceFile, Array[String]] */
+const struct type type_core__MapKeysIterator__nitc__SourceFile__core__Array__core__String = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[SourceFile, Array[String]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__nitc__SourceFile__core__Array__core__String,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8164,6 +8056,27 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__SourceFile__core__Array__core__String = {
+0, /* dummy */
+{
+&type_core__Array__nitc__SourceFile, /* Array[E]: Array[SourceFile] */
+&type_core__MapIterator__nitc__SourceFile__core__Array__core__String, /* MapIterator[K, V]: MapIterator[SourceFile, Array[String]] */
+}
+};
+/* runtime type MapValuesIterator[SourceFile, Array[String]] */
+const struct type type_core__MapValuesIterator__nitc__SourceFile__core__Array__core__String = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[SourceFile, Array[String]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__nitc__SourceFile__core__Array__core__String,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8172,13 +8085,56 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__SourceFile__core__Array__core__String = {
+0, /* dummy */
+{
+&type_core__Array__core__Array__core__String, /* Array[E]: Array[Array[String]] */
+&type_core__MapIterator__nitc__SourceFile__core__Array__core__String, /* MapIterator[K, V]: MapIterator[SourceFile, Array[String]] */
+}
+};
+/* runtime type MapKeysIterator[String, Option] */
+const struct type type_core__MapKeysIterator__core__String__opts__Option = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[String, Option]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__core__String__opts__Option,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
+2828, /* Iterator[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__core__String__opts__Option = {
+0, /* dummy */
+{
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__MapIterator__core__String__opts__Option, /* MapIterator[K, V]: MapIterator[String, Option] */
+}
+};
+/* runtime type MapValuesIterator[String, Option] */
+const struct type type_core__MapValuesIterator__core__String__opts__Option = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[String, Option]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__core__String__opts__Option,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8187,12 +8143,33 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__core__String__opts__Option = {
+0, /* dummy */
+{
+&type_core__Array__opts__Option, /* Array[E]: Array[Option] */
+&type_core__MapIterator__core__String__opts__Option, /* MapIterator[K, V]: MapIterator[String, Option] */
+}
+};
+/* runtime type HashMapKeys[Phase, POSetElement[Phase]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__poset__POSetElement__nitc__Phase = {
+-1, /*CAST DEAD*/
+"HashMapKeys[Phase, POSetElement[Phase]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__Phase__poset__POSetElement__nitc__Phase,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2405, /* Collection[Phase] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8212,7 +8189,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1308, /* NativeArray[nullable HashMapNode[String, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8221,6 +8197,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8266,26 +8243,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__Int = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashMapNode__standard__String__standard__Int, /* E: nullable HashMapNode[String, Int] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[String, Int]] */
-}
-};
-/* runtime type HashMapIterator[String, Int] */
-const struct type type_standard__HashMapIterator__standard__String__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapIterator[String, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__HashMapIterator__standard__String__standard__Int,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8316,9 +8273,9 @@ const struct type type_standard__HashMapIterator__standard__String__standard__In
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2576, /* MapIterator[String, Int] */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8333,6 +8290,27 @@ const struct type type_standard__HashMapIterator__standard__String__standard__In
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__Phase__poset__POSetElement__nitc__Phase = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__Phase__poset__POSetElement__nitc__Phase, /* HashMap[K, V]: HashMap[Phase, POSetElement[Phase]] */
+&type_core__Array__nitc__Phase, /* Array[E]: Array[Phase] */
+&type_core__MapKeysIterator__nitc__Phase__poset__POSetElement__nitc__Phase, /* MapKeysIterator[K, V]: MapKeysIterator[Phase, POSetElement[Phase]] */
+}
+};
+/* runtime type HashMapValues[Phase, POSetElement[Phase]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__Phase__poset__POSetElement__nitc__Phase = {
+-1, /*CAST DEAD*/
+"HashMapValues[Phase, POSetElement[Phase]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__Phase__poset__POSetElement__nitc__Phase,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8361,31 +8339,13 @@ const struct type type_standard__HashMapIterator__standard__String__standard__In
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__standard__String__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__standard__String__standard__Int, /* HashMap[K, V]: HashMap[String, Int] */
-}
-};
-/* runtime type HashMapNode[String, Int] */
-const struct type type_standard__hash_collection__HashMapNode__standard__String__standard__Int = {
-1310,
-"HashMapNode[String, Int]", /* class_name_string */
-104,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__standard__String__standard__Int,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8409,7 +8369,6 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2252, /* nullable HashMapNode[String, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8455,6 +8414,7 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8463,6 +8423,7 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8477,12 +8438,32 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__Phase__poset__POSetElement__nitc__Phase = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__Phase__poset__POSetElement__nitc__Phase, /* HashMap[K, V]: HashMap[Phase, POSetElement[Phase]] */
+&type_core__Array__poset__POSetElement__nitc__Phase, /* Array[E]: Array[POSetElement[Phase]] */
+&type_core__MapValuesIterator__nitc__Phase__poset__POSetElement__nitc__Phase, /* MapValuesIterator[K, V]: MapValuesIterator[Phase, POSetElement[Phase]] */
+}
+};
+/* runtime type HashMapIterator[Phase, POSetElement[Phase]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__Phase__poset__POSetElement__nitc__Phase = {
+-1, /*CAST DEAD*/
+"HashMapIterator[Phase, POSetElement[Phase]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__Phase__poset__POSetElement__nitc__Phase,
+79,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1310, /* HashMapNode[String, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8524,65 +8505,21 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2698, /* MapIterator[Phase, POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__standard__String__standard__Int = {
-0, /* dummy */
-{
-&type_standard__Int, /* V: Int */
-&type_standard__String, /* K: String */
-}
-};
-/* runtime type POSetConflictGraph[MClass] */
-const struct type type_nit__POSetConflictGraph__nit__MClass = {
-1311,
-"POSetConflictGraph[MClass]", /* class_name_string */
-2,
-0,
-&resolution_table_nit__POSetConflictGraph__nit__MClass,
-4,
-{
-80, /* Object */
-2622, /* nullable Object */
-1311, /* POSetConflictGraph[MClass] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_nit__POSetConflictGraph__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__HashSet__nit__MClass, /* HashSet[E]: HashSet[MClass] */
-&type_standard__HashMap__nit__MClass__standard__Set__nit__MClass, /* HashMap[E, Set[E]]: HashMap[MClass, Set[MClass]] */
-&type_poset__POSet__nit__MClass, /* POSet[E]: POSet[MClass] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_nit__MClass, /* E: MClass */
-&type_standard__Collection__nit__MClass, /* Collection[E]: Collection[MClass] */
-}
-};
-/* runtime type HashMapKeys[MClass, Set[MVirtualTypeProp]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClass, Set[MVirtualTypeProp]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Set__nit__MVirtualTypeProp,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8599,6 +8536,25 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__Phase__poset__POSetElement__nitc__Phase = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__Phase__poset__POSetElement__nitc__Phase, /* HashMap[K, V]: HashMap[Phase, POSetElement[Phase]] */
+}
+};
+/* runtime type HashMapNode[Phase, POSetElement[Phase]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase = {
+1596,
+"HashMapNode[Phase, POSetElement[Phase]]", /* class_name_string */
+121,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8606,11 +8562,9 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2341, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8645,6 +8599,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2794, /* nullable HashMapNode[Phase, POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8653,6 +8608,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8694,27 +8650,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Set__nit__MVirtualTypeProp, /* HashMap[K, V]: HashMap[MClass, Set[MVirtualTypeProp]] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapKeysIterator__nit__MClass__standard__Set__nit__MVirtualTypeProp, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Set[MVirtualTypeProp]] */
-}
-};
-/* runtime type HashMapValues[MClass, Set[MVirtualTypeProp]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, Set[MVirtualTypeProp]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Set__nit__MVirtualTypeProp,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8739,6 +8674,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1596, /* HashMapNode[Phase, POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8747,9 +8683,9 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8769,6 +8705,26 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase = {
+0, /* dummy */
+{
+&type_poset__POSetElement__nitc__Phase, /* V: POSetElement[Phase] */
+&type_nitc__Phase, /* K: Phase */
+}
+};
+/* runtime type NativeArray[nullable HashMapNode[Phase, POSetElement[Phase]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase = {
+1597,
+"NativeArray[nullable HashMapNode[Phase, POSetElement[Phase]]]", /* class_name_string */
+193,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8797,7 +8753,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2385, /* Collection[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8808,8 +8763,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2396, /* Collection[Set[MVirtualTypeProp]] */
-2397, /* Collection[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8837,27 +8790,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Set__nit__MVirtualTypeProp, /* HashMap[K, V]: HashMap[MClass, Set[MVirtualTypeProp]] */
-&type_standard__Array__standard__Set__nit__MVirtualTypeProp, /* Array[E]: Array[Set[MVirtualTypeProp]] */
-&type_standard__MapValuesIterator__nit__MClass__standard__Set__nit__MVirtualTypeProp, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Set[MVirtualTypeProp]] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClass, Set[MVirtualTypeProp]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
-1314,
-"NativeArray[nullable HashMapNode[MClass, Set[MVirtualTypeProp]]]", /* class_name_string */
-166,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8904,6 +8836,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8983,6 +8916,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1597, /* NativeArray[nullable HashMapNode[Phase, POSetElement[Phase]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8991,12 +8925,12 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1145, /* NativeArray[nullable HashMapNode[MClass, Set[MProperty]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9015,19 +8949,39 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase, /* E: nullable HashMapNode[Phase, POSetElement[Phase]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__poset__POSetElement__nitc__Phase, /* NativeArray[E]: NativeArray[nullable HashMapNode[Phase, POSetElement[Phase]]] */
+}
+};
+/* runtime type HashSet[Phase] */
+const struct type type_core__HashSet__nitc__Phase = {
+1598,
+"HashSet[Phase]", /* class_name_string */
+162,
+0,
+&resolution_table_core__HashSet__nitc__Phase,
+164,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2204, /* Set[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2405, /* Collection[Phase] */
 -1, /* empty */
 -1, /* empty */
-1314, /* NativeArray[nullable HashMapNode[MClass, Set[MVirtualTypeProp]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1361, /* NativeArray[nullable HashMapNode[MClass, Set[PropertyLayoutElement]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9049,6 +9003,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9075,26 +9030,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp, /* E: nullable HashMapNode[MClass, Set[MVirtualTypeProp]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Set[MVirtualTypeProp]]] */
-}
-};
-/* runtime type HashMapIterator[MClass, Set[MVirtualTypeProp]] */
-const struct type type_standard__HashMapIterator__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
--1, /*CAST DEAD*/
-"HashMapIterator[MClass, Set[MVirtualTypeProp]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__HashMapIterator__nit__MClass__standard__Set__nit__MVirtualTypeProp,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9108,7 +9043,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Set__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2559, /* MapIterator[MClass, Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9126,9 +9060,7 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Set__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2577, /* MapIterator[MClass, Set[MVirtualTypeProp]] */
 -1, /* empty */
-2579, /* MapIterator[MClass, Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9149,6 +9081,8 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Set__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9170,26 +9104,8 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Set__ni
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Set__nit__MVirtualTypeProp, /* HashMap[K, V]: HashMap[MClass, Set[MVirtualTypeProp]] */
-}
-};
-/* runtime type HashMapNode[MClass, Set[MVirtualTypeProp]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
-1316,
-"HashMapNode[MClass, Set[MVirtualTypeProp]]", /* class_name_string */
-105,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
+2398, /* Set[Phase] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9202,8 +9118,8 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2227, /* nullable HashMapNode[MClass, Set[MProperty]] */
 -1, /* empty */
+142, /* HashSet[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9213,15 +9129,46 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1598, /* HashSet[Phase] */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__HashSet__nitc__Phase = {
+0, /* dummy */
+{
+&type_nitc__Phase, /* E: Phase */
+&type_core__Array__nitc__Phase, /* Array[E]: Array[Phase] */
+&type_core__hash_collection__HashSetNode__nitc__Phase, /* HashSetNode[E]: HashSetNode[Phase] */
+&type_core__hash_collection__HashSetIterator__nitc__Phase, /* HashSetIterator[E]: HashSetIterator[Phase] */
+&type_core__Collection__nitc__Phase, /* Collection[E]: Collection[Phase] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_nullable__core__hash_collection__HashSetNode__nitc__Phase, /* nullable N: nullable HashSetNode[Phase] */
+&type_core__Collection__nitc__Phase, /* Collection[E]: Collection[Phase] */
+&type_core__hash_collection__HashSetNode__nitc__Phase, /* N: HashSetNode[Phase] */
+&type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__Phase, /* NativeArray[nullable N]: NativeArray[nullable HashSetNode[Phase]] */
+}
+};
+/* runtime type HashMap[Phase, Set[Phase]] */
+const struct type type_core__HashMap__nitc__Phase__core__Set__nitc__Phase = {
+1599,
+"HashMap[Phase, Set[Phase]]", /* class_name_string */
+71,
+0,
+&resolution_table_core__HashMap__nitc__Phase__core__Set__nitc__Phase,
+85,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2203, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2253, /* nullable HashMapNode[MClass, Set[MVirtualTypeProp]] */
 -1, /* empty */
-2258, /* nullable HashMapNode[MClass, Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9275,8 +9222,8 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1147, /* HashMapNode[MClass, Set[MProperty]] */
 -1, /* empty */
+1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9284,6 +9231,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1599, /* HashMap[Phase, Set[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9292,20 +9240,71 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1316, /* HashMapNode[MClass, Set[MVirtualTypeProp]] */
 -1, /* empty */
-1363, /* HashMapNode[MClass, Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__HashMap__nitc__Phase__core__Set__nitc__Phase = {
+0, /* dummy */
+{
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__hash_collection__HashMapIterator__nitc__Phase__core__Set__nitc__Phase, /* HashMapIterator[K, V]: HashMapIterator[Phase, Set[Phase]] */
+&type_nitc__Phase, /* K: Phase */
+&type_core__Set__nitc__Phase, /* V: Set[Phase] */
+&type_core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase, /* HashMapNode[K, V]: HashMapNode[Phase, Set[Phase]] */
+&type_core__hash_collection__HashMapKeys__nitc__Phase__core__Set__nitc__Phase, /* HashMapKeys[K, V]: HashMapKeys[Phase, Set[Phase]] */
+&type_core__hash_collection__HashMapValues__nitc__Phase__core__Set__nitc__Phase, /* HashMapValues[K, V]: HashMapValues[Phase, Set[Phase]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase, /* nullable N: nullable HashMapNode[Phase, Set[Phase]] */
+NULL, /* empty */
+&type_core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase, /* N: HashMapNode[Phase, Set[Phase]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[Phase, Set[Phase]]] */
+}
+};
+/* runtime type MapKeysIterator[String, Array[MPackage]] */
+const struct type type_core__MapKeysIterator__core__String__core__Array__nitc__MPackage = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[String, Array[MPackage]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__core__String__core__Array__nitc__MPackage,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
+2828, /* Iterator[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__core__String__core__Array__nitc__MPackage = {
+0, /* dummy */
+{
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__MapIterator__core__String__core__Array__nitc__MPackage, /* MapIterator[K, V]: MapIterator[String, Array[MPackage]] */
+}
+};
+/* runtime type Array[Array[MPackage]] */
+const struct type type_core__Array__core__Array__nitc__MPackage = {
+1601,
+"Array[Array[MPackage]]", /* class_name_string */
+464,
+0,
+&resolution_table_core__Array__core__Array__nitc__MPackage,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9335,38 +9334,18 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Set__nit__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_standard__Set__nit__MVirtualTypeProp, /* V: Set[MVirtualTypeProp] */
-&type_nit__MClass, /* K: MClass */
-}
-};
-/* runtime type Array[MVirtualTypeProp] */
-const struct type type_standard__Array__nit__MVirtualTypeProp = {
-1317,
-"Array[MVirtualTypeProp]", /* class_name_string */
-432,
-0,
-&resolution_table_standard__Array__nit__MVirtualTypeProp,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2314, /* Collection[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9389,9 +9368,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
-2339, /* Collection[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9407,6 +9384,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2478, /* Collection[Array[MPackage]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9416,12 +9394,10 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2364, /* Collection[MVirtualTypeProp] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2369, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9440,6 +9416,8 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2510, /* Collection[Array[Object]] */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9454,6 +9432,8 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9469,7 +9449,6 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2417, /* Collection[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9477,7 +9456,6 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9486,9 +9464,9 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* AbstractArrayRead[MProperty] */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9510,9 +9488,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
-2459, /* AbstractArrayRead[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9537,13 +9513,12 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2604, /* AbstractArrayRead[Array[MPackage]] */
 -1, /* empty */
-2485, /* AbstractArrayRead[MVirtualTypeProp] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2490, /* AbstractArrayRead[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9570,6 +9545,8 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2636, /* AbstractArrayRead[Array[Object]] */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9591,7 +9568,6 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2538, /* AbstractArrayRead[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9607,7 +9583,6 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2657, /* AbstractArray[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9617,6 +9592,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9631,9 +9607,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
-2683, /* AbstractArray[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9659,14 +9633,13 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2709, /* AbstractArray[MVirtualTypeProp] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2714, /* AbstractArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
+2928, /* AbstractArray[Array[MPackage]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9698,6 +9671,8 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2960, /* AbstractArray[Array[Object]] */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9712,7 +9687,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2762, /* AbstractArray[nullable MProperty] */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9720,8 +9695,6 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9733,10 +9706,8 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-56, /* Array[MProperty] */
 -1, /* empty */
 -1, /* empty */
-1942, /* Array[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9764,7 +9735,6 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-658, /* Array[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9785,12 +9755,10 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1317, /* Array[MVirtualTypeProp] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1380, /* Array[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9799,6 +9767,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1601, /* Array[Array[MPackage]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9830,6 +9799,7 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2012, /* Array[Array[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9845,44 +9815,52 @@ const struct type type_standard__Array__nit__MVirtualTypeProp = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__Array__nit__MVirtualTypeProp = {
+const struct types resolution_table_core__Array__core__Array__nitc__MPackage = {
 0, /* dummy */
 {
-&type_nit__MVirtualTypeProp, /* E: MVirtualTypeProp */
-&type_standard__Array__nit__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
-&type_standard__Collection__nit__MVirtualTypeProp, /* Collection[E]: Collection[MVirtualTypeProp] */
-&type_standard__Array__nit__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
-&type_standard__NativeArray__nit__MVirtualTypeProp, /* NativeArray[E]: NativeArray[MVirtualTypeProp] */
-&type_nit__MVirtualTypeProp, /* E: MVirtualTypeProp */
-&type_standard__Collection__nit__MVirtualTypeProp, /* Collection[E]: Collection[MVirtualTypeProp] */
-&type_nit__MVirtualTypeProp, /* E: MVirtualTypeProp */
-&type_standard__Collection__nit__MVirtualTypeProp, /* Collection[E]: Collection[MVirtualTypeProp] */
-&type_standard__Collection__nit__MVirtualTypeProp, /* Collection[E]: Collection[MVirtualTypeProp] */
-&type_standard__Array__nit__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
-&type_standard__AbstractArray__nit__MVirtualTypeProp, /* AbstractArray[E]: AbstractArray[MVirtualTypeProp] */
-&type_standard__array__ArrayIterator__nit__MVirtualTypeProp, /* ArrayIterator[E]: ArrayIterator[MVirtualTypeProp] */
+&type_core__Array__nitc__MPackage, /* E: Array[MPackage] */
+&type_core__Array__core__Array__nitc__MPackage, /* Array[E]: Array[Array[MPackage]] */
+&type_core__Collection__core__Array__nitc__MPackage, /* Collection[E]: Collection[Array[MPackage]] */
+&type_core__Array__core__Array__nitc__MPackage, /* Array[E]: Array[Array[MPackage]] */
+&type_core__AbstractArray__core__Array__nitc__MPackage, /* AbstractArray[E]: AbstractArray[Array[MPackage]] */
+&type_core__NativeArray__core__Array__nitc__MPackage, /* NativeArray[E]: NativeArray[Array[MPackage]] */
+&type_core__Array__nitc__MPackage, /* E: Array[MPackage] */
+&type_core__Collection__core__Array__nitc__MPackage, /* Collection[E]: Collection[Array[MPackage]] */
+&type_core__Array__nitc__MPackage, /* E: Array[MPackage] */
+&type_core__Collection__core__Array__nitc__MPackage, /* Collection[E]: Collection[Array[MPackage]] */
+&type_core__Collection__core__Array__nitc__MPackage, /* Collection[E]: Collection[Array[MPackage]] */
+&type_core__Array__core__Array__nitc__MPackage, /* Array[E]: Array[Array[MPackage]] */
+&type_core__AbstractArray__core__Array__nitc__MPackage, /* AbstractArray[E]: AbstractArray[Array[MPackage]] */
+&type_core__array__ArrayIterator__core__Array__nitc__MPackage, /* ArrayIterator[E]: ArrayIterator[Array[MPackage]] */
+&type_core__array__ArrayReverseIterator__core__Array__nitc__MPackage, /* ArrayReverseIterator[E]: ArrayReverseIterator[Array[MPackage]] */
 }
 };
-/* runtime type HashSetIterator[MVirtualTypeProp] */
-const struct type type_standard__hash_collection__HashSetIterator__nit__MVirtualTypeProp = {
+/* runtime type MapValuesIterator[String, Array[MPackage]] */
+const struct type type_core__MapValuesIterator__core__String__core__Array__nitc__MPackage = {
 -1, /*CAST DEAD*/
-"HashSetIterator[MVirtualTypeProp]", /* class_name_string */
+"MapValuesIterator[String, Array[MPackage]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashSetIterator__nit__MVirtualTypeProp,
-5,
+&resolution_table_core__MapValuesIterator__core__String__core__Array__nitc__MPackage,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashSetIterator__nit__MVirtualTypeProp = {
+const struct types resolution_table_core__MapValuesIterator__core__String__core__Array__nitc__MPackage = {
 0, /* dummy */
 {
-&type_standard__Array__nit__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
-&type_standard__HashSet__nit__MVirtualTypeProp, /* HashSet[E]: HashSet[MVirtualTypeProp] */
+&type_core__Array__core__Array__nitc__MPackage, /* Array[E]: Array[Array[MPackage]] */
+&type_core__MapIterator__core__String__core__Array__nitc__MPackage, /* MapIterator[K, V]: MapIterator[String, Array[MPackage]] */
 }
 };