c_src: regenerate
[nit.git] / c_src / nitc__nith.types.17.c
similarity index 66%
rename from c_src/nit__nith.types.16.c
rename to c_src/nitc__nith.types.17.c
index 11031b6..7aaaa50 100644 (file)
@@ -1,15 +1,15 @@
-#include "nit__nith.types.0.h"
-/* runtime type HashMapIterator[MVirtualTypeProp, Int] */
-const struct type type_standard__HashMapIterator__nit__MVirtualTypeProp__standard__Int = {
+#include "nitc__nith.types.0.h"
+/* runtime type HashMapKeys[Object, Array[Object]] */
+const struct type type_core__hash_collection__HashMapKeys__core__Object__core__Array__core__Object = {
 -1, /*CAST DEAD*/
-"HashMapIterator[MVirtualTypeProp, Int]", /* class_name_string */
+"HashMapKeys[Object, Array[Object]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__nit__MVirtualTypeProp__standard__Int,
-77,
+&resolution_table_core__hash_collection__HashMapKeys__core__Object__core__Array__core__Object,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -44,6 +44,26 @@ const struct type type_standard__HashMapIterator__nit__MVirtualTypeProp__standar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -64,9 +84,7 @@ const struct type type_standard__HashMapIterator__nit__MVirtualTypeProp__standar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2600, /* MapIterator[MVirtualTypeProp, Int] */
 -1, /* empty */
-2602, /* MapIterator[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -85,25 +103,6 @@ const struct type type_standard__HashMapIterator__nit__MVirtualTypeProp__standar
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MVirtualTypeProp__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MVirtualTypeProp__standard__Int, /* HashMap[K, V]: HashMap[MVirtualTypeProp, Int] */
-}
-};
-/* runtime type HashMapNode[MVirtualTypeProp, Int] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MVirtualTypeProp__standard__Int = {
-1654,
-"HashMapNode[MVirtualTypeProp, Int]", /* class_name_string */
-127,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MVirtualTypeProp__standard__Int,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -123,6 +122,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MVirtualType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -137,6 +137,32 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MVirtualType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__core__Object__core__Array__core__Object = {
+0, /* dummy */
+{
+&type_core__HashMap__core__Object__core__Array__core__Object, /* HashMap[K, V]: HashMap[Object, Array[Object]] */
+&type_core__Array__core__Object, /* Array[E]: Array[Object] */
+&type_core__MapKeysIterator__core__Object__core__Array__core__Object, /* MapKeysIterator[K, V]: MapKeysIterator[Object, Array[Object]] */
+}
+};
+/* runtime type HashMapValues[Object, Array[Object]] */
+const struct type type_core__hash_collection__HashMapValues__core__Object__core__Array__core__Object = {
+-1, /*CAST DEAD*/
+"HashMapValues[Object, Array[Object]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__core__Object__core__Array__core__Object,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -156,9 +182,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MVirtualType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2283, /* nullable HashMapNode[MVirtualTypeProp, Int] */
 -1, /* empty */
-2285, /* nullable HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -168,6 +192,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MVirtualType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -229,9 +254,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MVirtualType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1654, /* HashMapNode[MVirtualTypeProp, Int] */
 -1, /* empty */
-1684, /* HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -246,30 +269,45 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MVirtualType
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2510, /* Collection[Array[Object]] */
+2511, /* Collection[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 */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MVirtualTypeProp__standard__Int = {
+const struct types resolution_table_core__hash_collection__HashMapValues__core__Object__core__Array__core__Object = {
 0, /* dummy */
 {
-&type_standard__Int, /* V: Int */
-&type_nit__MVirtualTypeProp, /* K: MVirtualTypeProp */
+&type_core__HashMap__core__Object__core__Array__core__Object, /* HashMap[K, V]: HashMap[Object, Array[Object]] */
+&type_core__Array__core__Array__core__Object, /* Array[E]: Array[Array[Object]] */
+&type_core__MapValuesIterator__core__Object__core__Array__core__Object, /* MapValuesIterator[K, V]: MapValuesIterator[Object, Array[Object]] */
 }
 };
-/* runtime type NativeArray[TComment] */
-const struct type type_standard__NativeArray__nit__TComment = {
-1655,
-"NativeArray[TComment]", /* class_name_string */
-63,
+/* runtime type HashMapIterator[Object, Array[Object]] */
+const struct type type_core__hash_collection__HashMapIterator__core__Object__core__Array__core__Object = {
+-1, /*CAST DEAD*/
+"HashMapIterator[Object, Array[Object]]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nit__TComment,
-219,
+&resolution_table_core__hash_collection__HashMapIterator__core__Object__core__Array__core__Object,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -293,7 +331,6 @@ const struct type type_standard__NativeArray__nit__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1254, /* NativeArray[Token] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -302,7 +339,6 @@ const struct type type_standard__NativeArray__nit__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -324,14 +360,14 @@ const struct type type_standard__NativeArray__nit__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2706, /* MapIterator[Object, Array[Object]] */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1620, /* NativeArray[ANode] */
 -1, /* empty */
-1655, /* NativeArray[TComment] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -347,6 +383,25 @@ const struct type type_standard__NativeArray__nit__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__core__Object__core__Array__core__Object = {
+0, /* dummy */
+{
+&type_core__HashMap__core__Object__core__Array__core__Object, /* HashMap[K, V]: HashMap[Object, Array[Object]] */
+}
+};
+/* runtime type HashMapNode[Object, Array[Object]] */
+const struct type type_core__hash_collection__HashMapNode__core__Object__core__Array__core__Object = {
+1751,
+"HashMapNode[Object, Array[Object]]", /* class_name_string */
+129,
+0,
+&resolution_table_core__hash_collection__HashMapNode__core__Object__core__Array__core__Object,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -399,6 +454,8 @@ const struct type type_standard__NativeArray__nit__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2802, /* nullable HashMapNode[Object, Array[Object]] */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -472,6 +529,8 @@ const struct type type_standard__NativeArray__nit__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1751, /* HashMapNode[Object, Array[Object]] */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -487,27 +546,6 @@ const struct type type_standard__NativeArray__nit__TComment = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__TComment = {
-0, /* dummy */
-{
-&type_nit__TComment, /* E: TComment */
-&type_standard__NativeArray__nit__TComment, /* NativeArray[E]: NativeArray[TComment] */
-}
-};
-/* runtime type ArrayIterator[TComment] */
-const struct type type_standard__array__ArrayIterator__nit__TComment = {
--1, /*CAST DEAD*/
-"ArrayIterator[TComment]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__TComment,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -516,24 +554,24 @@ const struct type type_standard__array__ArrayIterator__nit__TComment = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArrayIterator__nit__TComment = {
+const struct types resolution_table_core__hash_collection__HashMapNode__core__Object__core__Array__core__Object = {
 0, /* dummy */
 {
-&type_standard__Array__nit__TComment, /* Array[E]: Array[TComment] */
-&type_standard__AbstractArrayRead__nit__TComment, /* AbstractArrayRead[E]: AbstractArrayRead[TComment] */
+&type_core__Array__core__Object, /* V: Array[Object] */
+&type_core__Object, /* K: Object */
 }
 };
-/* runtime type NativeArray[AFormaldef] */
-const struct type type_standard__NativeArray__nit__AFormaldef = {
-1657,
-"NativeArray[AFormaldef]", /* class_name_string */
-64,
+/* runtime type NativeArray[nullable HashMapNode[Object, Array[Object]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__core__Array__core__Object = {
+1752,
+"NativeArray[nullable HashMapNode[Object, Array[Object]]]", /* class_name_string */
+201,
 0,
-&resolution_table_standard__NativeArray__nit__AFormaldef,
-219,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__core__Array__core__Object,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -556,7 +594,6 @@ const struct type type_standard__NativeArray__nit__AFormaldef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1252, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -566,7 +603,6 @@ const struct type type_standard__NativeArray__nit__AFormaldef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -593,10 +629,8 @@ const struct type type_standard__NativeArray__nit__AFormaldef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1620, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
-1657, /* NativeArray[AFormaldef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -649,6 +683,7 @@ const struct type type_standard__NativeArray__nit__AFormaldef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -736,6 +771,10 @@ const struct type type_standard__NativeArray__nit__AFormaldef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1752, /* NativeArray[nullable HashMapNode[Object, Array[Object]]] */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -751,27 +790,6 @@ const struct type type_standard__NativeArray__nit__AFormaldef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__AFormaldef = {
-0, /* dummy */
-{
-&type_nit__AFormaldef, /* E: AFormaldef */
-&type_standard__NativeArray__nit__AFormaldef, /* NativeArray[E]: NativeArray[AFormaldef] */
-}
-};
-/* runtime type ArrayIterator[AFormaldef] */
-const struct type type_standard__array__ArrayIterator__nit__AFormaldef = {
--1, /*CAST DEAD*/
-"ArrayIterator[AFormaldef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__AFormaldef,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -780,24 +798,24 @@ const struct type type_standard__array__ArrayIterator__nit__AFormaldef = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArrayIterator__nit__AFormaldef = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__core__Array__core__Object = {
 0, /* dummy */
 {
-&type_standard__Array__nit__AFormaldef, /* Array[E]: Array[AFormaldef] */
-&type_standard__AbstractArrayRead__nit__AFormaldef, /* AbstractArrayRead[E]: AbstractArrayRead[AFormaldef] */
+&type_nullable__core__hash_collection__HashMapNode__core__Object__core__Array__core__Object, /* E: nullable HashMapNode[Object, Array[Object]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__core__Array__core__Object, /* NativeArray[E]: NativeArray[nullable HashMapNode[Object, Array[Object]]] */
 }
 };
-/* runtime type HashMapKeys[MType, POSetElement[MType]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MType__poset__POSetElement__nit__MType = {
+/* runtime type HashMapKeys[Object, nullable Object] */
+const struct type type_core__hash_collection__HashMapKeys__core__Object__nullable__core__Object = {
 -1, /*CAST DEAD*/
-"HashMapKeys[MType, POSetElement[MType]]", /* class_name_string */
+"HashMapKeys[Object, nullable Object]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MType__poset__POSetElement__nit__MType,
-124,
+&resolution_table_core__hash_collection__HashMapKeys__core__Object__nullable__core__Object,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -824,7 +842,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2329, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -832,8 +849,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -844,7 +861,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2349, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -912,6 +928,13 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -922,25 +945,28 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MType__poset
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MType__poset__POSetElement__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapKeys__core__Object__nullable__core__Object = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MType__poset__POSetElement__nit__MType, /* HashMap[K, V]: HashMap[MType, POSetElement[MType]] */
-&type_standard__Array__nit__MType, /* Array[E]: Array[MType] */
-&type_standard__MapKeysIterator__nit__MType__poset__POSetElement__nit__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MType, POSetElement[MType]] */
+&type_core__HashMap__core__Object__nullable__core__Object, /* HashMap[K, V]: HashMap[Object, nullable Object] */
+&type_core__Array__core__Object, /* Array[E]: Array[Object] */
+&type_core__MapKeysIterator__core__Object__nullable__core__Object, /* MapKeysIterator[K, V]: MapKeysIterator[Object, nullable Object] */
 }
 };
-/* runtime type HashMapValues[MType, POSetElement[MType]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MType__poset__POSetElement__nit__MType = {
+/* runtime type HashMapValues[Object, nullable Object] */
+const struct type type_core__hash_collection__HashMapValues__core__Object__nullable__core__Object = {
 -1, /*CAST DEAD*/
-"HashMapValues[MType, POSetElement[MType]]", /* class_name_string */
+"HashMapValues[Object, nullable Object]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MType__poset__POSetElement__nit__MType,
-124,
+&resolution_table_core__hash_collection__HashMapValues__core__Object__nullable__core__Object,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -975,7 +1001,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MType__pos
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1049,7 +1074,10 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MType__pos
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2411, /* Collection[POSetElement[MType]] */
+-1, /* empty */
+-1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1065,25 +1093,29 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MType__pos
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MType__poset__POSetElement__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapValues__core__Object__nullable__core__Object = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MType__poset__POSetElement__nit__MType, /* HashMap[K, V]: HashMap[MType, POSetElement[MType]] */
-&type_standard__Array__poset__POSetElement__nit__MType, /* Array[E]: Array[POSetElement[MType]] */
-&type_standard__MapValuesIterator__nit__MType__poset__POSetElement__nit__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MType, POSetElement[MType]] */
+&type_core__HashMap__core__Object__nullable__core__Object, /* HashMap[K, V]: HashMap[Object, nullable Object] */
+&type_core__Array__nullable__core__Object, /* Array[E]: Array[nullable Object] */
+&type_core__MapValuesIterator__core__Object__nullable__core__Object, /* MapValuesIterator[K, V]: MapValuesIterator[Object, nullable Object] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__poset__POSetElement__nit__MType = {
-1661,
-"NativeArray[nullable HashMapNode[MType, POSetElement[MType]]]", /* class_name_string */
-197,
+/* runtime type HashMapIterator[Object, nullable Object] */
+const struct type type_core__hash_collection__HashMapIterator__core__Object__nullable__core__Object = {
+-1, /*CAST DEAD*/
+"HashMapIterator[Object, nullable Object]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__poset__POSetElement__nit__MType,
-219,
+&resolution_table_core__hash_collection__HashMapIterator__core__Object__nullable__core__Object,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1135,6 +1167,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 */
@@ -1156,6 +1189,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__core__Object__nullable__core__Object = {
+0, /* dummy */
+{
+&type_core__HashMap__core__Object__nullable__core__Object, /* HashMap[K, V]: HashMap[Object, nullable Object] */
+}
+};
+/* runtime type HashMapNode[Object, nullable Object] */
+const struct type type_core__hash_collection__HashMapNode__core__Object__nullable__core__Object = {
+1756,
+"HashMapNode[Object, nullable Object]", /* class_name_string */
+130,
+0,
+&resolution_table_core__hash_collection__HashMapNode__core__Object__nullable__core__Object,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1206,6 +1261,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 */
@@ -1279,7 +1335,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1661, /* NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
+-1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1303,24 +1360,24 @@ 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__poset__POSetElement__nit__MType = {
+const struct types resolution_table_core__hash_collection__HashMapNode__core__Object__nullable__core__Object = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MType__poset__POSetElement__nit__MType, /* E: nullable HashMapNode[MType, POSetElement[MType]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__poset__POSetElement__nit__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
+&type_nullable__core__Object, /* V: nullable Object */
+&type_core__Object, /* K: Object */
 }
 };
-/* runtime type HashMapIterator[MType, POSetElement[MType]] */
-const struct type type_standard__HashMapIterator__nit__MType__poset__POSetElement__nit__MType = {
--1, /*CAST DEAD*/
-"HashMapIterator[MType, POSetElement[MType]]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[Object, nullable Object]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__nullable__core__Object = {
+1757,
+"NativeArray[nullable HashMapNode[Object, nullable Object]]", /* class_name_string */
+202,
 0,
-&resolution_table_standard__HashMapIterator__nit__MType__poset__POSetElement__nit__MType,
-77,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__nullable__core__Object,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1376,7 +1433,6 @@ const struct type type_standard__HashMapIterator__nit__MType__poset__POSetElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2601, /* MapIterator[MType, POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1396,25 +1452,6 @@ const struct type type_standard__HashMapIterator__nit__MType__poset__POSetElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MType__poset__POSetElement__nit__MType = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MType__poset__POSetElement__nit__MType, /* HashMap[K, V]: HashMap[MType, POSetElement[MType]] */
-}
-};
-/* runtime type HashMapNode[MType, POSetElement[MType]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MType__poset__POSetElement__nit__MType = {
-1663,
-"HashMapNode[MType, POSetElement[MType]]", /* class_name_string */
-128,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MType__poset__POSetElement__nit__MType,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1452,6 +1489,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1468,7 +1506,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2284, /* nullable HashMapNode[MType, POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1541,7 +1578,9 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1663, /* HashMapNode[MType, POSetElement[MType]] */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1561,50 +1600,28 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MType__poset
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MType__poset__POSetElement__nit__MType = {
-0, /* dummy */
-{
-&type_poset__POSetElement__nit__MType, /* V: POSetElement[MType] */
-&type_nit__MType, /* K: MType */
-}
-};
-/* runtime type ContainerIterator[MType] */
-const struct type type_standard__abstract_collection__ContainerIterator__nit__MType = {
--1, /*CAST DEAD*/
-"ContainerIterator[MType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__abstract_collection__ContainerIterator__nit__MType,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__abstract_collection__ContainerIterator__nit__MType = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__nullable__core__Object = {
 0, /* dummy */
 {
-&type_standard__Array__nit__MType, /* Array[E]: Array[MType] */
-&type_standard__Container__nit__MType, /* Container[E]: Container[MType] */
+&type_nullable__core__hash_collection__HashMapNode__core__Object__nullable__core__Object, /* E: nullable HashMapNode[Object, nullable Object] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__core__Object__nullable__core__Object, /* NativeArray[E]: NativeArray[nullable HashMapNode[Object, nullable Object]] */
 }
 };
-/* runtime type HashMap[MModule, HashMap[MType, Array[MMethodDef]]] */
-const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef = {
-1665,
-"HashMap[MModule, HashMap[MType, Array[MMethodDef]]]", /* class_name_string */
-77,
+/* runtime type Array[Iterator[Object]] */
+const struct type type_core__Array__core__Iterator__core__Object = {
+1758,
+"Array[Iterator[Object]]", /* class_name_string */
+481,
 0,
-&resolution_table_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef,
-83,
+&resolution_table_core__Array__core__Iterator__core__Object,
+510,
 {
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1639,6 +1656,7 @@ const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1679,44 +1697,11 @@ const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1665, /* HashMap[MModule, HashMap[MType, Array[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* HashMapIterator[K, V]: HashMapIterator[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_nit__MModule, /* K: MModule */
-&type_standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* V: HashMap[MType, Array[MMethodDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* HashMapNode[K, V]: HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_standard__hash_collection__HashMapKeys__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* HashMapKeys[K, V]: HashMapKeys[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_standard__hash_collection__HashMapValues__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* HashMapValues[K, V]: HashMapValues[MModule, HashMap[MType, Array[MMethodDef]]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* nullable N: nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* N: HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MMethodDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]]] */
-}
-};
-/* runtime type HashMap[MType, Array[MMethodDef]] */
-const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MMethodDef = {
-1666,
-"HashMap[MType, Array[MMethodDef]]", /* class_name_string */
-78,
-0,
-&resolution_table_standard__HashMap__nit__MType__standard__Array__nit__MMethodDef,
-83,
-{
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1733,6 +1718,7 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MMet
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2495, /* Collection[Iterator[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1748,6 +1734,7 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MMet
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1762,6 +1749,8 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MMet
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1775,7 +1764,6 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MMet
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1295, /* HashMap[Object, Array[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1792,42 +1780,11 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MMet
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1666, /* HashMap[MType, Array[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMap__nit__MType__standard__Array__nit__MMethodDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MType__standard__Array__nit__MMethodDef, /* HashMapIterator[K, V]: HashMapIterator[MType, Array[MMethodDef]] */
-&type_nit__MType, /* K: MType */
-&type_standard__Array__nit__MMethodDef, /* V: Array[MMethodDef] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MMethodDef, /* HashMapNode[K, V]: HashMapNode[MType, Array[MMethodDef]] */
-&type_standard__hash_collection__HashMapKeys__nit__MType__standard__Array__nit__MMethodDef, /* HashMapKeys[K, V]: HashMapKeys[MType, Array[MMethodDef]] */
-&type_standard__hash_collection__HashMapValues__nit__MType__standard__Array__nit__MMethodDef, /* HashMapValues[K, V]: HashMapValues[MType, Array[MMethodDef]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MMethodDef, /* nullable N: nullable HashMapNode[MType, Array[MMethodDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MMethodDef, /* N: HashMapNode[MType, Array[MMethodDef]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MMethodDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, Array[MMethodDef]]] */
-}
-};
-/* runtime type NativeArray[Scope] */
-const struct type type_standard__NativeArray__nit__scope__Scope = {
-1667,
-"NativeArray[Scope]", /* class_name_string */
-65,
-0,
-&resolution_table_standard__NativeArray__nit__scope__Scope,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1860,7 +1817,6 @@ const struct type type_standard__NativeArray__nit__scope__Scope = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1891,7 +1847,7 @@ const struct type type_standard__NativeArray__nit__scope__Scope = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1667, /* NativeArray[Scope] */
+2621, /* AbstractArrayRead[Iterator[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1907,6 +1863,7 @@ const struct type type_standard__NativeArray__nit__scope__Scope = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -1952,6 +1909,7 @@ const struct type type_standard__NativeArray__nit__scope__Scope = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2015,6 +1973,7 @@ const struct type type_standard__NativeArray__nit__scope__Scope = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2945, /* AbstractArray[Iterator[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2030,6 +1989,7 @@ const struct type type_standard__NativeArray__nit__scope__Scope = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2044,146 +2004,22 @@ const struct type type_standard__NativeArray__nit__scope__Scope = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__scope__Scope = {
-0, /* dummy */
-{
-&type_nit__scope__Scope, /* E: Scope */
-&type_standard__NativeArray__nit__scope__Scope, /* NativeArray[E]: NativeArray[Scope] */
-}
-};
-/* runtime type ArrayIterator[Scope] */
-const struct type type_standard__array__ArrayIterator__nit__scope__Scope = {
--1, /*CAST DEAD*/
-"ArrayIterator[Scope]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__scope__Scope,
-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__scope__Scope = {
-0, /* dummy */
-{
-&type_standard__Array__nit__scope__Scope, /* Array[E]: Array[Scope] */
-&type_standard__AbstractArrayRead__nit__scope__Scope, /* AbstractArrayRead[E]: AbstractArrayRead[Scope] */
-}
-};
-/* runtime type ContainerIterator[Scope] */
-const struct type type_standard__abstract_collection__ContainerIterator__nit__scope__Scope = {
--1, /*CAST DEAD*/
-"ContainerIterator[Scope]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__abstract_collection__ContainerIterator__nit__scope__Scope,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__abstract_collection__ContainerIterator__nit__scope__Scope = {
-0, /* dummy */
-{
-&type_standard__Array__nit__scope__Scope, /* Array[E]: Array[Scope] */
-&type_standard__Container__nit__scope__Scope, /* Container[E]: Container[Scope] */
-}
-};
-/* runtime type MapKeysIterator[Variable, nullable MType] */
-const struct type type_standard__MapKeysIterator__nit__Variable__nullable__nit__MType = {
--1, /*CAST DEAD*/
-"MapKeysIterator[Variable, nullable MType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__nit__Variable__nullable__nit__MType,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapKeysIterator__nit__Variable__nullable__nit__MType = {
-0, /* dummy */
-{
-&type_standard__Array__nit__Variable, /* Array[E]: Array[Variable] */
-&type_standard__MapIterator__nit__Variable__nullable__nit__MType, /* MapIterator[K, V]: MapIterator[Variable, nullable MType] */
-}
-};
-/* runtime type MapValuesIterator[Variable, nullable MType] */
-const struct type type_standard__MapValuesIterator__nit__Variable__nullable__nit__MType = {
--1, /*CAST DEAD*/
-"MapValuesIterator[Variable, nullable MType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapValuesIterator__nit__Variable__nullable__nit__MType,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapValuesIterator__nit__Variable__nullable__nit__MType = {
-0, /* dummy */
-{
-&type_standard__Array__nullable__nit__MType, /* Array[E]: Array[nullable MType] */
-&type_standard__MapIterator__nit__Variable__nullable__nit__MType, /* MapIterator[K, V]: MapIterator[Variable, nullable MType] */
-}
-};
-/* runtime type MapKeysIterator[MClass, Set[PropertyLayoutElement]] */
-const struct type type_standard__MapKeysIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
--1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapKeysIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement, /* MapIterator[K, V]: MapIterator[MClass, Set[PropertyLayoutElement]] */
-}
-};
-/* runtime type Array[Set[PropertyLayoutElement]] */
-const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElement = {
-1673,
-"Array[Set[PropertyLayoutElement]]", /* class_name_string */
-463,
-0,
-&resolution_table_standard__Array__standard__Set__nit__PropertyLayoutElement,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2218,7 +2054,6 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2266,6 +2101,7 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1758, /* Array[Iterator[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2278,7 +2114,6 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2397, /* Collection[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2295,6 +2130,40 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__core__Iterator__core__Object = {
+0, /* dummy */
+{
+&type_core__Iterator__core__Object, /* E: Iterator[Object] */
+&type_core__Array__core__Iterator__core__Object, /* Array[E]: Array[Iterator[Object]] */
+&type_core__Collection__core__Iterator__core__Object, /* Collection[E]: Collection[Iterator[Object]] */
+&type_core__Array__core__Iterator__core__Object, /* Array[E]: Array[Iterator[Object]] */
+&type_core__AbstractArray__core__Iterator__core__Object, /* AbstractArray[E]: AbstractArray[Iterator[Object]] */
+&type_core__NativeArray__core__Iterator__core__Object, /* NativeArray[E]: NativeArray[Iterator[Object]] */
+&type_core__Iterator__core__Object, /* E: Iterator[Object] */
+&type_core__Collection__core__Iterator__core__Object, /* Collection[E]: Collection[Iterator[Object]] */
+&type_core__Iterator__core__Object, /* E: Iterator[Object] */
+&type_core__Collection__core__Iterator__core__Object, /* Collection[E]: Collection[Iterator[Object]] */
+&type_core__Collection__core__Iterator__core__Object, /* Collection[E]: Collection[Iterator[Object]] */
+&type_core__Array__core__Iterator__core__Object, /* Array[E]: Array[Iterator[Object]] */
+&type_core__AbstractArray__core__Iterator__core__Object, /* AbstractArray[E]: AbstractArray[Iterator[Object]] */
+&type_core__array__ArrayIterator__core__Iterator__core__Object, /* ArrayIterator[E]: ArrayIterator[Iterator[Object]] */
+&type_core__array__ArrayReverseIterator__core__Iterator__core__Object, /* ArrayReverseIterator[E]: ArrayReverseIterator[Iterator[Object]] */
+}
+};
+/* runtime type MapKeysIterator[Object, String] */
+const struct type type_core__MapKeysIterator__core__Object__core__String = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[Object, String]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__core__Object__core__String,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2303,28 +2172,114 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__core__Object__core__String = {
+0, /* dummy */
+{
+&type_core__Array__core__Object, /* Array[E]: Array[Object] */
+&type_core__MapIterator__core__Object__core__String, /* MapIterator[K, V]: MapIterator[Object, String] */
+}
+};
+/* runtime type MapValuesIterator[Object, String] */
+const struct type type_core__MapValuesIterator__core__Object__core__String = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[Object, String]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__core__Object__core__String,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
+2828, /* Iterator[String] */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__core__Object__core__String = {
+0, /* dummy */
+{
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__MapIterator__core__Object__core__String, /* MapIterator[K, V]: MapIterator[Object, String] */
+}
+};
+/* runtime type RefIterator[String] */
+const struct type type_core__abstract_collection__RefIterator__core__String = {
+-1, /*CAST DEAD*/
+"RefIterator[String]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__abstract_collection__RefIterator__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__abstract_collection__RefIterator__core__String = {
+0, /* dummy */
+{
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__Ref__core__String, /* Ref[E]: Ref[String] */
+}
+};
+/* runtime type MapKeysIterator[String, Int] */
+const struct type type_core__MapKeysIterator__core__String__core__Int = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[String, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__core__String__core__Int,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
+2828, /* Iterator[String] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__core__String__core__Int = {
+0, /* dummy */
+{
+&type_core__Array__core__String, /* Array[E]: Array[String] */
+&type_core__MapIterator__core__String__core__Int, /* MapIterator[K, V]: MapIterator[String, Int] */
+}
+};
+/* runtime type MapValuesIterator[String, Int] */
+const struct type type_core__MapValuesIterator__core__String__core__Int = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[String, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__core__String__core__Int,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2333,13 +2288,34 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__core__String__core__Int = {
+0, /* dummy */
+{
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+&type_core__MapIterator__core__String__core__Int, /* MapIterator[K, V]: MapIterator[String, Int] */
+}
+};
+/* runtime type HashMap[MClass, Set[MClass]] */
+const struct type type_core__HashMap__nitc__MClass__core__Set__nitc__MClass = {
+1764,
+"HashMap[MClass, Set[MClass]]", /* class_name_string */
+78,
+0,
+&resolution_table_core__HashMap__nitc__MClass__core__Set__nitc__MClass,
+85,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2203, /* MapRead[nullable Object, nullable Object] */
+2840, /* Map[MClass, Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2393,6 +2369,7 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2400,7 +2377,6 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2518, /* AbstractArrayRead[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2408,12 +2384,45 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1764, /* HashMap[MClass, Set[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__HashMap__nitc__MClass__core__Set__nitc__MClass = {
+0, /* dummy */
+{
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__hash_collection__HashMapIterator__nitc__MClass__core__Set__nitc__MClass, /* HashMapIterator[K, V]: HashMapIterator[MClass, Set[MClass]] */
+&type_nitc__MClass, /* K: MClass */
+&type_core__Set__nitc__MClass, /* V: Set[MClass] */
+&type_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass, /* HashMapNode[K, V]: HashMapNode[MClass, Set[MClass]] */
+&type_core__hash_collection__HashMapKeys__nitc__MClass__core__Set__nitc__MClass, /* HashMapKeys[K, V]: HashMapKeys[MClass, Set[MClass]] */
+&type_core__hash_collection__HashMapValues__nitc__MClass__core__Set__nitc__MClass, /* HashMapValues[K, V]: HashMapValues[MClass, Set[MClass]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass, /* nullable N: nullable HashMapNode[MClass, Set[MClass]] */
+NULL, /* empty */
+&type_core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass, /* N: HashMapNode[MClass, Set[MClass]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__Set__nitc__MClass, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MClass, Set[MClass]]] */
+}
+};
+/* runtime type MapKeysIterator[MClass, Set[MVirtualTypeProp]] */
+const struct type type_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[MClass, Set[MVirtualTypeProp]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2422,6 +2431,26 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp, /* MapIterator[K, V]: MapIterator[MClass, Set[MVirtualTypeProp]] */
+}
+};
+/* runtime type Array[Set[MVirtualTypeProp]] */
+const struct type type_core__Array__core__Set__nitc__MVirtualTypeProp = {
+1766,
+"Array[Set[MVirtualTypeProp]]", /* class_name_string */
+482,
+0,
+&resolution_table_core__Array__core__Set__nitc__MVirtualTypeProp,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2456,11 +2485,11 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2508,6 +2537,7 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2485, /* Collection[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2518,10 +2548,11 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2496, /* Collection[Set[MVirtualTypeProp]] */
+2497, /* Collection[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2742, /* AbstractArray[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2532,6 +2563,7 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2546,11 +2578,11 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2580,6 +2612,7 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2633,6 +2666,7 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2611, /* AbstractArrayRead[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2643,9 +2677,10 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2622, /* AbstractArrayRead[Set[MVirtualTypeProp]] */
+2623, /* AbstractArrayRead[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
-1673, /* Array[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2657,6 +2692,7 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2672,83 +2708,10 @@ const struct type type_standard__Array__standard__Set__nit__PropertyLayoutElemen
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Array__standard__Set__nit__PropertyLayoutElement = {
-0, /* dummy */
-{
-&type_standard__Set__nit__PropertyLayoutElement, /* E: Set[PropertyLayoutElement] */
-&type_standard__Array__standard__Set__nit__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
-&type_standard__Collection__standard__Set__nit__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
-&type_standard__Array__standard__Set__nit__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
-&type_standard__NativeArray__standard__Set__nit__PropertyLayoutElement, /* NativeArray[E]: NativeArray[Set[PropertyLayoutElement]] */
-&type_standard__Set__nit__PropertyLayoutElement, /* E: Set[PropertyLayoutElement] */
-&type_standard__Collection__standard__Set__nit__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
-&type_standard__Set__nit__PropertyLayoutElement, /* E: Set[PropertyLayoutElement] */
-&type_standard__Collection__standard__Set__nit__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
-&type_standard__Collection__standard__Set__nit__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
-&type_standard__Array__standard__Set__nit__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
-&type_standard__AbstractArray__standard__Set__nit__PropertyLayoutElement, /* AbstractArray[E]: AbstractArray[Set[PropertyLayoutElement]] */
-&type_standard__array__ArrayIterator__standard__Set__nit__PropertyLayoutElement, /* ArrayIterator[E]: ArrayIterator[Set[PropertyLayoutElement]] */
-}
-};
-/* runtime type MapValuesIterator[MClass, Set[PropertyLayoutElement]] */
-const struct type type_standard__MapValuesIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapValuesIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapValuesIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement = {
-0, /* dummy */
-{
-&type_standard__Array__standard__Set__nit__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
-&type_standard__MapIterator__nit__MClass__standard__Set__nit__PropertyLayoutElement, /* MapIterator[K, V]: MapIterator[MClass, Set[PropertyLayoutElement]] */
-}
-};
-/* runtime type MapKeysIterator[MClass, Set[MAttribute]] */
-const struct type type_standard__MapKeysIterator__nit__MClass__standard__Set__nit__MAttribute = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, Set[MAttribute]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__nit__MClass__standard__Set__nit__MAttribute,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapKeysIterator__nit__MClass__standard__Set__nit__MAttribute = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapIterator__nit__MClass__standard__Set__nit__MAttribute, /* MapIterator[K, V]: MapIterator[MClass, Set[MAttribute]] */
-}
-};
-/* runtime type Array[Set[MAttribute]] */
-const struct type type_standard__Array__standard__Set__nit__MAttribute = {
-1676,
-"Array[Set[MAttribute]]", /* class_name_string */
-464,
-0,
-&resolution_table_standard__Array__standard__Set__nit__MAttribute,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2775,6 +2738,7 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2783,7 +2747,6 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2829,9 +2792,9 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2935, /* AbstractArray[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
-2385, /* Collection[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2840,11 +2803,11 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2946, /* AbstractArray[Set[MVirtualTypeProp]] */
+2947, /* AbstractArray[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2397, /* Collection[Set[PropertyLayoutElement]] */
-2398, /* Collection[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2855,6 +2818,7 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2869,9 +2833,9 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2904,7 +2868,6 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2953,11 +2916,11 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2506, /* AbstractArrayRead[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1664, /* Array[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2965,11 +2928,11 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2518, /* AbstractArrayRead[Set[PropertyLayoutElement]] */
-2519, /* AbstractArrayRead[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1766, /* Array[Set[MVirtualTypeProp]] */
+1797, /* Array[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -2996,6 +2959,40 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__core__Set__nitc__MVirtualTypeProp = {
+0, /* dummy */
+{
+&type_core__Set__nitc__MVirtualTypeProp, /* E: Set[MVirtualTypeProp] */
+&type_core__Array__core__Set__nitc__MVirtualTypeProp, /* Array[E]: Array[Set[MVirtualTypeProp]] */
+&type_core__Collection__core__Set__nitc__MVirtualTypeProp, /* Collection[E]: Collection[Set[MVirtualTypeProp]] */
+&type_core__Array__core__Set__nitc__MVirtualTypeProp, /* Array[E]: Array[Set[MVirtualTypeProp]] */
+&type_core__AbstractArray__core__Set__nitc__MVirtualTypeProp, /* AbstractArray[E]: AbstractArray[Set[MVirtualTypeProp]] */
+&type_core__NativeArray__core__Set__nitc__MVirtualTypeProp, /* NativeArray[E]: NativeArray[Set[MVirtualTypeProp]] */
+&type_core__Set__nitc__MVirtualTypeProp, /* E: Set[MVirtualTypeProp] */
+&type_core__Collection__core__Set__nitc__MVirtualTypeProp, /* Collection[E]: Collection[Set[MVirtualTypeProp]] */
+&type_core__Set__nitc__MVirtualTypeProp, /* E: Set[MVirtualTypeProp] */
+&type_core__Collection__core__Set__nitc__MVirtualTypeProp, /* Collection[E]: Collection[Set[MVirtualTypeProp]] */
+&type_core__Collection__core__Set__nitc__MVirtualTypeProp, /* Collection[E]: Collection[Set[MVirtualTypeProp]] */
+&type_core__Array__core__Set__nitc__MVirtualTypeProp, /* Array[E]: Array[Set[MVirtualTypeProp]] */
+&type_core__AbstractArray__core__Set__nitc__MVirtualTypeProp, /* AbstractArray[E]: AbstractArray[Set[MVirtualTypeProp]] */
+&type_core__array__ArrayIterator__core__Set__nitc__MVirtualTypeProp, /* ArrayIterator[E]: ArrayIterator[Set[MVirtualTypeProp]] */
+&type_core__array__ArrayReverseIterator__core__Set__nitc__MVirtualTypeProp, /* ArrayReverseIterator[E]: ArrayReverseIterator[Set[MVirtualTypeProp]] */
+}
+};
+/* runtime type MapValuesIterator[MClass, Set[MVirtualTypeProp]] */
+const struct type type_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[MClass, Set[MVirtualTypeProp]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3004,6 +3001,26 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp = {
+0, /* dummy */
+{
+&type_core__Array__core__Set__nitc__MVirtualTypeProp, /* Array[E]: Array[Set[MVirtualTypeProp]] */
+&type_core__MapIterator__nitc__MClass__core__Set__nitc__MVirtualTypeProp, /* MapIterator[K, V]: MapIterator[MClass, Set[MVirtualTypeProp]] */
+}
+};
+/* runtime type NativeArray[MVirtualTypeProp] */
+const struct type type_core__NativeArray__nitc__MVirtualTypeProp = {
+1768,
+"NativeArray[MVirtualTypeProp]", /* class_name_string */
+63,
+0,
+&resolution_table_core__NativeArray__nitc__MVirtualTypeProp,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3012,6 +3029,7 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1112, /* NativeArray[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3025,7 +3043,6 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3035,7 +3052,9 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
+1445, /* NativeArray[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3063,10 +3082,12 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1768, /* NativeArray[MVirtualTypeProp] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1815, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3074,7 +3095,6 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2730, /* AbstractArray[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3086,8 +3106,6 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2742, /* AbstractArray[Set[PropertyLayoutElement]] */
-2743, /* AbstractArray[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3114,14 +3132,14 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2004, /* Array[nullable Object] */
-650, /* Array[Object] */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2177, /* NativeArray[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3198,7 +3216,6 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1551, /* Array[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3210,8 +3227,6 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1673, /* Array[Set[PropertyLayoutElement]] */
-1676, /* Array[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3230,8 +3245,30 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__MVirtualTypeProp = {
+0, /* dummy */
+{
+&type_nitc__MVirtualTypeProp, /* E: MVirtualTypeProp */
+&type_core__NativeArray__nitc__MVirtualTypeProp, /* NativeArray[E]: NativeArray[MVirtualTypeProp] */
+}
+};
+/* runtime type ArrayIterator[MVirtualTypeProp] */
+const struct type type_core__array__ArrayIterator__nitc__MVirtualTypeProp = {
+-1, /*CAST DEAD*/
+"ArrayIterator[MVirtualTypeProp]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__MVirtualTypeProp,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
+2829, /* Iterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3239,58 +3276,53 @@ const struct type type_standard__Array__standard__Set__nit__MAttribute = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__Array__standard__Set__nit__MAttribute = {
+const struct types resolution_table_core__array__ArrayIterator__nitc__MVirtualTypeProp = {
 0, /* dummy */
 {
-&type_standard__Set__nit__MAttribute, /* E: Set[MAttribute] */
-&type_standard__Array__standard__Set__nit__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
-&type_standard__Collection__standard__Set__nit__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
-&type_standard__Array__standard__Set__nit__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
-&type_standard__NativeArray__standard__Set__nit__MAttribute, /* NativeArray[E]: NativeArray[Set[MAttribute]] */
-&type_standard__Set__nit__MAttribute, /* E: Set[MAttribute] */
-&type_standard__Collection__standard__Set__nit__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
-&type_standard__Set__nit__MAttribute, /* E: Set[MAttribute] */
-&type_standard__Collection__standard__Set__nit__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
-&type_standard__Collection__standard__Set__nit__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
-&type_standard__Array__standard__Set__nit__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
-&type_standard__AbstractArray__standard__Set__nit__MAttribute, /* AbstractArray[E]: AbstractArray[Set[MAttribute]] */
-&type_standard__array__ArrayIterator__standard__Set__nit__MAttribute, /* ArrayIterator[E]: ArrayIterator[Set[MAttribute]] */
+&type_core__Array__nitc__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
+&type_core__AbstractArrayRead__nitc__MVirtualTypeProp, /* AbstractArrayRead[E]: AbstractArrayRead[MVirtualTypeProp] */
 }
 };
-/* runtime type MapValuesIterator[MClass, Set[MAttribute]] */
-const struct type type_standard__MapValuesIterator__nit__MClass__standard__Set__nit__MAttribute = {
+/* runtime type ArrayReverseIterator[MVirtualTypeProp] */
+const struct type type_core__array__ArrayReverseIterator__nitc__MVirtualTypeProp = {
 -1, /*CAST DEAD*/
-"MapValuesIterator[MClass, Set[MAttribute]]", /* class_name_string */
+"ArrayReverseIterator[MVirtualTypeProp]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__MapValuesIterator__nit__MClass__standard__Set__nit__MAttribute,
-5,
+&resolution_table_core__array__ArrayReverseIterator__nitc__MVirtualTypeProp,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+2829, /* Iterator[MProperty] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__MapValuesIterator__nit__MClass__standard__Set__nit__MAttribute = {
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MVirtualTypeProp = {
 0, /* dummy */
 {
-&type_standard__Array__standard__Set__nit__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
-&type_standard__MapIterator__nit__MClass__standard__Set__nit__MAttribute, /* MapIterator[K, V]: MapIterator[MClass, Set[MAttribute]] */
+&type_core__Array__nitc__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
+&type_core__AbstractArrayRead__nitc__MVirtualTypeProp, /* AbstractArrayRead[E]: AbstractArrayRead[MVirtualTypeProp] */
 }
 };
-/* runtime type NativeArray[MAttribute] */
-const struct type type_standard__NativeArray__nit__MAttribute = {
-1678,
-"NativeArray[MAttribute]", /* class_name_string */
-66,
+/* runtime type HashMapKeys[MVirtualTypeProp, Int] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MVirtualTypeProp__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapKeys[MVirtualTypeProp, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nit__MAttribute,
-219,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MVirtualTypeProp__core__Int,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3299,10 +3331,10 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1065, /* NativeArray[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2410, /* Collection[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3323,11 +3355,11 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
-1369, /* NativeArray[PropertyLayoutElement] */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
+2435, /* Collection[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3353,13 +3385,12 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2461, /* Collection[MVirtualTypeProp] */
 -1, /* empty */
 -1, /* empty */
-1678, /* NativeArray[MAttribute] */
-1690, /* NativeArray[nullable PropertyLayoutElement] */
-1697, /* NativeArray[nullable MAttribute] */
 -1, /* empty */
 -1, /* empty */
+2466, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3404,13 +3435,14 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1987, /* NativeArray[nullable MProperty] */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2518, /* Collection[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3418,6 +3450,27 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MVirtualTypeProp__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MVirtualTypeProp__core__Int, /* HashMap[K, V]: HashMap[MVirtualTypeProp, Int] */
+&type_core__Array__nitc__MVirtualTypeProp, /* Array[E]: Array[MVirtualTypeProp] */
+&type_core__MapKeysIterator__nitc__MVirtualTypeProp__core__Int, /* MapKeysIterator[K, V]: MapKeysIterator[MVirtualTypeProp, Int] */
+}
+};
+/* runtime type HashMapValues[MVirtualTypeProp, Int] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MVirtualTypeProp__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapValues[MVirtualTypeProp, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MVirtualTypeProp__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3437,6 +3490,7 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2418, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3451,6 +3505,11 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3508,53 +3567,12 @@ const struct type type_standard__NativeArray__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__MAttribute = {
-0, /* dummy */
-{
-&type_nit__MAttribute, /* E: MAttribute */
-&type_standard__NativeArray__nit__MAttribute, /* NativeArray[E]: NativeArray[MAttribute] */
-}
-};
-/* runtime type ArrayIterator[MAttribute] */
-const struct type type_standard__array__ArrayIterator__nit__MAttribute = {
--1, /*CAST DEAD*/
-"ArrayIterator[MAttribute]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__MAttribute,
-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__MAttribute = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MAttribute, /* Array[E]: Array[MAttribute] */
-&type_standard__AbstractArrayRead__nit__MAttribute, /* AbstractArrayRead[E]: AbstractArrayRead[MAttribute] */
-}
-};
-/* runtime type HashMapKeys[PropertyLayoutElement, Int] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayoutElement__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapKeys[PropertyLayoutElement, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__PropertyLayoutElement__standard__Int,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3565,6 +3583,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3579,6 +3598,30 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MVirtualTypeProp__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MVirtualTypeProp__core__Int, /* HashMap[K, V]: HashMap[MVirtualTypeProp, Int] */
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+&type_core__MapValuesIterator__nitc__MVirtualTypeProp__core__Int, /* MapValuesIterator[K, V]: MapValuesIterator[MVirtualTypeProp, Int] */
+}
+};
+/* runtime type HashMapIterator[MVirtualTypeProp, Int] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MVirtualTypeProp__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapIterator[MVirtualTypeProp, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MVirtualTypeProp__core__Int,
+79,
+{
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3589,9 +3632,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
-2339, /* Collection[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3621,7 +3662,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2369, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3634,7 +3674,10 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
+2708, /* MapIterator[MVirtualTypeProp, Int] */
 -1, /* empty */
+2710, /* MapIterator[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3653,6 +3696,25 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MVirtualTypeProp__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MVirtualTypeProp__core__Int, /* HashMap[K, V]: HashMap[MVirtualTypeProp, Int] */
+}
+};
+/* runtime type HashMapNode[MVirtualTypeProp, Int] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int = {
+1774,
+"HashMapNode[MVirtualTypeProp, Int]", /* class_name_string */
+131,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3677,30 +3739,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__PropertyLayoutElement__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__PropertyLayoutElement__standard__Int, /* HashMap[K, V]: HashMap[PropertyLayoutElement, Int] */
-&type_standard__Array__nit__PropertyLayoutElement, /* Array[E]: Array[PropertyLayoutElement] */
-&type_standard__MapKeysIterator__nit__PropertyLayoutElement__standard__Int, /* MapKeysIterator[K, V]: MapKeysIterator[PropertyLayoutElement, Int] */
-}
-};
-/* runtime type HashMapValues[PropertyLayoutElement, Int] */
-const struct type type_standard__hash_collection__HashMapValues__nit__PropertyLayoutElement__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapValues[PropertyLayoutElement, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__PropertyLayoutElement__standard__Int,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-2147, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3728,11 +3768,13 @@ const struct type type_standard__hash_collection__HashMapValues__nit__PropertyLa
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
+2804, /* nullable HashMapNode[MVirtualTypeProp, Int] */
 -1, /* empty */
+2806, /* nullable HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3801,7 +3843,10 @@ const struct type type_standard__hash_collection__HashMapValues__nit__PropertyLa
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
+1774, /* HashMapNode[MVirtualTypeProp, Int] */
 -1, /* empty */
+1808, /* HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3822,25 +3867,27 @@ const struct type type_standard__hash_collection__HashMapValues__nit__PropertyLa
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__PropertyLayoutElement__standard__Int = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__PropertyLayoutElement__standard__Int, /* HashMap[K, V]: HashMap[PropertyLayoutElement, Int] */
-&type_standard__Array__standard__Int, /* Array[E]: Array[Int] */
-&type_standard__MapValuesIterator__nit__PropertyLayoutElement__standard__Int, /* MapValuesIterator[K, V]: MapValuesIterator[PropertyLayoutElement, Int] */
+&type_core__Int, /* V: Int */
+&type_nitc__MVirtualTypeProp, /* K: MVirtualTypeProp */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__PropertyLayoutElement__standard__Int = {
-1682,
-"NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]]", /* class_name_string */
-198,
+/* runtime type NativeArray[nullable HashMapNode[MVirtualTypeProp, Int]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int = {
+1775,
+"NativeArray[nullable HashMapNode[MVirtualTypeProp, Int]]", /* class_name_string */
+203,
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__PropertyLayoutElement__standard__Int,
-219,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -3949,6 +3996,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 */
@@ -4037,7 +4085,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1682, /* NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
+1775, /* NativeArray[nullable HashMapNode[MVirtualTypeProp, Int]] */
+-1, /* empty */
+1809, /* NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4060,24 +4111,24 @@ 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__PropertyLayoutElement__standard__Int = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__PropertyLayoutElement__standard__Int, /* E: nullable HashMapNode[PropertyLayoutElement, Int] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__PropertyLayoutElement__standard__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int, /* E: nullable HashMapNode[MVirtualTypeProp, Int] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MVirtualTypeProp__core__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MVirtualTypeProp, Int]] */
 }
 };
-/* runtime type HashMapIterator[PropertyLayoutElement, Int] */
-const struct type type_standard__HashMapIterator__nit__PropertyLayoutElement__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapIterator[PropertyLayoutElement, Int]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[AImport] */
+const struct type type_core__NativeArray__nitc__AImport = {
+1776,
+"NativeArray[AImport]", /* class_name_string */
+64,
 0,
-&resolution_table_standard__HashMapIterator__nit__PropertyLayoutElement__standard__Int,
-77,
+&resolution_table_core__NativeArray__nitc__AImport,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4109,12 +4160,14 @@ const struct type type_standard__HashMapIterator__nit__PropertyLayoutElement__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4134,9 +4187,11 @@ const struct type type_standard__HashMapIterator__nit__PropertyLayoutElement__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2602, /* MapIterator[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
+1329, /* NativeArray[ANode] */
+-1, /* empty */
+1776, /* NativeArray[AImport] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4153,25 +4208,6 @@ const struct type type_standard__HashMapIterator__nit__PropertyLayoutElement__st
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__PropertyLayoutElement__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__PropertyLayoutElement__standard__Int, /* HashMap[K, V]: HashMap[PropertyLayoutElement, Int] */
-}
-};
-/* runtime type HashMapNode[PropertyLayoutElement, Int] */
-const struct type type_standard__hash_collection__HashMapNode__nit__PropertyLayoutElement__standard__Int = {
-1684,
-"HashMapNode[PropertyLayoutElement, Int]", /* class_name_string */
-129,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__PropertyLayoutElement__standard__Int,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4204,6 +4240,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4226,7 +4263,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2285, /* nullable HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4299,7 +4335,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__PropertyLayo
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1684, /* HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4320,24 +4355,54 @@ const struct type type_standard__hash_collection__HashMapNode__nit__PropertyLayo
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__PropertyLayoutElement__standard__Int = {
+const struct types resolution_table_core__NativeArray__nitc__AImport = {
 0, /* dummy */
 {
-&type_standard__Int, /* V: Int */
-&type_nit__PropertyLayoutElement, /* K: PropertyLayoutElement */
+&type_nitc__AImport, /* E: AImport */
+&type_core__NativeArray__nitc__AImport, /* NativeArray[E]: NativeArray[AImport] */
 }
 };
-/* runtime type HashMapKeys[MClass, HashSet[Int]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__standard__HashSet__standard__Int = {
+/* runtime type ArrayIterator[AImport] */
+const struct type type_core__array__ArrayIterator__nitc__AImport = {
 -1, /*CAST DEAD*/
-"HashMapKeys[MClass, HashSet[Int]]", /* class_name_string */
+"ArrayIterator[AImport]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__AImport,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__AImport = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AImport, /* Array[E]: Array[AImport] */
+&type_core__AbstractArrayRead__nitc__AImport, /* AbstractArrayRead[E]: AbstractArrayRead[AImport] */
+}
+};
+/* runtime type ArrayReverseIterator[AImport] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AImport = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[AImport]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__HashSet__standard__Int,
-124,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AImport,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4346,9 +4411,28 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AImport = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AImport, /* Array[E]: Array[AImport] */
+&type_core__AbstractArrayRead__nitc__AImport, /* AbstractArrayRead[E]: AbstractArrayRead[AImport] */
+}
+};
+/* runtime type NativeArray[AFormaldef] */
+const struct type type_core__NativeArray__nitc__AFormaldef = {
+1779,
+"NativeArray[AFormaldef]", /* class_name_string */
+65,
+0,
+&resolution_table_core__NativeArray__nitc__AFormaldef,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4372,20 +4456,20 @@ 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 */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1492, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4407,8 +4491,10 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1329, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
+1779, /* NativeArray[AFormaldef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4456,31 +4542,14 @@ 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 */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__standard__HashSet__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__standard__HashSet__standard__Int, /* HashMap[K, V]: HashMap[MClass, HashSet[Int]] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapKeysIterator__nit__MClass__standard__HashSet__standard__Int, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, HashSet[Int]] */
-}
-};
-/* runtime type HashMapValues[MClass, HashSet[Int]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClass__standard__HashSet__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, HashSet[Int]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClass__standard__HashSet__standard__Int,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4515,7 +4584,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 */
@@ -4587,14 +4655,56 @@ 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__AFormaldef = {
+0, /* dummy */
+{
+&type_nitc__AFormaldef, /* E: AFormaldef */
+&type_core__NativeArray__nitc__AFormaldef, /* NativeArray[E]: NativeArray[AFormaldef] */
+}
+};
+/* runtime type ArrayIterator[AFormaldef] */
+const struct type type_core__array__ArrayIterator__nitc__AFormaldef = {
+-1, /*CAST DEAD*/
+"ArrayIterator[AFormaldef]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__AFormaldef,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2412, /* Collection[HashSet[Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__AFormaldef = {
+0, /* dummy */
+{
+&type_core__Array__nitc__AFormaldef, /* Array[E]: Array[AFormaldef] */
+&type_core__AbstractArrayRead__nitc__AFormaldef, /* AbstractArrayRead[E]: AbstractArrayRead[AFormaldef] */
+}
+};
+/* runtime type ArrayReverseIterator[AFormaldef] */
+const struct type type_core__array__ArrayReverseIterator__nitc__AFormaldef = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[AFormaldef]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__AFormaldef,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4605,25 +4715,30 @@ 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__HashSet__standard__Int = {
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__AFormaldef = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClass__standard__HashSet__standard__Int, /* HashMap[K, V]: HashMap[MClass, HashSet[Int]] */
-&type_standard__Array__standard__HashSet__standard__Int, /* Array[E]: Array[HashSet[Int]] */
-&type_standard__MapValuesIterator__nit__MClass__standard__HashSet__standard__Int, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, HashSet[Int]] */
+&type_core__Array__nitc__AFormaldef, /* Array[E]: Array[AFormaldef] */
+&type_core__AbstractArrayRead__nitc__AFormaldef, /* AbstractArrayRead[E]: AbstractArrayRead[AFormaldef] */
 }
 };
-/* runtime type NativeArray[nullable HashMapNode[MClass, HashSet[Int]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__HashSet__standard__Int = {
-1687,
-"NativeArray[nullable HashMapNode[MClass, HashSet[Int]]]", /* class_name_string */
-199,
+/* runtime type HashMapKeys[MType, POSetElement[MType]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MType__poset__POSetElement__nitc__MType = {
+-1, /*CAST DEAD*/
+"HashMapKeys[MType, POSetElement[MType]]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__HashSet__standard__Int,
-219,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MType__poset__POSetElement__nitc__MType,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4644,6 +4759,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2425, /* Collection[MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4651,6 +4767,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 */
@@ -4661,6 +4778,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2444, /* Collection[nullable MType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4727,6 +4845,53 @@ 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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MType__poset__POSetElement__nitc__MType = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MType__poset__POSetElement__nitc__MType, /* HashMap[K, V]: HashMap[MType, POSetElement[MType]] */
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__MapKeysIterator__nitc__MType__poset__POSetElement__nitc__MType, /* MapKeysIterator[K, V]: MapKeysIterator[MType, POSetElement[MType]] */
+}
+};
+/* runtime type HashMapValues[MType, POSetElement[MType]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MType__poset__POSetElement__nitc__MType = {
+-1, /*CAST DEAD*/
+"HashMapValues[MType, POSetElement[MType]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MType__poset__POSetElement__nitc__MType,
+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 */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4750,6 +4915,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 */
@@ -4821,13 +4987,14 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1687, /* NativeArray[nullable HashMapNode[MClass, HashSet[Int]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
+2512, /* Collection[POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4843,24 +5010,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__HashSet__standard__Int = {
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MType__poset__POSetElement__nitc__MType = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__HashSet__standard__Int, /* E: nullable HashMapNode[MClass, HashSet[Int]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__standard__HashSet__standard__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, HashSet[Int]]] */
+&type_core__HashMap__nitc__MType__poset__POSetElement__nitc__MType, /* HashMap[K, V]: HashMap[MType, POSetElement[MType]] */
+&type_core__Array__poset__POSetElement__nitc__MType, /* Array[E]: Array[POSetElement[MType]] */
+&type_core__MapValuesIterator__nitc__MType__poset__POSetElement__nitc__MType, /* MapValuesIterator[K, V]: MapValuesIterator[MType, POSetElement[MType]] */
 }
 };
-/* runtime type HashMapIterator[MClass, HashSet[Int]] */
-const struct type type_standard__HashMapIterator__nit__MClass__standard__HashSet__standard__Int = {
+/* runtime type HashMapIterator[MType, POSetElement[MType]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MType__poset__POSetElement__nitc__MType = {
 -1, /*CAST DEAD*/
-"HashMapIterator[MClass, HashSet[Int]]", /* class_name_string */
+"HashMapIterator[MType, POSetElement[MType]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMapIterator__nit__MClass__standard__HashSet__standard__Int,
-77,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MType__poset__POSetElement__nitc__MType,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4915,10 +5084,11 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__HashSet
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
+2709, /* MapIterator[MType, POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
-2603, /* MapIterator[MClass, HashSet[Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -4938,23 +5108,25 @@ const struct type type_standard__HashMapIterator__nit__MClass__standard__HashSet
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__HashMapIterator__nit__MClass__standard__HashSet__standard__Int = {
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MType__poset__POSetElement__nitc__MType = {
 0, /* dummy */
 {
-&type_standard__HashMap__nit__MClass__standard__HashSet__standard__Int, /* HashMap[K, V]: HashMap[MClass, HashSet[Int]] */
+&type_core__HashMap__nitc__MType__poset__POSetElement__nitc__MType, /* HashMap[K, V]: HashMap[MType, POSetElement[MType]] */
 }
 };
-/* runtime type HashMapNode[MClass, HashSet[Int]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClass__standard__HashSet__standard__Int = {
-1689,
-"HashMapNode[MClass, HashSet[Int]]", /* class_name_string */
-130,
+/* runtime type HashMapNode[MType, POSetElement[MType]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType = {
+1785,
+"HashMapNode[MType, POSetElement[MType]]", /* class_name_string */
+132,
 0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClass__standard__HashSet__standard__Int,
-148,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType,
+152,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5006,11 +5178,12 @@ 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 */
+2805, /* nullable HashMapNode[MType, POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2286, /* nullable HashMapNode[MClass, HashSet[Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5080,10 +5253,11 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__stan
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
+1785, /* HashMapNode[MType, POSetElement[MType]] */
 -1, /* empty */
 -1, /* empty */
-1689, /* HashMapNode[MClass, HashSet[Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5103,24 +5277,27 @@ 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__HashSet__standard__Int = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType = {
 0, /* dummy */
 {
-&type_standard__HashSet__standard__Int, /* V: HashSet[Int] */
-&type_nit__MClass, /* K: MClass */
+&type_poset__POSetElement__nitc__MType, /* V: POSetElement[MType] */
+&type_nitc__MType, /* K: MType */
 }
 };
-/* runtime type NativeArray[nullable PropertyLayoutElement] */
-const struct type type_standard__NativeArray__nullable__nit__PropertyLayoutElement = {
-1690,
-"NativeArray[nullable PropertyLayoutElement]", /* class_name_string */
-67,
+/* runtime type NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType = {
+1786,
+"NativeArray[nullable HashMapNode[MType, POSetElement[MType]]]", /* class_name_string */
+204,
 0,
-&resolution_table_standard__NativeArray__nullable__nit__PropertyLayoutElement,
-219,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5186,7 +5363,6 @@ const struct type type_standard__NativeArray__nullable__nit__PropertyLayoutEleme
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1690, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5230,6 +5406,7 @@ const struct type type_standard__NativeArray__nullable__nit__PropertyLayoutEleme
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5318,6 +5495,10 @@ const struct type type_standard__NativeArray__nullable__nit__PropertyLayoutEleme
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
+-1, /* empty */
+1786, /* NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5340,52 +5521,54 @@ const struct type type_standard__NativeArray__nullable__nit__PropertyLayoutEleme
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nullable__nit__PropertyLayoutElement = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType = {
 0, /* dummy */
 {
-&type_nullable__nit__PropertyLayoutElement, /* E: nullable PropertyLayoutElement */
-&type_standard__NativeArray__nullable__nit__PropertyLayoutElement, /* NativeArray[E]: NativeArray[nullable PropertyLayoutElement] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType, /* E: nullable HashMapNode[MType, POSetElement[MType]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__poset__POSetElement__nitc__MType, /* NativeArray[E]: NativeArray[nullable HashMapNode[MType, POSetElement[MType]]] */
 }
 };
-/* runtime type ArrayIterator[nullable PropertyLayoutElement] */
-const struct type type_standard__array__ArrayIterator__nullable__nit__PropertyLayoutElement = {
+/* runtime type RefIterator[MType] */
+const struct type type_core__abstract_collection__RefIterator__nitc__MType = {
 -1, /*CAST DEAD*/
-"ArrayIterator[nullable PropertyLayoutElement]", /* class_name_string */
+"RefIterator[MType]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__array__ArrayIterator__nullable__nit__PropertyLayoutElement,
-9,
+&resolution_table_core__abstract_collection__RefIterator__nitc__MType,
+11,
 {
-80, /* Object */
-2622, /* nullable Object */
+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_standard__array__ArrayIterator__nullable__nit__PropertyLayoutElement = {
+const struct types resolution_table_core__abstract_collection__RefIterator__nitc__MType = {
 0, /* dummy */
 {
-&type_standard__Array__nullable__nit__PropertyLayoutElement, /* Array[E]: Array[nullable PropertyLayoutElement] */
-&type_standard__AbstractArrayRead__nullable__nit__PropertyLayoutElement, /* AbstractArrayRead[E]: AbstractArrayRead[nullable PropertyLayoutElement] */
+&type_core__Array__nitc__MType, /* Array[E]: Array[MType] */
+&type_core__Ref__nitc__MType, /* Ref[E]: Ref[MType] */
 }
 };
-/* runtime type HashMapKeys[MAttribute, Int] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MAttribute__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapKeys[MAttribute, Int]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type HashMap[MModule, HashMap[MType, Array[MMethodDef]]] */
+const struct type type_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
+1788,
+"HashMap[MModule, HashMap[MType, Array[MMethodDef]]]", /* class_name_string */
+79,
 0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MAttribute__standard__Int,
-124,
+&resolution_table_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef,
+85,
 {
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
+2203, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5396,7 +5579,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2314, /* Collection[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5419,9 +5601,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
-2339, /* Collection[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5449,15 +5629,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
-2368, /* Collection[MAttribute] */
-2369, /* Collection[nullable PropertyLayoutElement] */
-2370, /* Collection[nullable MAttribute] */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5473,11 +5645,44 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1788, /* HashMap[MModule, HashMap[MType, Array[MMethodDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__HashMap__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
+0, /* dummy */
+{
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__hash_collection__HashMapIterator__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapIterator[K, V]: HashMapIterator[MModule, HashMap[MType, Array[MMethodDef]]] */
+&type_nitc__MModule, /* K: MModule */
+&type_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* V: HashMap[MType, Array[MMethodDef]] */
+&type_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapNode[K, V]: HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
+&type_core__hash_collection__HashMapKeys__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapKeys[K, V]: HashMapKeys[MModule, HashMap[MType, Array[MMethodDef]]] */
+&type_core__hash_collection__HashMapValues__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapValues[K, V]: HashMapValues[MModule, HashMap[MType, Array[MMethodDef]]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* nullable N: nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
+NULL, /* empty */
+&type_core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* N: HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MModule__core__HashMap__nitc__MType__core__Array__nitc__MMethodDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MMethodDef]]]] */
+}
+};
+/* runtime type HashMap[MType, Array[MMethodDef]] */
+const struct type type_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
+1789,
+"HashMap[MType, Array[MMethodDef]]", /* class_name_string */
+80,
+0,
+&resolution_table_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef,
+85,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2203, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5499,7 +5704,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2417, /* Collection[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5507,30 +5711,8 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MAttribute__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MAttribute__standard__Int, /* HashMap[K, V]: HashMap[MAttribute, Int] */
-&type_standard__Array__nit__MAttribute, /* Array[E]: Array[MAttribute] */
-&type_standard__MapKeysIterator__nit__MAttribute__standard__Int, /* MapKeysIterator[K, V]: MapKeysIterator[MAttribute, Int] */
-}
-};
-/* runtime type HashMapValues[MAttribute, Int] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MAttribute__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapValues[MAttribute, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MAttribute__standard__Int,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-2147, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5560,9 +5742,10 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1357, /* HashMap[Object, Array[Object]] */
+1358, /* HashMap[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5577,10 +5760,42 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1789, /* HashMap[MType, Array[MMethodDef]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__HashMap__nitc__MType__core__Array__nitc__MMethodDef = {
+0, /* dummy */
+{
+NULL, /* empty */
+NULL, /* empty */
+NULL, /* empty */
+&type_core__hash_collection__HashMapIterator__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapIterator[K, V]: HashMapIterator[MType, Array[MMethodDef]] */
+&type_nitc__MType, /* K: MType */
+&type_core__Array__nitc__MMethodDef, /* V: Array[MMethodDef] */
+&type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapNode[K, V]: HashMapNode[MType, Array[MMethodDef]] */
+&type_core__hash_collection__HashMapKeys__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapKeys[K, V]: HashMapKeys[MType, Array[MMethodDef]] */
+&type_core__hash_collection__HashMapValues__nitc__MType__core__Array__nitc__MMethodDef, /* HashMapValues[K, V]: HashMapValues[MType, Array[MMethodDef]] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef, /* nullable N: nullable HashMapNode[MType, Array[MMethodDef]] */
+NULL, /* empty */
+&type_core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef, /* N: HashMapNode[MType, Array[MMethodDef]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MType__core__Array__nitc__MMethodDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, Array[MMethodDef]]] */
+}
+};
+/* runtime type NativeArray[Scope] */
+const struct type type_core__NativeArray__nitc__scope__Scope = {
+1790,
+"NativeArray[Scope]", /* class_name_string */
+66,
+0,
+&resolution_table_core__NativeArray__nitc__scope__Scope,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5612,6 +5827,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5644,41 +5860,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MAttribute__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MAttribute__standard__Int, /* HashMap[K, V]: HashMap[MAttribute, Int] */
-&type_standard__Array__standard__Int, /* Array[E]: Array[Int] */
-&type_standard__MapValuesIterator__nit__MAttribute__standard__Int, /* MapValuesIterator[K, V]: MapValuesIterator[MAttribute, Int] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MAttribute, Int]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MAttribute__standard__Int = {
-1694,
-"NativeArray[nullable HashMapNode[MAttribute, Int]]", /* class_name_string */
-200,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MAttribute__standard__Int,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
+1790, /* NativeArray[Scope] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5725,6 +5907,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 */
@@ -5837,6 +6020,27 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__scope__Scope = {
+0, /* dummy */
+{
+&type_nitc__scope__Scope, /* E: Scope */
+&type_core__NativeArray__nitc__scope__Scope, /* NativeArray[E]: NativeArray[Scope] */
+}
+};
+/* runtime type ArrayIterator[Scope] */
+const struct type type_core__array__ArrayIterator__nitc__scope__Scope = {
+-1, /*CAST DEAD*/
+"ArrayIterator[Scope]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__scope__Scope,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5845,6 +6049,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__nitc__scope__Scope = {
+0, /* dummy */
+{
+&type_core__Array__nitc__scope__Scope, /* Array[E]: Array[Scope] */
+&type_core__AbstractArrayRead__nitc__scope__Scope, /* AbstractArrayRead[E]: AbstractArrayRead[Scope] */
+}
+};
+/* runtime type ArrayReverseIterator[Scope] */
+const struct type type_core__array__ArrayReverseIterator__nitc__scope__Scope = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[Scope]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__scope__Scope,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5853,6 +6078,27 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__scope__Scope = {
+0, /* dummy */
+{
+&type_core__Array__nitc__scope__Scope, /* Array[E]: Array[Scope] */
+&type_core__AbstractArrayRead__nitc__scope__Scope, /* AbstractArrayRead[E]: AbstractArrayRead[Scope] */
+}
+};
+/* runtime type RefIterator[Scope] */
+const struct type type_core__abstract_collection__RefIterator__nitc__scope__Scope = {
+-1, /*CAST DEAD*/
+"RefIterator[Scope]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__abstract_collection__RefIterator__nitc__scope__Scope,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5861,16 +6107,55 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__abstract_collection__RefIterator__nitc__scope__Scope = {
+0, /* dummy */
+{
+&type_core__Array__nitc__scope__Scope, /* Array[E]: Array[Scope] */
+&type_core__Ref__nitc__scope__Scope, /* Ref[E]: Ref[Scope] */
+}
+};
+/* runtime type MapKeysIterator[Variable, nullable MType] */
+const struct type type_core__MapKeysIterator__nitc__Variable__nullable__nitc__MType = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[Variable, nullable MType]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__nitc__Variable__nullable__nitc__MType,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1682, /* NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
 -1, /* empty */
-1694, /* NativeArray[nullable HashMapNode[MAttribute, Int]] */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__Variable__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nitc__Variable, /* Array[E]: Array[Variable] */
+&type_core__MapIterator__nitc__Variable__nullable__nitc__MType, /* MapIterator[K, V]: MapIterator[Variable, nullable MType] */
+}
+};
+/* runtime type MapValuesIterator[Variable, nullable MType] */
+const struct type type_core__MapValuesIterator__nitc__Variable__nullable__nitc__MType = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[Variable, nullable MType]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__nitc__Variable__nullable__nitc__MType,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5880,6 +6165,27 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__Variable__nullable__nitc__MType = {
+0, /* dummy */
+{
+&type_core__Array__nullable__nitc__MType, /* Array[E]: Array[nullable MType] */
+&type_core__MapIterator__nitc__Variable__nullable__nitc__MType, /* MapIterator[K, V]: MapIterator[Variable, nullable MType] */
+}
+};
+/* runtime type MapKeysIterator[MClass, Set[PropertyLayoutElement]] */
+const struct type type_core__MapKeysIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5890,24 +6196,24 @@ 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__MAttribute__standard__Int = {
+const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement = {
 0, /* dummy */
 {
-&type_nullable__standard__hash_collection__HashMapNode__nit__MAttribute__standard__Int, /* E: nullable HashMapNode[MAttribute, Int] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MAttribute__standard__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MAttribute, Int]] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement, /* MapIterator[K, V]: MapIterator[MClass, Set[PropertyLayoutElement]] */
 }
 };
-/* runtime type HashMapIterator[MAttribute, Int] */
-const struct type type_standard__HashMapIterator__nit__MAttribute__standard__Int = {
--1, /*CAST DEAD*/
-"HashMapIterator[MAttribute, Int]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type Array[Set[PropertyLayoutElement]] */
+const struct type type_core__Array__core__Set__nitc__PropertyLayoutElement = {
+1797,
+"Array[Set[PropertyLayoutElement]]", /* class_name_string */
+483,
 0,
-&resolution_table_standard__HashMapIterator__nit__MAttribute__standard__Int,
-77,
+&resolution_table_core__Array__core__Set__nitc__PropertyLayoutElement,
+510,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5942,6 +6248,7 @@ const struct type type_standard__HashMapIterator__nit__MAttribute__standard__Int
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5964,9 +6271,7 @@ const struct type type_standard__HashMapIterator__nit__MAttribute__standard__Int
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2602, /* MapIterator[PropertyLayoutElement, Int] */
 -1, /* empty */
-2604, /* MapIterator[MAttribute, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -5983,26 +6288,6 @@ const struct type type_standard__HashMapIterator__nit__MAttribute__standard__Int
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MAttribute__standard__Int = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MAttribute__standard__Int, /* HashMap[K, V]: HashMap[MAttribute, Int] */
-}
-};
-/* runtime type HashMapNode[MAttribute, Int] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MAttribute__standard__Int = {
-1696,
-"HashMapNode[MAttribute, Int]", /* class_name_string */
-131,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MAttribute__standard__Int,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
--1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6027,6 +6312,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2497, /* Collection[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6040,6 +6326,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6054,11 +6341,11 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
-2285, /* nullable HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
-2287, /* nullable HashMapNode[MAttribute, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6088,6 +6375,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6129,9 +6417,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1684, /* HashMapNode[PropertyLayoutElement, Int] */
 -1, /* empty */
-1696, /* HashMapNode[MAttribute, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6148,26 +6434,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MAttribute__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MAttribute__standard__Int = {
-0, /* dummy */
-{
-&type_standard__Int, /* V: Int */
-&type_nit__MAttribute, /* K: MAttribute */
-}
-};
-/* runtime type NativeArray[nullable MAttribute] */
-const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
-1697,
-"NativeArray[nullable MAttribute]", /* class_name_string */
-68,
-0,
-&resolution_table_standard__NativeArray__nullable__nit__MAttribute,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6175,6 +6441,7 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2623, /* AbstractArrayRead[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6188,6 +6455,7 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2637, /* AbstractArrayRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6233,8 +6501,7 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1690, /* NativeArray[nullable PropertyLayoutElement] */
-1697, /* NativeArray[nullable MAttribute] */
+2881, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6281,7 +6548,6 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1987, /* NativeArray[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6301,6 +6567,7 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2947, /* AbstractArray[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6314,6 +6581,7 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2961, /* AbstractArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6328,6 +6596,7 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6385,26 +6654,6 @@ const struct type type_standard__NativeArray__nullable__nit__MAttribute = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__nit__MAttribute = {
-0, /* dummy */
-{
-&type_nullable__nit__MAttribute, /* E: nullable MAttribute */
-&type_standard__NativeArray__nullable__nit__MAttribute, /* NativeArray[E]: NativeArray[nullable MAttribute] */
-}
-};
-/* runtime type ArrayIterator[nullable MAttribute] */
-const struct type type_standard__array__ArrayIterator__nullable__nit__MAttribute = {
--1, /*CAST DEAD*/
-"ArrayIterator[nullable MAttribute]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nullable__nit__MAttribute,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6412,26 +6661,6 @@ const struct type type_standard__array__ArrayIterator__nullable__nit__MAttribute
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__nullable__nit__MAttribute = {
-0, /* dummy */
-{
-&type_standard__Array__nullable__nit__MAttribute, /* Array[E]: Array[nullable MAttribute] */
-&type_standard__AbstractArrayRead__nullable__nit__MAttribute, /* AbstractArrayRead[E]: AbstractArrayRead[nullable MAttribute] */
-}
-};
-/* runtime type HashMapKeys[MClass, POSetElement[MClass]] */
-const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__poset__POSetElement__nit__MClass = {
--1, /*CAST DEAD*/
-"HashMapKeys[MClass, POSetElement[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__poset__POSetElement__nit__MClass,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6442,7 +6671,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2313, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6466,11 +6694,10 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
+1797, /* Array[Set[PropertyLayoutElement]] */
 -1, /* empty */
 -1, /* empty */
-2341, /* Collection[nullable MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6495,6 +6722,40 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__core__Set__nitc__PropertyLayoutElement = {
+0, /* dummy */
+{
+&type_core__Set__nitc__PropertyLayoutElement, /* E: Set[PropertyLayoutElement] */
+&type_core__Array__core__Set__nitc__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
+&type_core__Collection__core__Set__nitc__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
+&type_core__Array__core__Set__nitc__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
+&type_core__AbstractArray__core__Set__nitc__PropertyLayoutElement, /* AbstractArray[E]: AbstractArray[Set[PropertyLayoutElement]] */
+&type_core__NativeArray__core__Set__nitc__PropertyLayoutElement, /* NativeArray[E]: NativeArray[Set[PropertyLayoutElement]] */
+&type_core__Set__nitc__PropertyLayoutElement, /* E: Set[PropertyLayoutElement] */
+&type_core__Collection__core__Set__nitc__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
+&type_core__Set__nitc__PropertyLayoutElement, /* E: Set[PropertyLayoutElement] */
+&type_core__Collection__core__Set__nitc__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
+&type_core__Collection__core__Set__nitc__PropertyLayoutElement, /* Collection[E]: Collection[Set[PropertyLayoutElement]] */
+&type_core__Array__core__Set__nitc__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
+&type_core__AbstractArray__core__Set__nitc__PropertyLayoutElement, /* AbstractArray[E]: AbstractArray[Set[PropertyLayoutElement]] */
+&type_core__array__ArrayIterator__core__Set__nitc__PropertyLayoutElement, /* ArrayIterator[E]: ArrayIterator[Set[PropertyLayoutElement]] */
+&type_core__array__ArrayReverseIterator__core__Set__nitc__PropertyLayoutElement, /* ArrayReverseIterator[E]: ArrayReverseIterator[Set[PropertyLayoutElement]] */
+}
+};
+/* runtime type MapValuesIterator[MClass, Set[PropertyLayoutElement]] */
+const struct type type_core__MapValuesIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[MClass, Set[PropertyLayoutElement]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6503,6 +6764,27 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement = {
+0, /* dummy */
+{
+&type_core__Array__core__Set__nitc__PropertyLayoutElement, /* Array[E]: Array[Set[PropertyLayoutElement]] */
+&type_core__MapIterator__nitc__MClass__core__Set__nitc__PropertyLayoutElement, /* MapIterator[K, V]: MapIterator[MClass, Set[PropertyLayoutElement]] */
+}
+};
+/* runtime type MapKeysIterator[MClass, Set[MAttribute]] */
+const struct type type_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MAttribute = {
+-1, /*CAST DEAD*/
+"MapKeysIterator[MClass, Set[MAttribute]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MAttribute,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6511,6 +6793,26 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapKeysIterator__nitc__MClass__core__Set__nitc__MAttribute = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapIterator__nitc__MClass__core__Set__nitc__MAttribute, /* MapIterator[K, V]: MapIterator[MClass, Set[MAttribute]] */
+}
+};
+/* runtime type Array[Set[MAttribute]] */
+const struct type type_core__Array__core__Set__nitc__MAttribute = {
+1800,
+"Array[Set[MAttribute]]", /* class_name_string */
+484,
+0,
+&resolution_table_core__Array__core__Set__nitc__MAttribute,
+510,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6545,6 +6847,7 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6554,27 +6857,6 @@ const struct type type_standard__hash_collection__HashMapKeys__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapKeys__nit__MClass__poset__POSetElement__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__poset__POSetElement__nit__MClass, /* HashMap[K, V]: HashMap[MClass, POSetElement[MClass]] */
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapKeysIterator__nit__MClass__poset__POSetElement__nit__MClass, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, POSetElement[MClass]] */
-}
-};
-/* runtime type HashMapValues[MClass, POSetElement[MClass]] */
-const struct type type_standard__hash_collection__HashMapValues__nit__MClass__poset__POSetElement__nit__MClass = {
--1, /*CAST DEAD*/
-"HashMapValues[MClass, POSetElement[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__hash_collection__HashMapValues__nit__MClass__poset__POSetElement__nit__MClass,
-124,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6609,7 +6891,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__po
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6618,6 +6899,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__po
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2485, /* Collection[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6629,6 +6911,8 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__po
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2497, /* Collection[Set[PropertyLayoutElement]] */
+2498, /* Collection[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6641,6 +6925,7 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__po
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6655,6 +6940,8 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__po
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2015, /* Array[nullable Object] */
+2202, /* SequenceRead[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6685,9 +6972,9 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__po
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2413, /* Collection[POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
+2557, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6697,27 +6984,6 @@ const struct type type_standard__hash_collection__HashMapValues__nit__MClass__po
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapValues__nit__MClass__poset__POSetElement__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__poset__POSetElement__nit__MClass, /* HashMap[K, V]: HashMap[MClass, POSetElement[MClass]] */
-&type_standard__Array__poset__POSetElement__nit__MClass, /* Array[E]: Array[POSetElement[MClass]] */
-&type_standard__MapValuesIterator__nit__MClass__poset__POSetElement__nit__MClass, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, POSetElement[MClass]] */
-}
-};
-/* runtime type NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]] */
-const struct type type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass = {
-1701,
-"NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]]", /* class_name_string */
-201,
-0,
-&resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6762,6 +7028,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2611, /* AbstractArrayRead[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6773,6 +7040,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2623, /* AbstractArrayRead[Set[PropertyLayoutElement]] */
+2624, /* AbstractArrayRead[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6785,6 +7054,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 */
@@ -6830,6 +7100,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 */
@@ -6883,6 +7154,7 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2935, /* AbstractArray[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6894,6 +7166,8 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2947, /* AbstractArray[Set[PropertyLayoutElement]] */
+2948, /* AbstractArray[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6906,6 +7180,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 */
@@ -6917,10 +7192,10 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1701, /* NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+228, /* Array[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -6935,26 +7210,6 @@ const struct type type_standard__NativeArray__nullable__standard__hash_collectio
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass = {
-0, /* dummy */
-{
-&type_nullable__standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass, /* E: nullable HashMapNode[MClass, POSetElement[MClass]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, POSetElement[MClass]]] */
-}
-};
-/* runtime type HashMapIterator[MClass, POSetElement[MClass]] */
-const struct type type_standard__HashMapIterator__nit__MClass__poset__POSetElement__nit__MClass = {
--1, /*CAST DEAD*/
-"HashMapIterator[MClass, POSetElement[MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__HashMapIterator__nit__MClass__poset__POSetElement__nit__MClass,
-77,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7014,7 +7269,6 @@ const struct type type_standard__HashMapIterator__nit__MClass__poset__POSetEleme
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2605, /* MapIterator[MClass, POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7028,27 +7282,9 @@ const struct type type_standard__HashMapIterator__nit__MClass__poset__POSetEleme
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1664, /* Array[Set[MProperty]] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMapIterator__nit__MClass__poset__POSetElement__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__HashMap__nit__MClass__poset__POSetElement__nit__MClass, /* HashMap[K, V]: HashMap[MClass, POSetElement[MClass]] */
-}
-};
-/* runtime type HashMapNode[MClass, POSetElement[MClass]] */
-const struct type type_standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass = {
-1703,
-"HashMapNode[MClass, POSetElement[MClass]]", /* class_name_string */
-132,
-0,
-&resolution_table_standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass,
-148,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7058,6 +7294,8 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1797, /* Array[Set[PropertyLayoutElement]] */
+1800, /* Array[Set[MAttribute]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7083,6 +7321,40 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__Array__core__Set__nitc__MAttribute = {
+0, /* dummy */
+{
+&type_core__Set__nitc__MAttribute, /* E: Set[MAttribute] */
+&type_core__Array__core__Set__nitc__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
+&type_core__Collection__core__Set__nitc__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
+&type_core__Array__core__Set__nitc__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
+&type_core__AbstractArray__core__Set__nitc__MAttribute, /* AbstractArray[E]: AbstractArray[Set[MAttribute]] */
+&type_core__NativeArray__core__Set__nitc__MAttribute, /* NativeArray[E]: NativeArray[Set[MAttribute]] */
+&type_core__Set__nitc__MAttribute, /* E: Set[MAttribute] */
+&type_core__Collection__core__Set__nitc__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
+&type_core__Set__nitc__MAttribute, /* E: Set[MAttribute] */
+&type_core__Collection__core__Set__nitc__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
+&type_core__Collection__core__Set__nitc__MAttribute, /* Collection[E]: Collection[Set[MAttribute]] */
+&type_core__Array__core__Set__nitc__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
+&type_core__AbstractArray__core__Set__nitc__MAttribute, /* AbstractArray[E]: AbstractArray[Set[MAttribute]] */
+&type_core__array__ArrayIterator__core__Set__nitc__MAttribute, /* ArrayIterator[E]: ArrayIterator[Set[MAttribute]] */
+&type_core__array__ArrayReverseIterator__core__Set__nitc__MAttribute, /* ArrayReverseIterator[E]: ArrayReverseIterator[Set[MAttribute]] */
+}
+};
+/* runtime type MapValuesIterator[MClass, Set[MAttribute]] */
+const struct type type_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MAttribute = {
+-1, /*CAST DEAD*/
+"MapValuesIterator[MClass, Set[MAttribute]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MAttribute,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7091,6 +7363,26 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__MapValuesIterator__nitc__MClass__core__Set__nitc__MAttribute = {
+0, /* dummy */
+{
+&type_core__Array__core__Set__nitc__MAttribute, /* Array[E]: Array[Set[MAttribute]] */
+&type_core__MapIterator__nitc__MClass__core__Set__nitc__MAttribute, /* MapIterator[K, V]: MapIterator[MClass, Set[MAttribute]] */
+}
+};
+/* runtime type NativeArray[MAttribute] */
+const struct type type_core__NativeArray__nitc__MAttribute = {
+1802,
+"NativeArray[MAttribute]", /* class_name_string */
+67,
+0,
+&resolution_table_core__NativeArray__nitc__MAttribute,
+226,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7099,6 +7391,7 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1112, /* NativeArray[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7106,7 +7399,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2288, /* nullable HashMapNode[MClass, POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7122,7 +7414,9 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+229, /* NativeArray[Object] */
 -1, /* empty */
+1445, /* NativeArray[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7154,6 +7448,9 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1802, /* NativeArray[MAttribute] */
+1815, /* NativeArray[nullable PropertyLayoutElement] */
+1823, /* NativeArray[nullable MAttribute] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7179,7 +7476,6 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1703, /* HashMapNode[MClass, POSetElement[MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7195,56 +7491,17 @@ const struct type type_standard__hash_collection__HashMapNode__nit__MClass__pose
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__hash_collection__HashMapNode__nit__MClass__poset__POSetElement__nit__MClass = {
-0, /* dummy */
-{
-&type_poset__POSetElement__nit__MClass, /* V: POSetElement[MClass] */
-&type_nit__MClass, /* K: MClass */
-}
-};
-/* runtime type MapKeysIterator[MClass, Array[nullable MClass]] */
-const struct type type_standard__MapKeysIterator__nit__MClass__standard__Array__nullable__nit__MClass = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, Array[nullable MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__nit__MClass__standard__Array__nullable__nit__MClass,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapKeysIterator__nit__MClass__standard__Array__nullable__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapIterator__nit__MClass__standard__Array__nullable__nit__MClass, /* MapIterator[K, V]: MapIterator[MClass, Array[nullable MClass]] */
-}
-};
-/* runtime type Array[Array[nullable MClass]] */
-const struct type type_standard__Array__standard__Array__nullable__nit__MClass = {
-1705,
-"Array[Array[nullable MClass]]", /* class_name_string */
-465,
-0,
-&resolution_table_standard__Array__standard__Array__nullable__nit__MClass,
-490,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2177, /* NativeArray[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7272,7 +7529,6 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2337, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7334,7 +7590,6 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2399, /* Collection[Array[nullable MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7352,21 +7607,84 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nitc__MAttribute = {
+0, /* dummy */
+{
+&type_nitc__MAttribute, /* E: MAttribute */
+&type_core__NativeArray__nitc__MAttribute, /* NativeArray[E]: NativeArray[MAttribute] */
+}
+};
+/* runtime type ArrayIterator[MAttribute] */
+const struct type type_core__array__ArrayIterator__nitc__MAttribute = {
+-1, /*CAST DEAD*/
+"ArrayIterator[MAttribute]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nitc__MAttribute,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
+2829, /* Iterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nitc__MAttribute = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MAttribute, /* Array[E]: Array[MAttribute] */
+&type_core__AbstractArrayRead__nitc__MAttribute, /* AbstractArrayRead[E]: AbstractArrayRead[MAttribute] */
+}
+};
+/* runtime type ArrayReverseIterator[MAttribute] */
+const struct type type_core__array__ArrayReverseIterator__nitc__MAttribute = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[MAttribute]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nitc__MAttribute,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
+2391, /* Iterator[Object] */
 -1, /* empty */
-2003, /* SequenceRead[nullable Object] */
 -1, /* empty */
+2829, /* Iterator[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nitc__MAttribute = {
+0, /* dummy */
+{
+&type_core__Array__nitc__MAttribute, /* Array[E]: Array[MAttribute] */
+&type_core__AbstractArrayRead__nitc__MAttribute, /* AbstractArrayRead[E]: AbstractArrayRead[MAttribute] */
+}
+};
+/* runtime type HashMapKeys[PropertyLayoutElement, Int] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__PropertyLayoutElement__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapKeys[PropertyLayoutElement, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__PropertyLayoutElement__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7393,7 +7711,6 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2457, /* AbstractArrayRead[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7402,7 +7719,9 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
+2435, /* Collection[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7433,6 +7752,7 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2466, /* Collection[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7456,7 +7776,6 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2520, /* AbstractArrayRead[Array[nullable MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7478,6 +7797,7 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7492,6 +7812,27 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__PropertyLayoutElement__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__PropertyLayoutElement__core__Int, /* HashMap[K, V]: HashMap[PropertyLayoutElement, Int] */
+&type_core__Array__nitc__PropertyLayoutElement, /* Array[E]: Array[PropertyLayoutElement] */
+&type_core__MapKeysIterator__nitc__PropertyLayoutElement__core__Int, /* MapKeysIterator[K, V]: MapKeysIterator[PropertyLayoutElement, Int] */
+}
+};
+/* runtime type HashMapValues[PropertyLayoutElement, Int] */
+const struct type type_core__hash_collection__HashMapValues__nitc__PropertyLayoutElement__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapValues[PropertyLayoutElement, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__PropertyLayoutElement__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7511,10 +7852,10 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2418, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2681, /* AbstractArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7526,6 +7867,7 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7577,7 +7919,6 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-2744, /* AbstractArray[Array[nullable MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7603,9 +7944,8 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -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 */
@@ -7620,6 +7960,27 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__PropertyLayoutElement__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__PropertyLayoutElement__core__Int, /* HashMap[K, V]: HashMap[PropertyLayoutElement, Int] */
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+&type_core__MapValuesIterator__nitc__PropertyLayoutElement__core__Int, /* MapValuesIterator[K, V]: MapValuesIterator[PropertyLayoutElement, Int] */
+}
+};
+/* runtime type HashMapIterator[PropertyLayoutElement, Int] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__PropertyLayoutElement__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapIterator[PropertyLayoutElement, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__PropertyLayoutElement__core__Int,
+79,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7675,8 +8036,10 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
+2710, /* MapIterator[PropertyLayoutElement, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7695,13 +8058,96 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__PropertyLayoutElement__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__PropertyLayoutElement__core__Int, /* HashMap[K, V]: HashMap[PropertyLayoutElement, Int] */
+}
+};
+/* runtime type HashMapNode[PropertyLayoutElement, Int] */
+const struct type type_core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int = {
+1808,
+"HashMapNode[PropertyLayoutElement, Int]", /* class_name_string */
+133,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int,
+152,
+{
+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 */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+2806, /* nullable HashMapNode[PropertyLayoutElement, Int] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1705, /* Array[Array[nullable MClass]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7726,106 +8172,83 @@ const struct type type_standard__Array__standard__Array__nullable__nit__MClass =
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__Array__standard__Array__nullable__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__Array__nullable__nit__MClass, /* E: Array[nullable MClass] */
-&type_standard__Array__standard__Array__nullable__nit__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_standard__Collection__standard__Array__nullable__nit__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_standard__Array__standard__Array__nullable__nit__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_standard__NativeArray__standard__Array__nullable__nit__MClass, /* NativeArray[E]: NativeArray[Array[nullable MClass]] */
-&type_standard__Array__nullable__nit__MClass, /* E: Array[nullable MClass] */
-&type_standard__Collection__standard__Array__nullable__nit__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_standard__Array__nullable__nit__MClass, /* E: Array[nullable MClass] */
-&type_standard__Collection__standard__Array__nullable__nit__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_standard__Collection__standard__Array__nullable__nit__MClass, /* Collection[E]: Collection[Array[nullable MClass]] */
-&type_standard__Array__standard__Array__nullable__nit__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_standard__AbstractArray__standard__Array__nullable__nit__MClass, /* AbstractArray[E]: AbstractArray[Array[nullable MClass]] */
-&type_standard__array__ArrayIterator__standard__Array__nullable__nit__MClass, /* ArrayIterator[E]: ArrayIterator[Array[nullable MClass]] */
-}
-};
-/* runtime type MapValuesIterator[MClass, Array[nullable MClass]] */
-const struct type type_standard__MapValuesIterator__nit__MClass__standard__Array__nullable__nit__MClass = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, Array[nullable MClass]]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapValuesIterator__nit__MClass__standard__Array__nullable__nit__MClass,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapValuesIterator__nit__MClass__standard__Array__nullable__nit__MClass = {
-0, /* dummy */
-{
-&type_standard__Array__standard__Array__nullable__nit__MClass, /* Array[E]: Array[Array[nullable MClass]] */
-&type_standard__MapIterator__nit__MClass__standard__Array__nullable__nit__MClass, /* MapIterator[K, V]: MapIterator[MClass, Array[nullable MClass]] */
-}
-};
-/* runtime type MapKeysIterator[MClass, AClassdef] */
-const struct type type_standard__MapKeysIterator__nit__MClass__nit__AClassdef = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MClass, AClassdef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__nit__MClass__nit__AClassdef,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapKeysIterator__nit__MClass__nit__AClassdef = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MClass, /* Array[E]: Array[MClass] */
-&type_standard__MapIterator__nit__MClass__nit__AClassdef, /* MapIterator[K, V]: MapIterator[MClass, AClassdef] */
-}
-};
-/* runtime type MapValuesIterator[MClass, AClassdef] */
-const struct type type_standard__MapValuesIterator__nit__MClass__nit__AClassdef = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MClass, AClassdef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapValuesIterator__nit__MClass__nit__AClassdef,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+1808, /* HashMapNode[PropertyLayoutElement, Int] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-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_standard__MapValuesIterator__nit__MClass__nit__AClassdef = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int = {
 0, /* dummy */
 {
-&type_standard__Array__nit__AClassdef, /* Array[E]: Array[AClassdef] */
-&type_standard__MapIterator__nit__MClass__nit__AClassdef, /* MapIterator[K, V]: MapIterator[MClass, AClassdef] */
+&type_core__Int, /* V: Int */
+&type_nitc__PropertyLayoutElement, /* K: PropertyLayoutElement */
 }
 };
-/* runtime type NativeArray[AParam] */
-const struct type type_standard__NativeArray__nit__AParam = {
-1709,
-"NativeArray[AParam]", /* class_name_string */
-69,
+/* runtime type NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int = {
+1809,
+"NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]]", /* class_name_string */
+205,
 0,
-&resolution_table_standard__NativeArray__nit__AParam,
-219,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7848,7 +8271,6 @@ const struct type type_standard__NativeArray__nit__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1252, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7858,7 +8280,6 @@ const struct type type_standard__NativeArray__nit__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7885,7 +8306,6 @@ const struct type type_standard__NativeArray__nit__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1620, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7893,7 +8313,6 @@ const struct type type_standard__NativeArray__nit__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1709, /* NativeArray[AParam] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -7939,6 +8358,7 @@ const struct type type_standard__NativeArray__nit__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8027,6 +8447,14 @@ const struct type type_standard__NativeArray__nit__AParam = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
+-1, /* empty */
+-1, /* empty */
+1809, /* NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8045,55 +8473,35 @@ const struct type type_standard__NativeArray__nit__AParam = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nit__AParam = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int = {
 0, /* dummy */
 {
-&type_nit__AParam, /* E: AParam */
-&type_standard__NativeArray__nit__AParam, /* NativeArray[E]: NativeArray[AParam] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int, /* E: nullable HashMapNode[PropertyLayoutElement, Int] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__PropertyLayoutElement__core__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[PropertyLayoutElement, Int]] */
 }
 };
-/* runtime type ArrayIterator[AParam] */
-const struct type type_standard__array__ArrayIterator__nit__AParam = {
+/* runtime type HashMapKeys[MClass, HashSet[Int]] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MClass__core__HashSet__core__Int = {
 -1, /*CAST DEAD*/
-"ArrayIterator[AParam]", /* class_name_string */
+"HashMapKeys[MClass, HashSet[Int]]", /* class_name_string */
 -1, /*CAST DEAD*/
 0,
-&resolution_table_standard__array__ArrayIterator__nit__AParam,
-9,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__HashSet__core__Int,
+129,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__nit__AParam = {
-0, /* dummy */
-{
-&type_standard__Array__nit__AParam, /* Array[E]: Array[AParam] */
-&type_standard__AbstractArrayRead__nit__AParam, /* AbstractArrayRead[E]: AbstractArrayRead[AParam] */
-}
-};
-/* runtime type NativeArray[AExternCall] */
-const struct type type_standard__NativeArray__nit__AExternCall = {
-1711,
-"NativeArray[AExternCall]", /* class_name_string */
-70,
-0,
-&resolution_table_standard__NativeArray__nit__AExternCall,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2409, /* Collection[MClass] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8112,17 +8520,17 @@ const struct type type_standard__NativeArray__nit__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1252, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2437, /* Collection[nullable MClass] */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8149,7 +8557,6 @@ const struct type type_standard__NativeArray__nit__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1620, /* NativeArray[ANode] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8158,7 +8565,6 @@ const struct type type_standard__NativeArray__nit__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1711, /* NativeArray[AExternCall] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8197,6 +8603,7 @@ const struct type type_standard__NativeArray__nit__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8211,6 +8618,27 @@ const struct type type_standard__NativeArray__nit__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MClass__core__HashSet__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__core__HashSet__core__Int, /* HashMap[K, V]: HashMap[MClass, HashSet[Int]] */
+&type_core__Array__nitc__MClass, /* Array[E]: Array[MClass] */
+&type_core__MapKeysIterator__nitc__MClass__core__HashSet__core__Int, /* MapKeysIterator[K, V]: MapKeysIterator[MClass, HashSet[Int]] */
+}
+};
+/* runtime type HashMapValues[MClass, HashSet[Int]] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MClass__core__HashSet__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapValues[MClass, HashSet[Int]]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__HashSet__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8245,6 +8673,17 @@ const struct type type_standard__NativeArray__nit__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8307,27 +8746,20 @@ const struct type type_standard__NativeArray__nit__AExternCall = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__AExternCall = {
-0, /* dummy */
-{
-&type_nit__AExternCall, /* E: AExternCall */
-&type_standard__NativeArray__nit__AExternCall, /* NativeArray[E]: NativeArray[AExternCall] */
-}
-};
-/* runtime type ArrayIterator[AExternCall] */
-const struct type type_standard__array__ArrayIterator__nit__AExternCall = {
--1, /*CAST DEAD*/
-"ArrayIterator[AExternCall]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__AExternCall,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2511, /* Collection[nullable Object] */
+-1, /* empty */
+2513, /* Collection[HashSet[Int]] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8336,24 +8768,25 @@ const struct type type_standard__array__ArrayIterator__nit__AExternCall = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__array__ArrayIterator__nit__AExternCall = {
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MClass__core__HashSet__core__Int = {
 0, /* dummy */
 {
-&type_standard__Array__nit__AExternCall, /* Array[E]: Array[AExternCall] */
-&type_standard__AbstractArrayRead__nit__AExternCall, /* AbstractArrayRead[E]: AbstractArrayRead[AExternCall] */
+&type_core__HashMap__nitc__MClass__core__HashSet__core__Int, /* HashMap[K, V]: HashMap[MClass, HashSet[Int]] */
+&type_core__Array__core__HashSet__core__Int, /* Array[E]: Array[HashSet[Int]] */
+&type_core__MapValuesIterator__nitc__MClass__core__HashSet__core__Int, /* MapValuesIterator[K, V]: MapValuesIterator[MClass, HashSet[Int]] */
 }
 };
-/* runtime type NativeArray[AType] */
-const struct type type_standard__NativeArray__nit__AType = {
-1713,
-"NativeArray[AType]", /* class_name_string */
-71,
+/* runtime type HashMapIterator[MClass, HashSet[Int]] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MClass__core__HashSet__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapIterator[MClass, HashSet[Int]]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__NativeArray__nit__AType,
-219,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__HashSet__core__Int,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8376,7 +8809,6 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1252, /* NativeArray[Prod] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8386,7 +8818,6 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8411,10 +8842,11 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-1620, /* NativeArray[ANode] */
 -1, /* empty */
+2711, /* MapIterator[MClass, HashSet[Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8423,7 +8855,6 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1713, /* NativeArray[AType] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8433,6 +8864,25 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MClass__core__HashSet__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MClass__core__HashSet__core__Int, /* HashMap[K, V]: HashMap[MClass, HashSet[Int]] */
+}
+};
+/* runtime type HashMapNode[MClass, HashSet[Int]] */
+const struct type type_core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int = {
+1813,
+"HashMapNode[MClass, HashSet[Int]]", /* class_name_string */
+134,
+0,
+&resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int,
+152,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8486,9 +8936,11 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2803, /* nullable HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2807, /* nullable HashMapNode[MClass, HashSet[Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8559,9 +9011,11 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1756, /* HashMapNode[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1813, /* HashMapNode[MClass, HashSet[Int]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8571,191 +9025,44 @@ const struct type type_standard__NativeArray__nit__AType = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__AType = {
-0, /* dummy */
-{
-&type_nit__AType, /* E: AType */
-&type_standard__NativeArray__nit__AType, /* NativeArray[E]: NativeArray[AType] */
-}
-};
-/* runtime type ArrayIterator[AType] */
-const struct type type_standard__array__ArrayIterator__nit__AType = {
--1, /*CAST DEAD*/
-"ArrayIterator[AType]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__AType,
-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__AType = {
-0, /* dummy */
-{
-&type_standard__Array__nit__AType, /* Array[E]: Array[AType] */
-&type_standard__AbstractArrayRead__nit__AType, /* AbstractArrayRead[E]: AbstractArrayRead[AType] */
-}
-};
-/* runtime type MapKeysIterator[String, Variable] */
-const struct type type_standard__MapKeysIterator__standard__String__nit__Variable = {
--1, /*CAST DEAD*/
-"MapKeysIterator[String, Variable]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__standard__String__nit__Variable,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__MapKeysIterator__standard__String__nit__Variable = {
+const struct types resolution_table_core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int = {
 0, /* dummy */
 {
-&type_standard__Array__standard__String, /* Array[E]: Array[String] */
-&type_standard__MapIterator__standard__String__nit__Variable, /* MapIterator[K, V]: MapIterator[String, Variable] */
+&type_core__HashSet__core__Int, /* V: HashSet[Int] */
+&type_nitc__MClass, /* K: MClass */
 }
 };
-/* runtime type MapValuesIterator[String, Variable] */
-const struct type type_standard__MapValuesIterator__standard__String__nit__Variable = {
--1, /*CAST DEAD*/
-"MapValuesIterator[String, Variable]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable HashMapNode[MClass, HashSet[Int]]] */
+const struct type type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int = {
+1814,
+"NativeArray[nullable HashMapNode[MClass, HashSet[Int]]]", /* class_name_string */
+206,
 0,
-&resolution_table_standard__MapValuesIterator__standard__String__nit__Variable,
-5,
+&resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapValuesIterator__standard__String__nit__Variable = {
-0, /* dummy */
-{
-&type_standard__Array__nit__Variable, /* Array[E]: Array[Variable] */
-&type_standard__MapIterator__standard__String__nit__Variable, /* MapIterator[K, V]: MapIterator[String, Variable] */
-}
-};
-/* runtime type MapKeysIterator[Variable, RuntimeVariable] */
-const struct type type_standard__MapKeysIterator__nit__Variable__nit__RuntimeVariable = {
--1, /*CAST DEAD*/
-"MapKeysIterator[Variable, RuntimeVariable]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__nit__Variable__nit__RuntimeVariable,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapKeysIterator__nit__Variable__nit__RuntimeVariable = {
-0, /* dummy */
-{
-&type_standard__Array__nit__Variable, /* Array[E]: Array[Variable] */
-&type_standard__MapIterator__nit__Variable__nit__RuntimeVariable, /* MapIterator[K, V]: MapIterator[Variable, RuntimeVariable] */
-}
-};
-/* runtime type MapValuesIterator[Variable, RuntimeVariable] */
-const struct type type_standard__MapValuesIterator__nit__Variable__nit__RuntimeVariable = {
--1, /*CAST DEAD*/
-"MapValuesIterator[Variable, RuntimeVariable]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapValuesIterator__nit__Variable__nit__RuntimeVariable,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapValuesIterator__nit__Variable__nit__RuntimeVariable = {
-0, /* dummy */
-{
-&type_standard__Array__nit__RuntimeVariable, /* Array[E]: Array[RuntimeVariable] */
-&type_standard__MapIterator__nit__Variable__nit__RuntimeVariable, /* MapIterator[K, V]: MapIterator[Variable, RuntimeVariable] */
-}
-};
-/* runtime type MapKeysIterator[MType, Int] */
-const struct type type_standard__MapKeysIterator__nit__MType__standard__Int = {
--1, /*CAST DEAD*/
-"MapKeysIterator[MType, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapKeysIterator__nit__MType__standard__Int,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapKeysIterator__nit__MType__standard__Int = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MType, /* Array[E]: Array[MType] */
-&type_standard__MapIterator__nit__MType__standard__Int, /* MapIterator[K, V]: MapIterator[MType, Int] */
-}
-};
-/* runtime type MapValuesIterator[MType, Int] */
-const struct type type_standard__MapValuesIterator__nit__MType__standard__Int = {
--1, /*CAST DEAD*/
-"MapValuesIterator[MType, Int]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__MapValuesIterator__nit__MType__standard__Int,
-5,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__MapValuesIterator__nit__MType__standard__Int = {
-0, /* dummy */
-{
-&type_standard__Array__standard__Int, /* Array[E]: Array[Int] */
-&type_standard__MapIterator__nit__MType__standard__Int, /* MapIterator[K, V]: MapIterator[MType, Int] */
-}
-};
-/* runtime type NativeArray[MAttributeDef] */
-const struct type type_standard__NativeArray__nit__MAttributeDef = {
-1721,
-"NativeArray[MAttributeDef]", /* class_name_string */
-72,
-0,
-&resolution_table_standard__NativeArray__nit__MAttributeDef,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8771,7 +9078,6 @@ const struct type type_standard__NativeArray__nit__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1150, /* NativeArray[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8788,10 +9094,7 @@ const struct type type_standard__NativeArray__nit__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
-1369, /* NativeArray[PropertyLayoutElement] */
-1386, /* NativeArray[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8821,12 +9124,10 @@ const struct type type_standard__NativeArray__nit__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1690, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1721, /* NativeArray[MAttributeDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8863,6 +9164,7 @@ const struct type type_standard__NativeArray__nit__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8951,9 +9253,11 @@ const struct type type_standard__NativeArray__nit__MAttributeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1757, /* NativeArray[nullable HashMapNode[Object, nullable Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1814, /* NativeArray[nullable HashMapNode[MClass, HashSet[Int]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -8975,52 +9279,30 @@ const struct type type_standard__NativeArray__nit__MAttributeDef = {
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__NativeArray__nit__MAttributeDef = {
+const struct types resolution_table_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int = {
 0, /* dummy */
 {
-&type_nit__MAttributeDef, /* E: MAttributeDef */
-&type_standard__NativeArray__nit__MAttributeDef, /* NativeArray[E]: NativeArray[MAttributeDef] */
+&type_nullable__core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int, /* E: nullable HashMapNode[MClass, HashSet[Int]] */
+&type_core__NativeArray__nullable__core__hash_collection__HashMapNode__nitc__MClass__core__HashSet__core__Int, /* NativeArray[E]: NativeArray[nullable HashMapNode[MClass, HashSet[Int]]] */
 }
 };
-/* runtime type ArrayIterator[MAttributeDef] */
-const struct type type_standard__array__ArrayIterator__nit__MAttributeDef = {
--1, /*CAST DEAD*/
-"ArrayIterator[MAttributeDef]", /* class_name_string */
--1, /*CAST DEAD*/
+/* runtime type NativeArray[nullable PropertyLayoutElement] */
+const struct type type_core__NativeArray__nullable__nitc__PropertyLayoutElement = {
+1815,
+"NativeArray[nullable PropertyLayoutElement]", /* class_name_string */
+68,
 0,
-&resolution_table_standard__array__ArrayIterator__nit__MAttributeDef,
-9,
+&resolution_table_core__NativeArray__nullable__nitc__PropertyLayoutElement,
+226,
 {
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__nit__MAttributeDef = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MAttributeDef, /* Array[E]: Array[MAttributeDef] */
-&type_standard__AbstractArrayRead__nit__MAttributeDef, /* AbstractArrayRead[E]: AbstractArrayRead[MAttributeDef] */
-}
-};
-/* runtime type HashMap[MModule, HashMap[MType, Array[MAttributeDef]]] */
-const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef = {
-1723,
-"HashMap[MModule, HashMap[MType, Array[MAttributeDef]]]", /* class_name_string */
-79,
-0,
-&resolution_table_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef,
-83,
-{
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9081,6 +9363,7 @@ const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+1815, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9097,42 +9380,9 @@ const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1723, /* HashMap[MModule, HashMap[MType, Array[MAttributeDef]]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapIterator[K, V]: HashMapIterator[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_nit__MModule, /* K: MModule */
-&type_standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* V: HashMap[MType, Array[MAttributeDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapNode[K, V]: HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_standard__hash_collection__HashMapKeys__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapKeys[K, V]: HashMapKeys[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_standard__hash_collection__HashMapValues__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapValues[K, V]: HashMapValues[MModule, HashMap[MType, Array[MAttributeDef]]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* nullable N: nullable HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* N: HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MAttributeDef]]]] */
-}
-};
-/* runtime type HashMap[MType, Array[MAttributeDef]] */
-const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef = {
-1724,
-"HashMap[MType, Array[MAttributeDef]]", /* class_name_string */
-80,
-0,
-&resolution_table_standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef,
-83,
-{
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9158,6 +9408,7 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MAtt
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2136, /* NativeArray[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9191,7 +9442,6 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MAtt
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1295, /* HashMap[Object, Array[Object]] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9210,40 +9460,8 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MAtt
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1724, /* HashMap[MType, Array[MAttributeDef]] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__HashMap__nit__MType__standard__Array__nit__MAttributeDef = {
-0, /* dummy */
-{
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapIterator[K, V]: HashMapIterator[MType, Array[MAttributeDef]] */
-&type_nit__MType, /* K: MType */
-&type_standard__Array__nit__MAttributeDef, /* V: Array[MAttributeDef] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapNode[K, V]: HashMapNode[MType, Array[MAttributeDef]] */
-&type_standard__hash_collection__HashMapKeys__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapKeys[K, V]: HashMapKeys[MType, Array[MAttributeDef]] */
-&type_standard__hash_collection__HashMapValues__nit__MType__standard__Array__nit__MAttributeDef, /* HashMapValues[K, V]: HashMapValues[MType, Array[MAttributeDef]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MAttributeDef, /* nullable N: nullable HashMapNode[MType, Array[MAttributeDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MAttributeDef, /* N: HashMapNode[MType, Array[MAttributeDef]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MAttributeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, Array[MAttributeDef]]] */
-}
-};
-/* runtime type NativeArray[MVirtualTypeDef] */
-const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
-1725,
-"NativeArray[MVirtualTypeDef]", /* class_name_string */
-73,
-0,
-&resolution_table_standard__NativeArray__nit__MVirtualTypeDef,
-219,
-{
-80, /* Object */
-2622, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9259,7 +9477,6 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1150, /* NativeArray[MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9276,10 +9493,7 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-651, /* NativeArray[Object] */
 -1, /* empty */
-1369, /* NativeArray[PropertyLayoutElement] */
-1386, /* NativeArray[nullable MPropDef] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9307,17 +9521,55 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__NativeArray__nullable__nitc__PropertyLayoutElement = {
+0, /* dummy */
+{
+&type_nullable__nitc__PropertyLayoutElement, /* E: nullable PropertyLayoutElement */
+&type_core__NativeArray__nullable__nitc__PropertyLayoutElement, /* NativeArray[E]: NativeArray[nullable PropertyLayoutElement] */
+}
+};
+/* runtime type ArrayIterator[nullable PropertyLayoutElement] */
+const struct type type_core__array__ArrayIterator__nullable__nitc__PropertyLayoutElement = {
+-1, /*CAST DEAD*/
+"ArrayIterator[nullable PropertyLayoutElement]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayIterator__nullable__nitc__PropertyLayoutElement,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
-1690, /* NativeArray[nullable PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-1725, /* NativeArray[MVirtualTypeDef] */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayIterator__nullable__nitc__PropertyLayoutElement = {
+0, /* dummy */
+{
+&type_core__Array__nullable__nitc__PropertyLayoutElement, /* Array[E]: Array[nullable PropertyLayoutElement] */
+&type_core__AbstractArrayRead__nullable__nitc__PropertyLayoutElement, /* AbstractArrayRead[E]: AbstractArrayRead[nullable PropertyLayoutElement] */
+}
+};
+/* runtime type ArrayReverseIterator[nullable PropertyLayoutElement] */
+const struct type type_core__array__ArrayReverseIterator__nullable__nitc__PropertyLayoutElement = {
+-1, /*CAST DEAD*/
+"ArrayReverseIterator[nullable PropertyLayoutElement]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__array__ArrayReverseIterator__nullable__nitc__PropertyLayoutElement,
+11,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9327,6 +9579,26 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__array__ArrayReverseIterator__nullable__nitc__PropertyLayoutElement = {
+0, /* dummy */
+{
+&type_core__Array__nullable__nitc__PropertyLayoutElement, /* Array[E]: Array[nullable PropertyLayoutElement] */
+&type_core__AbstractArrayRead__nullable__nitc__PropertyLayoutElement, /* AbstractArrayRead[E]: AbstractArrayRead[nullable PropertyLayoutElement] */
+}
+};
+/* runtime type HashMapKeys[MAttribute, Int] */
+const struct type type_core__hash_collection__HashMapKeys__nitc__MAttribute__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapKeys[MAttribute, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapKeys__nitc__MAttribute__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9338,6 +9610,7 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2410, /* Collection[MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9360,7 +9633,9 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2433, /* Collection[Object] */
 -1, /* empty */
+2435, /* Collection[PropertyLayoutElement] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9390,6 +9665,9 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2465, /* Collection[MAttribute] */
+2466, /* Collection[nullable PropertyLayoutElement] */
+2467, /* Collection[nullable MAttribute] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9433,12 +9711,14 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[nullable Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2518, /* Collection[nullable MProperty] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9446,6 +9726,27 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+},
+};
+const struct types resolution_table_core__hash_collection__HashMapKeys__nitc__MAttribute__core__Int = {
+0, /* dummy */
+{
+&type_core__HashMap__nitc__MAttribute__core__Int, /* HashMap[K, V]: HashMap[MAttribute, Int] */
+&type_core__Array__nitc__MAttribute, /* Array[E]: Array[MAttribute] */
+&type_core__MapKeysIterator__nitc__MAttribute__core__Int, /* MapKeysIterator[K, V]: MapKeysIterator[MAttribute, Int] */
+}
+};
+/* runtime type HashMapValues[MAttribute, Int] */
+const struct type type_core__hash_collection__HashMapValues__nitc__MAttribute__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapValues[MAttribute, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
+0,
+&resolution_table_core__hash_collection__HashMapValues__nitc__MAttribute__core__Int,
+129,
+{
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9461,54 +9762,27 @@ const struct type type_standard__NativeArray__nit__MVirtualTypeDef = {
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__NativeArray__nit__MVirtualTypeDef = {
-0, /* dummy */
-{
-&type_nit__MVirtualTypeDef, /* E: MVirtualTypeDef */
-&type_standard__NativeArray__nit__MVirtualTypeDef, /* NativeArray[E]: NativeArray[MVirtualTypeDef] */
-}
-};
-/* runtime type ArrayIterator[MVirtualTypeDef] */
-const struct type type_standard__array__ArrayIterator__nit__MVirtualTypeDef = {
--1, /*CAST DEAD*/
-"ArrayIterator[MVirtualTypeDef]", /* class_name_string */
--1, /*CAST DEAD*/
-0,
-&resolution_table_standard__array__ArrayIterator__nit__MVirtualTypeDef,
-9,
-{
-80, /* Object */
-2622, /* nullable Object */
-2200, /* Iterator[Object] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2418, /* Collection[Int] */
 -1, /* empty */
 -1, /* empty */
-},
-};
-const struct types resolution_table_standard__array__ArrayIterator__nit__MVirtualTypeDef = {
-0, /* dummy */
-{
-&type_standard__Array__nit__MVirtualTypeDef, /* Array[E]: Array[MVirtualTypeDef] */
-&type_standard__AbstractArrayRead__nit__MVirtualTypeDef, /* AbstractArrayRead[E]: AbstractArrayRead[MVirtualTypeDef] */
-}
-};
-/* runtime type HashMap[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef = {
-1727,
-"HashMap[MModule, HashMap[MType, Array[MVirtualTypeDef]]]", /* class_name_string */
-81,
-0,
-&resolution_table_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef,
-83,
-{
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+-1, /* empty */
+2433, /* Collection[Object] */
+-1, /* empty */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9585,43 +9859,42 @@ const struct type type_standard__HashMap__nit__MModule__standard__HashMap__nit__
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2511, /* Collection[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 */
-1727, /* HashMap[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
 -1, /* empty */
 },
 };
-const struct types resolution_table_standard__HashMap__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef = {
+const struct types resolution_table_core__hash_collection__HashMapValues__nitc__MAttribute__core__Int = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapIterator[K, V]: HashMapIterator[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_nit__MModule, /* K: MModule */
-&type_standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* V: HashMap[MType, Array[MVirtualTypeDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapNode[K, V]: HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_standard__hash_collection__HashMapKeys__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapKeys[K, V]: HashMapKeys[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_standard__hash_collection__HashMapValues__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapValues[K, V]: HashMapValues[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* nullable N: nullable HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* N: HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MModule__standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MModule, HashMap[MType, Array[MVirtualTypeDef]]]] */
+&type_core__HashMap__nitc__MAttribute__core__Int, /* HashMap[K, V]: HashMap[MAttribute, Int] */
+&type_core__Array__core__Int, /* Array[E]: Array[Int] */
+&type_core__MapValuesIterator__nitc__MAttribute__core__Int, /* MapValuesIterator[K, V]: MapValuesIterator[MAttribute, Int] */
 }
 };
-/* runtime type HashMap[MType, Array[MVirtualTypeDef]] */
-const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef = {
-1728,
-"HashMap[MType, Array[MVirtualTypeDef]]", /* class_name_string */
-82,
+/* runtime type HashMapIterator[MAttribute, Int] */
+const struct type type_core__hash_collection__HashMapIterator__nitc__MAttribute__core__Int = {
+-1, /*CAST DEAD*/
+"HashMapIterator[MAttribute, Int]", /* class_name_string */
+-1, /*CAST DEAD*/
 0,
-&resolution_table_standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef,
-83,
+&resolution_table_core__hash_collection__HashMapIterator__nitc__MAttribute__core__Int,
+79,
 {
-80, /* Object */
-2622, /* nullable Object */
-2005, /* MapRead[nullable Object, nullable Object] */
--1, /* empty */
+2371, /* Object */
+2397, /* nullable Object */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9677,10 +9950,12 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MVir
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
+2707, /* MapIterator[Object, nullable Object] */
 -1, /* empty */
 -1, /* empty */
-1295, /* HashMap[Object, Array[Object]] */
+2710, /* MapIterator[PropertyLayoutElement, Int] */
 -1, /* empty */
+2712, /* MapIterator[MAttribute, Int] */
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
@@ -9697,27 +9972,11 @@ const struct type type_standard__HashMap__nit__MType__standard__Array__nit__MVir
 -1, /* empty */
 -1, /* empty */
 -1, /* empty */
--1, /* empty */
--1, /* empty */
--1, /* empty */
-1728, /* HashMap[MType, Array[MVirtualTypeDef]] */
 },
 };
-const struct types resolution_table_standard__HashMap__nit__MType__standard__Array__nit__MVirtualTypeDef = {
+const struct types resolution_table_core__hash_collection__HashMapIterator__nitc__MAttribute__core__Int = {
 0, /* dummy */
 {
-NULL, /* empty */
-NULL, /* empty */
-NULL, /* empty */
-&type_standard__HashMapIterator__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapIterator[K, V]: HashMapIterator[MType, Array[MVirtualTypeDef]] */
-&type_nit__MType, /* K: MType */
-&type_standard__Array__nit__MVirtualTypeDef, /* V: Array[MVirtualTypeDef] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapNode[K, V]: HashMapNode[MType, Array[MVirtualTypeDef]] */
-&type_standard__hash_collection__HashMapKeys__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapKeys[K, V]: HashMapKeys[MType, Array[MVirtualTypeDef]] */
-&type_standard__hash_collection__HashMapValues__nit__MType__standard__Array__nit__MVirtualTypeDef, /* HashMapValues[K, V]: HashMapValues[MType, Array[MVirtualTypeDef]] */
-NULL, /* empty */
-&type_nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MVirtualTypeDef, /* nullable N: nullable HashMapNode[MType, Array[MVirtualTypeDef]] */
-&type_standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MVirtualTypeDef, /* N: HashMapNode[MType, Array[MVirtualTypeDef]] */
-&type_standard__NativeArray__nullable__standard__hash_collection__HashMapNode__nit__MType__standard__Array__nit__MVirtualTypeDef, /* NativeArray[nullable N]: NativeArray[nullable HashMapNode[MType, Array[MVirtualTypeDef]]] */
+&type_core__HashMap__nitc__MAttribute__core__Int, /* HashMap[K, V]: HashMap[MAttribute, Int] */
 }
 };