diff --git a/typesystem2/languages/jetbrains.mps.lang.typesystem2/generator/template/main@generator.mps b/typesystem2/languages/jetbrains.mps.lang.typesystem2/generator/template/main@generator.mps
index 8a6c308f..48c3b27e 100644
--- a/typesystem2/languages/jetbrains.mps.lang.typesystem2/generator/template/main@generator.mps
+++ b/typesystem2/languages/jetbrains.mps.lang.typesystem2/generator/template/main@generator.mps
@@ -5201,202 +5201,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/typesystem2/languages/jetbrains.mps.lang.typesystem2/runtime/models/jetbrains.mps.lang.typesystem2.evaluation.mps b/typesystem2/languages/jetbrains.mps.lang.typesystem2/runtime/models/jetbrains.mps.lang.typesystem2.evaluation.mps
index eca796ef..e1637de0 100644
--- a/typesystem2/languages/jetbrains.mps.lang.typesystem2/runtime/models/jetbrains.mps.lang.typesystem2.evaluation.mps
+++ b/typesystem2/languages/jetbrains.mps.lang.typesystem2/runtime/models/jetbrains.mps.lang.typesystem2.evaluation.mps
@@ -40,6 +40,9 @@
+
+
+
@@ -3420,42 +3423,18 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
+
@@ -3463,6 +3442,9 @@
+
+
+
@@ -4566,7 +4548,7 @@
-
+
diff --git a/typesystem2/solutions/jetbrains.mps.lang.typesystem2.template/models/jetbrains.mps.lang.typesystem2.rule.mps b/typesystem2/solutions/jetbrains.mps.lang.typesystem2.template/models/jetbrains.mps.lang.typesystem2.rule.mps
index 3c353dab..2d14df2f 100644
--- a/typesystem2/solutions/jetbrains.mps.lang.typesystem2.template/models/jetbrains.mps.lang.typesystem2.rule.mps
+++ b/typesystem2/solutions/jetbrains.mps.lang.typesystem2.template/models/jetbrains.mps.lang.typesystem2.rule.mps
@@ -17,6 +17,7 @@
+
@@ -156,11 +157,16 @@
+
+
+
-
+
+
+
@@ -231,12 +237,20 @@
+
+
+
+
+
+
+
+
@@ -245,16 +259,203 @@
-
+
-
-
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1788,66 +1989,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -2008,5 +2149,100 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+