diff --git a/samples/mpscore/.mps/modules.xml b/samples/mpscore/.mps/modules.xml
index 80b0bcc8..79f97ba0 100644
--- a/samples/mpscore/.mps/modules.xml
+++ b/samples/mpscore/.mps/modules.xml
@@ -18,6 +18,7 @@
+
diff --git a/samples/mpscore/build.xml b/samples/mpscore/build.xml
index 24fa8723..c7197cae 100644
--- a/samples/mpscore/build.xml
+++ b/samples/mpscore/build.xml
@@ -2614,7 +2614,7 @@
-
+
@@ -2778,6 +2778,7 @@
+
@@ -2941,6 +2942,132 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -5747,6 +5874,8 @@
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/generator/templates/jetbrains.mps.lang.smodel.queryExt.generator.templates@generator.mps b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/generator/templates/jetbrains.mps.lang.smodel.queryExt.generator.templates@generator.mps
new file mode 100644
index 00000000..da1884b9
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/generator/templates/jetbrains.mps.lang.smodel.queryExt.generator.templates@generator.mps
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/jetbrains.mps.lang.smodel.queryExt.mpl b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/jetbrains.mps.lang.smodel.queryExt.mpl
new file mode 100644
index 00000000..bbbd1c20
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/jetbrains.mps.lang.smodel.queryExt.mpl
@@ -0,0 +1,151 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0fda14cc-a416-4c81-869a-2175d8b3325d(jetbrains.mps.baseLanguageExt)
+ f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage)
+ 669835db-a6e0-460e-ae6b-5422ce5e823b(jetbrains.mps.lang.typesystemExt)
+ 65e59b42-e7f3-45ec-8692-6c7829780afe(jetbrains.mps.lang.smodelExt)
+ 88dcbb14-19c3-4776-8f81-33611ca4d87c(jetbrains.mps.baseLanguage.sequence)
+ c1f5ad88-21f4-4e0e-927c-48b1ca0c2334(jetbrains.mps.baseLanguage.collectionsExt)
+ c72da2b9-7cce-4447-8389-f407dc1158b7(jetbrains.mps.lang.structure)
+ 7866978e-a0f0-4cc7-81bc-4d213d9375e1(jetbrains.mps.lang.smodel)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1a8554c4-eb84-43ba-8c34-6f0d90c6e75a(jetbrains.mps.lang.smodel.query)
+
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.behavior.mps b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.behavior.mps
new file mode 100644
index 00000000..e2c302de
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.behavior.mps
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.constraints.mps b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.constraints.mps
new file mode 100644
index 00000000..af4f29d5
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.constraints.mps
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.editor.mps b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.editor.mps
new file mode 100644
index 00000000..623c8e40
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.editor.mps
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.structure.mps b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.structure.mps
new file mode 100644
index 00000000..78d9bd2b
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.structure.mps
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.types.mps b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.types.mps
new file mode 100644
index 00000000..e4f06c65
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.types.mps
@@ -0,0 +1,1430 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.typesystem.mps b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.typesystem.mps
new file mode 100644
index 00000000..07dbbd2b
--- /dev/null
+++ b/samples/mpscore/languages/jetbrains.mps.lang.smodel.queryExt/models/jetbrains.mps.lang.smodel.queryExt.typesystem.mps
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/mpscore/solutions/samples.mpscore.build/models/samples.mpscore.build.mps b/samples/mpscore/solutions/samples.mpscore.build/models/samples.mpscore.build.mps
index eeaeb810..93d17403 100644
--- a/samples/mpscore/solutions/samples.mpscore.build/models/samples.mpscore.build.mps
+++ b/samples/mpscore/solutions/samples.mpscore.build/models/samples.mpscore.build.mps
@@ -408,6 +408,118 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+