csrc: regen for 32 bits platforms and Windows
[nit.git] / c_src / nitc__nith.types.20.c
index 44eaf01..b9a5253 100644 (file)
@@ -1,15 +1,15 @@
 #include "nitc__nith.types.0.h"
-/* runtime type HashMapValues[MGroup, Set[MGroup]] */
-const struct type type_core__hash_collection__HashMapValues__nitc__MGroup__core__Set__nitc__MGroup = {
--1, /*CAST DEAD*/
-"HashMapValues[MGroup, Set[MGroup]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[MNullableType] */
+const struct type type_core__NativeArray__nitc__MNullableType = {
+1630,
+"NativeArray[MNullableType]", /* class_name_string */
+23,
 0,
-&resolution_table_core__hash_collection__HashMapValues__nitc__MGroup__core__Set__nitc__MGroup,
-129,
+&resolution_table_core__NativeArray__nitc__MNullableType,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -31,8 +31,10 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MGroup__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1630, /* NativeArray[MNullableType] */
 -1, /* empty */
 -1, /* empty */
+1668, /* NativeArray[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -40,17 +42,18 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MGroup__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2084, /* NativeArray[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -100,6 +103,7 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MGroup__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -122,7 +126,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MGroup__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -130,34 +133,12 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MGroup__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2519, /* Collection[Set[MGroup]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MGroup__core__Set__nitc__MGroup = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MGroup__core__Set__nitc__MGroup, /* HashMap[K, V]: HashMap[MGroup, Set[MGroup]] */
-&type_core__Array__core__Set__nitc__MGroup, /* Array[E]: Array[Set[MGroup]] */
-&type_core__MapValuesIterator__nitc__MGroup__core__Set__nitc__MGroup, /* MapValuesIterator[K, V]: MapValuesIterator[MGroup, Set[MGroup]] */
-}
-};
-/* runtime type HashMapIterator[MGroup, Set[MGroup]] */
-const struct type type_core__hash_collection__HashMapIterator__nitc__MGroup__core__Set__nitc__MGroup = {
--1, /*CAST DEAD*/
-"HashMapIterator[MGroup, Set[MGroup]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapIterator__nitc__MGroup__core__Set__nitc__MGroup,
-79,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -213,7 +194,6 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MGroup__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -227,7 +207,6 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MGroup__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2721, /* MapIterator[MGroup, Set[MGroup]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -235,25 +214,6 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MGroup__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MGroup__core__Set__nitc__MGroup = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MGroup__core__Set__nitc__MGroup, /* HashMap[K, V]: HashMap[MGroup, Set[MGroup]] */
-}
-};
-/* runtime type HashMapNode[MGroup, Set[MGroup]] */
-const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup = {
-1976,
-"HashMapNode[MGroup, Set[MGroup]]", /* class_name_string */
-144,
-0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup,
-152,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -276,10 +236,32 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__MNullableType = {
+0, /* dummy */
+{
+&type_nitc__MNullableType, /* E: MNullableType */
+&type_core__NativeArray__nitc__MNullableType, /* NativeArray[E]: NativeArray[MNullableType] */
+}
+};
+/* runtime type ArrayIterator[MNullableType] */
+const struct type type_core__array__ArrayIterator__nitc__MNullableType = {
+1631,
+"ArrayIterator[MNullableType]", /* class_name_string */
+71,
+0,
+&resolution_table_core__array__ArrayIterator__nitc__MNullableType,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2843, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -307,7 +289,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -321,7 +302,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2819, /* nullable HashMapNode[MGroup, Set[MGroup]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -345,13 +325,16 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1631, /* ArrayIterator[MNullableType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1669, /* ArrayIterator[MType] */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -369,6 +352,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -382,7 +366,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -392,11 +375,15 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2085, /* ArrayIterator[nullable MType] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1976, /* HashMapNode[MGroup, Set[MGroup]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -406,28 +393,30 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MGroup__core__S
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup = {
+const struct types resolution_table_core__array__ArrayIterator__nitc__MNullableType = {
 0, /* dummy */
 {
-&type_core__Set__nitc__MGroup, /* V: Set[MGroup] */
-&type_nitc__MGroup, /* K: MGroup */
+&type_core__Array__nitc__MNullableType, /* Array[E]: Array[MNullableType] */
+&type_core__AbstractArrayRead__nitc__MNullableType, /* AbstractArrayRead[E]: AbstractArrayRead[MNullableType] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MGroup, Set[MGroup]]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup = {
-1977,
-"NativeArray[nullable HashMapNode[MGroup, Set[MGroup]]]", /* class_name_string */
-218,
+/* runtime type ArrayReverseIterator[MNullableType] */
+const struct type type_core__array__ArrayReverseIterator__nitc__MNullableType = {
+1632,
+"ArrayReverseIterator[MNullableType]", /* class_name_string */
+197,
 0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup,
-226,
+&resolution_table_core__array__ArrayReverseIterator__nitc__MNullableType,
+263,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2843, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -491,13 +480,16 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1631, /* ArrayIterator[MNullableType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1669, /* ArrayIterator[MType] */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -515,6 +507,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -535,9 +528,9 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
+2085, /* ArrayIterator[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -613,18 +606,20 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1632, /* ArrayReverseIterator[MNullableType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1670, /* ArrayReverseIterator[MType] */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -638,9 +633,9 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
-1977, /* NativeArray[nullable HashMapNode[MGroup, Set[MGroup]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -648,26 +643,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup = {
-0, /* dummy */
-{
-&type_nullable__core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup, /* E: nullable HashMapNode[MGroup, Set[MGroup]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MGroup__core__Set__nitc__MGroup, /* NativeArray[E]: NativeArray[nullable HashMapNode[MGroup, Set[MGroup]]] */
-}
-};
-/* runtime type NativeArray[Array[MType]] */
-const struct type type_core__NativeArray__core__Array__nitc__MType = {
-1978,
-"NativeArray[Array[MType]]", /* class_name_string */
-88,
-0,
-&resolution_table_core__NativeArray__core__Array__nitc__MType,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -681,6 +656,7 @@ const struct type type_core__NativeArray__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2086, /* ArrayReverseIterator[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -696,10 +672,29 @@ const struct type type_core__NativeArray__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MNullableType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MNullableType, /* Array[E]: Array[MNullableType] */
+&type_core__AbstractArrayRead__nitc__MNullableType, /* AbstractArrayRead[E]: AbstractArrayRead[MNullableType] */
+}
+};
+/* runtime type NativeArray[Match] */
+const struct type type_core__NativeArray__core__Match = {
+1633,
+"NativeArray[Match]", /* class_name_string */
+24,
+0,
+&resolution_table_core__NativeArray__core__Match,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -719,6 +714,8 @@ const struct type type_core__NativeArray__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1633, /* NativeArray[Match] */
+1636, /* NativeArray[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -727,6 +724,7 @@ const struct type type_core__NativeArray__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -754,10 +752,8 @@ const struct type type_core__NativeArray__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1978, /* NativeArray[Array[MType]] */
 -1, /* empty */
 -1, /* empty */
-1993, /* NativeArray[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -778,8 +774,22 @@ const struct type type_core__NativeArray__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2133, /* NativeArray[Array[Object]] */
-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 */
+1717, /* NativeArray[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -892,27 +902,6 @@ const struct type type_core__NativeArray__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__Array__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MType, /* E: Array[MType] */
-&type_core__NativeArray__core__Array__nitc__MType, /* NativeArray[E]: NativeArray[Array[MType]] */
-}
-};
-/* runtime type ArrayIterator[Array[MType]] */
-const struct type type_core__array__ArrayIterator__core__Array__nitc__MType = {
--1, /*CAST DEAD*/
-"ArrayIterator[Array[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__Array__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -921,27 +910,6 @@ const struct type type_core__array__ArrayIterator__core__Array__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Array__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__nitc__MType, /* Array[E]: Array[Array[MType]] */
-&type_core__AbstractArrayRead__core__Array__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[Array[MType]] */
-}
-};
-/* runtime type ArrayReverseIterator[Array[MType]] */
-const struct type type_core__array__ArrayReverseIterator__core__Array__nitc__MType = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Array[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Array__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -952,27 +920,25 @@ const struct type type_core__array__ArrayReverseIterator__core__Array__nitc__MTy
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Array__nitc__MType = {
+const struct types resolution_table_core__NativeArray__core__Match = {
 0, /* dummy */
 {
-&type_core__Array__core__Array__nitc__MType, /* Array[E]: Array[Array[MType]] */
-&type_core__AbstractArrayRead__core__Array__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[Array[MType]] */
+&type_core__Match, /* E: Match */
+&type_core__NativeArray__core__Match, /* NativeArray[E]: NativeArray[Match] */
 }
 };
-/* runtime type NativeArray[MGenericType] */
-const struct type type_core__NativeArray__nitc__MGenericType = {
-1981,
-"NativeArray[MGenericType]", /* class_name_string */
-89,
+/* runtime type ArrayIterator[Match] */
+const struct type type_core__array__ArrayIterator__core__Match = {
+1634,
+"ArrayIterator[Match]", /* class_name_string */
+72,
 0,
-&resolution_table_core__NativeArray__nitc__MGenericType,
-226,
+&resolution_table_core__array__ArrayIterator__core__Match,
+137,
 {
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -984,7 +950,6 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1201, /* NativeArray[MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -993,7 +958,6 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1333, /* NativeArray[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1001,7 +965,6 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1012,7 +975,6 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1538, /* NativeArray[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1046,18 +1008,20 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1634, /* ArrayIterator[Match] */
+1637, /* ArrayIterator[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1981, /* NativeArray[MGenericType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1070,6 +1034,7 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1081,7 +1046,6 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1109,6 +1073,27 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__core__Match = {
+0, /* dummy */
+{
+&type_core__Array__core__Match, /* Array[E]: Array[Match] */
+&type_core__AbstractArrayRead__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[Match] */
+}
+};
+/* runtime type ArrayReverseIterator[Match] */
+const struct type type_core__array__ArrayReverseIterator__core__Match = {
+1635,
+"ArrayReverseIterator[Match]", /* class_name_string */
+198,
+0,
+&resolution_table_core__array__ArrayReverseIterator__core__Match,
+263,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1178,12 +1163,15 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1634, /* ArrayIterator[Match] */
+1637, /* ArrayIterator[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1194,113 +1182,28 @@ const struct type type_core__NativeArray__nitc__MGenericType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__MGenericType = {
-0, /* dummy */
-{
-&type_nitc__MGenericType, /* E: MGenericType */
-&type_core__NativeArray__nitc__MGenericType, /* NativeArray[E]: NativeArray[MGenericType] */
-}
-};
-/* runtime type ArrayIterator[MGenericType] */
-const struct type type_core__array__ArrayIterator__nitc__MGenericType = {
--1, /*CAST DEAD*/
-"ArrayIterator[MGenericType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__MGenericType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2831, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__nitc__MGenericType = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MGenericType, /* Array[E]: Array[MGenericType] */
-&type_core__AbstractArrayRead__nitc__MGenericType, /* AbstractArrayRead[E]: AbstractArrayRead[MGenericType] */
-}
-};
-/* runtime type ArrayReverseIterator[MGenericType] */
-const struct type type_core__array__ArrayReverseIterator__nitc__MGenericType = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[MGenericType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__MGenericType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2831, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MGenericType = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MGenericType, /* Array[E]: Array[MGenericType] */
-&type_core__AbstractArrayRead__nitc__MGenericType, /* AbstractArrayRead[E]: AbstractArrayRead[MGenericType] */
-}
-};
-/* runtime type MapKeysIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
-const struct type type_core__MapKeysIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MType, HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2831, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
-&type_core__MapIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* MapIterator[K, V]: MapIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
-}
-};
-/* runtime type Array[HashMap[MProperty, Set[MMethodDef]]] */
-const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
-1985,
-"Array[HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
-494,
-0,
-&resolution_table_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
-510,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1335,7 +1238,6 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1387,12 +1289,15 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1635, /* ArrayReverseIterator[Match] */
+1638, /* ArrayReverseIterator[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1410,10 +1315,9 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2508, /* Collection[HashMap[MProperty, Set[MMethodDef]]] */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1428,8 +1332,6 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1452,6 +1354,26 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__core__Match = {
+0, /* dummy */
+{
+&type_core__Array__core__Match, /* Array[E]: Array[Match] */
+&type_core__AbstractArrayRead__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[Match] */
+}
+};
+/* runtime type NativeArray[nullable Match] */
+const struct type type_core__NativeArray__nullable__core__Match = {
+1636,
+"NativeArray[nullable Match]", /* class_name_string */
+25,
+0,
+&resolution_table_core__NativeArray__nullable__core__Match,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1462,7 +1384,6 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1476,6 +1397,7 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1636, /* NativeArray[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1539,14 +1461,13 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2634, /* AbstractArrayRead[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1588,7 +1509,6 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1665,10 +1585,8 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2958, /* AbstractArray[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1682,8 +1600,27 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__Match = {
+0, /* dummy */
+{
+&type_nullable__core__Match, /* E: nullable Match */
+&type_core__NativeArray__nullable__core__Match, /* NativeArray[E]: NativeArray[nullable Match] */
+}
+};
+/* runtime type ArrayIterator[nullable Match] */
+const struct type type_core__array__ArrayIterator__nullable__core__Match = {
+1637,
+"ArrayIterator[nullable Match]", /* class_name_string */
+73,
+0,
+&resolution_table_core__array__ArrayIterator__nullable__core__Match,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1754,12 +1691,14 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1637, /* ArrayIterator[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1793,7 +1732,6 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1985, /* Array[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1809,40 +1747,6 @@ const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* E: HashMap[MProperty, Set[MMethodDef]] */
-&type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Array[E]: Array[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__Collection__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Array[E]: Array[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__AbstractArray__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* AbstractArray[E]: AbstractArray[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__NativeArray__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* NativeArray[E]: NativeArray[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* E: HashMap[MProperty, Set[MMethodDef]] */
-&type_core__Collection__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* E: HashMap[MProperty, Set[MMethodDef]] */
-&type_core__Collection__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__Collection__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Array[E]: Array[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__AbstractArray__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* AbstractArray[E]: AbstractArray[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__array__ArrayIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* ArrayIterator[E]: ArrayIterator[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__array__ArrayReverseIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* ArrayReverseIterator[E]: ArrayReverseIterator[HashMap[MProperty, Set[MMethodDef]]] */
-}
-};
-/* runtime type MapValuesIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
-const struct type type_core__MapValuesIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MType, HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1853,53 +1757,31 @@ const struct type type_core__MapValuesIterator__nitc__MType__core__HashMap__nitc
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapValuesIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+const struct types resolution_table_core__array__ArrayIterator__nullable__core__Match = {
 0, /* dummy */
 {
-&type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Array[E]: Array[HashMap[MProperty, Set[MMethodDef]]] */
-&type_core__MapIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* MapIterator[K, V]: MapIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
+&type_core__Array__nullable__core__Match, /* Array[E]: Array[nullable Match] */
+&type_core__AbstractArrayRead__nullable__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[nullable Match] */
 }
 };
-/* runtime type MapKeysIterator[MProperty, Set[MMethodDef]] */
-const struct type type_core__MapKeysIterator__nitc__MProperty__core__Set__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MProperty, Set[MMethodDef]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ArrayReverseIterator[nullable Match] */
+const struct type type_core__array__ArrayReverseIterator__nullable__core__Match = {
+1638,
+"ArrayReverseIterator[nullable Match]", /* class_name_string */
+199,
 0,
-&resolution_table_core__MapKeysIterator__nitc__MProperty__core__Set__nitc__MMethodDef,
-11,
+&resolution_table_core__array__ArrayReverseIterator__nullable__core__Match,
+263,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-2829, /* Iterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__MProperty__core__Set__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MProperty, /* Array[E]: Array[MProperty] */
-&type_core__MapIterator__nitc__MProperty__core__Set__nitc__MMethodDef, /* MapIterator[K, V]: MapIterator[MProperty, Set[MMethodDef]] */
-}
-};
-/* runtime type Array[Set[MMethodDef]] */
-const struct type type_core__Array__core__Set__nitc__MMethodDef = {
-1988,
-"Array[Set[MMethodDef]]", /* class_name_string */
-495,
-0,
-&resolution_table_core__Array__core__Set__nitc__MMethodDef,
-510,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1934,7 +1816,6 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1965,12 +1846,14 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1637, /* ArrayIterator[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1998,7 +1881,6 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2497, /* Collection[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2010,9 +1892,7 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2509, /* Collection[Set[MMethodDef]] */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2027,8 +1907,6 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2061,7 +1939,6 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2095,12 +1972,14 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1638, /* ArrayReverseIterator[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2127,7 +2006,6 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2623, /* AbstractArrayRead[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2139,9 +2017,7 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2635, /* AbstractArrayRead[Set[MMethodDef]] */
 -1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2160,6 +2036,26 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nullable__core__Match = {
+0, /* dummy */
+{
+&type_core__Array__nullable__core__Match, /* Array[E]: Array[nullable Match] */
+&type_core__AbstractArrayRead__nullable__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[nullable Match] */
+}
+};
+/* runtime type HashMapKeys[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__nitc__MClassType = {
+1639,
+"HashMapKeys[MClass, MClassType]", /* class_name_string */
+169,
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__nitc__MClassType,
+205,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2170,6 +2066,7 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2417, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2187,7 +2084,6 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2195,9 +2091,11 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2446, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2253,7 +2151,7 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2947, /* AbstractArray[Set[PropertyLayoutElement]] */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2265,9 +2163,7 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2959, /* AbstractArray[Set[MMethodDef]] */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2282,7 +2178,6 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2328,9 +2223,11 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1639, /* HashMapKeys[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1710, /* HashMapKeys[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2362,6 +2259,36 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__nitc__MClassType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__nitc__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
+&type_core__MapKeysIterator__nitc__MClass__nitc__MClassType, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, MClassType] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+}
+};
+/* runtime type HashMapValues[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClass__nitc__MClassType = {
+1640,
+"HashMapValues[MClass, MClassType]", /* class_name_string */
+169,
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__nitc__MClassType,
+205,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2380,8 +2307,8 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2425, /* Collection[MClassType] */
 -1, /* empty */
-1797, /* Array[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2389,14 +2316,15 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2434, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1988, /* Array[Set[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2407,41 +2335,8 @@ const struct type type_core__Array__core__Set__nitc__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2453, /* Collection[nullable MType] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__core__Set__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__Set__nitc__MMethodDef, /* E: Set[MMethodDef] */
-&type_core__Array__core__Set__nitc__MMethodDef, /* Array[E]: Array[Set[MMethodDef]] */
-&type_core__Collection__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[Set[MMethodDef]] */
-&type_core__Array__core__Set__nitc__MMethodDef, /* Array[E]: Array[Set[MMethodDef]] */
-&type_core__AbstractArray__core__Set__nitc__MMethodDef, /* AbstractArray[E]: AbstractArray[Set[MMethodDef]] */
-&type_core__NativeArray__core__Set__nitc__MMethodDef, /* NativeArray[E]: NativeArray[Set[MMethodDef]] */
-&type_core__Set__nitc__MMethodDef, /* E: Set[MMethodDef] */
-&type_core__Collection__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[Set[MMethodDef]] */
-&type_core__Set__nitc__MMethodDef, /* E: Set[MMethodDef] */
-&type_core__Collection__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[Set[MMethodDef]] */
-&type_core__Collection__core__Set__nitc__MMethodDef, /* Collection[E]: Collection[Set[MMethodDef]] */
-&type_core__Array__core__Set__nitc__MMethodDef, /* Array[E]: Array[Set[MMethodDef]] */
-&type_core__AbstractArray__core__Set__nitc__MMethodDef, /* AbstractArray[E]: AbstractArray[Set[MMethodDef]] */
-&type_core__array__ArrayIterator__core__Set__nitc__MMethodDef, /* ArrayIterator[E]: ArrayIterator[Set[MMethodDef]] */
-&type_core__array__ArrayReverseIterator__core__Set__nitc__MMethodDef, /* ArrayReverseIterator[E]: ArrayReverseIterator[Set[MMethodDef]] */
-}
-};
-/* runtime type MapValuesIterator[MProperty, Set[MMethodDef]] */
-const struct type type_core__MapValuesIterator__nitc__MProperty__core__Set__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MProperty, Set[MMethodDef]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MProperty__core__Set__nitc__MMethodDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2450,26 +2345,6 @@ const struct type type_core__MapValuesIterator__nitc__MProperty__core__Set__nitc
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MProperty__core__Set__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MMethodDef, /* Array[E]: Array[Set[MMethodDef]] */
-&type_core__MapIterator__nitc__MProperty__core__Set__nitc__MMethodDef, /* MapIterator[K, V]: MapIterator[MProperty, Set[MMethodDef]] */
-}
-};
-/* runtime type NativeArray[HashSet[MType]] */
-const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
-1990,
-"NativeArray[HashSet[MType]]", /* class_name_string */
-90,
-0,
-&resolution_table_core__NativeArray__core__HashSet__nitc__MType,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2501,7 +2376,6 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2510,6 +2384,7 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2558,7 +2433,6 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1990, /* NativeArray[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2571,7 +2445,6 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2065, /* NativeArray[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2581,12 +2454,13 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
+1640, /* HashMapValues[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1711, /* HashMapValues[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2618,6 +2492,36 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__nitc__MClassType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__nitc__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
+&type_core__MapValuesIterator__nitc__MClass__nitc__MClassType, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, MClassType] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__MClassType, /* Array[E]: Array[MClassType] */
+}
+};
+/* runtime type HashMapIterator[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__nitc__MClassType = {
+1641,
+"HashMapIterator[MClass, MClassType]", /* class_name_string */
+122,
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__nitc__MClassType,
+158,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2659,10 +2563,12 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2701, /* MapIterator[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2706, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2694,27 +2600,6 @@ const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__HashSet__nitc__MType = {
-0, /* dummy */
-{
-&type_core__HashSet__nitc__MType, /* E: HashSet[MType] */
-&type_core__NativeArray__core__HashSet__nitc__MType, /* NativeArray[E]: NativeArray[HashSet[MType]] */
-}
-};
-/* runtime type ArrayIterator[HashSet[MType]] */
-const struct type type_core__array__ArrayIterator__core__HashSet__nitc__MType = {
--1, /*CAST DEAD*/
-"ArrayIterator[HashSet[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__HashSet__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2723,27 +2608,6 @@ const struct type type_core__array__ArrayIterator__core__HashSet__nitc__MType =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__HashSet__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__core__HashSet__nitc__MType, /* Array[E]: Array[HashSet[MType]] */
-&type_core__AbstractArrayRead__core__HashSet__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[HashSet[MType]] */
-}
-};
-/* runtime type ArrayReverseIterator[HashSet[MType]] */
-const struct type type_core__array__ArrayReverseIterator__core__HashSet__nitc__MType = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[HashSet[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__HashSet__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2752,26 +2616,6 @@ const struct type type_core__array__ArrayReverseIterator__core__HashSet__nitc__M
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__HashSet__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__core__HashSet__nitc__MType, /* Array[E]: Array[HashSet[MType]] */
-&type_core__AbstractArrayRead__core__HashSet__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[HashSet[MType]] */
-}
-};
-/* runtime type NativeArray[Array[nullable MType]] */
-const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
-1993,
-"NativeArray[Array[nullable MType]]", /* class_name_string */
-91,
-0,
-&resolution_table_core__NativeArray__core__Array__nullable__nitc__MType,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2798,12 +2642,13 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1641, /* HashMapIterator[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1712, /* HashMapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2833,6 +2678,25 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__nitc__MClassType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__nitc__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
+}
+};
+/* runtime type NativeArray[nullable HashMapNode[MClass, MClassType]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
+1642,
+"NativeArray[nullable HashMapNode[MClass, MClassType]]", /* class_name_string */
+182,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2861,7 +2725,6 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1993, /* NativeArray[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2883,7 +2746,6 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2928,6 +2790,7 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2996,27 +2859,6 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__Array__nullable__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__nullable__nitc__MType, /* E: Array[nullable MType] */
-&type_core__NativeArray__core__Array__nullable__nitc__MType, /* NativeArray[E]: NativeArray[Array[nullable MType]] */
-}
-};
-/* runtime type ArrayIterator[Array[nullable MType]] */
-const struct type type_core__array__ArrayIterator__core__Array__nullable__nitc__MType = {
--1, /*CAST DEAD*/
-"ArrayIterator[Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__Array__nullable__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3025,27 +2867,54 @@ const struct type type_core__array__ArrayIterator__core__Array__nullable__nitc__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Array__nullable__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
-&type_core__AbstractArrayRead__core__Array__nullable__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[Array[nullable MType]] */
-}
-};
-/* runtime type ArrayReverseIterator[Array[nullable MType]] */
-const struct type type_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MType = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MType,
-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 */
+-1, /* empty */
+-1, /* empty */
+1642, /* NativeArray[nullable HashMapNode[MClass, MClassType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1713, /* NativeArray[nullable HashMapNode[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 */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3056,24 +2925,34 @@ const struct type type_core__array__ArrayReverseIterator__core__Array__nullable_
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MType = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
 0, /* dummy */
 {
-&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
-&type_core__AbstractArrayRead__core__Array__nullable__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[Array[nullable MType]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType, /* E: nullable HashMapNode[MClass, MClassType] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, MClassType]] */
 }
 };
-/* runtime type NativeArray[Array[nullable MPropDef]] */
-const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef = {
-1996,
-"NativeArray[Array[nullable MPropDef]]", /* class_name_string */
-92,
+/* runtime type HashMapNode[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
+1643,
+"HashMapNode[MClass, MClassType]", /* class_name_string */
+105,
 0,
-&resolution_table_core__NativeArray__core__Array__nullable__nitc__MPropDef,
-226,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType,
+156,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* 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 */
@@ -3105,10 +2984,11 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
+2793, /* nullable HashMapNode[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2799, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3164,9 +3044,9 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1996, /* NativeArray[Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
+1643, /* HashMapNode[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3185,7 +3065,6 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3203,6 +3082,7 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1714, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3217,8 +3097,32 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
+0, /* dummy */
+{
+&type_nitc__MClassType, /* V: MClassType */
+&type_nitc__MClass, /* K: MClass */
+}
+};
+/* runtime type MapValuesIterator[MClass, MClassType] */
+const struct type type_core__MapValuesIterator__nitc__MClass__nitc__MClassType = {
+1644,
+"MapValuesIterator[MClass, MClassType]", /* class_name_string */
+52,
+0,
+&resolution_table_core__MapValuesIterator__nitc__MClass__nitc__MClassType,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2843, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3263,10 +3167,13 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1644, /* MapValuesIterator[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1716, /* MapValuesIterator[Object, nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3300,25 +3207,96 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MPropDef
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__NativeArray__core__Array__nullable__nitc__MPropDef = {
+const struct types resolution_table_core__MapValuesIterator__nitc__MClass__nitc__MClassType = {
 0, /* dummy */
 {
-&type_core__Array__nullable__nitc__MPropDef, /* E: Array[nullable MPropDef] */
-&type_core__NativeArray__core__Array__nullable__nitc__MPropDef, /* NativeArray[E]: NativeArray[Array[nullable MPropDef]] */
+&type_core__Array__nitc__MClassType, /* Array[E]: Array[MClassType] */
+&type_core__MapIterator__nitc__MClass__nitc__MClassType, /* MapIterator[K, V]: MapIterator[MClass, MClassType] */
 }
 };
-/* runtime type ArrayIterator[Array[nullable MPropDef]] */
-const struct type type_core__array__ArrayIterator__core__Array__nullable__nitc__MPropDef = {
--1, /*CAST DEAD*/
-"ArrayIterator[Array[nullable MPropDef]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type MapKeysIterator[MClass, MClassType] */
+const struct type type_core__MapKeysIterator__nitc__MClass__nitc__MClassType = {
+1645,
+"MapKeysIterator[MClass, MClassType]", /* class_name_string */
+52,
 0,
-&resolution_table_core__array__ArrayIterator__core__Array__nullable__nitc__MPropDef,
-11,
+&resolution_table_core__MapKeysIterator__nitc__MClass__nitc__MClassType,
+90,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[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 */
+-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 */
+1645, /* MapKeysIterator[MClass, MClassType] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1720, /* MapKeysIterator[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 */
@@ -3327,27 +3305,6 @@ const struct type type_core__array__ArrayIterator__core__Array__nullable__nitc__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Array__nullable__nitc__MPropDef = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__nullable__nitc__MPropDef, /* Array[E]: Array[Array[nullable MPropDef]] */
-&type_core__AbstractArrayRead__core__Array__nullable__nitc__MPropDef, /* AbstractArrayRead[E]: AbstractArrayRead[Array[nullable MPropDef]] */
-}
-};
-/* runtime type ArrayReverseIterator[Array[nullable MPropDef]] */
-const struct type type_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MPropDef = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Array[nullable MPropDef]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MPropDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3358,24 +3315,25 @@ const struct type type_core__array__ArrayReverseIterator__core__Array__nullable_
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MPropDef = {
+const struct types resolution_table_core__MapKeysIterator__nitc__MClass__nitc__MClassType = {
 0, /* dummy */
 {
-&type_core__Array__core__Array__nullable__nitc__MPropDef, /* Array[E]: Array[Array[nullable MPropDef]] */
-&type_core__AbstractArrayRead__core__Array__nullable__nitc__MPropDef, /* AbstractArrayRead[E]: AbstractArrayRead[Array[nullable MPropDef]] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapIterator__nitc__MClass__nitc__MClassType, /* MapIterator[K, V]: MapIterator[MClass, MClassType] */
 }
 };
-/* runtime type NativeArray[Array[nullable MProperty]] */
-const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty = {
-1999,
-"NativeArray[Array[nullable MProperty]]", /* class_name_string */
-93,
+/* runtime type ArrayMapKeys[MClass, AType] */
+const struct type type_core__array__ArrayMapKeys__nitc__MClass__nitc__AType = {
+1646,
+"ArrayMapKeys[MClass, AType]", /* class_name_string */
+2,
 0,
-&resolution_table_core__NativeArray__core__Array__nullable__nitc__MProperty,
-226,
+&resolution_table_core__array__ArrayMapKeys__nitc__MClass__nitc__AType,
+130,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
+1646, /* ArrayMapKeys[MClass, AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3385,6 +3343,7 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2417, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3407,12 +3366,13 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2446, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3467,8 +3427,8 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1999, /* NativeArray[Array[nullable MProperty]] */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3487,7 +3447,6 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3502,6 +3461,37 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayMapKeys__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__ArrayMap__nitc__MClass__nitc__AType, /* ArrayMap[K, E]: ArrayMap[MClass, AType] */
+&type_nitc__MClass, /* K: MClass */
+&type_core__MapKeysIterator__nitc__MClass__nitc__AType, /* MapKeysIterator[K, E]: MapKeysIterator[MClass, AType] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+}
+};
+/* runtime type ArrayMapValues[MClass, AType] */
+const struct type type_core__array__ArrayMapValues__nitc__MClass__nitc__AType = {
+1647,
+"ArrayMapValues[MClass, AType]", /* class_name_string */
+2,
+0,
+&resolution_table_core__array__ArrayMapValues__nitc__MClass__nitc__AType,
+130,
+{
+2380, /* Object */
+2401, /* nullable Object */
+1647, /* ArrayMapValues[MClass, AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3536,12 +3526,14 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2449, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3588,6 +3580,17 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2496, /* Collection[ANode] */
+-1, /* empty */
+2498, /* Collection[AType] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2502, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3600,27 +3603,6 @@ const struct type type_core__NativeArray__core__Array__nullable__nitc__MProperty
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__Array__nullable__nitc__MProperty = {
-0, /* dummy */
-{
-&type_core__Array__nullable__nitc__MProperty, /* E: Array[nullable MProperty] */
-&type_core__NativeArray__core__Array__nullable__nitc__MProperty, /* NativeArray[E]: NativeArray[Array[nullable MProperty]] */
-}
-};
-/* runtime type ArrayIterator[Array[nullable MProperty]] */
-const struct type type_core__array__ArrayIterator__core__Array__nullable__nitc__MProperty = {
--1, /*CAST DEAD*/
-"ArrayIterator[Array[nullable MProperty]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__Array__nullable__nitc__MProperty,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3629,27 +3611,6 @@ const struct type type_core__array__ArrayIterator__core__Array__nullable__nitc__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Array__nullable__nitc__MProperty = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__nullable__nitc__MProperty, /* Array[E]: Array[Array[nullable MProperty]] */
-&type_core__AbstractArrayRead__core__Array__nullable__nitc__MProperty, /* AbstractArrayRead[E]: AbstractArrayRead[Array[nullable MProperty]] */
-}
-};
-/* runtime type ArrayReverseIterator[Array[nullable MProperty]] */
-const struct type type_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MProperty = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Array[nullable MProperty]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MProperty,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3660,24 +3621,34 @@ const struct type type_core__array__ArrayReverseIterator__core__Array__nullable_
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MProperty = {
+const struct types resolution_table_core__array__ArrayMapValues__nitc__MClass__nitc__AType = {
 0, /* dummy */
 {
-&type_core__Array__core__Array__nullable__nitc__MProperty, /* Array[E]: Array[Array[nullable MProperty]] */
-&type_core__AbstractArrayRead__core__Array__nullable__nitc__MProperty, /* AbstractArrayRead[E]: AbstractArrayRead[Array[nullable MProperty]] */
+&type_core__ArrayMap__nitc__MClass__nitc__AType, /* ArrayMap[K, E]: ArrayMap[MClass, AType] */
+&type_core__MapValuesIterator__nitc__MClass__nitc__AType, /* MapValuesIterator[K, E]: MapValuesIterator[MClass, AType] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
 }
 };
-/* runtime type NativeArray[Set[MClassDef]] */
-const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
-2002,
-"NativeArray[Set[MClassDef]]", /* class_name_string */
-94,
+/* runtime type Array[Couple[MClass, AType]] */
+const struct type type_core__Array__core__Couple__nitc__MClass__nitc__AType = {
+1648,
+"Array[Couple[MClass, AType]]", /* class_name_string */
+475,
 0,
-&resolution_table_core__NativeArray__core__Set__nitc__MClassDef,
-226,
+&resolution_table_core__Array__core__Couple__nitc__MClass__nitc__AType,
+510,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3709,11 +3680,11 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3768,11 +3739,12 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2497, /* Collection[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
-2002, /* NativeArray[Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3789,7 +3761,6 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3805,6 +3776,8 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1715, /* Array[nullable Object] */
+2210, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3869,11 +3842,13 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2597, /* AbstractArrayRead[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2603, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3891,6 +3866,18 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2621, /* AbstractArrayRead[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 */
@@ -3902,27 +3889,6 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__Set__nitc__MClassDef = {
-0, /* dummy */
-{
-&type_core__Set__nitc__MClassDef, /* E: Set[MClassDef] */
-&type_core__NativeArray__core__Set__nitc__MClassDef, /* NativeArray[E]: NativeArray[Set[MClassDef]] */
-}
-};
-/* runtime type ArrayIterator[Set[MClassDef]] */
-const struct type type_core__array__ArrayIterator__core__Set__nitc__MClassDef = {
--1, /*CAST DEAD*/
-"ArrayIterator[Set[MClassDef]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__Set__nitc__MClassDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3931,27 +3897,6 @@ const struct type type_core__array__ArrayIterator__core__Set__nitc__MClassDef =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Set__nitc__MClassDef = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MClassDef, /* Array[E]: Array[Set[MClassDef]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MClassDef, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MClassDef]] */
-}
-};
-/* runtime type ArrayReverseIterator[Set[MClassDef]] */
-const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MClassDef = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Set[MClassDef]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MClassDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3960,26 +3905,6 @@ const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MClas
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MClassDef = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MClassDef, /* Array[E]: Array[Set[MClassDef]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MClassDef, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MClassDef]] */
-}
-};
-/* runtime type NativeArray[Set[MClass]] */
-const struct type type_core__NativeArray__core__Set__nitc__MClass = {
-2005,
-"NativeArray[Set[MClass]]", /* class_name_string */
-95,
-0,
-&resolution_table_core__NativeArray__core__Set__nitc__MClass,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4011,8 +3936,8 @@ const struct type type_core__NativeArray__core__Set__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
+2888, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4068,12 +3993,13 @@ const struct type type_core__NativeArray__core__Set__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2944, /* AbstractArray[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2949, /* AbstractArray[nullable Object] */
 -1, /* empty */
-2005, /* NativeArray[Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4091,7 +4017,6 @@ const struct type type_core__NativeArray__core__Set__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4106,6 +4031,7 @@ const struct type type_core__NativeArray__core__Set__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+226, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4196,6 +4122,33 @@ const struct type type_core__NativeArray__core__Set__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1648, /* Array[Couple[MClass, AType]] */
+-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 */
@@ -4206,25 +4159,68 @@ const struct type type_core__NativeArray__core__Set__nitc__MClass = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__NativeArray__core__Set__nitc__MClass = {
+const struct types resolution_table_core__Array__core__Couple__nitc__MClass__nitc__AType = {
 0, /* dummy */
 {
-&type_core__Set__nitc__MClass, /* E: Set[MClass] */
-&type_core__NativeArray__core__Set__nitc__MClass, /* NativeArray[E]: NativeArray[Set[MClass]] */
+&type_core__Couple__nitc__MClass__nitc__AType, /* E: Couple[MClass, AType] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* SELF: Array[Couple[MClass, AType]] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__AbstractArray__core__Couple__nitc__MClass__nitc__AType, /* AbstractArray[E]: AbstractArray[Couple[MClass, AType]] */
+&type_core__NativeArray__core__Couple__nitc__MClass__nitc__AType, /* NativeArray[E]: NativeArray[Couple[MClass, AType]] */
+&type_core__Couple__nitc__MClass__nitc__AType, /* E: Couple[MClass, AType] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Couple__nitc__MClass__nitc__AType, /* E: Couple[MClass, AType] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__AbstractArray__core__Couple__nitc__MClass__nitc__AType, /* AbstractArray[E]: AbstractArray[Couple[MClass, AType]] */
+&type_core__array__ArrayIterator__core__Couple__nitc__MClass__nitc__AType, /* ArrayIterator[E]: ArrayIterator[Couple[MClass, AType]] */
+&type_core__array__ArrayReverseIterator__core__Couple__nitc__MClass__nitc__AType, /* ArrayReverseIterator[E]: ArrayReverseIterator[Couple[MClass, AType]] */
 }
 };
-/* runtime type ArrayIterator[Set[MClass]] */
-const struct type type_core__array__ArrayIterator__core__Set__nitc__MClass = {
--1, /*CAST DEAD*/
-"ArrayIterator[Set[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type CoupleMapIterator[MClass, AType] */
+const struct type type_core__abstract_collection__CoupleMapIterator__nitc__MClass__nitc__AType = {
+1649,
+"CoupleMapIterator[MClass, AType]", /* class_name_string */
+81,
 0,
-&resolution_table_core__array__ArrayIterator__core__Set__nitc__MClass,
-11,
+&resolution_table_core__abstract_collection__CoupleMapIterator__nitc__MClass__nitc__AType,
+83,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* 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 */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4233,27 +4229,212 @@ const struct type type_core__array__ArrayIterator__core__Set__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2702, /* MapIterator[MClass, AType] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2706, /* MapIterator[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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1649, /* CoupleMapIterator[MClass, AType] */
+-1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayIterator__core__Set__nitc__MClass = {
+const struct types resolution_table_core__abstract_collection__CoupleMapIterator__nitc__MClass__nitc__AType = {
 0, /* dummy */
 {
-&type_core__Array__core__Set__nitc__MClass, /* Array[E]: Array[Set[MClass]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MClass, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MClass]] */
+&type_core__Iterator__core__Couple__nitc__MClass__nitc__AType, /* Iterator[Couple[K, V]]: Iterator[Couple[MClass, AType]] */
 }
 };
-/* runtime type ArrayReverseIterator[Set[MClass]] */
-const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MClass = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Set[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Couple[MClass, AType] */
+const struct type type_core__Couple__nitc__MClass__nitc__AType = {
+1650,
+"Couple[MClass, AType]", /* class_name_string */
+2,
 0,
-&resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MClass,
-11,
+&resolution_table_core__Couple__nitc__MClass__nitc__AType,
+4,
+{
+2380, /* Object */
+2401, /* nullable Object */
+1650, /* Couple[MClass, AType] */
+-1, /* empty */
+},
+};
+const struct types resolution_table_core__Couple__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_nitc__MClass, /* F: MClass */
+&type_nitc__AType, /* S: AType */
+}
+};
+/* runtime type NativeArray[Couple[MClass, AType]] */
+const struct type type_core__NativeArray__core__Couple__nitc__MClass__nitc__AType = {
+1651,
+"NativeArray[Couple[MClass, AType]]", /* class_name_string */
+90,
+0,
+&resolution_table_core__NativeArray__core__Couple__nitc__MClass__nitc__AType,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* 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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+227, /* NativeArray[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 */
+-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 */
+1651, /* NativeArray[Couple[MClass, AType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1717, /* 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 */
+-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 */
@@ -4262,26 +4443,6 @@ const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MClas
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MClass, /* Array[E]: Array[Set[MClass]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MClass, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MClass]] */
-}
-};
-/* runtime type NativeArray[Set[MClassType]] */
-const struct type type_core__NativeArray__core__Set__nitc__MClassType = {
-2008,
-"NativeArray[Set[MClassType]]", /* class_name_string */
-96,
-0,
-&resolution_table_core__NativeArray__core__Set__nitc__MClassType,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4313,7 +4474,6 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4376,14 +4536,40 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2008, /* NativeArray[Set[MClassType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__core__Couple__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__Couple__nitc__MClass__nitc__AType, /* E: Couple[MClass, AType] */
+&type_core__NativeArray__core__Couple__nitc__MClass__nitc__AType, /* NativeArray[E]: NativeArray[Couple[MClass, AType]] */
+}
+};
+/* runtime type ArrayIterator[Couple[MClass, AType]] */
+const struct type type_core__array__ArrayIterator__core__Couple__nitc__MClass__nitc__AType = {
+1652,
+"ArrayIterator[Couple[MClass, AType]]", /* class_name_string */
+74,
+0,
+&resolution_table_core__array__ArrayIterator__core__Couple__nitc__MClass__nitc__AType,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2989, /* Iterator[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2065, /* NativeArray[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4393,7 +4579,6 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4446,11 +4631,13 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1652, /* ArrayIterator[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4468,6 +4655,7 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4508,54 +4696,34 @@ const struct type type_core__NativeArray__core__Set__nitc__MClassType = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__NativeArray__core__Set__nitc__MClassType = {
+const struct types resolution_table_core__array__ArrayIterator__core__Couple__nitc__MClass__nitc__AType = {
 0, /* dummy */
 {
-&type_core__Set__nitc__MClassType, /* E: Set[MClassType] */
-&type_core__NativeArray__core__Set__nitc__MClassType, /* NativeArray[E]: NativeArray[Set[MClassType]] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__AbstractArrayRead__core__Couple__nitc__MClass__nitc__AType, /* AbstractArrayRead[E]: AbstractArrayRead[Couple[MClass, AType]] */
 }
 };
-/* runtime type ArrayIterator[Set[MClassType]] */
-const struct type type_core__array__ArrayIterator__core__Set__nitc__MClassType = {
--1, /*CAST DEAD*/
-"ArrayIterator[Set[MClassType]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ArrayReverseIterator[Couple[MClass, AType]] */
+const struct type type_core__array__ArrayReverseIterator__core__Couple__nitc__MClass__nitc__AType = {
+1653,
+"ArrayReverseIterator[Couple[MClass, AType]]", /* class_name_string */
+200,
 0,
-&resolution_table_core__array__ArrayIterator__core__Set__nitc__MClassType,
-11,
+&resolution_table_core__array__ArrayReverseIterator__core__Couple__nitc__MClass__nitc__AType,
+263,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2989, /* Iterator[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Set__nitc__MClassType = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MClassType, /* Array[E]: Array[Set[MClassType]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MClassType, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MClassType]] */
-}
-};
-/* runtime type ArrayReverseIterator[Set[MClassType]] */
-const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MClassType = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Set[MClassType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MClassType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4564,27 +4732,6 @@ const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MClas
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MClassType = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MClassType, /* Array[E]: Array[Set[MClassType]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MClassType, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MClassType]] */
-}
-};
-/* runtime type MapKeysIterator[Object, Array[Object]] */
-const struct type type_core__MapKeysIterator__core__Object__core__Array__core__Object = {
--1, /*CAST DEAD*/
-"MapKeysIterator[Object, Array[Object]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__core__Object__core__Array__core__Object,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4593,26 +4740,6 @@ const struct type type_core__MapKeysIterator__core__Object__core__Array__core__O
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__core__Object__core__Array__core__Object = {
-0, /* dummy */
-{
-&type_core__Array__core__Object, /* Array[E]: Array[Object] */
-&type_core__MapIterator__core__Object__core__Array__core__Object, /* MapIterator[K, V]: MapIterator[Object, Array[Object]] */
-}
-};
-/* runtime type Array[Array[Object]] */
-const struct type type_core__Array__core__Array__core__Object = {
-2012,
-"Array[Array[Object]]", /* class_name_string */
-496,
-0,
-&resolution_table_core__Array__core__Array__core__Object,
-510,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4647,7 +4774,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4660,11 +4786,13 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1652, /* ArrayIterator[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4682,6 +4810,7 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4724,8 +4853,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2510, /* Collection[Array[Object]] */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4740,8 +4867,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4774,7 +4899,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4788,11 +4912,13 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1653, /* ArrayReverseIterator[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4810,6 +4936,7 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4848,13 +4975,31 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__core__Couple__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__AbstractArrayRead__core__Couple__nitc__MClass__nitc__AType, /* AbstractArrayRead[E]: AbstractArrayRead[Couple[MClass, AType]] */
+}
+};
+/* runtime type Array[AType] */
+const struct type type_core__Array__nitc__AType = {
+1654,
+"Array[AType]", /* class_name_string */
+476,
+0,
+&resolution_table_core__Array__nitc__AType,
+510,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2636, /* AbstractArrayRead[Array[Object]] */
-2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4885,12 +5030,14 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2449, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4900,7 +5047,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4938,10 +5084,13 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2496, /* Collection[ANode] */
 -1, /* empty */
+2498, /* Collection[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4973,14 +5122,14 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1715, /* Array[nullable Object] */
+2210, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2960, /* AbstractArray[Array[Object]] */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4995,7 +5144,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5036,14 +5184,17 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2593, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2598, /* AbstractArrayRead[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2603, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5061,6 +5212,7 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2621, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5075,6 +5227,7 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2636, /* AbstractArrayRead[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5107,7 +5260,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2012, /* Array[Array[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5121,40 +5273,6 @@ const struct type type_core__Array__core__Array__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__core__Array__core__Object = {
-0, /* dummy */
-{
-&type_core__Array__core__Object, /* E: Array[Object] */
-&type_core__Array__core__Array__core__Object, /* Array[E]: Array[Array[Object]] */
-&type_core__Collection__core__Array__core__Object, /* Collection[E]: Collection[Array[Object]] */
-&type_core__Array__core__Array__core__Object, /* Array[E]: Array[Array[Object]] */
-&type_core__AbstractArray__core__Array__core__Object, /* AbstractArray[E]: AbstractArray[Array[Object]] */
-&type_core__NativeArray__core__Array__core__Object, /* NativeArray[E]: NativeArray[Array[Object]] */
-&type_core__Array__core__Object, /* E: Array[Object] */
-&type_core__Collection__core__Array__core__Object, /* Collection[E]: Collection[Array[Object]] */
-&type_core__Array__core__Object, /* E: Array[Object] */
-&type_core__Collection__core__Array__core__Object, /* Collection[E]: Collection[Array[Object]] */
-&type_core__Collection__core__Array__core__Object, /* Collection[E]: Collection[Array[Object]] */
-&type_core__Array__core__Array__core__Object, /* Array[E]: Array[Array[Object]] */
-&type_core__AbstractArray__core__Array__core__Object, /* AbstractArray[E]: AbstractArray[Array[Object]] */
-&type_core__array__ArrayIterator__core__Array__core__Object, /* ArrayIterator[E]: ArrayIterator[Array[Object]] */
-&type_core__array__ArrayReverseIterator__core__Array__core__Object, /* ArrayReverseIterator[E]: ArrayReverseIterator[Array[Object]] */
-}
-};
-/* runtime type MapValuesIterator[Object, Array[Object]] */
-const struct type type_core__MapValuesIterator__core__Object__core__Array__core__Object = {
--1, /*CAST DEAD*/
-"MapValuesIterator[Object, Array[Object]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__core__Object__core__Array__core__Object,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5163,55 +5281,18 @@ const struct type type_core__MapValuesIterator__core__Object__core__Array__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__core__Object__core__Array__core__Object = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__core__Object, /* Array[E]: Array[Array[Object]] */
-&type_core__MapIterator__core__Object__core__Array__core__Object, /* MapIterator[K, V]: MapIterator[Object, Array[Object]] */
-}
-};
-/* runtime type MapKeysIterator[Object, nullable Object] */
-const struct type type_core__MapKeysIterator__core__Object__nullable__core__Object = {
--1, /*CAST DEAD*/
-"MapKeysIterator[Object, nullable Object]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__core__Object__nullable__core__Object,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__core__Object__nullable__core__Object = {
-0, /* dummy */
-{
-&type_core__Array__core__Object, /* Array[E]: Array[Object] */
-&type_core__MapIterator__core__Object__nullable__core__Object, /* MapIterator[K, V]: MapIterator[Object, nullable Object] */
-}
-};
-/* runtime type Array[nullable Object] */
-const struct type type_core__Array__nullable__core__Object = {
-2015,
-"Array[nullable Object]", /* class_name_string */
-129,
-0,
-&resolution_table_core__Array__nullable__core__Object,
-510,
-{
-2371, /* Object */
-2397, /* nullable Object */
+2895, /* AbstractArray[Prod] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5257,10 +5338,13 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2943, /* AbstractArray[ANode] */
 -1, /* empty */
+2945, /* AbstractArray[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2949, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5293,6 +5377,7 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+226, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5324,7 +5409,6 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5339,8 +5423,7 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
+254, /* Array[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5384,7 +5467,9 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1623, /* Array[ANode] */
 -1, /* empty */
+1654, /* Array[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5418,6 +5503,47 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__nitc__AType = {
+0, /* dummy */
+{
+&type_nitc__AType, /* E: AType */
+&type_core__Array__nitc__AType, /* SELF: Array[AType] */
+&type_core__Collection__nitc__AType, /* Collection[E]: Collection[AType] */
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
+&type_core__AbstractArray__nitc__AType, /* AbstractArray[E]: AbstractArray[AType] */
+&type_core__NativeArray__nitc__AType, /* NativeArray[E]: NativeArray[AType] */
+&type_nitc__AType, /* E: AType */
+&type_core__Collection__nitc__AType, /* Collection[E]: Collection[AType] */
+&type_nitc__AType, /* E: AType */
+&type_core__Collection__nitc__AType, /* Collection[E]: Collection[AType] */
+&type_core__Collection__nitc__AType, /* Collection[E]: Collection[AType] */
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
+&type_core__AbstractArray__nitc__AType, /* AbstractArray[E]: AbstractArray[AType] */
+&type_core__array__ArrayIterator__nitc__AType, /* ArrayIterator[E]: ArrayIterator[AType] */
+&type_core__array__ArrayReverseIterator__nitc__AType, /* ArrayReverseIterator[E]: ArrayReverseIterator[AType] */
+}
+};
+/* runtime type MapValuesIterator[MClass, AType] */
+const struct type type_core__MapValuesIterator__nitc__MClass__nitc__AType = {
+1655,
+"MapValuesIterator[MClass, AType]", /* class_name_string */
+53,
+0,
+&resolution_table_core__MapValuesIterator__nitc__MClass__nitc__AType,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5453,7 +5579,6 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5463,9 +5588,11 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1655, /* MapValuesIterator[MClass, AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1716, /* MapValuesIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5498,6 +5625,26 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
+&type_core__MapIterator__nitc__MClass__nitc__AType, /* MapIterator[K, V]: MapIterator[MClass, AType] */
+}
+};
+/* runtime type NativeArray[AType] */
+const struct type type_core__NativeArray__nitc__AType = {
+1656,
+"NativeArray[AType]", /* class_name_string */
+91,
+0,
+&resolution_table_core__NativeArray__nitc__AType,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5530,12 +5677,14 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2012, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5579,15 +5728,17 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1625, /* NativeArray[ANode] */
 -1, /* empty */
+1656, /* NativeArray[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5722,37 +5873,32 @@ const struct type type_core__Array__nullable__core__Object = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__Array__nullable__core__Object = {
+const struct types resolution_table_core__NativeArray__nitc__AType = {
 0, /* dummy */
 {
-&type_nullable__core__Object, /* E: nullable Object */
-&type_core__Array__nullable__core__Object, /* Array[E]: Array[nullable Object] */
-&type_core__Collection__nullable__core__Object, /* Collection[E]: Collection[nullable Object] */
-&type_core__Array__nullable__core__Object, /* Array[E]: Array[nullable Object] */
-&type_core__AbstractArray__nullable__core__Object, /* AbstractArray[E]: AbstractArray[nullable Object] */
-&type_core__NativeArray__nullable__core__Object, /* NativeArray[E]: NativeArray[nullable Object] */
-&type_nullable__core__Object, /* E: nullable Object */
-&type_core__Collection__nullable__core__Object, /* Collection[E]: Collection[nullable Object] */
-&type_nullable__core__Object, /* E: nullable Object */
-&type_core__Collection__nullable__core__Object, /* Collection[E]: Collection[nullable Object] */
-&type_core__Collection__nullable__core__Object, /* Collection[E]: Collection[nullable Object] */
-&type_core__Array__nullable__core__Object, /* Array[E]: Array[nullable Object] */
-&type_core__AbstractArray__nullable__core__Object, /* AbstractArray[E]: AbstractArray[nullable Object] */
-&type_core__array__ArrayIterator__nullable__core__Object, /* ArrayIterator[E]: ArrayIterator[nullable Object] */
-&type_core__array__ArrayReverseIterator__nullable__core__Object, /* ArrayReverseIterator[E]: ArrayReverseIterator[nullable Object] */
+&type_nitc__AType, /* E: AType */
+&type_core__NativeArray__nitc__AType, /* NativeArray[E]: NativeArray[AType] */
 }
 };
-/* runtime type MapValuesIterator[Object, nullable Object] */
-const struct type type_core__MapValuesIterator__core__Object__nullable__core__Object = {
--1, /*CAST DEAD*/
-"MapValuesIterator[Object, nullable Object]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ArrayIterator[AType] */
+const struct type type_core__array__ArrayIterator__nitc__AType = {
+1657,
+"ArrayIterator[AType]", /* class_name_string */
+75,
 0,
-&resolution_table_core__MapValuesIterator__core__Object__nullable__core__Object,
-11,
+&resolution_table_core__array__ArrayIterator__nitc__AType,
+137,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5762,26 +5908,6 @@ const struct type type_core__MapValuesIterator__core__Object__nullable__core__Ob
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__core__Object__nullable__core__Object = {
-0, /* dummy */
-{
-&type_core__Array__nullable__core__Object, /* Array[E]: Array[nullable Object] */
-&type_core__MapIterator__core__Object__nullable__core__Object, /* MapIterator[K, V]: MapIterator[Object, nullable Object] */
-}
-};
-/* runtime type NativeArray[Iterator[Object]] */
-const struct type type_core__NativeArray__core__Iterator__core__Object = {
-2017,
-"NativeArray[Iterator[Object]]", /* class_name_string */
-97,
-0,
-&resolution_table_core__NativeArray__core__Iterator__core__Object,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5813,7 +5939,6 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5834,14 +5959,17 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1626, /* ArrayIterator[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1657, /* ArrayIterator[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5859,6 +5987,7 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5873,11 +6002,11 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2013, /* ArrayIterator[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2017, /* NativeArray[Iterator[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5893,11 +6022,31 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__AType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
+&type_core__AbstractArrayRead__nitc__AType, /* AbstractArrayRead[E]: AbstractArrayRead[AType] */
+}
+};
+/* runtime type ArrayReverseIterator[AType] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AType = {
+1658,
+"ArrayReverseIterator[AType]", /* class_name_string */
+201,
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AType,
+263,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5965,14 +6114,17 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1626, /* ArrayIterator[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1657, /* ArrayIterator[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5990,6 +6142,7 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6004,29 +6157,11 @@ const struct type type_core__NativeArray__core__Iterator__core__Object = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2013, /* ArrayIterator[Prod] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__Iterator__core__Object = {
-0, /* dummy */
-{
-&type_core__Iterator__core__Object, /* E: Iterator[Object] */
-&type_core__NativeArray__core__Iterator__core__Object, /* NativeArray[E]: NativeArray[Iterator[Object]] */
-}
-};
-/* runtime type ArrayIterator[Iterator[Object]] */
-const struct type type_core__array__ArrayIterator__core__Iterator__core__Object = {
--1, /*CAST DEAD*/
-"ArrayIterator[Iterator[Object]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__Iterator__core__Object,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6035,27 +6170,6 @@ const struct type type_core__array__ArrayIterator__core__Iterator__core__Object
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Iterator__core__Object = {
-0, /* dummy */
-{
-&type_core__Array__core__Iterator__core__Object, /* Array[E]: Array[Iterator[Object]] */
-&type_core__AbstractArrayRead__core__Iterator__core__Object, /* AbstractArrayRead[E]: AbstractArrayRead[Iterator[Object]] */
-}
-};
-/* runtime type ArrayReverseIterator[Iterator[Object]] */
-const struct type type_core__array__ArrayReverseIterator__core__Iterator__core__Object = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Iterator[Object]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Iterator__core__Object,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6064,26 +6178,6 @@ const struct type type_core__array__ArrayReverseIterator__core__Iterator__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Iterator__core__Object = {
-0, /* dummy */
-{
-&type_core__Array__core__Iterator__core__Object, /* Array[E]: Array[Iterator[Object]] */
-&type_core__AbstractArrayRead__core__Iterator__core__Object, /* AbstractArrayRead[E]: AbstractArrayRead[Iterator[Object]] */
-}
-};
-/* runtime type HashMapKeys[MClass, Set[MClass]] */
-const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__Set__nitc__MClass = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClass, Set[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Set__nitc__MClass,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6094,7 +6188,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2409, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6118,11 +6211,9 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__S
 -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 */
@@ -6149,14 +6240,17 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1627, /* ArrayReverseIterator[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1658, /* ArrayReverseIterator[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6174,6 +6268,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6188,6 +6283,8 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2014, /* ArrayReverseIterator[Prod] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6196,7 +6293,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6213,25 +6309,25 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__S
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Set__nitc__MClass = {
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AType = {
 0, /* dummy */
 {
-&type_core__HashMap__nitc__MClass__core__Set__nitc__MClass, /* HashMap[K, V]: HashMap[MClass, Set[MClass]] */
-&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
-&type_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MClass, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Set[MClass]] */
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
+&type_core__AbstractArrayRead__nitc__AType, /* AbstractArrayRead[E]: AbstractArrayRead[AType] */
 }
 };
-/* runtime type HashMapValues[MClass, Set[MClass]] */
-const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core__Set__nitc__MClass = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, Set[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type MapKeysIterator[MClass, AType] */
+const struct type type_core__MapKeysIterator__nitc__MClass__nitc__AType = {
+1659,
+"MapKeysIterator[MClass, AType]", /* class_name_string */
+53,
 0,
-&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Set__nitc__MClass,
-129,
+&resolution_table_core__MapKeysIterator__nitc__MClass__nitc__AType,
+90,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6266,7 +6362,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6283,9 +6378,11 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1659, /* MapKeysIterator[MClass, AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1720, /* MapKeysIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6318,6 +6415,26 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapIterator__nitc__MClass__nitc__AType, /* MapIterator[K, V]: MapIterator[MClass, AType] */
+}
+};
+/* runtime type Array[AExternCodeBlock] */
+const struct type type_core__Array__nitc__AExternCodeBlock = {
+1660,
+"Array[AExternCodeBlock]", /* class_name_string */
+477,
+0,
+&resolution_table_core__Array__nitc__AExternCodeBlock,
+510,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6326,7 +6443,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2493, /* Collection[Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6344,7 +6460,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6355,33 +6470,14 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Set__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MClass__core__Set__nitc__MClass, /* HashMap[K, V]: HashMap[MClass, Set[MClass]] */
-&type_core__Array__core__Set__nitc__MClass, /* Array[E]: Array[Set[MClass]] */
-&type_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MClass, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Set[MClass]] */
-}
-};
-/* runtime type HashMapIterator[MClass, Set[MClass]] */
-const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__core__Set__nitc__MClass = {
--1, /*CAST DEAD*/
-"HashMapIterator[MClass, Set[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Set__nitc__MClass,
-79,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
+2449, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6428,14 +6524,16 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2496, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
+2499, /* Collection[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6450,32 +6548,12 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2722, /* MapIterator[MClass, Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Set__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MClass__core__Set__nitc__MClass, /* HashMap[K, V]: HashMap[MClass, Set[MClass]] */
-}
-};
-/* runtime type HashMapNode[MClass, Set[MClass]] */
-const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass = {
-2023,
-"HashMapNode[MClass, Set[MClass]]", /* class_name_string */
-145,
-0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass,
-152,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6484,6 +6562,8 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1715, /* Array[nullable Object] */
+2210, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6529,7 +6609,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6544,16 +6623,18 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2820, /* nullable HashMapNode[MClass, Set[MClass]] */
 -1, /* empty */
+2593, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2599, /* AbstractArrayRead[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2603, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6571,6 +6652,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2621, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6585,6 +6667,13 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2636, /* AbstractArrayRead[Prod] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6604,7 +6693,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6619,33 +6707,12 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__S
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2023, /* HashMapNode[MClass, Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__Set__nitc__MClass, /* V: Set[MClass] */
-&type_nitc__MClass, /* K: MClass */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClass, Set[MClass]]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass = {
-2024,
-"NativeArray[nullable HashMapNode[MClass, Set[MClass]]]", /* class_name_string */
-219,
-0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6656,12 +6723,14 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2895, /* AbstractArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6709,10 +6778,13 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2943, /* AbstractArray[ANode] */
 -1, /* empty */
 -1, /* empty */
+2946, /* AbstractArray[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
+2949, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6745,6 +6817,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+226, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6757,7 +6830,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6791,6 +6863,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+254, /* Array[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6834,8 +6907,10 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1623, /* Array[ANode] */
 -1, /* empty */
 -1, /* empty */
+1660, /* Array[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6846,7 +6921,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6863,7 +6937,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2024, /* NativeArray[nullable HashMapNode[MClass, Set[MClass]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6872,24 +6945,39 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass = {
+const struct types resolution_table_core__Array__nitc__AExternCodeBlock = {
 0, /* dummy */
 {
-&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass, /* E: nullable HashMapNode[MClass, Set[MClass]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Set[MClass]]] */
+&type_nitc__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_core__Array__nitc__AExternCodeBlock, /* SELF: Array[AExternCodeBlock] */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__AbstractArray__nitc__AExternCodeBlock, /* AbstractArray[E]: AbstractArray[AExternCodeBlock] */
+&type_core__NativeArray__nitc__AExternCodeBlock, /* NativeArray[E]: NativeArray[AExternCodeBlock] */
+&type_nitc__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_nitc__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__AbstractArray__nitc__AExternCodeBlock, /* AbstractArray[E]: AbstractArray[AExternCodeBlock] */
+&type_core__array__ArrayIterator__nitc__AExternCodeBlock, /* ArrayIterator[E]: ArrayIterator[AExternCodeBlock] */
+&type_core__array__ArrayReverseIterator__nitc__AExternCodeBlock, /* ArrayReverseIterator[E]: ArrayReverseIterator[AExternCodeBlock] */
 }
 };
-/* runtime type NativeArray[Set[MVirtualTypeProp]] */
-const struct type type_core__NativeArray__core__Set__nitc__MVirtualTypeProp = {
-2025,
-"NativeArray[Set[MVirtualTypeProp]]", /* class_name_string */
-98,
+/* runtime type NativeArray[AExternCodeBlock] */
+const struct type type_core__NativeArray__nitc__AExternCodeBlock = {
+1661,
+"NativeArray[AExternCodeBlock]", /* class_name_string */
+92,
 0,
-&resolution_table_core__NativeArray__core__Set__nitc__MVirtualTypeProp,
-226,
+&resolution_table_core__NativeArray__nitc__AExternCodeBlock,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6921,13 +7009,14 @@ const struct type type_core__NativeArray__core__Set__nitc__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2012, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6975,19 +7064,20 @@ const struct type type_core__NativeArray__core__Set__nitc__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1964, /* NativeArray[Set[MProperty]] */
+1625, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
+1661, /* NativeArray[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2025, /* NativeArray[Set[MVirtualTypeProp]] */
-2043, /* NativeArray[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7001,7 +7091,6 @@ const struct type type_core__NativeArray__core__Set__nitc__MVirtualTypeProp = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7116,25 +7205,42 @@ const struct type type_core__NativeArray__core__Set__nitc__MVirtualTypeProp = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__NativeArray__core__Set__nitc__MVirtualTypeProp = {
+const struct types resolution_table_core__NativeArray__nitc__AExternCodeBlock = {
 0, /* dummy */
 {
-&type_core__Set__nitc__MVirtualTypeProp, /* E: Set[MVirtualTypeProp] */
-&type_core__NativeArray__core__Set__nitc__MVirtualTypeProp, /* NativeArray[E]: NativeArray[Set[MVirtualTypeProp]] */
+&type_nitc__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_core__NativeArray__nitc__AExternCodeBlock, /* NativeArray[E]: NativeArray[AExternCodeBlock] */
 }
 };
-/* runtime type ArrayIterator[Set[MVirtualTypeProp]] */
-const struct type type_core__array__ArrayIterator__core__Set__nitc__MVirtualTypeProp = {
--1, /*CAST DEAD*/
-"ArrayIterator[Set[MVirtualTypeProp]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ArrayIterator[AExternCodeBlock] */
+const struct type type_core__array__ArrayIterator__nitc__AExternCodeBlock = {
+1662,
+"ArrayIterator[AExternCodeBlock]", /* class_name_string */
+76,
 0,
-&resolution_table_core__array__ArrayIterator__core__Set__nitc__MVirtualTypeProp,
-11,
+&resolution_table_core__array__ArrayIterator__nitc__AExternCodeBlock,
+137,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[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 */
@@ -7143,27 +7249,6 @@ const struct type type_core__array__ArrayIterator__core__Set__nitc__MVirtualType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Set__nitc__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MVirtualTypeProp, /* Array[E]: Array[Set[MVirtualTypeProp]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MVirtualTypeProp, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MVirtualTypeProp]] */
-}
-};
-/* runtime type ArrayReverseIterator[Set[MVirtualTypeProp]] */
-const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MVirtualTypeProp = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Set[MVirtualTypeProp]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MVirtualTypeProp,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7172,56 +7257,13 @@ const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__MVirt
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__MVirtualTypeProp = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MVirtualTypeProp, /* Array[E]: Array[Set[MVirtualTypeProp]] */
-&type_core__AbstractArrayRead__core__Set__nitc__MVirtualTypeProp, /* AbstractArrayRead[E]: AbstractArrayRead[Set[MVirtualTypeProp]] */
-}
-};
-/* runtime type MapKeysIterator[MVirtualTypeProp, Int] */
-const struct type type_core__MapKeysIterator__nitc__MVirtualTypeProp__core__Int = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MVirtualTypeProp, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MVirtualTypeProp__core__Int,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-2829, /* Iterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__MVirtualTypeProp__core__Int = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
-&type_core__MapIterator__nitc__MVirtualTypeProp__core__Int, /* MapIterator[K, V]: MapIterator[MVirtualTypeProp, Int] */
-}
-};
-/* runtime type MapValuesIterator[MVirtualTypeProp, Int] */
-const struct type type_core__MapValuesIterator__nitc__MVirtualTypeProp__core__Int = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MVirtualTypeProp, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MVirtualTypeProp__core__Int,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7230,55 +7272,13 @@ const struct type type_core__MapValuesIterator__nitc__MVirtualTypeProp__core__In
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MVirtualTypeProp__core__Int = {
-0, /* dummy */
-{
-&type_core__Array__core__Int, /* Array[E]: Array[Int] */
-&type_core__MapIterator__nitc__MVirtualTypeProp__core__Int, /* MapIterator[K, V]: MapIterator[MVirtualTypeProp, Int] */
-}
-};
-/* runtime type MapKeysIterator[MType, POSetElement[MType]] */
-const struct type type_core__MapKeysIterator__nitc__MType__poset__POSetElement__nitc__MType = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MType, POSetElement[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MType__poset__POSetElement__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2831, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__MType__poset__POSetElement__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
-&type_core__MapIterator__nitc__MType__poset__POSetElement__nitc__MType, /* MapIterator[K, V]: MapIterator[MType, POSetElement[MType]] */
-}
-};
-/* runtime type Array[POSetElement[MType]] */
-const struct type type_core__Array__poset__POSetElement__nitc__MType = {
-2031,
-"Array[POSetElement[MType]]", /* class_name_string */
-497,
-0,
-&resolution_table_core__Array__poset__POSetElement__nitc__MType,
-510,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7291,14 +7291,17 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1626, /* ArrayIterator[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1662, /* ArrayIterator[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7313,10 +7316,10 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7331,6 +7334,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2013, /* ArrayIterator[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7354,6 +7358,27 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__AExternCodeBlock = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__AbstractArrayRead__nitc__AExternCodeBlock, /* AbstractArrayRead[E]: AbstractArrayRead[AExternCodeBlock] */
+}
+};
+/* runtime type ArrayReverseIterator[AExternCodeBlock] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AExternCodeBlock = {
+1663,
+"ArrayReverseIterator[AExternCodeBlock]", /* class_name_string */
+202,
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AExternCodeBlock,
+263,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7391,8 +7416,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
-2512, /* Collection[POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7406,8 +7429,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7425,14 +7446,17 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1626, /* ArrayIterator[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1662, /* ArrayIterator[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7440,7 +7464,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7451,6 +7474,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7465,6 +7489,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2013, /* ArrayIterator[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7520,8 +7545,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
-2638, /* AbstractArrayRead[POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7549,14 +7572,17 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1627, /* ArrayReverseIterator[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1663, /* ArrayReverseIterator[AExternCodeBlock] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7566,7 +7592,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7575,6 +7600,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7589,6 +7615,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2014, /* ArrayReverseIterator[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7612,6 +7639,27 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AExternCodeBlock = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__AbstractArrayRead__nitc__AExternCodeBlock, /* AbstractArrayRead[E]: AbstractArrayRead[AExternCodeBlock] */
+}
+};
+/* runtime type CircularArrayIterator[ANode] */
+const struct type type_core__circular_array__CircularArrayIterator__nitc__ANode = {
+1664,
+"CircularArrayIterator[ANode]", /* class_name_string */
+11,
+0,
+&resolution_table_core__circular_array__CircularArrayIterator__nitc__ANode,
+12,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7620,6 +7668,28 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1664, /* CircularArrayIterator[ANode] */
+},
+};
+const struct types resolution_table_core__circular_array__CircularArrayIterator__nitc__ANode = {
+0, /* dummy */
+{
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__CircularArray__nitc__ANode, /* CircularArray[E]: CircularArray[ANode] */
+}
+};
+/* runtime type HashSetIterator[ANode] */
+const struct type type_core__hash_collection__HashSetIterator__nitc__ANode = {
+1665,
+"HashSetIterator[ANode]", /* class_name_string */
+24,
+0,
+&resolution_table_core__hash_collection__HashSetIterator__nitc__ANode,
+34,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7640,17 +7710,37 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1565, /* HashSetIterator[Object] */
+1665, /* HashSetIterator[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
-2962, /* AbstractArray[POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashSetIterator__nitc__ANode = {
+0, /* dummy */
+{
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__HashSet__nitc__ANode, /* HashSet[E]: HashSet[ANode] */
+}
+};
+/* runtime type HashSetNode[ANode] */
+const struct type type_core__hash_collection__HashSetNode__nitc__ANode = {
+1666,
+"HashSetNode[ANode]", /* class_name_string */
+36,
+0,
+&resolution_table_core__hash_collection__HashSetNode__nitc__ANode,
+48,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7661,9 +7751,10 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
+2786, /* nullable HashSetNode[Object] */
+2794, /* nullable HashSetNode[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7683,6 +7774,8 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1566, /* HashSetNode[Object] */
+1666, /* HashSetNode[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7694,6 +7787,26 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashSetNode__nitc__ANode = {
+0, /* dummy */
+{
+NULL, /* empty */
+&type_nitc__ANode, /* K: ANode */
+}
+};
+/* runtime type NativeArray[nullable HashSetNode[ANode]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode = {
+1667,
+"NativeArray[nullable HashSetNode[ANode]]", /* class_name_string */
+183,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7774,7 +7887,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2031, /* Array[POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7787,41 +7899,8 @@ const struct type type_core__Array__poset__POSetElement__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__poset__POSetElement__nitc__MType = {
-0, /* dummy */
-{
-&type_poset__POSetElement__nitc__MType, /* E: POSetElement[MType] */
-&type_core__Array__poset__POSetElement__nitc__MType, /* Array[E]: Array[POSetElement[MType]] */
-&type_core__Collection__poset__POSetElement__nitc__MType, /* Collection[E]: Collection[POSetElement[MType]] */
-&type_core__Array__poset__POSetElement__nitc__MType, /* Array[E]: Array[POSetElement[MType]] */
-&type_core__AbstractArray__poset__POSetElement__nitc__MType, /* AbstractArray[E]: AbstractArray[POSetElement[MType]] */
-&type_core__NativeArray__poset__POSetElement__nitc__MType, /* NativeArray[E]: NativeArray[POSetElement[MType]] */
-&type_poset__POSetElement__nitc__MType, /* E: POSetElement[MType] */
-&type_core__Collection__poset__POSetElement__nitc__MType, /* Collection[E]: Collection[POSetElement[MType]] */
-&type_poset__POSetElement__nitc__MType, /* E: POSetElement[MType] */
-&type_core__Collection__poset__POSetElement__nitc__MType, /* Collection[E]: Collection[POSetElement[MType]] */
-&type_core__Collection__poset__POSetElement__nitc__MType, /* Collection[E]: Collection[POSetElement[MType]] */
-&type_core__Array__poset__POSetElement__nitc__MType, /* Array[E]: Array[POSetElement[MType]] */
-&type_core__AbstractArray__poset__POSetElement__nitc__MType, /* AbstractArray[E]: AbstractArray[POSetElement[MType]] */
-&type_core__array__ArrayIterator__poset__POSetElement__nitc__MType, /* ArrayIterator[E]: ArrayIterator[POSetElement[MType]] */
-&type_core__array__ArrayReverseIterator__poset__POSetElement__nitc__MType, /* ArrayReverseIterator[E]: ArrayReverseIterator[POSetElement[MType]] */
-}
-};
-/* runtime type MapValuesIterator[MType, POSetElement[MType]] */
-const struct type type_core__MapValuesIterator__nitc__MType__poset__POSetElement__nitc__MType = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MType, POSetElement[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MType__poset__POSetElement__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7829,26 +7908,6 @@ const struct type type_core__MapValuesIterator__nitc__MType__poset__POSetElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MType__poset__POSetElement__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__poset__POSetElement__nitc__MType, /* Array[E]: Array[POSetElement[MType]] */
-&type_core__MapIterator__nitc__MType__poset__POSetElement__nitc__MType, /* MapIterator[K, V]: MapIterator[MType, POSetElement[MType]] */
-}
-};
-/* runtime type HashMapKeys[MModule, HashMap[MType, Array[MMethodDef]]] */
-const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"HashMapKeys[MModule, HashMap[MType, Array[MMethodDef]]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapKeys__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7858,7 +7917,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2408, /* Collection[MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7883,7 +7941,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7923,6 +7980,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1567, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7930,9 +7988,9 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1667, /* NativeArray[nullable HashSetNode[ANode]] */
 -1, /* empty */
 -1, /* empty */
-2482, /* Collection[nullable MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7961,7 +8019,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7978,25 +8035,24 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode = {
 0, /* dummy */
 {
-&type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMap[K, V]: HashMap[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_core__Array__nitc__MModule, /* Array[E]: Array[MModule] */
-&type_core__MapKeysIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* MapKeysIterator[K, V]: MapKeysIterator[MModule, HashMap[MType, Array[MMethodDef]]] */
+&type_nullable__core__hash_collection__HashSetNode__nitc__ANode, /* E: nullable HashSetNode[ANode] */
+&type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode, /* NativeArray[E]: NativeArray[nullable HashSetNode[ANode]] */
 }
 };
-/* runtime type HashMapValues[MModule, HashMap[MType, Array[MMethodDef]]] */
-const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"HashMapValues[MModule, HashMap[MType, Array[MMethodDef]]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[MType] */
+const struct type type_core__NativeArray__nitc__MType = {
+1668,
+"NativeArray[MType]", /* class_name_string */
+26,
 0,
-&resolution_table_core__hash_collection__HashMapValues__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef,
-129,
+&resolution_table_core__NativeArray__nitc__MType,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8021,6 +8077,7 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1668, /* NativeArray[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8028,10 +8085,10 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8039,6 +8096,7 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2084, /* NativeArray[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8088,6 +8146,9 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8109,7 +8170,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8118,33 +8178,11 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2520, /* Collection[HashMap[MType, Array[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMap[K, V]: HashMap[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_core__Array__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* Array[E]: Array[HashMap[MType, Array[MMethodDef]]] */
-&type_core__MapValuesIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* MapValuesIterator[K, V]: MapValuesIterator[MModule, HashMap[MType, Array[MMethodDef]]] */
-}
-};
-/* runtime type HashMapIterator[MModule, HashMap[MType, Array[MMethodDef]]] */
-const struct type type_core__hash_collection__HashMapIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"HashMapIterator[MModule, HashMap[MType, Array[MMethodDef]]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef,
-79,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8200,7 +8238,6 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MModule__co
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8216,31 +8253,11 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MModule__co
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2723, /* MapIterator[MModule, HashMap[MType, Array[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMap[K, V]: HashMap[MModule, HashMap[MType, Array[MMethodDef]]] */
-}
-};
-/* runtime type HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
-const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
-2036,
-"HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]]", /* class_name_string */
-146,
-0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef,
-152,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8262,10 +8279,32 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__MType = {
+0, /* dummy */
+{
+&type_nitc__MType, /* E: MType */
+&type_core__NativeArray__nitc__MType, /* NativeArray[E]: NativeArray[MType] */
+}
+};
+/* runtime type ArrayIterator[MType] */
+const struct type type_core__array__ArrayIterator__nitc__MType = {
+1669,
+"ArrayIterator[MType]", /* class_name_string */
+77,
+0,
+&resolution_table_core__array__ArrayIterator__nitc__MType,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2843, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8294,7 +8333,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8310,7 +8348,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2821, /* nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8337,8 +8374,10 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1669, /* ArrayIterator[MType] */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8356,6 +8395,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8369,7 +8409,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8379,13 +8418,17 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2085, /* ArrayIterator[nullable MType] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2036, /* HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8393,46 +8436,30 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
+const struct types resolution_table_core__array__ArrayIterator__nitc__MType = {
 0, /* dummy */
 {
-&type_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* V: HashMap[MType, Array[MMethodDef]] */
-&type_nitc__MModule, /* K: MModule */
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__AbstractArrayRead__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[MType] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
-2037,
-"NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]]]", /* class_name_string */
-220,
+/* runtime type ArrayReverseIterator[MType] */
+const struct type type_core__array__ArrayReverseIterator__nitc__MType = {
+1670,
+"ArrayReverseIterator[MType]", /* class_name_string */
+203,
 0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef,
-226,
+&resolution_table_core__array__ArrayReverseIterator__nitc__MType,
+263,
 {
-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 */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2843, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8502,8 +8529,10 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1669, /* ArrayIterator[MType] */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8521,8 +8550,8 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8544,6 +8573,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2085, /* ArrayIterator[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8611,7 +8641,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8626,35 +8655,16 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1670, /* ArrayReverseIterator[MType] */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
-2037, /* NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* E: nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* NativeArray[E]: NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]]] */
-}
-};
-/* runtime type HashMapKeys[MType, Array[MMethodDef]] */
-const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"HashMapKeys[MType, Array[MMethodDef]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nitc__MMethodDef,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8666,6 +8676,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8681,7 +8692,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2425, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8689,7 +8699,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
+2086, /* ArrayReverseIterator[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8700,12 +8710,31 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2444, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__AbstractArrayRead__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[MType] */
+}
+};
+/* runtime type HashMapKeys[MModule, Set[MClassDef]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__Set__nitc__MClassDef = {
+1671,
+"HashMapKeys[MModule, Set[MClassDef]]", /* class_name_string */
+170,
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MModule__core__Set__nitc__MClassDef,
+205,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8715,6 +8744,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2416, /* Collection[MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8740,6 +8770,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8767,12 +8798,12 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2475, /* Collection[nullable MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8782,27 +8813,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMap[K, V]: HashMap[MType, Array[MMethodDef]] */
-&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
-&type_core__MapKeysIterator__nitc__MType__core__Array__nitc__MMethodDef, /* MapKeysIterator[K, V]: MapKeysIterator[MType, Array[MMethodDef]] */
-}
-};
-/* runtime type HashMapValues[MType, Array[MMethodDef]] */
-const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__Array__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"HashMapValues[MType, Array[MMethodDef]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapValues__nitc__MType__core__Array__nitc__MMethodDef,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8820,6 +8830,7 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8837,7 +8848,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8893,9 +8903,10 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1671, /* HashMapKeys[MModule, Set[MClassDef]] */
 -1, /* empty */
-2490, /* Collection[Array[nullable MPropDef]] */
 -1, /* empty */
+1710, /* HashMapKeys[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8914,8 +8925,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2510, /* Collection[Array[Object]] */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8925,33 +8934,40 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2521, /* Collection[Array[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MType__core__Array__nitc__MMethodDef = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MModule__core__Set__nitc__MClassDef = {
 0, /* dummy */
 {
-&type_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMap[K, V]: HashMap[MType, Array[MMethodDef]] */
-&type_core__Array__core__Array__nitc__MMethodDef, /* Array[E]: Array[Array[MMethodDef]] */
-&type_core__MapValuesIterator__nitc__MType__core__Array__nitc__MMethodDef, /* MapValuesIterator[K, V]: MapValuesIterator[MType, Array[MMethodDef]] */
+&type_core__HashMap__nitc__MModule__core__Set__nitc__MClassDef, /* HashMap[K, V]: HashMap[MModule, Set[MClassDef]] */
+&type_core__MapKeysIterator__nitc__MModule__core__Set__nitc__MClassDef, /* MapKeysIterator[K, V]: MapKeysIterator[MModule, Set[MClassDef]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__MModule, /* Array[E]: Array[MModule] */
 }
 };
-/* runtime type HashMapIterator[MType, Array[MMethodDef]] */
-const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nitc__MMethodDef = {
--1, /*CAST DEAD*/
-"HashMapIterator[MType, Array[MMethodDef]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashMapValues[MModule, Set[MClassDef]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MModule__core__Set__nitc__MClassDef = {
+1672,
+"HashMapValues[MModule, Set[MClassDef]]", /* class_name_string */
+170,
 0,
-&resolution_table_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nitc__MMethodDef,
-79,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MModule__core__Set__nitc__MClassDef,
+205,
 {
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8987,6 +9003,7 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9005,13 +9022,12 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2706, /* MapIterator[Object, Array[Object]] */
-2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2466, /* Collection[Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9023,31 +9039,10 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2724, /* MapIterator[MType, Array[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMap[K, V]: HashMap[MType, Array[MMethodDef]] */
-}
-};
-/* runtime type HashMapNode[MType, Array[MMethodDef]] */
-const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef = {
-2041,
-"HashMapNode[MType, Array[MMethodDef]]", /* class_name_string */
-147,
-0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef,
-152,
-{
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9068,6 +9063,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9099,8 +9095,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2802, /* nullable HashMapNode[Object, Array[Object]] */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9117,7 +9111,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2822, /* nullable HashMapNode[MType, Array[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9143,8 +9136,10 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1672, /* HashMapValues[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
+1711, /* HashMapValues[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9174,10 +9169,38 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1751, /* HashMapNode[Object, Array[Object]] */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MModule__core__Set__nitc__MClassDef = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MModule__core__Set__nitc__MClassDef, /* HashMap[K, V]: HashMap[MModule, Set[MClassDef]] */
+&type_core__MapValuesIterator__nitc__MModule__core__Set__nitc__MClassDef, /* MapValuesIterator[K, V]: MapValuesIterator[MModule, Set[MClassDef]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__core__Set__nitc__MClassDef, /* Array[E]: Array[Set[MClassDef]] */
+}
+};
+/* runtime type HashMapIterator[MModule, Set[MClassDef]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MModule__core__Set__nitc__MClassDef = {
+1673,
+"HashMapIterator[MModule, Set[MClassDef]]", /* class_name_string */
+123,
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MModule__core__Set__nitc__MClassDef,
+158,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9192,31 +9215,10 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Ar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2041, /* HashMapNode[MType, Array[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MMethodDef, /* V: Array[MMethodDef] */
-&type_nitc__MType, /* K: MType */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MType, Array[MMethodDef]]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef = {
-2042,
-"NativeArray[nullable HashMapNode[MType, Array[MMethodDef]]]", /* class_name_string */
-221,
-0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9242,8 +9244,10 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2703, /* MapIterator[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
+2706, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9318,8 +9322,10 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1673, /* HashMapIterator[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
+1712, /* HashMapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9328,7 +9334,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9352,6 +9357,25 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MModule__core__Set__nitc__MClassDef = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MModule__core__Set__nitc__MClassDef, /* HashMap[K, V]: HashMap[MModule, Set[MClassDef]] */
+}
+};
+/* runtime type NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef = {
+1674,
+"NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]]", /* class_name_string */
+184,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9416,8 +9440,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1752, /* NativeArray[nullable HashMapNode[Object, Array[Object]]] */
-1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9436,31 +9458,10 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2042, /* NativeArray[nullable HashMapNode[MType, Array[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef = {
-0, /* dummy */
-{
-&type_nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef, /* E: nullable HashMapNode[MType, Array[MMethodDef]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, Array[MMethodDef]]] */
-}
-};
-/* runtime type NativeArray[Set[PropertyLayoutElement]] */
-const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement = {
-2043,
-"NativeArray[Set[PropertyLayoutElement]]", /* class_name_string */
-99,
-0,
-&resolution_table_core__NativeArray__core__Set__nitc__PropertyLayoutElement,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9468,6 +9469,7 @@ const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9492,7 +9494,6 @@ const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9557,10 +9558,11 @@ const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1674, /* NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]] */
 -1, /* empty */
-2043, /* NativeArray[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
+1713, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9572,7 +9574,6 @@ const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9601,6 +9602,26 @@ const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef, /* E: nullable HashMapNode[MModule, Set[MClassDef]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef, /* NativeArray[E]: NativeArray[nullable HashMapNode[MModule, Set[MClassDef]]] */
+}
+};
+/* runtime type HashMapNode[MModule, Set[MClassDef]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef = {
+1675,
+"HashMapNode[MModule, Set[MClassDef]]", /* class_name_string */
+106,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef,
+156,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9643,8 +9664,10 @@ const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2795, /* nullable HashMapNode[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
+2799, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9685,27 +9708,6 @@ const struct type type_core__NativeArray__core__Set__nitc__PropertyLayoutElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__Set__nitc__PropertyLayoutElement = {
-0, /* dummy */
-{
-&type_core__Set__nitc__PropertyLayoutElement, /* E: Set[PropertyLayoutElement] */
-&type_core__NativeArray__core__Set__nitc__PropertyLayoutElement, /* NativeArray[E]: NativeArray[Set[PropertyLayoutElement]] */
-}
-};
-/* runtime type ArrayIterator[Set[PropertyLayoutElement]] */
-const struct type type_core__array__ArrayIterator__core__Set__nitc__PropertyLayoutElement = {
--1, /*CAST DEAD*/
-"ArrayIterator[Set[PropertyLayoutElement]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__Set__nitc__PropertyLayoutElement,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9714,27 +9716,6 @@ const struct type type_core__array__ArrayIterator__core__Set__nitc__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Set__nitc__PropertyLayoutElement = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
-&type_core__AbstractArrayRead__core__Set__nitc__PropertyLayoutElement, /* AbstractArrayRead[E]: AbstractArrayRead[Set[PropertyLayoutElement]] */
-}
-};
-/* runtime type ArrayReverseIterator[Set[PropertyLayoutElement]] */
-const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__PropertyLayoutElement = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Set[PropertyLayoutElement]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__PropertyLayoutElement,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9743,28 +9724,9 @@ const struct type type_core__array__ArrayReverseIterator__core__Set__nitc__Prope
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Set__nitc__PropertyLayoutElement = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
-&type_core__AbstractArrayRead__core__Set__nitc__PropertyLayoutElement, /* AbstractArrayRead[E]: AbstractArrayRead[Set[PropertyLayoutElement]] */
-}
-};
-/* runtime type NativeArray[Set[MAttribute]] */
-const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
-2046,
-"NativeArray[Set[MAttribute]]", /* class_name_string */
-100,
-0,
-&resolution_table_core__NativeArray__core__Set__nitc__MAttribute,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
+1675, /* HashMapNode[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9794,12 +9756,12 @@ const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1714, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9814,6 +9776,27 @@ const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MModule__core__Set__nitc__MClassDef = {
+0, /* dummy */
+{
+&type_core__Set__nitc__MClassDef, /* V: Set[MClassDef] */
+&type_nitc__MModule, /* K: MModule */
+}
+};
+/* runtime type MapValuesIterator[MModule, Set[MClassDef]] */
+const struct type type_core__MapValuesIterator__nitc__MModule__core__Set__nitc__MClassDef = {
+1676,
+"MapValuesIterator[MModule, Set[MClassDef]]", /* class_name_string */
+54,
+0,
+&resolution_table_core__MapValuesIterator__nitc__MModule__core__Set__nitc__MClassDef,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9848,7 +9831,6 @@ const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1964, /* NativeArray[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9860,21 +9842,20 @@ const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2043, /* NativeArray[Set[PropertyLayoutElement]] */
-2046, /* NativeArray[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1676, /* MapValuesIterator[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
+1716, /* MapValuesIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9903,6 +9884,28 @@ const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__MModule__core__Set__nitc__MClassDef = {
+0, /* dummy */
+{
+&type_core__Array__core__Set__nitc__MClassDef, /* Array[E]: Array[Set[MClassDef]] */
+&type_core__MapIterator__nitc__MModule__core__Set__nitc__MClassDef, /* MapIterator[K, V]: MapIterator[MModule, Set[MClassDef]] */
+}
+};
+/* runtime type MapKeysIterator[MModule, Set[MClassDef]] */
+const struct type type_core__MapKeysIterator__nitc__MModule__core__Set__nitc__MClassDef = {
+1677,
+"MapKeysIterator[MModule, Set[MClassDef]]", /* class_name_string */
+54,
+0,
+&resolution_table_core__MapKeysIterator__nitc__MModule__core__Set__nitc__MClassDef,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
+2839, /* Iterator[MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9953,8 +9956,10 @@ const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1677, /* MapKeysIterator[MModule, Set[MClassDef]] */
 -1, /* empty */
 -1, /* empty */
+1720, /* MapKeysIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9989,10 +9994,3 @@ const struct type type_core__NativeArray__core__Set__nitc__MAttribute = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__NativeArray__core__Set__nitc__MAttribute = {
-0, /* dummy */
-{
-&type_core__Set__nitc__MAttribute, /* E: Set[MAttribute] */
-&type_core__NativeArray__core__Set__nitc__MAttribute, /* NativeArray[E]: NativeArray[Set[MAttribute]] */
-}
-};