diff --git a/code/languages/com.mbeddr.formal.safety/solutions/com.mbeddr.formal.safety.build/models/com.mbeddr.formal.safety.build.mps b/code/languages/com.mbeddr.formal.safety/solutions/com.mbeddr.formal.safety.build/models/com.mbeddr.formal.safety.build.mps
index 6ecdbc212..e0ee0fd5e 100644
--- a/code/languages/com.mbeddr.formal.safety/solutions/com.mbeddr.formal.safety.build/models/com.mbeddr.formal.safety.build.mps
+++ b/code/languages/com.mbeddr.formal.safety/solutions/com.mbeddr.formal.safety.build/models/com.mbeddr.formal.safety.build.mps
@@ -230,6 +230,7 @@
+
@@ -243,6 +244,8 @@
+
+
@@ -345,7 +348,7 @@
-
+
@@ -16063,7 +16066,7 @@
-
+
@@ -16071,7 +16074,7 @@
-
+
@@ -16094,7 +16097,7 @@
-
+
@@ -16194,7 +16197,7 @@
-
+
@@ -16544,6 +16547,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -16977,6 +17007,12 @@
+
+
+
+
+
+
diff --git a/rcp_resources/bin/fasten.bat b/rcp_resources/bin/fasten.bat
index 1a41ef6f6..7ac35753f 100644
--- a/rcp_resources/bin/fasten.bat
+++ b/rcp_resources/bin/fasten.bat
@@ -4,14 +4,14 @@
:: JetBrains MPS startup script.
:: Generated by MPS
::----------------------------------------------------------------------
-SET IDEA_PATHS_SELECTOR=MPS2022.2
-SET PRODUCT=MPS
+SET IDEA_PATHS_SELECTOR=MPS2023.2
+SET PRODUCT=mps
:: ---------------------------------------------------------------------
:: Ensure IDE_HOME points to the directory where the IDE is installed.
:: ---------------------------------------------------------------------
SET IDE_BIN_DIR=%~dp0
-FOR /F "delims=" %%i in ("%IDE_BIN_DIR%\..") DO SET IDE_HOME=%%~fi
+FOR /F "delims=" %%i in ("%IDE_BIN_DIR%\..") DO SET "IDE_HOME=%%~fi"
IF "%IDE_BIN_DIR:~-8%" == "bin\win\" (
echo.
@@ -31,34 +31,30 @@ IF "%IDE_BIN_DIR:~-8%" == "bin\win\" (
SET JDK=
SET IDEA_VENDOR_NAME=JetBrains
-IF EXIST "%MPS_JDK%" SET JDK=%MPS_JDK%
+IF EXIST "%MPS_JDK%" SET "JDK=%MPS_JDK%"
IF EXIST "%JDK%" GOTO check
SET BITS=64
-SET USER_JDK64_FILE=%APPDATA%\%IDEA_VENDOR_NAME%\MPS2022.2\mps%BITS%.exe.jdk
+SET USER_JDK64_FILE=%APPDATA%\%IDEA_VENDOR_NAME%\MPS2023.2\mps%BITS%.exe.jdk
SET BITS=
-SET USER_JDK_FILE=%APPDATA%\%IDEA_VENDOR_NAME%\MPS2022.2\mps%BITS%.exe.jdk
+SET USER_JDK_FILE=%APPDATA%\%IDEA_VENDOR_NAME%\MPS2023.2\mps%BITS%.exe.jdk
IF EXIST "%USER_JDK64_FILE%" (
SET /P JDK=<%USER_JDK64_FILE%
) ELSE (
IF EXIST "%USER_JDK_FILE%" SET /P JDK=<%USER_JDK_FILE%
)
IF NOT "%JDK%" == "" (
- IF NOT EXIST "%JDK%" SET JDK="%IDE_HOME%\%JDK%"
+ IF NOT EXIST "%JDK%" SET "JDK=%IDE_HOME%\%JDK%"
IF EXIST "%JDK%" GOTO check
)
-IF "%PROCESSOR_ARCHITECTURE%" == "AMD64" (
- IF EXIST "%IDE_HOME%\jbr" SET JDK=%IDE_HOME%\jbr
- IF EXIST "%JDK%" GOTO check
-)
-IF EXIST "%IDE_HOME%\jbr-x86" SET JDK=%IDE_HOME%\jbr-x86
+IF EXIST "%IDE_HOME%\jbr" SET "JDK=%IDE_HOME%\jbr"
IF EXIST "%JDK%" GOTO check
-IF EXIST "%JDK_HOME%" SET JDK=%JDK_HOME%
+IF EXIST "%JDK_HOME%" SET "JDK=%JDK_HOME%"
IF EXIST "%JDK%" GOTO check
-IF EXIST "%JAVA_HOME%" SET JDK=%JAVA_HOME%
+IF EXIST "%JAVA_HOME%" SET "JDK=%JAVA_HOME%"
:check
SET JAVA_EXE=%JDK%\bin\javaw.exe
@@ -69,7 +65,7 @@ IF NOT EXIST "%JAVA_EXE%" (
)
SET JRE=%JDK%
-IF EXIST "%JRE%\jre" SET JRE=%JDK%\jre
+IF EXIST "%JRE%\jre" SET "JRE=%JDK%\jre"
SET BITS=
FINDSTR /B /C:"OS_ARCH=\"x86_64\"" "%JRE%\release" > NUL
@@ -131,7 +127,7 @@ IF "%VM_OPTIONS_FILE%%USER_VM_OPTIONS_FILE%" == "" (
SET COMMON_JVM_ARGS="-XX:ErrorFile=%USERPROFILE%\java_error_in_%PRODUCT%_%%p.log" "-XX:HeapDumpPath=%USERPROFILE%\java_error_in_%PRODUCT%.hprof" -Didea.paths.selector=%IDEA_PATHS_SELECTOR% -Didea.vendor.name="%IDEA_VENDOR_NAME%" %IDE_PROPERTIES_PROPERTY%
-SET IDE_JVM_ARGS=-Didea.platform.prefix=Idea -Didea.jre.check=true -Djava.system.class.loader=com.intellij.util.lang.PathClassLoader
+SET IDE_JVM_ARGS=-Didea.platform.prefix=Idea -Didea.jre.check=true -Dpty4j.preferred.native.folder="%IDE_HOME%/lib/pty4j" -Djna.boot.library.path="%IDE_HOME%/lib/jna" -Djava.system.class.loader=com.intellij.util.lang.PathClassLoader
SET ALL_JVM_ARGS=%ACC% %COMMON_JVM_ARGS% %IDE_JVM_ARGS%
SET CLASS_PATH=%IDE_HOME%\lib\*
@@ -147,7 +143,7 @@ start "" "%JAVA_EXE%" ^
%ALL_JVM_ARGS% ^
-Didea.main.class.name=%MAIN_CLASS% ^
-cp "%CLASS_PATH%" ^
- --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/jdk.internal.vm=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/sun.security.ssl=ALL-UNNAMED --add-opens=java.base/sun.security.util=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-opens=java.desktop/java.awt.dnd.peer=ALL-UNNAMED --add-opens=java.desktop/java.awt.event=ALL-UNNAMED --add-opens=java.desktop/java.awt.image=ALL-UNNAMED --add-opens=java.desktop/java.awt.peer=ALL-UNNAMED --add-opens=java.desktop/javax.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED --add-opens=java.desktop/sun.awt.datatransfer=ALL-UNNAMED --add-opens=java.desktop/sun.awt.image=ALL-UNNAMED --add-opens=java.desktop/sun.awt=ALL-UNNAMED --add-opens=java.desktop/sun.font=ALL-UNNAMED --add-opens=java.desktop/sun.java2d=ALL-UNNAMED --add-opens=java.desktop/sun.swing=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-opens=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-opens=jdk.jdi/com.sun.tools.jdi=ALL-UNNAMED --add-opens=java.desktop/sun.awt.windows=ALL-UNNAMED ^
+ --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/jdk.internal.vm=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/sun.nio.fs=ALL-UNNAMED --add-opens=java.base/sun.security.ssl=ALL-UNNAMED --add-opens=java.base/sun.security.util=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-opens=java.desktop/java.awt.dnd.peer=ALL-UNNAMED --add-opens=java.desktop/java.awt.event=ALL-UNNAMED --add-opens=java.desktop/java.awt.image=ALL-UNNAMED --add-opens=java.desktop/java.awt.peer=ALL-UNNAMED --add-opens=java.desktop/javax.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED --add-opens=java.desktop/sun.awt.datatransfer=ALL-UNNAMED --add-opens=java.desktop/sun.awt.image=ALL-UNNAMED --add-opens=java.desktop/sun.awt=ALL-UNNAMED --add-opens=java.desktop/sun.font=ALL-UNNAMED --add-opens=java.desktop/sun.java2d=ALL-UNNAMED --add-opens=java.desktop/sun.swing=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED --add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-opens=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-opens=jdk.jdi/com.sun.tools.jdi=ALL-UNNAMED --add-opens=java.desktop/sun.awt.windows=ALL-UNNAMED ^
%MAIN_CLASS% ^
%*
diff --git a/rcp_resources/icons/fasten16.svg b/rcp_resources/icons/fasten16.svg
new file mode 100644
index 000000000..aea999826
--- /dev/null
+++ b/rcp_resources/icons/fasten16.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/rcp_resources/icons/fasten32.svg b/rcp_resources/icons/fasten32.svg
new file mode 100644
index 000000000..1d0a0f0ad
--- /dev/null
+++ b/rcp_resources/icons/fasten32.svg
@@ -0,0 +1 @@
+
\ No newline at end of file