Merge: doc: fixed some typos and other misc. corrections
[nit.git] / c_src / nitc__nith.types.18.c
index 268ff70..4c4b048 100644 (file)
@@ -1,30 +1,15 @@
 #include "nitc__nith.types.0.h"
-/* runtime type HashMapNode[MAttribute, Int] */
-const struct type type_core__hash_collection__HashMapNode__nitc__MAttribute__core__Int = {
-1821,
-"HashMapNode[MAttribute, Int]", /* class_name_string */
-135,
+/* runtime type Array[HashMap[MProperty, Set[MMethodDef]]] */
+const struct type type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+1534,
+"Array[HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
+469,
 0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__MAttribute__core__Int,
-152,
+&resolution_table_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
+510,
 {
-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 */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -60,15 +45,13 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MAttribute__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-2806, /* nullable HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
-2808, /* nullable HashMapNode[MAttribute, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -111,6 +94,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MAttribute__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2491, /* Collection[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -121,6 +105,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MAttribute__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -138,12 +123,9 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MAttribute__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-1808, /* HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
-1821, /* HashMapNode[MAttribute, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -155,33 +137,8 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MAttribute__cor
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MAttribute__core__Int = {
-0, /* dummy */
-{
-&type_core__Int, /* V: Int */
-&type_nitc__MAttribute, /* K: MAttribute */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MAttribute, Int]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MAttribute__core__Int = {
-1822,
-"NativeArray[nullable HashMapNode[MAttribute, Int]]", /* class_name_string */
-207,
-0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MAttribute__core__Int,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
--1, /* empty */
+1715, /* Array[nullable Object] */
+2210, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -235,6 +192,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2586, /* AbstractArrayRead[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -251,6 +209,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2603, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -268,6 +227,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2621, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -291,7 +251,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 */
@@ -339,6 +298,7 @@ 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 */
@@ -380,17 +340,15 @@ 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 */
-1809, /* NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
 -1, /* empty */
-1822, /* NativeArray[nullable HashMapNode[MAttribute, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2938, /* AbstractArray[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -401,29 +359,10 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2949, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MAttribute__core__Int = {
-0, /* dummy */
-{
-&type_nullable__core__hash_collection__HashMapNode__nitc__MAttribute__core__Int, /* E: nullable HashMapNode[MAttribute, Int] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MAttribute__core__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MAttribute, Int]] */
-}
-};
-/* runtime type NativeArray[nullable MAttribute] */
-const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
-1823,
-"NativeArray[nullable MAttribute]", /* class_name_string */
-69,
-0,
-&resolution_table_core__NativeArray__nullable__nitc__MAttribute,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -453,6 +392,7 @@ const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+226, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -490,8 +430,6 @@ const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1815, /* NativeArray[nullable PropertyLayoutElement] */
-1823, /* NativeArray[nullable MAttribute] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -535,14 +473,13 @@ const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1534, /* Array[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
-2177, /* NativeArray[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -581,6 +518,41 @@ const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
 -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, /* SELF: 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__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 = {
+1535,
+"MapValuesIterator[MType, HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
+43,
+0,
+&resolution_table_core__MapValuesIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -621,6 +593,7 @@ const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1535, /* MapValuesIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -634,6 +607,7 @@ const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1716, /* MapValuesIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -648,26 +622,6 @@ const struct type type_core__NativeArray__nullable__nitc__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nullable__nitc__MAttribute = {
-0, /* dummy */
-{
-&type_nullable__nitc__MAttribute, /* E: nullable MAttribute */
-&type_core__NativeArray__nullable__nitc__MAttribute, /* NativeArray[E]: NativeArray[nullable MAttribute] */
-}
-};
-/* runtime type ArrayIterator[nullable MAttribute] */
-const struct type type_core__array__ArrayIterator__nullable__nitc__MAttribute = {
--1, /*CAST DEAD*/
-"ArrayIterator[nullable MAttribute]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nullable__nitc__MAttribute,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -677,26 +631,6 @@ const struct type type_core__array__ArrayIterator__nullable__nitc__MAttribute =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__nullable__nitc__MAttribute = {
-0, /* dummy */
-{
-&type_core__Array__nullable__nitc__MAttribute, /* Array[E]: Array[nullable MAttribute] */
-&type_core__AbstractArrayRead__nullable__nitc__MAttribute, /* AbstractArrayRead[E]: AbstractArrayRead[nullable MAttribute] */
-}
-};
-/* runtime type ArrayReverseIterator[nullable MAttribute] */
-const struct type type_core__array__ArrayReverseIterator__nullable__nitc__MAttribute = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[nullable MAttribute]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nullable__nitc__MAttribute,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -708,35 +642,29 @@ const struct type type_core__array__ArrayReverseIterator__nullable__nitc__MAttri
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayReverseIterator__nullable__nitc__MAttribute = {
+const struct types resolution_table_core__MapValuesIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
 0, /* dummy */
 {
-&type_core__Array__nullable__nitc__MAttribute, /* Array[E]: Array[nullable MAttribute] */
-&type_core__AbstractArrayRead__nullable__nitc__MAttribute, /* AbstractArrayRead[E]: AbstractArrayRead[nullable MAttribute] */
+&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]]] */
 }
 };
-/* runtime type HashMapKeys[MClass, POSetElement[MClass]] */
-const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__poset__POSetElement__nitc__MClass = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClass, POSetElement[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[HashMap[MProperty, Set[MMethodDef]]] */
+const struct type type_core__NativeArray__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+1536,
+"NativeArray[HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
+84,
 0,
-&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__poset__POSetElement__nitc__MClass,
-129,
+&resolution_table_core__NativeArray__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2409, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -760,12 +688,11 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2437, /* Collection[nullable MClass] */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -815,6 +742,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1536, /* NativeArray[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -825,6 +753,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -838,7 +767,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -853,27 +781,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__poset__POSetElement__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MClass__poset__POSetElement__nitc__MClass, /* HashMap[K, V]: HashMap[MClass, POSetElement[MClass]] */
-&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
-&type_core__MapKeysIterator__nitc__MClass__poset__POSetElement__nitc__MClass, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, POSetElement[MClass]] */
-}
-};
-/* runtime type HashMapValues[MClass, POSetElement[MClass]] */
-const struct type type_core__hash_collection__HashMapValues__nitc__MClass__poset__POSetElement__nitc__MClass = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, POSetElement[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__poset__POSetElement__nitc__MClass,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -908,7 +815,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -980,16 +886,35 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__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__NativeArray__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* NativeArray[E]: NativeArray[HashMap[MProperty, Set[MMethodDef]]] */
+}
+};
+/* runtime type ArrayIterator[HashMap[MProperty, Set[MMethodDef]]] */
+const struct type type_core__array__ArrayIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+1537,
+"ArrayIterator[HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
+63,
+0,
+&resolution_table_core__array__ArrayIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
-2514, /* Collection[POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1001,27 +926,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MClass__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__poset__POSetElement__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MClass__poset__POSetElement__nitc__MClass, /* HashMap[K, V]: HashMap[MClass, POSetElement[MClass]] */
-&type_core__Array__poset__POSetElement__nitc__MClass, /* Array[E]: Array[POSetElement[MClass]] */
-&type_core__MapValuesIterator__nitc__MClass__poset__POSetElement__nitc__MClass, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, POSetElement[MClass]] */
-}
-};
-/* runtime type HashMapIterator[MClass, POSetElement[MClass]] */
-const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__poset__POSetElement__nitc__MClass = {
--1, /*CAST DEAD*/
-"HashMapIterator[MClass, POSetElement[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__poset__POSetElement__nitc__MClass,
-79,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1063,6 +967,7 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__pos
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1537, /* ArrayIterator[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1077,13 +982,12 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__pos
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2713, /* MapIterator[MClass, POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1098,26 +1002,8 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__pos
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__poset__POSetElement__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MClass__poset__POSetElement__nitc__MClass, /* HashMap[K, V]: HashMap[MClass, POSetElement[MClass]] */
-}
-};
-/* runtime type HashMapNode[MClass, POSetElement[MClass]] */
-const struct type type_core__hash_collection__HashMapNode__nitc__MClass__poset__POSetElement__nitc__MClass = {
-1829,
-"HashMapNode[MClass, POSetElement[MClass]]", /* class_name_string */
-136,
-0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__poset__POSetElement__nitc__MClass,
-152,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1155,6 +1041,27 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+0, /* dummy */
+{
+&type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Array[E]: Array[HashMap[MProperty, Set[MMethodDef]]] */
+&type_core__AbstractArrayRead__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* AbstractArrayRead[E]: AbstractArrayRead[HashMap[MProperty, Set[MMethodDef]]] */
+}
+};
+/* runtime type ArrayReverseIterator[HashMap[MProperty, Set[MMethodDef]]] */
+const struct type type_core__array__ArrayReverseIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+1538,
+"ArrayReverseIterator[HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
+189,
+0,
+&resolution_table_core__array__ArrayReverseIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
+263,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1171,13 +1078,11 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2809, /* nullable HashMapNode[MClass, POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1217,6 +1122,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1537, /* ArrayIterator[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1233,6 +1139,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1246,13 +1153,12 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
-1829, /* HashMapNode[MClass, POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1268,26 +1174,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MClass__poset__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__poset__POSetElement__nitc__MClass = {
-0, /* dummy */
-{
-&type_poset__POSetElement__nitc__MClass, /* V: POSetElement[MClass] */
-&type_nitc__MClass, /* K: MClass */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__poset__POSetElement__nitc__MClass = {
-1830,
-"NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]]", /* class_name_string */
-208,
-0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__poset__POSetElement__nitc__MClass,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1362,6 +1248,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1538, /* ArrayReverseIterator[HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1378,6 +1265,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1395,11 +1283,11 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1434,10 +1322,32 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+0, /* dummy */
+{
+&type_core__Array__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* Array[E]: Array[HashMap[MProperty, Set[MMethodDef]]] */
+&type_core__AbstractArrayRead__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef, /* AbstractArrayRead[E]: AbstractArrayRead[HashMap[MProperty, Set[MMethodDef]]] */
+}
+};
+/* runtime type MapKeysIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
+const struct type type_core__MapKeysIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
+1539,
+"MapKeysIterator[MType, HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
+43,
+0,
+&resolution_table_core__MapKeysIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef,
+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 */
@@ -1473,6 +1383,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1539, /* MapKeysIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1486,15 +1397,14 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1720, /* MapKeysIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1830, /* NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1512,27 +1422,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__MClass__poset__POSetElement__nitc__MClass = {
-0, /* dummy */
-{
-&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__poset__POSetElement__nitc__MClass, /* E: nullable HashMapNode[MClass, POSetElement[MClass]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__poset__POSetElement__nitc__MClass, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]] */
-}
-};
-/* runtime type MapKeysIterator[MClass, Array[nullable MClass]] */
-const struct type type_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MClass = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, Array[nullable MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MClass,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1543,25 +1432,24 @@ const struct type type_core__MapKeysIterator__nitc__MClass__core__Array__nullabl
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MClass = {
+const struct types resolution_table_core__MapKeysIterator__nitc__MType__core__HashMap__nitc__MProperty__core__Set__nitc__MMethodDef = {
 0, /* dummy */
 {
-&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
-&type_core__MapIterator__nitc__MClass__core__Array__nullable__nitc__MClass, /* MapIterator[K, V]: MapIterator[MClass, Array[nullable MClass]] */
+&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[Array[nullable MClass]] */
-const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
-1832,
-"Array[Array[nullable MClass]]", /* class_name_string */
-485,
+/* runtime type NativeArray[MMethod] */
+const struct type type_core__NativeArray__nitc__MMethod = {
+1540,
+"NativeArray[MMethod]", /* class_name_string */
+21,
 0,
-&resolution_table_core__Array__core__Array__nullable__nitc__MClass,
-510,
+&resolution_table_core__NativeArray__nitc__MMethod,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1570,6 +1458,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1173, /* NativeArray[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1580,6 +1469,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1540, /* NativeArray[MMethod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1592,10 +1482,11 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
+1914, /* NativeArray[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1621,6 +1512,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1261, /* NativeArray[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1651,6 +1543,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1661,10 +1554,10 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2499, /* Collection[Array[nullable MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1930, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1673,7 +1566,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1688,8 +1580,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1722,7 +1612,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1787,25 +1676,30 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__MMethod = {
+0, /* dummy */
+{
+&type_nitc__MMethod, /* E: MMethod */
+&type_core__NativeArray__nitc__MMethod, /* NativeArray[E]: NativeArray[MMethod] */
+}
+};
+/* runtime type ArrayIterator[MMethod] */
+const struct type type_core__array__ArrayIterator__nitc__MMethod = {
+1541,
+"ArrayIterator[MMethod]", /* class_name_string */
+64,
+0,
+&resolution_table_core__array__ArrayIterator__nitc__MMethod,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
-2625, /* AbstractArrayRead[Array[nullable MClass]] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2841, /* Iterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1826,12 +1720,14 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1174, /* ArrayIterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1262, /* ArrayIterator[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1848,7 +1744,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1863,6 +1758,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1541, /* ArrayIterator[MMethod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1878,6 +1774,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1895,10 +1792,13 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1915, /* ArrayIterator[PropertyLayoutElement] */
 -1, /* empty */
+1931, /* ArrayIterator[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1916,7 +1816,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2949, /* AbstractArray[Array[nullable MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1928,13 +1827,34 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__MMethod = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MMethod, /* Array[E]: Array[MMethod] */
+&type_core__AbstractArrayRead__nitc__MMethod, /* AbstractArrayRead[E]: AbstractArrayRead[MMethod] */
+}
+};
+/* runtime type ArrayReverseIterator[MMethod] */
+const struct type type_core__array__ArrayReverseIterator__nitc__MMethod = {
+1542,
+"ArrayReverseIterator[MMethod]", /* class_name_string */
+190,
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__MMethod,
+263,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
+2841, /* Iterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1943,7 +1863,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1956,12 +1875,14 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1174, /* ArrayIterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1262, /* ArrayIterator[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1992,6 +1913,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1541, /* ArrayIterator[MMethod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2007,6 +1929,7 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2024,10 +1947,13 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1915, /* ArrayIterator[PropertyLayoutElement] */
 -1, /* empty */
+1931, /* ArrayIterator[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2044,7 +1970,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1832, /* Array[Array[nullable MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2069,40 +1994,6 @@ const struct type type_core__Array__core__Array__nullable__nitc__MClass = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__core__Array__nullable__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__Array__nullable__nitc__MClass, /* E: Array[nullable MClass] */
-&type_core__Array__core__Array__nullable__nitc__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_core__Collection__core__Array__nullable__nitc__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_core__Array__core__Array__nullable__nitc__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_core__AbstractArray__core__Array__nullable__nitc__MClass, /* AbstractArray[E]: AbstractArray[Array[nullable MClass]] */
-&type_core__NativeArray__core__Array__nullable__nitc__MClass, /* NativeArray[E]: NativeArray[Array[nullable MClass]] */
-&type_core__Array__nullable__nitc__MClass, /* E: Array[nullable MClass] */
-&type_core__Collection__core__Array__nullable__nitc__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_core__Array__nullable__nitc__MClass, /* E: Array[nullable MClass] */
-&type_core__Collection__core__Array__nullable__nitc__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_core__Collection__core__Array__nullable__nitc__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_core__Array__core__Array__nullable__nitc__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_core__AbstractArray__core__Array__nullable__nitc__MClass, /* AbstractArray[E]: AbstractArray[Array[nullable MClass]] */
-&type_core__array__ArrayIterator__core__Array__nullable__nitc__MClass, /* ArrayIterator[E]: ArrayIterator[Array[nullable MClass]] */
-&type_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MClass, /* ArrayReverseIterator[E]: ArrayReverseIterator[Array[nullable MClass]] */
-}
-};
-/* runtime type MapValuesIterator[MClass, Array[nullable MClass]] */
-const struct type type_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MClass = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, Array[nullable MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MClass,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2110,57 +2001,16 @@ const struct type type_core__MapValuesIterator__nitc__MClass__core__Array__nulla
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1175, /* ArrayReverseIterator[MProperty] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MClass = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__nullable__nitc__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_core__MapIterator__nitc__MClass__core__Array__nullable__nitc__MClass, /* MapIterator[K, V]: MapIterator[MClass, Array[nullable MClass]] */
-}
-};
-/* runtime type MapKeysIterator[String, ConfigNode] */
-const struct type type_core__MapKeysIterator__core__String__ini__ConfigNode = {
--1, /*CAST DEAD*/
-"MapKeysIterator[String, ConfigNode]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__core__String__ini__ConfigNode,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
-2828, /* Iterator[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1263, /* ArrayReverseIterator[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__core__String__ini__ConfigNode = {
-0, /* dummy */
-{
-&type_core__Array__core__String, /* Array[E]: Array[String] */
-&type_core__MapIterator__core__String__ini__ConfigNode, /* MapIterator[K, V]: MapIterator[String, ConfigNode] */
-}
-};
-/* runtime type MapValuesIterator[String, ConfigNode] */
-const struct type type_core__MapValuesIterator__core__String__ini__ConfigNode = {
--1, /*CAST DEAD*/
-"MapValuesIterator[String, ConfigNode]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__core__String__ini__ConfigNode,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2169,26 +2019,6 @@ const struct type type_core__MapValuesIterator__core__String__ini__ConfigNode =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__core__String__ini__ConfigNode = {
-0, /* dummy */
-{
-&type_core__Array__ini__ConfigNode, /* Array[E]: Array[ConfigNode] */
-&type_core__MapIterator__core__String__ini__ConfigNode, /* MapIterator[K, V]: MapIterator[String, ConfigNode] */
-}
-};
-/* runtime type NativeArray[TId] */
-const struct type type_core__NativeArray__nitc__TId = {
-1836,
-"NativeArray[TId]", /* class_name_string */
-70,
-0,
-&resolution_table_core__NativeArray__nitc__TId,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2209,6 +2039,7 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1542, /* ArrayReverseIterator[MMethod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2220,15 +2051,14 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1495, /* NativeArray[Token] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2243,13 +2073,15 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1916, /* ArrayReverseIterator[PropertyLayoutElement] */
 -1, /* empty */
+1932, /* ArrayReverseIterator[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
-1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2257,7 +2089,6 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1836, /* NativeArray[TId] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2281,6 +2112,27 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MMethod = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MMethod, /* Array[E]: Array[MMethod] */
+&type_core__AbstractArrayRead__nitc__MMethod, /* AbstractArrayRead[E]: AbstractArrayRead[MMethod] */
+}
+};
+/* runtime type ListNode[MMethodDef] */
+const struct type type_core__list__ListNode__nitc__MMethodDef = {
+1543,
+"ListNode[MMethodDef]", /* class_name_string */
+133,
+0,
+&resolution_table_core__list__ListNode__nitc__MMethodDef,
+143,
+{
+2380, /* Object */
+2401, /* nullable Object */
+3070, /* Ref[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2299,8 +2151,8 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2426, /* Collection[MPropDef] */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2315,7 +2167,10 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
+2444, /* Collection[PropertyLayoutElement] */
+2445, /* Collection[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2359,6 +2214,7 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2489, /* Collection[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2371,6 +2227,7 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2384,6 +2241,7 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2516, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2405,157 +2263,153 @@ const struct type type_core__NativeArray__nitc__TId = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1543, /* ListNode[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2982, /* nullable ListNode[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__NativeArray__nitc__TId = {
+const struct types resolution_table_core__list__ListNode__nitc__MMethodDef = {
 0, /* dummy */
 {
-&type_nitc__TId, /* E: TId */
-&type_core__NativeArray__nitc__TId, /* NativeArray[E]: NativeArray[TId] */
+&type_nullable__core__list__ListNode__nitc__MMethodDef, /* nullable ListNode[E]: nullable ListNode[MMethodDef] */
+&type_core__abstract_collection__RefIterator__nitc__MMethodDef, /* RefIterator[E]: RefIterator[MMethodDef] */
+&type_nitc__MMethodDef, /* E: MMethodDef */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__MMethodDef, /* Array[E]: Array[MMethodDef] */
 }
 };
-/* runtime type ArrayIterator[TId] */
-const struct type type_core__array__ArrayIterator__nitc__TId = {
--1, /*CAST DEAD*/
-"ArrayIterator[TId]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__TId,
+/* runtime type ListIterator[MMethodDef] */
+const struct type type_core__ListIterator__nitc__MMethodDef = {
+1544,
+"ListIterator[MMethodDef]", /* class_name_string */
 11,
+0,
+&resolution_table_core__ListIterator__nitc__MMethodDef,
+16,
 {
-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 */
+2844, /* Iterator[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
+1544, /* ListIterator[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayIterator__nitc__TId = {
+const struct types resolution_table_core__ListIterator__nitc__MMethodDef = {
 0, /* dummy */
 {
-&type_core__Array__nitc__TId, /* Array[E]: Array[TId] */
-&type_core__AbstractArrayRead__nitc__TId, /* AbstractArrayRead[E]: AbstractArrayRead[TId] */
+&type_core__Array__nitc__MMethodDef, /* Array[E]: Array[MMethodDef] */
+&type_core__List__nitc__MMethodDef, /* List[E]: List[MMethodDef] */
 }
 };
-/* runtime type ArrayReverseIterator[TId] */
-const struct type type_core__array__ArrayReverseIterator__nitc__TId = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[TId]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ListReverseIterator[MMethodDef] */
+const struct type type_core__list__ListReverseIterator__nitc__MMethodDef = {
+1545,
+"ListReverseIterator[MMethodDef]", /* class_name_string */
+16,
 0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__TId,
-11,
+&resolution_table_core__list__ListReverseIterator__nitc__MMethodDef,
+21,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2844, /* Iterator[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__TId = {
-0, /* dummy */
-{
-&type_core__Array__nitc__TId, /* Array[E]: Array[TId] */
-&type_core__AbstractArrayRead__nitc__TId, /* AbstractArrayRead[E]: AbstractArrayRead[TId] */
-}
-};
-/* runtime type MapKeysIterator[MClass, AClassdef] */
-const struct type type_core__MapKeysIterator__nitc__MClass__nitc__AClassdef = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, AClassdef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MClass__nitc__AClassdef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+1544, /* ListIterator[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1545, /* ListReverseIterator[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapKeysIterator__nitc__MClass__nitc__AClassdef = {
+const struct types resolution_table_core__list__ListReverseIterator__nitc__MMethodDef = {
 0, /* dummy */
 {
-&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
-&type_core__MapIterator__nitc__MClass__nitc__AClassdef, /* MapIterator[K, V]: MapIterator[MClass, AClassdef] */
+&type_core__Array__nitc__MMethodDef, /* Array[E]: Array[MMethodDef] */
+&type_core__List__nitc__MMethodDef, /* List[E]: List[MMethodDef] */
 }
 };
-/* runtime type MapValuesIterator[MClass, AClassdef] */
-const struct type type_core__MapValuesIterator__nitc__MClass__nitc__AClassdef = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, AClassdef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MClass__nitc__AClassdef,
+/* runtime type RefIterator[MMethodDef] */
+const struct type type_core__abstract_collection__RefIterator__nitc__MMethodDef = {
+1546,
+"RefIterator[MMethodDef]", /* class_name_string */
 11,
+0,
+&resolution_table_core__abstract_collection__RefIterator__nitc__MMethodDef,
+16,
 {
-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 */
+2844, /* Iterator[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
+1546, /* RefIterator[MMethodDef] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapValuesIterator__nitc__MClass__nitc__AClassdef = {
+const struct types resolution_table_core__abstract_collection__RefIterator__nitc__MMethodDef = {
 0, /* dummy */
 {
-&type_core__Array__nitc__AClassdef, /* Array[E]: Array[AClassdef] */
-&type_core__MapIterator__nitc__MClass__nitc__AClassdef, /* MapIterator[K, V]: MapIterator[MClass, AClassdef] */
+&type_core__Array__nitc__MMethodDef, /* Array[E]: Array[MMethodDef] */
+&type_core__Ref__nitc__MMethodDef, /* Ref[E]: Ref[MMethodDef] */
 }
 };
-/* runtime type NativeArray[AType] */
-const struct type type_core__NativeArray__nitc__AType = {
-1841,
-"NativeArray[AType]", /* class_name_string */
-71,
+/* runtime type HashMapKeys[MClassDef, HashSet[MType]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClassDef__core__HashSet__nitc__MType = {
+1547,
+"HashMapKeys[MClassDef, HashSet[MType]]", /* class_name_string */
+161,
 0,
-&resolution_table_core__NativeArray__nitc__AType,
-226,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClassDef__core__HashSet__nitc__MType,
+205,
 {
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2572,6 +2426,7 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2423, /* Collection[MClassDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2580,18 +2435,17 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2609,7 +2463,6 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2618,7 +2471,6 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1841, /* NativeArray[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2653,6 +2505,7 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2660,7 +2513,6 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2717,6 +2569,7 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1547, /* HashMapKeys[MClassDef, HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2728,6 +2581,7 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1710, /* HashMapKeys[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2759,11 +2613,724 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClassDef__core__HashSet__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClassDef__core__HashSet__nitc__MType, /* HashMap[K, V]: HashMap[MClassDef, HashSet[MType]] */
+&type_core__MapKeysIterator__nitc__MClassDef__core__HashSet__nitc__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MClassDef, HashSet[MType]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__MClassDef, /* Array[E]: Array[MClassDef] */
+}
+};
+/* runtime type HashMapValues[MClassDef, HashSet[MType]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClassDef__core__HashSet__nitc__MType = {
+1548,
+"HashMapValues[MClassDef, HashSet[MType]]", /* class_name_string */
+161,
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClassDef__core__HashSet__nitc__MType,
+205,
+{
+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 */
+-1, /* empty */
+-1, /* empty */
+2442, /* Collection[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 */
+2492, /* Collection[HashSet[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2502, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2508, /* Collection[Set[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1548, /* HashMapValues[MClassDef, HashSet[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1711, /* HashMapValues[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 */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClassDef__core__HashSet__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClassDef__core__HashSet__nitc__MType, /* HashMap[K, V]: HashMap[MClassDef, HashSet[MType]] */
+&type_core__MapValuesIterator__nitc__MClassDef__core__HashSet__nitc__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MClassDef, HashSet[MType]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__core__HashSet__nitc__MType, /* Array[E]: Array[HashSet[MType]] */
+}
+};
+/* runtime type HashMapIterator[MClassDef, HashSet[MType]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClassDef__core__HashSet__nitc__MType = {
+1549,
+"HashMapIterator[MClassDef, HashSet[MType]]", /* class_name_string */
+114,
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClassDef__core__HashSet__nitc__MType,
+158,
+{
+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 */
+2693, /* MapIterator[MClassDef, HashSet[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1549, /* HashMapIterator[MClassDef, HashSet[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1712, /* HashMapIterator[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 */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClassDef__core__HashSet__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClassDef__core__HashSet__nitc__MType, /* HashMap[K, V]: HashMap[MClassDef, HashSet[MType]] */
+}
+};
+/* runtime type NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType = {
+1550,
+"NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]]", /* class_name_string */
+173,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType,
+228,
+{
+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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1550, /* NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType, /* E: nullable HashMapNode[MClassDef, HashSet[MType]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
+}
+};
+/* runtime type HashMapNode[MClassDef, HashSet[MType]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType = {
+1551,
+"HashMapNode[MClassDef, HashSet[MType]]", /* class_name_string */
+97,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType,
+156,
+{
+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 */
+2784, /* nullable HashMapNode[MClassDef, HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2773,56 +3340,15 @@ const struct type type_core__NativeArray__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__AType = {
-0, /* dummy */
-{
-&type_nitc__AType, /* E: AType */
-&type_core__NativeArray__nitc__AType, /* NativeArray[E]: NativeArray[AType] */
-}
-};
-/* runtime type ArrayIterator[AType] */
-const struct type type_core__array__ArrayIterator__nitc__AType = {
--1, /*CAST DEAD*/
-"ArrayIterator[AType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__AType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
+2799, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -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 = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[AType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__AType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2831,29 +3357,94 @@ const struct type type_core__array__ArrayReverseIterator__nitc__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AType = {
-0, /* dummy */
-{
-&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
-&type_core__AbstractArrayRead__nitc__AType, /* AbstractArrayRead[E]: AbstractArrayRead[AType] */
-}
-};
-/* runtime type MapKeysIterator[String, Variable] */
-const struct type type_core__MapKeysIterator__core__String__nitc__Variable = {
--1, /*CAST DEAD*/
-"MapKeysIterator[String, Variable]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__core__String__nitc__Variable,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
-2828, /* Iterator[String] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1551, /* HashMapNode[MClassDef, HashSet[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1714, /* 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 */
@@ -2862,25 +3453,172 @@ const struct type type_core__MapKeysIterator__core__String__nitc__Variable = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapKeysIterator__core__String__nitc__Variable = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClassDef__core__HashSet__nitc__MType = {
 0, /* dummy */
 {
-&type_core__Array__core__String, /* Array[E]: Array[String] */
-&type_core__MapIterator__core__String__nitc__Variable, /* MapIterator[K, V]: MapIterator[String, Variable] */
+&type_core__HashSet__nitc__MType, /* V: HashSet[MType] */
+&type_nitc__MClassDef, /* K: MClassDef */
 }
 };
-/* runtime type MapValuesIterator[String, Variable] */
-const struct type type_core__MapValuesIterator__core__String__nitc__Variable = {
--1, /*CAST DEAD*/
-"MapValuesIterator[String, Variable]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Array[HashSet[MType]] */
+const struct type type_core__Array__core__HashSet__nitc__MType = {
+1552,
+"Array[HashSet[MType]]", /* class_name_string */
+470,
 0,
-&resolution_table_core__MapValuesIterator__core__String__nitc__Variable,
-11,
+&resolution_table_core__Array__core__HashSet__nitc__MType,
+510,
 {
-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 */
+-1, /* empty */
+-1, /* empty */
+2442, /* Collection[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 */
+2492, /* Collection[HashSet[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2502, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2508, /* Collection[Set[MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2889,27 +3627,6 @@ const struct type type_core__MapValuesIterator__core__String__nitc__Variable = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__core__String__nitc__Variable = {
-0, /* dummy */
-{
-&type_core__Array__nitc__Variable, /* Array[E]: Array[Variable] */
-&type_core__MapIterator__core__String__nitc__Variable, /* MapIterator[K, V]: MapIterator[String, Variable] */
-}
-};
-/* runtime type MapKeysIterator[Variable, RuntimeVariable] */
-const struct type type_core__MapKeysIterator__nitc__Variable__nitc__RuntimeVariable = {
--1, /*CAST DEAD*/
-"MapKeysIterator[Variable, RuntimeVariable]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__Variable__nitc__RuntimeVariable,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2918,27 +3635,6 @@ const struct type type_core__MapKeysIterator__nitc__Variable__nitc__RuntimeVaria
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__Variable__nitc__RuntimeVariable = {
-0, /* dummy */
-{
-&type_core__Array__nitc__Variable, /* Array[E]: Array[Variable] */
-&type_core__MapIterator__nitc__Variable__nitc__RuntimeVariable, /* MapIterator[K, V]: MapIterator[Variable, RuntimeVariable] */
-}
-};
-/* runtime type MapValuesIterator[Variable, RuntimeVariable] */
-const struct type type_core__MapValuesIterator__nitc__Variable__nitc__RuntimeVariable = {
--1, /*CAST DEAD*/
-"MapValuesIterator[Variable, RuntimeVariable]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__Variable__nitc__RuntimeVariable,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2947,84 +3643,22 @@ const struct type type_core__MapValuesIterator__nitc__Variable__nitc__RuntimeVar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__Variable__nitc__RuntimeVariable = {
-0, /* dummy */
-{
-&type_core__Array__nitc__RuntimeVariable, /* Array[E]: Array[RuntimeVariable] */
-&type_core__MapIterator__nitc__Variable__nitc__RuntimeVariable, /* MapIterator[K, V]: MapIterator[Variable, RuntimeVariable] */
-}
-};
-/* runtime type MapKeysIterator[MType, Int] */
-const struct type type_core__MapKeysIterator__nitc__MType__core__Int = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MType, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MType__core__Int,
-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__Int = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
-&type_core__MapIterator__nitc__MType__core__Int, /* MapIterator[K, V]: MapIterator[MType, Int] */
-}
-};
-/* runtime type MapValuesIterator[MType, Int] */
-const struct type type_core__MapValuesIterator__nitc__MType__core__Int = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MType, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MType__core__Int,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2588, /* AbstractArrayRead[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MType__core__Int = {
-0, /* dummy */
-{
-&type_core__Array__core__Int, /* Array[E]: Array[Int] */
-&type_core__MapIterator__nitc__MType__core__Int, /* MapIterator[K, V]: MapIterator[MType, Int] */
-}
-};
-/* runtime type NativeArray[TComment] */
-const struct type type_core__NativeArray__nitc__TComment = {
-1850,
-"NativeArray[TComment]", /* class_name_string */
-72,
-0,
-&resolution_table_core__NativeArray__nitc__TComment,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3036,6 +3670,7 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2603, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3045,6 +3680,7 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2613, /* AbstractArrayRead[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3052,11 +3688,11 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2621, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3064,7 +3700,6 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1495, /* NativeArray[Token] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3085,7 +3720,6 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3095,7 +3729,6 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1850, /* NativeArray[TComment] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3126,6 +3759,7 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3136,7 +3770,6 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3177,6 +3810,7 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2939, /* AbstractArray[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3186,11 +3820,13 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2949, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2955, /* AbstractArray[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3217,6 +3853,8 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+226, /* Array[Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3249,27 +3887,6 @@ const struct type type_core__NativeArray__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__TComment = {
-0, /* dummy */
-{
-&type_nitc__TComment, /* E: TComment */
-&type_core__NativeArray__nitc__TComment, /* NativeArray[E]: NativeArray[TComment] */
-}
-};
-/* runtime type ArrayIterator[TComment] */
-const struct type type_core__array__ArrayIterator__nitc__TComment = {
--1, /*CAST DEAD*/
-"ArrayIterator[TComment]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__TComment,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3278,27 +3895,6 @@ const struct type type_core__array__ArrayIterator__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__nitc__TComment = {
-0, /* dummy */
-{
-&type_core__Array__nitc__TComment, /* Array[E]: Array[TComment] */
-&type_core__AbstractArrayRead__nitc__TComment, /* AbstractArrayRead[E]: AbstractArrayRead[TComment] */
-}
-};
-/* runtime type ArrayReverseIterator[TComment] */
-const struct type type_core__array__ArrayReverseIterator__nitc__TComment = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[TComment]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__TComment,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3307,26 +3903,6 @@ const struct type type_core__array__ArrayReverseIterator__nitc__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__TComment = {
-0, /* dummy */
-{
-&type_core__Array__nitc__TComment, /* Array[E]: Array[TComment] */
-&type_core__AbstractArrayRead__nitc__TComment, /* AbstractArrayRead[E]: AbstractArrayRead[TComment] */
-}
-};
-/* runtime type Array[EscapeMark] */
-const struct type type_core__Array__nitc__EscapeMark = {
-1853,
-"Array[EscapeMark]", /* class_name_string */
-486,
-0,
-&resolution_table_core__Array__nitc__EscapeMark,
-510,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3361,9 +3937,9 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
+1552, /* Array[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3378,6 +3954,7 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1810, /* Array[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3402,6 +3979,42 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__core__HashSet__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashSet__nitc__MType, /* E: HashSet[MType] */
+&type_core__Array__core__HashSet__nitc__MType, /* SELF: Array[HashSet[MType]] */
+&type_core__Collection__core__HashSet__nitc__MType, /* Collection[E]: Collection[HashSet[MType]] */
+&type_core__Array__core__HashSet__nitc__MType, /* Array[E]: Array[HashSet[MType]] */
+&type_core__AbstractArray__core__HashSet__nitc__MType, /* AbstractArray[E]: AbstractArray[HashSet[MType]] */
+&type_core__NativeArray__core__HashSet__nitc__MType, /* NativeArray[E]: NativeArray[HashSet[MType]] */
+&type_core__HashSet__nitc__MType, /* E: HashSet[MType] */
+&type_core__Collection__core__HashSet__nitc__MType, /* Collection[E]: Collection[HashSet[MType]] */
+&type_core__HashSet__nitc__MType, /* E: HashSet[MType] */
+&type_core__Collection__core__HashSet__nitc__MType, /* Collection[E]: Collection[HashSet[MType]] */
+&type_core__Collection__core__HashSet__nitc__MType, /* Collection[E]: Collection[HashSet[MType]] */
+&type_core__Array__core__HashSet__nitc__MType, /* Array[E]: Array[HashSet[MType]] */
+&type_core__Array__core__HashSet__nitc__MType, /* Array[E]: Array[HashSet[MType]] */
+&type_core__AbstractArray__core__HashSet__nitc__MType, /* AbstractArray[E]: AbstractArray[HashSet[MType]] */
+&type_core__array__ArrayIterator__core__HashSet__nitc__MType, /* ArrayIterator[E]: ArrayIterator[HashSet[MType]] */
+&type_core__array__ArrayReverseIterator__core__HashSet__nitc__MType, /* ArrayReverseIterator[E]: ArrayReverseIterator[HashSet[MType]] */
+}
+};
+/* runtime type MapValuesIterator[MClassDef, HashSet[MType]] */
+const struct type type_core__MapValuesIterator__nitc__MClassDef__core__HashSet__nitc__MType = {
+1553,
+"MapValuesIterator[MClassDef, HashSet[MType]]", /* class_name_string */
+44,
+0,
+&resolution_table_core__MapValuesIterator__nitc__MClassDef__core__HashSet__nitc__MType,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3428,7 +4041,6 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2500, /* Collection[EscapeMark] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3439,11 +4051,11 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1553, /* MapValuesIterator[MClassDef, HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3454,10 +4066,9 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
+1716, /* MapValuesIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3488,9 +4099,28 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__MClassDef__core__HashSet__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__core__HashSet__nitc__MType, /* Array[E]: Array[HashSet[MType]] */
+&type_core__MapIterator__nitc__MClassDef__core__HashSet__nitc__MType, /* MapIterator[K, V]: MapIterator[MClassDef, HashSet[MType]] */
+}
+};
+/* runtime type NativeArray[HashSet[MType]] */
+const struct type type_core__NativeArray__core__HashSet__nitc__MType = {
+1554,
+"NativeArray[HashSet[MType]]", /* class_name_string */
+85,
+0,
+&resolution_table_core__NativeArray__core__HashSet__nitc__MType,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3523,6 +4153,7 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3557,7 +4188,6 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2626, /* AbstractArrayRead[EscapeMark] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3568,13 +4198,13 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1554, /* NativeArray[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3584,11 +4214,13 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1812, /* NativeArray[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3614,7 +4246,6 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3683,7 +4314,6 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2950, /* AbstractArray[EscapeMark] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3694,7 +4324,6 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3709,7 +4338,6 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3719,6 +4347,27 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -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 = {
+1555,
+"ArrayIterator[HashSet[MType]]", /* class_name_string */
+65,
+0,
+&resolution_table_core__array__ArrayIterator__core__HashSet__nitc__MType,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3781,6 +4430,7 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1555, /* ArrayIterator[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3795,6 +4445,7 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3804,6 +4455,7 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1813, /* ArrayIterator[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3811,7 +4463,7 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1853, /* Array[EscapeMark] */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3835,40 +4487,6 @@ const struct type type_core__Array__nitc__EscapeMark = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__nitc__EscapeMark = {
-0, /* dummy */
-{
-&type_nitc__EscapeMark, /* E: EscapeMark */
-&type_core__Array__nitc__EscapeMark, /* Array[E]: Array[EscapeMark] */
-&type_core__Collection__nitc__EscapeMark, /* Collection[E]: Collection[EscapeMark] */
-&type_core__Array__nitc__EscapeMark, /* Array[E]: Array[EscapeMark] */
-&type_core__AbstractArray__nitc__EscapeMark, /* AbstractArray[E]: AbstractArray[EscapeMark] */
-&type_core__NativeArray__nitc__EscapeMark, /* NativeArray[E]: NativeArray[EscapeMark] */
-&type_nitc__EscapeMark, /* E: EscapeMark */
-&type_core__Collection__nitc__EscapeMark, /* Collection[E]: Collection[EscapeMark] */
-&type_nitc__EscapeMark, /* E: EscapeMark */
-&type_core__Collection__nitc__EscapeMark, /* Collection[E]: Collection[EscapeMark] */
-&type_core__Collection__nitc__EscapeMark, /* Collection[E]: Collection[EscapeMark] */
-&type_core__Array__nitc__EscapeMark, /* Array[E]: Array[EscapeMark] */
-&type_core__AbstractArray__nitc__EscapeMark, /* AbstractArray[E]: AbstractArray[EscapeMark] */
-&type_core__array__ArrayIterator__nitc__EscapeMark, /* ArrayIterator[E]: ArrayIterator[EscapeMark] */
-&type_core__array__ArrayReverseIterator__nitc__EscapeMark, /* ArrayReverseIterator[E]: ArrayReverseIterator[EscapeMark] */
-}
-};
-/* runtime type MapKeysIterator[EscapeMark, String] */
-const struct type type_core__MapKeysIterator__nitc__EscapeMark__core__String = {
--1, /*CAST DEAD*/
-"MapKeysIterator[EscapeMark, String]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__EscapeMark__core__String,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3877,29 +4495,7 @@ const struct type type_core__MapKeysIterator__nitc__EscapeMark__core__String = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__EscapeMark__core__String = {
-0, /* dummy */
-{
-&type_core__Array__nitc__EscapeMark, /* Array[E]: Array[EscapeMark] */
-&type_core__MapIterator__nitc__EscapeMark__core__String, /* MapIterator[K, V]: MapIterator[EscapeMark, String] */
-}
-};
-/* runtime type MapValuesIterator[EscapeMark, String] */
-const struct type type_core__MapValuesIterator__nitc__EscapeMark__core__String = {
--1, /*CAST DEAD*/
-"MapValuesIterator[EscapeMark, String]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__EscapeMark__core__String,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
-2828, /* Iterator[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3908,25 +4504,25 @@ const struct type type_core__MapValuesIterator__nitc__EscapeMark__core__String =
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapValuesIterator__nitc__EscapeMark__core__String = {
+const struct types resolution_table_core__array__ArrayIterator__core__HashSet__nitc__MType = {
 0, /* dummy */
 {
-&type_core__Array__core__String, /* Array[E]: Array[String] */
-&type_core__MapIterator__nitc__EscapeMark__core__String, /* MapIterator[K, V]: MapIterator[EscapeMark, String] */
+&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 MapKeysIterator[MClass, Array[MType]] */
-const struct type type_core__MapKeysIterator__nitc__MClass__core__Array__nitc__MType = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, Array[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type ArrayReverseIterator[HashSet[MType]] */
+const struct type type_core__array__ArrayReverseIterator__core__HashSet__nitc__MType = {
+1556,
+"ArrayReverseIterator[HashSet[MType]]", /* class_name_string */
+191,
 0,
-&resolution_table_core__MapKeysIterator__nitc__MClass__core__Array__nitc__MType,
-11,
+&resolution_table_core__array__ArrayReverseIterator__core__HashSet__nitc__MType,
+263,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3935,28 +4531,6 @@ const struct type type_core__MapKeysIterator__nitc__MClass__core__Array__nitc__M
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Array__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
-&type_core__MapIterator__nitc__MClass__core__Array__nitc__MType, /* MapIterator[K, V]: MapIterator[MClass, Array[MType]] */
-}
-};
-/* runtime type MapValuesIterator[MClass, Array[MType]] */
-const struct type type_core__MapValuesIterator__nitc__MClass__core__Array__nitc__MType = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, Array[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MClass__core__Array__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3964,27 +4538,6 @@ const struct type type_core__MapValuesIterator__nitc__MClass__core__Array__nitc_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Array__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__nitc__MType, /* Array[E]: Array[Array[MType]] */
-&type_core__MapIterator__nitc__MClass__core__Array__nitc__MType, /* MapIterator[K, V]: MapIterator[MClass, Array[MType]] */
-}
-};
-/* runtime type MapKeysIterator[MClass, Set[MType]] */
-const struct type type_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MType = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, Set[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3993,26 +4546,6 @@ const struct type type_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MTy
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
-&type_core__MapIterator__nitc__MClass__core__Set__nitc__MType, /* MapIterator[K, V]: MapIterator[MClass, Set[MType]] */
-}
-};
-/* runtime type Array[Set[MType]] */
-const struct type type_core__Array__core__Set__nitc__MType = {
-1859,
-"Array[Set[MType]]", /* class_name_string */
-487,
-0,
-&resolution_table_core__Array__core__Set__nitc__MType,
-510,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4047,12 +4580,12 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1555, /* ArrayIterator[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4067,6 +4600,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4076,6 +4610,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1813, /* ArrayIterator[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4083,6 +4618,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4115,7 +4651,6 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2501, /* Collection[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4125,7 +4660,6 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4140,8 +4674,6 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4174,12 +4706,12 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1556, /* ArrayReverseIterator[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4194,6 +4726,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4203,6 +4736,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1814, /* ArrayReverseIterator[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4210,6 +4744,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4244,17 +4779,36 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2627, /* AbstractArrayRead[Set[MType]] */
 -1, /* empty */
 -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 MapKeysIterator[MClassDef, HashSet[MType]] */
+const struct type type_core__MapKeysIterator__nitc__MClassDef__core__HashSet__nitc__MType = {
+1557,
+"MapKeysIterator[MClassDef, HashSet[MType]]", /* class_name_string */
+44,
+0,
+&resolution_table_core__MapKeysIterator__nitc__MClassDef__core__HashSet__nitc__MType,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4291,6 +4845,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1557, /* MapKeysIterator[MClassDef, HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4300,10 +4855,10 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1720, /* MapKeysIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4336,6 +4891,26 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__MClassDef__core__HashSet__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MClassDef, /* Array[E]: Array[MClassDef] */
+&type_core__MapIterator__nitc__MClassDef__core__HashSet__nitc__MType, /* MapIterator[K, V]: MapIterator[MClassDef, HashSet[MType]] */
+}
+};
+/* runtime type HashMapKeys[MClass, Int] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__Int = {
+1558,
+"HashMapKeys[MClass, Int]", /* class_name_string */
+162,
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Int,
+205,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4346,6 +4921,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2417, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4370,17 +4946,17 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2951, /* AbstractArray[Set[MType]] */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2446, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4395,7 +4971,6 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4431,6 +5006,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4495,10 +5071,10 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1558, /* HashMapKeys[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1859, /* Array[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4506,6 +5082,7 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1710, /* HashMapKeys[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4521,40 +5098,6 @@ const struct type type_core__Array__core__Set__nitc__MType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Set__nitc__MType, /* E: Set[MType] */
-&type_core__Array__core__Set__nitc__MType, /* Array[E]: Array[Set[MType]] */
-&type_core__Collection__core__Set__nitc__MType, /* Collection[E]: Collection[Set[MType]] */
-&type_core__Array__core__Set__nitc__MType, /* Array[E]: Array[Set[MType]] */
-&type_core__AbstractArray__core__Set__nitc__MType, /* AbstractArray[E]: AbstractArray[Set[MType]] */
-&type_core__NativeArray__core__Set__nitc__MType, /* NativeArray[E]: NativeArray[Set[MType]] */
-&type_core__Set__nitc__MType, /* E: Set[MType] */
-&type_core__Collection__core__Set__nitc__MType, /* Collection[E]: Collection[Set[MType]] */
-&type_core__Set__nitc__MType, /* E: Set[MType] */
-&type_core__Collection__core__Set__nitc__MType, /* Collection[E]: Collection[Set[MType]] */
-&type_core__Collection__core__Set__nitc__MType, /* Collection[E]: Collection[Set[MType]] */
-&type_core__Array__core__Set__nitc__MType, /* Array[E]: Array[Set[MType]] */
-&type_core__AbstractArray__core__Set__nitc__MType, /* AbstractArray[E]: AbstractArray[Set[MType]] */
-&type_core__array__ArrayIterator__core__Set__nitc__MType, /* ArrayIterator[E]: ArrayIterator[Set[MType]] */
-&type_core__array__ArrayReverseIterator__core__Set__nitc__MType, /* ArrayReverseIterator[E]: ArrayReverseIterator[Set[MType]] */
-}
-};
-/* runtime type MapValuesIterator[MClass, Set[MType]] */
-const struct type type_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MType = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, Set[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4563,27 +5106,6 @@ const struct type type_core__MapValuesIterator__nitc__MClass__core__Set__nitc__M
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__core__Set__nitc__MType, /* Array[E]: Array[Set[MType]] */
-&type_core__MapIterator__nitc__MClass__core__Set__nitc__MType, /* MapIterator[K, V]: MapIterator[MClass, Set[MType]] */
-}
-};
-/* runtime type MapKeysIterator[MClass, Array[nullable MType]] */
-const struct type type_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MType = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MType,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4594,25 +5116,34 @@ const struct type type_core__MapKeysIterator__nitc__MClass__core__Array__nullabl
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MType = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Int = {
 0, /* dummy */
 {
+&type_core__HashMap__nitc__MClass__core__Int, /* HashMap[K, V]: HashMap[MClass, Int] */
+&type_core__MapKeysIterator__nitc__MClass__core__Int, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Int] */
+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] */
-&type_core__MapIterator__nitc__MClass__core__Array__nullable__nitc__MType, /* MapIterator[K, V]: MapIterator[MClass, Array[nullable MType]] */
 }
 };
-/* runtime type MapValuesIterator[MClass, Array[nullable MType]] */
-const struct type type_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MType = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashMapValues[MClass, Int] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core__Int = {
+1559,
+"HashMapValues[MClass, Int]", /* class_name_string */
+162,
 0,
-&resolution_table_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MType,
-11,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Int,
+205,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4621,33 +5152,13 @@ const struct type type_core__MapValuesIterator__nitc__MClass__core__Array__nulla
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
-&type_core__MapIterator__nitc__MClass__core__Array__nullable__nitc__MType, /* MapIterator[K, V]: MapIterator[MClass, Array[nullable MType]] */
-}
-};
-/* runtime type HashMapKeys[MType, Set[MType]] */
-const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Set__nitc__MType = {
--1, /*CAST DEAD*/
-"HashMapKeys[MType, Set[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapKeys__nitc__MType__core__Set__nitc__MType,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2421, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4667,15 +5178,14 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2425, /* Collection[MType] */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4686,7 +5196,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2444, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4730,6 +5239,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4753,7 +5263,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4768,27 +5277,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MType__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MType__core__Set__nitc__MType, /* HashMap[K, V]: HashMap[MType, Set[MType]] */
-&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
-&type_core__MapKeysIterator__nitc__MType__core__Set__nitc__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MType, Set[MType]] */
-}
-};
-/* runtime type HashMapValues[MType, Set[MType]] */
-const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__Set__nitc__MType = {
--1, /*CAST DEAD*/
-"HashMapValues[MType, Set[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapValues__nitc__MType__core__Set__nitc__MType,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4816,6 +5304,7 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1559, /* HashMapValues[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4823,10 +5312,10 @@ 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 */
+1711, /* HashMapValues[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4858,6 +5347,36 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__core__Int, /* HashMap[K, V]: HashMap[MClass, Int] */
+&type_core__MapValuesIterator__nitc__MClass__core__Int, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Int] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+}
+};
+/* runtime type HashMapIterator[MClass, Int] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__core__Int = {
+1560,
+"HashMapIterator[MClass, Int]", /* class_name_string */
+115,
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Int,
+158,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4891,8 +5410,8 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2501, /* Collection[Set[MType]] */
 -1, /* empty */
+2694, /* MapIterator[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4901,10 +5420,10 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2706, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4916,27 +5435,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MType__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MType__core__Set__nitc__MType, /* HashMap[K, V]: HashMap[MType, Set[MType]] */
-&type_core__Array__core__Set__nitc__MType, /* Array[E]: Array[Set[MType]] */
-&type_core__MapValuesIterator__nitc__MType__core__Set__nitc__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MType, Set[MType]] */
-}
-};
-/* runtime type HashMapIterator[MType, Set[MType]] */
-const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core__Set__nitc__MType = {
--1, /*CAST DEAD*/
-"HashMapIterator[MType, Set[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapIterator__nitc__MType__core__Set__nitc__MType,
-79,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4992,18 +5490,18 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2707, /* MapIterator[Object, nullable Object] */
+1560, /* HashMapIterator[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2714, /* MapIterator[MType, Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1712, /* HashMapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5014,25 +5512,6 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MType__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__MType__core__Set__nitc__MType, /* HashMap[K, V]: HashMap[MType, Set[MType]] */
-}
-};
-/* runtime type HashMapNode[MType, Set[MType]] */
-const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType = {
-1866,
-"HashMapNode[MType, Set[MType]]", /* class_name_string */
-137,
-0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType,
-152,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5054,6 +5533,25 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__core__Int, /* HashMap[K, V]: HashMap[MClass, Int] */
+}
+};
+/* runtime type NativeArray[nullable HashMapNode[MClass, Int]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Int = {
+1561,
+"NativeArray[nullable HashMapNode[MClass, Int]]", /* class_name_string */
+174,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Int,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5086,14 +5584,12 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2810, /* nullable HashMapNode[MType, Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5149,6 +5645,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5161,14 +5658,12 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1866, /* HashMapNode[MType, Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5183,26 +5678,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_core__Set__nitc__MType, /* V: Set[MType] */
-&type_nitc__MType, /* K: MType */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MType, Set[MType]]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType = {
-1867,
-"NativeArray[nullable HashMapNode[MType, Set[MType]]]", /* class_name_string */
-209,
-0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5249,6 +5724,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1561, /* NativeArray[nullable HashMapNode[MClass, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5262,6 +5738,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1713, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5301,6 +5778,26 @@ 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__MClass__core__Int = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Int, /* E: nullable HashMapNode[MClass, Int] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Int]] */
+}
+};
+/* runtime type HashMapNode[MClass, Int] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__Int = {
+1562,
+"HashMapNode[MClass, Int]", /* class_name_string */
+98,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Int,
+156,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5314,7 +5811,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 */
@@ -5336,6 +5832,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2785, /* nullable HashMapNode[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5346,6 +5843,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2799, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5396,6 +5894,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1562, /* HashMapNode[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5403,14 +5902,12 @@ 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 */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1867, /* NativeArray[nullable HashMapNode[MType, Set[MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5427,26 +5924,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__MType__core__Set__nitc__MType = {
-0, /* dummy */
-{
-&type_nullable__core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType, /* E: nullable HashMapNode[MType, Set[MType]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Set__nitc__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, Set[MType]]] */
-}
-};
-/* runtime type NativeArray[AParam] */
-const struct type type_core__NativeArray__nitc__AParam = {
-1868,
-"NativeArray[AParam]", /* class_name_string */
-73,
-0,
-&resolution_table_core__NativeArray__nitc__AParam,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5460,6 +5937,7 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1714, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5474,18 +5952,37 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Int = {
+0, /* dummy */
+{
+&type_core__Int, /* V: Int */
+&type_nitc__MClass, /* K: MClass */
+}
+};
+/* runtime type MapValuesIterator[MClass, Int] */
+const struct type type_core__MapValuesIterator__nitc__MClass__core__Int = {
+1563,
+"MapValuesIterator[MClass, Int]", /* class_name_string */
+45,
+0,
+&resolution_table_core__MapValuesIterator__nitc__MClass__core__Int,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5507,7 +6004,6 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5518,8 +6014,8 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1868, /* NativeArray[AParam] */
 -1, /* empty */
+1563, /* MapValuesIterator[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5531,6 +6027,7 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1716, /* MapValuesIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5558,12 +6055,32 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Int = {
+0, /* dummy */
+{
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+&type_core__MapIterator__nitc__MClass__core__Int, /* MapIterator[K, V]: MapIterator[MClass, Int] */
+}
+};
+/* runtime type MapKeysIterator[MClass, Int] */
+const struct type type_core__MapKeysIterator__nitc__MClass__core__Int = {
+1564,
+"MapKeysIterator[MClass, Int]", /* class_name_string */
+45,
+0,
+&resolution_table_core__MapKeysIterator__nitc__MClass__core__Int,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5606,6 +6123,7 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1564, /* MapKeysIterator[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5617,6 +6135,7 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1720, /* MapKeysIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5649,6 +6168,27 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Int = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapIterator__nitc__MClass__core__Int, /* MapIterator[K, V]: MapIterator[MClass, Int] */
+}
+};
+/* runtime type HashSetIterator[Object] */
+const struct type type_core__hash_collection__HashSetIterator__core__Object = {
+1565,
+"HashSetIterator[Object]", /* class_name_string */
+23,
+0,
+&resolution_table_core__hash_collection__HashSetIterator__core__Object,
+34,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5669,29 +6209,9 @@ const struct type type_core__NativeArray__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1565, /* HashSetIterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__AParam = {
-0, /* dummy */
-{
-&type_nitc__AParam, /* E: AParam */
-&type_core__NativeArray__nitc__AParam, /* NativeArray[E]: NativeArray[AParam] */
-}
-};
-/* runtime type ArrayIterator[AParam] */
-const struct type type_core__array__ArrayIterator__nitc__AParam = {
--1, /*CAST DEAD*/
-"ArrayIterator[AParam]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__AParam,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5702,25 +6222,24 @@ const struct type type_core__array__ArrayIterator__nitc__AParam = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayIterator__nitc__AParam = {
+const struct types resolution_table_core__hash_collection__HashSetIterator__core__Object = {
 0, /* dummy */
 {
-&type_core__Array__nitc__AParam, /* Array[E]: Array[AParam] */
-&type_core__AbstractArrayRead__nitc__AParam, /* AbstractArrayRead[E]: AbstractArrayRead[AParam] */
+&type_core__Array__core__Object, /* Array[E]: Array[Object] */
+&type_core__HashSet__core__Object, /* HashSet[E]: HashSet[Object] */
 }
 };
-/* runtime type ArrayReverseIterator[AParam] */
-const struct type type_core__array__ArrayReverseIterator__nitc__AParam = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[AParam]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashSetNode[Object] */
+const struct type type_core__hash_collection__HashSetNode__core__Object = {
+1566,
+"HashSetNode[Object]", /* class_name_string */
+35,
 0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__AParam,
-11,
+&resolution_table_core__hash_collection__HashSetNode__core__Object,
+48,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5729,30 +6248,11 @@ const struct type type_core__array__ArrayReverseIterator__nitc__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AParam = {
-0, /* dummy */
-{
-&type_core__Array__nitc__AParam, /* Array[E]: Array[AParam] */
-&type_core__AbstractArrayRead__nitc__AParam, /* AbstractArrayRead[E]: AbstractArrayRead[AParam] */
-}
-};
-/* runtime type NativeArray[AExternCall] */
-const struct type type_core__NativeArray__nitc__AExternCall = {
-1871,
-"NativeArray[AExternCall]", /* class_name_string */
-74,
-0,
-&resolution_table_core__NativeArray__nitc__AExternCall,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2786, /* nullable HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5773,6 +6273,7 @@ const struct type type_core__NativeArray__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1566, /* HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5780,18 +6281,31 @@ const struct type type_core__NativeArray__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
-1492, /* NativeArray[Prod] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashSetNode__core__Object = {
+0, /* dummy */
+{
+NULL, /* empty */
+&type_core__Object, /* K: Object */
+}
+};
+/* runtime type NativeArray[nullable HashSetNode[Object]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashSetNode__core__Object = {
+1567,
+"NativeArray[nullable HashSetNode[Object]]", /* class_name_string */
+175,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__core__Object,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5809,7 +6323,6 @@ const struct type type_core__NativeArray__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5821,7 +6334,6 @@ const struct type type_core__NativeArray__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1871, /* NativeArray[AExternCall] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5860,7 +6372,6 @@ const struct type type_core__NativeArray__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5888,6 +6399,7 @@ const struct type type_core__NativeArray__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5967,33 +6479,13 @@ const struct type type_core__NativeArray__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1567, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__AExternCall = {
-0, /* dummy */
-{
-&type_nitc__AExternCall, /* E: AExternCall */
-&type_core__NativeArray__nitc__AExternCall, /* NativeArray[E]: NativeArray[AExternCall] */
-}
-};
-/* runtime type ArrayIterator[AExternCall] */
-const struct type type_core__array__ArrayIterator__nitc__AExternCall = {
--1, /*CAST DEAD*/
-"ArrayIterator[AExternCall]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__AExternCall,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6002,27 +6494,6 @@ const struct type type_core__array__ArrayIterator__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__nitc__AExternCall = {
-0, /* dummy */
-{
-&type_core__Array__nitc__AExternCall, /* Array[E]: Array[AExternCall] */
-&type_core__AbstractArrayRead__nitc__AExternCall, /* AbstractArrayRead[E]: AbstractArrayRead[AExternCall] */
-}
-};
-/* runtime type ArrayReverseIterator[AExternCall] */
-const struct type type_core__array__ArrayReverseIterator__nitc__AExternCall = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[AExternCall]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__AExternCall,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6031,26 +6502,6 @@ const struct type type_core__array__ArrayReverseIterator__nitc__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AExternCall = {
-0, /* dummy */
-{
-&type_core__Array__nitc__AExternCall, /* Array[E]: Array[AExternCall] */
-&type_core__AbstractArrayRead__nitc__AExternCall, /* AbstractArrayRead[E]: AbstractArrayRead[AExternCall] */
-}
-};
-/* runtime type NativeArray[AForGroup] */
-const struct type type_core__NativeArray__nitc__AForGroup = {
-1874,
-"NativeArray[AForGroup]", /* class_name_string */
-75,
-0,
-&resolution_table_core__NativeArray__nitc__AForGroup,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6081,15 +6532,33 @@ const struct type type_core__NativeArray__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__core__Object = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashSetNode__core__Object, /* E: nullable HashSetNode[Object] */
+&type_core__NativeArray__nullable__core__hash_collection__HashSetNode__core__Object, /* NativeArray[E]: NativeArray[nullable HashSetNode[Object]] */
+}
+};
+/* runtime type HashMapKeys[MType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nullable__nitc__MType = {
+1568,
+"HashMapKeys[MType, Array[nullable MType]]", /* class_name_string */
+163,
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nullable__nitc__MType,
+205,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6110,25 +6579,26 @@ const struct type type_core__NativeArray__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2434, /* Collection[MType] */
 -1, /* empty */
-1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1874, /* NativeArray[AForGroup] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2453, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6162,7 +6632,6 @@ const struct type type_core__NativeArray__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6178,6 +6647,7 @@ const struct type type_core__NativeArray__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6243,6 +6713,7 @@ const struct type type_core__NativeArray__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1568, /* HashMapKeys[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6252,6 +6723,7 @@ const struct type type_core__NativeArray__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1710, /* HashMapKeys[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6275,27 +6747,6 @@ const struct type type_core__NativeArray__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__AForGroup = {
-0, /* dummy */
-{
-&type_nitc__AForGroup, /* E: AForGroup */
-&type_core__NativeArray__nitc__AForGroup, /* NativeArray[E]: NativeArray[AForGroup] */
-}
-};
-/* runtime type ArrayIterator[AForGroup] */
-const struct type type_core__array__ArrayIterator__nitc__AForGroup = {
--1, /*CAST DEAD*/
-"ArrayIterator[AForGroup]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__AForGroup,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6306,25 +6757,34 @@ const struct type type_core__array__ArrayIterator__nitc__AForGroup = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__array__ArrayIterator__nitc__AForGroup = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_core__Array__nitc__AForGroup, /* Array[E]: Array[AForGroup] */
-&type_core__AbstractArrayRead__nitc__AForGroup, /* AbstractArrayRead[E]: AbstractArrayRead[AForGroup] */
+&type_core__HashMap__nitc__MType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MType, Array[nullable MType]] */
+&type_core__MapKeysIterator__nitc__MType__core__Array__nullable__nitc__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MType, Array[nullable MType]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
 }
 };
-/* runtime type ArrayReverseIterator[AForGroup] */
-const struct type type_core__array__ArrayReverseIterator__nitc__AForGroup = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[AForGroup]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashMapValues[MType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MType__core__Array__nullable__nitc__MType = {
+1569,
+"HashMapValues[MType, Array[nullable MType]]", /* class_name_string */
+163,
 0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__AForGroup,
-11,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MType__core__Array__nullable__nitc__MType,
+205,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6333,26 +6793,6 @@ const struct type type_core__array__ArrayReverseIterator__nitc__AForGroup = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AForGroup = {
-0, /* dummy */
-{
-&type_core__Array__nitc__AForGroup, /* Array[E]: Array[AForGroup] */
-&type_core__AbstractArrayRead__nitc__AForGroup, /* AbstractArrayRead[E]: AbstractArrayRead[AForGroup] */
-}
-};
-/* runtime type NativeArray[MAttributeDef] */
-const struct type type_core__NativeArray__nitc__MAttributeDef = {
-1877,
-"NativeArray[MAttributeDef]", /* class_name_string */
-76,
-0,
-&resolution_table_core__NativeArray__nitc__MAttributeDef,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6368,7 +6808,6 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1204, /* NativeArray[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6381,13 +6820,11 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
-1445, /* NativeArray[PropertyLayoutElement] */
-1463, /* NativeArray[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6419,7 +6856,6 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1815, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6427,7 +6863,6 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1877, /* NativeArray[MAttributeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6436,6 +6871,7 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2493, /* Collection[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6444,6 +6880,7 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6464,7 +6901,6 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6510,6 +6946,7 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1569, /* HashMapValues[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6519,6 +6956,7 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1711, /* HashMapValues[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6550,6 +6988,36 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MType__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MType, Array[nullable MType]] */
+&type_core__MapValuesIterator__nitc__MType__core__Array__nullable__nitc__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MType, Array[nullable MType]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
+}
+};
+/* runtime type HashMapIterator[MType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nullable__nitc__MType = {
+1570,
+"HashMapIterator[MType, Array[nullable MType]]", /* class_name_string */
+116,
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nullable__nitc__MType,
+158,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6577,27 +7045,6 @@ const struct type type_core__NativeArray__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__MAttributeDef = {
-0, /* dummy */
-{
-&type_nitc__MAttributeDef, /* E: MAttributeDef */
-&type_core__NativeArray__nitc__MAttributeDef, /* NativeArray[E]: NativeArray[MAttributeDef] */
-}
-};
-/* runtime type ArrayIterator[MAttributeDef] */
-const struct type type_core__array__ArrayIterator__nitc__MAttributeDef = {
--1, /*CAST DEAD*/
-"ArrayIterator[MAttributeDef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__MAttributeDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6606,27 +7053,7 @@ const struct type type_core__array__ArrayIterator__nitc__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__nitc__MAttributeDef = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MAttributeDef, /* Array[E]: Array[MAttributeDef] */
-&type_core__AbstractArrayRead__nitc__MAttributeDef, /* AbstractArrayRead[E]: AbstractArrayRead[MAttributeDef] */
-}
-};
-/* runtime type ArrayReverseIterator[MAttributeDef] */
-const struct type type_core__array__ArrayReverseIterator__nitc__MAttributeDef = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[MAttributeDef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__MAttributeDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
+2695, /* MapIterator[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6635,29 +7062,9 @@ const struct type type_core__array__ArrayReverseIterator__nitc__MAttributeDef =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MAttributeDef = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MAttributeDef, /* Array[E]: Array[MAttributeDef] */
-&type_core__AbstractArrayRead__nitc__MAttributeDef, /* AbstractArrayRead[E]: AbstractArrayRead[MAttributeDef] */
-}
-};
-/* runtime type HashMap[MModule, HashMap[MType, Array[MAttributeDef]]] */
-const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef = {
-1880,
-"HashMap[MModule, HashMap[MType, Array[MAttributeDef]]]", /* class_name_string */
-81,
-0,
-&resolution_table_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef,
-85,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2203, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
+2706, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6716,7 +7123,6 @@ const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6726,6 +7132,7 @@ const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1570, /* HashMapIterator[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6734,42 +7141,10 @@ const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1880, /* HashMap[MModule, HashMap[MType, Array[MAttributeDef]]] */
 -1, /* empty */
+1712, /* HashMapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_core__hash_collection__HashMapIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapIterator[K, V]: HashMapIterator[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_nitc__MModule, /* K: MModule */
-&type_core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* V: HashMap[MType, Array[MAttributeDef]] */
-&type_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapNode[K, V]: HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_core__hash_collection__HashMapKeys__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapKeys[K, V]: HashMapKeys[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_core__hash_collection__HashMapValues__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapValues[K, V]: HashMapValues[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* nullable N: nullable HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]] */
-NULL, /* empty */
-&type_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* N: HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]]] */
-}
-};
-/* runtime type HashMap[MType, Array[MAttributeDef]] */
-const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef = {
-1881,
-"HashMap[MType, Array[MAttributeDef]]", /* class_name_string */
-82,
-0,
-&resolution_table_core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef,
-85,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2203, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6799,6 +7174,25 @@ const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MType, Array[nullable MType]] */
+}
+};
+/* runtime type NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType = {
+1571,
+"NativeArray[nullable HashMapNode[MType, Array[nullable MType]]]", /* class_name_string */
+176,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType,
+228,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6829,8 +7223,6 @@ const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1357, /* HashMap[Object, Array[Object]] */
-1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6849,40 +7241,8 @@ const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1881, /* HashMap[MType, Array[MAttributeDef]] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__HashMap__nitc__MType__core__Array__nitc__MAttributeDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapIterator[K, V]: HashMapIterator[MType, Array[MAttributeDef]] */
-&type_nitc__MType, /* K: MType */
-&type_core__Array__nitc__MAttributeDef, /* V: Array[MAttributeDef] */
-&type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapNode[K, V]: HashMapNode[MType, Array[MAttributeDef]] */
-&type_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapKeys[K, V]: HashMapKeys[MType, Array[MAttributeDef]] */
-&type_core__hash_collection__HashMapValues__nitc__MType__core__Array__nitc__MAttributeDef, /* HashMapValues[K, V]: HashMapValues[MType, Array[MAttributeDef]] */
-&type_nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MAttributeDef, /* nullable N: nullable HashMapNode[MType, Array[MAttributeDef]] */
-NULL, /* empty */
-&type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MAttributeDef, /* N: HashMapNode[MType, Array[MAttributeDef]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MAttributeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, Array[MAttributeDef]]] */
-}
-};
-/* runtime type NativeArray[MVirtualTypeDef] */
-const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
-1882,
-"NativeArray[MVirtualTypeDef]", /* class_name_string */
-77,
-0,
-&resolution_table_core__NativeArray__nitc__MVirtualTypeDef,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6898,7 +7258,6 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1204, /* NativeArray[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6914,10 +7273,7 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
-1445, /* NativeArray[PropertyLayoutElement] */
-1463, /* NativeArray[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6930,6 +7286,7 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6949,7 +7306,6 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1815, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6958,7 +7314,6 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1882, /* NativeArray[MVirtualTypeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6994,7 +7349,6 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7013,6 +7367,7 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1571, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7024,6 +7379,7 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1713, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7063,6 +7419,26 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType, /* E: nullable HashMapNode[MType, Array[nullable MType]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
+}
+};
+/* runtime type HashMapNode[MType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType = {
+1572,
+"HashMapNode[MType, Array[nullable MType]]", /* class_name_string */
+99,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType,
+156,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7098,6 +7474,18 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2787, /* nullable HashMapNode[MType, Array[nullable MType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2799, /* nullable HashMapNode[Object, nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7107,27 +7495,6 @@ const struct type type_core__NativeArray__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__MVirtualTypeDef = {
-0, /* dummy */
-{
-&type_nitc__MVirtualTypeDef, /* E: MVirtualTypeDef */
-&type_core__NativeArray__nitc__MVirtualTypeDef, /* NativeArray[E]: NativeArray[MVirtualTypeDef] */
-}
-};
-/* runtime type ArrayIterator[MVirtualTypeDef] */
-const struct type type_core__array__ArrayIterator__nitc__MVirtualTypeDef = {
--1, /*CAST DEAD*/
-"ArrayIterator[MVirtualTypeDef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__MVirtualTypeDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7136,27 +7503,6 @@ const struct type type_core__array__ArrayIterator__nitc__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__nitc__MVirtualTypeDef = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MVirtualTypeDef, /* Array[E]: Array[MVirtualTypeDef] */
-&type_core__AbstractArrayRead__nitc__MVirtualTypeDef, /* AbstractArrayRead[E]: AbstractArrayRead[MVirtualTypeDef] */
-}
-};
-/* runtime type ArrayReverseIterator[MVirtualTypeDef] */
-const struct type type_core__array__ArrayReverseIterator__nitc__MVirtualTypeDef = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[MVirtualTypeDef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__MVirtualTypeDef,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7165,27 +7511,6 @@ const struct type type_core__array__ArrayReverseIterator__nitc__MVirtualTypeDef
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MVirtualTypeDef = {
-0, /* dummy */
-{
-&type_core__Array__nitc__MVirtualTypeDef, /* Array[E]: Array[MVirtualTypeDef] */
-&type_core__AbstractArrayRead__nitc__MVirtualTypeDef, /* AbstractArrayRead[E]: AbstractArrayRead[MVirtualTypeDef] */
-}
-};
-/* runtime type HashMap[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef = {
-1885,
-"HashMap[MModule, HashMap[MType, Array[MVirtualTypeDef]]]", /* class_name_string */
-83,
-0,
-&resolution_table_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef,
-85,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2203, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7211,6 +7536,7 @@ const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1572, /* HashMapNode[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7246,13 +7572,13 @@ const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1714, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7266,40 +7592,27 @@ const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1885, /* HashMap[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_core__hash_collection__HashMapIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapIterator[K, V]: HashMapIterator[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_nitc__MModule, /* K: MModule */
-&type_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* V: HashMap[MType, Array[MVirtualTypeDef]] */
-&type_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapNode[K, V]: HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_core__hash_collection__HashMapKeys__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapKeys[K, V]: HashMapKeys[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_core__hash_collection__HashMapValues__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapValues[K, V]: HashMapValues[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* nullable N: nullable HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-NULL, /* empty */
-&type_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* N: HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]]] */
+&type_core__Array__nullable__nitc__MType, /* V: Array[nullable MType] */
+&type_nitc__MType, /* K: MType */
 }
 };
-/* runtime type HashMap[MType, Array[MVirtualTypeDef]] */
-const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef = {
-1886,
-"HashMap[MType, Array[MVirtualTypeDef]]", /* class_name_string */
-84,
+/* runtime type Array[Array[nullable MType]] */
+const struct type type_core__Array__core__Array__nullable__nitc__MType = {
+1573,
+"Array[Array[nullable MType]]", /* class_name_string */
+471,
 0,
-&resolution_table_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef,
-85,
+&resolution_table_core__Array__core__Array__nullable__nitc__MType,
+510,
 {
-2371, /* Object */
-2397, /* nullable Object */
-2203, /* MapRead[nullable Object, nullable Object] */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7335,6 +7648,7 @@ const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTy
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7359,8 +7673,6 @@ const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTy
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1357, /* HashMap[Object, Array[Object]] */
-1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7381,96 +7693,24 @@ const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTy
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1886, /* HashMap[MType, Array[MVirtualTypeDef]] */
-},
-};
-const struct types resolution_table_core__HashMap__nitc__MType__core__Array__nitc__MVirtualTypeDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapIterator[K, V]: HashMapIterator[MType, Array[MVirtualTypeDef]] */
-&type_nitc__MType, /* K: MType */
-&type_core__Array__nitc__MVirtualTypeDef, /* V: Array[MVirtualTypeDef] */
-&type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapNode[K, V]: HashMapNode[MType, Array[MVirtualTypeDef]] */
-&type_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapKeys[K, V]: HashMapKeys[MType, Array[MVirtualTypeDef]] */
-&type_core__hash_collection__HashMapValues__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* HashMapValues[K, V]: HashMapValues[MType, Array[MVirtualTypeDef]] */
-&type_nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* nullable N: nullable HashMapNode[MType, Array[MVirtualTypeDef]] */
-NULL, /* empty */
-&type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* N: HashMapNode[MType, Array[MVirtualTypeDef]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MVirtualTypeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, Array[MVirtualTypeDef]]] */
-}
-};
-/* runtime type MapKeysIterator[Int, Int] */
-const struct type type_core__MapKeysIterator__core__Int__core__Int = {
--1, /*CAST DEAD*/
-"MapKeysIterator[Int, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__core__Int__core__Int,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2493, /* Collection[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapKeysIterator__core__Int__core__Int = {
-0, /* dummy */
-{
-&type_core__Array__core__Int, /* Array[E]: Array[Int] */
-&type_core__MapIterator__core__Int__core__Int, /* MapIterator[K, V]: MapIterator[Int, Int] */
-}
-};
-/* runtime type MapValuesIterator[Int, Int] */
-const struct type type_core__MapValuesIterator__core__Int__core__Int = {
--1, /*CAST DEAD*/
-"MapValuesIterator[Int, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__core__Int__core__Int,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__core__Int__core__Int = {
-0, /* dummy */
-{
-&type_core__Array__core__Int, /* Array[E]: Array[Int] */
-&type_core__MapIterator__core__Int__core__Int, /* MapIterator[K, V]: MapIterator[Int, Int] */
-}
-};
-/* runtime type NativeArray[Couple[Int, Int]] */
-const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
-1889,
-"NativeArray[Couple[Int, Int]]", /* class_name_string */
-78,
-0,
-&resolution_table_core__NativeArray__core__Couple__core__Int__core__Int,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7500,9 +7740,10 @@ const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1715, /* Array[nullable Object] */
+2210, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7547,7 +7788,6 @@ const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1889, /* NativeArray[Couple[Int, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7558,6 +7798,7 @@ const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2589, /* AbstractArrayRead[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7571,6 +7812,7 @@ const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2603, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7582,13 +7824,13 @@ const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2621, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7659,6 +7901,7 @@ const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7695,27 +7938,6 @@ const struct type type_core__NativeArray__core__Couple__core__Int__core__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__core__Couple__core__Int__core__Int = {
-0, /* dummy */
-{
-&type_core__Couple__core__Int__core__Int, /* E: Couple[Int, Int] */
-&type_core__NativeArray__core__Couple__core__Int__core__Int, /* NativeArray[E]: NativeArray[Couple[Int, Int]] */
-}
-};
-/* runtime type ArrayIterator[Couple[Int, Int]] */
-const struct type type_core__array__ArrayIterator__core__Couple__core__Int__core__Int = {
--1, /*CAST DEAD*/
-"ArrayIterator[Couple[Int, Int]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__core__Couple__core__Int__core__Int,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7723,28 +7945,6 @@ const struct type type_core__array__ArrayIterator__core__Couple__core__Int__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2843, /* Iterator[Couple[Int, Int]] */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__core__Couple__core__Int__core__Int = {
-0, /* dummy */
-{
-&type_core__Array__core__Couple__core__Int__core__Int, /* Array[E]: Array[Couple[Int, Int]] */
-&type_core__AbstractArrayRead__core__Couple__core__Int__core__Int, /* AbstractArrayRead[E]: AbstractArrayRead[Couple[Int, Int]] */
-}
-};
-/* runtime type ArrayReverseIterator[Couple[Int, Int]] */
-const struct type type_core__array__ArrayReverseIterator__core__Couple__core__Int__core__Int = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[Couple[Int, Int]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__core__Couple__core__Int__core__Int,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7752,28 +7952,8 @@ const struct type type_core__array__ArrayReverseIterator__core__Couple__core__In
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2843, /* Iterator[Couple[Int, Int]] */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__core__Couple__core__Int__core__Int = {
-0, /* dummy */
-{
-&type_core__Array__core__Couple__core__Int__core__Int, /* Array[E]: Array[Couple[Int, Int]] */
-&type_core__AbstractArrayRead__core__Couple__core__Int__core__Int, /* AbstractArrayRead[E]: AbstractArrayRead[Couple[Int, Int]] */
-}
-};
-/* runtime type NativeArray[SourceFile] */
-const struct type type_core__NativeArray__nitc__SourceFile = {
-1892,
-"NativeArray[SourceFile]", /* class_name_string */
-79,
-0,
-&resolution_table_core__NativeArray__nitc__SourceFile,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
+2940, /* AbstractArray[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7782,6 +7962,7 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2949, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7804,7 +7985,6 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7815,6 +7995,7 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+226, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7850,7 +8031,6 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1892, /* NativeArray[SourceFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7884,7 +8064,6 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7903,6 +8082,7 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1573, /* Array[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7941,6 +8121,41 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nullable__nitc__MType, /* E: Array[nullable MType] */
+&type_core__Array__core__Array__nullable__nitc__MType, /* SELF: Array[Array[nullable MType]] */
+&type_core__Collection__core__Array__nullable__nitc__MType, /* Collection[E]: Collection[Array[nullable MType]] */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
+&type_core__AbstractArray__core__Array__nullable__nitc__MType, /* AbstractArray[E]: AbstractArray[Array[nullable MType]] */
+&type_core__NativeArray__core__Array__nullable__nitc__MType, /* NativeArray[E]: NativeArray[Array[nullable MType]] */
+&type_core__Array__nullable__nitc__MType, /* E: Array[nullable MType] */
+&type_core__Collection__core__Array__nullable__nitc__MType, /* Collection[E]: Collection[Array[nullable MType]] */
+&type_core__Array__nullable__nitc__MType, /* E: Array[nullable MType] */
+&type_core__Collection__core__Array__nullable__nitc__MType, /* Collection[E]: Collection[Array[nullable MType]] */
+&type_core__Collection__core__Array__nullable__nitc__MType, /* Collection[E]: Collection[Array[nullable MType]] */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
+&type_core__AbstractArray__core__Array__nullable__nitc__MType, /* AbstractArray[E]: AbstractArray[Array[nullable MType]] */
+&type_core__array__ArrayIterator__core__Array__nullable__nitc__MType, /* ArrayIterator[E]: ArrayIterator[Array[nullable MType]] */
+&type_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MType, /* ArrayReverseIterator[E]: ArrayReverseIterator[Array[nullable MType]] */
+}
+};
+/* runtime type MapValuesIterator[MType, Array[nullable MType]] */
+const struct type type_core__MapValuesIterator__nitc__MType__core__Array__nullable__nitc__MType = {
+1574,
+"MapValuesIterator[MType, Array[nullable MType]]", /* class_name_string */
+46,
+0,
+&resolution_table_core__MapValuesIterator__nitc__MType__core__Array__nullable__nitc__MType,
+90,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7984,6 +8199,7 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1574, /* MapValuesIterator[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7994,30 +8210,15 @@ const struct type type_core__NativeArray__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1716, /* MapValuesIterator[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nitc__SourceFile = {
-0, /* dummy */
-{
-&type_nitc__SourceFile, /* E: SourceFile */
-&type_core__NativeArray__nitc__SourceFile, /* NativeArray[E]: NativeArray[SourceFile] */
-}
-};
-/* runtime type ArrayIterator[SourceFile] */
-const struct type type_core__array__ArrayIterator__nitc__SourceFile = {
--1, /*CAST DEAD*/
-"ArrayIterator[SourceFile]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayIterator__nitc__SourceFile,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8026,27 +8227,6 @@ const struct type type_core__array__ArrayIterator__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayIterator__nitc__SourceFile = {
-0, /* dummy */
-{
-&type_core__Array__nitc__SourceFile, /* Array[E]: Array[SourceFile] */
-&type_core__AbstractArrayRead__nitc__SourceFile, /* AbstractArrayRead[E]: AbstractArrayRead[SourceFile] */
-}
-};
-/* runtime type ArrayReverseIterator[SourceFile] */
-const struct type type_core__array__ArrayReverseIterator__nitc__SourceFile = {
--1, /*CAST DEAD*/
-"ArrayReverseIterator[SourceFile]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__array__ArrayReverseIterator__nitc__SourceFile,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8055,27 +8235,6 @@ const struct type type_core__array__ArrayReverseIterator__nitc__SourceFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__array__ArrayReverseIterator__nitc__SourceFile = {
-0, /* dummy */
-{
-&type_core__Array__nitc__SourceFile, /* Array[E]: Array[SourceFile] */
-&type_core__AbstractArrayRead__nitc__SourceFile, /* AbstractArrayRead[E]: AbstractArrayRead[SourceFile] */
-}
-};
-/* runtime type MapKeysIterator[Phase, POSetElement[Phase]] */
-const struct type type_core__MapKeysIterator__nitc__Phase__poset__POSetElement__nitc__Phase = {
--1, /*CAST DEAD*/
-"MapKeysIterator[Phase, POSetElement[Phase]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapKeysIterator__nitc__Phase__poset__POSetElement__nitc__Phase,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8086,31 +8245,24 @@ const struct type type_core__MapKeysIterator__nitc__Phase__poset__POSetElement__
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__MapKeysIterator__nitc__Phase__poset__POSetElement__nitc__Phase = {
+const struct types resolution_table_core__MapValuesIterator__nitc__MType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_core__Array__nitc__Phase, /* Array[E]: Array[Phase] */
-&type_core__MapIterator__nitc__Phase__poset__POSetElement__nitc__Phase, /* MapIterator[K, V]: MapIterator[Phase, POSetElement[Phase]] */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
+&type_core__MapIterator__nitc__MType__core__Array__nullable__nitc__MType, /* MapIterator[K, V]: MapIterator[MType, Array[nullable MType]] */
 }
 };
-/* runtime type Array[POSetElement[Phase]] */
-const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
-1896,
-"Array[POSetElement[Phase]]", /* class_name_string */
-488,
+/* runtime type NativeArray[Array[nullable MType]] */
+const struct type type_core__NativeArray__core__Array__nullable__nitc__MType = {
+1575,
+"NativeArray[Array[nullable MType]]", /* class_name_string */
+86,
 0,
-&resolution_table_core__Array__poset__POSetElement__nitc__Phase,
-510,
+&resolution_table_core__NativeArray__core__Array__nullable__nitc__MType,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8138,12 +8290,12 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+227, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8195,6 +8347,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1575, /* NativeArray[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8203,11 +8356,11 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2502, /* Collection[POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8216,7 +8369,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8231,8 +8383,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2015, /* Array[nullable Object] */
-2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8265,7 +8415,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8336,16 +8485,31 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2628, /* AbstractArrayRead[POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2637, /* AbstractArrayRead[nullable Object] */
+},
+};
+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 = {
+1576,
+"ArrayIterator[Array[nullable MType]]", /* class_name_string */
+66,
+0,
+&resolution_table_core__array__ArrayIterator__core__Array__nullable__nitc__MType,
+137,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8391,7 +8555,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8410,6 +8573,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1576, /* ArrayIterator[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8423,6 +8587,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8440,6 +8605,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8462,7 +8628,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2952, /* AbstractArray[POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8471,7 +8636,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8480,13 +8644,33 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -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 = {
+1577,
+"ArrayReverseIterator[Array[nullable MType]]", /* class_name_string */
+192,
+0,
+&resolution_table_core__array__ArrayReverseIterator__core__Array__nullable__nitc__MType,
+263,
+{
+2380, /* Object */
+2401, /* nullable Object */
+2400, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8544,6 +8728,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1576, /* ArrayIterator[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8557,6 +8742,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1718, /* ArrayIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8574,6 +8760,7 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1884, /* ArrayIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8590,7 +8777,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1896, /* Array[POSetElement[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8612,40 +8798,6 @@ const struct type type_core__Array__poset__POSetElement__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__Array__poset__POSetElement__nitc__Phase = {
-0, /* dummy */
-{
-&type_poset__POSetElement__nitc__Phase, /* E: POSetElement[Phase] */
-&type_core__Array__poset__POSetElement__nitc__Phase, /* Array[E]: Array[POSetElement[Phase]] */
-&type_core__Collection__poset__POSetElement__nitc__Phase, /* Collection[E]: Collection[POSetElement[Phase]] */
-&type_core__Array__poset__POSetElement__nitc__Phase, /* Array[E]: Array[POSetElement[Phase]] */
-&type_core__AbstractArray__poset__POSetElement__nitc__Phase, /* AbstractArray[E]: AbstractArray[POSetElement[Phase]] */
-&type_core__NativeArray__poset__POSetElement__nitc__Phase, /* NativeArray[E]: NativeArray[POSetElement[Phase]] */
-&type_poset__POSetElement__nitc__Phase, /* E: POSetElement[Phase] */
-&type_core__Collection__poset__POSetElement__nitc__Phase, /* Collection[E]: Collection[POSetElement[Phase]] */
-&type_poset__POSetElement__nitc__Phase, /* E: POSetElement[Phase] */
-&type_core__Collection__poset__POSetElement__nitc__Phase, /* Collection[E]: Collection[POSetElement[Phase]] */
-&type_core__Collection__poset__POSetElement__nitc__Phase, /* Collection[E]: Collection[POSetElement[Phase]] */
-&type_core__Array__poset__POSetElement__nitc__Phase, /* Array[E]: Array[POSetElement[Phase]] */
-&type_core__AbstractArray__poset__POSetElement__nitc__Phase, /* AbstractArray[E]: AbstractArray[POSetElement[Phase]] */
-&type_core__array__ArrayIterator__poset__POSetElement__nitc__Phase, /* ArrayIterator[E]: ArrayIterator[POSetElement[Phase]] */
-&type_core__array__ArrayReverseIterator__poset__POSetElement__nitc__Phase, /* ArrayReverseIterator[E]: ArrayReverseIterator[POSetElement[Phase]] */
-}
-};
-/* runtime type MapValuesIterator[Phase, POSetElement[Phase]] */
-const struct type type_core__MapValuesIterator__nitc__Phase__poset__POSetElement__nitc__Phase = {
--1, /*CAST DEAD*/
-"MapValuesIterator[Phase, POSetElement[Phase]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__MapValuesIterator__nitc__Phase__poset__POSetElement__nitc__Phase,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8654,27 +8806,6 @@ const struct type type_core__MapValuesIterator__nitc__Phase__poset__POSetElement
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__MapValuesIterator__nitc__Phase__poset__POSetElement__nitc__Phase = {
-0, /* dummy */
-{
-&type_core__Array__poset__POSetElement__nitc__Phase, /* Array[E]: Array[POSetElement[Phase]] */
-&type_core__MapIterator__nitc__Phase__poset__POSetElement__nitc__Phase, /* MapIterator[K, V]: MapIterator[Phase, POSetElement[Phase]] */
-}
-};
-/* runtime type HashSetIterator[Phase] */
-const struct type type_core__hash_collection__HashSetIterator__nitc__Phase = {
--1, /*CAST DEAD*/
-"HashSetIterator[Phase]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashSetIterator__nitc__Phase,
-11,
-{
-2371, /* Object */
-2397, /* nullable Object */
-2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8683,26 +8814,6 @@ const struct type type_core__hash_collection__HashSetIterator__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashSetIterator__nitc__Phase = {
-0, /* dummy */
-{
-&type_core__Array__nitc__Phase, /* Array[E]: Array[Phase] */
-&type_core__HashSet__nitc__Phase, /* HashSet[E]: HashSet[Phase] */
-}
-};
-/* runtime type HashSetNode[Phase] */
-const struct type type_core__hash_collection__HashSetNode__nitc__Phase = {
-1899,
-"HashSetNode[Phase]", /* class_name_string */
-46,
-0,
-&resolution_table_core__hash_collection__HashSetNode__nitc__Phase,
-48,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8713,7 +8824,6 @@ const struct type type_core__hash_collection__HashSetNode__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2757, /* nullable HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8724,7 +8834,6 @@ const struct type type_core__hash_collection__HashSetNode__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2811, /* nullable HashSetNode[Phase] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8736,7 +8845,6 @@ const struct type type_core__hash_collection__HashSetNode__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1270, /* HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8746,29 +8854,9 @@ const struct type type_core__hash_collection__HashSetNode__nitc__Phase = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1577, /* ArrayReverseIterator[Array[nullable MType]] */
 -1, /* empty */
-1899, /* HashSetNode[Phase] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashSetNode__nitc__Phase = {
-0, /* dummy */
-{
-NULL, /* empty */
-&type_nitc__Phase, /* K: Phase */
-}
-};
-/* runtime type NativeArray[nullable HashSetNode[Phase]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__Phase = {
-1900,
-"NativeArray[nullable HashSetNode[Phase]]", /* class_name_string */
-210,
-0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__Phase,
-226,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8780,6 +8868,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1719, /* ArrayReverseIterator[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8797,6 +8886,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1885, /* ArrayReverseIterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8835,10 +8925,32 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__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 MapKeysIterator[MType, Array[nullable MType]] */
+const struct type type_core__MapKeysIterator__nitc__MType__core__Array__nullable__nitc__MType = {
+1578,
+"MapKeysIterator[MType, Array[nullable MType]]", /* class_name_string */
+46,
+0,
+&resolution_table_core__MapKeysIterator__nitc__MType__core__Array__nullable__nitc__MType,
+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 */
@@ -8877,10 +8989,10 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1578, /* MapKeysIterator[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8888,6 +9000,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1720, /* MapKeysIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8920,10 +9033,29 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__MType__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__MapIterator__nitc__MType__core__Array__nullable__nitc__MType, /* MapIterator[K, V]: MapIterator[MType, Array[nullable MType]] */
+}
+};
+/* runtime type HashMapKeys[MClassType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClassType__core__Array__nullable__nitc__MType = {
+1579,
+"HashMapKeys[MClassType, Array[nullable MType]]", /* class_name_string */
+164,
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClassType__core__Array__nullable__nitc__MType,
+205,
+{
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1271, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8939,6 +9071,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2425, /* Collection[MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8947,6 +9080,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2434, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8954,6 +9088,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8964,6 +9099,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2453, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8977,7 +9113,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1900, /* NativeArray[nullable HashSetNode[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8993,33 +9128,12 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashS
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__Phase = {
-0, /* dummy */
-{
-&type_nullable__core__hash_collection__HashSetNode__nitc__Phase, /* E: nullable HashSetNode[Phase] */
-&type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__Phase, /* NativeArray[E]: NativeArray[nullable HashSetNode[Phase]] */
-}
-};
-/* runtime type HashMapKeys[Phase, Set[Phase]] */
-const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__core__Set__nitc__Phase = {
--1, /*CAST DEAD*/
-"HashMapKeys[Phase, Set[Phase]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapKeys__nitc__Phase__core__Set__nitc__Phase,
-129,
-{
-2371, /* Object */
-2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2405, /* Collection[Phase] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9034,6 +9148,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9047,7 +9162,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9100,6 +9214,8 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1568, /* HashMapKeys[MType, Array[nullable MType]] */
+1579, /* HashMapKeys[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9108,6 +9224,7 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1710, /* HashMapKeys[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9125,7 +9242,6 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9142,26 +9258,34 @@ const struct type type_core__hash_collection__HashMapKeys__nitc__Phase__core__Se
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__Phase__core__Set__nitc__Phase = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClassType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_core__HashMap__nitc__Phase__core__Set__nitc__Phase, /* HashMap[K, V]: HashMap[Phase, Set[Phase]] */
-&type_core__Array__nitc__Phase, /* Array[E]: Array[Phase] */
-&type_core__MapKeysIterator__nitc__Phase__core__Set__nitc__Phase, /* MapKeysIterator[K, V]: MapKeysIterator[Phase, Set[Phase]] */
+&type_core__HashMap__nitc__MClassType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
+&type_core__MapKeysIterator__nitc__MClassType__core__Array__nullable__nitc__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MClassType, Array[nullable MType]] */
+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 HashMapValues[Phase, Set[Phase]] */
-const struct type type_core__hash_collection__HashMapValues__nitc__Phase__core__Set__nitc__Phase = {
--1, /*CAST DEAD*/
-"HashMapValues[Phase, Set[Phase]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashMapValues[MClassType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClassType__core__Array__nullable__nitc__MType = {
+1580,
+"HashMapValues[MClassType, Array[nullable MType]]", /* class_name_string */
+164,
 0,
-&resolution_table_core__hash_collection__HashMapValues__nitc__Phase__core__Set__nitc__Phase,
-129,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClassType__core__Array__nullable__nitc__MType,
+205,
 {
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
+2380, /* Object */
+2401, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9195,9 +9319,9 @@ const struct type type_core__hash_collection__HashMapValues__nitc__Phase__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
+2442, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9248,6 +9372,7 @@ const struct type type_core__hash_collection__HashMapValues__nitc__Phase__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2493, /* Collection[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9256,6 +9381,7 @@ const struct type type_core__hash_collection__HashMapValues__nitc__Phase__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2502, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9273,11 +9399,9 @@ const struct type type_core__hash_collection__HashMapValues__nitc__Phase__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2515, /* Collection[Set[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9288,28 +9412,6 @@ const struct type type_core__hash_collection__HashMapValues__nitc__Phase__core__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_core__hash_collection__HashMapValues__nitc__Phase__core__Set__nitc__Phase = {
-0, /* dummy */
-{
-&type_core__HashMap__nitc__Phase__core__Set__nitc__Phase, /* HashMap[K, V]: HashMap[Phase, Set[Phase]] */
-&type_core__Array__core__Set__nitc__Phase, /* Array[E]: Array[Set[Phase]] */
-&type_core__MapValuesIterator__nitc__Phase__core__Set__nitc__Phase, /* MapValuesIterator[K, V]: MapValuesIterator[Phase, Set[Phase]] */
-}
-};
-/* runtime type HashMapIterator[Phase, Set[Phase]] */
-const struct type type_core__hash_collection__HashMapIterator__nitc__Phase__core__Set__nitc__Phase = {
--1, /*CAST DEAD*/
-"HashMapIterator[Phase, Set[Phase]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_core__hash_collection__HashMapIterator__nitc__Phase__core__Set__nitc__Phase,
-79,
-{
-2371, /* Object */
-2397, /* nullable Object */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9345,6 +9447,8 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__Phase__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1569, /* HashMapValues[MType, Array[nullable MType]] */
+1580, /* HashMapValues[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9353,6 +9457,7 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__Phase__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1711, /* HashMapValues[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9364,7 +9469,6 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__Phase__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9372,7 +9476,6 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__Phase__core
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2715, /* MapIterator[Phase, Set[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9388,23 +9491,35 @@ const struct type type_core__hash_collection__HashMapIterator__nitc__Phase__core
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__Phase__core__Set__nitc__Phase = {
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClassType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_core__HashMap__nitc__Phase__core__Set__nitc__Phase, /* HashMap[K, V]: HashMap[Phase, Set[Phase]] */
+&type_core__HashMap__nitc__MClassType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
+&type_core__MapValuesIterator__nitc__MClassType__core__Array__nullable__nitc__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MClassType, Array[nullable MType]] */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
 }
 };
-/* runtime type HashMapNode[Phase, Set[Phase]] */
-const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase = {
-1904,
-"HashMapNode[Phase, Set[Phase]]", /* class_name_string */
-138,
+/* runtime type HashMapIterator[MClassType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClassType__core__Array__nullable__nitc__MType = {
+1581,
+"HashMapIterator[MClassType, Array[nullable MType]]", /* class_name_string */
+117,
 0,
-&resolution_table_core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase,
-152,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClassType__core__Array__nullable__nitc__MType,
+158,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9439,6 +9554,8 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2695, /* MapIterator[MType, Array[nullable MType]] */
+2696, /* MapIterator[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9448,6 +9565,7 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2706, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9458,7 +9576,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9466,7 +9583,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2812, /* nullable HashMapNode[Phase, Set[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9517,6 +9633,8 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1570, /* HashMapIterator[MType, Array[nullable MType]] */
+1581, /* HashMapIterator[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9525,6 +9643,10 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1712, /* HashMapIterator[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9533,7 +9655,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9541,7 +9662,6 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1904, /* HashMapNode[Phase, Set[Phase]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9557,24 +9677,24 @@ const struct type type_core__hash_collection__HashMapNode__nitc__Phase__core__Se
 -1, /* empty */
 },
 };
-const struct types resolution_table_core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase = {
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClassType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_core__Set__nitc__Phase, /* V: Set[Phase] */
-&type_nitc__Phase, /* K: Phase */
+&type_core__HashMap__nitc__MClassType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[Phase, Set[Phase]]] */
-const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase = {
-1905,
-"NativeArray[nullable HashMapNode[Phase, Set[Phase]]]", /* class_name_string */
-211,
+/* runtime type NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType = {
+1582,
+"NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]]", /* class_name_string */
+177,
 0,
-&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase,
-226,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType,
+228,
 {
-2371, /* Object */
-2397, /* nullable Object */
+2380, /* Object */
+2401, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9667,6 +9787,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1717, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9686,7 +9807,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 */
@@ -9748,6 +9868,8 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1571, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
+1582, /* NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9758,6 +9880,7 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1713, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9775,7 +9898,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 */
@@ -9784,7 +9906,6 @@ const struct type type_core__NativeArray__nullable__core__hash_collection__HashM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1905, /* NativeArray[nullable HashMapNode[Phase, Set[Phase]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9801,10 +9922,10 @@ 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__Phase__core__Set__nitc__Phase = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_nullable__core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase, /* E: nullable HashMapNode[Phase, Set[Phase]] */
-&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__Phase__core__Set__nitc__Phase, /* NativeArray[E]: NativeArray[nullable HashMapNode[Phase, Set[Phase]]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType, /* E: nullable HashMapNode[MClassType, Array[nullable MType]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
 }
 };