c_src: regenerate
[nit.git] / c_src / nitc__nith.types.10.c
similarity index 72%
rename from c_src/nit__nith.types.9.c
rename to c_src/nitc__nith.types.10.c
index 516b9ea..c37fb60 100644 (file)
-#include "nit__nith.types.0.h"
-/* runtime type HashSetNode[MMethod] */
-const struct type type_standard__hash_collection__HashSetNode__nit__MMethod = {
-1190,
-"HashSetNode[MMethod]", /* class_name_string */
-33,
+#include "nitc__nith.types.0.h"
+/* 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 = {
+1276,
+"NativeArray[nullable HashMapNode[MType, Array[nullable MType]]]", /* class_name_string */
+157,
 0,
-&resolution_table_standard__hash_collection__HashSetNode__nit__MMethod,
-48,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2234, /* nullable HashSetNode[MMethod] */
--1, /* empty */
-2238, /* nullable HashSetNode[Object] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2260, /* nullable HashSetNode[PropertyLayoutElement] */
--1, /* empty */
--1, /* empty */
-2264, /* nullable HashSetNode[MProperty] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1190, /* HashSetNode[MMethod] */
 -1, /* empty */
-1212, /* HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1373, /* HashSetNode[PropertyLayoutElement] */
--1, /* empty */
--1, /* empty */
-1401, /* HashSetNode[MProperty] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashSetNode__nit__MMethod = {
-0, /* dummy */
-{
-NULL, /* empty */
-&type_nit__MMethod, /* K: MMethod */
-}
-};
-/* runtime type HashSetIterator[CallSite] */
-const struct type type_standard__hash_collection__HashSetIterator__nit__CallSite = {
--1, /*CAST DEAD*/
-"HashSetIterator[CallSite]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashSetIterator__nit__CallSite,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
--1, /* empty */
--1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashSetIterator__nit__CallSite = {
-0, /* dummy */
-{
-&type_standard__Array__nit__CallSite, /* Array[E]: Array[CallSite] */
-&type_standard__HashSet__nit__CallSite, /* HashSet[E]: HashSet[CallSite] */
-}
-};
-/* runtime type NativeArray[nullable HashSetNode[CallSite]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__CallSite = {
-1192,
-"NativeArray[nullable HashSetNode[CallSite]]", /* class_name_string */
-148,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__CallSite,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -204,6 +121,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -245,10 +163,9 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1192, /* NativeArray[nullable HashSetNode[CallSite]] */
 -1, /* empty */
 -1, /* empty */
-1211, /* NativeArray[nullable HashSetNode[Object]] */
+1276, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -293,6 +210,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -318,24 +236,24 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__CallSite = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashSetNode__nit__CallSite, /* E: nullable HashSetNode[CallSite] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__nit__CallSite, /* NativeArray[E]: NativeArray[nullable HashSetNode[CallSite]] */
+&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 HashSetNode[CallSite] */
-const struct type type_standard__hash_collection__HashSetNode__nit__CallSite = {
-1193,
-"HashSetNode[CallSite]", /* class_name_string */
-34,
+/* runtime type HashMapKeys[MClassType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClassType__core__Array__nullable__nitc__MType = {
+-1, /*CAST DEAD*/
+"HashMapKeys[MClassType, Array[nullable MType]]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashSetNode__nit__CallSite,
-48,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClassType__core__Array__nullable__nitc__MType,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -345,8 +263,6 @@ const struct type type_standard__hash_collection__HashSetNode__nit__CallSite = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2235, /* nullable HashSetNode[CallSite] */
-2238, /* nullable HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -355,6 +271,7 @@ const struct type type_standard__hash_collection__HashSetNode__nit__CallSite = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2416, /* Collection[MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -363,15 +280,15 @@ const struct type type_standard__hash_collection__HashSetNode__nit__CallSite = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2425, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1193, /* HashSetNode[CallSite] */
-1212, /* HashSetNode[Object] */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -382,27 +299,7 @@ const struct type type_standard__hash_collection__HashSetNode__nit__CallSite = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashSetNode__nit__CallSite = {
-0, /* dummy */
-{
-NULL, /* empty */
-&type_nit__CallSite, /* K: CallSite */
-}
-};
-/* runtime type HashMap[MType, HashMap[MProperty, Set[MMethodDef]]] */
-const struct type type_standard__HashMap__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef = {
-1194,
-"HashMap[MType, HashMap[MProperty, Set[MMethodDef]]]", /* class_name_string */
-59,
-0,
-&resolution_table_standard__HashMap__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef,
-83,
-{
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
+2444, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -459,7 +356,6 @@ const struct type type_standard__HashMap__nit__MType__standard__HashMap__nit__MP
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1194, /* HashMap[MType, HashMap[MProperty, Set[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -470,6 +366,8 @@ const struct type type_standard__HashMap__nit__MType__standard__HashMap__nit__MP
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -485,36 +383,25 @@ const struct type type_standard__HashMap__nit__MType__standard__HashMap__nit__MP
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__HashMap__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClassType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapIterator[K, V]: HashMapIterator[MType, HashMap[MProperty, Set[MMethodDef]]] */
-&type_nit__MType, /* K: MType */
-&type_standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* V: HashMap[MProperty, Set[MMethodDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapNode[K, V]: HashMapNode[MType, HashMap[MProperty, Set[MMethodDef]]] */
-&type_standard__hash_collection__HashMapKeys__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapKeys[K, V]: HashMapKeys[MType, HashMap[MProperty, Set[MMethodDef]]] */
-&type_standard__hash_collection__HashMapValues__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapValues[K, V]: HashMapValues[MType, HashMap[MProperty, Set[MMethodDef]]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* nullable N: nullable HashMapNode[MType, HashMap[MProperty, Set[MMethodDef]]] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* N: HashMapNode[MType, HashMap[MProperty, Set[MMethodDef]]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, HashMap[MProperty, Set[MMethodDef]]]] */
+&type_core__HashMap__nitc__MClassType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
+&type_core__Array__nitc__MClassType, /* Array[E]: Array[MClassType] */
+&type_core__MapKeysIterator__nitc__MClassType__core__Array__nullable__nitc__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MClassType, Array[nullable MType]] */
 }
 };
-/* runtime type HashMap[MProperty, Set[MMethodDef]] */
-const struct type type_standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef = {
-1195,
-"HashMap[MProperty, Set[MMethodDef]]", /* class_name_string */
-60,
+/* runtime type HashMapValues[MClassType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClassType__core__Array__nullable__nitc__MType = {
+-1, /*CAST DEAD*/
+"HashMapValues[MClassType, Array[nullable MType]]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef,
-83,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClassType__core__Array__nullable__nitc__MType,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -549,6 +436,7 @@ const struct type type_standard__HashMap__nit__MProperty__standard__Set__nit__MM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -572,7 +460,6 @@ const struct type type_standard__HashMap__nit__MProperty__standard__Set__nit__MM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1195, /* HashMap[MProperty, Set[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -595,37 +482,6 @@ const struct type type_standard__HashMap__nit__MProperty__standard__Set__nit__MM
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMap__nit__MProperty__standard__Set__nit__MMethodDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapIterator[K, V]: HashMapIterator[MProperty, Set[MMethodDef]] */
-&type_nit__MProperty, /* K: MProperty */
-&type_standard__Set__nit__MMethodDef, /* V: Set[MMethodDef] */
-&type_standard__hash_collection__HashMapNode__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapNode[K, V]: HashMapNode[MProperty, Set[MMethodDef]] */
-&type_standard__hash_collection__HashMapKeys__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapKeys[K, V]: HashMapKeys[MProperty, Set[MMethodDef]] */
-&type_standard__hash_collection__HashMapValues__nit__MProperty__standard__Set__nit__MMethodDef, /* HashMapValues[K, V]: HashMapValues[MProperty, Set[MMethodDef]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MProperty__standard__Set__nit__MMethodDef, /* nullable N: nullable HashMapNode[MProperty, Set[MMethodDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MProperty__standard__Set__nit__MMethodDef, /* N: HashMapNode[MProperty, Set[MMethodDef]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MProperty__standard__Set__nit__MMethodDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MProperty, Set[MMethodDef]]] */
-}
-};
-/* runtime type NativeArray[MMethod] */
-const struct type type_standard__NativeArray__nit__MMethod = {
-1196,
-"NativeArray[MMethod]", /* class_name_string */
-21,
-0,
-&resolution_table_standard__NativeArray__nit__MMethod,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -634,9 +490,9 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1065, /* NativeArray[MProperty] */
 -1, /* empty */
 -1, /* empty */
+2489, /* Collection[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -645,7 +501,6 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1196, /* NativeArray[MMethod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -658,9 +513,8 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
-1369, /* NativeArray[PropertyLayoutElement] */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -675,6 +529,27 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClassType__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClassType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
+&type_core__Array__core__Array__nullable__nitc__MType, /* Array[E]: Array[Array[nullable MType]] */
+&type_core__MapValuesIterator__nitc__MClassType__core__Array__nullable__nitc__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MClassType, Array[nullable MType]] */
+}
+};
+/* runtime type HashMapIterator[MClassType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClassType__core__Array__nullable__nitc__MType = {
+-1, /*CAST DEAD*/
+"HashMapIterator[MClassType, Array[nullable MType]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClassType__core__Array__nullable__nitc__MType,
+79,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -691,9 +566,10 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1690, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
+2670, /* MapIterator[MType, Array[nullable MType]] */
+2671, /* MapIterator[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -729,6 +605,7 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -739,7 +616,6 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1987, /* NativeArray[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -751,6 +627,25 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClassType__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClassType__core__Array__nullable__nitc__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
+}
+};
+/* runtime type HashMapNode[MClassType, Array[nullable MType]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType = {
+1280,
+"HashMapNode[MClassType, Array[nullable MType]]", /* class_name_string */
+96,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -769,6 +664,8 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2758, /* nullable HashMapNode[MType, Array[nullable MType]] */
+2759, /* nullable HashMapNode[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -802,6 +699,7 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -841,56 +739,16 @@ const struct type type_standard__NativeArray__nit__MMethod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1275, /* HashMapNode[MType, Array[nullable MType]] */
+1280, /* HashMapNode[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__MMethod = {
-0, /* dummy */
-{
-&type_nit__MMethod, /* E: MMethod */
-&type_standard__NativeArray__nit__MMethod, /* NativeArray[E]: NativeArray[MMethod] */
-}
-};
-/* runtime type ArrayIterator[MMethod] */
-const struct type type_standard__array__ArrayIterator__nit__MMethod = {
--1, /*CAST DEAD*/
-"ArrayIterator[MMethod]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__MMethod,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__nit__MMethod = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MMethod, /* Array[E]: Array[MMethod] */
-&type_standard__AbstractArrayRead__nit__MMethod, /* AbstractArrayRead[E]: AbstractArrayRead[MMethod] */
-}
-};
-/* runtime type ListNode[MMethodDef] */
-const struct type type_standard__list__ListNode__nit__MMethodDef = {
-1198,
-"ListNode[MMethodDef]", /* class_name_string */
-137,
-0,
-&resolution_table_standard__list__ListNode__nit__MMethodDef,
-144,
-{
-80, /* Object */
-2622, /* nullable Object */
-2634, /* Container[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -908,7 +766,6 @@ const struct type type_standard__list__ListNode__nit__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2321, /* Collection[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -917,6 +774,7 @@ const struct type type_standard__list__ListNode__nit__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -924,10 +782,7 @@ const struct type type_standard__list__ListNode__nit__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
-2339, /* Collection[PropertyLayoutElement] */
-2340, /* Collection[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -941,11 +796,38 @@ const struct type type_standard__list__ListNode__nit__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nullable__nitc__MType, /* V: Array[nullable MType] */
+&type_nitc__MClassType, /* K: MClassType */
+}
+};
+/* 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 = {
+1281,
+"NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]]", /* class_name_string */
+158,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType,
+226,
+{
+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 */
-2358, /* Collection[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -956,7 +838,6 @@ const struct type type_standard__list__ListNode__nit__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2369, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1018,65 +899,20 @@ const struct type type_standard__list__ListNode__nit__MMethodDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2623, /* nullable ListNode[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1198, /* ListNode[MMethodDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__list__ListNode__nit__MMethodDef = {
-0, /* dummy */
-{
-&type_nullable__standard__list__ListNode__nit__MMethodDef, /* nullable ListNode[E]: nullable ListNode[MMethodDef] */
-&type_standard__Array__nit__MMethodDef, /* Array[E]: Array[MMethodDef] */
-&type_standard__abstract_collection__ContainerIterator__nit__MMethodDef, /* ContainerIterator[E]: ContainerIterator[MMethodDef] */
-&type_nit__MMethodDef, /* E: MMethodDef */
-}
-};
-/* runtime type ListIterator[MMethodDef] */
-const struct type type_standard__ListIterator__nit__MMethodDef = {
--1, /*CAST DEAD*/
-"ListIterator[MMethodDef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__ListIterator__nit__MMethodDef,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__ListIterator__nit__MMethodDef = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MMethodDef, /* Array[E]: Array[MMethodDef] */
-&type_standard__List__nit__MMethodDef, /* List[E]: List[MMethodDef] */
-}
-};
-/* runtime type HashMapKeys[MClassDef, HashSet[MType]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClassDef__standard__HashSet__nit__MType = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClassDef, HashSet[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClassDef__standard__HashSet__nit__MType,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1091,8 +927,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassDef__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
-2318, /* Collection[MClassDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1111,7 +947,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassDef__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1136,6 +971,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassDef__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1276, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
+1281, /* NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1179,6 +1016,10 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassDef__s
 -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 */
@@ -1201,25 +1042,26 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassDef__s
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClassDef__standard__HashSet__nit__MType = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClassType__core__Array__nullable__nitc__MType = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClassDef__standard__HashSet__nit__MType, /* HashMap[K, V]: HashMap[MClassDef, HashSet[MType]] */
-&type_standard__Array__nit__MClassDef, /* Array[E]: Array[MClassDef] */
-&type_standard__MapKeysIterator__nit__MClassDef__standard__HashSet__nit__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MClassDef, HashSet[MType]] */
+&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]]] */
 }
 };
-/* runtime type HashMapValues[MClassDef, HashSet[MType]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClassDef__standard__HashSet__nit__MType = {
+/* runtime type HashMapKeys[MClass, Array[nullable MPropDef]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
 -1, /*CAST DEAD*/
-"HashMapValues[MClassDef, HashSet[MType]]", /* class_name_string */
+"HashMapKeys[MClass, Array[nullable MPropDef]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClassDef__standard__HashSet__nit__MType,
-124,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MPropDef,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1228,6 +1070,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassDef_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2409, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1251,10 +1094,11 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassDef_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
+2437, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1305,7 +1149,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassDef_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2388, /* Collection[HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1318,7 +1161,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassDef_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2401, /* Collection[Set[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1330,6 +1172,9 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassDef_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1344,51 +1189,25 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassDef_
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClassDef__standard__HashSet__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClassDef__standard__HashSet__nit__MType, /* HashMap[K, V]: HashMap[MClassDef, HashSet[MType]] */
-&type_standard__Array__standard__HashSet__nit__MType, /* Array[E]: Array[HashSet[MType]] */
-&type_standard__MapValuesIterator__nit__MClassDef__standard__HashSet__nit__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MClassDef, HashSet[MType]] */
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MPropDef, /* HashMap[K, V]: HashMap[MClass, Array[nullable MPropDef]] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MPropDef, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Array[nullable MPropDef]] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType = {
-1202,
-"NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]]", /* class_name_string */
-149,
+/* runtime type HashMapValues[MClass, Array[nullable MPropDef]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
+-1, /*CAST DEAD*/
+"HashMapValues[MClass, Array[nullable MPropDef]]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType,
-219,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MPropDef,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1423,6 +1242,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1479,6 +1299,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2490, /* Collection[Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1499,73 +1320,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-1202, /* 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 */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1582,24 +1337,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType, /* E: nullable HashMapNode[MClassDef, HashSet[MType]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClassDef, HashSet[MType]]] */
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MPropDef, /* HashMap[K, V]: HashMap[MClass, Array[nullable MPropDef]] */
+&type_core__Array__core__Array__nullable__nitc__MPropDef, /* Array[E]: Array[Array[nullable MPropDef]] */
+&type_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MPropDef, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Array[nullable MPropDef]] */
 }
 };
-/* runtime type HashMapIterator[MClassDef, HashSet[MType]] */
-const struct type type_standard__HashMapIterator__nit__MClassDef__standard__HashSet__nit__MType = {
+/* runtime type HashMapIterator[MClass, Array[nullable MPropDef]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
 -1, /*CAST DEAD*/
-"HashMapIterator[MClassDef, HashSet[MType]]", /* class_name_string */
+"HashMapIterator[MClass, Array[nullable MPropDef]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__nit__MClassDef__standard__HashSet__nit__MType,
-77,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MPropDef,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1616,10 +1373,10 @@ const struct type type_standard__HashMapIterator__nit__MClassDef__standard__Hash
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2562, /* MapIterator[MClassDef, HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2672, /* MapIterator[MClass, Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1654,6 +1411,7 @@ const struct type type_standard__HashMapIterator__nit__MClassDef__standard__Hash
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1677,23 +1435,24 @@ const struct type type_standard__HashMapIterator__nit__MClassDef__standard__Hash
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__HashMapIterator__nit__MClassDef__standard__HashSet__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClassDef__standard__HashSet__nit__MType, /* HashMap[K, V]: HashMap[MClassDef, HashSet[MType]] */
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MPropDef, /* HashMap[K, V]: HashMap[MClass, Array[nullable MPropDef]] */
 }
 };
-/* runtime type HashMapNode[MClassDef, HashSet[MType]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType = {
-1204,
-"HashMapNode[MClassDef, HashSet[MType]]", /* class_name_string */
-91,
+/* runtime type HashMapNode[MClass, Array[nullable MPropDef]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
+1285,
+"HashMapNode[MClass, Array[nullable MPropDef]]", /* class_name_string */
+97,
 0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType,
-148,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef,
+152,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1710,10 +1469,10 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassDef__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2236, /* nullable HashMapNode[MClassDef, HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2760, /* nullable HashMapNode[MClass, Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1746,6 +1505,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassDef__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1783,11 +1543,11 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassDef__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1204, /* HashMapNode[MClassDef, HashSet[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1285, /* HashMapNode[MClass, Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1820,6 +1580,8 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassDef__s
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1842,24 +1604,24 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassDef__s
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClassDef__standard__HashSet__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
 0, /* dummy */
 {
-&type_standard__HashSet__nit__MType, /* V: HashSet[MType] */
-&type_nit__MClassDef, /* K: MClassDef */
+&type_core__Array__nullable__nitc__MPropDef, /* V: Array[nullable MPropDef] */
+&type_nitc__MClass, /* K: MClass */
 }
 };
-/* runtime type HashMapKeys[MClass, Int] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClass, Int]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
+1286,
+"NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]]", /* class_name_string */
+159,
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Int,
-124,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1870,7 +1632,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1894,11 +1655,9 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2341, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1974,6 +1733,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1982,30 +1742,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Int, /* HashMap[K, V]: HashMap[MClass, Int] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapKeysIterator__nit__MClass__standard__Int, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Int] */
-}
-};
-/* runtime type HashMapValues[MClass, Int] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClass__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Int,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-2147, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2037,11 +1775,11 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1286, /* NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2084,6 +1822,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2107,6 +1846,38 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef, /* E: nullable HashMapNode[MClass, Array[nullable MPropDef]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MPropDef, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
+}
+};
+/* runtime type HashMapKeys[MClass, Array[nullable MProperty]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MProperty = {
+-1, /*CAST DEAD*/
+"HashMapKeys[MClass, Array[nullable MProperty]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MProperty,
+129,
+{
+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 */
+2409, /* Collection[MClass] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2125,34 +1896,15 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Int, /* HashMap[K, V]: HashMap[MClass, Int] */
-&type_standard__Array__standard__Int, /* Array[E]: Array[Int] */
-&type_standard__MapValuesIterator__nit__MClass__standard__Int, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Int] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClass, Int]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Int = {
-1207,
-"NativeArray[nullable HashMapNode[MClass, Int]]", /* class_name_string */
-150,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Int,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2437, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2226,6 +1978,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2240,6 +1993,28 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__Array__nullable__nitc__MProperty = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MProperty, /* HashMap[K, V]: HashMap[MClass, Array[nullable MProperty]] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapKeysIterator__nitc__MClass__core__Array__nullable__nitc__MProperty, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Array[nullable MProperty]] */
+}
+};
+/* runtime type HashMapValues[MClass, Array[nullable MProperty]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MProperty = {
+-1, /*CAST DEAD*/
+"HashMapValues[MClass, Array[nullable MProperty]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MProperty,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2273,6 +2048,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2294,7 +2070,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1207, /* NativeArray[nullable HashMapNode[MClass, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2331,6 +2106,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2491, /* Collection[Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2350,6 +2126,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2365,24 +2143,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Int = {
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__Array__nullable__nitc__MProperty = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Int, /* E: nullable HashMapNode[MClass, Int] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Int]] */
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MProperty, /* HashMap[K, V]: HashMap[MClass, Array[nullable MProperty]] */
+&type_core__Array__core__Array__nullable__nitc__MProperty, /* Array[E]: Array[Array[nullable MProperty]] */
+&type_core__MapValuesIterator__nitc__MClass__core__Array__nullable__nitc__MProperty, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Array[nullable MProperty]] */
 }
 };
-/* runtime type HashMapIterator[MClass, Int] */
-const struct type type_standard__HashMapIterator__nit__MClass__standard__Int = {
+/* runtime type HashMapIterator[MClass, Array[nullable MProperty]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MProperty = {
 -1, /*CAST DEAD*/
-"HashMapIterator[MClass, Int]", /* class_name_string */
+"HashMapIterator[MClass, Array[nullable MProperty]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__nit__MClass__standard__Int,
-77,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MProperty,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2400,10 +2180,10 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2563, /* MapIterator[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2673, /* MapIterator[MClass, Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2437,6 +2217,7 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Int = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2460,23 +2241,23 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Int = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__HashMapIterator__nit__MClass__standard__Int = {
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__Array__nullable__nitc__MProperty = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClass__standard__Int, /* HashMap[K, V]: HashMap[MClass, Int] */
+&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MProperty, /* HashMap[K, V]: HashMap[MClass, Array[nullable MProperty]] */
 }
 };
-/* runtime type HashMapNode[MClass, Int] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClass__standard__Int = {
-1209,
-"HashMapNode[MClass, Int]", /* class_name_string */
-92,
+/* runtime type HashMapNode[MClass, Array[nullable MProperty]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty = {
+1290,
+"HashMapNode[MClass, Array[nullable MProperty]]", /* class_name_string */
+98,
 0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Int,
-148,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty,
+152,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2494,11 +2275,11 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2237, /* nullable HashMapNode[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2761, /* nullable HashMapNode[MClass, Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2530,6 +2311,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2567,12 +2349,12 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1209, /* HashMapNode[MClass, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1290, /* HashMapNode[MClass, Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2604,6 +2386,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2623,49 +2406,28 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Int = {
-0, /* dummy */
-{
-&type_standard__Int, /* V: Int */
-&type_nit__MClass, /* K: MClass */
-}
-};
-/* runtime type HashSetIterator[Object] */
-const struct type type_standard__hash_collection__HashSetIterator__standard__Object = {
--1, /*CAST DEAD*/
-"HashSetIterator[Object]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashSetIterator__standard__Object,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashSetIterator__standard__Object = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty = {
 0, /* dummy */
 {
-&type_standard__Array__standard__Object, /* Array[E]: Array[Object] */
-&type_standard__HashSet__standard__Object, /* HashSet[E]: HashSet[Object] */
+&type_core__Array__nullable__nitc__MProperty, /* V: Array[nullable MProperty] */
+&type_nitc__MClass, /* K: MClass */
 }
 };
-/* runtime type NativeArray[nullable HashSetNode[Object]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__standard__Object = {
-1211,
-"NativeArray[nullable HashSetNode[Object]]", /* class_name_string */
-151,
+/* runtime type NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty = {
+1291,
+"NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]]", /* class_name_string */
+160,
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__standard__Object,
-219,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2777,6 +2539,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2815,7 +2578,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1211, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2824,6 +2586,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1291, /* NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2865,6 +2628,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2883,67 +2647,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__standard__Object = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashSetNode__standard__Object, /* E: nullable HashSetNode[Object] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashSetNode__standard__Object, /* NativeArray[E]: NativeArray[nullable HashSetNode[Object]] */
-}
-};
-/* runtime type HashSetNode[Object] */
-const struct type type_standard__hash_collection__HashSetNode__standard__Object = {
-1212,
-"HashSetNode[Object]", /* class_name_string */
-35,
-0,
-&resolution_table_standard__hash_collection__HashSetNode__standard__Object,
-48,
-{
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-2238, /* nullable HashSetNode[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 */
-1212, /* HashSetNode[Object] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2951,26 +2654,28 @@ const struct type type_standard__hash_collection__HashSetNode__standard__Object
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashSetNode__standard__Object = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty = {
 0, /* dummy */
 {
-NULL, /* empty */
-&type_standard__Object, /* K: Object */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty, /* E: nullable HashMapNode[MClass, Array[nullable MProperty]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Array__nullable__nitc__MProperty, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]] */
 }
 };
-/* runtime type HashMapKeys[MType, Array[nullable MType]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MType__standard__Array__nullable__nit__MType = {
+/* runtime type HashMapKeys[String, String] */
+const struct type type_core__hash_collection__HashMapKeys__core__String__core__String = {
 -1, /*CAST DEAD*/
-"HashMapKeys[MType, Array[nullable MType]]", /* class_name_string */
+"HashMapKeys[String, String]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MType__standard__Array__nullable__nit__MType,
-124,
+&resolution_table_core__hash_collection__HashMapKeys__core__String__core__String,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2402, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2995,19 +2700,19 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2329, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2439, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3015,7 +2720,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2349, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3080,6 +2784,10 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3093,27 +2801,29 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__stand
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MType__standard__Array__nullable__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__core__String__core__String = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MType__standard__Array__nullable__nit__MType, /* HashMap[K, V]: HashMap[MType, Array[nullable MType]] */
-&type_standard__Array__nit__MType, /* Array[E]: Array[MType] */
-&type_standard__MapKeysIterator__nit__MType__standard__Array__nullable__nit__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MType, Array[nullable MType]] */
+&type_core__HashMap__core__String__core__String, /* HashMap[K, V]: HashMap[String, String] */
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__MapKeysIterator__core__String__core__String, /* MapKeysIterator[K, V]: MapKeysIterator[String, String] */
 }
 };
-/* runtime type HashMapValues[MType, Array[nullable MType]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MType__standard__Array__nullable__nit__MType = {
+/* runtime type HashMapValues[String, String] */
+const struct type type_core__hash_collection__HashMapValues__core__String__core__String = {
 -1, /*CAST DEAD*/
-"HashMapValues[MType, Array[nullable MType]]", /* class_name_string */
+"HashMapValues[String, String]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MType__standard__Array__nullable__nit__MType,
-124,
+&resolution_table_core__hash_collection__HashMapValues__core__String__core__String,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2402, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3144,12 +2854,13 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MType__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2439, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3198,7 +2909,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MType__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2389, /* Collection[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3222,6 +2932,9 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MType__sta
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3236,25 +2949,26 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MType__sta
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MType__standard__Array__nullable__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapValues__core__String__core__String = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MType__standard__Array__nullable__nit__MType, /* HashMap[K, V]: HashMap[MType, Array[nullable MType]] */
-&type_standard__Array__standard__Array__nullable__nit__MType, /* Array[E]: Array[Array[nullable MType]] */
-&type_standard__MapValuesIterator__nit__MType__standard__Array__nullable__nit__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MType, Array[nullable MType]] */
+&type_core__HashMap__core__String__core__String, /* HashMap[K, V]: HashMap[String, String] */
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__MapValuesIterator__core__String__core__String, /* MapValuesIterator[K, V]: MapValuesIterator[String, String] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType = {
-1215,
-"NativeArray[nullable HashMapNode[MType, Array[nullable MType]]]", /* class_name_string */
-152,
+/* runtime type HashMapIterator[String, String] */
+const struct type type_core__hash_collection__HashMapIterator__core__String__core__String = {
+-1, /*CAST DEAD*/
+"HashMapIterator[String, String]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType,
-219,
+&resolution_table_core__hash_collection__HashMapIterator__core__String__core__String,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3276,12 +2990,14 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2674, /* MapIterator[String, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2681, /* MapIterator[Object, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3307,6 +3023,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3328,6 +3045,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__core__String__core__String = {
+0, /* dummy */
+{
+&type_core__HashMap__core__String__core__String, /* HashMap[K, V]: HashMap[String, String] */
+}
+};
+/* runtime type HashMapNode[String, String] */
+const struct type type_core__hash_collection__HashMapNode__core__String__core__String = {
+1295,
+"HashMapNode[String, String]", /* class_name_string */
+99,
+0,
+&resolution_table_core__hash_collection__HashMapNode__core__String__core__String,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3349,11 +3086,13 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2762, /* nullable HashMapNode[String, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2770, /* nullable HashMapNode[Object, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3378,6 +3117,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3405,7 +3145,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1215, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3422,11 +3161,13 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1295, /* HashMapNode[String, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1363, /* HashMapNode[Object, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3451,6 +3192,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3474,24 +3216,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapNode__core__String__core__String = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType, /* E: nullable HashMapNode[MType, Array[nullable MType]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
+&type_core__String, /* V: String */
+&type_core__String, /* K: String */
 }
 };
-/* runtime type HashMapIterator[MType, Array[nullable MType]] */
-const struct type type_standard__HashMapIterator__nit__MType__standard__Array__nullable__nit__MType = {
--1, /*CAST DEAD*/
-"HashMapIterator[MType, Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[String, String]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__String__core__String = {
+1296,
+"NativeArray[nullable HashMapNode[String, String]]", /* class_name_string */
+161,
 0,
-&resolution_table_standard__HashMapIterator__nit__MType__standard__Array__nullable__nit__MType,
-77,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__String__core__String,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3510,7 +3254,6 @@ const struct type type_standard__HashMapIterator__nit__MType__standard__Array__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2564, /* MapIterator[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3567,25 +3310,6 @@ const struct type type_standard__HashMapIterator__nit__MType__standard__Array__n
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MType__standard__Array__nullable__nit__MType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MType__standard__Array__nullable__nit__MType, /* HashMap[K, V]: HashMap[MType, Array[nullable MType]] */
-}
-};
-/* runtime type HashMapNode[MType, Array[nullable MType]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType = {
-1217,
-"HashMapNode[MType, Array[nullable MType]]", /* class_name_string */
-93,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3604,7 +3328,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2239, /* nullable HashMapNode[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3622,6 +3345,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3669,6 +3393,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1296, /* NativeArray[nullable HashMapNode[String, String]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3676,8 +3401,8 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1364, /* NativeArray[nullable HashMapNode[Object, String]] */
 -1, /* empty */
-1217, /* HashMapNode[MType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3709,6 +3434,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__stand
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3734,30 +3460,24 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__stand
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nullable__nit__MType = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__String__core__String = {
 0, /* dummy */
 {
-&type_standard__Array__nullable__nit__MType, /* V: Array[nullable MType] */
-&type_nit__MType, /* K: MType */
+&type_nullable__core__hash_collection__HashMapNode__core__String__core__String, /* E: nullable HashMapNode[String, String] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__String__core__String, /* NativeArray[E]: NativeArray[nullable HashMapNode[String, String]] */
 }
 };
-/* runtime type HashMapKeys[MClassType, Array[nullable MType]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClassType__standard__Array__nullable__nit__MType = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClassType, Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Array[CodeFile] */
+const struct type type_core__Array__nitc__CodeFile = {
+1297,
+"Array[CodeFile]", /* class_name_string */
+445,
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClassType__standard__Array__nullable__nit__MType,
-124,
+&resolution_table_core__Array__nitc__CodeFile,
+510,
 {
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3769,7 +3489,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2320, /* Collection[MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3778,7 +3497,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2329, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3786,7 +3504,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3795,10 +3512,10 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2349, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3819,6 +3536,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2457, /* Collection[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3872,40 +3590,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
--1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClassType__standard__Array__nullable__nit__MType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClassType__standard__Array__nullable__nit__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
-&type_standard__Array__nit__MClassType, /* Array[E]: Array[MClassType] */
-&type_standard__MapKeysIterator__nit__MClassType__standard__Array__nullable__nit__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MClassType, Array[nullable MType]] */
-}
-};
-/* runtime type HashMapValues[MClassType, Array[nullable MType]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClassType__standard__Array__nullable__nit__MType = {
--1, /*CAST DEAD*/
-"HashMapValues[MClassType, Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClassType__standard__Array__nullable__nit__MType,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3920,6 +3605,8 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3929,7 +3616,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3953,6 +3639,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3978,10 +3665,10 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2583, /* AbstractArrayRead[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2389, /* Collection[Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4017,27 +3704,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClassType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClassType__standard__Array__nullable__nit__MType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClassType__standard__Array__nullable__nit__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
-&type_standard__Array__standard__Array__nullable__nit__MType, /* Array[E]: Array[Array[nullable MType]] */
-&type_standard__MapValuesIterator__nit__MClassType__standard__Array__nullable__nit__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MClassType, Array[nullable MType]] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType = {
-1220,
-"NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]]", /* class_name_string */
-153,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4053,6 +3719,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4098,6 +3765,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4123,6 +3791,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2907, /* AbstractArray[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4176,6 +3845,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4188,10 +3858,9 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1215, /* NativeArray[nullable HashMapNode[MType, Array[nullable MType]]] */
-1220, /* NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4252,29 +3921,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1297, /* Array[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType, /* E: nullable HashMapNode[MClassType, Array[nullable MType]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClassType, Array[nullable MType]]] */
-}
-};
-/* runtime type HashMapIterator[MClassType, Array[nullable MType]] */
-const struct type type_standard__HashMapIterator__nit__MClassType__standard__Array__nullable__nit__MType = {
--1, /*CAST DEAD*/
-"HashMapIterator[MClassType, Array[nullable MType]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__HashMapIterator__nit__MClassType__standard__Array__nullable__nit__MType,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4293,8 +3943,6 @@ const struct type type_standard__HashMapIterator__nit__MClassType__standard__Arr
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2564, /* MapIterator[MType, Array[nullable MType]] */
-2565, /* MapIterator[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4338,6 +3986,39 @@ const struct type type_standard__HashMapIterator__nit__MClassType__standard__Arr
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__nitc__CodeFile = {
+0, /* dummy */
+{
+&type_nitc__CodeFile, /* E: CodeFile */
+&type_core__Array__nitc__CodeFile, /* Array[E]: Array[CodeFile] */
+&type_core__Collection__nitc__CodeFile, /* Collection[E]: Collection[CodeFile] */
+&type_core__Array__nitc__CodeFile, /* Array[E]: Array[CodeFile] */
+&type_core__AbstractArray__nitc__CodeFile, /* AbstractArray[E]: AbstractArray[CodeFile] */
+&type_core__NativeArray__nitc__CodeFile, /* NativeArray[E]: NativeArray[CodeFile] */
+&type_nitc__CodeFile, /* E: CodeFile */
+&type_core__Collection__nitc__CodeFile, /* Collection[E]: Collection[CodeFile] */
+&type_nitc__CodeFile, /* E: CodeFile */
+&type_core__Collection__nitc__CodeFile, /* Collection[E]: Collection[CodeFile] */
+&type_core__Collection__nitc__CodeFile, /* Collection[E]: Collection[CodeFile] */
+&type_core__Array__nitc__CodeFile, /* Array[E]: Array[CodeFile] */
+&type_core__AbstractArray__nitc__CodeFile, /* AbstractArray[E]: AbstractArray[CodeFile] */
+&type_core__array__ArrayIterator__nitc__CodeFile, /* ArrayIterator[E]: ArrayIterator[CodeFile] */
+&type_core__array__ArrayReverseIterator__nitc__CodeFile, /* ArrayReverseIterator[E]: ArrayReverseIterator[CodeFile] */
+}
+};
+/* runtime type ListNode[CodeFile] */
+const struct type type_core__list__ListNode__nitc__CodeFile = {
+1298,
+"ListNode[CodeFile]", /* class_name_string */
+141,
+0,
+&resolution_table_core__list__ListNode__nitc__CodeFile,
+146,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4350,25 +4031,6 @@ const struct type type_standard__HashMapIterator__nit__MClassType__standard__Arr
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MClassType__standard__Array__nullable__nit__MType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClassType__standard__Array__nullable__nit__MType, /* HashMap[K, V]: HashMap[MClassType, Array[nullable MType]] */
-}
-};
-/* runtime type HashMapNode[MClassType, Array[nullable MType]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType = {
-1222,
-"HashMapNode[MClassType, Array[nullable MType]]", /* class_name_string */
-94,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4387,12 +4049,11 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2239, /* nullable HashMapNode[MType, Array[nullable MType]] */
-2240, /* nullable HashMapNode[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4416,6 +4077,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2457, /* Collection[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4460,8 +4122,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1217, /* HashMapNode[MType, Array[nullable MType]] */
-1222, /* HashMapNode[MClassType, Array[nullable MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4471,6 +4131,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4485,20 +4146,46 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2845, /* Ref[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2835, /* nullable ListNode[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1298, /* ListNode[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__list__ListNode__nitc__CodeFile = {
+0, /* dummy */
+{
+&type_nullable__core__list__ListNode__nitc__CodeFile, /* nullable ListNode[E]: nullable ListNode[CodeFile] */
+&type_core__Array__nitc__CodeFile, /* Array[E]: Array[CodeFile] */
+&type_core__abstract_collection__RefIterator__nitc__CodeFile, /* RefIterator[E]: RefIterator[CodeFile] */
+&type_nitc__CodeFile, /* E: CodeFile */
+}
+};
+/* runtime type ListIterator[CodeFile] */
+const struct type type_core__ListIterator__nitc__CodeFile = {
+-1, /*CAST DEAD*/
+"ListIterator[CodeFile]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__ListIterator__nitc__CodeFile,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4507,6 +4194,27 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__ListIterator__nitc__CodeFile = {
+0, /* dummy */
+{
+&type_core__Array__nitc__CodeFile, /* Array[E]: Array[CodeFile] */
+&type_core__List__nitc__CodeFile, /* List[E]: List[CodeFile] */
+}
+};
+/* runtime type ListReverseIterator[CodeFile] */
+const struct type type_core__list__ListReverseIterator__nitc__CodeFile = {
+-1, /*CAST DEAD*/
+"ListReverseIterator[CodeFile]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__list__ListReverseIterator__nitc__CodeFile,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4517,24 +4225,28 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClassType__
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClassType__standard__Array__nullable__nit__MType = {
+const struct types resolution_table_core__list__ListReverseIterator__nitc__CodeFile = {
 0, /* dummy */
 {
-&type_standard__Array__nullable__nit__MType, /* V: Array[nullable MType] */
-&type_nit__MClassType, /* K: MClassType */
+&type_core__Array__nitc__CodeFile, /* Array[E]: Array[CodeFile] */
+&type_core__List__nitc__CodeFile, /* List[E]: List[CodeFile] */
 }
 };
-/* runtime type HashMapKeys[MClass, Array[nullable MPropDef]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__standard__Array__nullable__nit__MPropDef = {
+/* runtime type HashMapKeys[String, ANode] */
+const struct type type_core__hash_collection__HashMapKeys__core__String__nitc__ANode = {
 -1, /*CAST DEAD*/
-"HashMapKeys[MClass, Array[nullable MPropDef]]", /* class_name_string */
+"HashMapKeys[String, ANode]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Array__nullable__nit__MPropDef,
-124,
+&resolution_table_core__hash_collection__HashMapKeys__core__String__nitc__ANode,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2402, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4545,7 +4257,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4566,14 +4277,14 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
+2439, /* Collection[Writable] */
 -1, /* empty */
-2341, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4644,6 +4355,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4659,25 +4372,28 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Array__nullable__nit__MPropDef = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__core__String__nitc__ANode = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClass__standard__Array__nullable__nit__MPropDef, /* HashMap[K, V]: HashMap[MClass, Array[nullable MPropDef]] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapKeysIterator__nit__MClass__standard__Array__nullable__nit__MPropDef, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Array[nullable MPropDef]] */
+&type_core__HashMap__core__String__nitc__ANode, /* HashMap[K, V]: HashMap[String, ANode] */
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__MapKeysIterator__core__String__nitc__ANode, /* MapKeysIterator[K, V]: MapKeysIterator[String, ANode] */
 }
 };
-/* runtime type HashMapValues[MClass, Array[nullable MPropDef]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClass__standard__Array__nullable__nit__MPropDef = {
+/* runtime type HashMapValues[String, ANode] */
+const struct type type_core__hash_collection__HashMapValues__core__String__nitc__ANode = {
 -1, /*CAST DEAD*/
-"HashMapValues[MClass, Array[nullable MPropDef]]", /* class_name_string */
+"HashMapValues[String, ANode]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Array__nullable__nit__MPropDef,
-124,
+&resolution_table_core__hash_collection__HashMapValues__core__String__nitc__ANode,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4709,10 +4425,10 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4736,6 +4452,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2460, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4765,7 +4482,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2390, /* Collection[Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4787,6 +4503,8 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4802,25 +4520,26 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Array__nullable__nit__MPropDef = {
+const struct types resolution_table_core__hash_collection__HashMapValues__core__String__nitc__ANode = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClass__standard__Array__nullable__nit__MPropDef, /* HashMap[K, V]: HashMap[MClass, Array[nullable MPropDef]] */
-&type_standard__Array__standard__Array__nullable__nit__MPropDef, /* Array[E]: Array[Array[nullable MPropDef]] */
-&type_standard__MapValuesIterator__nit__MClass__standard__Array__nullable__nit__MPropDef, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Array[nullable MPropDef]] */
+&type_core__HashMap__core__String__nitc__ANode, /* HashMap[K, V]: HashMap[String, ANode] */
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__MapValuesIterator__core__String__nitc__ANode, /* MapValuesIterator[K, V]: MapValuesIterator[String, ANode] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef = {
-1225,
-"NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]]", /* class_name_string */
-154,
+/* runtime type HashMapIterator[String, ANode] */
+const struct type type_core__hash_collection__HashMapIterator__core__String__nitc__ANode = {
+-1, /*CAST DEAD*/
+"HashMapIterator[String, ANode]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef,
-219,
+&resolution_table_core__hash_collection__HashMapIterator__core__String__nitc__ANode,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4843,6 +4562,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2675, /* MapIterator[String, ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4874,6 +4594,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4895,6 +4616,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__core__String__nitc__ANode = {
+0, /* dummy */
+{
+&type_core__HashMap__core__String__nitc__ANode, /* HashMap[K, V]: HashMap[String, ANode] */
+}
+};
+/* runtime type HashMapNode[String, ANode] */
+const struct type type_core__hash_collection__HashMapNode__core__String__nitc__ANode = {
+1304,
+"HashMapNode[String, ANode]", /* class_name_string */
+100,
+0,
+&resolution_table_core__hash_collection__HashMapNode__core__String__nitc__ANode,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4917,6 +4658,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2763, /* nullable HashMapNode[String, ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4946,6 +4688,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4973,7 +4716,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1225, /* NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4991,6 +4733,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1304, /* HashMapNode[String, ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5020,6 +4763,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5040,24 +4787,25 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef = {
+const struct types resolution_table_core__hash_collection__HashMapNode__core__String__nitc__ANode = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef, /* E: nullable HashMapNode[MClass, Array[nullable MPropDef]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Array[nullable MPropDef]]] */
+&type_nitc__ANode, /* V: ANode */
+&type_core__String, /* K: String */
 }
 };
-/* runtime type HashMapIterator[MClass, Array[nullable MPropDef]] */
-const struct type type_standard__HashMapIterator__nit__MClass__standard__Array__nullable__nit__MPropDef = {
--1, /*CAST DEAD*/
-"HashMapIterator[MClass, Array[nullable MPropDef]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[String, ANode]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__String__nitc__ANode = {
+1305,
+"NativeArray[nullable HashMapNode[String, ANode]]", /* class_name_string */
+162,
 0,
-&resolution_table_standard__HashMapIterator__nit__MClass__standard__Array__nullable__nit__MPropDef,
-77,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__String__nitc__ANode,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5078,7 +4826,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Array__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2566, /* MapIterator[MClass, Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5133,25 +4880,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Array__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MClass__standard__Array__nullable__nit__MPropDef = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Array__nullable__nit__MPropDef, /* HashMap[K, V]: HashMap[MClass, Array[nullable MPropDef]] */
-}
-};
-/* runtime type HashMapNode[MClass, Array[nullable MPropDef]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef = {
-1227,
-"HashMapNode[MClass, Array[nullable MPropDef]]", /* class_name_string */
-95,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5172,7 +4900,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2241, /* nullable HashMapNode[MClass, Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5189,6 +4916,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5237,6 +4965,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1305, /* NativeArray[nullable HashMapNode[String, ANode]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5245,7 +4974,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1227, /* HashMapNode[MClass, Array[nullable MPropDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5277,13 +5005,103 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-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__core__String__nitc__ANode = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashMapNode__core__String__nitc__ANode, /* E: nullable HashMapNode[String, ANode] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__String__nitc__ANode, /* NativeArray[E]: NativeArray[nullable HashMapNode[String, ANode]] */
+}
+};
+/* runtime type ArraySetIterator[String] */
+const struct type type_core__array__ArraySetIterator__core__String = {
+-1, /*CAST DEAD*/
+"ArraySetIterator[String]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArraySetIterator__core__String,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+2828, /* Iterator[String] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArraySetIterator__core__String = {
+0, /* dummy */
+{
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__Iterator__core__String, /* Iterator[E]: Iterator[String] */
+}
+};
+/* runtime type NativeArray[MNullableType] */
+const struct type type_core__NativeArray__nitc__MNullableType = {
+1307,
+"NativeArray[MNullableType]", /* class_name_string */
+22,
+0,
+&resolution_table_core__NativeArray__nitc__MNullableType,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1307, /* NativeArray[MNullableType] */
 -1, /* empty */
 -1, /* empty */
+1333, /* NativeArray[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5291,6 +5109,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5298,29 +5117,10 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MPropDef = {
-0, /* dummy */
-{
-&type_standard__Array__nullable__nit__MPropDef, /* V: Array[nullable MPropDef] */
-&type_nit__MClass, /* K: MClass */
-}
-};
-/* runtime type HashMapKeys[MClass, Array[nullable MProperty]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__standard__Array__nullable__nit__MProperty = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClass, Array[nullable MProperty]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Array__nullable__nit__MProperty,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1538, /* NativeArray[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5328,7 +5128,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5352,11 +5151,9 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2341, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5392,6 +5189,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5440,27 +5238,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__Array__nullable__nit__MProperty = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Array__nullable__nit__MProperty, /* HashMap[K, V]: HashMap[MClass, Array[nullable MProperty]] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapKeysIterator__nit__MClass__standard__Array__nullable__nit__MProperty, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, Array[nullable MProperty]] */
-}
-};
-/* runtime type HashMapValues[MClass, Array[nullable MProperty]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClass__standard__Array__nullable__nit__MProperty = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, Array[nullable MProperty]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Array__nullable__nit__MProperty,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5495,7 +5272,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5526,20 +5302,84 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__MNullableType = {
+0, /* dummy */
+{
+&type_nitc__MNullableType, /* E: MNullableType */
+&type_core__NativeArray__nitc__MNullableType, /* NativeArray[E]: NativeArray[MNullableType] */
+}
+};
+/* runtime type ArrayIterator[MNullableType] */
+const struct type type_core__array__ArrayIterator__nitc__MNullableType = {
+-1, /*CAST DEAD*/
+"ArrayIterator[MNullableType]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__MNullableType,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2831, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__MNullableType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MNullableType, /* Array[E]: Array[MNullableType] */
+&type_core__AbstractArrayRead__nitc__MNullableType, /* AbstractArrayRead[E]: AbstractArrayRead[MNullableType] */
+}
+};
+/* runtime type ArrayReverseIterator[MNullableType] */
+const struct type type_core__array__ArrayReverseIterator__nitc__MNullableType = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[MNullableType]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__MNullableType,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2831, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MNullableType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MNullableType, /* Array[E]: Array[MNullableType] */
+&type_core__AbstractArrayRead__nitc__MNullableType, /* AbstractArrayRead[E]: AbstractArrayRead[MNullableType] */
+}
+};
+/* runtime type NativeArray[Match] */
+const struct type type_core__NativeArray__core__Match = {
+1310,
+"NativeArray[Match]", /* class_name_string */
+23,
+0,
+&resolution_table_core__NativeArray__core__Match,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5549,7 +5389,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2391, /* Collection[Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5562,6 +5401,8 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1310, /* NativeArray[Match] */
+1313, /* NativeArray[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5570,6 +5411,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5583,27 +5425,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__Array__nullable__nit__MProperty = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Array__nullable__nit__MProperty, /* HashMap[K, V]: HashMap[MClass, Array[nullable MProperty]] */
-&type_standard__Array__standard__Array__nullable__nit__MProperty, /* Array[E]: Array[Array[nullable MProperty]] */
-&type_standard__MapValuesIterator__nit__MClass__standard__Array__nullable__nit__MProperty, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, Array[nullable MProperty]] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty = {
-1230,
-"NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]]", /* class_name_string */
-155,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5670,6 +5491,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5757,7 +5579,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1230, /* NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5783,6 +5604,27 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__core__Match = {
+0, /* dummy */
+{
+&type_core__Match, /* E: Match */
+&type_core__NativeArray__core__Match, /* NativeArray[E]: NativeArray[Match] */
+}
+};
+/* runtime type ArrayIterator[Match] */
+const struct type type_core__array__ArrayIterator__core__Match = {
+-1, /*CAST DEAD*/
+"ArrayIterator[Match]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__core__Match,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5791,6 +5633,27 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__core__Match = {
+0, /* dummy */
+{
+&type_core__Array__core__Match, /* Array[E]: Array[Match] */
+&type_core__AbstractArrayRead__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[Match] */
+}
+};
+/* runtime type ArrayReverseIterator[Match] */
+const struct type type_core__array__ArrayReverseIterator__core__Match = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[Match]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__core__Match,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5799,6 +5662,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__core__Match = {
+0, /* dummy */
+{
+&type_core__Array__core__Match, /* Array[E]: Array[Match] */
+&type_core__AbstractArrayRead__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[Match] */
+}
+};
+/* runtime type NativeArray[nullable Match] */
+const struct type type_core__NativeArray__nullable__core__Match = {
+1313,
+"NativeArray[nullable Match]", /* class_name_string */
+24,
+0,
+&resolution_table_core__NativeArray__nullable__core__Match,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5821,26 +5704,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty, /* E: nullable HashMapNode[MClass, Array[nullable MProperty]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, Array[nullable MProperty]]] */
-}
-};
-/* runtime type HashMapIterator[MClass, Array[nullable MProperty]] */
-const struct type type_standard__HashMapIterator__nit__MClass__standard__Array__nullable__nit__MProperty = {
--1, /*CAST DEAD*/
-"HashMapIterator[MClass, Array[nullable MProperty]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__HashMapIterator__nit__MClass__standard__Array__nullable__nit__MProperty,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
+1313, /* NativeArray[nullable Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5862,7 +5726,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Array__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2567, /* MapIterator[MClass, Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5916,25 +5779,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__Array__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MClass__standard__Array__nullable__nit__MProperty = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__Array__nullable__nit__MProperty, /* HashMap[K, V]: HashMap[MClass, Array[nullable MProperty]] */
-}
-};
-/* runtime type HashMapNode[MClass, Array[nullable MProperty]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty = {
-1232,
-"HashMapNode[MClass, Array[nullable MProperty]]", /* class_name_string */
-96,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5949,6 +5793,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5956,7 +5801,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2242, /* nullable HashMapNode[MClass, Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6029,7 +5873,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1232, /* HashMapNode[MClass, Array[nullable MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6063,6 +5906,26 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__Match = {
+0, /* dummy */
+{
+&type_nullable__core__Match, /* E: nullable Match */
+&type_core__NativeArray__nullable__core__Match, /* NativeArray[E]: NativeArray[nullable Match] */
+}
+};
+/* runtime type ArrayIterator[nullable Match] */
+const struct type type_core__array__ArrayIterator__nullable__core__Match = {
+-1, /*CAST DEAD*/
+"ArrayIterator[nullable Match]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nullable__core__Match,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6072,6 +5935,26 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nullable__core__Match = {
+0, /* dummy */
+{
+&type_core__Array__nullable__core__Match, /* Array[E]: Array[nullable Match] */
+&type_core__AbstractArrayRead__nullable__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[nullable Match] */
+}
+};
+/* runtime type ArrayReverseIterator[nullable Match] */
+const struct type type_core__array__ArrayReverseIterator__nullable__core__Match = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[nullable Match]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nullable__core__Match,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6083,34 +5966,35 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__Array__nullable__nit__MProperty = {
+const struct types resolution_table_core__array__ArrayReverseIterator__nullable__core__Match = {
 0, /* dummy */
 {
-&type_standard__Array__nullable__nit__MProperty, /* V: Array[nullable MProperty] */
-&type_nit__MClass, /* K: MClass */
+&type_core__Array__nullable__core__Match, /* Array[E]: Array[nullable Match] */
+&type_core__AbstractArrayRead__nullable__core__Match, /* AbstractArrayRead[E]: AbstractArrayRead[nullable Match] */
 }
 };
-/* runtime type HashMapKeys[String, String] */
-const struct type type_standard__hash_collection__HashMapKeys__standard__String__standard__String = {
+/* runtime type HashMapKeys[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__nitc__MClassType = {
 -1, /*CAST DEAD*/
-"HashMapKeys[String, String]", /* class_name_string */
+"HashMapKeys[MClass, MClassType]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__standard__String__standard__String,
-124,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__nitc__MClassType,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2306, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2409, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6134,14 +6018,14 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
+2437, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6212,6 +6096,10 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6225,29 +6113,31 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapKeys__standard__String__standard__String = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__nitc__MClassType = {
 0, /* dummy */
 {
-&type_standard__HashMap__standard__String__standard__String, /* HashMap[K, V]: HashMap[String, String] */
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__MapKeysIterator__standard__String__standard__String, /* MapKeysIterator[K, V]: MapKeysIterator[String, String] */
+&type_core__HashMap__nitc__MClass__nitc__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapKeysIterator__nitc__MClass__nitc__MClassType, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, MClassType] */
 }
 };
-/* runtime type HashMapValues[String, String] */
-const struct type type_standard__hash_collection__HashMapValues__standard__String__standard__String = {
+/* runtime type HashMapValues[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClass__nitc__MClassType = {
 -1, /*CAST DEAD*/
-"HashMapValues[String, String]", /* class_name_string */
+"HashMapValues[MClass, MClassType]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapValues__standard__String__standard__String,
-124,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__nitc__MClassType,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2306, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6259,6 +6149,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2416, /* Collection[MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6267,6 +6158,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2425, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6274,18 +6166,18 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[Writable] */
 -1, /* empty */
+2444, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6352,6 +6244,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6368,25 +6261,25 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__standard__String__standard__String = {
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__nitc__MClassType = {
 0, /* dummy */
 {
-&type_standard__HashMap__standard__String__standard__String, /* HashMap[K, V]: HashMap[String, String] */
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__MapValuesIterator__standard__String__standard__String, /* MapValuesIterator[K, V]: MapValuesIterator[String, String] */
+&type_core__HashMap__nitc__MClass__nitc__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
+&type_core__Array__nitc__MClassType, /* Array[E]: Array[MClassType] */
+&type_core__MapValuesIterator__nitc__MClass__nitc__MClassType, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, MClassType] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[String, String]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__String = {
-1235,
-"NativeArray[nullable HashMapNode[String, String]]", /* class_name_string */
-156,
+/* runtime type HashMapIterator[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__nitc__MClassType = {
+-1, /*CAST DEAD*/
+"HashMapIterator[MClass, MClassType]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__String,
-219,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__nitc__MClassType,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6411,6 +6304,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2676, /* MapIterator[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6441,6 +6335,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6462,6 +6357,28 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__nitc__MClassType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__nitc__MClassType, /* HashMap[K, V]: HashMap[MClass, MClassType] */
+}
+};
+/* runtime type HashMapNode[MClass, MClassType] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
+1319,
+"HashMapNode[MClass, MClassType]", /* class_name_string */
+101,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6483,6 +6400,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2764, /* nullable HashMapNode[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6511,6 +6429,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6541,7 +6460,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1235, /* NativeArray[nullable HashMapNode[String, String]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6549,7 +6467,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1299, /* NativeArray[nullable HashMapNode[Object, String]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6558,6 +6475,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1319, /* HashMapNode[MClass, MClassType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6586,6 +6504,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6606,24 +6528,26 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__String = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__standard__String__standard__String, /* E: nullable HashMapNode[String, String] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__standard__String, /* NativeArray[E]: NativeArray[nullable HashMapNode[String, String]] */
+&type_nitc__MClassType, /* V: MClassType */
+&type_nitc__MClass, /* K: MClass */
 }
 };
-/* runtime type HashMapIterator[String, String] */
-const struct type type_standard__HashMapIterator__standard__String__standard__String = {
--1, /*CAST DEAD*/
-"HashMapIterator[String, String]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[MClass, MClassType]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
+1320,
+"NativeArray[nullable HashMapNode[MClass, MClassType]]", /* class_name_string */
+163,
 0,
-&resolution_table_standard__HashMapIterator__standard__String__standard__String,
-77,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6646,14 +6570,12 @@ const struct type type_standard__HashMapIterator__standard__String__standard__St
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2568, /* MapIterator[String, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2575, /* MapIterator[Object, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6699,25 +6621,6 @@ const struct type type_standard__HashMapIterator__standard__String__standard__St
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__standard__String__standard__String = {
-0, /* dummy */
-{
-&type_standard__HashMap__standard__String__standard__String, /* HashMap[K, V]: HashMap[String, String] */
-}
-};
-/* runtime type HashMapNode[String, String] */
-const struct type type_standard__hash_collection__HashMapNode__standard__String__standard__String = {
-1237,
-"HashMapNode[String, String]", /* class_name_string */
-97,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__standard__String__standard__String,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6740,13 +6643,11 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2243, /* nullable HashMapNode[String, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2251, /* nullable HashMapNode[Object, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6756,6 +6657,7 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6805,6 +6707,7 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1320, /* NativeArray[nullable HashMapNode[MClass, MClassType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6813,13 +6716,11 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1237, /* HashMapNode[String, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1301, /* HashMapNode[Object, String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6845,6 +6746,11 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -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 */
 -1, /* empty */
@@ -6866,24 +6772,24 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__standard__String__standard__String = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType = {
 0, /* dummy */
 {
-&type_standard__String, /* V: String */
-&type_standard__String, /* K: String */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType, /* E: nullable HashMapNode[MClass, MClassType] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__nitc__MClassType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, MClassType]] */
 }
 };
-/* runtime type Array[CodeFile] */
-const struct type type_standard__Array__nit__CodeFile = {
-1238,
-"Array[CodeFile]", /* class_name_string */
-427,
+/* runtime type ArrayMapKeys[MClass, AType] */
+const struct type type_core__array__ArrayMapKeys__nitc__MClass__nitc__AType = {
+-1, /*CAST DEAD*/
+"ArrayMapKeys[MClass, AType]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__Array__nit__CodeFile,
-490,
+&resolution_table_core__array__ArrayMapKeys__nitc__MClass__nitc__AType,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6894,6 +6800,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2409, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6917,10 +6824,11 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
+2437, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6940,7 +6848,6 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2359, /* Collection[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6995,6 +6902,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7006,14 +6914,31 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayMapKeys__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__ArrayMap__nitc__MClass__nitc__AType, /* ArrayMap[K, E]: ArrayMap[MClass, AType] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_nitc__MClass, /* K: MClass */
+&type_core__MapKeysIterator__nitc__MClass__nitc__AType, /* MapKeysIterator[K, E]: MapKeysIterator[MClass, AType] */
+}
+};
+/* runtime type ArrayMapValues[MClass, AType] */
+const struct type type_core__array__ArrayMapValues__nitc__MClass__nitc__AType = {
+-1, /*CAST DEAD*/
+"ArrayMapValues[MClass, AType]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayMapValues__nitc__MClass__nitc__AType,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7039,7 +6964,6 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7049,12 +6973,14 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2440, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7062,7 +6988,6 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2480, /* AbstractArrayRead[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7075,6 +7000,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2460, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7083,6 +7009,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2469, /* Collection[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7124,6 +7051,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7138,6 +7066,27 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayMapValues__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__ArrayMap__nitc__MClass__nitc__AType, /* ArrayMap[K, E]: ArrayMap[MClass, AType] */
+&type_core__Array__nitc__AType, /* Array[E]: Array[AType] */
+&type_core__MapValuesIterator__nitc__MClass__nitc__AType, /* MapValuesIterator[K, E]: MapValuesIterator[MClass, AType] */
+}
+};
+/* runtime type Array[Couple[MClass, AType]] */
+const struct type type_core__Array__core__Couple__nitc__MClass__nitc__AType = {
+1323,
+"Array[Couple[MClass, AType]]", /* class_name_string */
+446,
+0,
+&resolution_table_core__Array__core__Couple__nitc__MClass__nitc__AType,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7160,7 +7109,6 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7173,6 +7121,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7183,7 +7132,6 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2704, /* AbstractArray[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7198,6 +7146,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2458, /* Collection[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7249,9 +7198,8 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7266,6 +7214,8 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7298,6 +7248,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7309,7 +7260,6 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1238, /* Array[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7325,6 +7275,7 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2584, /* AbstractArrayRead[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7372,42 +7323,12 @@ const struct type type_standard__Array__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Array__nit__CodeFile = {
-0, /* dummy */
-{
-&type_nit__CodeFile, /* E: CodeFile */
-&type_standard__Array__nit__CodeFile, /* Array[E]: Array[CodeFile] */
-&type_standard__Collection__nit__CodeFile, /* Collection[E]: Collection[CodeFile] */
-&type_standard__Array__nit__CodeFile, /* Array[E]: Array[CodeFile] */
-&type_standard__NativeArray__nit__CodeFile, /* NativeArray[E]: NativeArray[CodeFile] */
-&type_nit__CodeFile, /* E: CodeFile */
-&type_standard__Collection__nit__CodeFile, /* Collection[E]: Collection[CodeFile] */
-&type_nit__CodeFile, /* E: CodeFile */
-&type_standard__Collection__nit__CodeFile, /* Collection[E]: Collection[CodeFile] */
-&type_standard__Collection__nit__CodeFile, /* Collection[E]: Collection[CodeFile] */
-&type_standard__Array__nit__CodeFile, /* Array[E]: Array[CodeFile] */
-&type_standard__AbstractArray__nit__CodeFile, /* AbstractArray[E]: AbstractArray[CodeFile] */
-&type_standard__array__ArrayIterator__nit__CodeFile, /* ArrayIterator[E]: ArrayIterator[CodeFile] */
-}
-};
-/* runtime type ListNode[CodeFile] */
-const struct type type_standard__list__ListNode__nit__CodeFile = {
-1239,
-"ListNode[CodeFile]", /* class_name_string */
-138,
-0,
-&resolution_table_standard__list__ListNode__nit__CodeFile,
-144,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7437,7 +7358,6 @@ const struct type type_standard__list__ListNode__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7454,12 +7374,12 @@ const struct type type_standard__list__ListNode__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2359, /* Collection[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7481,6 +7401,7 @@ const struct type type_standard__list__ListNode__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2908, /* AbstractArray[Couple[MClass, AType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7525,75 +7446,30 @@ const struct type type_standard__list__ListNode__nit__CodeFile = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2635, /* Container[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2624, /* nullable ListNode[CodeFile] */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1239, /* ListNode[CodeFile] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__list__ListNode__nit__CodeFile = {
-0, /* dummy */
-{
-&type_nullable__standard__list__ListNode__nit__CodeFile, /* nullable ListNode[E]: nullable ListNode[CodeFile] */
-&type_standard__Array__nit__CodeFile, /* Array[E]: Array[CodeFile] */
-&type_standard__abstract_collection__ContainerIterator__nit__CodeFile, /* ContainerIterator[E]: ContainerIterator[CodeFile] */
-&type_nit__CodeFile, /* E: CodeFile */
-}
-};
-/* runtime type ListIterator[CodeFile] */
-const struct type type_standard__ListIterator__nit__CodeFile = {
--1, /*CAST DEAD*/
-"ListIterator[CodeFile]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__ListIterator__nit__CodeFile,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__ListIterator__nit__CodeFile = {
-0, /* dummy */
-{
-&type_standard__Array__nit__CodeFile, /* Array[E]: Array[CodeFile] */
-&type_standard__List__nit__CodeFile, /* List[E]: List[CodeFile] */
-}
-};
-/* runtime type HashMapKeys[String, ANode] */
-const struct type type_standard__hash_collection__HashMapKeys__standard__String__nit__ANode = {
--1, /*CAST DEAD*/
-"HashMapKeys[String, ANode]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapKeys__standard__String__nit__ANode,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2306, /* Collection[String] */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7624,13 +7500,11 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7657,6 +7531,15 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1323, /* Array[Couple[MClass, AType]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7714,25 +7597,37 @@ const struct type type_standard__hash_collection__HashMapKeys__standard__String_
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapKeys__standard__String__nit__ANode = {
+const struct types resolution_table_core__Array__core__Couple__nitc__MClass__nitc__AType = {
 0, /* dummy */
 {
-&type_standard__HashMap__standard__String__nit__ANode, /* HashMap[K, V]: HashMap[String, ANode] */
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__MapKeysIterator__standard__String__nit__ANode, /* MapKeysIterator[K, V]: MapKeysIterator[String, ANode] */
+&type_core__Couple__nitc__MClass__nitc__AType, /* E: Couple[MClass, AType] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__AbstractArray__core__Couple__nitc__MClass__nitc__AType, /* AbstractArray[E]: AbstractArray[Couple[MClass, AType]] */
+&type_core__NativeArray__core__Couple__nitc__MClass__nitc__AType, /* NativeArray[E]: NativeArray[Couple[MClass, AType]] */
+&type_core__Couple__nitc__MClass__nitc__AType, /* E: Couple[MClass, AType] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Couple__nitc__MClass__nitc__AType, /* E: Couple[MClass, AType] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Collection__core__Couple__nitc__MClass__nitc__AType, /* Collection[E]: Collection[Couple[MClass, AType]] */
+&type_core__Array__core__Couple__nitc__MClass__nitc__AType, /* Array[E]: Array[Couple[MClass, AType]] */
+&type_core__AbstractArray__core__Couple__nitc__MClass__nitc__AType, /* AbstractArray[E]: AbstractArray[Couple[MClass, AType]] */
+&type_core__array__ArrayIterator__core__Couple__nitc__MClass__nitc__AType, /* ArrayIterator[E]: ArrayIterator[Couple[MClass, AType]] */
+&type_core__array__ArrayReverseIterator__core__Couple__nitc__MClass__nitc__AType, /* ArrayReverseIterator[E]: ArrayReverseIterator[Couple[MClass, AType]] */
 }
 };
-/* runtime type HashMapValues[String, ANode] */
-const struct type type_standard__hash_collection__HashMapValues__standard__String__nit__ANode = {
+/* runtime type CoupleMapIterator[MClass, AType] */
+const struct type type_core__abstract_collection__CoupleMapIterator__nitc__MClass__nitc__AType = {
 -1, /*CAST DEAD*/
-"HashMapValues[String, ANode]", /* class_name_string */
+"CoupleMapIterator[MClass, AType]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapValues__standard__String__nit__ANode,
-124,
+&resolution_table_core__abstract_collection__CoupleMapIterator__nitc__MClass__nitc__AType,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7758,6 +7653,7 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2677, /* MapIterator[MClass, AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7767,7 +7663,6 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7788,12 +7683,12 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2363, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7810,7 +7705,47 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__abstract_collection__CoupleMapIterator__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_core__Iterator__core__Couple__nitc__MClass__nitc__AType, /* Iterator[Couple[K, V]]: Iterator[Couple[MClass, AType]] */
+}
+};
+/* runtime type Couple[MClass, AType] */
+const struct type type_core__Couple__nitc__MClass__nitc__AType = {
+1325,
+"Couple[MClass, AType]", /* class_name_string */
+2,
+0,
+&resolution_table_core__Couple__nitc__MClass__nitc__AType,
+4,
+{
+2371, /* Object */
+2397, /* nullable Object */
+1325, /* Couple[MClass, AType] */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Couple__nitc__MClass__nitc__AType = {
+0, /* dummy */
+{
+&type_nitc__MClass, /* F: MClass */
+&type_nitc__AType, /* S: AType */
+}
+};
+/* runtime type Array[AExternCodeBlock] */
+const struct type type_core__Array__nitc__AExternCodeBlock = {
+1326,
+"Array[AExternCodeBlock]", /* class_name_string */
+447,
+0,
+&resolution_table_core__Array__nitc__AExternCodeBlock,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7845,37 +7780,18 @@ const struct type type_standard__hash_collection__HashMapValues__standard__Strin
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2440, /* Collection[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__standard__String__nit__ANode = {
-0, /* dummy */
-{
-&type_standard__HashMap__standard__String__nit__ANode, /* HashMap[K, V]: HashMap[String, ANode] */
-&type_standard__Array__nit__ANode, /* Array[E]: Array[ANode] */
-&type_standard__MapValuesIterator__standard__String__nit__ANode, /* MapValuesIterator[K, V]: MapValuesIterator[String, ANode] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[String, ANode]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__nit__ANode = {
-1243,
-"NativeArray[nullable HashMapNode[String, ANode]]", /* class_name_string */
-157,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__nit__ANode,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7890,6 +7806,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2459, /* Collection[AExternCodeBlock] */
+2460, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7940,6 +7858,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7954,6 +7873,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7986,6 +7907,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7993,6 +7915,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2565, /* AbstractArrayRead[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8012,6 +7935,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2585, /* AbstractArrayRead[AExternCodeBlock] */
+2586, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8031,7 +7956,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1243, /* NativeArray[nullable HashMapNode[String, ANode]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8063,6 +7987,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8093,26 +8018,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__nit__ANode = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashMapNode__standard__String__nit__ANode, /* E: nullable HashMapNode[String, ANode] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__standard__String__nit__ANode, /* NativeArray[E]: NativeArray[nullable HashMapNode[String, ANode]] */
-}
-};
-/* runtime type HashMapIterator[String, ANode] */
-const struct type type_standard__HashMapIterator__standard__String__nit__ANode = {
--1, /*CAST DEAD*/
-"HashMapIterator[String, ANode]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__HashMapIterator__standard__String__nit__ANode,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8128,15 +8033,16 @@ const struct type type_standard__HashMapIterator__standard__String__nit__ANode =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2888, /* AbstractArray[Prod] */
 -1, /* empty */
 -1, /* empty */
-2569, /* MapIterator[String, ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8155,6 +8061,8 @@ const struct type type_standard__HashMapIterator__standard__String__nit__ANode =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2909, /* AbstractArray[AExternCodeBlock] */
+2910, /* AbstractArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8188,25 +8096,6 @@ const struct type type_standard__HashMapIterator__standard__String__nit__ANode =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__standard__String__nit__ANode = {
-0, /* dummy */
-{
-&type_standard__HashMap__standard__String__nit__ANode, /* HashMap[K, V]: HashMap[String, ANode] */
-}
-};
-/* runtime type HashMapNode[String, ANode] */
-const struct type type_standard__hash_collection__HashMapNode__standard__String__nit__ANode = {
-1245,
-"HashMapNode[String, ANode]", /* class_name_string */
-98,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__standard__String__nit__ANode,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8224,13 +8113,13 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2244, /* nullable HashMapNode[String, ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8239,6 +8128,7 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8283,6 +8173,7 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+258, /* Array[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8300,10 +8191,18 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1326, /* Array[AExternCodeBlock] */
+1327, /* Array[ANode] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1245, /* HashMapNode[String, ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8353,49 +8252,41 @@ const struct type type_standard__hash_collection__HashMapNode__standard__String_
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__standard__String__nit__ANode = {
-0, /* dummy */
-{
-&type_nit__ANode, /* V: ANode */
-&type_standard__String, /* K: String */
-}
-};
-/* runtime type ArraySetIterator[String] */
-const struct type type_standard__array__ArraySetIterator__standard__String = {
--1, /*CAST DEAD*/
-"ArraySetIterator[String]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArraySetIterator__standard__String,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArraySetIterator__standard__String = {
+const struct types resolution_table_core__Array__nitc__AExternCodeBlock = {
 0, /* dummy */
 {
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__array__ArrayIterator__standard__String, /* ArrayIterator[E]: ArrayIterator[String] */
+&type_nitc__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__AbstractArray__nitc__AExternCodeBlock, /* AbstractArray[E]: AbstractArray[AExternCodeBlock] */
+&type_core__NativeArray__nitc__AExternCodeBlock, /* NativeArray[E]: NativeArray[AExternCodeBlock] */
+&type_nitc__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_nitc__AExternCodeBlock, /* E: AExternCodeBlock */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_core__Collection__nitc__AExternCodeBlock, /* Collection[E]: Collection[AExternCodeBlock] */
+&type_core__Array__nitc__AExternCodeBlock, /* Array[E]: Array[AExternCodeBlock] */
+&type_core__AbstractArray__nitc__AExternCodeBlock, /* AbstractArray[E]: AbstractArray[AExternCodeBlock] */
+&type_core__array__ArrayIterator__nitc__AExternCodeBlock, /* ArrayIterator[E]: ArrayIterator[AExternCodeBlock] */
+&type_core__array__ArrayReverseIterator__nitc__AExternCodeBlock, /* ArrayReverseIterator[E]: ArrayReverseIterator[AExternCodeBlock] */
 }
 };
-/* runtime type NativeArray[MNullableType] */
-const struct type type_standard__NativeArray__nit__MNullableType = {
-1247,
-"NativeArray[MNullableType]", /* class_name_string */
-22,
+/* runtime type Array[ANode] */
+const struct type type_core__Array__nitc__ANode = {
+1327,
+"Array[ANode]", /* class_name_string */
+448,
 0,
-&resolution_table_standard__NativeArray__nit__MNullableType,
-219,
+&resolution_table_core__Array__nitc__ANode,
+510,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8416,11 +8307,9 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1247, /* NativeArray[MNullableType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1273, /* NativeArray[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8428,11 +8317,11 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8440,7 +8329,6 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1451, /* NativeArray[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8460,6 +8348,7 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2460, /* Collection[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8510,6 +8399,7 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8524,6 +8414,8 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8556,6 +8448,7 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8584,6 +8477,7 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2586, /* AbstractArrayRead[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8613,57 +8507,14 @@ const struct type type_standard__NativeArray__nit__MNullableType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__MNullableType = {
-0, /* dummy */
-{
-&type_nit__MNullableType, /* E: MNullableType */
-&type_standard__NativeArray__nit__MNullableType, /* NativeArray[E]: NativeArray[MNullableType] */
-}
-};
-/* runtime type ArrayIterator[MNullableType] */
-const struct type type_standard__array__ArrayIterator__nit__MNullableType = {
--1, /*CAST DEAD*/
-"ArrayIterator[MNullableType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__MNullableType,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1274, /* ArrayIterator[MType] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__nit__MNullableType = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MNullableType, /* Array[E]: Array[MNullableType] */
-&type_standard__AbstractArrayRead__nit__MNullableType, /* AbstractArrayRead[E]: AbstractArrayRead[MNullableType] */
-}
-};
-/* runtime type Array[FlatString] */
-const struct type type_standard__Array__standard__FlatString = {
-1249,
-"Array[FlatString]", /* class_name_string */
-428,
-0,
-&resolution_table_standard__Array__standard__FlatString,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2306, /* Collection[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8677,6 +8528,7 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8694,13 +8546,11 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2343, /* Collection[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8709,7 +8559,6 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2352, /* Collection[FlatText] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8717,7 +8566,6 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2360, /* Collection[FlatString] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8726,6 +8574,7 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8754,6 +8603,7 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2910, /* AbstractArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8782,8 +8632,6 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
-2425, /* AbstractArrayRead[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8806,6 +8654,7 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8815,13 +8664,12 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2463, /* AbstractArrayRead[Writable] */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8831,7 +8679,6 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2473, /* AbstractArrayRead[FlatText] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8839,7 +8686,6 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2481, /* AbstractArrayRead[FlatString] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8887,6 +8733,7 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1327, /* Array[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8904,7 +8751,6 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2649, /* AbstractArray[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8936,13 +8782,11 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2687, /* AbstractArray[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8951,8 +8795,41 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__nitc__ANode = {
+0, /* dummy */
+{
+&type_nitc__ANode, /* E: ANode */
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__Collection__nitc__ANode, /* Collection[E]: Collection[ANode] */
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__AbstractArray__nitc__ANode, /* AbstractArray[E]: AbstractArray[ANode] */
+&type_core__NativeArray__nitc__ANode, /* NativeArray[E]: NativeArray[ANode] */
+&type_nitc__ANode, /* E: ANode */
+&type_core__Collection__nitc__ANode, /* Collection[E]: Collection[ANode] */
+&type_nitc__ANode, /* E: ANode */
+&type_core__Collection__nitc__ANode, /* Collection[E]: Collection[ANode] */
+&type_core__Collection__nitc__ANode, /* Collection[E]: Collection[ANode] */
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__AbstractArray__nitc__ANode, /* AbstractArray[E]: AbstractArray[ANode] */
+&type_core__array__ArrayIterator__nitc__ANode, /* ArrayIterator[E]: ArrayIterator[ANode] */
+&type_core__array__ArrayReverseIterator__nitc__ANode, /* ArrayReverseIterator[E]: ArrayReverseIterator[ANode] */
+}
+};
+/* runtime type CircularArrayIterator[ANode] */
+const struct type type_core__circular_array__CircularArrayIterator__nitc__ANode = {
+-1, /*CAST DEAD*/
+"CircularArrayIterator[ANode]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__circular_array__CircularArrayIterator__nitc__ANode,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
-2697, /* AbstractArray[FlatText] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8960,7 +8837,26 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2705, /* AbstractArray[FlatString] */
+},
+};
+const struct types resolution_table_core__circular_array__CircularArrayIterator__nitc__ANode = {
+0, /* dummy */
+{
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__CircularArray__nitc__ANode, /* CircularArray[E]: CircularArray[ANode] */
+}
+};
+/* runtime type NativeArray[ANode] */
+const struct type type_core__NativeArray__nitc__ANode = {
+1329,
+"NativeArray[ANode]", /* class_name_string */
+62,
+0,
+&resolution_table_core__NativeArray__nitc__ANode,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8992,6 +8888,7 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9020,19 +8917,16 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
-16, /* Array[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2172, /* Array[Comparable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9071,22 +8965,20 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-672, /* Array[Writable] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1121, /* Array[FlatText] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1249, /* Array[FlatString] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9148,37 +9040,6 @@ const struct type type_standard__Array__standard__FlatString = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Array__standard__FlatString = {
-0, /* dummy */
-{
-&type_standard__FlatString, /* E: FlatString */
-&type_standard__Array__standard__FlatString, /* Array[E]: Array[FlatString] */
-&type_standard__Collection__standard__FlatString, /* Collection[E]: Collection[FlatString] */
-&type_standard__Array__standard__FlatString, /* Array[E]: Array[FlatString] */
-&type_standard__NativeArray__standard__FlatString, /* NativeArray[E]: NativeArray[FlatString] */
-&type_standard__FlatString, /* E: FlatString */
-&type_standard__Collection__standard__FlatString, /* Collection[E]: Collection[FlatString] */
-&type_standard__FlatString, /* E: FlatString */
-&type_standard__Collection__standard__FlatString, /* Collection[E]: Collection[FlatString] */
-&type_standard__Collection__standard__FlatString, /* Collection[E]: Collection[FlatString] */
-&type_standard__Array__standard__FlatString, /* Array[E]: Array[FlatString] */
-&type_standard__AbstractArray__standard__FlatString, /* AbstractArray[E]: AbstractArray[FlatString] */
-&type_standard__array__ArrayIterator__standard__FlatString, /* ArrayIterator[E]: ArrayIterator[FlatString] */
-}
-};
-/* runtime type NativeArray[Match] */
-const struct type type_standard__NativeArray__standard__Match = {
-1250,
-"NativeArray[Match]", /* class_name_string */
-23,
-0,
-&resolution_table_standard__NativeArray__standard__Match,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9200,7 +9061,6 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1250, /* NativeArray[Match] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9211,7 +9071,6 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9222,6 +9081,27 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__ANode = {
+0, /* dummy */
+{
+&type_nitc__ANode, /* E: ANode */
+&type_core__NativeArray__nitc__ANode, /* NativeArray[E]: NativeArray[ANode] */
+}
+};
+/* runtime type HashSetIterator[ANode] */
+const struct type type_core__hash_collection__HashSetIterator__nitc__ANode = {
+-1, /*CAST DEAD*/
+"HashSetIterator[ANode]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashSetIterator__nitc__ANode,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9230,6 +9110,26 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashSetIterator__nitc__ANode = {
+0, /* dummy */
+{
+&type_core__Array__nitc__ANode, /* Array[E]: Array[ANode] */
+&type_core__HashSet__nitc__ANode, /* HashSet[E]: HashSet[ANode] */
+}
+};
+/* runtime type HashSetNode[ANode] */
+const struct type type_core__hash_collection__HashSetNode__nitc__ANode = {
+1331,
+"HashSetNode[ANode]", /* class_name_string */
+36,
+0,
+&resolution_table_core__hash_collection__HashSetNode__nitc__ANode,
+48,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9240,6 +9140,8 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2757, /* nullable HashSetNode[Object] */
+2765, /* nullable HashSetNode[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9261,6 +9163,8 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1270, /* HashSetNode[Object] */
+1331, /* HashSetNode[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9272,6 +9176,26 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashSetNode__nitc__ANode = {
+0, /* dummy */
+{
+NULL, /* empty */
+&type_nitc__ANode, /* K: ANode */
+}
+};
+/* runtime type NativeArray[nullable HashSetNode[ANode]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode = {
+1332,
+"NativeArray[nullable HashSetNode[ANode]]", /* class_name_string */
+164,
+0,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9383,6 +9307,7 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9396,53 +9321,12 @@ const struct type type_standard__NativeArray__standard__Match = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__standard__Match = {
-0, /* dummy */
-{
-&type_standard__Match, /* E: Match */
-&type_standard__NativeArray__standard__Match, /* NativeArray[E]: NativeArray[Match] */
-}
-};
-/* runtime type ArrayIterator[Match] */
-const struct type type_standard__array__ArrayIterator__standard__Match = {
--1, /*CAST DEAD*/
-"ArrayIterator[Match]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__standard__Match,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__standard__Match = {
-0, /* dummy */
-{
-&type_standard__Array__standard__Match, /* Array[E]: Array[Match] */
-&type_standard__AbstractArrayRead__standard__Match, /* AbstractArrayRead[E]: AbstractArrayRead[Match] */
-}
-};
-/* runtime type NativeArray[Prod] */
-const struct type type_standard__NativeArray__nit__Prod = {
-1252,
-"NativeArray[Prod]", /* class_name_string */
-24,
-0,
-&resolution_table_standard__NativeArray__nit__Prod,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9465,8 +9349,8 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1252, /* NativeArray[Prod] */
 -1, /* empty */
+1271, /* NativeArray[nullable HashSetNode[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9474,8 +9358,8 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1332, /* NativeArray[nullable HashSetNode[ANode]] */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9502,7 +9386,6 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1620, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9537,6 +9420,26 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode = {
+0, /* dummy */
+{
+&type_nullable__core__hash_collection__HashSetNode__nitc__ANode, /* E: nullable HashSetNode[ANode] */
+&type_core__NativeArray__nullable__core__hash_collection__HashSetNode__nitc__ANode, /* NativeArray[E]: NativeArray[nullable HashSetNode[ANode]] */
+}
+};
+/* runtime type NativeArray[MType] */
+const struct type type_core__NativeArray__nitc__MType = {
+1333,
+"NativeArray[MType]", /* class_name_string */
+25,
+0,
+&resolution_table_core__NativeArray__nitc__MType,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9560,6 +9463,7 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1333, /* NativeArray[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9567,6 +9471,7 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9577,6 +9482,7 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1538, /* NativeArray[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9645,6 +9551,7 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9660,53 +9567,12 @@ const struct type type_standard__NativeArray__nit__Prod = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__Prod = {
-0, /* dummy */
-{
-&type_nit__Prod, /* E: Prod */
-&type_standard__NativeArray__nit__Prod, /* NativeArray[E]: NativeArray[Prod] */
-}
-};
-/* runtime type ArrayIterator[Prod] */
-const struct type type_standard__array__ArrayIterator__nit__Prod = {
--1, /*CAST DEAD*/
-"ArrayIterator[Prod]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__Prod,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__nit__Prod = {
-0, /* dummy */
-{
-&type_standard__Array__nit__Prod, /* Array[E]: Array[Prod] */
-&type_standard__AbstractArrayRead__nit__Prod, /* AbstractArrayRead[E]: AbstractArrayRead[Prod] */
-}
-};
-/* runtime type NativeArray[Token] */
-const struct type type_standard__NativeArray__nit__Token = {
-1254,
-"NativeArray[Token]", /* class_name_string */
-25,
-0,
-&resolution_table_standard__NativeArray__nit__Token,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9730,7 +9596,6 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1254, /* NativeArray[Token] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9739,7 +9604,6 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9766,7 +9630,6 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1620, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9801,12 +9664,84 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__MType = {
+0, /* dummy */
+{
+&type_nitc__MType, /* E: MType */
+&type_core__NativeArray__nitc__MType, /* NativeArray[E]: NativeArray[MType] */
+}
+};
+/* runtime type ArrayIterator[MType] */
+const struct type type_core__array__ArrayIterator__nitc__MType = {
+-1, /*CAST DEAD*/
+"ArrayIterator[MType]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__MType,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2831, /* Iterator[MType] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__AbstractArrayRead__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[MType] */
+}
+};
+/* runtime type ArrayReverseIterator[MType] */
+const struct type type_core__array__ArrayReverseIterator__nitc__MType = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[MType]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__MType,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2831, /* Iterator[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__AbstractArrayRead__nitc__MType, /* AbstractArrayRead[E]: AbstractArrayRead[MType] */
+}
+};
+/* runtime type HashMapKeys[MModule, Set[MClassDef]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MModule__core__Set__nitc__MClassDef = {
+-1, /*CAST DEAD*/
+"HashMapKeys[MModule, Set[MClassDef]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MModule__core__Set__nitc__MClassDef,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9816,6 +9751,7 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2408, /* Collection[MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9840,6 +9776,7 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9888,6 +9825,7 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2482, /* Collection[nullable MModule] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9916,6 +9854,7 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9924,27 +9863,6 @@ const struct type type_standard__NativeArray__nit__Token = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__Token = {
-0, /* dummy */
-{
-&type_nit__Token, /* E: Token */
-&type_standard__NativeArray__nit__Token, /* NativeArray[E]: NativeArray[Token] */
-}
-};
-/* runtime type ArrayIterator[Token] */
-const struct type type_standard__array__ArrayIterator__nit__Token = {
--1, /*CAST DEAD*/
-"ArrayIterator[Token]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__Token,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9953,10 +9871,11 @@ const struct type type_standard__array__ArrayIterator__nit__Token = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArrayIterator__nit__Token = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MModule__core__Set__nitc__MClassDef = {
 0, /* dummy */
 {
-&type_standard__Array__nit__Token, /* Array[E]: Array[Token] */
-&type_standard__AbstractArrayRead__nit__Token, /* AbstractArrayRead[E]: AbstractArrayRead[Token] */
+&type_core__HashMap__nitc__MModule__core__Set__nitc__MClassDef, /* HashMap[K, V]: HashMap[MModule, Set[MClassDef]] */
+&type_core__Array__nitc__MModule, /* Array[E]: Array[MModule] */
+&type_core__MapKeysIterator__nitc__MModule__core__Set__nitc__MClassDef, /* MapKeysIterator[K, V]: MapKeysIterator[MModule, Set[MClassDef]] */
 }
 };