diff --git a/rosjava/src/rosjava_catkin_package_a/.gitlab-ci.yml b/rosjava/src/rosjava_catkin_package_a/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..6ef864f15b1d5cbf5a450a0fb1804ea7fe38d5f4
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/.gitlab-ci.yml
@@ -0,0 +1,20 @@
+variables:
+  GIT_SUBMODULE_STRATEGY: recursive
+
+stages:
+  - build
+
+build-ws:
+  image: ros:noetic-ros-base-focal
+  stage: build
+  script:
+    - apt-get update
+    - apt-get install -y python3-osrf-pycommon python3-catkin-tools build-essential protobuf-compiler libprotobuf-dev python3-rosdep
+    - echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
+    - source ~/.bashrc
+    - mkdir -p ~/rosjava/src
+    - wstool init -j4 ~/rosjava/src https://raw.githubusercontent.com/rosjava/rosjava/kinetic/rosjava.rosinstall
+    - rosdep install -y -i --from-paths .
+    - catkin build
+  tags:
+  - highmem
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileChanges/last-build.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileChanges/last-build.bin
new file mode 100644
index 0000000000000000000000000000000000000000..f76dd238ade08917e6712764a16a22005a50573d
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileChanges/last-build.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileContent/annotation-processors.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileContent/annotation-processors.bin
new file mode 100644
index 0000000000000000000000000000000000000000..14e2d0ed7b7fa8a1cfd2ac7421e7426f287b42d5
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileContent/annotation-processors.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileContent/fileContent.lock b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileContent/fileContent.lock
new file mode 100644
index 0000000000000000000000000000000000000000..77d159f7430de59c0542cacebd82c04e726b1ae4
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileContent/fileContent.lock differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/fileHashes.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/fileHashes.bin
new file mode 100644
index 0000000000000000000000000000000000000000..22df771df4dd3d1acb89875e97fb0887a3240412
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/fileHashes.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/fileHashes.lock b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/fileHashes.lock
new file mode 100644
index 0000000000000000000000000000000000000000..325b56cc522176b54fb0203aa95e36e09c4d9d6b
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/fileHashes.lock differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/resourceHashesCache.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/resourceHashesCache.bin
new file mode 100644
index 0000000000000000000000000000000000000000..9e81125a3ae8ec70904f522d15e97c10fcfc6acd
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/fileHashes/resourceHashesCache.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/gc.properties b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/classAnalysis.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/classAnalysis.bin
new file mode 100644
index 0000000000000000000000000000000000000000..1732d624e42f8d6bf05c7f7987696d6afcd162a2
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/classAnalysis.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/jarAnalysis.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/jarAnalysis.bin
new file mode 100644
index 0000000000000000000000000000000000000000..850c150dcee090c564fbe0fec424cf111799ec08
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/jarAnalysis.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/javaCompile.lock b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/javaCompile.lock
new file mode 100644
index 0000000000000000000000000000000000000000..602a7e0e8f1238a1ee7f5c9dc71a2f95e65e3a68
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/javaCompile.lock differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/taskHistory.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/taskHistory.bin
new file mode 100644
index 0000000000000000000000000000000000000000..0750be5d134683829e402d7a8f1be64387342398
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/javaCompile/taskHistory.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/taskHistory/taskHistory.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/taskHistory/taskHistory.bin
new file mode 100644
index 0000000000000000000000000000000000000000..9bfd9c38ca123fc2873bea742d167496c3b6ff2f
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/taskHistory/taskHistory.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/taskHistory/taskHistory.lock b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/taskHistory/taskHistory.lock
new file mode 100644
index 0000000000000000000000000000000000000000..2793b99ee7b691dcdbed729537f4ab61a98d683f
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/4.10.2/taskHistory/taskHistory.lock differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/buildOutputCleanup.lock
new file mode 100644
index 0000000000000000000000000000000000000000..bc6cc8ec8cb425efe473e0c51515c35cbefefcf0
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/cache.properties b/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/cache.properties
new file mode 100644
index 0000000000000000000000000000000000000000..d551f7d4da4663539050169fd5e6fd861a120311
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/cache.properties
@@ -0,0 +1,2 @@
+#Fri Jul 09 15:37:22 CEST 2021
+gradle.version=4.10.2
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/outputFiles.bin b/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/outputFiles.bin
new file mode 100644
index 0000000000000000000000000000000000000000..77d743ee2bfd2830b9ddc02c246a3134951f16ec
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/.gradle/buildOutputCleanup/outputFiles.bin differ
diff --git a/rosjava/src/rosjava_catkin_package_a/.gradle/vcs-1/gc.properties b/rosjava/src/rosjava_catkin_package_a/.gradle/vcs-1/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/rosjava/src/rosjava_catkin_package_a/CMakeLists.txt b/rosjava/src/rosjava_catkin_package_a/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..44e634daf44a1241991678b9fefed14ee448bfcd
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/CMakeLists.txt
@@ -0,0 +1,29 @@
+##############################################################################
+# CMake
+##############################################################################
+
+cmake_minimum_required(VERSION 2.8.3)
+project(rosjava_catkin_package_a)
+
+##############################################################################
+# Catkin
+##############################################################################
+
+find_package(catkin REQUIRED rosjava_build_tools)
+
+# Set the gradle targets you want catkin's make to run by default, e.g.
+#   catkin_rosjava_setup(installDist)
+# Note that the catkin_create_rosjava_xxx scripts will usually automatically
+# add tasks to this for you when you create subprojects.
+catkin_rosjava_setup(installDist publish)
+
+catkin_package()
+
+##############################################################################
+# Installation
+##############################################################################
+
+# Change this to match the maven group name you have specified in the
+# allprojects closure the root build.gradle
+install(DIRECTORY ${CATKIN_DEVEL_PREFIX}/${CATKIN_GLOBAL_MAVEN_DESTINATION}/com/github/rosjava/${PROJECT_NAME}/
+        DESTINATION ${CATKIN_GLOBAL_MAVEN_DESTINATION}/com/github/rosjava/${PROJECT_NAME})
diff --git a/rosjava/src/rosjava_catkin_package_a/README.md b/rosjava/src/rosjava_catkin_package_a/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..9bbe4ec7c0fe98f5fbc3ecf091479d668a261342
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/README.md
@@ -0,0 +1,3 @@
+# rosjava_catkin_package_a
+
+Fork of the official "rosjava_catkin_package_a" tutorial.
\ No newline at end of file
diff --git a/rosjava/src/rosjava_catkin_package_a/build.gradle b/rosjava/src/rosjava_catkin_package_a/build.gradle
new file mode 100644
index 0000000000000000000000000000000000000000..985fe4c62cacff54aaf296c351b1e114db9070b8
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/build.gradle
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+task wrapper(type: Wrapper) {
+    gradleVersion = '4.10.2'
+}
+
+buildscript {
+  apply from: "https://github.com/rosjava/rosjava_bootstrap/raw/kinetic/buildscript.gradle"
+}
+
+apply plugin: 'catkin'
+
+
+allprojects {
+    /*
+      A github url provides a good standard unique name for your project
+      Example below, but you may wish to switch to your own unique url.
+    */
+    group 'com.github.rosjava.rosjava_catkin_package_a'
+    version = project.catkin.pkg.version
+}
+
+subprojects {
+    /*
+     * The ros-java plugin configures a few things:
+     *
+     *  - local deployment repository : where it dumps the jars and packaged artifacts)
+     *  - local maven repositories    : where it finds your locally installed/built artifacts)
+     *  - external maven repositories : where it goes looking if it can't find dependencies locally
+     *
+     * To modify, or add repos to the default external maven repositories list, pull request against this code:
+     *
+     *   https://github.com/rosjava/rosjava_bootstrap/blob/kinetic/gradle_plugins/src/main/groovy/org/ros/gradle_plugins/RosPlugin.groovy#L31
+     */
+    apply plugin: "ros-java"
+    /*
+     * Some IDE support if you use it.
+     */
+    /* apply plugin: "eclipse" */
+     apply plugin: "idea"
+}
+
+/*
+  Some useful tasks:
+
+    install: deploys jar's to MavenLocal() (i.e. ~/.m2/repository)
+    publish : deploys jar's to devel/share/maven
+    installDist : assembles java apps in the _subproject_/build directories.
+
+  Note that these are dependent on the type of project (e.g. installDist is only valid for
+  java binary subprojects, while publish is only added once a subproject is included.
+  If you're using catkin_make, this is not important, since it will use the task list specified
+  in CMakeLists.txt
+*/
+defaultTasks 'tasks'
diff --git a/rosjava/src/rosjava_catkin_package_a/gradle/wrapper/gradle-wrapper.jar b/rosjava/src/rosjava_catkin_package_a/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 0000000000000000000000000000000000000000..29953ea141f55e3b8fc691d31b5ca8816d89fa87
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/gradle/wrapper/gradle-wrapper.properties b/rosjava/src/rosjava_catkin_package_a/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e0b3fb8d70b1bbf790f6f8ed1c928ddf09f54628
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,5 @@
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
diff --git a/rosjava/src/rosjava_catkin_package_a/gradlew b/rosjava/src/rosjava_catkin_package_a/gradlew
new file mode 100755
index 0000000000000000000000000000000000000000..cccdd3d517fc5249beaefa600691cf150f2fa3e6
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/gradlew
@@ -0,0 +1,172 @@
+#!/usr/bin/env sh
+
+##############################################################################
+##
+##  Gradle start up script for UN*X
+##
+##############################################################################
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+    ls=`ls -ld "$PRG"`
+    link=`expr "$ls" : '.*-> \(.*\)$'`
+    if expr "$link" : '/.*' > /dev/null; then
+        PRG="$link"
+    else
+        PRG=`dirname "$PRG"`"/$link"
+    fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn () {
+    echo "$*"
+}
+
+die () {
+    echo
+    echo "$*"
+    echo
+    exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "`uname`" in
+  CYGWIN* )
+    cygwin=true
+    ;;
+  Darwin* )
+    darwin=true
+    ;;
+  MINGW* )
+    msys=true
+    ;;
+  NONSTOP* )
+    nonstop=true
+    ;;
+esac
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+        # IBM's JDK on AIX uses strange locations for the executables
+        JAVACMD="$JAVA_HOME/jre/sh/java"
+    else
+        JAVACMD="$JAVA_HOME/bin/java"
+    fi
+    if [ ! -x "$JAVACMD" ] ; then
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+else
+    JAVACMD="java"
+    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
+    MAX_FD_LIMIT=`ulimit -H -n`
+    if [ $? -eq 0 ] ; then
+        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+            MAX_FD="$MAX_FD_LIMIT"
+        fi
+        ulimit -n $MAX_FD
+        if [ $? -ne 0 ] ; then
+            warn "Could not set maximum file descriptor limit: $MAX_FD"
+        fi
+    else
+        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+    fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+    JAVACMD=`cygpath --unix "$JAVACMD"`
+
+    # We build the pattern for arguments to be converted via cygpath
+    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+    SEP=""
+    for dir in $ROOTDIRSRAW ; do
+        ROOTDIRS="$ROOTDIRS$SEP$dir"
+        SEP="|"
+    done
+    OURCYGPATTERN="(^($ROOTDIRS))"
+    # Add a user-defined pattern to the cygpath arguments
+    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+    fi
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
+    i=0
+    for arg in "$@" ; do
+        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
+
+        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
+            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+        else
+            eval `echo args$i`="\"$arg\""
+        fi
+        i=$((i+1))
+    done
+    case $i in
+        (0) set -- ;;
+        (1) set -- "$args0" ;;
+        (2) set -- "$args0" "$args1" ;;
+        (3) set -- "$args0" "$args1" "$args2" ;;
+        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+    esac
+fi
+
+# Escape application args
+save () {
+    for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+    echo " "
+}
+APP_ARGS=$(save "$@")
+
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+  cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/rosjava/src/rosjava_catkin_package_a/gradlew.bat b/rosjava/src/rosjava_catkin_package_a/gradlew.bat
new file mode 100644
index 0000000000000000000000000000000000000000..e95643d6a2ca62258464e83c72f5156dc941c609
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/gradlew.bat
@@ -0,0 +1,84 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem  Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build.gradle b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build.gradle
new file mode 100644
index 0000000000000000000000000000000000000000..bb8035899c8af3650f8b74586754382c1c819ddf
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build.gradle
@@ -0,0 +1,72 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+/* This plugin is necessary for creating installDist tasks (i.e. executables) */
+apply plugin: 'application'
+mainClassName = 'org.ros.RosRun'
+
+/*
+ Examples of
+   1) dependencies from another project in this gradle stack.
+   2,3) open ranged dependencies from a maven repository.
+
+   Dependencies can be on external maven artifacts (such as rosjava_core
+   here) or on sibling subprojects. For rosjava maven artifact dependencies
+   it is a good idea to use open ranges on to
+   save continually updating these references, but it is recommended
+   to restrict this to the patch version number (e.g. [0.3,0.4) will
+   get the latest 0.3.x version) to avoid unknowingly
+   having api breaking changes usually associated with minor and major
+   version number changes.
+*/
+
+dependencies {
+  /* An external maven artifact dependency */
+  compile 'org.ros.rosjava_core:rosjava:[0.3,0.4)'
+  /*compile 'org.ros.rosjava_messages:rosjava_custom_srv:[0.1, 0.2)'*/
+  /* Example of a local subproject dependency */
+  /* compile project(':sibling_gradle_project') */
+
+  // logging
+  implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.30'
+  implementation group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.13.2'
+
+  // pnml lib
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.ecore', version: '2.12.0'
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.ecore.xmi', version: '2.12.0'
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.common', version: '2.12.0'
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.mwe.core', version: '1.3.13'
+  implementation group: 'fr.lip6.pnml', name: 'fr.lip6.pnml.framework.ptnet', version: '2.2.12'
+  implementation group: 'fr.lip6.pnml', name: 'fr.lip6.pnml.framework.utils', version: '2.2.12'
+  implementation group: 'org.apache.ws.commons.axiom', name: 'axiom-api', version: '1.2.22'
+  implementation group: 'org.apache.ws.commons.axiom', name: 'axiom-impl', version: '1.2.22'
+  implementation group: 'com.thaiopensource', name: 'jing', version: '20091111'
+  implementation 'org.jetbrains:annotations:19.0.0'
+
+  // apache
+  implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.0'
+
+
+  implementation fileTree(include: ['pnml-relast-0.2.jar'], dir: './libs')
+}
+
+task cleanScripts(dependsOn: 'installDist') {
+  doLast {
+    file('build/scripts').deleteDir()
+  }
+}
+
+installDist.finalizedBy(cleanScripts)
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener$1.class b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener$1.class
new file mode 100644
index 0000000000000000000000000000000000000000..f1164ef459f73facda84eebc1f7d1c9aa42d1704
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener$1.class differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener.class b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener.class
new file mode 100644
index 0000000000000000000000000000000000000000..ee8c9f6cd8369e378ecfa901d6a52d5c4e3fd836
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener.class differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker$1.class b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker$1.class
new file mode 100644
index 0000000000000000000000000000000000000000..aef9daf46c272b8cc4ae3cc081572812a1a6d015
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker$1.class differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker.class b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker.class
new file mode 100644
index 0000000000000000000000000000000000000000..22b07d0771770583614cb1e5647a6205c4f6c34f
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/classes/java/main/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker.class differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/bin/my_pub_sub_tutorial b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/bin/my_pub_sub_tutorial
new file mode 100755
index 0000000000000000000000000000000000000000..0dd6a07a18644f32f784950c634c56edf9817f41
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/bin/my_pub_sub_tutorial
@@ -0,0 +1,172 @@
+#!/usr/bin/env sh
+
+##############################################################################
+##
+##  my_pub_sub_tutorial start up script for UN*X
+##
+##############################################################################
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+    ls=`ls -ld "$PRG"`
+    link=`expr "$ls" : '.*-> \(.*\)$'`
+    if expr "$link" : '/.*' > /dev/null; then
+        PRG="$link"
+    else
+        PRG=`dirname "$PRG"`"/$link"
+    fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/.." >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+APP_NAME="my_pub_sub_tutorial"
+APP_BASE_NAME=`basename "$0"`
+
+# Add default JVM options here. You can also use JAVA_OPTS and MY_PUB_SUB_TUTORIAL_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn () {
+    echo "$*"
+}
+
+die () {
+    echo
+    echo "$*"
+    echo
+    exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "`uname`" in
+  CYGWIN* )
+    cygwin=true
+    ;;
+  Darwin* )
+    darwin=true
+    ;;
+  MINGW* )
+    msys=true
+    ;;
+  NONSTOP* )
+    nonstop=true
+    ;;
+esac
+
+CLASSPATH=$APP_HOME/lib/my_pub_sub_tutorial-0.1.0.jar:$APP_HOME/lib/pnml-relast-0.2.jar:$APP_HOME/lib/rosjava-0.3.7.jar:$APP_HOME/lib/log4j-slf4j-impl-2.13.2.jar:$APP_HOME/lib/slf4j-api-1.7.30.jar:$APP_HOME/lib/org.eclipse.emf.ecore-2.12.0.jar:$APP_HOME/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar:$APP_HOME/lib/org.eclipse.emf.common-2.12.0.jar:$APP_HOME/lib/org.eclipse.emf.mwe.core-1.3.13.jar:$APP_HOME/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar:$APP_HOME/lib/fr.lip6.pnml.framework.utils-2.2.12.jar:$APP_HOME/lib/axiom-impl-1.2.22.jar:$APP_HOME/lib/axiom-api-1.2.22.jar:$APP_HOME/lib/jing-20091111.jar:$APP_HOME/lib/annotations-19.0.0.jar:$APP_HOME/lib/commons-lang3-3.0.jar:$APP_HOME/lib/apache_xmlrpc_server-0.3.7.jar:$APP_HOME/lib/apache_xmlrpc_client-0.3.7.jar:$APP_HOME/lib/apache_xmlrpc_common-0.3.7.jar:$APP_HOME/lib/rosjava_test_msgs-0.3.0.jar:$APP_HOME/lib/rosgraph_msgs-1.11.3.jar:$APP_HOME/lib/nav_msgs-1.12.7.jar:$APP_HOME/lib/tf2_msgs-0.5.20.jar:$APP_HOME/lib/geometry_msgs-1.12.7.jar:$APP_HOME/lib/actionlib_msgs-1.12.7.jar:$APP_HOME/lib/std_msgs-0.5.13.jar:$APP_HOME/lib/message_generation-0.3.3.jar:$APP_HOME/lib/dnsjava-2.1.1.jar:$APP_HOME/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar:$APP_HOME/lib/com.springsource.org.apache.commons.logging-1.1.1.jar:$APP_HOME/lib/com.springsource.org.apache.commons.net-2.0.0.jar:$APP_HOME/lib/guava-12.0.jar:$APP_HOME/lib/log4j-core-2.13.2.jar:$APP_HOME/lib/log4j-api-2.13.2.jar:$APP_HOME/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar:$APP_HOME/lib/commons-cli-1.2.jar:$APP_HOME/lib/commons-logging-1.2.jar:$APP_HOME/lib/geronimo-activation_1.1_spec-1.1.jar:$APP_HOME/lib/jaxen-1.1.6.jar:$APP_HOME/lib/geronimo-stax-api_1.0_spec-1.0.1.jar:$APP_HOME/lib/apache-mime4j-core-0.7.2.jar:$APP_HOME/lib/woodstox-core-asl-4.2.0.jar:$APP_HOME/lib/xercesImpl-2.9.1.jar:$APP_HOME/lib/ws-commons-util-1.0.1.jar:$APP_HOME/lib/saxon-8.7.jar:$APP_HOME/lib/isorelax-20030108.jar:$APP_HOME/lib/netty-3.5.2.Final.jar:$APP_HOME/lib/com.springsource.org.apache.commons.codec-1.3.0.jar:$APP_HOME/lib/com.springsource.org.apache.commons.io-1.4.0.jar:$APP_HOME/lib/commons-pool-1.6.jar:$APP_HOME/lib/com.springsource.org.apache.commons.lang-2.4.0.jar:$APP_HOME/lib/gradle_plugins-0.3.3.jar:$APP_HOME/lib/junit-3.8.2.jar:$APP_HOME/lib/jsr305-1.3.9.jar:$APP_HOME/lib/guice-3.0.jar:$APP_HOME/lib/stax2-api-3.1.1.jar:$APP_HOME/lib/javax.inject-1.jar:$APP_HOME/lib/aopalliance-1.0.jar:$APP_HOME/lib/cglib-2.2.1-v20090111.jar:$APP_HOME/lib/asm-3.1.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+        # IBM's JDK on AIX uses strange locations for the executables
+        JAVACMD="$JAVA_HOME/jre/sh/java"
+    else
+        JAVACMD="$JAVA_HOME/bin/java"
+    fi
+    if [ ! -x "$JAVACMD" ] ; then
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+else
+    JAVACMD="java"
+    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
+    MAX_FD_LIMIT=`ulimit -H -n`
+    if [ $? -eq 0 ] ; then
+        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+            MAX_FD="$MAX_FD_LIMIT"
+        fi
+        ulimit -n $MAX_FD
+        if [ $? -ne 0 ] ; then
+            warn "Could not set maximum file descriptor limit: $MAX_FD"
+        fi
+    else
+        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+    fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+    JAVACMD=`cygpath --unix "$JAVACMD"`
+
+    # We build the pattern for arguments to be converted via cygpath
+    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+    SEP=""
+    for dir in $ROOTDIRSRAW ; do
+        ROOTDIRS="$ROOTDIRS$SEP$dir"
+        SEP="|"
+    done
+    OURCYGPATTERN="(^($ROOTDIRS))"
+    # Add a user-defined pattern to the cygpath arguments
+    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+    fi
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
+    i=0
+    for arg in "$@" ; do
+        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
+
+        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
+            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+        else
+            eval `echo args$i`="\"$arg\""
+        fi
+        i=$((i+1))
+    done
+    case $i in
+        (0) set -- ;;
+        (1) set -- "$args0" ;;
+        (2) set -- "$args0" "$args1" ;;
+        (3) set -- "$args0" "$args1" "$args2" ;;
+        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+    esac
+fi
+
+# Escape application args
+save () {
+    for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+    echo " "
+}
+APP_ARGS=$(save "$@")
+
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $MY_PUB_SUB_TUTORIAL_OPTS -classpath "\"$CLASSPATH\"" org.ros.RosRun "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+  cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/bin/my_pub_sub_tutorial.bat b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/bin/my_pub_sub_tutorial.bat
new file mode 100755
index 0000000000000000000000000000000000000000..8d65b942faadca26b4a8f6ab3a4da47ef5661b8e
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/bin/my_pub_sub_tutorial.bat
@@ -0,0 +1,84 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem  my_pub_sub_tutorial startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%..
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and MY_PUB_SUB_TUTORIAL_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\lib\my_pub_sub_tutorial-0.1.0.jar;%APP_HOME%\lib\pnml-relast-0.2.jar;%APP_HOME%\lib\rosjava-0.3.7.jar;%APP_HOME%\lib\log4j-slf4j-impl-2.13.2.jar;%APP_HOME%\lib\slf4j-api-1.7.30.jar;%APP_HOME%\lib\org.eclipse.emf.ecore-2.12.0.jar;%APP_HOME%\lib\org.eclipse.emf.ecore.xmi-2.12.0.jar;%APP_HOME%\lib\org.eclipse.emf.common-2.12.0.jar;%APP_HOME%\lib\org.eclipse.emf.mwe.core-1.3.13.jar;%APP_HOME%\lib\fr.lip6.pnml.framework.ptnet-2.2.12.jar;%APP_HOME%\lib\fr.lip6.pnml.framework.utils-2.2.12.jar;%APP_HOME%\lib\axiom-impl-1.2.22.jar;%APP_HOME%\lib\axiom-api-1.2.22.jar;%APP_HOME%\lib\jing-20091111.jar;%APP_HOME%\lib\annotations-19.0.0.jar;%APP_HOME%\lib\commons-lang3-3.0.jar;%APP_HOME%\lib\apache_xmlrpc_server-0.3.7.jar;%APP_HOME%\lib\apache_xmlrpc_client-0.3.7.jar;%APP_HOME%\lib\apache_xmlrpc_common-0.3.7.jar;%APP_HOME%\lib\rosjava_test_msgs-0.3.0.jar;%APP_HOME%\lib\rosgraph_msgs-1.11.3.jar;%APP_HOME%\lib\nav_msgs-1.12.7.jar;%APP_HOME%\lib\tf2_msgs-0.5.20.jar;%APP_HOME%\lib\geometry_msgs-1.12.7.jar;%APP_HOME%\lib\actionlib_msgs-1.12.7.jar;%APP_HOME%\lib\std_msgs-0.5.13.jar;%APP_HOME%\lib\message_generation-0.3.3.jar;%APP_HOME%\lib\dnsjava-2.1.1.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.httpclient-3.1.0.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.logging-1.1.1.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.net-2.0.0.jar;%APP_HOME%\lib\guava-12.0.jar;%APP_HOME%\lib\log4j-core-2.13.2.jar;%APP_HOME%\lib\log4j-api-2.13.2.jar;%APP_HOME%\lib\org.eclipse.emf.mwe2.runtime-2.8.3.jar;%APP_HOME%\lib\commons-cli-1.2.jar;%APP_HOME%\lib\commons-logging-1.2.jar;%APP_HOME%\lib\geronimo-activation_1.1_spec-1.1.jar;%APP_HOME%\lib\jaxen-1.1.6.jar;%APP_HOME%\lib\geronimo-stax-api_1.0_spec-1.0.1.jar;%APP_HOME%\lib\apache-mime4j-core-0.7.2.jar;%APP_HOME%\lib\woodstox-core-asl-4.2.0.jar;%APP_HOME%\lib\xercesImpl-2.9.1.jar;%APP_HOME%\lib\ws-commons-util-1.0.1.jar;%APP_HOME%\lib\saxon-8.7.jar;%APP_HOME%\lib\isorelax-20030108.jar;%APP_HOME%\lib\netty-3.5.2.Final.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.codec-1.3.0.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.io-1.4.0.jar;%APP_HOME%\lib\commons-pool-1.6.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.lang-2.4.0.jar;%APP_HOME%\lib\gradle_plugins-0.3.3.jar;%APP_HOME%\lib\junit-3.8.2.jar;%APP_HOME%\lib\jsr305-1.3.9.jar;%APP_HOME%\lib\guice-3.0.jar;%APP_HOME%\lib\stax2-api-3.1.1.jar;%APP_HOME%\lib\javax.inject-1.jar;%APP_HOME%\lib\aopalliance-1.0.jar;%APP_HOME%\lib\cglib-2.2.1-v20090111.jar;%APP_HOME%\lib\asm-3.1.jar
+
+@rem Execute my_pub_sub_tutorial
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %MY_PUB_SUB_TUTORIAL_OPTS%  -classpath "%CLASSPATH%" org.ros.RosRun %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable MY_PUB_SUB_TUTORIAL_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if  not "" == "%MY_PUB_SUB_TUTORIAL_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/actionlib_msgs-1.12.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/actionlib_msgs-1.12.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..65af967d9f683cf2506837dbc76ff1b0ad67e7a1
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/actionlib_msgs-1.12.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/annotations-19.0.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/annotations-19.0.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..59ff06af4a050c5a5b56b2ab0f27243c350b9ebf
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/annotations-19.0.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/aopalliance-1.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/aopalliance-1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..578b1a0c359ef88a84461bdb91d9d0041afd54de
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/aopalliance-1.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache-mime4j-core-0.7.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache-mime4j-core-0.7.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b5c225b5dbd496889342baf249c332f0944f7eee
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache-mime4j-core-0.7.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_client-0.3.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_client-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d86de577a7702ba1db57c0229e46dc6d2c01151e
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_client-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_common-0.3.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_common-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ff7b4d9aeaec83b2c98a74264bd1645adae058c6
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_common-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_server-0.3.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_server-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..cdf855dea321df7a135470d0837c7117ef8e7604
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/apache_xmlrpc_server-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/asm-3.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/asm-3.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..8217cae0a1bc977b241e0c8517cc2e3e7cede276
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/asm-3.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/axiom-api-1.2.22.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/axiom-api-1.2.22.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f6e9167cd12b690d289a6dc6463ce907dd8d7912
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/axiom-api-1.2.22.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/axiom-impl-1.2.22.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/axiom-impl-1.2.22.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f64e8613fc2e980ba506e0ea914a0746d6b2da53
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/axiom-impl-1.2.22.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/cglib-2.2.1-v20090111.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/cglib-2.2.1-v20090111.jar
new file mode 100644
index 0000000000000000000000000000000000000000..cfd5ae7273729999ca32ba6bfa761f522cce6dbc
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/cglib-2.2.1-v20090111.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.codec-1.3.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.codec-1.3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..2995ef47703537445c8a22e651cbee5b5c43a5bc
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.codec-1.3.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ae8b9e974da1e6cc087b260db4b29827928bc57f
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.io-1.4.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.io-1.4.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..1482fdc33904109c7eb1f38ce76cce2047db1f4d
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.io-1.4.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.lang-2.4.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.lang-2.4.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b55dd4de2fa418f8f868d8bdbe9cb4ab46660fc0
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.lang-2.4.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.logging-1.1.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.logging-1.1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f50c78cce95c8e8a8f71d9cfe6e029f2efe287be
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.logging-1.1.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.net-2.0.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.net-2.0.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..8dfeafa8bac521d89111333fbac5346cd0a7cc41
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/com.springsource.org.apache.commons.net-2.0.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-cli-1.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-cli-1.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ce4b9fffe40c41669797cd806ac989471b2acd84
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-cli-1.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-lang3-3.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-lang3-3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..7f2cfe13f69e8dff5859d838e4b2548e03bc01f4
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-lang3-3.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-logging-1.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-logging-1.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..93a3b9f6db406c84e270e19b9a5e70f2e27ca513
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-logging-1.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-pool-1.6.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-pool-1.6.jar
new file mode 100644
index 0000000000000000000000000000000000000000..72ca75a3e6eca2158a8c607b18572f3bd87bf24e
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/commons-pool-1.6.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/dnsjava-2.1.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/dnsjava-2.1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f37e2c85e7000623a01bba7e079d2b4220c3b35d
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/dnsjava-2.1.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d95eb0387559ed76311187c13228e1d6620d56f0
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/fr.lip6.pnml.framework.utils-2.2.12.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/fr.lip6.pnml.framework.utils-2.2.12.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f6067457f5a2406e85c81920e2f5b724d9e02827
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/fr.lip6.pnml.framework.utils-2.2.12.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geometry_msgs-1.12.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geometry_msgs-1.12.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..cea191ed62e32544da5f88f3f1ec6479c757445d
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geometry_msgs-1.12.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geronimo-activation_1.1_spec-1.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geronimo-activation_1.1_spec-1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..366494189a0d7f77afb5b149ea8dd8db93bbb2b3
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geronimo-activation_1.1_spec-1.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geronimo-stax-api_1.0_spec-1.0.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geronimo-stax-api_1.0_spec-1.0.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ab1ee3ba605df11b3075677c808d092845dad123
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/geronimo-stax-api_1.0_spec-1.0.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/gradle_plugins-0.3.3.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/gradle_plugins-0.3.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f0fc0d961aef629f803e56c7b482793fa7b940f7
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/gradle_plugins-0.3.3.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/guava-12.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/guava-12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..fefd6b2713c66e5c9a758fdf297127f5ff86cc1c
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/guava-12.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/guice-3.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/guice-3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f313e2b089d9e1b9d2c6e578ccbc4d8b6eabfd73
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/guice-3.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/isorelax-20030108.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/isorelax-20030108.jar
new file mode 100644
index 0000000000000000000000000000000000000000..a2ebb7698a17b37dd893793c5abe5ce184ec8f83
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/isorelax-20030108.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/javax.inject-1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/javax.inject-1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b2a9d0bf7bd463a6361898b36f010edd05c0cf6e
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/javax.inject-1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jaxen-1.1.6.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jaxen-1.1.6.jar
new file mode 100644
index 0000000000000000000000000000000000000000..52f47a4f433a9985896a1e6ff6d6a10b98d3cd41
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jaxen-1.1.6.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jing-20091111.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jing-20091111.jar
new file mode 100644
index 0000000000000000000000000000000000000000..fe01514e80920805e2e9169381fcf72cc5994aed
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jing-20091111.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jsr305-1.3.9.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jsr305-1.3.9.jar
new file mode 100644
index 0000000000000000000000000000000000000000..a9afc6619b4b9369f0501d06ceb1cf82a1e47cdd
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/jsr305-1.3.9.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/junit-3.8.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/junit-3.8.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..c8f711d050eff209321f799d85ebb3bbe305d481
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/junit-3.8.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-api-2.13.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-api-2.13.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..afc89ff0d588806a99993909014c260116ef19c4
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-api-2.13.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-core-2.13.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-core-2.13.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..9b6bdff8e2c392fe8adcf1eb04c6e50d549326ce
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-core-2.13.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-slf4j-impl-2.13.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-slf4j-impl-2.13.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..19e257cae8f550a8b2dfd7dcd9036f6ed284d521
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/log4j-slf4j-impl-2.13.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/message_generation-0.3.3.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/message_generation-0.3.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..93b16b669fe0e60a54bf8362993399eb9b96ae4f
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/message_generation-0.3.3.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/my_pub_sub_tutorial-0.1.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/my_pub_sub_tutorial-0.1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..49e01ad1f5f9d222e52aa4a30bcdf89c648f0d81
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/my_pub_sub_tutorial-0.1.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/nav_msgs-1.12.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/nav_msgs-1.12.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..0ae80b9bd6cf2d387eeb064a2c571f776f4eb1d9
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/nav_msgs-1.12.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/netty-3.5.2.Final.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/netty-3.5.2.Final.jar
new file mode 100644
index 0000000000000000000000000000000000000000..debda9865cddf8c0e0d6f133cd22ee5756fec23c
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/netty-3.5.2.Final.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.common-2.12.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.common-2.12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..08910161d17c87507322f765558cd0dd2fb6d967
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.common-2.12.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.ecore-2.12.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.ecore-2.12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..7a6abb76a4a50b7ba0c1257f2fb373d37bb942bb
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.ecore-2.12.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..fd278fee8a293ccd2e85c7e180f25b9e1a37cf59
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.mwe.core-1.3.13.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.mwe.core-1.3.13.jar
new file mode 100644
index 0000000000000000000000000000000000000000..87c4840246a0b41f5a85e9a4ba487bf7e877dadb
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.mwe.core-1.3.13.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..19243c3910b797312de968d2f74f8a38b04501c1
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/pnml-relast-0.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/pnml-relast-0.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d7e986218259d2d62226fdc96525b86eef9c7a94
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/pnml-relast-0.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosgraph_msgs-1.11.3.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosgraph_msgs-1.11.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..3a925bc155f80d2f69fa9fb35defd33afa63724b
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosgraph_msgs-1.11.3.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosjava-0.3.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosjava-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d818168466e37f2486312c790bf25018e26a42b9
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosjava-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosjava_test_msgs-0.3.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosjava_test_msgs-0.3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..047763eb099e0cc00047837e3deb50212683cefe
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/rosjava_test_msgs-0.3.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/saxon-8.7.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/saxon-8.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..0e8559aaa22e8bf8db2a1f2619665895de51edb7
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/saxon-8.7.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/slf4j-api-1.7.30.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/slf4j-api-1.7.30.jar
new file mode 100644
index 0000000000000000000000000000000000000000..29ac26fb8cad7ef5934377a8c269c4e521520e5c
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/slf4j-api-1.7.30.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/stax2-api-3.1.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/stax2-api-3.1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..63a8a06467233525160434da6e46ea0599a61700
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/stax2-api-3.1.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/std_msgs-0.5.13.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/std_msgs-0.5.13.jar
new file mode 100644
index 0000000000000000000000000000000000000000..e09ccb0af8ea908d127c25d2be2968bce0698529
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/std_msgs-0.5.13.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/tf2_msgs-0.5.20.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/tf2_msgs-0.5.20.jar
new file mode 100644
index 0000000000000000000000000000000000000000..4537752806b50453466d5af073ac6d4cb5561771
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/tf2_msgs-0.5.20.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/woodstox-core-asl-4.2.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/woodstox-core-asl-4.2.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..8ca96d52a974bcab1fae5555b7145978d0258ede
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/woodstox-core-asl-4.2.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/ws-commons-util-1.0.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/ws-commons-util-1.0.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..3769ee501dcebb0757faaf5e1104d674ed413c04
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/ws-commons-util-1.0.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/xercesImpl-2.9.1.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/xercesImpl-2.9.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..547f56300d93fe36587910739e095f03e287d47e
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/install/my_pub_sub_tutorial/lib/xercesImpl-2.9.1.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/libs/my_pub_sub_tutorial-0.1.0.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/libs/my_pub_sub_tutorial-0.1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..49e01ad1f5f9d222e52aa4a30bcdf89c648f0d81
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/libs/my_pub_sub_tutorial-0.1.0.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/publications/mavenJava/pom-default.xml b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/publications/mavenJava/pom-default.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fa61a01f90a57148ac8cdd391329d48d27904ae6
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/publications/mavenJava/pom-default.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>com.github.rosjava.rosjava_catkin_package_a</groupId>
+  <artifactId>my_pub_sub_tutorial</artifactId>
+  <version>0.1.0</version>
+  <dependencies>
+    <dependency>
+      <groupId>org.ros.rosjava_core</groupId>
+      <artifactId>rosjava</artifactId>
+      <version>[0.3,0.4)</version>
+      <scope>compile</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+      <version>1.7.30</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-slf4j-impl</artifactId>
+      <version>2.13.2</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.ecore</artifactId>
+      <version>2.12.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.ecore.xmi</artifactId>
+      <version>2.12.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.common</artifactId>
+      <version>2.12.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.mwe.core</artifactId>
+      <version>1.3.13</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>fr.lip6.pnml</groupId>
+      <artifactId>fr.lip6.pnml.framework.ptnet</artifactId>
+      <version>2.2.12</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>fr.lip6.pnml</groupId>
+      <artifactId>fr.lip6.pnml.framework.utils</artifactId>
+      <version>2.2.12</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.ws.commons.axiom</groupId>
+      <artifactId>axiom-api</artifactId>
+      <version>1.2.22</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.ws.commons.axiom</groupId>
+      <artifactId>axiom-impl</artifactId>
+      <version>1.2.22</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.thaiopensource</groupId>
+      <artifactId>jing</artifactId>
+      <version>20091111</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.jetbrains</groupId>
+      <artifactId>annotations</artifactId>
+      <version>19.0.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-lang3</artifactId>
+      <version>3.0</version>
+      <scope>runtime</scope>
+    </dependency>
+  </dependencies>
+</project>
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/resources/main/minimal.pnml b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/resources/main/minimal.pnml
new file mode 100644
index 0000000000000000000000000000000000000000..02aac0252a55e8aeea785a415cbe4f61c9d6784c
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/resources/main/minimal.pnml
@@ -0,0 +1,149 @@
+<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
+ <net id="n-E2D0-BCF46-0" type ="http://www.pnml.org/version-2009/grammar/ptnet">
+  <name>
+   <text>minimal</text>
+  </name>
+  <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+  </toolspecific>
+  <page id="g-E2D0-BCF68-1">
+   <place id="p-E2D0-BCF6F-2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF6F-2</placeID>
+       <outputsignalID>os2</outputsignalID>
+       <initialvalue>1</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>3</result>
+        </equal>
+        <equal>
+         <value>0</value>
+         <result>2</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p0</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <initialMarking>
+     <text>1</text>
+    </initialMarking>
+    <graphics>
+     <position x="30" y="50"/>
+    </graphics>
+   </place>
+   <place id="p-E2D0-BCF9D-3">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF9D-3</placeID>
+       <outputsignalID>os1</outputsignalID>
+       <initialvalue>4</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>1</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p1</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="635" y="90"/>
+    </graphics>
+   </place>
+   <transition id="t1">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is1</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is3</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t0</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="300" y="50"/>
+    </graphics>
+   </transition>
+   <transition id="t2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t2</transitionID>
+       <inputsignalID>is2</inputsignalID>
+       <initialvalue>0</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t1</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="285" y="205"/>
+    </graphics>
+   </transition>
+   <arc id="e-E2D0-BCFCD-6" source="t2" target="p-E2D0-BCF6F-2">
+   </arc>
+   <arc id="e-E2D0-BCFDB-7" source="p-E2D0-BCF9D-3" target="t2">
+   </arc>
+   <arc id="e-E2D0-BCFF3-8" source="t1" target="p-E2D0-BCF9D-3">
+   </arc>
+   <arc id="e-E2D0-BCFFB-9" source="p-E2D0-BCF6F-2" target="t1">
+   </arc>
+  </page>
+ </net>
+</pnml>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/jar/MANIFEST.MF b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/jar/MANIFEST.MF
new file mode 100644
index 0000000000000000000000000000000000000000..58630c02ef423cffd6dd6aafd946eb8512040c37
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/jar/MANIFEST.MF
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/publishMavenJavaPublicationToMavenRepository/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/maven-metadata-remote.xml b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/publishMavenJavaPublicationToMavenRepository/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/maven-metadata-remote.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b96575be8bbd1abe0b1766617e4517023a9563f7
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/publishMavenJavaPublicationToMavenRepository/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/maven-metadata-remote.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata>
+  <groupId>com.github.rosjava.rosjava_catkin_package_a</groupId>
+  <artifactId>my_pub_sub_tutorial</artifactId>
+  <versioning>
+    <release>0.1.0</release>
+    <versions>
+      <version>0.1.0</version>
+    </versions>
+    <lastUpdated>20210709135440</lastUpdated>
+  </versioning>
+</metadata>
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/publishMavenJavaPublicationToMavenRepository/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/resolver-status.properties b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/publishMavenJavaPublicationToMavenRepository/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/resolver-status.properties
new file mode 100644
index 0000000000000000000000000000000000000000..c17e88d34cc27462bf9da978cf2b1dd48036790f
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/build/tmp/publishMavenJavaPublicationToMavenRepository/com/github/rosjava/rosjava_catkin_package_a/my_pub_sub_tutorial/resolver-status.properties
@@ -0,0 +1,3 @@
+#NOTE: This is an internal implementation file, its format can be changed without prior notice.
+#Fri Jul 09 15:54:40 CEST 2021
+maven-metadata-remote.xml.lastUpdated=1625838880694
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/libs/pnml-relast-0.2.jar b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/libs/pnml-relast-0.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d7e986218259d2d62226fdc96525b86eef9c7a94
Binary files /dev/null and b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/libs/pnml-relast-0.2.jar differ
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/java/com/github/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener.java b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/java/com/github/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener.java
new file mode 100644
index 0000000000000000000000000000000000000000..160cda7e7d99d06651356570b93e94e00d78c53d
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/java/com/github/rosjava_catkin_package_a/my_pub_sub_tutorial/Listener.java
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package com.github.rosjava.rosjava_catkin_package_a.my_pub_sub_tutorial;
+
+import de.tudresden.inf.st.pnml.jastadd.model.JavaHandler;
+import de.tudresden.inf.st.pnml.jastadd.model.Marking;
+import de.tudresden.inf.st.service.PetriNetInitService;
+import de.tudresden.inf.st.service.PetriNetLoggingService;
+import org.apache.commons.logging.Log;
+import org.ros.message.MessageListener;
+import org.ros.namespace.GraphName;
+import org.ros.node.AbstractNodeMain;
+import org.ros.node.ConnectedNode;
+import org.ros.node.NodeMain;
+import org.ros.node.topic.Subscriber;
+//import rosjava_custom_srv.sample;
+
+import java.util.List;
+
+/**
+ * A simple {@link Subscriber} {@link NodeMain}.
+ */
+/*public class Listener extends AbstractNodeMain {
+
+  @Override
+  public GraphName getDefaultNodeName() {
+    return GraphName.of("rosjava/listener");
+  }
+
+  @Override
+  public void onStart(ConnectedNode connectedNode) {
+    final Log log = connectedNode.getLog();
+    Subscriber<rosjava_custom_srv.sample> subscriber = connectedNode.newSubscriber("chatter", rosjava_custom_srv.sample._TYPE);
+    subscriber.addMessageListener(new MessageListener<rosjava_custom_srv.sample>() {
+      @Override
+      public void onNewMessage(rosjava_custom_srv.sample message) {
+        log.info("I heard: \"" + message.getData() + "\"");
+      }
+    });
+  }
+}*/
+
+/**
+ * A simple {@link Subscriber} {@link NodeMain}.
+*/
+public class Listener extends AbstractNodeMain {
+
+  @Override
+  public GraphName getDefaultNodeName() {
+    return GraphName.of("rosjava/listener");
+  }
+
+  @Override
+  public void onStart(ConnectedNode connectedNode) {
+
+    JavaHandler javaHandler = JavaHandler.getInstance();
+    List<Marking> markedGraphs = PetriNetInitService.initMarkedGraphs("src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/resources/minimal.pnml");
+    PetriNetLoggingService.printInputSignals(markedGraphs.get(0));
+    PetriNetLoggingService.printOutputSignals(markedGraphs.get(0));
+    markedGraphs.get(0).print();
+
+    final Log log = connectedNode.getLog();
+    Subscriber<std_msgs.String> subscriber = connectedNode.newSubscriber("chatter", std_msgs.String._TYPE);
+    subscriber.addMessageListener(new MessageListener<std_msgs.String>() {
+      @Override
+      public void onNewMessage(std_msgs.String message) {
+        log.info("I heard: \"" + message.getData() + "\"");
+      }
+    });
+  }
+}
\ No newline at end of file
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/java/com/github/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker.java b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/java/com/github/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker.java
new file mode 100644
index 0000000000000000000000000000000000000000..706655c9a9d3f70853d3a924fe84d2b60c1b1db5
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/java/com/github/rosjava_catkin_package_a/my_pub_sub_tutorial/Talker.java
@@ -0,0 +1,100 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package com.github.rosjava.rosjava_catkin_package_a.my_pub_sub_tutorial;
+
+import org.ros.concurrent.CancellableLoop;
+import org.ros.namespace.GraphName;
+import org.ros.node.AbstractNodeMain;
+import org.ros.node.ConnectedNode;
+import org.ros.node.NodeMain;
+import org.ros.node.topic.Publisher;
+//import rosjava_custom_srv.sample;
+
+
+
+/**
+ * A simple {@link Publisher} {@link NodeMain}.
+ */
+/*public class Talker extends AbstractNodeMain {
+
+  @Override
+  public GraphName getDefaultNodeName() {
+    return GraphName.of("rosjava/talker");
+  }
+
+  @Override
+  public void onStart(final ConnectedNode connectedNode) {
+    final Publisher<rosjava_custom_srv.sample> publisher =
+        connectedNode.newPublisher("chatter", rosjava_custom_srv.sample._TYPE);
+    // This CancellableLoop will be canceled automatically when the node shuts
+    // down.
+    connectedNode.executeCancellableLoop(new CancellableLoop() {
+      private String sendedString;
+
+      @Override
+      protected void setup() {
+        sendedString = "Hello World!";
+      }
+
+      @Override
+      protected void loop() throws InterruptedException {
+        rosjava_custom_srv.sample str = publisher.newMessage();
+        str.setData(sendedString);
+        publisher.publish(str);
+       // sequenceNumber++;
+        Thread.sleep(1000);
+      }
+    });
+  }
+}*/
+
+
+/**
+ * A simple {@link Publisher} {@link NodeMain}.
+ */
+public class Talker extends AbstractNodeMain {
+
+  @Override
+  public GraphName getDefaultNodeName() {
+    return GraphName.of("rosjava/talker");
+  }
+
+  @Override
+  public void onStart(final ConnectedNode connectedNode) {
+    final Publisher<std_msgs.String> publisher =
+        connectedNode.newPublisher("chatter", std_msgs.String._TYPE);
+    // This CancellableLoop will be canceled automatically when the node shuts
+    // down.
+    connectedNode.executeCancellableLoop(new CancellableLoop() {
+      private int sequenceNumber;
+
+      @Override
+      protected void setup() {
+        sequenceNumber = 0;
+      }
+
+      @Override
+      protected void loop() throws InterruptedException {
+        std_msgs.String str = publisher.newMessage();
+        str.setData("Hello world! " + sequenceNumber);
+        publisher.publish(str);
+        sequenceNumber++;
+        Thread.sleep(1000);
+      }
+    });
+  }
+}
diff --git a/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/resources/minimal.pnml b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/resources/minimal.pnml
new file mode 100644
index 0000000000000000000000000000000000000000..02aac0252a55e8aeea785a415cbe4f61c9d6784c
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/resources/minimal.pnml
@@ -0,0 +1,149 @@
+<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
+ <net id="n-E2D0-BCF46-0" type ="http://www.pnml.org/version-2009/grammar/ptnet">
+  <name>
+   <text>minimal</text>
+  </name>
+  <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+  </toolspecific>
+  <page id="g-E2D0-BCF68-1">
+   <place id="p-E2D0-BCF6F-2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF6F-2</placeID>
+       <outputsignalID>os2</outputsignalID>
+       <initialvalue>1</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>3</result>
+        </equal>
+        <equal>
+         <value>0</value>
+         <result>2</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p0</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <initialMarking>
+     <text>1</text>
+    </initialMarking>
+    <graphics>
+     <position x="30" y="50"/>
+    </graphics>
+   </place>
+   <place id="p-E2D0-BCF9D-3">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF9D-3</placeID>
+       <outputsignalID>os1</outputsignalID>
+       <initialvalue>4</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>1</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p1</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="635" y="90"/>
+    </graphics>
+   </place>
+   <transition id="t1">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is1</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is3</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t0</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="300" y="50"/>
+    </graphics>
+   </transition>
+   <transition id="t2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t2</transitionID>
+       <inputsignalID>is2</inputsignalID>
+       <initialvalue>0</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t1</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="285" y="205"/>
+    </graphics>
+   </transition>
+   <arc id="e-E2D0-BCFCD-6" source="t2" target="p-E2D0-BCF6F-2">
+   </arc>
+   <arc id="e-E2D0-BCFDB-7" source="p-E2D0-BCF9D-3" target="t2">
+   </arc>
+   <arc id="e-E2D0-BCFF3-8" source="t1" target="p-E2D0-BCF9D-3">
+   </arc>
+   <arc id="e-E2D0-BCFFB-9" source="p-E2D0-BCF6F-2" target="t1">
+   </arc>
+  </page>
+ </net>
+</pnml>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_catkin_package_a/package.xml b/rosjava/src/rosjava_catkin_package_a/package.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2814c3c70c59d9a01205f81af77965f7a713c6fe
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/package.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<package format="2">
+  <name>rosjava_catkin_package_a</name>
+  <version>0.1.0</version>
+  <description>The rosjava_catkin_package_a package</description>
+
+  <!-- One maintainer tag required, multiple allowed, one person per tag -->
+  <!-- Example:  -->
+  <!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
+  <maintainer email="sebastian@todo.todo">sebastian</maintainer>
+
+
+  <!-- One license tag required, multiple allowed, one license per tag -->
+  <!-- Commonly used license strings: -->
+  <!--   BSD, MIT, Boost Software License, GPLv2, GPLv3, LGPLv2.1, LGPLv3 -->
+  <license>Apache 2.0</license>
+
+
+  <!-- Url tags are optional, but multiple are allowed, one per tag -->
+  <!-- Optional attribute type can be: website, bugtracker, or repository -->
+  <!-- Example: -->
+  <!-- <url type="website">http://wiki.ros.org/rosjava_catkin_package_a</url> -->
+
+
+  <!-- Author tags are optional, multiple are allowed, one per tag -->
+  <!-- Authors do not have to be maintainers, but could be -->
+  <!-- Example: -->
+  <!-- <author email="jane.doe@example.com">Jane Doe</author> -->
+
+
+  <!-- The *depend tags are used to specify dependencies -->
+  <!-- Dependencies can be catkin packages or system dependencies -->
+  <!-- Examples: -->
+  <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+  <!--   <depend>roscpp</depend> -->
+  <!--   Note that this is equivalent to the following: -->
+  <!--   <build_depend>roscpp</build_depend> -->
+  <!--   <exec_depend>roscpp</exec_depend> -->
+  <!-- Use build_depend for packages you need at compile time: -->
+  <!--   <build_depend>message_generation</build_depend> -->
+  <!-- Use build_export_depend for packages you need in order to build against this package: -->
+  <!--   <build_export_depend>message_generation</build_export_depend> -->
+  <!-- Use buildtool_depend for build tool packages: -->
+  <!--   <buildtool_depend>catkin</buildtool_depend> -->
+  <!-- Use exec_depend for packages you need at runtime: -->
+  <!--   <exec_depend>message_runtime</exec_depend> -->
+  <!-- Use test_depend for packages you need only for testing: -->
+  <!--   <test_depend>gtest</test_depend> -->
+  <!-- Use doc_depend for packages you need only for building documentation: -->
+  <!--   <doc_depend>doxygen</doc_depend> -->
+  <buildtool_depend>catkin</buildtool_depend>
+  <build_depend>rosjava_build_tools</build_depend>
+
+
+  <!-- The export tag contains other, unspecified, tags -->
+  <export>
+    <!-- Other tools can request additional information be placed here -->
+
+  </export>
+</package>
diff --git a/rosjava/src/rosjava_catkin_package_a/rosjava.rosinstall b/rosjava/src/rosjava_catkin_package_a/rosjava.rosinstall
new file mode 100644
index 0000000000000000000000000000000000000000..0ab9930dc9bd7fa5f88c30df343b95c78fe97a47
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/rosjava.rosinstall
@@ -0,0 +1,16 @@
+# Install this on top of rosjava core workspaces
+#
+# Note: Disabling annotations messages (and dependencies) until a redesign comes through.
+# Note: usually don't have yocs_msgs sources in an underlay, so add it here.
+[
+# A minimal source environment for rosjava that utilises rosjava_messages for message generation
+{'git': {'local-name': 'rosjava_build_tools', 'version': 'clf', 'uri':'https://git-st.inf.tu-dresden.de/ceti/ros-internal/forked-rosjava-packages/rosjava_build_tools.git'}},
+{'git': {'local-name': 'genjava', 'version': 'kinetic', 'uri':'https://git-st.inf.tu-dresden.de/ceti/ros-internal/forked-rosjava-packages/genjava.git'}},
+{'git': {'local-name': 'rosjava_bootstrap', 'version': 'kinetic', 'uri':'https://github.com/rosjava/rosjava_bootstrap'}},
+{'git': {'local-name': 'rosjava_test_msgs', 'version': 'kinetic', 'uri':'https://github.com/rosjava/rosjava_test_msgs.git'}},
+{'git': {'local-name': 'rosjava_messages', 'version': 'kinetic', 'uri':'https://github.com/rosjava/rosjava_messages'}},
+{'git': {'local-name': 'rosjava_core', 'version': 'kinetic', 'uri':'https://github.com/rosjava/rosjava_core'}},
+{'git': {'local-name': 'rosjava_extras', 'version': 'kinetic', 'uri':'https://github.com/rosjava/rosjava_extras'}},
+{'git': {'local-name': 'zeroconf_jmdns_suite', 'version': 'kinetic', 'uri':'https://github.com/rosjava/zeroconf_jmdns_suite'}},
+{'git': {'local-name': 'rosjava', 'version': 'kinetic', 'uri':'https://github.com/rosjava/rosjava.git'}},
+]
diff --git a/rosjava/src/rosjava_catkin_package_a/settings.gradle b/rosjava/src/rosjava_catkin_package_a/settings.gradle
new file mode 100644
index 0000000000000000000000000000000000000000..b3b9ff348c333ffd9bb87259a9daa9c81303fb79
--- /dev/null
+++ b/rosjava/src/rosjava_catkin_package_a/settings.gradle
@@ -0,0 +1,17 @@
+/*
+ * Copyright (C) 2013 Sebastian Ebert
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+include 'my_pub_sub_tutorial'
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileChanges/last-build.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileChanges/last-build.bin
new file mode 100644
index 0000000000000000000000000000000000000000..f76dd238ade08917e6712764a16a22005a50573d
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileChanges/last-build.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileContent/annotation-processors.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileContent/annotation-processors.bin
new file mode 100644
index 0000000000000000000000000000000000000000..8780a493ffdc25d24cb62c65ffa39d0a88dfadc7
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileContent/annotation-processors.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileContent/fileContent.lock b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileContent/fileContent.lock
new file mode 100644
index 0000000000000000000000000000000000000000..73d628c64ef1465764128ce5cc96f84070d36ddd
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileContent/fileContent.lock differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/fileHashes.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/fileHashes.bin
new file mode 100644
index 0000000000000000000000000000000000000000..1cef55c6047c1a0c0414c2b8e7f1c34fc7f0214c
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/fileHashes.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/fileHashes.lock b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/fileHashes.lock
new file mode 100644
index 0000000000000000000000000000000000000000..e7aaf25158404a011c2e8b73d010780661c77baa
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/fileHashes.lock differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/resourceHashesCache.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/resourceHashesCache.bin
new file mode 100644
index 0000000000000000000000000000000000000000..f4e1d6abe10bf6f67e903cf73a87b8b285c755d5
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/fileHashes/resourceHashesCache.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/gc.properties b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/classAnalysis.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/classAnalysis.bin
new file mode 100644
index 0000000000000000000000000000000000000000..e4be60d062ccd2dfa72417f4f4701345126c5abe
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/classAnalysis.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/jarAnalysis.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/jarAnalysis.bin
new file mode 100644
index 0000000000000000000000000000000000000000..09a537409b7c2d6dea12ce85468902d4ded17360
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/jarAnalysis.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/javaCompile.lock b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/javaCompile.lock
new file mode 100644
index 0000000000000000000000000000000000000000..71b22519faa7d7b566c395551c98b9cd5f40110c
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/javaCompile.lock differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/taskHistory.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/taskHistory.bin
new file mode 100644
index 0000000000000000000000000000000000000000..a3374bfa6b3a35a2858e7eb7028791063b3da7dc
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/javaCompile/taskHistory.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/taskHistory/taskHistory.bin b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/taskHistory/taskHistory.bin
new file mode 100644
index 0000000000000000000000000000000000000000..93aafb61b059e223feb0603185f5331351821258
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/taskHistory/taskHistory.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/taskHistory/taskHistory.lock b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/taskHistory/taskHistory.lock
new file mode 100644
index 0000000000000000000000000000000000000000..53b90df2154e985d4fefe6b4b1770bcf980d44c5
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/4.10.2/taskHistory/taskHistory.lock differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/buildOutputCleanup.lock
new file mode 100644
index 0000000000000000000000000000000000000000..cdaac1132261c2a0a3d3b2add31e85f3426bd244
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/cache.properties b/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/cache.properties
new file mode 100644
index 0000000000000000000000000000000000000000..daa97776842846721cebf7a95c9bfe3b2d012a12
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/cache.properties
@@ -0,0 +1,2 @@
+#Tue Feb 16 15:53:04 CET 2021
+gradle.version=4.10.2
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/outputFiles.bin b/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/outputFiles.bin
new file mode 100644
index 0000000000000000000000000000000000000000..cd5776711066eaf06fcfa440bef429c0430abca3
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/.gradle/buildOutputCleanup/outputFiles.bin differ
diff --git a/rosjava/src/rosjava_rag_connector/.gradle/vcs-1/gc.properties b/rosjava/src/rosjava_rag_connector/.gradle/vcs-1/gc.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/rosjava/src/rosjava_rag_connector/.idea/codeStyles/Project.xml b/rosjava/src/rosjava_rag_connector/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000000000000000000000000000000000000..919ce1f1f77253454105acb2aad9997c1047a0e6
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/codeStyles/Project.xml
@@ -0,0 +1,7 @@
+<component name="ProjectCodeStyleConfiguration">
+  <code_scheme name="Project" version="173">
+    <ScalaCodeStyleSettings>
+      <option name="MULTILINE_STRING_CLOSING_QUOTES_ON_NEW_LINE" value="true" />
+    </ScalaCodeStyleSettings>
+  </code_scheme>
+</component>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/codeStyles/codeStyleConfig.xml b/rosjava/src/rosjava_rag_connector/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a55e7a179bde3e4e772c29c0c85e53354aa54618
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+<component name="ProjectCodeStyleConfiguration">
+  <state>
+    <option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
+  </state>
+</component>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/compiler.xml b/rosjava/src/rosjava_rag_connector/.idea/compiler.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1c5ab058da9e24fd5f35bc5bcc6b9bb2c5fe302f
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/compiler.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="CompilerConfiguration">
+    <bytecodeTargetLevel target="1.7" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/gradle.xml b/rosjava/src/rosjava_rag_connector/.idea/gradle.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fd48ee157e5967105495b2bfc1a8319776fe5df7
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/gradle.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="GradleMigrationSettings" migrationVersion="1" />
+  <component name="GradleSettings">
+    <option name="linkedExternalProjectsSettings">
+      <GradleProjectSettings>
+        <option name="distributionType" value="DEFAULT_WRAPPED" />
+        <option name="externalProjectPath" value="$PROJECT_DIR$" />
+        <option name="modules">
+          <set>
+            <option value="$PROJECT_DIR$" />
+            <option value="$PROJECT_DIR$/signal_connector_module" />
+          </set>
+        </option>
+      </GradleProjectSettings>
+    </option>
+  </component>
+</project>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/jarRepositories.xml b/rosjava/src/rosjava_rag_connector/.idea/jarRepositories.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b87676d6bb18045ed79731646cb81c531ffe05d4
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/jarRepositories.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="RemoteRepositoriesConfiguration">
+    <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Maven Central repository" />
+      <option name="url" value="https://repo1.maven.org/maven2" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="jboss.community" />
+      <option name="name" value="JBoss Community repository" />
+      <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="maven" />
+      <option name="name" value="maven" />
+      <option name="url" value="https://github.com/rosjava/rosjava_mvn_repo/raw/master" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="maven2" />
+      <option name="name" value="maven2" />
+      <option name="url" value="http://repository.springsource.com/maven/bundles/release" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="BintrayJCenter" />
+      <option name="name" value="BintrayJCenter" />
+      <option name="url" value="https://jcenter.bintray.com/" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="maven3" />
+      <option name="name" value="maven3" />
+      <option name="url" value="http://repository.springsource.com/maven/bundles/external" />
+    </remote-repository>
+    <remote-repository>
+      <option name="id" value="MavenLocal" />
+      <option name="name" value="MavenLocal" />
+      <option name="url" value="file:$MAVEN_REPOSITORY$/" />
+    </remote-repository>
+  </component>
+</project>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/misc.xml b/rosjava/src/rosjava_rag_connector/.idea/misc.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1826a0beab293869839b7785c174e860e7e4bfad
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/misc.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ExternalStorageConfigurationManager" enabled="true" />
+  <component name="FrameworkDetectionExcludesConfiguration">
+    <file type="web" url="file://$PROJECT_DIR$" />
+  </component>
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
+</project>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/uiDesigner.xml b/rosjava/src/rosjava_rag_connector/.idea/uiDesigner.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e96534fb27b68192f27f985d3879e173ec77adb8
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/uiDesigner.xml
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="Palette2">
+    <group name="Swing">
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+      </item>
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+        <initial-values>
+          <property name="text" value="Button" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="RadioButton" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="CheckBox" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="Label" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+          <preferred-size width="-1" height="20" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+      </item>
+    </group>
+  </component>
+</project>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/vcs.xml b/rosjava/src/rosjava_rag_connector/.idea/vcs.xml
new file mode 100644
index 0000000000000000000000000000000000000000..35eb1ddfbbc029bcab630581847471d7f238ec53
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/vcs.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="" vcs="Git" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/.idea/workspace.xml b/rosjava/src/rosjava_rag_connector/.idea/workspace.xml
new file mode 100644
index 0000000000000000000000000000000000000000..5a62edf873df0bcf38983048d6ddb551fd3ef7ac
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/.idea/workspace.xml
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="AutoImportSettings">
+    <option name="autoReloadType" value="SELECTIVE" />
+  </component>
+  <component name="BranchesTreeState">
+    <expand>
+      <path>
+        <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" />
+        <item name="LOCAL_ROOT" type="e8cecc67:BranchNodeDescriptor" />
+      </path>
+      <path>
+        <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" />
+        <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" />
+      </path>
+      <path>
+        <item name="ROOT" type="e8cecc67:BranchNodeDescriptor" />
+        <item name="REMOTE_ROOT" type="e8cecc67:BranchNodeDescriptor" />
+        <item name="GROUP_NODE:origin" type="e8cecc67:BranchNodeDescriptor" />
+      </path>
+    </expand>
+    <select />
+  </component>
+  <component name="ChangeListManager">
+    <list default="true" id="d65cb0a9-f7e2-4f70-af66-2055845b58eb" name="Default Changelist" comment="" />
+    <option name="SHOW_DIALOG" value="false" />
+    <option name="HIGHLIGHT_CONFLICTS" value="true" />
+    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+    <option name="LAST_RESOLUTION" value="IGNORE" />
+  </component>
+  <component name="CodeStyleSettingsInfer">
+    <option name="done" value="true" />
+  </component>
+  <component name="ExternalProjectsData">
+    <projectState path="$PROJECT_DIR$">
+      <ProjectState />
+    </projectState>
+  </component>
+  <component name="ExternalProjectsManager">
+    <system id="GRADLE">
+      <state>
+        <projects_view>
+          <tree_state>
+            <expand>
+              <path>
+                <item name="" type="6a2764b6:ExternalProjectsStructure$RootNode" />
+                <item name="rosjava_rag_connector" type="f1a62948:ProjectNode" />
+              </path>
+            </expand>
+            <select />
+          </tree_state>
+        </projects_view>
+      </state>
+    </system>
+  </component>
+  <component name="FileTemplateManagerImpl">
+    <option name="RECENT_TEMPLATES">
+      <list>
+        <option value="Class" />
+      </list>
+    </option>
+  </component>
+  <component name="Git.Settings">
+    <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
+  </component>
+  <component name="MavenImportPreferences">
+    <option name="generalSettings">
+      <MavenGeneralSettings>
+        <option name="mavenHome" value="$APPLICATION_HOME_DIR$/plugins/maven/lib/maven3" />
+      </MavenGeneralSettings>
+    </option>
+  </component>
+  <component name="ProjectCodeStyleSettingsMigration">
+    <option name="version" value="1" />
+  </component>
+  <component name="ProjectId" id="1oZDuQVHqoF4nYW3mFQ7B9rvneF" />
+  <component name="ProjectViewState">
+    <option name="hideEmptyMiddlePackages" value="true" />
+    <option name="showLibraryContents" value="true" />
+  </component>
+  <component name="PropertiesComponent">
+    <property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
+    <property name="WebServerToolWindowFactoryState" value="false" />
+    <property name="aspect.path.notification.shown" value="true" />
+    <property name="last_opened_file_path" value="$USER_HOME$/java-spring-workspaces/default-workspace/da-sebastian-ebert-hub" />
+    <property name="nodejs_package_manager_path" value="npm" />
+    <property name="show.unlinked.gradle.project.popup" value="true" />
+  </component>
+  <component name="RecentsManager">
+    <key name="MoveFile.RECENT_KEYS">
+      <recent name="$PROJECT_DIR$/signal_connector_module/libs" />
+    </key>
+    <key name="CopyFile.RECENT_KEYS">
+      <recent name="$PROJECT_DIR$/signal_connector_module/libs" />
+      <recent name="$PROJECT_DIR$/signal_connector_module/src/main/resources" />
+    </key>
+  </component>
+  <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
+  <component name="TaskManager">
+    <task active="true" id="Default" summary="Default task">
+      <changelist id="d65cb0a9-f7e2-4f70-af66-2055845b58eb" name="Default Changelist" comment="" />
+      <created>1613485441137</created>
+      <option name="number" value="Default" />
+      <option name="presentableId" value="Default" />
+      <updated>1613485441137</updated>
+      <workItem from="1613485442318" duration="4234000" />
+      <workItem from="1613576284068" duration="3205000" />
+      <workItem from="1613638440916" duration="12441000" />
+      <workItem from="1614162925007" duration="598000" />
+      <workItem from="1614249197118" duration="599000" />
+      <workItem from="1614352650005" duration="599000" />
+      <workItem from="1614587791468" duration="1947000" />
+      <workItem from="1614701858378" duration="466000" />
+      <workItem from="1614702348098" duration="903000" />
+      <workItem from="1614764383739" duration="599000" />
+      <workItem from="1615204508484" duration="659000" />
+      <workItem from="1615819709695" duration="598000" />
+      <workItem from="1615889784293" duration="599000" />
+      <workItem from="1615970452962" duration="599000" />
+      <workItem from="1615977318556" duration="1198000" />
+      <workItem from="1616057914503" duration="256000" />
+    </task>
+    <servers />
+  </component>
+  <component name="TypeScriptGeneratedFilesManager">
+    <option name="version" value="3" />
+  </component>
+  <component name="Vcs.Log.Tabs.Properties">
+    <option name="TAB_STATES">
+      <map>
+        <entry key="MAIN">
+          <value>
+            <State />
+          </value>
+        </entry>
+      </map>
+    </option>
+    <option name="oldMeFiltersMigrated" value="true" />
+  </component>
+  <component name="WindowStateProjectService">
+    <state x="1134" y="501" width="281" height="456" key="#com.intellij.ide.util.MemberChooser" timestamp="1613661067880">
+      <screen x="0" y="20" width="2560" height="1420" />
+    </state>
+    <state x="1134" y="501" width="281" height="456" key="#com.intellij.ide.util.MemberChooser/0.1440.1920.1080/0.20.2560.1420@0.20.2560.1420" timestamp="1613661067880" />
+    <state x="1116" y="547" width="318" height="370" key="FileChooserDialogImpl" timestamp="1614702648821">
+      <screen x="0" y="20" width="2560" height="1420" />
+    </state>
+    <state x="1116" y="534" width="318" height="370" key="FileChooserDialogImpl/0.1440.1920.1080/0.0.2560.1440@0.0.2560.1440" timestamp="1613485553493" />
+    <state x="1116" y="547" key="FileChooserDialogImpl/0.20.2560.1420@0.20.2560.1420" timestamp="1614702648821" />
+  </component>
+</project>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/CMakeLists.txt b/rosjava/src/rosjava_rag_connector/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..562460c2b548d87dcdea873d90fd0fdbb3463eba
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/CMakeLists.txt
@@ -0,0 +1,29 @@
+##############################################################################
+# CMake
+##############################################################################
+
+cmake_minimum_required(VERSION 2.8.3)
+project(rosjava_rag_connector)
+
+##############################################################################
+# Catkin
+##############################################################################
+
+find_package(catkin REQUIRED rosjava_build_tools)
+
+# Set the gradle targets you want catkin's make to run by default, e.g.
+#   catkin_rosjava_setup(installDist)
+# Note that the catkin_create_rosjava_xxx scripts will usually automatically
+# add tasks to this for you when you create subprojects.
+catkin_rosjava_setup(installDist publish)
+
+catkin_package()
+
+##############################################################################
+# Installation
+##############################################################################
+
+# Change this to match the maven group name you have specified in the
+# allprojects closure the root build.gradle
+install(DIRECTORY ${CATKIN_DEVEL_PREFIX}/${CATKIN_GLOBAL_MAVEN_DESTINATION}/com/github/rosjava/${PROJECT_NAME}/
+        DESTINATION ${CATKIN_GLOBAL_MAVEN_DESTINATION}/com/github/rosjava/${PROJECT_NAME})
diff --git a/rosjava/src/rosjava_rag_connector/README.md b/rosjava/src/rosjava_rag_connector/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..fe12d1a4ec2663b64897b17984fd715005d2bbe3
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/README.md
@@ -0,0 +1,2 @@
+# rosjava_rag_connector
+
diff --git a/rosjava/src/rosjava_rag_connector/build.gradle b/rosjava/src/rosjava_rag_connector/build.gradle
new file mode 100644
index 0000000000000000000000000000000000000000..74d1cb2805e764875fc1032f50b74c5e509df8c5
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/build.gradle
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+task wrapper(type: Wrapper) {
+    gradleVersion = '4.10.2'
+}
+
+buildscript {
+  apply from: "https://github.com/rosjava/rosjava_bootstrap/raw/kinetic/buildscript.gradle"
+}
+
+apply plugin: 'catkin'
+apply plugin: "idea"
+
+
+allprojects {
+    /*
+      A github url provides a good standard unique name for your project
+      Example below, but you may wish to switch to your own unique url.
+    */
+    group 'de.tudresden.inf.st.rosjava_rag_connector'
+    version = project.catkin.pkg.version
+}
+
+subprojects {
+    /*
+     * The ros-java plugin configures a few things:
+     *
+     *  - local deployment repository : where it dumps the jars and packaged artifacts)
+     *  - local maven repositories    : where it finds your locally installed/built artifacts)
+     *  - external maven repositories : where it goes looking if it can't find dependencies locally
+     *
+     * To modify, or add repos to the default external maven repositories list, pull request against this code:
+     *
+     *   https://github.com/rosjava/rosjava_bootstrap/blob/kinetic/gradle_plugins/src/main/groovy/org/ros/gradle_plugins/RosPlugin.groovy#L31
+     */
+    apply plugin: "ros-java"
+    /*
+     * Some IDE support if you use it.
+     */
+    /* apply plugin: "eclipse" */
+    /* apply plugin: "idea"    */
+}
+
+/*
+  Some useful tasks:
+
+    install: deploys jar's to MavenLocal() (i.e. ~/.m2/repository)
+    publish : deploys jar's to devel/share/maven
+    installDist : assembles java apps in the _subproject_/build directories.
+
+  Note that these are dependent on the type of project (e.g. installDist is only valid for
+  java binary subprojects, while publish is only added once a subproject is included.
+  If you're using catkin_make, this is not important, since it will use the task list specified
+  in CMakeLists.txt
+*/
+defaultTasks 'tasks'
diff --git a/rosjava/src/rosjava_rag_connector/gradle/wrapper/gradle-wrapper.jar b/rosjava/src/rosjava_rag_connector/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 0000000000000000000000000000000000000000..29953ea141f55e3b8fc691d31b5ca8816d89fa87
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/gradle/wrapper/gradle-wrapper.properties b/rosjava/src/rosjava_rag_connector/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000000000000000000000000000000000000..e0b3fb8d70b1bbf790f6f8ed1c928ddf09f54628
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,5 @@
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
diff --git a/rosjava/src/rosjava_rag_connector/gradlew b/rosjava/src/rosjava_rag_connector/gradlew
new file mode 100755
index 0000000000000000000000000000000000000000..cccdd3d517fc5249beaefa600691cf150f2fa3e6
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/gradlew
@@ -0,0 +1,172 @@
+#!/usr/bin/env sh
+
+##############################################################################
+##
+##  Gradle start up script for UN*X
+##
+##############################################################################
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+    ls=`ls -ld "$PRG"`
+    link=`expr "$ls" : '.*-> \(.*\)$'`
+    if expr "$link" : '/.*' > /dev/null; then
+        PRG="$link"
+    else
+        PRG=`dirname "$PRG"`"/$link"
+    fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn () {
+    echo "$*"
+}
+
+die () {
+    echo
+    echo "$*"
+    echo
+    exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "`uname`" in
+  CYGWIN* )
+    cygwin=true
+    ;;
+  Darwin* )
+    darwin=true
+    ;;
+  MINGW* )
+    msys=true
+    ;;
+  NONSTOP* )
+    nonstop=true
+    ;;
+esac
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+        # IBM's JDK on AIX uses strange locations for the executables
+        JAVACMD="$JAVA_HOME/jre/sh/java"
+    else
+        JAVACMD="$JAVA_HOME/bin/java"
+    fi
+    if [ ! -x "$JAVACMD" ] ; then
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+else
+    JAVACMD="java"
+    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
+    MAX_FD_LIMIT=`ulimit -H -n`
+    if [ $? -eq 0 ] ; then
+        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+            MAX_FD="$MAX_FD_LIMIT"
+        fi
+        ulimit -n $MAX_FD
+        if [ $? -ne 0 ] ; then
+            warn "Could not set maximum file descriptor limit: $MAX_FD"
+        fi
+    else
+        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+    fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+    JAVACMD=`cygpath --unix "$JAVACMD"`
+
+    # We build the pattern for arguments to be converted via cygpath
+    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+    SEP=""
+    for dir in $ROOTDIRSRAW ; do
+        ROOTDIRS="$ROOTDIRS$SEP$dir"
+        SEP="|"
+    done
+    OURCYGPATTERN="(^($ROOTDIRS))"
+    # Add a user-defined pattern to the cygpath arguments
+    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+    fi
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
+    i=0
+    for arg in "$@" ; do
+        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
+
+        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
+            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+        else
+            eval `echo args$i`="\"$arg\""
+        fi
+        i=$((i+1))
+    done
+    case $i in
+        (0) set -- ;;
+        (1) set -- "$args0" ;;
+        (2) set -- "$args0" "$args1" ;;
+        (3) set -- "$args0" "$args1" "$args2" ;;
+        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+    esac
+fi
+
+# Escape application args
+save () {
+    for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+    echo " "
+}
+APP_ARGS=$(save "$@")
+
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+  cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/rosjava/src/rosjava_rag_connector/gradlew.bat b/rosjava/src/rosjava_rag_connector/gradlew.bat
new file mode 100644
index 0000000000000000000000000000000000000000..e95643d6a2ca62258464e83c72f5156dc941c609
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/gradlew.bat
@@ -0,0 +1,84 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem  Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/rosjava/src/rosjava_rag_connector/package.xml b/rosjava/src/rosjava_rag_connector/package.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9ee225e318a4ecf5a19bcecbafa258d6406def15
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/package.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<package format="2">
+  <name>rosjava_rag_connector</name>
+  <version>0.1.0</version>
+  <description>The rosjava_rag_connector package</description>
+
+  <!-- One maintainer tag required, multiple allowed, one person per tag -->
+  <!-- Example:  -->
+  <!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
+  <maintainer email="sebastian@todo.todo">sebastian</maintainer>
+
+
+  <!-- One license tag required, multiple allowed, one license per tag -->
+  <!-- Commonly used license strings: -->
+  <!--   BSD, MIT, Boost Software License, GPLv2, GPLv3, LGPLv2.1, LGPLv3 -->
+  <license>Apache 2.0</license>
+
+
+  <!-- Url tags are optional, but multiple are allowed, one per tag -->
+  <!-- Optional attribute type can be: website, bugtracker, or repository -->
+  <!-- Example: -->
+  <!-- <url type="website">http://wiki.ros.org/rosjava_rag_connector</url> -->
+
+
+  <!-- Author tags are optional, multiple are allowed, one per tag -->
+  <!-- Authors do not have to be maintainers, but could be -->
+  <!-- Example: -->
+  <!-- <author email="jane.doe@example.com">Jane Doe</author> -->
+
+
+  <!-- The *depend tags are used to specify dependencies -->
+  <!-- Dependencies can be catkin packages or system dependencies -->
+  <!-- Examples: -->
+  <!-- Use depend as a shortcut for packages that are both build and exec dependencies -->
+  <!--   <depend>roscpp</depend> -->
+  <!--   Note that this is equivalent to the following: -->
+  <!--   <build_depend>roscpp</build_depend> -->
+  <!--   <exec_depend>roscpp</exec_depend> -->
+  <!-- Use build_depend for packages you need at compile time: -->
+  <!--   <build_depend>message_generation</build_depend> -->
+  <!-- Use build_export_depend for packages you need in order to build against this package: -->
+  <!--   <build_export_depend>message_generation</build_export_depend> -->
+  <!-- Use buildtool_depend for build tool packages: -->
+  <!--   <buildtool_depend>catkin</buildtool_depend> -->
+  <!-- Use exec_depend for packages you need at runtime: -->
+  <!--   <exec_depend>message_runtime</exec_depend> -->
+  <!-- Use test_depend for packages you need only for testing: -->
+  <!--   <test_depend>gtest</test_depend> -->
+  <!-- Use doc_depend for packages you need only for building documentation: -->
+  <!--   <doc_depend>doxygen</doc_depend> -->
+  <buildtool_depend>catkin</buildtool_depend>
+  <build_depend>rosjava_build_tools</build_depend>
+
+
+  <!-- The export tag contains other, unspecified, tags -->
+  <export>
+    <!-- Other tools can request additional information be placed here -->
+
+  </export>
+</package>
diff --git a/rosjava/src/rosjava_rag_connector/settings.gradle b/rosjava/src/rosjava_rag_connector/settings.gradle
new file mode 100644
index 0000000000000000000000000000000000000000..57f15f7c109d61e16255cc65772ba4c176b809e0
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/settings.gradle
@@ -0,0 +1,17 @@
+/*
+ * Copyright (C) 2013 Sebastian Ebert
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+include 'signal_connector_module'
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build.gradle b/rosjava/src/rosjava_rag_connector/signal_connector_module/build.gradle
new file mode 100644
index 0000000000000000000000000000000000000000..8b0058ba9efcf587bfa504d3cc26d7c943ced3c7
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build.gradle
@@ -0,0 +1,72 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+/* This plugin is necessary for creating installDist tasks (i.e. executables) */
+apply plugin: 'application'
+apply plugin: "idea"
+mainClassName = 'org.ros.RosRun'
+
+/*
+ Examples of
+   1) dependencies from another project in this gradle stack.
+   2,3) open ranged dependencies from a maven repository.
+
+   Dependencies can be on external maven artifacts (such as rosjava_core
+   here) or on sibling subprojects. For rosjava maven artifact dependencies
+   it is a good idea to use open ranges on to
+   save continually updating these references, but it is recommended
+   to restrict this to the patch version number (e.g. [0.3,0.4) will
+   get the latest 0.3.x version) to avoid unknowingly
+   having api breaking changes usually associated with minor and major
+   version number changes.
+*/
+
+dependencies {
+  /* An external maven artifact dependency */
+  compile 'org.ros.rosjava_core:rosjava:[0.3,0.4)'
+  /* Example of a local subproject dependency */
+  /* compile project(':sibling_gradle_project') */
+
+  // logging
+  implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.30'
+  implementation group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.13.2'
+
+  // pnml lib
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.ecore', version: '2.12.0'
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.ecore.xmi', version: '2.12.0'
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.common', version: '2.12.0'
+  implementation group: 'org.eclipse.emf', name: 'org.eclipse.emf.mwe.core', version: '1.3.13'
+  implementation group: 'fr.lip6.pnml', name: 'fr.lip6.pnml.framework.ptnet', version: '2.2.12'
+  implementation group: 'fr.lip6.pnml', name: 'fr.lip6.pnml.framework.utils', version: '2.2.12'
+  implementation group: 'org.apache.ws.commons.axiom', name: 'axiom-api', version: '1.2.22'
+  implementation group: 'org.apache.ws.commons.axiom', name: 'axiom-impl', version: '1.2.22'
+  implementation group: 'com.thaiopensource', name: 'jing', version: '20091111'
+  implementation 'org.jetbrains:annotations:19.0.0'
+
+  // apache
+  implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.0'
+
+  // pnml-relast
+  implementation fileTree(include: ['pnml-relast-0.2.jar'], dir: './libs')
+}
+
+task cleanScripts(dependsOn: 'installDist') {
+  doLast {
+    file('build/scripts').deleteDir()
+  }
+}
+
+installDist.finalizedBy(cleanScripts)
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector$1.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector$1.class
new file mode 100644
index 0000000000000000000000000000000000000000..2de90e0652637754df66e3ec27d1b77b74819262
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector$1.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector$2.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector$2.class
new file mode 100644
index 0000000000000000000000000000000000000000..c6a25619298a9591637230bd5b3cfa2c70031013
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector$2.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector.class
new file mode 100644
index 0000000000000000000000000000000000000000..2694e940ad65efb1d536bd2141c76383b62d87e1
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener$1.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener$1.class
new file mode 100644
index 0000000000000000000000000000000000000000..0a1e16436a5ed943364bc751b74f79820ee2c886
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener$1.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener.class
new file mode 100644
index 0000000000000000000000000000000000000000..c57279f7d27d439b1de18639687cb34decb0b010
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker$1.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker$1.class
new file mode 100644
index 0000000000000000000000000000000000000000..496032fec167470dec3ec614b3d9636bcd04a7d7
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker$1.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker$2.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker$2.class
new file mode 100644
index 0000000000000000000000000000000000000000..44d09d94b462d43b8f6a3cf4350e3cc6bb334215
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker$2.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker.class b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker.class
new file mode 100644
index 0000000000000000000000000000000000000000..81349d69256f460c0a94ed6ff68e8b5c466e202c
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/classes/java/main/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker.class differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/bin/signal_connector_module b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/bin/signal_connector_module
new file mode 100755
index 0000000000000000000000000000000000000000..13883d308b97a66ab92e42b934a342d263b8140f
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/bin/signal_connector_module
@@ -0,0 +1,172 @@
+#!/usr/bin/env sh
+
+##############################################################################
+##
+##  signal_connector_module start up script for UN*X
+##
+##############################################################################
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+    ls=`ls -ld "$PRG"`
+    link=`expr "$ls" : '.*-> \(.*\)$'`
+    if expr "$link" : '/.*' > /dev/null; then
+        PRG="$link"
+    else
+        PRG=`dirname "$PRG"`"/$link"
+    fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/.." >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+APP_NAME="signal_connector_module"
+APP_BASE_NAME=`basename "$0"`
+
+# Add default JVM options here. You can also use JAVA_OPTS and SIGNAL_CONNECTOR_MODULE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn () {
+    echo "$*"
+}
+
+die () {
+    echo
+    echo "$*"
+    echo
+    exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+nonstop=false
+case "`uname`" in
+  CYGWIN* )
+    cygwin=true
+    ;;
+  Darwin* )
+    darwin=true
+    ;;
+  MINGW* )
+    msys=true
+    ;;
+  NONSTOP* )
+    nonstop=true
+    ;;
+esac
+
+CLASSPATH=$APP_HOME/lib/signal_connector_module-0.1.0.jar:$APP_HOME/lib/pnml-relast-0.2.jar:$APP_HOME/lib/rosjava-0.3.7.jar:$APP_HOME/lib/log4j-slf4j-impl-2.13.2.jar:$APP_HOME/lib/slf4j-api-1.7.30.jar:$APP_HOME/lib/org.eclipse.emf.ecore-2.12.0.jar:$APP_HOME/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar:$APP_HOME/lib/org.eclipse.emf.common-2.12.0.jar:$APP_HOME/lib/org.eclipse.emf.mwe.core-1.3.13.jar:$APP_HOME/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar:$APP_HOME/lib/fr.lip6.pnml.framework.utils-2.2.12.jar:$APP_HOME/lib/axiom-impl-1.2.22.jar:$APP_HOME/lib/axiom-api-1.2.22.jar:$APP_HOME/lib/jing-20091111.jar:$APP_HOME/lib/annotations-19.0.0.jar:$APP_HOME/lib/commons-lang3-3.0.jar:$APP_HOME/lib/apache_xmlrpc_server-0.3.7.jar:$APP_HOME/lib/apache_xmlrpc_client-0.3.7.jar:$APP_HOME/lib/apache_xmlrpc_common-0.3.7.jar:$APP_HOME/lib/rosjava_test_msgs-0.3.0.jar:$APP_HOME/lib/rosgraph_msgs-1.11.3.jar:$APP_HOME/lib/nav_msgs-1.12.7.jar:$APP_HOME/lib/tf2_msgs-0.5.20.jar:$APP_HOME/lib/geometry_msgs-1.12.7.jar:$APP_HOME/lib/actionlib_msgs-1.12.7.jar:$APP_HOME/lib/std_msgs-0.5.13.jar:$APP_HOME/lib/message_generation-0.3.3.jar:$APP_HOME/lib/dnsjava-2.1.1.jar:$APP_HOME/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar:$APP_HOME/lib/com.springsource.org.apache.commons.logging-1.1.1.jar:$APP_HOME/lib/com.springsource.org.apache.commons.net-2.0.0.jar:$APP_HOME/lib/guava-12.0.jar:$APP_HOME/lib/log4j-core-2.13.2.jar:$APP_HOME/lib/log4j-api-2.13.2.jar:$APP_HOME/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar:$APP_HOME/lib/commons-cli-1.2.jar:$APP_HOME/lib/commons-logging-1.2.jar:$APP_HOME/lib/geronimo-activation_1.1_spec-1.1.jar:$APP_HOME/lib/jaxen-1.1.6.jar:$APP_HOME/lib/geronimo-stax-api_1.0_spec-1.0.1.jar:$APP_HOME/lib/apache-mime4j-core-0.7.2.jar:$APP_HOME/lib/woodstox-core-asl-4.2.0.jar:$APP_HOME/lib/xercesImpl-2.9.1.jar:$APP_HOME/lib/ws-commons-util-1.0.1.jar:$APP_HOME/lib/saxon-8.7.jar:$APP_HOME/lib/isorelax-20030108.jar:$APP_HOME/lib/netty-3.5.2.Final.jar:$APP_HOME/lib/com.springsource.org.apache.commons.codec-1.3.0.jar:$APP_HOME/lib/com.springsource.org.apache.commons.io-1.4.0.jar:$APP_HOME/lib/commons-pool-1.6.jar:$APP_HOME/lib/com.springsource.org.apache.commons.lang-2.4.0.jar:$APP_HOME/lib/gradle_plugins-0.3.3.jar:$APP_HOME/lib/junit-3.8.2.jar:$APP_HOME/lib/jsr305-1.3.9.jar:$APP_HOME/lib/guice-3.0.jar:$APP_HOME/lib/stax2-api-3.1.1.jar:$APP_HOME/lib/javax.inject-1.jar:$APP_HOME/lib/aopalliance-1.0.jar:$APP_HOME/lib/cglib-2.2.1-v20090111.jar:$APP_HOME/lib/asm-3.1.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+        # IBM's JDK on AIX uses strange locations for the executables
+        JAVACMD="$JAVA_HOME/jre/sh/java"
+    else
+        JAVACMD="$JAVA_HOME/bin/java"
+    fi
+    if [ ! -x "$JAVACMD" ] ; then
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+    fi
+else
+    JAVACMD="java"
+    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
+    MAX_FD_LIMIT=`ulimit -H -n`
+    if [ $? -eq 0 ] ; then
+        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+            MAX_FD="$MAX_FD_LIMIT"
+        fi
+        ulimit -n $MAX_FD
+        if [ $? -ne 0 ] ; then
+            warn "Could not set maximum file descriptor limit: $MAX_FD"
+        fi
+    else
+        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+    fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+    JAVACMD=`cygpath --unix "$JAVACMD"`
+
+    # We build the pattern for arguments to be converted via cygpath
+    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+    SEP=""
+    for dir in $ROOTDIRSRAW ; do
+        ROOTDIRS="$ROOTDIRS$SEP$dir"
+        SEP="|"
+    done
+    OURCYGPATTERN="(^($ROOTDIRS))"
+    # Add a user-defined pattern to the cygpath arguments
+    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+    fi
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
+    i=0
+    for arg in "$@" ; do
+        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
+
+        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
+            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+        else
+            eval `echo args$i`="\"$arg\""
+        fi
+        i=$((i+1))
+    done
+    case $i in
+        (0) set -- ;;
+        (1) set -- "$args0" ;;
+        (2) set -- "$args0" "$args1" ;;
+        (3) set -- "$args0" "$args1" "$args2" ;;
+        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+    esac
+fi
+
+# Escape application args
+save () {
+    for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
+    echo " "
+}
+APP_ARGS=$(save "$@")
+
+# Collect all arguments for the java command, following the shell quoting and substitution rules
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $SIGNAL_CONNECTOR_MODULE_OPTS -classpath "\"$CLASSPATH\"" org.ros.RosRun "$APP_ARGS"
+
+# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
+if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
+  cd "$(dirname "$0")"
+fi
+
+exec "$JAVACMD" "$@"
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/bin/signal_connector_module.bat b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/bin/signal_connector_module.bat
new file mode 100755
index 0000000000000000000000000000000000000000..a4297e7673eaab9004ae0addb213d717de57b817
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/bin/signal_connector_module.bat
@@ -0,0 +1,84 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem  signal_connector_module startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%..
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and SIGNAL_CONNECTOR_MODULE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windows variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\lib\signal_connector_module-0.1.0.jar;%APP_HOME%\lib\pnml-relast-0.2.jar;%APP_HOME%\lib\rosjava-0.3.7.jar;%APP_HOME%\lib\log4j-slf4j-impl-2.13.2.jar;%APP_HOME%\lib\slf4j-api-1.7.30.jar;%APP_HOME%\lib\org.eclipse.emf.ecore-2.12.0.jar;%APP_HOME%\lib\org.eclipse.emf.ecore.xmi-2.12.0.jar;%APP_HOME%\lib\org.eclipse.emf.common-2.12.0.jar;%APP_HOME%\lib\org.eclipse.emf.mwe.core-1.3.13.jar;%APP_HOME%\lib\fr.lip6.pnml.framework.ptnet-2.2.12.jar;%APP_HOME%\lib\fr.lip6.pnml.framework.utils-2.2.12.jar;%APP_HOME%\lib\axiom-impl-1.2.22.jar;%APP_HOME%\lib\axiom-api-1.2.22.jar;%APP_HOME%\lib\jing-20091111.jar;%APP_HOME%\lib\annotations-19.0.0.jar;%APP_HOME%\lib\commons-lang3-3.0.jar;%APP_HOME%\lib\apache_xmlrpc_server-0.3.7.jar;%APP_HOME%\lib\apache_xmlrpc_client-0.3.7.jar;%APP_HOME%\lib\apache_xmlrpc_common-0.3.7.jar;%APP_HOME%\lib\rosjava_test_msgs-0.3.0.jar;%APP_HOME%\lib\rosgraph_msgs-1.11.3.jar;%APP_HOME%\lib\nav_msgs-1.12.7.jar;%APP_HOME%\lib\tf2_msgs-0.5.20.jar;%APP_HOME%\lib\geometry_msgs-1.12.7.jar;%APP_HOME%\lib\actionlib_msgs-1.12.7.jar;%APP_HOME%\lib\std_msgs-0.5.13.jar;%APP_HOME%\lib\message_generation-0.3.3.jar;%APP_HOME%\lib\dnsjava-2.1.1.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.httpclient-3.1.0.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.logging-1.1.1.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.net-2.0.0.jar;%APP_HOME%\lib\guava-12.0.jar;%APP_HOME%\lib\log4j-core-2.13.2.jar;%APP_HOME%\lib\log4j-api-2.13.2.jar;%APP_HOME%\lib\org.eclipse.emf.mwe2.runtime-2.8.3.jar;%APP_HOME%\lib\commons-cli-1.2.jar;%APP_HOME%\lib\commons-logging-1.2.jar;%APP_HOME%\lib\geronimo-activation_1.1_spec-1.1.jar;%APP_HOME%\lib\jaxen-1.1.6.jar;%APP_HOME%\lib\geronimo-stax-api_1.0_spec-1.0.1.jar;%APP_HOME%\lib\apache-mime4j-core-0.7.2.jar;%APP_HOME%\lib\woodstox-core-asl-4.2.0.jar;%APP_HOME%\lib\xercesImpl-2.9.1.jar;%APP_HOME%\lib\ws-commons-util-1.0.1.jar;%APP_HOME%\lib\saxon-8.7.jar;%APP_HOME%\lib\isorelax-20030108.jar;%APP_HOME%\lib\netty-3.5.2.Final.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.codec-1.3.0.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.io-1.4.0.jar;%APP_HOME%\lib\commons-pool-1.6.jar;%APP_HOME%\lib\com.springsource.org.apache.commons.lang-2.4.0.jar;%APP_HOME%\lib\gradle_plugins-0.3.3.jar;%APP_HOME%\lib\junit-3.8.2.jar;%APP_HOME%\lib\jsr305-1.3.9.jar;%APP_HOME%\lib\guice-3.0.jar;%APP_HOME%\lib\stax2-api-3.1.1.jar;%APP_HOME%\lib\javax.inject-1.jar;%APP_HOME%\lib\aopalliance-1.0.jar;%APP_HOME%\lib\cglib-2.2.1-v20090111.jar;%APP_HOME%\lib\asm-3.1.jar
+
+@rem Execute signal_connector_module
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %SIGNAL_CONNECTOR_MODULE_OPTS%  -classpath "%CLASSPATH%" org.ros.RosRun %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable SIGNAL_CONNECTOR_MODULE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if  not "" == "%SIGNAL_CONNECTOR_MODULE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/actionlib_msgs-1.12.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/actionlib_msgs-1.12.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..65af967d9f683cf2506837dbc76ff1b0ad67e7a1
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/actionlib_msgs-1.12.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/annotations-19.0.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/annotations-19.0.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..59ff06af4a050c5a5b56b2ab0f27243c350b9ebf
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/annotations-19.0.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/aopalliance-1.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/aopalliance-1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..578b1a0c359ef88a84461bdb91d9d0041afd54de
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/aopalliance-1.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache-mime4j-core-0.7.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache-mime4j-core-0.7.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b5c225b5dbd496889342baf249c332f0944f7eee
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache-mime4j-core-0.7.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_client-0.3.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_client-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d86de577a7702ba1db57c0229e46dc6d2c01151e
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_client-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_common-0.3.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_common-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ff7b4d9aeaec83b2c98a74264bd1645adae058c6
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_common-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_server-0.3.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_server-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..cdf855dea321df7a135470d0837c7117ef8e7604
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/apache_xmlrpc_server-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/asm-3.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/asm-3.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..8217cae0a1bc977b241e0c8517cc2e3e7cede276
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/asm-3.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/axiom-api-1.2.22.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/axiom-api-1.2.22.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f6e9167cd12b690d289a6dc6463ce907dd8d7912
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/axiom-api-1.2.22.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/axiom-impl-1.2.22.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/axiom-impl-1.2.22.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f64e8613fc2e980ba506e0ea914a0746d6b2da53
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/axiom-impl-1.2.22.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/cglib-2.2.1-v20090111.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/cglib-2.2.1-v20090111.jar
new file mode 100644
index 0000000000000000000000000000000000000000..cfd5ae7273729999ca32ba6bfa761f522cce6dbc
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/cglib-2.2.1-v20090111.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.codec-1.3.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.codec-1.3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..2995ef47703537445c8a22e651cbee5b5c43a5bc
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.codec-1.3.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ae8b9e974da1e6cc087b260db4b29827928bc57f
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.httpclient-3.1.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.io-1.4.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.io-1.4.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..1482fdc33904109c7eb1f38ce76cce2047db1f4d
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.io-1.4.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.lang-2.4.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.lang-2.4.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b55dd4de2fa418f8f868d8bdbe9cb4ab46660fc0
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.lang-2.4.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.logging-1.1.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.logging-1.1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f50c78cce95c8e8a8f71d9cfe6e029f2efe287be
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.logging-1.1.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.net-2.0.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.net-2.0.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..8dfeafa8bac521d89111333fbac5346cd0a7cc41
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/com.springsource.org.apache.commons.net-2.0.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-cli-1.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-cli-1.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ce4b9fffe40c41669797cd806ac989471b2acd84
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-cli-1.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-lang3-3.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-lang3-3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..7f2cfe13f69e8dff5859d838e4b2548e03bc01f4
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-lang3-3.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-logging-1.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-logging-1.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..93a3b9f6db406c84e270e19b9a5e70f2e27ca513
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-logging-1.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-pool-1.6.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-pool-1.6.jar
new file mode 100644
index 0000000000000000000000000000000000000000..72ca75a3e6eca2158a8c607b18572f3bd87bf24e
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/commons-pool-1.6.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/dnsjava-2.1.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/dnsjava-2.1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f37e2c85e7000623a01bba7e079d2b4220c3b35d
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/dnsjava-2.1.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d95eb0387559ed76311187c13228e1d6620d56f0
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/fr.lip6.pnml.framework.ptnet-2.2.12.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/fr.lip6.pnml.framework.utils-2.2.12.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/fr.lip6.pnml.framework.utils-2.2.12.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f6067457f5a2406e85c81920e2f5b724d9e02827
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/fr.lip6.pnml.framework.utils-2.2.12.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geometry_msgs-1.12.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geometry_msgs-1.12.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..cea191ed62e32544da5f88f3f1ec6479c757445d
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geometry_msgs-1.12.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geronimo-activation_1.1_spec-1.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geronimo-activation_1.1_spec-1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..366494189a0d7f77afb5b149ea8dd8db93bbb2b3
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geronimo-activation_1.1_spec-1.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geronimo-stax-api_1.0_spec-1.0.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geronimo-stax-api_1.0_spec-1.0.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..ab1ee3ba605df11b3075677c808d092845dad123
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/geronimo-stax-api_1.0_spec-1.0.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/gradle_plugins-0.3.3.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/gradle_plugins-0.3.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f0fc0d961aef629f803e56c7b482793fa7b940f7
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/gradle_plugins-0.3.3.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/guava-12.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/guava-12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..fefd6b2713c66e5c9a758fdf297127f5ff86cc1c
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/guava-12.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/guice-3.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/guice-3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..f313e2b089d9e1b9d2c6e578ccbc4d8b6eabfd73
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/guice-3.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/isorelax-20030108.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/isorelax-20030108.jar
new file mode 100644
index 0000000000000000000000000000000000000000..a2ebb7698a17b37dd893793c5abe5ce184ec8f83
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/isorelax-20030108.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/javax.inject-1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/javax.inject-1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b2a9d0bf7bd463a6361898b36f010edd05c0cf6e
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/javax.inject-1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jaxen-1.1.6.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jaxen-1.1.6.jar
new file mode 100644
index 0000000000000000000000000000000000000000..52f47a4f433a9985896a1e6ff6d6a10b98d3cd41
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jaxen-1.1.6.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jing-20091111.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jing-20091111.jar
new file mode 100644
index 0000000000000000000000000000000000000000..fe01514e80920805e2e9169381fcf72cc5994aed
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jing-20091111.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jsr305-1.3.9.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jsr305-1.3.9.jar
new file mode 100644
index 0000000000000000000000000000000000000000..a9afc6619b4b9369f0501d06ceb1cf82a1e47cdd
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/jsr305-1.3.9.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/junit-3.8.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/junit-3.8.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..c8f711d050eff209321f799d85ebb3bbe305d481
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/junit-3.8.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-api-2.13.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-api-2.13.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..afc89ff0d588806a99993909014c260116ef19c4
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-api-2.13.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-core-2.13.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-core-2.13.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..9b6bdff8e2c392fe8adcf1eb04c6e50d549326ce
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-core-2.13.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-slf4j-impl-2.13.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-slf4j-impl-2.13.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..19e257cae8f550a8b2dfd7dcd9036f6ed284d521
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/log4j-slf4j-impl-2.13.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/message_generation-0.3.3.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/message_generation-0.3.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..93b16b669fe0e60a54bf8362993399eb9b96ae4f
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/message_generation-0.3.3.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/nav_msgs-1.12.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/nav_msgs-1.12.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..0ae80b9bd6cf2d387eeb064a2c571f776f4eb1d9
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/nav_msgs-1.12.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/netty-3.5.2.Final.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/netty-3.5.2.Final.jar
new file mode 100644
index 0000000000000000000000000000000000000000..debda9865cddf8c0e0d6f133cd22ee5756fec23c
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/netty-3.5.2.Final.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.common-2.12.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.common-2.12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..08910161d17c87507322f765558cd0dd2fb6d967
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.common-2.12.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.ecore-2.12.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.ecore-2.12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..7a6abb76a4a50b7ba0c1257f2fb373d37bb942bb
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.ecore-2.12.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..fd278fee8a293ccd2e85c7e180f25b9e1a37cf59
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.ecore.xmi-2.12.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.mwe.core-1.3.13.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.mwe.core-1.3.13.jar
new file mode 100644
index 0000000000000000000000000000000000000000..87c4840246a0b41f5a85e9a4ba487bf7e877dadb
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.mwe.core-1.3.13.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..19243c3910b797312de968d2f74f8a38b04501c1
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/org.eclipse.emf.mwe2.runtime-2.8.3.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/pnml-relast-0.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/pnml-relast-0.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..df8dff560b12b488f328c3db05cb56710b8ff42a
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/pnml-relast-0.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosgraph_msgs-1.11.3.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosgraph_msgs-1.11.3.jar
new file mode 100644
index 0000000000000000000000000000000000000000..3a925bc155f80d2f69fa9fb35defd33afa63724b
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosgraph_msgs-1.11.3.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosjava-0.3.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosjava-0.3.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d818168466e37f2486312c790bf25018e26a42b9
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosjava-0.3.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosjava_test_msgs-0.3.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosjava_test_msgs-0.3.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..047763eb099e0cc00047837e3deb50212683cefe
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/rosjava_test_msgs-0.3.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/saxon-8.7.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/saxon-8.7.jar
new file mode 100644
index 0000000000000000000000000000000000000000..0e8559aaa22e8bf8db2a1f2619665895de51edb7
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/saxon-8.7.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/signal_connector_module-0.1.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/signal_connector_module-0.1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..717e58806d7b74acc7d62d60a8e59c1d3279385a
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/signal_connector_module-0.1.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/slf4j-api-1.7.30.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/slf4j-api-1.7.30.jar
new file mode 100644
index 0000000000000000000000000000000000000000..29ac26fb8cad7ef5934377a8c269c4e521520e5c
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/slf4j-api-1.7.30.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/stax2-api-3.1.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/stax2-api-3.1.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..63a8a06467233525160434da6e46ea0599a61700
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/stax2-api-3.1.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/std_msgs-0.5.13.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/std_msgs-0.5.13.jar
new file mode 100644
index 0000000000000000000000000000000000000000..e09ccb0af8ea908d127c25d2be2968bce0698529
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/std_msgs-0.5.13.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/tf2_msgs-0.5.20.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/tf2_msgs-0.5.20.jar
new file mode 100644
index 0000000000000000000000000000000000000000..4537752806b50453466d5af073ac6d4cb5561771
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/tf2_msgs-0.5.20.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/woodstox-core-asl-4.2.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/woodstox-core-asl-4.2.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..8ca96d52a974bcab1fae5555b7145978d0258ede
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/woodstox-core-asl-4.2.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/ws-commons-util-1.0.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/ws-commons-util-1.0.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..3769ee501dcebb0757faaf5e1104d674ed413c04
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/ws-commons-util-1.0.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/xercesImpl-2.9.1.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/xercesImpl-2.9.1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..547f56300d93fe36587910739e095f03e287d47e
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/install/signal_connector_module/lib/xercesImpl-2.9.1.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/libs/signal_connector_module-0.1.0.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/libs/signal_connector_module-0.1.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..717e58806d7b74acc7d62d60a8e59c1d3279385a
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/libs/signal_connector_module-0.1.0.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/publications/mavenJava/pom-default.xml b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/publications/mavenJava/pom-default.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fbbc986e633b358110b475c8ff240911649927e6
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/publications/mavenJava/pom-default.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>de.tudresden.inf.st.rosjava_rag_connector</groupId>
+  <artifactId>signal_connector_module</artifactId>
+  <version>0.1.0</version>
+  <dependencies>
+    <dependency>
+      <groupId>org.ros.rosjava_core</groupId>
+      <artifactId>rosjava</artifactId>
+      <version>[0.3,0.4)</version>
+      <scope>compile</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+      <version>1.7.30</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-slf4j-impl</artifactId>
+      <version>2.13.2</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.ecore</artifactId>
+      <version>2.12.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.ecore.xmi</artifactId>
+      <version>2.12.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.common</artifactId>
+      <version>2.12.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.eclipse.emf</groupId>
+      <artifactId>org.eclipse.emf.mwe.core</artifactId>
+      <version>1.3.13</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>fr.lip6.pnml</groupId>
+      <artifactId>fr.lip6.pnml.framework.ptnet</artifactId>
+      <version>2.2.12</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>fr.lip6.pnml</groupId>
+      <artifactId>fr.lip6.pnml.framework.utils</artifactId>
+      <version>2.2.12</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.ws.commons.axiom</groupId>
+      <artifactId>axiom-api</artifactId>
+      <version>1.2.22</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.ws.commons.axiom</groupId>
+      <artifactId>axiom-impl</artifactId>
+      <version>1.2.22</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.thaiopensource</groupId>
+      <artifactId>jing</artifactId>
+      <version>20091111</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.jetbrains</groupId>
+      <artifactId>annotations</artifactId>
+      <version>19.0.0</version>
+      <scope>runtime</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-lang3</artifactId>
+      <version>3.0</version>
+      <scope>runtime</scope>
+    </dependency>
+  </dependencies>
+</project>
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/resources/main/minimal.pnml b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/resources/main/minimal.pnml
new file mode 100644
index 0000000000000000000000000000000000000000..02aac0252a55e8aeea785a415cbe4f61c9d6784c
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/resources/main/minimal.pnml
@@ -0,0 +1,149 @@
+<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
+ <net id="n-E2D0-BCF46-0" type ="http://www.pnml.org/version-2009/grammar/ptnet">
+  <name>
+   <text>minimal</text>
+  </name>
+  <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+  </toolspecific>
+  <page id="g-E2D0-BCF68-1">
+   <place id="p-E2D0-BCF6F-2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF6F-2</placeID>
+       <outputsignalID>os2</outputsignalID>
+       <initialvalue>1</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>3</result>
+        </equal>
+        <equal>
+         <value>0</value>
+         <result>2</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p0</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <initialMarking>
+     <text>1</text>
+    </initialMarking>
+    <graphics>
+     <position x="30" y="50"/>
+    </graphics>
+   </place>
+   <place id="p-E2D0-BCF9D-3">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF9D-3</placeID>
+       <outputsignalID>os1</outputsignalID>
+       <initialvalue>4</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>1</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p1</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="635" y="90"/>
+    </graphics>
+   </place>
+   <transition id="t1">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is1</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is3</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t0</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="300" y="50"/>
+    </graphics>
+   </transition>
+   <transition id="t2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t2</transitionID>
+       <inputsignalID>is2</inputsignalID>
+       <initialvalue>0</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t1</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="285" y="205"/>
+    </graphics>
+   </transition>
+   <arc id="e-E2D0-BCFCD-6" source="t2" target="p-E2D0-BCF6F-2">
+   </arc>
+   <arc id="e-E2D0-BCFDB-7" source="p-E2D0-BCF9D-3" target="t2">
+   </arc>
+   <arc id="e-E2D0-BCFF3-8" source="t1" target="p-E2D0-BCF9D-3">
+   </arc>
+   <arc id="e-E2D0-BCFFB-9" source="p-E2D0-BCF6F-2" target="t1">
+   </arc>
+  </page>
+ </net>
+</pnml>
\ No newline at end of file
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/jar/MANIFEST.MF b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/jar/MANIFEST.MF
new file mode 100644
index 0000000000000000000000000000000000000000..58630c02ef423cffd6dd6aafd946eb8512040c37
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/jar/MANIFEST.MF
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/publishMavenJavaPublicationToMavenRepository/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/maven-metadata-remote.xml b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/publishMavenJavaPublicationToMavenRepository/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/maven-metadata-remote.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3461278a8afd4e23854d09d271922da04d01f4d9
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/publishMavenJavaPublicationToMavenRepository/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/maven-metadata-remote.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<metadata>
+  <groupId>de.tudresden.inf.st.rosjava_rag_connector</groupId>
+  <artifactId>signal_connector_module</artifactId>
+  <versioning>
+    <release>0.1.0</release>
+    <versions>
+      <version>0.1.0</version>
+    </versions>
+    <lastUpdated>20210709135430</lastUpdated>
+  </versioning>
+</metadata>
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/publishMavenJavaPublicationToMavenRepository/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/resolver-status.properties b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/publishMavenJavaPublicationToMavenRepository/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/resolver-status.properties
new file mode 100644
index 0000000000000000000000000000000000000000..848f9d04567ff225b3261cd35fe85b68720a172a
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/build/tmp/publishMavenJavaPublicationToMavenRepository/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/resolver-status.properties
@@ -0,0 +1,3 @@
+#NOTE: This is an internal implementation file, its format can be changed without prior notice.
+#Fri Jul 09 15:54:30 CEST 2021
+maven-metadata-remote.xml.lastUpdated=1625838870044
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/libs/pnml-relast-0.2.jar b/rosjava/src/rosjava_rag_connector/signal_connector_module/libs/pnml-relast-0.2.jar
new file mode 100644
index 0000000000000000000000000000000000000000..df8dff560b12b488f328c3db05cb56710b8ff42a
Binary files /dev/null and b/rosjava/src/rosjava_rag_connector/signal_connector_module/libs/pnml-relast-0.2.jar differ
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector.java b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector.java
new file mode 100644
index 0000000000000000000000000000000000000000..984b2a06bc6759019be8220757e0c430152d8c06
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_connector_module/SignalConnector.java
@@ -0,0 +1,77 @@
+package de.tudresden.inf.st.rosjava_rag_connector.signal_connector_module;
+
+import de.tudresden.inf.st.pnml.jastadd.model.*;
+import de.tudresden.inf.st.service.PetriNetInitService;
+import org.apache.commons.logging.Log;
+import org.ros.message.MessageListener;
+import org.ros.namespace.GraphName;
+import org.ros.node.AbstractNodeMain;
+import org.ros.node.ConnectedNode;
+import org.ros.node.Node;
+import org.ros.node.topic.Publisher;
+import org.ros.node.topic.Subscriber;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import std_msgs.String;
+
+import java.util.List;
+import java.util.function.Consumer;
+
+public class SignalConnector extends AbstractNodeMain {
+
+    private static final Logger logger = LoggerFactory.getLogger(SignalConnector.class);
+    private List<Marking> markedGraphs = null;
+    private JavaHandler jh = JavaHandler.getInstance();
+
+    @Override
+    public GraphName getDefaultNodeName() {
+        return GraphName.of("pn/signalconnector");
+    }
+
+    @Override
+    public void onError(Node node, Throwable throwable) {
+        logger.error("[SIGNALCONNECTOR] An error occurred: " + throwable.getLocalizedMessage());
+    }
+
+    @Override
+    public void onStart(final ConnectedNode connectedNode) {
+
+        // TODO replace path with config-parameter
+        markedGraphs = PetriNetInitService.initMarkedGraphs("src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/resources/minimal.pnml");
+
+        for(Marking markedGraph : markedGraphs){
+
+            for(Place place : markedGraph.getPetriNet().allPlaces()){
+                OutputSignalPlace osp = place.asOutputSignalPlace();
+                for(OutputSignalBinding osBinding : osp.getOutputSignalBindingList()){
+
+                    final Publisher<String> publisher = connectedNode.newPublisher("/outputsignal/" + osBinding.getId(), std_msgs.String._TYPE);
+
+                    jh.registerCallback("/outputsignal/" + osBinding.getId(), new Consumer<byte[]>() {
+                        @Override
+                        public void accept(byte[] bytes) {
+                            std_msgs.String str = publisher.newMessage();
+                            str.setData(new java.lang.String(bytes));
+                            publisher.publish(str);
+                        }
+                    });
+                }
+            }
+
+            for(Transition transition : markedGraph.getPetriNet().allTransitions()){
+                InputSignalTransition ist = transition.asInputSignalTransition();
+                for(InputSignalBinding isBinding : ist.getInputSignalBindingList()){
+
+                    final Subscriber<String> subscriber = connectedNode.newSubscriber("/inputsignal/" /*+ isBinding.getId()*/, std_msgs.String._TYPE);
+
+                    subscriber.addMessageListener(new MessageListener<String>() {
+                        @Override
+                        public void onNewMessage(std_msgs.String message) {
+                    //        jh.push("/inputsignal/" + isBinding.getId(), message.getData().getBytes());
+                        }
+                    }, 1000);
+                }
+            }
+        }
+    }
+}
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener.java b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener.java
new file mode 100644
index 0000000000000000000000000000000000000000..b4253c6232c831fbcb7bb78eb3dbef9f5aac0d9e
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Listener.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package de.tudresden.inf.st.rosjava_rag_connector.signal_test;
+
+import org.apache.commons.logging.Log;
+import org.ros.message.MessageListener;
+import org.ros.namespace.GraphName;
+import org.ros.node.AbstractNodeMain;
+import org.ros.node.ConnectedNode;
+import org.ros.node.NodeMain;
+import org.ros.node.topic.Subscriber;
+
+// rosrun rosjava_rag_connector signal_connector_module de.tudresden.inf.st.rosjava_rag_connector.signal_connector_module.Listener
+/**
+ * A simple {@link Subscriber} {@link NodeMain}.
+ */
+public class Listener extends AbstractNodeMain {
+
+  @Override
+  public GraphName getDefaultNodeName() {
+    return GraphName.of("rosjava/listener");
+  }
+
+  @Override
+  public void onStart(ConnectedNode connectedNode) {
+
+    final Log log = connectedNode.getLog();
+    Subscriber<std_msgs.String> subscriber = connectedNode.newSubscriber("chatter", std_msgs.String._TYPE);
+    subscriber.addMessageListener(new MessageListener<std_msgs.String>() {
+      @Override
+      public void onNewMessage(std_msgs.String message) {
+        log.info("I heard: \"" + message.getData() + "\"");
+      }
+    }, 1000);
+  }
+}
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker.java b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker.java
new file mode 100644
index 0000000000000000000000000000000000000000..4cccbbfbc6007f175259aac445bc6588efb6813b
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/java/de/tudresden/inf/st/rosjava_rag_connector/signal_test/Talker.java
@@ -0,0 +1,94 @@
+/*
+ * Copyright (C) 2014 Sebastian Ebert.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package de.tudresden.inf.st.rosjava_rag_connector.signal_test;
+
+import de.tudresden.inf.st.pnml.jastadd.model.JavaHandler;
+import de.tudresden.inf.st.pnml.jastadd.model.Marking;
+import de.tudresden.inf.st.service.PetriNetInitService;
+import de.tudresden.inf.st.service.PetriNetLoggingService;
+import org.ros.concurrent.CancellableLoop;
+import org.ros.namespace.GraphName;
+import org.ros.node.AbstractNodeMain;
+import org.ros.node.ConnectedNode;
+import org.ros.node.NodeMain;
+import org.ros.node.topic.Publisher;
+
+import java.util.List;
+import java.util.function.Consumer;
+
+// rosrun rosjava_rag_connector signal_connector_module de.tudresden.inf.st.rosjava_rag_connector.signal_connector_module.Talker
+/**
+ * A simple {@link Publisher} {@link NodeMain}.
+ */
+public class Talker extends AbstractNodeMain {
+
+  @Override
+  public GraphName getDefaultNodeName() {
+    return GraphName.of("rosjava/talker");
+  }
+
+  @Override
+  public void onStart(final ConnectedNode connectedNode) {
+    final Publisher<std_msgs.String> publisher =
+        connectedNode.newPublisher("chatter", std_msgs.String._TYPE);
+    JavaHandler jh = JavaHandler.getInstance();
+
+    jh.registerCallback("/outputsignal/os1", new Consumer<byte[]>() {
+      @Override
+      public void accept(byte[] bytes) {
+        System.out.println("TEST OS1 CALLBACK");
+        std_msgs.String str = publisher.newMessage();
+        str.setData("TEST OS1 CALLBACK ROS");
+        publisher.publish(str);
+      }
+    });
+    jh.registerCallback("/outputsignal/os2", new Consumer<byte[]>() {
+      @Override
+      public void accept(byte[] bytes) {
+        System.out.println("TEST OS2 CALLBACK");
+        std_msgs.String str = publisher.newMessage();
+        str.setData("TEST OS1 CALLBACK ROS");
+        publisher.publish(str);
+      }
+    });
+
+    List<Marking> markedGraphs = PetriNetInitService.initMarkedGraphs("src/rosjava_catkin_package_a/my_pub_sub_tutorial/src/main/resources/minimal.pnml");
+    //PetriNetLoggingService.printInputSignals(markedGraphs.get(0));
+    PetriNetLoggingService.printOutputSignals(markedGraphs.get(0));
+    //markedGraphs.get(0).print();
+
+    // This CancellableLoop will be canceled automatically when the node shuts
+    // down.
+    /*connectedNode.executeCancellableLoop(new CancellableLoop() {
+      private int sequenceNumber;
+
+      @Override
+      protected void setup() {
+        sequenceNumber = 0;
+      }
+
+      @Override
+      protected void loop() throws InterruptedException {
+        std_msgs.String str = publisher.newMessage();
+        str.setData("Hello world! " + sequenceNumber);
+        publisher.publish(str);
+        sequenceNumber++;
+        Thread.sleep(1000);
+      }
+    });*/
+  }
+}
diff --git a/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/resources/minimal.pnml b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/resources/minimal.pnml
new file mode 100644
index 0000000000000000000000000000000000000000..02aac0252a55e8aeea785a415cbe4f61c9d6784c
--- /dev/null
+++ b/rosjava/src/rosjava_rag_connector/signal_connector_module/src/main/resources/minimal.pnml
@@ -0,0 +1,149 @@
+<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
+ <net id="n-E2D0-BCF46-0" type ="http://www.pnml.org/version-2009/grammar/ptnet">
+  <name>
+   <text>minimal</text>
+  </name>
+  <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+  </toolspecific>
+  <page id="g-E2D0-BCF68-1">
+   <place id="p-E2D0-BCF6F-2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF6F-2</placeID>
+       <outputsignalID>os2</outputsignalID>
+       <initialvalue>1</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>3</result>
+        </equal>
+        <equal>
+         <value>0</value>
+         <result>2</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p0</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <initialMarking>
+     <text>1</text>
+    </initialMarking>
+    <graphics>
+     <position x="30" y="50"/>
+    </graphics>
+   </place>
+   <place id="p-E2D0-BCF9D-3">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discretePlaceType</type>
+     <outputsignalbindings>
+      <outputsignalbinding>
+       <placeID>p-E2D0-BCF9D-3</placeID>
+       <outputsignalID>os1</outputsignalID>
+       <initialvalue>4</initialvalue> <!-- -1 = undefined -->
+       <outputmappings>
+        <equal>
+         <value>1</value>
+         <result>1</result>
+        </equal>
+        <threshold>
+         <value>6</value>
+         <result>0</result>
+        </threshold>
+        <range>
+         <upperbound>5</upperbound>
+         <lowerbound>3</lowerbound>
+         <result>1</result>
+        </range>
+       </outputmappings>
+      </outputsignalbinding>
+     </outputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>p1</text>
+     <graphics>
+      <offset x="0" y="-10" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="635" y="90"/>
+    </graphics>
+   </place>
+   <transition id="t1">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is1</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+      <inputsignalbinding>
+       <transitionID>t1</transitionID>
+       <inputsignalID>is3</inputsignalID>
+       <initialvalue>1</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t0</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="300" y="50"/>
+    </graphics>
+   </transition>
+   <transition id="t2">
+    <toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.0.1">
+     <location>node-1</location>
+     <type>discreteTransitionType</type>
+     <inputsignalbindings>
+      <inputsignalbinding>
+       <transitionID>t2</transitionID>
+       <inputsignalID>is2</inputsignalID>
+       <initialvalue>0</initialvalue>
+      </inputsignalbinding>
+     </inputsignalbindings>
+    </toolspecific>
+    <name>
+     <text>t1</text>
+     <graphics>
+      <offset x="0" y="0" />
+     </graphics>
+    </name>
+    <graphics>
+     <position x="285" y="205"/>
+    </graphics>
+   </transition>
+   <arc id="e-E2D0-BCFCD-6" source="t2" target="p-E2D0-BCF6F-2">
+   </arc>
+   <arc id="e-E2D0-BCFDB-7" source="p-E2D0-BCF9D-3" target="t2">
+   </arc>
+   <arc id="e-E2D0-BCFF3-8" source="t1" target="p-E2D0-BCF9D-3">
+   </arc>
+   <arc id="e-E2D0-BCFFB-9" source="p-E2D0-BCF6F-2" target="t1">
+   </arc>
+  </page>
+ </net>
+</pnml>
\ No newline at end of file