diff --git a/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps b/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps
index 903ada9e..8ceb3bb7 100644
--- a/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps
+++ b/coderules/languages/jetbrains.mps.lang.coderules/generator/template/main@generator.mps
@@ -19114,8 +19114,8 @@
-
-
+
+
@@ -19291,8 +19291,8 @@
-
-
+
+
diff --git a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/behavior.mps b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/behavior.mps
index 3dae2819..2915f4e4 100644
--- a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/behavior.mps
+++ b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/behavior.mps
@@ -42,11 +42,13 @@
+
+
@@ -89,6 +91,7 @@
+
@@ -100,6 +103,9 @@
+
+
+
@@ -124,6 +130,9 @@
+
+
+
@@ -151,10 +160,14 @@
+
+
+
+
@@ -1625,6 +1638,143 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/constraints.mps b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/constraints.mps
index 4de82cdd..1ce25803 100644
--- a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/constraints.mps
+++ b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/constraints.mps
@@ -33,12 +33,19 @@
+
+
+
+
+
+
+
@@ -56,10 +63,12 @@
+
+
@@ -67,6 +76,7 @@
+
@@ -102,6 +112,7 @@
+
@@ -111,6 +122,7 @@
+
@@ -126,6 +138,7 @@
+
@@ -172,6 +185,9 @@
+
+
+
@@ -193,6 +209,9 @@
+
+
+
@@ -234,6 +253,13 @@
+
+
+
+
+
+
+
@@ -244,6 +270,8 @@
+
+
@@ -1807,5 +1835,378 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps
index 67e3f121..c0369ad1 100644
--- a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps
+++ b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/editor.mps
@@ -20,6 +20,7 @@
+
@@ -353,6 +354,9 @@
+
+
+
@@ -366,6 +370,9 @@
+
+
+
@@ -404,6 +411,7 @@
+
@@ -445,6 +453,7 @@
+
@@ -476,6 +485,7 @@
+
@@ -526,13 +536,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -851,8 +874,8 @@
-
-
+
+
@@ -1351,6 +1374,9 @@
+
+
+
@@ -1365,9 +1391,6 @@
-
-
-
@@ -1680,6 +1703,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -4796,82 +4856,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -5996,6 +5980,9 @@
+
+
+
@@ -6368,6 +6355,7 @@
+
@@ -6376,12 +6364,11 @@
-
-
-
-
-
-
+
+
+
+
+
@@ -6393,9 +6380,6 @@
-
-
-
@@ -6466,12 +6450,6 @@
-
-
-
-
-
-
@@ -6513,10 +6491,6 @@
-
-
-
-
@@ -6576,9 +6550,6 @@
-
-
-
@@ -6777,6 +6748,9 @@
+
+
+
@@ -6880,7 +6854,7 @@
-
+
@@ -7049,10 +7023,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -7093,19 +7083,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -7123,8 +7100,155 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -7175,7 +7299,7 @@
-
+
@@ -7207,10 +7331,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -7230,6 +7373,7 @@
+
@@ -7251,18 +7395,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
@@ -7292,8 +7424,150 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -7344,7 +7618,7 @@
-
+
@@ -7515,5 +7789,385 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps
index b113ab97..53ea179a 100644
--- a/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps
+++ b/coderules/languages/jetbrains.mps.lang.coderules/languageModels/structure.mps
@@ -433,6 +433,11 @@
+
+
+
+
+
@@ -494,6 +499,9 @@
+
+
+
@@ -1457,9 +1465,6 @@
-
-
-
@@ -1481,6 +1486,9 @@
+
+
+
@@ -1777,6 +1785,7 @@
+