Merge branch '1.12.x' into master for the 1.12.0 release!

Change-Id: I431fd0beacc247de5d566fc9313bf64db28bb6e9
diff --git a/buildsupport/generate_stringlist.cmake b/buildsupport/generate_stringlist.cmake
index 87c758e..22d1006 100644
--- a/buildsupport/generate_stringlist.cmake
+++ b/buildsupport/generate_stringlist.cmake
@@ -5,7 +5,7 @@
 # http://www.eclipse.org/legal/epl-2.0.
 #
 # SPDX-License-Identifier: EPL-2.0

-# 
+#
 # Contributors:
 #     Michael Hofmann, Alois Zoitl, Ingo Hegny, Gerhard Ebenhofer, Matthias Plasch - initial API and implementation and/or initial documentation

 # *******************************************************************************/

@@ -43,7 +43,7 @@
     FILE(READ ${FBLIB_FILE} FILE_STRING)

     STRING(REGEX MATCHALL  "g_nStringId([A-Za-z0-9_]*)" REGEX_STRINGS ${FILE_STRING})

     STRING(REGEX MATCHALL  "g_nStringId([0-9][A-Za-z0-9_]*)" REGEX_STRINGS_ERROR ${FILE_STRING})

-  

+

     FOREACH(STR ${REGEX_STRINGS})

       string(LENGTH ${STR} len)

     math(EXPR len ${len}-11)

@@ -54,7 +54,7 @@
     FOREACH(STR_ERR ${REGEX_STRINGS_ERROR})

       list(APPEND ErrorStringBuf "#ERROR Invalid Name used! \n//" ${FBLIB_FILE}:${STR_ERR})

     ENDFOREACH(STR_ERR)

-    

+

   ENDIF(NOT REGEX_STRINGS)

 ENDFOREACH(FBLIB_FILE)

 

@@ -65,12 +65,12 @@
 list(REMOVE_DUPLICATES scm_acConstStringBuf)

 SET(STRINGLIST_H "")

 SET(STRINGLIST_CPP "")

-FOREACH(STR ${scm_acConstStringBuf})

+FOREACH(STR IN ITEMS ${scm_acConstStringBuf})

   string(LENGTH ${STR} len)

   math(EXPR len ${len}+1) # \0 is only one character

   list(APPEND scm_aunIdList ${LENGTH_COUNT})

-  SET(STRINGLIST_H "${STRINGLIST_H}const CStringDictionary::TStringId g_nStringId${STR} = ${LENGTH_COUNT};\n")  

-  SET(STRINGLIST_CPP "${STRINGLIST_CPP}extern const CStringDictionary::TStringId g_nStringId${STR} = ${LENGTH_COUNT};\n")  

+  SET(STRINGLIST_H "${STRINGLIST_H}const CStringDictionary::TStringId g_nStringId${STR} = ${LENGTH_COUNT};\n")

+  SET(STRINGLIST_CPP "${STRINGLIST_CPP}extern const CStringDictionary::TStringId g_nStringId${STR} = ${LENGTH_COUNT};\n")

   math(EXPR LENGTH_COUNT ${LENGTH_COUNT}+${len})

 ENDFOREACH(STR)

 list(LENGTH scm_aunIdList NUMOFCONSTSTRINGS)

@@ -92,10 +92,10 @@
 SET(FIRST TRUE)

 FOREACH(NUM ${scm_aunIdList})

   if(FIRST)

-    SET(scm_aunIdList_Str "${scm_aunIdList_Str}${NUM}")  

+    SET(scm_aunIdList_Str "${scm_aunIdList_Str}${NUM}")

   SET(FIRST FALSE)

   ELSE(FIRST)

-    SET(scm_aunIdList_Str "${scm_aunIdList_Str}, ${NUM}")  

+    SET(scm_aunIdList_Str "${scm_aunIdList_Str}, ${NUM}")

   ENDIF(FIRST)

 ENDFOREACH(NUM)

 

@@ -104,14 +104,14 @@
   string(LENGTH "1" len)

   math(EXPR cnt ${len})

 ENDIF(WIN32)

-FOREACH(STR ${scm_acConstStringBuf})

-  SET(scm_acConstStringBuf_Str "${scm_acConstStringBuf_Str}${STR}\\0")  

-  IF(WIN32) 

+FOREACH(STR IN ITEMS ${scm_acConstStringBuf})

+  SET(scm_acConstStringBuf_Str "${scm_acConstStringBuf_Str}${STR}\\0")

+  IF(WIN32)

   string(LENGTH ${scm_acConstStringBuf_Str} len)

     math(EXPR lenRest ${len})

   math(EXPR bytes ${cnt}*15000)

   IF(${lenRest} GREATER ${bytes})

-      SET(scm_acConstStringBuf_Str "${scm_acConstStringBuf_Str}\" \"")  

+      SET(scm_acConstStringBuf_Str "${scm_acConstStringBuf_Str}\" \"")

       math(EXPR cnt ${cnt}+1)

     ENDIF(${lenRest} GREATER ${bytes})

   ENDIF(WIN32)

diff --git a/docker/Dockerfile_builder b/docker/Dockerfile_builder
new file mode 100644
index 0000000..78d442f
--- /dev/null
+++ b/docker/Dockerfile_builder
@@ -0,0 +1,48 @@
+#*******************************************************************************************
+# Copyright (c) 2020 fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#     Jose Cabral
+#       -  initial implementation
+# ******************************************************************************************
+
+FROM 32bit/ubuntu:16.04
+MAINTAINER Jose Cabral <cabralcochi@gmail.com>
+
+RUN apt update && apt install -y --no-install-recommends \
+    ca-certificates \
+    cmake \
+    g++ \
+    git \
+    gcc \
+    libc6-dev \
+    make \
+    python2.7 \
+    python-six \
+    openssh-client \
+    subversion \
+    wget \
+    unzip \ 
+ && apt clean \
+ && rm -rf /var/lib/apt/lists/*
+ 
+COPY ./docker/scripts/prepareOtherRepos.sh /usr/scripts_temp/
+COPY ./docker/scripts/commonFunctions.sh /usr/scripts_temp/
+RUN /usr/scripts_temp/prepareOtherRepos.sh -A -M && rm -r /usr/scripts_temp/
+
+ARG FORTE_USER_FLAGS=""
+ENV FORTE_USER_FLAGS $FORTE_USER_FLAGS
+
+ARG FORTE_EXTERNAL_MODULES="/usr/forte_modules/"
+ENV FORTE_EXTERNAL_MODULES $FORTE_EXTERNAL_MODULES
+
+COPY . /usr/repos/org.eclipse.4diac.forte
+RUN /usr/repos/org.eclipse.4diac.forte/docker/scripts/buildForte.sh -A -M "$FORTE_USER_FLAGS"
+
+CMD /bin/bash
+
diff --git a/docker/Dockerfile_forte b/docker/Dockerfile_forte
new file mode 100644
index 0000000..b00aabe
--- /dev/null
+++ b/docker/Dockerfile_forte
@@ -0,0 +1,55 @@
+#*******************************************************************************************
+# Copyright (c) 2020 fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#     Jose Cabral
+#       -  initial implementation
+# ******************************************************************************************
+
+FROM alpine:edge as forteBuilder
+MAINTAINER Jose Cabral <cabralcochi@gmail.com>
+
+RUN apk add --no-cache bash \
+    ca-certificates \
+    cmake \
+    g++ \
+    git \
+    gcc \
+    make \
+    python \
+    py-pip \ 
+    py-six \
+    openssh-client \
+    subversion 
+
+COPY ./docker/scripts/prepareOtherRepos.sh /usr/scripts_temp/
+COPY ./docker/scripts/commonFunctions.sh /usr/scripts_temp/
+RUN /usr/scripts_temp/prepareOtherRepos.sh -x -M
+
+ARG FORTE_USER_FLAGS=""
+ENV FORTE_USER_FLAGS $FORTE_USER_FLAGS
+
+ARG FORTE_EXTERNAL_MODULES=""
+ENV FORTE_EXTERNAL_MODULES $FORTE_EXTERNAL_MODULES
+
+COPY . /usr/repos/org.eclipse.4diac.forte/
+RUN /usr/repos/org.eclipse.4diac.forte/docker/scripts/buildForte.sh -x -M "$FORTE_USER_FLAGS"
+
+FROM alpine:edge
+WORKDIR /usr/forte_output/linux32/
+COPY --from=forteBuilder /usr/forte_output/linux32/* ./
+RUN apk add --no-cache libstdc++ 
+
+ENV LD_LIBRARY_PATH /usr/forte_output/linux32/
+
+ARG FORTE_BOOT_FILE=/usr/forte_boot/forte.fboot
+ENV FORTE_BOOT_FILE $FORTE_BOOT_FILE
+
+EXPOSE 4840 4841 4842 61499 61500 61501 61502 61503 61504 61505
+
+CMD /usr/forte_output/linux32/forte -f $FORTE_BOOT_FILE
diff --git a/docker/scripts/buildForte.sh b/docker/scripts/buildForte.sh
new file mode 100755
index 0000000..3e3aca3
--- /dev/null
+++ b/docker/scripts/buildForte.sh
@@ -0,0 +1,159 @@
+#!/bin/bash
+#*******************************************************************************************
+# Copyright (c) 2020 fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#     Jose Cabral
+#       -  initial implementation
+# ******************************************************************************************
+
+# exit when any command fails
+set -e
+
+# store the the last executed command
+trap 'lastCommand=$currentCommand; currentCommand=$BASH_COMMAND' DEBUG
+# echo an error message before exiting
+trap 'if [ $? -eq 0 ]; then echo \"The script exited without errors\"; else echo "\"${lastCommand}\" command failed with exit code $?."; fi' EXIT
+
+
+BASH_SCRIPT_PATH="$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+source "${BASH_SCRIPT_PATH}"/prepareOtherRepos.sh "$@"
+
+####################################################################
+#####################  Variables ###################################
+####################################################################
+# - FORTE_REPO_PATH: The forte repository is set to the parent folder of this script. If the script is executed to another repository, 
+# set the FORTE_REPO_PATH variable to the absolut path of the desired forte repository before calling this script
+# - FORTE_OUTPUT_DIR: The output directory where all devices folders with their binaries will be placed. Default /usr/forte_output/
+
+if [ -z "$FORTE_REPO_PATH" ]; then
+  FORTE_REPO_PATH="$(cd ${BASH_SCRIPT_PATH} && cd ../../ && pwd )/"
+fi
+
+if [ -z "$FORTE_OUTPUT_DIR" ]; then
+  FORTE_OUTPUT_DIR=/usr/forte_output/
+fi
+
+COMMON_FLAGS="-DCMAKE_BUILD_TYPE=Debug \
+              -DFORTE_LOGLEVEL=Debug \
+              -DFORTE_BUILD_EXECUTABLE=ON \
+              -DFORTE_COM_ETH=ON \
+              -DFORTE_MODULE_UTILS=ON \
+              -DFORTE_MODULE_CONVERT=ON \
+              -DFORTE_MODULE_IEC61131=ON \
+              -DFORTE_MODULE_Arrowhead=ON \
+              -DFORTE_COM_HTTP=ON \
+              -DFORTE_COM_HTTP_LISTENING_PORT=8080 \
+              ${USER_FLAGS} \
+              -DFORTE_EXTERNAL_MODULES_DIRECTORY=${FORTE_EXTERNAL_MODULES}"
+
+ARM_COMPILER="-DCMAKE_C_COMPILER=${ARM_BIN}/arm-linux-gnueabihf-gcc \
+              -DCMAKE_CXX_COMPILER=${ARM_BIN}/arm-linux-gnueabihf-g++ \
+              -DCMAKE_FIND_ROOT_PATH=${ARM_ROOT} "
+
+####################################################################
+#####################  FUNCTIONS ###################################
+####################################################################
+
+# The function takes 3 parameters: 
+#   - the architecture (linux32, arm, ...) used for the needed libraries
+#   - the device (linux32, rpi, BBB, ...) used for the exported folder under ${FORTE_OUTPUT_DIR}
+#   - extra parameteters to be added to CMake
+function compile(){
+
+  CURRENT_ARCH=$1
+  CURRENT_DEVICE=$2
+  EXTRA_FLAGS=$3
+
+  CURRENT_BIN="${FORTE_REPO_PATH}bin/${CURRENT_DEVICE}"
+  CURRENT_OUTPUT="${FORTE_OUTPUT_DIR}${CURRENT_DEVICE}"
+  CURRENT_LUA_LIBS="${REPOS_DIR}${LUA_FOLDER_NAME}_bin/${CURRENT_ARCH}/lib/"
+
+  if [ "${OPCUA_ENABLED}" -eq "1" ]; then
+    OPCUA_FLAGS="-DFORTE_COM_OPC_UA=ON \
+               -DFORTE_COM_OPC_UA_INCLUDE_DIR=${REPOS_DIR}${OPCUA_FOLDER_NAME}/bin/${CURRENT_ARCH}/ \
+               -DFORTE_COM_OPC_UA_LIB_DIR=${REPOS_DIR}${OPCUA_FOLDER_NAME}/bin/${CURRENT_ARCH}/bin \
+               -DFORTE_COM_OPC_UA_LIB=libopen62541.a \
+               -DFORTE_COM_OPC_UA_MASTER_BRANCH=ON \
+               -DFORTE_COM_OPC_UA_ENCRYPTION=ON \
+               -DFORTE_COM_OPC_UA_ENCRYPTION_INCLUDE_DIR=${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/include \
+               -DFORTE_COM_OPC_UA_ENCRYPTION_LIB_DIR=${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/bin/${CURRENT_ARCH}/library/"
+  else
+    OPCUA_FLAGS=""
+  fi
+  
+  if [ "${MQTT_ENABLED}" -eq "1" ]; then
+    MQTT_FLAGS=" -DFORTE_COM_PAHOMQTT=ON \
+                 -DFORTE_COM_PAHOMQTT_INCLUDE_DIR=${REPOS_DIR}${MQTT_FOLDER_NAME}/src \
+                 -DFORTE_COM_PAHOMQTT_LIB=libpaho-mqtt3a-static.a \
+                 -DFORTE_COM_PAHOMQTT_LIB_DIR=${REPOS_DIR}${MQTT_FOLDER_NAME}/bin/${CURRENT_ARCH}/src"
+  else
+    MQTT_FLAGS="" 
+  fi
+
+  if [ "${LUA_ENABLED}" -eq "1" ]; then
+    LUA_FLAGS="-DFORTE_USE_LUATYPES=LuaJIT \
+               -DLUAJIT_INCLUDE_DIR=${REPOS_DIR}${LUA_FOLDER_NAME}/src \
+               -DLUAJIT_LIBRARY=${CURRENT_LUA_LIBS}/libluajit-5.1.so" 
+  else
+    LUA_FLAGS="" 
+  fi
+
+  ALL_FLAGS="${COMMON_FLAGS} ${LUA_FLAGS} ${OPCUA_FLAGS} ${MQTT_FLAGS} ${EXTRA_FLAGS}"
+
+  printMessage "Compiling forte for arch ${CURRENT_ARCH} and device ${CURRENT_DEVICE}"
+  echo -e "\nThe following flags will be used: \n${ALL_FLAGS}\n" 
+
+  cleanFolderAndGoThere "${CURRENT_BIN}"
+
+  cmake ${ALL_FLAGS} ${FORTE_REPO_PATH}
+  make -j8
+
+  mkdir -p "${CURRENT_OUTPUT}"
+  cp src/forte "${CURRENT_OUTPUT}"
+
+  if [ "${LUA_ENABLED}" -eq "1" ]; then
+    cp "${CURRENT_LUA_LIBS}"*.so* "${CURRENT_OUTPUT}"
+  fi
+}
+
+
+
+cd "${FORTE_REPO_PATH}"
+
+###################################################################
+############# COMPILE FOR LINUX32 #################################
+###################################################################
+if [ "${LINUX32_ENABLED}" -eq "1" ]; then
+  compile "${LINUX32_ARCH}" "${LINUX32_ARCH}" "-DFORTE_ARCHITECTURE=Posix"
+fi
+
+###################################################################
+################# COMPILE FOR RPI #################################
+###################################################################
+if [ "${RPI_ENABLED}" -eq "1" ]; then
+  RPI_FLAGS="-DFORTE_ARCHITECTURE=Posix \
+             ${ARM_COMPILER} \
+            -DCMAKE_CXX_FLAGS=-static-libstdc++ \
+            -DFORTE_MODULE_SysFs=ON"
+
+  compile "${ARM_ARCH}" "rpi" "${RPI_FLAGS}"
+fi
+
+###################################################################
+################# COMPILE FOR EMBRICK #############################
+###################################################################
+if [ "${EMBRICK_ENABLED}" -eq "1" ]; then
+  EMBRICK_FLAGS="-DFORTE_ARCHITECTURE=Posix \
+                ${ARM_COMPILER} \
+                -DFORTE_IO=ON \
+                -DFORTE_IO_EMBRICK=ON"
+ 
+  compile "${ARM_ARCH}" "embrick" "${EMBRICK_FLAGS}"
+fi
diff --git a/docker/scripts/commonFunctions.sh b/docker/scripts/commonFunctions.sh
new file mode 100755
index 0000000..f7201a7
--- /dev/null
+++ b/docker/scripts/commonFunctions.sh
@@ -0,0 +1,117 @@
+#!/bin/bash
+#*******************************************************************************************
+# Copyright (c) 2020 fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#     Jose Cabral
+#       -  initial implementation
+# ******************************************************************************************
+
+# exit when any command fails
+set -e
+
+# store the the last executed command
+trap 'lastCommand=$currentCommand; currentCommand=$BASH_COMMAND' DEBUG
+# echo an error message before exiting
+trap 'if [ $? -eq 0 ]; then echo \"The script exited without errors\"; else echo "\"${lastCommand}\" command failed with exit code $?."; fi' EXIT
+
+function printHelp(){
+  echo "Usage: buildAll.sh [-A] [-M] [-r] [-e] [-x] [-o] [-m] [-l] [-h] [-U ARGS]"
+  echo -e "\t-A Enable all devices"
+  echo -e "\t-M Enable all modules"
+  echo -e "\t-r Enable raspberry pi device"
+  echo -e "\t-e Enable embrick device"
+  echo -e "\t-x Enable linux32 device"
+  echo -e "\t-o Enable opcua module"
+  echo -e "\t-m Enable mqtt module"
+  echo -e "\t-l Enable lua module"
+  echo -e "\t-U ARG Pass user arguments to the compilation"
+  echo -e "\t-h Print this message"
+}
+
+
+OPCUA_ENABLED=0
+MQTT_ENABLED=0
+LUA_ENABLED=0
+LINUX32_ENABLED=0
+RPI_ENABLED=0
+EMBRICK_ENABLED=0
+ARM_ENABLED=0 # If rpi or embrick is enabled, this is also enabled. It helps with clarity when getting the tools and compiling the needed modules
+USER_FLAGS=""
+
+while getopts ":AMrexomlhU:" opt; do
+  case ${opt} in
+    A ) 
+       LINUX32_ENABLED=1
+       RPI_ENABLED=1
+       EMBRICK_ENABLED=1
+       ARM_ENABLED=1
+       ;;
+    M ) 
+       OPCUA_ENABLED=1
+       MQTT_ENABLED=1
+       LUA_ENABLED=1
+       ;;
+    r )
+       RPI_ENABLED=1
+       ARM_ENABLED=1
+       ;;  
+    e )
+       EMBRICK_ENABLED=1
+       ARM_ENABLED=1
+       ;;     
+    x )
+       LINUX32_ENABLED=1
+       ;;
+    o ) 
+       OPCUA_ENABLED=1
+       ;;
+    m ) 
+       MQTT_ENABLED=1
+       ;;
+    l ) 
+       LUA_ENABLED=1
+       ;;
+    h )  printHelp
+         exit 1
+       ;;
+    U ) 
+        USER_FLAGS="${OPTARG}"
+       ;;
+    \? )
+         printHelp
+         exit 1
+       ;;
+  esac
+done
+
+##################################
+# Print message in a nice format #
+#   $1: message to be printed    #    
+##################################
+function printMessage(){
+  SIZE_OF_MESSAGE=$((${#1} + 4))
+  WRAPPER=$(printf '#%.0s' $(eval "echo {1.."$(($SIZE_OF_MESSAGE))"}"))
+  echo -e "\n$WRAPPER"
+  printf '# %s #\n' "$1"
+  echo -e "$WRAPPER\n"
+}
+
+#################################
+# Clean folder and go inside it #
+#   $1: Folder to clean         # 
+#################################
+function cleanFolderAndGoThere(){
+  if [ -d "${1}" ];
+  then
+     rm -r "${1}"
+  fi
+  
+  mkdir -p "${1}"
+  cd "${1}"
+}
diff --git a/docker/scripts/prepareOtherRepos.sh b/docker/scripts/prepareOtherRepos.sh
new file mode 100755
index 0000000..0eed145
--- /dev/null
+++ b/docker/scripts/prepareOtherRepos.sh
@@ -0,0 +1,339 @@
+#!/bin/bash
+#*******************************************************************************************
+# Copyright (c) 2020 fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#     Jose Cabral
+#       -  initial implementation
+# ******************************************************************************************
+
+# exit when any command fails
+set -e
+
+# store the the last executed command
+trap 'lastCommand=$currentCommand; currentCommand=$BASH_COMMAND' DEBUG
+# echo an error message before exiting
+trap 'if [ $? -eq 0 ]; then echo \"The script exited without errors\"; else echo "\"${lastCommand}\" command failed with exit code $?."; fi' EXIT
+
+BASH_SCRIPT_PATH="$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+source ${BASH_SCRIPT_PATH}/commonFunctions.sh "$@"
+
+####################################################################
+#####################  Variables ###################################
+####################################################################
+
+# The following variables are used in the script and can be set before
+# calling the script:
+#   - TOOLS_DIR: absolut path where the needed tools will be installed. Default /usr/tools/
+#   - ARM_TOOLS_NAME: folder name inside the TOOLS_DIR where the arm-bcm2708 folder is installed. Default armTools
+#   - REPOS_DIR: absolut path to the folder containing all repostories. Default /usr/repos/
+#   - MBEDTLS_FOLDER_NAME: name of the folder containing the mbetdls repository. Default mbedtls
+#   - OPCUA_FOLDER_NAME: name of the folder containing the open62541 repository. Default open62541
+#   - MQTT_FOLDER_NAME: name of the folder containing the paho mqtt repository. Default paho.mqtt.c
+#   - LUA_FOLDER_NAME: name of the folder containing the luajit repository. Default luajit-2.0
+#   - LINUX32_ARCH: name for the build folder when compiling for linux32 architecture. Default linux32
+#   - ARM_ARCH: name for the build folder when compiling for arm architecture. Default arm
+#   - CLEAN_ALL: if set to 1, it will compile even if the libraries are found. Default 0
+
+if [ -z "$TOOLS_DIR" ]; then
+  TOOLS_DIR=/usr/tools/
+fi
+
+if [ -z "$REPOS_DIR" ]; then
+  REPOS_DIR=/usr/repos/
+fi
+
+if [ -z "$ARM_TOOLS_NAME" ]; then
+  ARM_TOOLS_NAME=armTools
+fi
+
+if [ -z "$MBEDTLS_FOLDER_NAME" ]; then
+  MBEDTLS_FOLDER_NAME=mbedtls
+fi
+
+if [ -z "$OPCUA_FOLDER_NAME" ]; then
+  OPCUA_FOLDER_NAME=open62541
+fi
+
+if [ -z "$MQTT_FOLDER_NAME" ]; then
+  MQTT_FOLDER_NAME=paho.mqtt.c
+fi
+
+if [ -z "$LUA_FOLDER_NAME" ]; then
+  LUA_FOLDER_NAME=luajit-2.0
+fi
+
+if [ -z "$LINUX32_ARCH" ]; then
+  LINUX32_ARCH=linux32
+fi
+
+if [ -z "$ARM_ARCH" ]; then
+  ARM_ARCH=arm
+fi
+
+ARM_BIN="${TOOLS_DIR}${ARM_TOOLS_NAME}/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin"
+ARM_ROOT="${TOOLS_DIR}${ARM_TOOLS_NAME}/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/arm-linux-gnueabihf"
+CLEAN_ALL=0
+
+LUA_EXTRA_FLAGS=""
+CMAKE_EXTRA_FLAGS=""
+
+####################################################################
+#####################  FUNCTIONS ###################################
+####################################################################
+
+#################################
+# Compile mbedtls               #
+#   - $1: architecture to build #
+#################################
+function compileMbetls(){
+  if [ ${CLEAN_ALL} -eq "1" ]  || ! [ -f "${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/bin/${1}/library/libmbedcrypto.a" ]; then
+
+    printMessage "Compiling mbedtls for ${1}"
+  
+    cleanFolderAndGoThere "${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/bin/${1}"
+  
+    cmake -DENABLE_TESTING=Off \
+          ${CMAKE_EXTRA_FLAGS} \
+          "${REPOS_DIR}${MBEDTLS_FOLDER_NAME}" && \
+      make -j8
+  else 
+     printMessage "Library for mbedtls for $1 already found and won't be recompiled"
+  fi  
+}
+
+#################################
+# Compile open62541             #
+#   - $1: architecture to build #
+#################################
+function compileOpen62541(){
+  if [ ${CLEAN_ALL} -eq "1" ] || ! [ -f "${REPOS_DIR}${OPCUA_FOLDER_NAME}/bin/${1}/bin/libopen62541.a" ]; then
+    printMessage "Compiling open62541 for ${1}"
+  
+    cleanFolderAndGoThere "${REPOS_DIR}${OPCUA_FOLDER_NAME}/bin/${1}"
+  
+    cmake -DBUILD_SHARED_LIBS=OFF \
+          -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+          -DUA_ENABLE_AMALGAMATION=ON \
+          -DUA_ENABLE_ENCRYPTION=ON \
+          -DMBEDCRYPTO_LIBRARY="${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/bin/${1}/library/libmbedcrypto.a" \
+          -DMBEDTLS_LIBRARY="${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/bin/${1}/library/libmbedtls.a" \
+          -DMBEDX509_LIBRARY="${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/bin/${1}/library/libmbedx509.a" \
+          -DMBEDTLS_INCLUDE_DIRS="${REPOS_DIR}${MBEDTLS_FOLDER_NAME}/include" \
+          ${CMAKE_EXTRA_FLAGS} \
+          ${REPOS_DIR}${OPCUA_FOLDER_NAME} && \
+      make -j8
+  else 
+     printMessage "Library for open62541 for $1 already found and won't be recompiled"
+  fi
+}
+
+#################################
+# Compile luajit                #
+#   - $1: architecture to build #
+#################################
+function compileLuajit(){
+   if [ ${CLEAN_ALL} -eq "1" ] || ! [ -f "${REPOS_DIR}${LUA_FOLDER_NAME}_bin/${1}/lib/libluajit-5.1.so" ]; then
+    #We create a new folder in the repos folder to copy all files to compile.
+    #We don't create inside the luajit repo since it might create problems 
+    #copying recursive itself 
+    CURRENT_FOLDER="${REPOS_DIR}${LUA_FOLDER_NAME}_bin/${1}"
+   
+    printMessage "Compiling luajit for ${1}"
+  
+    cleanFolderAndGoThere "${CURRENT_FOLDER}"
+    
+    #The later eval LUA_COMMAND helps avoid expansion problems of LUA_EXTRA_FLAGS related to the debugging information which adds single quoutes
+    LUA_COMMAND="make ${LUA_EXTRA_FLAGS:+"$LUA_EXTRA_FLAGS"} PREFIX=${CURRENT_FOLDER} -j8"
+    
+    cp -R ${REPOS_DIR}${LUA_FOLDER_NAME}/* ./ && \
+      eval "$LUA_COMMAND" && \
+      make install PREFIX="${CURRENT_FOLDER}" -j8
+  else 
+     printMessage "Library for luajit for $1 already found and won't be recompiled"
+  fi
+}
+
+#################################
+# Compile paho mqtt             #
+#   - $1: architecture to build #
+#################################
+function compileMqtt(){
+   if [ ${CLEAN_ALL} -eq "1" ] || ! [ -f "${REPOS_DIR}${MQTT_FOLDER_NAME}/bin/${1}/src/libpaho-mqtt3a-static.a" ]; then
+    printMessage "Compiling paho mqtt for ${1}"
+  
+    cleanFolderAndGoThere "${REPOS_DIR}${MQTT_FOLDER_NAME}/bin/${1}"
+  
+    cmake -DPAHO_ENABLE_TESTING=OFF \
+          -DPAHO_BUILD_STATIC=ON \
+          ${CMAKE_EXTRA_FLAGS} \
+          ${REPOS_DIR}${MQTT_FOLDER_NAME} && \
+    make -j8
+  else 
+     printMessage "Library for mqtt for $1 already found and won't be recompiled"
+  fi
+}
+
+#################################
+# Compile all                   #
+#   - $1: architecture to build #
+#################################
+function compileAll(){
+
+  if [ "${OPCUA_ENABLED}" -eq "1" ]; then
+    compileMbetls "${1}"
+    compileOpen62541 "${1}"
+  fi
+
+  if [ "${LUA_ENABLED}" -eq "1" ]; then
+    compileLuajit "${1}"
+  fi
+  
+  if [ "${MQTT_ENABLED}" -eq "1" ]; then
+    compileMqtt "${1}"
+  fi  
+  
+}
+
+################################################################
+#####################  TOOLS ###################################
+################################################################
+
+if [ "${ARM_ENABLED}" -eq "1" ]; then
+  #####################################
+  # Get ARM Compiler from repositorty #
+  #####################################
+  if ! [ -d "${TOOLS_DIR}${ARM_TOOLS_NAME}/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin" ]
+  then
+      printMessage "Getting compiler for ARM"
+      
+      mkdir -p ${TOOLS_DIR}${ARM_TOOLS_NAME}_temp/ && \
+        mkdir -p ${TOOLS_DIR}${ARM_TOOLS_NAME}/arm-bcm2708/ && \
+        git clone https://github.com/raspberrypi/tools ${TOOLS_DIR}${ARM_TOOLS_NAME}_temp/ && \
+        mv ${TOOLS_DIR}${ARM_TOOLS_NAME}_temp/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/ ${TOOLS_DIR}${ARM_TOOLS_NAME}/arm-bcm2708/ && \
+        rm -r ${TOOLS_DIR}${ARM_TOOLS_NAME}_temp/
+  fi
+fi
+
+####################################################################
+#####################  REPOS  ######################################
+####################################################################
+
+########################
+# Prepare repos folder #
+########################
+
+CURRENT_FOLDER="${REPOS_DIR}"
+
+if ! [ -d "${CURRENT_FOLDER}" ]
+then  
+   printMessage "Creating folder to hold repositories"
+   mkdir -p ${CURRENT_FOLDER}
+fi 
+
+if [ "${OPCUA_ENABLED}" -eq "1" ]; then
+  ###################
+  # Prepare mbedtls #
+  ###################
+  
+  CURRENT_FOLDER="${REPOS_DIR}${MBEDTLS_FOLDER_NAME}"
+  
+  if ! [ -d "${CURRENT_FOLDER}" ]
+  then
+      printMessage "Creating folder for mbetdls repository"
+     
+      mkdir -p "${CURRENT_FOLDER}" && \
+        git clone https://github.com/ARMmbed/mbedtls "${CURRENT_FOLDER}"
+  fi
+  
+  cd "${CURRENT_FOLDER}" && \
+    git checkout mbedtls-2.7.1 
+  
+  #####################
+  # Prepare open62541 #
+  #####################
+  
+  CURRENT_FOLDER="${REPOS_DIR}${OPCUA_FOLDER_NAME}"
+  
+  if ! [ -d "${CURRENT_FOLDER}" ]
+  then
+      printMessage "Creating folder for opcua repository"
+      
+      mkdir -p "${CURRENT_FOLDER}" && \
+        git clone https://github.com/open62541/open62541.git "${CURRENT_FOLDER}"
+  fi    
+  
+  cd "${CURRENT_FOLDER}" && \
+  git checkout v1.0 && \
+  git submodule update --recursive --init
+
+fi
+
+if [ "${LUA_ENABLED}" -eq "1" ]; then
+  ##################
+  # Prepare luajit #
+  ##################
+  
+  CURRENT_FOLDER="${REPOS_DIR}${LUA_FOLDER_NAME}"
+  
+  if ! [ -d "${CURRENT_FOLDER}" ]
+  then
+      printMessage "Creating folder for lua repository"
+      
+      mkdir -p "${CURRENT_FOLDER}" && \
+        git clone http://luajit.org/git/luajit-2.0.git "${CURRENT_FOLDER}"
+  fi
+      
+  cd "${CURRENT_FOLDER}" && \
+  git checkout v2.0 
+
+fi
+
+if [ "${MQTT_ENABLED}" -eq "1" ]; then
+  #####################
+  # Prepare paho mqtt #
+  #####################
+  
+  CURRENT_FOLDER="${REPOS_DIR}${MQTT_FOLDER_NAME}"
+  
+  if ! [ -d "${CURRENT_FOLDER}" ]
+  then
+      printMessage "Creating folder for mqtt repository"
+      
+      mkdir -p "${CURRENT_FOLDER}" && \
+        git clone https://github.com/eclipse/paho.mqtt.c.git "${CURRENT_FOLDER}"
+  fi
+  
+  cd "${CURRENT_FOLDER}" && \
+    git checkout v1.2.1 
+fi
+
+
+###################################################################
+############# COMPILE FOR LINUX32 #################################
+###################################################################
+if [ "${LINUX32_ENABLED}" -eq "1" ]; then
+  LUA_EXTRA_FLAGS=""
+  CMAKE_EXTRA_FLAGS=""
+  
+  compileAll "${LINUX32_ARCH}"
+fi
+
+###################################################################
+################# COMPILE FOR ARM #################################
+###################################################################
+
+if [ "${ARM_ENABLED}" -eq "1" ]; then
+  LUA_EXTRA_FLAGS="HOST_CC='gcc -m32' CROSS=${ARM_BIN}/arm-linux-gnueabihf-"
+  CMAKE_EXTRA_FLAGS="-DCMAKE_C_COMPILER=${ARM_BIN}/arm-linux-gnueabihf-gcc -DCMAKE_CXX_COMPILER=${ARM_BIN}/arm-linux-gnueabihf-g++ -DCMAKE_FIND_ROOT_PATH=${ARM_ROOT}"
+  
+  export LDFLAGS=-lrt #This flag is needed for mqtt. If can be added to te regular flags, it will be nicer 
+  compileAll "${ARM_ARCH}"
+  unset LDFLAGS
+fi
\ No newline at end of file
diff --git a/src/arch/CMakeLists.txt b/src/arch/CMakeLists.txt
index 8ebf22b..e69df6e 100644
--- a/src/arch/CMakeLists.txt
+++ b/src/arch/CMakeLists.txt
@@ -30,7 +30,7 @@
 
 forte_add_sourcefile_hcpp(timerha devlog)
 
-SET(FORTE_LOGGER_BUFFER_SIZE "300" CACHE NUMBER "Buffer's length of the logger")
+SET(FORTE_LOGGER_BUFFER_SIZE "300" CACHE STRING "Buffer's length of the logger")
 mark_as_advanced(FORTE_LOGGER_BUFFER_SIZE)
 forte_add_custom_configuration("#define FORTE_LOGGER_BUFFER_SIZE ${FORTE_LOGGER_BUFFER_SIZE}")
 
diff --git a/src/arch/utils/mainparam_utils.cpp b/src/arch/utils/mainparam_utils.cpp
index 50ee541..31c846e 100644
--- a/src/arch/utils/mainparam_utils.cpp
+++ b/src/arch/utils/mainparam_utils.cpp
@@ -28,8 +28,15 @@
   printf("%-20s Set the boot-file where to read from to load the applications\n", "  -f <file>");

 #endif

 #ifdef FORTE_COM_OPC_UA

-  printf("%-20s Set the listening port for the OPC UA connection\n", "  -o <Port>");

+  printf("%-20s Set the listening port for the OPC UA connection\n", "  -op <port>");

+  printf("%-20s Set the configuration file for the OPC UA clients\n", "  -oc <file>");

 #endif //FORTE_COM_OPC_UA

+#ifdef FORTE_COM_PAHOMQTT

+  printf("%-20s Set the configuration file for the MQTT clients\n", "  -mc <file>");

+#endif //FORTE_COM_PAHOMQTT

+#ifdef FORTE_COM_HTTP

+  printf("%-20s Set the listening port for the HTTP server\n", "  -Hp <port>");

+#endif //FORTE_COM_HTTP

 }

 

 /*!\brief Parses the command line arguments passed to the main function

@@ -52,10 +59,28 @@
             break;

 #endif //FORTE_SUPPORT_BOOT_FILE

 #ifdef FORTE_COM_OPC_UA

-            case 'o': //! Retrieves OPCUA server port number entered from the command line

-            gOpcuaServerPort = static_cast<TForteUInt16>(atoi(arg[i + 1]));

+          case 'o':

+            if('p' == arg[i][2]) { //! Retrieves OPCUA server port number entered from the command line

+              gOpcuaServerPort = static_cast<TForteUInt16>(atoi(arg[i + 1]));

+            } else if('c' == arg[i][2]) { //! Retrieves OPCUA configuration file for clients entered from the command line

+              gOpcuaClientConfigFile = arg[i + 1];

+            }

             break;

 #endif //FORTE_COM_OPC_UA

+#ifdef FORTE_COM_PAHOMQTT

+          case 'm':

+            if('c' == arg[i][2]) { //! Retrieves MQTT configuration file for clients entered from the command line

+              gMqttClientConfigFile = arg[i + 1];

+            }

+            break;

+#endif //FORTE_COM_PAHOMQTT

+#ifdef FORTE_COM_HTTP

+          case 'H':

+            if('p' == arg[i][2]) { //! Retrieves HTTP server port number entered from the command line

+              gHTTPServerPort = static_cast<TForteUInt16>(atoi(arg[i + 1]));

+            }

+            break;

+#endif //FORTE_COM_HTTP

           default: //! Unknown parameter or -h -> Lists the help for FORTE

             return "";

         }

diff --git a/src/arch/win32/CMakeLists.txt b/src/arch/win32/CMakeLists.txt
index 52d6c4e..53f625f 100644
--- a/src/arch/win32/CMakeLists.txt
+++ b/src/arch/win32/CMakeLists.txt
@@ -16,7 +16,7 @@
 

 if("${FORTE_ARCHITECTURE}" STREQUAL "Win32")

 

-  add_subdirectory ( serlayer )

+  add_subdirectory(serlayer)

   forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})  

   

   forte_add_sourcefile_h(fortealloc.h ../forte_architecture_time.h)

@@ -46,20 +46,21 @@
    forte_add_sourcefile_h(sockhand.h)

   endif(FORTE_COM_ETH)

 

-  forte_add_definition("-DFORTE_LITTLE_ENDIAN") # -DNONAMESPACE -DWITH_NONAMESPACES)  

+  forte_add_definition("-DFORTE_LITTLE_ENDIAN")

 

-# TODO this flag was originaly wrongly added to the definitions. May be necessary to be added as link flag. However currently working fine.

+# TODO this flag was originally wrongly added to the definitions. May be necessary to be added as link flag. However currently working fine.

 # forte_add_link_flags("/NODEFAULTLIB:MSVCRT.lib")

 

-  forte_add_link_library(comctl32.lib)

-  forte_add_link_library(rpcrt4.lib)

-  forte_add_link_library(winmm.lib)

-  forte_add_link_library(ws2_32.lib)

-  forte_add_link_library(version.lib)

+  forte_add_link_library(comctl32)

+  forte_add_link_library(rpcrt4)

+  forte_add_link_library(winmm)

+  forte_add_link_library(ws2_32)

+  forte_add_link_library(version)

   

   if(MINGW)

     #force MINGW to statically link libc and lib stdc++ so that no mingw dlls are needed for forte.exe

     forte_add_link_flags("-static-libgcc -static-libstdc++")

+    forte_add_definition("-W -Wall -Wextra -Woverloaded-virtual -Wconversion -Wshadow")

   elseif(MSVC)
     forte_add_definition("-wd4595")  #warning 4595: 'operator delete/delete[]': non-member operator new or delete functions may not be declared inline

     forte_add_definition("-wd4290")  #warning 4290: C++ exception specification ignored except to indicate a function is not __declspec(nothrow). A function is declared using exception specification, which Visual C++ accepts but does not implement. (from new/delete warning)

diff --git a/src/arch/win32/forte_sem.cpp b/src/arch/win32/forte_sem.cpp
index 7cd4e37..0eeeb9b 100644
--- a/src/arch/win32/forte_sem.cpp
+++ b/src/arch/win32/forte_sem.cpp
@@ -40,7 +40,7 @@
     }
 
     bool CWin32Semaphore::timedWait(TForteUInt64 paRelativeTimeout){
-      return (0 == WaitForSingleObject(mSemaphore, static_cast<DWORD>(paRelativeTimeout / 1E6)));
+      return (0 == WaitForSingleObject(mSemaphore, static_cast<DWORD>(paRelativeTimeout / 1000000 /* 1E6*/)));
     }
 
     bool CWin32Semaphore::tryNoWait(){
diff --git a/src/arch/win32/pctimeha.cpp b/src/arch/win32/pctimeha.cpp
index a73cfb7..622415c 100644
--- a/src/arch/win32/pctimeha.cpp
+++ b/src/arch/win32/pctimeha.cpp
@@ -27,50 +27,6 @@
   disableHandler();

 }

 

-/*

- HANDLE gDoneEvent;

-

- VOID CALLBACK TimerRoutine(PVOID lpParam, BOOLEAN TimerOrWaitFired)

- {

- CPCTimerHandler *timerHandler = (CPCTimerHandler*) lpParam;

- if(timerHandler != 0){

- if(timerHandler->isAlive() ){

- timerHandler->nextTick();

- }

- else{

- SetEvent(gDoneEvent);

- }

- }

- }

-

-

- bool CPCTimerHandler::run(){

-

- HANDLE hTimer = NULL;

-

- // Use an event object to track the TimerRoutine execution

- gDoneEvent = CreateEvent(NULL, TRUE, FALSE, NULL);

- if (NULL == gDoneEvent){

- return false;

- }

-

- // Set a timer to call the timer routine in 10 seconds.

- if (!CreateTimerQueueTimer( &hTimer, 0,  (WAITORTIMERCALLBACK)TimerRoutine, this, 0, 1000 / CPCTimerHandler::csm_nTicksPerSecond, 0))

- {

- return false;

- }

-

- if (WaitForSingleObject(gDoneEvent, INFINITE) != WAIT_OBJECT_0)

- return false;

-

- DeleteTimerQueueTimer(0, hTimer,0);

-

- CloseHandle(gDoneEvent);

-

-

- return true;

- }*/

-

 void CPCTimerHandler::run(){

   DWORD stReq = 0; // in us

   LARGE_INTEGER stReqTimeVal = { 0, 0 };

@@ -125,11 +81,11 @@
   end();

 }

 

-void CPCTimerHandler::setPriority(int pa_nPriority){

-  //TODO think on hwo to handle this.

+void CPCTimerHandler::setPriority(int) {

+  //TODO think on how to handle this.

 }

 

 int CPCTimerHandler::getPriority(void) const{

-  //TODO think on hwo to handle this.

+  //TODO think on how to handle this.

   return 1;

 }

diff --git a/src/arch/win32/win32socketinterf.cpp b/src/arch/win32/win32socketinterf.cpp
index fd1a508..05218bf 100644
--- a/src/arch/win32/win32socketinterf.cpp
+++ b/src/arch/win32/win32socketinterf.cpp
@@ -39,20 +39,20 @@
   TSocketDescriptor nSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
 
   if(INVALID_SOCKET != nSocket){
-    struct sockaddr_in stSockAddr = { 0 };
+    struct sockaddr_in stSockAddr = { };
     stSockAddr.sin_family = AF_INET;
     stSockAddr.sin_port = htons(pa_nPort);
     stSockAddr.sin_addr.s_addr = htonl(INADDR_ANY);
 
     int nOptVal = 1;
-    if(setsockopt(nSocket, SOL_SOCKET, SO_REUSEADDR, (char *) &nOptVal, sizeof(nOptVal)) == -1){
+    if(SOCKET_ERROR == setsockopt(nSocket, SOL_SOCKET, SO_REUSEADDR, (char*) &nOptVal, sizeof(nOptVal))) {
       LPSTR pacErrorMessage = getErrorMessage(WSAGetLastError());
       DEVLOG_ERROR("CWin32SocketInterface: could not set socket option SO_REUSEADDR:  %s\n", pacErrorMessage);
       LocalFree(pacErrorMessage);
     }
 
     if(0 == bind(nSocket, (struct sockaddr *) &stSockAddr, sizeof(struct sockaddr))){
-      if(-1 == listen(nSocket, 1)){ // for the classic IEC 61499 server only one connection at the same time is accepted TODO mayb make this adjustable for future extensions
+      if(SOCKET_ERROR == listen(nSocket, 1)) { // for the classic IEC 61499 server only one connection at the same time is accepted TODO mayb make this adjustable for future extensions
         int nLastError = WSAGetLastError();
         LPSTR pacErrorMessage = getErrorMessage(nLastError);
         DEVLOG_ERROR("CWin32SocketInterface: listen() failed: %d - %s\n", nLastError, pacErrorMessage);
@@ -84,15 +84,15 @@
 
   DEVLOG_INFO("CWin32SocketInterface: Opening TCP-Client connection at: %s:%d\n", pa_acIPAddr, pa_nPort);
 
-  if(-1 != nSocket){
-    struct sockaddr_in stSockAddr = { 0 };
+  if(INVALID_SOCKET != nSocket) {
+    struct sockaddr_in stSockAddr = { };
     stSockAddr.sin_family = AF_INET;
     stSockAddr.sin_port = htons(pa_nPort);
     if(1 != InetPton(stSockAddr.sin_family, pa_acIPAddr, &(stSockAddr.sin_addr))) {
       DEVLOG_ERROR("CWin32SocketInterface: InetPton() failed: %d - %s\n", stSockAddr.sin_addr.s_addr, pa_acIPAddr);
     }
 
-    if(-1 == connect(nSocket, (struct sockaddr *) &stSockAddr, sizeof(struct sockaddr))){
+    if(SOCKET_ERROR == connect(nSocket, (struct sockaddr*) &stSockAddr, sizeof(struct sockaddr))) {
       int nLastError = WSAGetLastError();
       LPSTR pacErrorMessage = getErrorMessage(nLastError);
       DEVLOG_ERROR("CWin32SocketInterface: connect() failed: %d - %s\n", nLastError, pacErrorMessage);
@@ -148,9 +148,9 @@
 int CWin32SocketInterface::receiveDataFromTCP(TSocketDescriptor pa_nSockD, char* pa_pcData, unsigned int pa_unBufSize){
   int nRetVal;
   do{
-    nRetVal = static_cast<int>(recv(pa_nSockD, pa_pcData, pa_unBufSize, 0));
-  } while((-1 == nRetVal) && (WSAEINTR == h_errno)); // recv got interrupt / recieving again
-  if(nRetVal == -1){
+    nRetVal = recv(pa_nSockD, pa_pcData, pa_unBufSize, 0);
+  } while((SOCKET_ERROR == nRetVal) && (WSAEINTR == h_errno)); // recv got interrupt / recieving again
+  if(SOCKET_ERROR == nRetVal) {
     int nLastError = WSAGetLastError();
     LPSTR pacErrorMessage = getErrorMessage(nLastError);
     DEVLOG_ERROR("CWin32SocketInterface: TCP-Socket recv() failed: %d - %s\n", nLastError, pacErrorMessage);
@@ -166,7 +166,7 @@
   DEVLOG_INFO("CWin32SocketInterface: Opening UDP sending connection at: %s:%d\n", pa_acIPAddr, pa_nPort);
   TSocketDescriptor nRetVal = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
 
-  if(-1 != nRetVal){
+  if(INVALID_SOCKET != nRetVal) {
     m_ptDestAddr->sin_family = AF_INET;
     m_ptDestAddr->sin_port = htons(pa_nPort);
     InetPton(m_ptDestAddr->sin_family, pa_acIPAddr, &(m_ptDestAddr->sin_addr));
@@ -186,7 +186,7 @@
   TSocketDescriptor nRetVal = INVALID_SOCKET;
   TSocketDescriptor nSocket = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
 
-  if(-1 != nSocket){
+  if(INVALID_SOCKET != nSocket) {
     int nReuseAddrVal = 1;
     if(0 <= setsockopt(nSocket, SOL_SOCKET, SO_REUSEADDR, (char *) &nReuseAddrVal, sizeof(nReuseAddrVal))){
       struct sockaddr_in stSockAddr;
@@ -251,10 +251,10 @@
 int CWin32SocketInterface::receiveDataFromUDP(TSocketDescriptor pa_nSockD, char* pa_pcData, unsigned int pa_unBufSize){
   int nRetVal;
   do{
-    nRetVal = static_cast<int>(recvfrom(pa_nSockD, pa_pcData, pa_unBufSize, 0, 0, 0));
-  } while((-1 == nRetVal) && (WSAEINTR == h_errno)); // recv got interrupt / recieving again
+    nRetVal = recvfrom(pa_nSockD, pa_pcData, pa_unBufSize, 0, 0, 0);
+  } while((SOCKET_ERROR == nRetVal) && (WSAEINTR == h_errno)); // recv got interrupt / recieving again
 
-  if(nRetVal == -1){ //
+  if(SOCKET_ERROR == nRetVal) {
     int nLastError = WSAGetLastError();
     LPSTR pacErrorMessage = getErrorMessage(nLastError);
     DEVLOG_ERROR("CWin32SocketInterface: UDP-Socket recvfrom() failed: %d - %s\n", nLastError, pacErrorMessage);
diff --git a/src/core/cominfra/basecommfb.cpp b/src/core/cominfra/basecommfb.cpp
index 9eb117e..ab213ed 100644
--- a/src/core/cominfra/basecommfb.cpp
+++ b/src/core/cominfra/basecommfb.cpp
@@ -24,6 +24,8 @@
 #include <string.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <devlog.h>
+#include "core/utils/string_utils.h"
 
 using namespace forte::com_infra;
 
@@ -99,37 +101,24 @@
   CComLayer *newLayer = 0;
   CComLayer *previousLayer = 0; // Reference to the previous layer as it needs to set the bottom layer
   char *layerParams = 0;
-  // Loop until reaching the end of the ID
-  while ('\0' != *commID) {
-    // Get the next layer's ID and parameters
-    char * layerID = extractLayerIdAndParams(&commID, &layerParams);
-    // If not well formated ID return an error
-    if(0 == commID){
-      if('\0' != *layerID) {
-        retVal = e_InitInvalidId;
-      }
-      break;
-    }
+  while('\0' != *commID) { // Loop until reaching the end of the ID
+    retVal = e_InitInvalidId;
+    char * layerID = extractLayerIdAndParams(&commID, &layerParams); // Get the next layer's ID and parameters
 
+    if(0 != layerID && '\0' != *layerID) { // If well formated ID, keep going
     // Create the new layer
-    newLayer = CComLayersManager::createCommunicationLayer(layerID, previousLayer, this);
-    if (0 == newLayer) {
-      // If the layer can't be created return an error
-      retVal = e_InitInvalidId;
-      break;
-    }
-    else if (0 == m_poTopOfComStack) {
-      // Assign the newly created layer to the FB
-      m_poTopOfComStack = newLayer;
+      newLayer = CComLayersManager::createCommunicationLayer(layerID, previousLayer, this);
+      if(0 != newLayer) { // If the layer could be created, keep going
+        if(0 == m_poTopOfComStack) {
+          m_poTopOfComStack = newLayer; // Assign the newly created layer to the FB
+        }
+
+        previousLayer = newLayer; // Update the previous layer reference
+        retVal = newLayer->openConnection(layerParams); // Open the layer connection
+      }
     }
 
-    // Update the previous layer reference
-    previousLayer = newLayer;
-
-    // Open the layer connection
-    retVal = newLayer->openConnection(layerParams);
-    if (e_InitOk != retVal) {
-      // If it was not opened correctly return the error
+    if(e_InitOk != retVal) {  // If it was not opened correctly return the error
       break;
     }
   }
@@ -156,24 +145,33 @@
 }
 
 char *CBaseCommFB::extractLayerIdAndParams(char **paRemainingID, char **paLayerParams) {
-  char *LayerID = *paRemainingID;
-  if ('\0' != **paRemainingID) {
-    *paRemainingID = strchr(*paRemainingID, '[');
-    if (0 != *paRemainingID) {
-      **paRemainingID = '\0';
+  char *layerID = 0;
+  if('\0' != **paRemainingID) {
+    char *possibleLayerId = *paRemainingID;
+    *paRemainingID = forte::core::util::lookForNonEscapedChar(paRemainingID, '[', '\\');
+    if(0 != *paRemainingID) {
       ++*paRemainingID;
-      *paLayerParams = *paRemainingID;
-      *paRemainingID = strchr(*paRemainingID, ']');
-      if (0 != *paRemainingID) {
-        **paRemainingID = '\0';
+      char *possibleLayerParams = *paRemainingID;
+      *paRemainingID = forte::core::util::lookForNonEscapedChar(paRemainingID, ']', '\\');
+      if(0 != *paRemainingID) { //both [ and ] were found so the ID is correct
         ++*paRemainingID;
-        if ('\0' != **paRemainingID) {
+        if('\0' != **paRemainingID) {
           ++*paRemainingID;
         }
+
+        layerID = possibleLayerId;
+        *paLayerParams = possibleLayerParams;
+        forte::core::util::removeEscapedSigns(paLayerParams, '\\');
+      } else {
+        DEVLOG_ERROR("[CBaseCommFB]: No valid closing bracket was found\n");
       }
+    } else {
+      DEVLOG_ERROR("[CBaseCommFB]: No valid opening bracket was found\n");
     }
+  } else {
+    DEVLOG_ERROR("[CBaseCommFB]: The id of the layer is empty\n");
   }
-  return LayerID;
+  return layerID;
 }
 
 char *CBaseCommFB::buildIDString(const char *paPrefix, const char *paIDRoot, const char *paSuffix) {
diff --git a/src/core/cominfra/basecommfb.h b/src/core/cominfra/basecommfb.h
index 5b73233..bfcbaa1 100644
--- a/src/core/cominfra/basecommfb.h
+++ b/src/core/cominfra/basecommfb.h
@@ -84,6 +84,15 @@
     protected:
       CBaseCommFB(const CStringDictionary::TStringId pa_nInstanceNameId, CResource *pa_poSrcRes, forte::com_infra::EComServiceType pa_eCommServiceType);
 
+      /*!\brief Extract the id and the parameter and the ID. The format is ID[PARAMS] where the opening and closing brackets are actually a opening and a closing brackets. They can be escaped using the $ sign.
+       * The opening bracket should only be escaped if it's part of the ID (although not recommended).
+       * The closing bracket should only be escaped if part of PARAMS.
+       * The $ sign should always be escaped
+       *
+       * @param paRemainingID The string to be analyzed. After return, it is already positioned for the next layer
+       * @param paLayerParams pointer to the found PARAMS
+       * @return ID with layer configuration
+       */
        static char *extractLayerIdAndParams(char **paRemainingID, char **paLayerParams);
 
       /*!\brief Generate a layer ID formed by a root with a prefix and a suffix
@@ -135,6 +144,12 @@
       CComLayer *m_poTopOfComStack;
       unsigned int m_unComInterruptQueueCount; //!< number of triggers pending from the network
       CComLayer *m_apoInterruptQueue[cg_unCommunicationInterruptQueueSize];
+
+      private:
+        //we don't want that CBaseCommFB can be copied or assigned therefore the copy constructor and assignment operator are declared private
+        //but not implemented
+        CBaseCommFB(const CBaseCommFB&);
+        CBaseCommFB& operator=(const CBaseCommFB& paOther);
     };
 
   }
diff --git a/src/core/cominfra/commfb.cpp b/src/core/cominfra/commfb.cpp
index 0f61ad7..8402cc5 100644
--- a/src/core/cominfra/commfb.cpp
+++ b/src/core/cominfra/commfb.cpp
@@ -123,15 +123,17 @@
 
 bool CCommFB::createInterfaceSpec(const char *paConfigString, SFBInterfaceSpec &paInterfaceSpec){
   TIdentifier tempstring;
-  char *sParamA = 0;
-  char *sParamB = 0;
+  const char *sParamA = 0;
+  const char *sParamB = 0;
 
   paInterfaceSpec.m_nNumEIs = 2;
   paInterfaceSpec.m_nNumEOs = 2;
 
-  memcpy(tempstring, paConfigString, cg_nIdentifierLength);
+  memcpy(tempstring, paConfigString, (strlen(paConfigString) > cg_nIdentifierLength) ? cg_nIdentifierLength : strlen(paConfigString) + 1); //plus 1 for the null character
   tempstring[cg_nIdentifierLength] = '\0';
+
   size_t inlength = strlen(tempstring);
+
   size_t i;
   for (i = 0; i < inlength - 1; i++) { // search first underscore
     if (tempstring[i] == '_') {
@@ -156,13 +158,13 @@
   configureDOs(sParamB, paInterfaceSpec);
 
   if (forte::com_infra::e_Requester == (forte::com_infra::e_Requester & m_eCommServiceType)) {
-    paInterfaceSpec.m_aunEINames = const_cast<CStringDictionary::TStringId*>(scm_aunRequesterEventInputNameIds);
-    paInterfaceSpec.m_aunEONames = const_cast<CStringDictionary::TStringId*>(scm_aunRequesterEventOutputNameIds);
+    paInterfaceSpec.m_aunEINames = scm_aunRequesterEventInputNameIds;
+    paInterfaceSpec.m_aunEONames = scm_aunRequesterEventOutputNameIds;
   }
   else {
     if (forte::com_infra::e_Responder == (forte::com_infra::e_Responder & m_eCommServiceType)) {
-      paInterfaceSpec.m_aunEINames = const_cast<CStringDictionary::TStringId*>(scm_aunResponderEventInputNameIds);
-      paInterfaceSpec.m_aunEONames = const_cast<CStringDictionary::TStringId*>(scm_aunResponderEventOutputNameIds);
+      paInterfaceSpec.m_aunEINames = scm_aunResponderEventInputNameIds;
+      paInterfaceSpec.m_aunEONames = scm_aunResponderEventOutputNameIds;
     }
   }
   paInterfaceSpec.m_anEIWithIndexes = scm_anEIWithIndexes;
diff --git a/src/core/datatypes/forte_any_bit.h b/src/core/datatypes/forte_any_bit.h
index 61d350f..acfd172 100644
--- a/src/core/datatypes/forte_any_bit.h
+++ b/src/core/datatypes/forte_any_bit.h
@@ -1,6 +1,6 @@
 /*******************************************************************************

  * Copyright (c) 2005 - 2013 Profactor GmbH, ACIN

- *

+ *               2020 Johannes Kepler University Linz

  * This program and the accompanying materials are made available under the

  * terms of the Eclipse Public License 2.0 which is available at

  * http://www.eclipse.org/legal/epl-2.0.

@@ -11,11 +11,13 @@
  *    Thomas Strasser, Ingomar Müller, Alois Zoitl, Monika Wenger,

  *    Martin Melik Merkumians

  *      - initial implementation and rework communication infrastructure

+ *    Ernst Blecha - add multibit partial access

   *******************************************************************************/

 #ifndef _ANY_BIT_H_

 #define _ANY_BIT_H_

 

 #include "forte_any_elementary.h"

+#include <limits>

 

 /*!\ingroup COREDTS IIEC_ANY_BIT represents any bit data types according to IEC 61131.

  */

@@ -30,6 +32,194 @@
     CIEC_ANY_BIT() :

         CIEC_ANY_ELEMENTARY(){

     }

+

+    /*! \brief Set method for data type member value

+     *

+     *  The data type value is set using th setLargestUInt method;

+     *  This method needs to be derived in case of chaining multiple access elements after one another (e.g. [LWORD].D<1>().W<1>().B<1>().X<1>()).

+     *

+     */

+    virtual void setValuePartial(TLargestUIntValueType paValue) {

+      this->setLargestUInt(paValue);

+    }

+

+    template <class TBase, class TObject>

+    class PARTIAL_ACCESS_TYPE : public TBase {

+    protected:

+      typedef typename TBase::TValueType TBaseType; // Shortcut for the value type used by the access object

+                                                    // evaluates to bool, TForteByte, TForteWord or TForteDWord

+      typedef typename TObject::TValueType TObjectType; // Shortcut for the value type used by the data-object

+                                                        // evaluates to TForteByte, TForteWord, TForteDWord or TForteLWord

+      static const size_t length = std::numeric_limits<TObjectType>::digits/std::numeric_limits<TBaseType>::digits; // amount of accessible elements

+

+      /*! \brief Method to read the partial element form the referenced object

+       *

+       *  This is a static method since it is used during object construction

+       *

+       */

+      static TBaseType getPartial(TObject &src, const size_t paIndex){

+        if(paIndex >= length) {

+          return 0; // FAIL SILENT

+        } else if (forte::core::mpl::is_same<TBase,CIEC_BOOL>::value){

+          return ( 0 != (src.getLargestUInt() & ((TLargestUIntValueType)1 << paIndex)));

+        } else {

+          TFortePartial temp;

+          temp.mLargestUInt = src.getLargestUInt();

+          return temp.mData[paIndex];

+        }

+      }

+

+      /*! \brief Method for internally setting the objects data type member value

+       *

+       * Reads the current value from the referenced object, changes the indexed element and writes it back to the referenced object.

+       * Also sets the data type member value of this object in order to allow object reuse by the compiler

+       *

+       */

+      PARTIAL_ACCESS_TYPE<TBase, TObject>& setPartial(TBaseType paValue){

+        if(index < length) {

+          TFortePartial temp;

+          temp.mLargestUInt = dataObject.getLargestUInt();

+          if (forte::core::mpl::is_same<TBase,CIEC_BOOL>::value){

+            if(paValue) {

+              temp.mLargestUInt |=  ((TLargestUIntValueType)1 << index);

+            } else {

+              temp.mLargestUInt &= ~((TLargestUIntValueType)1 << index);

+            }

+          } else {

+            temp.mData[index] = paValue;

+          }

+          dataObject.setValuePartial(static_cast<TLargestUIntValueType>(temp.mLargestUInt));

+          TBase::setLargestUInt(paValue); // Store to the temporary object. Otherwise this might behave incorrect on object reuse.

+        }

+        return *this;

+      }

+

+      /*! \brief Set method for data type member value

+       *

+       *  The data type value is set through the objects setPartial method;

+       *  This derived method handles chaining access elements.

+       *

+       */

+      virtual void setValuePartial(TLargestUIntValueType paValue) {

+        setPartial(static_cast<TBaseType>(paValue));

+      }

+

+    private:

+      union TFortePartial {                    // Split the data value into multiple indexable elements

+        TLargestUIntValueType mLargestUInt;

+        TBaseType mData[length];

+      };

+

+      TObject& dataObject; // The referenced object which data is pulled from

+      const size_t index;  // Index value for accessing the split elements

+      bool accessedOutOfBounds = false; // Flag to indicate Out of Bounds access

+

+      /*! \brief Method for handling endianess conversion

+       *

+       *  On little endian systems the index value can directly be returned.

+       *  On big endian systems the order of bytes has to be flipped.

+       *

+       */

+      static constexpr size_t endianiseIndex(const size_t paIndex){

+#ifdef FORTE_BIG_ENDIAN

+          return (forte::core::mpl::is_same<TBase,CIEC_BOOL>::value) ? paIndex : length-1-paIndex; // Within bool-data endianess is implicitly correct

+#else //#ifdef FORTE_BIG_ENDIAN

+          return paIndex;

+#ifndef FORTE_LITTLE_ENDIAN

+#error Endianess not defined

+#endif //#ifndef FORTE_LITTLE_ENDIAN

+#endif //#ifdef FORTE_BIG_ENDIAN

+      }

+

+    public:

+      /*! \brief Constructor: Setup of byte/word/dword-access-object

+       *

+       *  The data member value is set based on the value of paSrc and the selected index.

+       *  Out of Bounds checking is implemented as an additional runtime check.

+       *  The index is stored after correction for endianess.

+       */

+      explicit PARTIAL_ACCESS_TYPE(TObject& paSrc, const size_t paIndex) :

+        TBase(getPartial(paSrc,endianiseIndex(paIndex))), dataObject(paSrc), index(endianiseIndex(paIndex)) {

+        static_assert(forte::core::mpl::is_same<TObject,CIEC_BYTE>::value ||

+                      forte::core::mpl::is_same<TObject,CIEC_WORD>::value ||

+                      forte::core::mpl::is_same<TObject,CIEC_DWORD>::value ||

+                      forte::core::mpl::is_same<TObject,CIEC_LWORD>::value, "TObject has to be one of CIEC_BYTE, CIEC_WORD, CIEC_DWORD or CIEC_LWORD");

+        static_assert(forte::core::mpl::is_same<TBase,CIEC_BOOL>::value ||

+                      forte::core::mpl::is_same<TBase,CIEC_BYTE>::value ||

+                      forte::core::mpl::is_same<TBase,CIEC_WORD>::value ||

+                      forte::core::mpl::is_same<TBase,CIEC_DWORD>::value, "TBase has to be one of CIEC_BYTE, CIEC_WORD, CIEC_DWORD or CIEC_LWORD");

+        static_assert(std::numeric_limits<TObjectType>::digits > std::numeric_limits<TBaseType>::digits, "Partial acces is only possible if accessed element is smaller than the source");

+        if (paIndex >= length) {

+          accessedOutOfBounds = true; // FAIL SILENT

+        }

+      };

+

+      /*! \brief read the state of the Out of Bounds flag

+       *

+       */

+      bool getAccessedOutOfBounds() {

+        return accessedOutOfBounds;

+      }

+

+      /*! \brief Operator: Assignment operator with elementary type as its input

+       *

+       */

+      PARTIAL_ACCESS_TYPE<TBase, TObject>& operator=(TBaseType paValue){

+        return setPartial(paValue); // No need for conversion, TBaseType can be directly assigned

+      }

+

+      /*! \brief Operator: Assignment operator with CIEC_XXXX as its input

+       *

+       */

+      PARTIAL_ACCESS_TYPE<TBase, TObject>& operator =(const TBase &paValue){

+        return setPartial(paValue); // This does conversion from TBase to TBaseType implicitly

+      }

+

+      /*! \brief Operator: setValue method that handles parts correctly (As long as its not a complex data structure - e.g. CIEC_STRING will not work!).

+       *

+       */

+      virtual void setValue(const CIEC_ANY &pa_roValue){

+        TBase::setValue(pa_roValue); //Extract the value using the base class' setValue method

+        if (forte::core::mpl::is_same<TBase,CIEC_BOOL>::value){

+          setPartial(static_cast<TBaseType>(false != this->getLargestUInt()));

+        } else {

+          setPartial(static_cast<TBaseType>(this->getLargestUInt()));

+        }

+      }

+

+    };

+

+    template <class TBase, class TObject, size_t TIndex>

+    class PARTIAL_ACCESS : public CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TBase, TObject>{

+    public:

+        /*! \brief Constructor: Setup of byte/word/dword-access-object

+         *

+         *  The data member value is set based on the value of paSrc and the selected index.

+         *  Out of Bounds checking is implemented on the index value as a static check; The index therefore has to be known at compile time.

+         *  The index is stored after correction for endianess.

+         */

+        explicit PARTIAL_ACCESS(TObject &paSrc) :

+          PARTIAL_ACCESS_TYPE<TBase, TObject>(paSrc, TIndex){

+          static_assert(TIndex < CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TBase,TObject>::length, "Index for partial access out of bounds.");

+        };

+

+        /*! \brief Operator: Assignment operator with elementary type as its input

+         *

+         */

+        PARTIAL_ACCESS<TBase, TObject, TIndex>& operator=(typename CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TBase,TObject>::TBaseType paValue){

+          this->setPartial(paValue); // No need for conversion, TBaseType can be directly assigned

+          return *this;

+        }

+

+        /*! \brief Operator: Assignment operator with CIEC_XXXX as its input

+         *

+         */

+        PARTIAL_ACCESS<TBase, TObject, TIndex>& operator =(const TBase &paValue){

+          this->setPartial(paValue); // This does conversion from TBase to TBaseType implicitly

+          return *this;

+        }

+    };

+

 };

 

 #endif /*_MANY_BIT_H_*/

diff --git a/src/core/datatypes/forte_array_at.h b/src/core/datatypes/forte_array_at.h
new file mode 100644
index 0000000..d43c09d
--- /dev/null
+++ b/src/core/datatypes/forte_array_at.h
@@ -0,0 +1,357 @@
+/*******************************************************************************
+ * Copyright (c) 2020 Johannes Kepler University Linz
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *    Ernst Blecha - initial implementation
+ *******************************************************************************/
+#ifndef _FORTE_ARRAY_AT_H_
+#define _FORTE_ARRAY_AT_H_
+
+#ifdef FORTE_USE_64BIT_DATATYPES
+#include <forte_lword.h>
+#else
+#include <forte_dword.h>
+#endif
+
+
+
+template <class TBase, class TObject, const size_t startIndex, const size_t stopIndex>
+class ARRAY_AT {
+
+private:
+  typedef typename TBase::TValueType TBaseType; // Shortcut for the value type used by the access object
+                                                // evaluates to bool, TForteByte, TForteWord or TForteDWord
+  typedef typename TObject::TValueType TObjectType; // Shortcut for the value type used by the data-object
+                                                    // evaluates to TForteByte, TForteWord, TForteDWord or TForteLWord
+  TObject& dataObject; // The referenced object which data is pulled from
+  TObject dummy;       // Dummy object for out of bounds data
+  bool accessedOutOfBounds = false; // Flag to indicate Out of Bounds access
+
+  template <class TO> class ARRAY_AT_ACCESSOR_BASE {
+  protected:
+    TO& dataObject; // The referenced object which data is pulled from
+    TO& dummy;      // Dummy object for out of bounds data
+  public:
+    ARRAY_AT_ACCESSOR_BASE<TO>(TO& paDataObject, TO& paDummy): dataObject(paDataObject), dummy(paDummy) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_BYTE>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_WORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_DWORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be one of CIEC_BYTE, CIEC_WORD, CIEC_DWORD or CIEC_LWORD");
+    }
+  };
+
+  template <class TB, class TO, class TData, class TStorage> class ARRAY_AT_ACCESSOR : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    /*! \brief Default implementation of the ARRAY_AT_ACCESSOR-class;
+     *         throws a compile-time-error to inform the user that something went terribly wrong.
+     *
+     */
+    ARRAY_AT_ACCESSOR<TB, TO, TData, TStorage>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) {
+      // this static assert should never be compiled; if this happens an unknown type of accessor was requested
+      // if this was just a plain "static_assert(false)" it would still trigger if the template was never instantiated
+      // as BOOL->BYTE is already handled by a specialization the statement will evaluate to false
+      static_assert(forte::core::mpl::is_same<TData, CIEC_BOOL>::value && forte::core::mpl::is_same<TStorage, CIEC_BYTE>::value, "Invalid accessor type requested.");
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_BOOL, CIEC_BYTE> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_BOOL, CIEC_BYTE>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a BOOL within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_BYTE>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_WORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_DWORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be one of CIEC_BYTE, CIEC_WORD, CIEC_DWORD or CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_BOOL>::value, "TB has to be CIEC_BOOL");
+      switch(index) {
+        case  0: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,0>();
+        case  1: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,1>();
+        case  2: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,2>();
+        case  3: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,3>();
+        case  4: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,4>();
+        case  5: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,5>();
+        case  6: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,6>();
+        case  7: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,7>();
+        default: return ARRAY_AT_ACCESSOR_BASE<TO>::dummy.template partial<CIEC_BOOL,0>();
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_BOOL, CIEC_WORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_BOOL, CIEC_WORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a BOOL within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_WORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_DWORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be one of CIEC_WORD, CIEC_DWORD or CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_BOOL>::value, "TB has to be CIEC_BOOL");
+      switch(index) {
+        case  8: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,8>();
+        case  9: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,9>();
+        case 10: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,10>();
+        case 11: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,11>();
+        case 12: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,12>();
+        case 13: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,13>();
+        case 14: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,14>();
+        case 15: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,15>();
+        default:
+          ARRAY_AT_ACCESSOR<TB, TO, CIEC_BOOL, CIEC_BYTE> accessor(ARRAY_AT_ACCESSOR_BASE<TO>::dataObject, ARRAY_AT_ACCESSOR_BASE<TO>::dummy);
+          return accessor.getAccessor(index);
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_BOOL, CIEC_DWORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_BOOL, CIEC_DWORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a BOOL within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_DWORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be one of CIEC_DWORD or CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_BOOL>::value, "TB has to be CIEC_BOOL");
+      switch(index) {
+        case 16: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,16>();
+        case 17: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,17>();
+        case 18: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,18>();
+        case 19: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,19>();
+        case 20: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,20>();
+        case 21: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,21>();
+        case 22: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,22>();
+        case 23: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,23>();
+        case 24: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,24>();
+        case 25: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,25>();
+        case 26: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,26>();
+        case 27: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,27>();
+        case 28: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,28>();
+        case 29: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,29>();
+        case 30: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,30>();
+        case 31: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,31>();
+        default:
+          ARRAY_AT_ACCESSOR<TB, TO, CIEC_BOOL, CIEC_WORD> accessor(ARRAY_AT_ACCESSOR_BASE<TO>::dataObject, ARRAY_AT_ACCESSOR_BASE<TO>::dummy);
+          return accessor.getAccessor(index);
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_BOOL, CIEC_LWORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_BOOL, CIEC_LWORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a BOOL within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_BOOL>::value, "TB has to be CIEC_BOOL");
+      switch(index) {
+        case 32: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,32>();
+        case 33: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,33>();
+        case 34: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,34>();
+        case 35: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,35>();
+        case 36: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,36>();
+        case 37: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,37>();
+        case 38: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,38>();
+        case 39: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,39>();
+        case 40: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,40>();
+        case 41: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,41>();
+        case 42: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,42>();
+        case 43: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,43>();
+        case 44: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,44>();
+        case 45: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,45>();
+        case 46: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,46>();
+        case 47: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,47>();
+        case 48: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,48>();
+        case 49: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,49>();
+        case 50: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,50>();
+        case 51: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,51>();
+        case 52: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,52>();
+        case 53: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,53>();
+        case 54: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,54>();
+        case 55: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,55>();
+        case 56: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,56>();
+        case 57: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,57>();
+        case 58: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,58>();
+        case 59: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,59>();
+        case 60: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,60>();
+        case 61: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,61>();
+        case 62: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,62>();
+        case 63: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BOOL,63>();
+        default:
+          ARRAY_AT_ACCESSOR<TB, TO, CIEC_BOOL, CIEC_DWORD> accessor(ARRAY_AT_ACCESSOR_BASE<TO>::dataObject, ARRAY_AT_ACCESSOR_BASE<TO>::dummy);
+          return accessor.getAccessor(index);
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_BYTE, CIEC_WORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_BYTE, CIEC_WORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a BYTE within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_WORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_DWORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be one of CIEC_BYTE, CIEC_WORD, CIEC_DWORD or CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_BYTE>::value, "TB has to be CIEC_BYTE");
+      switch(index) {
+        case  0: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,0>();
+        case  1: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,1>();
+        default: return ARRAY_AT_ACCESSOR_BASE<TO>::dummy.template partial<CIEC_BYTE, 0>();
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_BYTE, CIEC_DWORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_BYTE, CIEC_DWORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a BYTE within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_DWORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be one of CIEC_DWORD or CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_BYTE>::value, "TB has to be CIEC_BYTE");
+      switch(index) {
+        case  2: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,2>();
+        case  3: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,3>();
+        default:
+          ARRAY_AT_ACCESSOR<TB, TO, CIEC_BYTE, CIEC_WORD> accessor(ARRAY_AT_ACCESSOR_BASE<TO>::dataObject, ARRAY_AT_ACCESSOR_BASE<TO>::dummy);
+          return accessor.getAccessor(index);
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_BYTE, CIEC_LWORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_BYTE, CIEC_LWORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a BYTE within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_BYTE>::value, "TB has to be CIEC_BYTE");
+      switch(index) {
+        case  4: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,4>();
+        case  5: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,5>();
+        case  6: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,6>();
+        case  7: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_BYTE,7>();
+        default:
+          ARRAY_AT_ACCESSOR<TB, TO, CIEC_BYTE, CIEC_DWORD> accessor(ARRAY_AT_ACCESSOR_BASE<TO>::dataObject, ARRAY_AT_ACCESSOR_BASE<TO>::dummy);
+          return accessor.getAccessor(index);
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_WORD, CIEC_DWORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_WORD, CIEC_DWORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a WORD within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_DWORD>::value ||
+                    forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be one of CIEC_DWORD or CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_WORD>::value, "TB has to be CIEC_WORD");
+      switch(index) {
+        case  0: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_WORD,0>();
+        case  1: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_WORD,1>();
+        default: return ARRAY_AT_ACCESSOR_BASE<TO>::dummy.template partial<CIEC_WORD,0>();
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_WORD, CIEC_LWORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_WORD, CIEC_LWORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a WORD within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_WORD>::value, "TB has to be CIEC_WORD");
+      switch(index) {
+        case  2: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_WORD,2>();
+        case  3: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_WORD,3>();
+        default:
+          ARRAY_AT_ACCESSOR<TB, TO, CIEC_WORD, CIEC_DWORD> accessor(ARRAY_AT_ACCESSOR_BASE<TO>::dataObject, ARRAY_AT_ACCESSOR_BASE<TO>::dummy);
+          return accessor.getAccessor(index);
+      }
+    }
+  };
+
+  template <class TB, class TO> class ARRAY_AT_ACCESSOR <TB, TO, CIEC_DWORD, CIEC_LWORD> : public ARRAY_AT_ACCESSOR_BASE<TO> {
+  public:
+    ARRAY_AT_ACCESSOR<TB, TO, CIEC_DWORD, CIEC_LWORD>(TO& paDataObject, TO& paDummy) : ARRAY_AT_ACCESSOR_BASE<TO>(paDataObject, paDummy) { }
+    /*! \brief Implementation of the getAccessor-Method for accessing a DWORD within ANY_BIT-types
+     *
+     */
+    inline CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TB, TO> getAccessor(size_t index) {
+      static_assert(forte::core::mpl::is_same<TO,CIEC_LWORD>::value, "TO has to be CIEC_LWORD");
+      static_assert(forte::core::mpl::is_same<TB,CIEC_DWORD>::value, "TB has to be CIEC_DWORD");
+      switch(index) {
+        case  0: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_DWORD,0>();
+        case  1: return ARRAY_AT_ACCESSOR_BASE<TO>::dataObject.template partial<CIEC_DWORD,1>();
+        default: return ARRAY_AT_ACCESSOR_BASE<TO>::dummy.template partial<CIEC_DWORD,0>();
+      }
+    }
+  };
+
+public:
+  /*! \brief Constructor: Setup of array-access-object
+   *
+   *  The data member value is set based on the value of paSrc
+   *  The valid index range is given by startIndex and stopIndex (both included)
+   */
+  ARRAY_AT(TObject &paSrc) :
+    dataObject(paSrc){
+    const size_t length = std::numeric_limits<typename TObject::TValueType>::digits/std::numeric_limits<typename TBase::TValueType>::digits;
+    static_assert(length > stopIndex, "Invalid index range.");
+    static_assert(startIndex >= 0, "Invalid index range.");
+    static_assert(forte::core::mpl::is_same<TObject,CIEC_BYTE>::value ||
+                  forte::core::mpl::is_same<TObject,CIEC_WORD>::value ||
+                  forte::core::mpl::is_same<TObject,CIEC_DWORD>::value ||
+                  forte::core::mpl::is_same<TObject,CIEC_LWORD>::value, "TObject has to be one of CIEC_BYTE, CIEC_WORD, CIEC_DWORD or CIEC_LWORD");
+    static_assert(forte::core::mpl::is_same<TBase,CIEC_BOOL>::value ||
+                  forte::core::mpl::is_same<TBase,CIEC_BYTE>::value ||
+                  forte::core::mpl::is_same<TBase,CIEC_WORD>::value ||
+                  forte::core::mpl::is_same<TBase,CIEC_DWORD>::value, "TBase has to be one of CIEC_BYTE, CIEC_WORD, CIEC_DWORD or CIEC_LWORD");
+    static_assert(std::numeric_limits<TObjectType>::digits > std::numeric_limits<TBaseType>::digits, "Partial acces is only possible if accessed element is smaller than the source");
+  };
+
+  /*! \brief Operator: create accessor for the given index
+   *
+   */
+  CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<TBase, TObject> operator[] (const size_t index) {
+    ARRAY_AT_ACCESSOR<TBase, TObject, TBase, TObject> accessor(dataObject, dummy);
+    if (index >= startIndex && index <= stopIndex) {
+      return accessor.getAccessor(index);
+    } else {
+      accessedOutOfBounds =  true;
+      return accessor.getAccessor(-1); // FAIL SILENT: return a dummy-object (attention: value is undefined!)
+    }
+  }
+
+  /*! \brief read the state of the Out of Bounds flag
+   *
+   */
+  bool getAccessedOutOfBounds() {
+    return accessedOutOfBounds;
+  }
+
+};
+
+#endif /*_FORTE_ARRAY_AT_H_*/
diff --git a/src/core/datatypes/forte_byte.h b/src/core/datatypes/forte_byte.h
index 963eb02..a268627 100644
--- a/src/core/datatypes/forte_byte.h
+++ b/src/core/datatypes/forte_byte.h
@@ -1,5 +1,6 @@
 /*******************************************************************************
  * Copyright (c) 2005 - 2013 Profactor GmbH, ACIN
+ *               2020 Johannes Kepler University Linz
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License 2.0 which is available at
  * http://www.eclipse.org/legal/epl-2.0.
@@ -10,11 +11,13 @@
  *    Thomas Strasser, Ingomar Müller, Alois Zoitl, Gerhard Ebenhofer,
  *    Ingo Hegny, Martin Melik-Merkumians, Monika Wenger
  *      - initial implementation and rework communication infrastructure
+ *    Ernst Blecha - add multibit partial access
  *******************************************************************************/
 #ifndef _FORTE_BYTE_H_
 #define _FORTE_BYTE_H_
 
 #include "forte_any_bit.h"
+#include "forte_bool.h"
 #include <limits>
 
 /*!\ingroup COREDTS CIEC_BYTE represents the byte data type according to IEC 61131.
@@ -73,6 +76,14 @@
     virtual EDataTypeID getDataTypeID() const{
       return CIEC_ANY::e_BYTE;
     }
+
+    /*! \brief Partial access within a CIEC_BYTE (e.g. [BYTE].partial<CIEC_BOOL,1>())
+     *
+     */
+    template <class T, size_t paIndex> PARTIAL_ACCESS<T, CIEC_BYTE, paIndex> partial(){
+      return PARTIAL_ACCESS<T,CIEC_BYTE, paIndex>(*this);
+    }
+
 };
 
 #endif /*_FORTE_BYTE_H_*/
diff --git a/src/core/datatypes/forte_dword.h b/src/core/datatypes/forte_dword.h
index 6a2895c..89440e3 100644
--- a/src/core/datatypes/forte_dword.h
+++ b/src/core/datatypes/forte_dword.h
@@ -1,5 +1,6 @@
 /*******************************************************************************
  * Copyright (c) 2005 - 2013 Profactor GmbH, ACIN
+ *               2020 Johannes Kepler University Linz
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License 2.0 which is available at
  * http://www.eclipse.org/legal/epl-2.0.
@@ -10,11 +11,15 @@
  *    Thomas Strasser, Ingomar Müller, Alois Zoitl, Gerhard Ebenhofer
  *    Ingo Hegny, Monika Wenger
  *      - initial implementation and rework communication infrastructure
+ *    Ernst Blecha - add multibit partial access
  *******************************************************************************/
 #ifndef _FORTE_DWORD_H_
 #define _FORTE_DWORD_H_
 
 #include "forte_any_bit.h"
+#include "forte_bool.h"
+#include "forte_byte.h"
+#include "forte_word.h"
 #include <limits>
 
 /*!\ingroup COREDTS CIEC_DWORD represents the dword data type according to IEC 61131.
@@ -76,6 +81,14 @@
     virtual EDataTypeID getDataTypeID() const{
       return CIEC_ANY::e_DWORD;
     }
+
+    /*! \brief Partial access within a CIEC_DWORD (e.g. [DWORD].partial<CIEC_BOOL,1>())
+     *
+     */
+    template <class T, size_t paIndex> PARTIAL_ACCESS<T, CIEC_DWORD, paIndex> partial(){
+      return PARTIAL_ACCESS<T,CIEC_DWORD, paIndex>(*this);
+    }
+
 };
 
 #endif /*_FORTE_DWORD_H_*/
diff --git a/src/core/datatypes/forte_lword.h b/src/core/datatypes/forte_lword.h
index 83ce4fc..87c55ec 100644
--- a/src/core/datatypes/forte_lword.h
+++ b/src/core/datatypes/forte_lword.h
@@ -1,6 +1,6 @@
 /*******************************************************************************
  * Copyright (c) 2010 - 2013 ACIN
- *
+ *               2020 Johannes Kepler University Linz
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License 2.0 which is available at
  * http://www.eclipse.org/legal/epl-2.0.
@@ -10,11 +10,16 @@
  * Contributors:
  *    Martin Melik Merkiumians, Alois Zoitl, Monika Wenger
  *      - initial implementation and rework communication infrastructure
+ *    Ernst Blecha - add multibit partial access
   *******************************************************************************/
 #ifndef _FORTE_LWORD_H_
 #define _FORTE_LWORD_H_
 
 #include "forte_any_bit.h"
+#include "forte_bool.h"
+#include "forte_byte.h"
+#include "forte_word.h"
+#include "forte_dword.h"
 #include <limits>
 
 #ifdef FORTE_USE_64BIT_DATATYPES
@@ -78,6 +83,14 @@
     virtual EDataTypeID getDataTypeID() const{
       return CIEC_ANY::e_LWORD;
     }
+
+    /*! \brief Partial access within a CIEC_LWORD (e.g. [LWORD].partial<CIEC_BOOL,1>())
+     *
+     */
+    template <class T, size_t paIndex> PARTIAL_ACCESS<T, CIEC_LWORD, paIndex> partial(){
+      return PARTIAL_ACCESS<T,CIEC_LWORD, paIndex>(*this);
+    }
+
 };
 
 #endif
diff --git a/src/core/datatypes/forte_word.h b/src/core/datatypes/forte_word.h
index b2399ab..2fe41c3 100644
--- a/src/core/datatypes/forte_word.h
+++ b/src/core/datatypes/forte_word.h
@@ -1,5 +1,6 @@
 /*******************************************************************************
  * Copyright (c) 2005 - 2013 Profactor GmbH, ACIN
+ *               2020 Johannes Kepler University Linz
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License 2.0 which is available at
  * http://www.eclipse.org/legal/epl-2.0.
@@ -10,11 +11,14 @@
  *    Thomas Strasser, Ingomar Müller, Alois Zoitl, Gerhard Ebenhofer, Ingo Hegny,
  *    Monika Wenger
  *      - initial implementation and rework communication infrastructure
+ *    Ernst Blecha - add multibit partial access
  *******************************************************************************/
 #ifndef _FORTE_WORD_H_
 #define _FORTE_WORD_H_
 
 #include "forte_any_bit.h"
+#include "forte_bool.h"
+#include "forte_byte.h"
 #include <limits>
 
 /*!\ingroup COREDTS CIEC_WORD represents the word data type according to IEC 61131.
@@ -76,6 +80,14 @@
     virtual EDataTypeID getDataTypeID() const{
       return CIEC_ANY::e_WORD;
     }
+
+    /*! \brief Partial access within a CIEC_WORD (e.g. [WORD].partial<CIEC_BOOL,1>())
+     *
+     */
+    template <class T, size_t paIndex> PARTIAL_ACCESS<T, CIEC_WORD, paIndex> partial(){
+      return PARTIAL_ACCESS<T,CIEC_WORD, paIndex>(*this);
+    }
+
 };
 
 #endif /*_FORTE_WORD_H_*/
diff --git a/src/core/lua/luacfbtypeentry.cpp b/src/core/lua/luacfbtypeentry.cpp
index 66be122..6b3f99e 100644
--- a/src/core/lua/luacfbtypeentry.cpp
+++ b/src/core/lua/luacfbtypeentry.cpp
@@ -50,7 +50,7 @@
   }
 
   bool getFBParameter(SCFB_FBParameter& paDef, CLuaEngine* paLuaEngine, int paIndex) {
-    paDef.m_acParamValue = paLuaEngine->getField<char *, &CLuaEngine::getString>(paIndex, "paramValue");
+    paDef.m_acParamValue = paLuaEngine->getField<const char *, &CLuaEngine::getString>(paIndex, "paramValue");
     paDef.m_nDINameID = paLuaEngine->getField<CStringDictionary::TStringId, &CLuaEngine::getStringId>(paIndex, "diNameID");
     paDef.m_nFBNum = paLuaEngine->getField<int, &CLuaEngine::getInteger<int> >(paIndex, "fbNum");
     if(paDef.m_nDINameID == CStringDictionary::scm_nInvalidStringId) {
diff --git a/src/core/lua/luaengine.cpp b/src/core/lua/luaengine.cpp
index c789cf0..c9fd842 100644
--- a/src/core/lua/luaengine.cpp
+++ b/src/core/lua/luaengine.cpp
@@ -236,10 +236,10 @@
       *static_cast<CIEC_LREAL*>(paValue) = static_cast<TForteDFloat>(lua_tonumber(paLuaState, paIndex));

       break;

     case CIEC_ANY::e_STRING:

-      *static_cast<CIEC_STRING*>(paValue) = strdup(lua_tostring(paLuaState, paIndex));

+      *static_cast<CIEC_STRING*>(paValue) = lua_tostring(paLuaState, paIndex);

       break;

     case CIEC_ANY::e_WSTRING:

-      *static_cast<CIEC_WSTRING*>(paValue) = strdup(lua_tostring(paLuaState, paIndex));

+      *static_cast<CIEC_WSTRING*>(paValue) = lua_tostring(paLuaState, paIndex);

       break;

     case CIEC_ANY::e_ARRAY:

       return luaGetArray(paLuaState, static_cast<CIEC_ARRAY*>(paValue), paIndex);

diff --git a/src/core/lua/luaengine.h b/src/core/lua/luaengine.h
index 9ccf162..3251b50 100644
--- a/src/core/lua/luaengine.h
+++ b/src/core/lua/luaengine.h
@@ -143,8 +143,8 @@
     lua_pushstring(luaState, value);

   }

 

-  char* getString(int index) {

-    return strdup(lua_tostring(luaState, index));

+  const char* getString(int index) {

+    return lua_tostring(luaState, index);

   }

 

   void pushStringId(CStringDictionary::TStringId value) {

diff --git a/src/core/monitoring.cpp b/src/core/monitoring.cpp
index cdf4bef..534518d 100644
--- a/src/core/monitoring.cpp
+++ b/src/core/monitoring.cpp
@@ -397,7 +397,7 @@
   switch(paDataValue.getDataTypeID()){
     case CIEC_ANY::e_WSTRING:
     case CIEC_ANY::e_STRING:
-      retVal = forte::core::util::getExtraSizeForEscapedChars(static_cast<const CIEC_WSTRING&>(paDataValue).getValue());
+      retVal = forte::core::util::getExtraSizeForXMLEscapedChars(static_cast<const CIEC_WSTRING&>(paDataValue).getValue());
      break;
     case CIEC_ANY::e_ARRAY:
       retVal = getExtraSizeForEscapedCharsArray(static_cast<const CIEC_ARRAY&>(paDataValue));
@@ -419,7 +419,7 @@
     case CIEC_ANY::e_WSTRING:
     case CIEC_ANY::e_STRING:
       for(size_t i = 0; i < paDataValue.size(); i++) {
-        retVal += forte::core::util::getExtraSizeForEscapedChars(static_cast<const CIEC_WSTRING*>(paDataValue[static_cast<TForteUInt16>(i)])->getValue()) + 10; //for opening and closing quotes or apos
+        retVal += forte::core::util::getExtraSizeForXMLEscapedChars(static_cast<const CIEC_WSTRING*>(paDataValue[static_cast<TForteUInt16>(i)])->getValue()) + 10; //for opening and closing quotes or apos
       }
       break;
     case CIEC_ANY::e_STRUCT:
@@ -442,7 +442,7 @@
     switch(members[i].getDataTypeID()){
       case CIEC_ANY::e_WSTRING:
       case CIEC_ANY::e_STRING:
-        retVal += forte::core::util::getExtraSizeForEscapedChars(static_cast<const CIEC_WSTRING&>(members[i]).getValue()) + 10; //for opening and closing quotes or apos
+        retVal += forte::core::util::getExtraSizeForXMLEscapedChars(static_cast<const CIEC_WSTRING&>(members[i]).getValue()) + 10; //for opening and closing quotes or apos
         break;
       case CIEC_ANY::e_ARRAY:
         retVal += getExtraSizeForEscapedCharsArray(static_cast<const CIEC_ARRAY&>(members[i]));
diff --git a/src/core/resource.cpp b/src/core/resource.cpp
index 77bdc1f..e07d67a 100644
--- a/src/core/resource.cpp
+++ b/src/core/resource.cpp
@@ -262,7 +262,7 @@
     switch (var->getDataTypeID()){
       case CIEC_ANY::e_WSTRING:
       case CIEC_ANY::e_STRING:{
-        size_t bufferSize = var->getToStringBufferSize() + forte::core::util::getExtraSizeForEscapedChars(static_cast<CIEC_WSTRING&>(*var).getValue());
+        size_t bufferSize = var->getToStringBufferSize() + forte::core::util::getExtraSizeForXMLEscapedChars(static_cast<CIEC_WSTRING&>(*var).getValue());
         nUsedChars = static_cast<CIEC_WSTRING&>(*var).toUTF8(paValue.getValue(), bufferSize, false);
         if(bufferSize != var->getToStringBufferSize() && 0 < nUsedChars) { //avoid re-running on strings which were already proven not to have any special character
           nUsedChars += static_cast<int>(forte::core::util::transformNonEscapedToEscapedXMLText(paValue.getValue()));
diff --git a/src/core/utils/CMakeLists.txt b/src/core/utils/CMakeLists.txt
index 591fc0d..cb5cfa0 100644
--- a/src/core/utils/CMakeLists.txt
+++ b/src/core/utils/CMakeLists.txt
@@ -18,4 +18,4 @@
 forte_add_sourcefile_h(anyhelper.h staticassert.h singlet.h criticalregion.h)

 forte_add_sourcefile_h(fortearray.h fixedcapvector.h)    

 

-forte_add_sourcefile_hcpp(string_utils parameterParser)

+forte_add_sourcefile_hcpp(string_utils parameterParser configFileParser)

diff --git a/src/core/utils/configFileParser.cpp b/src/core/utils/configFileParser.cpp
new file mode 100644
index 0000000..b5abd1e
--- /dev/null
+++ b/src/core/utils/configFileParser.cpp
@@ -0,0 +1,99 @@
+/*******************************************************************************
+ * Copyright (c) 2019 fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "configFileParser.h"
+#include "../../arch/devlog.h"
+#include "parameterParser.h"
+
+CConfigFileParser::CConfigFileParser(std::string &paFileLocation) {
+  mConfigFile = fopen(paFileLocation.c_str(), "r");
+  if(0 != mConfigFile) {
+    DEVLOG_INFO("[CConfigFileParser]: Configuration file %s opened\n", paFileLocation.c_str());
+  } else {
+    DEVLOG_ERROR("[CConfigFileParser]: Could not open configuration file %s\n", paFileLocation.c_str());
+  }
+}
+
+CConfigFileParser::~CConfigFileParser() {
+  if(0 != mConfigFile) {
+    DEVLOG_INFO("[CConfigFileParser]: Closing configuration file\n");
+    fclose(mConfigFile);
+  }
+}
+
+CConfigFileParser::ParseResult CConfigFileParser::parseNextLine(std::pair<std::string, std::string> &paResult) {
+  ParseResult retVal = eFileNotOpened;
+  if(mConfigFile) {
+    char lineBuf[scmLineBuffer];
+    if(0 != fgets(lineBuf, scmLineBuffer, mConfigFile)) {
+      if(0 == strcmp(lineBuf, "\n")) {
+        retVal = eEmptyLine;
+      } else {
+        CParameterParser lineParser(lineBuf, scmSeparator, scmNumberOfElementsInLine);
+        if(scmNumberOfElementsInLine == lineParser.parseParameters()) {
+          paResult.first = lineParser[0];
+          paResult.second = lineParser[1];
+          retVal = eOk;
+        } else {
+          retVal = eWrongLine;
+          DEVLOG_ERROR("[CConfigFileParser]: The line %s is wrongly formated\n", lineBuf);
+        }
+      }
+    } else {
+      if(feof(mConfigFile)) {
+        retVal = eEndOfFile;
+      } else {
+        retVal = eInternalError;
+        DEVLOG_ERROR("[CConfigFileParser]: There was an internal problem reading the configuration file\n");
+      }
+    }
+  } else {
+    DEVLOG_ERROR("[CConfigFileParser]: Cannot parse next line because the configuration file is not opened\n");
+  }
+
+  return retVal;
+}
+
+bool CConfigFileParser::lookForKeyValueInFile(CConfigFileParser &paFileParse, std::string &paKey, std::string &paValue, bool &paFound) {
+
+  bool retVal = true;
+  bool moreLinesToRead = true;
+  paFound = false;
+
+  while(moreLinesToRead) {
+    std::pair < std::string, std::string > resultPair;
+
+    switch(paFileParse.parseNextLine(resultPair)){
+      case CConfigFileParser::eOk:
+        if(0 == resultPair.first.compare(paKey) && 0 == resultPair.second.compare(paValue)) {
+          paFound = true;
+          moreLinesToRead = false;
+        }
+        break;
+      case CConfigFileParser::eEmptyLine:
+        //do nothing, keep reading
+        break;
+      case CConfigFileParser::eEndOfFile:
+        moreLinesToRead = false;
+        break;
+      case CConfigFileParser::eWrongLine:
+      case CConfigFileParser::eFileNotOpened:
+      case CConfigFileParser::eInternalError:
+      default:
+        retVal = false;
+        moreLinesToRead = false;
+        break;
+    }
+  }
+
+  return retVal;
+}
diff --git a/src/core/utils/configFileParser.h b/src/core/utils/configFileParser.h
new file mode 100644
index 0000000..b143c46
--- /dev/null
+++ b/src/core/utils/configFileParser.h
@@ -0,0 +1,80 @@
+/*******************************************************************************
+ * Copyright (c) 2019 fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef SRC_CORE_UTILS_CONFIGFILEPARSER_H_
+#define SRC_CORE_UTILS_CONFIGFILEPARSER_H_
+
+#include <string>
+#include <stdio.h>
+#include <stdlib.h>
+#include <utility> // needed for std::pair
+
+/**
+ * Helper class to parse configuration files. For now, all lines must be formed as key=value or empty lines
+ */
+class CConfigFileParser {
+  public:
+
+    /**
+     * Possible results that can be returned when parsing a line
+     */
+    enum ParseResult {
+      eOk, //!< eOk No problem occurred
+      eEmptyLine, //!< eEmptyLine An empty line was found
+      eEndOfFile, //!< eEndOfFile The end of the file was found
+      eWrongLine, //!< eWrongLine A wrongly formed line was found
+      eFileNotOpened, //!< eFileNotOpened The file is not opened
+      eInternalError, //!< eInternalError An internal error occurred
+    };
+
+    /**
+     * Constructor
+     * @param paFileLocation location of the configuration file to be parsed
+     */
+    explicit CConfigFileParser(std::string &paFileLocation);
+
+    /**
+     * Destructor
+     */
+    virtual ~CConfigFileParser();
+
+    /**
+     * Parse the next line of the file. The key and value are stored in the passed parameter
+     * @param paResult Place to store the key and value
+     * @return Result of the parsing
+     */
+    ParseResult parseNextLine(std::pair<std::string, std::string> &paResult);
+
+    /**
+     * Looks for a key and value in the file that matches the values passed as parameter
+     * @param paFileParse Parser object used to look for the key/value
+     * @param paKey Key to look for in the file
+     * @param paValue Value to look for
+     * @param paFound True if the key/value was found, false otherwise
+     * @return True if no error occurred, false otherwise. If the key is found but no the value, it's still a valid result and paFound is false
+     */
+    static bool lookForKeyValueInFile(CConfigFileParser &paFileParse, std::string &paKey, std::string &paValue, bool &paFound);
+
+  private:
+
+    /**
+     * File to be parsed
+     */
+    FILE *mConfigFile;
+
+    static const size_t scmLineBuffer = 256;
+    static const char scmSeparator = '=';
+    static const size_t scmNumberOfElementsInLine = 2;
+
+};
+
+#endif /* SRC_CORE_UTILS_CONFIGFILEPARSER_H_ */
diff --git a/src/core/utils/forte_constants.h b/src/core/utils/forte_constants.h
index 98cef11..310243c 100644
--- a/src/core/utils/forte_constants.h
+++ b/src/core/utils/forte_constants.h
@@ -19,9 +19,9 @@
 namespace forte {
   namespace core {
     namespace constants {
-      const CIEC_TIME::TValueType cMillisecondsPerSecond = 1E3;
-      const CIEC_TIME::TValueType cMicrosecondsPerSecond = 1E6;
-      const CIEC_TIME::TValueType cNanosecondsPerSecond = 1E9;
+      const CIEC_TIME::TValueType cMillisecondsPerSecond = 1000 /* 1E3 */;
+      const CIEC_TIME::TValueType cMicrosecondsPerSecond = 1000000 /* 1E6 */;
+      const CIEC_TIME::TValueType cNanosecondsPerSecond = 1000000000 /* 1E9 */;
     } /* namespace constants */
   } /* namespace core */
 } /* namespace forte */
diff --git a/src/core/utils/string_utils.cpp b/src/core/utils/string_utils.cpp
index 6c13c23..9140789 100644
--- a/src/core/utils/string_utils.cpp
+++ b/src/core/utils/string_utils.cpp
@@ -203,12 +203,12 @@
 
 #endif
 
-size_t forte::core::util::getExtraSizeForEscapedChars(const char* paString){
+size_t forte::core::util::getExtraSizeForXMLEscapedChars(const char* paString){
   size_t retVal = 0;
   while(0 != *paString){
-    for(size_t i = 0; i < sizeof(forte::core::util::scReplacementForEscapedCharacters) / sizeof(const char* const); i++){
-      if(forte::core::util::scEscapedCharacters[i] == *paString){
-        retVal += strlen(forte::core::util::scReplacementForEscapedCharacters[i]) - 1;
+    for(size_t i = 0; i < sizeof(forte::core::util::scReplacementForXMLEscapedCharacters) / sizeof(const char* const); i++){
+      if(forte::core::util::scXMLEscapedCharacters[i] == *paString){
+        retVal += strlen(forte::core::util::scReplacementForXMLEscapedCharacters[i]) - 1;
         break;
       }
     }
@@ -225,9 +225,9 @@
   while(paString <= runner){
     const char* toCopy = 0;
 
-    for(size_t i = 0; i < sizeof(forte::core::util::scReplacementForEscapedCharacters) / sizeof(const char* const ); i++){
-      if(forte::core::util::scEscapedCharacters[i] == *runner){
-        toCopy = forte::core::util::scReplacementForEscapedCharacters[i];
+    for(size_t i = 0; i < sizeof(forte::core::util::scReplacementForXMLEscapedCharacters) / sizeof(const char* const ); i++){
+      if(forte::core::util::scXMLEscapedCharacters[i] == *runner){
+        toCopy = forte::core::util::scReplacementForXMLEscapedCharacters[i];
         break;
       }
     }
@@ -252,10 +252,10 @@
       char toCopy = 0;
       size_t toMove = 0;
 
-      for(size_t i = 0; i < sizeof(forte::core::util::scReplacementForEscapedCharacters) / sizeof(const char* const ); i++){
-        if(0 == strncmp(runner, forte::core::util::scReplacementForEscapedCharacters[i], strlen(forte::core::util::scReplacementForEscapedCharacters[i]))){
-          toCopy = forte::core::util::scEscapedCharacters[i];
-          toMove = strlen(forte::core::util::scReplacementForEscapedCharacters[i]);
+      for(size_t i = 0; i < sizeof(forte::core::util::scReplacementForXMLEscapedCharacters) / sizeof(const char* const ); i++){
+        if(0 == strncmp(runner, forte::core::util::scReplacementForXMLEscapedCharacters[i], strlen(forte::core::util::scReplacementForXMLEscapedCharacters[i]))){
+          toCopy = forte::core::util::scXMLEscapedCharacters[i];
+          toMove = strlen(forte::core::util::scReplacementForXMLEscapedCharacters[i]);
           break;
         }
       }
@@ -274,3 +274,57 @@
   }
   return retVal;
 }
+
+char * forte::core::util::lookForNonEscapedChar(char **paString, char paChar, char paEscapingChar) {
+  char *foundChar = 0;
+  char* initialPosition = *paString;
+  while(!foundChar && '\0' != **paString) {
+    foundChar = strchr(*paString, paChar);
+    if(0 != foundChar) {
+      *paString = foundChar;
+      if(isEscaped(foundChar, initialPosition, paEscapingChar)) {
+        while('\0' != *foundChar) { //move the rest of the string one char back
+          *(foundChar - 1) = *foundChar;
+          foundChar++;
+        }
+        *(foundChar - 1) = *foundChar; //move also the ending \0
+        foundChar = 0; //reset to keep looking
+      } else {
+        *foundChar = '\0';
+        (*paString)++;
+      }
+    } else { //there's no paChar in the string
+      break;
+    }
+  }
+  return foundChar;
+}
+
+bool forte::core::util::isEscaped(char *paChar, char *paBeginLimit, char paEscapingChar) {
+  size_t noOfScapingSigns = 0;
+  while(paBeginLimit != paChar) { //count the amount of \ signs before paChar to know if the \ signs was also escaped.
+    paChar--;
+    if(paEscapingChar == *paChar) {
+      noOfScapingSigns++;
+    } else {
+      break;
+    }
+  }
+
+  return (noOfScapingSigns % 2); //an even number of \ (or zero) means paChar was not escaped
+}
+
+void forte::core::util::removeEscapedSigns(char **paString, char paEscapingChar) {
+  char *runner = *paString;
+  while('\0' != *runner) {
+    if(paEscapingChar == *runner && paEscapingChar == *(runner + 1)) {
+      char *copier = runner + 1;
+      while('\0' != *copier) {
+        *(copier - 1) = *copier;
+        copier++;
+      }
+      *(copier - 1) = *copier; //move also the ending \0
+    }
+    runner++;
+  }
+}
diff --git a/src/core/utils/string_utils.h b/src/core/utils/string_utils.h
index f303e17..735b725 100644
--- a/src/core/utils/string_utils.h
+++ b/src/core/utils/string_utils.h
@@ -50,16 +50,16 @@
 #endif
 
 
-      const char scEscapedCharacters[] = { '"', '\'', '&', '<', '>'};
+      const char scXMLEscapedCharacters[] = { '"', '\'', '&', '<', '>'};
 
-      const char* const scReplacementForEscapedCharacters[sizeof(scEscapedCharacters)] = {"&quot;", "&apos;", "&amp;",  "&lt;", "&gt;"};
+      const char* const scReplacementForXMLEscapedCharacters[sizeof(scXMLEscapedCharacters)] = {"&quot;", "&apos;", "&amp;",  "&lt;", "&gt;"};
 
       /**
        * Gets the extra space needed in a string for escaped chars.
        * @param paString The null ended C-string that's being checked for chars that need to be escaped
        * @return Extra number of chars needed to allocated the chars once they are escaped
        */
-      size_t getExtraSizeForEscapedChars(const char* const paString);
+      size_t getExtraSizeForXMLEscapedChars(const char* const paString);
 
       /**
        * Transforms a string with escaped chars (&apos;) into a string with the original chars (').
@@ -75,6 +75,11 @@
        */
       size_t transformNonEscapedToEscapedXMLText(char* const paString);
 
+
+      char *lookForNonEscapedChar(char **paString, char paChar, char paEscapingChar);
+      bool isEscaped(char *paChar, char *paBeginLimit, char paEscapingChar);
+      void removeEscapedSigns(char **paString, char paEscapingChar);
+
     }
   }
 }
diff --git a/src/modules/HTTP/CMakeLists.txt b/src/modules/HTTP/CMakeLists.txt
index 10b6ba8..644fec6 100644
--- a/src/modules/HTTP/CMakeLists.txt
+++ b/src/modules/HTTP/CMakeLists.txt
@@ -21,8 +21,12 @@
   forte_add_handler(CHTTP_Handler http_handler)
   forte_add_sourcefile_hcpp(http_handler)
   
+      
   SET(FORTE_COM_HTTP_LISTENING_PORT "80" CACHE STRING "HTTP Listening Port")
   
   forte_add_custom_configuration("#define FORTE_COM_HTTP_LISTENING_PORT ${FORTE_COM_HTTP_LISTENING_PORT}")
+  forte_add_custom_configuration("extern TForteUInt16 gHTTPServerPort\;")
+  
+  forte_add_custom_configuration("#cmakedefine FORTE_COM_HTTP")
   
 endif(FORTE_COM_HTTP)
diff --git a/src/modules/HTTP/http_handler.cpp b/src/modules/HTTP/http_handler.cpp
index fdc46d5..e228002 100644
--- a/src/modules/HTTP/http_handler.cpp
+++ b/src/modules/HTTP/http_handler.cpp
@@ -23,6 +23,8 @@
 
 using namespace forte::com_infra;
 
+TForteUInt16 gHTTPServerPort = FORTE_COM_HTTP_LISTENING_PORT;
+
 CIPComSocketHandler::TSocketDescriptor CHTTP_Handler::smServerListeningSocket = CIPComSocketHandler::scmInvalidSocketDescriptor;
 
 char CHTTP_Handler::sRecvBuffer[];
@@ -152,7 +154,23 @@
     CIEC_STRING path;
     CSinglyLinkedList<CIEC_STRING> parameterNames;
     CSinglyLinkedList<CIEC_STRING> parameterValues;
-    if(CHttpParser::parseGetRequest(path, parameterNames, parameterValues, sRecvBuffer)) {
+    bool noParsingError = false;
+    switch(CHttpParser::getTypeOfRequest(sRecvBuffer)){
+      case CHttpComLayer::ERequestType::e_GET:
+        noParsingError = CHttpParser::parseGetRequest(path, parameterNames, parameterValues, sRecvBuffer);
+        break;
+      case CHttpComLayer::ERequestType::e_POST:
+      case CHttpComLayer::ERequestType::e_PUT: {
+        CIEC_STRING content;
+        noParsingError = CHttpParser::parsePutPostRequest(path, content, sRecvBuffer);
+        parameterValues.pushBack(content);
+        break;
+      }
+      default:
+        break;
+    }
+
+    if(noParsingError) {
       for(CSinglyLinkedList<HTTPServerWaiting *>::Iterator iter = mServerLayers.begin(); iter != mServerLayers.end(); ++iter) {
         if((*iter)->mPath == path) {
           (*iter)->mSockets.pushBack(paSocket);
@@ -164,7 +182,7 @@
         }
       }
     } else {
-      DEVLOG_ERROR("[HTTP Handler] Wrong HTTP Get request\n");
+      DEVLOG_ERROR("[HTTP Handler] Wrong HTTP request\n");
     }
 
     if(!found) {
@@ -368,12 +386,12 @@
 void CHTTP_Handler::openHTTPServer() {
   if(CIPComSocketHandler::scmInvalidSocketDescriptor == smServerListeningSocket) {
     char address[] = "127.0.0.1";
-    smServerListeningSocket = CIPComSocketHandler::openTCPServerConnection(address, FORTE_COM_HTTP_LISTENING_PORT);
+    smServerListeningSocket = CIPComSocketHandler::openTCPServerConnection(address, gHTTPServerPort);
     if(CIPComSocketHandler::scmInvalidSocketDescriptor != smServerListeningSocket) {
       getExtEvHandler<CIPComSocketHandler>().addComCallback(smServerListeningSocket, this);
-      DEVLOG_INFO("[HTTP Handler] HTTP server listening on port %d\n", FORTE_COM_HTTP_LISTENING_PORT);
+      DEVLOG_INFO("[HTTP Handler] HTTP server listening on port %u\n", gHTTPServerPort);
     } else {
-      DEVLOG_ERROR("[HTTP Handler] Couldn't start HTTP server on port %d\n", FORTE_COM_HTTP_LISTENING_PORT);
+      DEVLOG_ERROR("[HTTP Handler] Couldn't start HTTP server on port %u\n", gHTTPServerPort);
     }
   }
 }
diff --git a/src/modules/HTTP/httplayer.cpp b/src/modules/HTTP/httplayer.cpp
index bddbad8..eb0ed35 100644
--- a/src/modules/HTTP/httplayer.cpp
+++ b/src/modules/HTTP/httplayer.cpp
@@ -302,25 +302,25 @@
   return mInterruptResp;
 }
 
-EComResponse forte::com_infra::CHttpComLayer::recvServerData(CSinglyLinkedList<CIEC_STRING>& paParameterNames,
-    CSinglyLinkedList<CIEC_STRING>& paParameterValues) {
+EComResponse forte::com_infra::CHttpComLayer::recvServerData(CSinglyLinkedList<CIEC_STRING>&, CSinglyLinkedList<CIEC_STRING>& paParameterValues) {
+  //for now, the parameterNames are not taken in account, and the parameters are put in the same order they arrived
+
   mInterruptResp = e_Nothing;
   bool failed = false;
   if(0 < m_poFb->getNumSD()) {
     unsigned int noOfParameters = 0;
-    for(CSinglyLinkedList<CIEC_STRING>::Iterator iter = paParameterNames.begin(); iter != paParameterNames.end(); ++iter) {
+    for(CSinglyLinkedList<CIEC_STRING>::Iterator iter = paParameterValues.begin(); iter != paParameterValues.end(); ++iter) {
       noOfParameters++;
     }
 
     if(noOfParameters == m_poFb->getNumRD()) {
       noOfParameters = 0;
       for(CSinglyLinkedList<CIEC_STRING>::Iterator iter = paParameterValues.begin(); iter != paParameterValues.end(); ++iter) {
-        m_poFb->getRDs()[noOfParameters].setValue(*iter);
+        m_poFb->getRDs()[noOfParameters++].setValue(*iter);
       }
-      //TODO: How do we handle the names? For now the parameters are put in the same order they arrived
     } else {
       DEVLOG_ERROR("[HTTP Layer] FB with path %s received a number of parameters of %u, while it has %u SDs\n", mPath.getValue(),
-        static_cast<TForteUInt16>(noOfParameters), m_poFb->getNumSD());
+        static_cast<TForteUInt16>(noOfParameters), m_poFb->getNumRD());
       failed = true;
     }
   }
diff --git a/src/modules/HTTP/httpparser.cpp b/src/modules/HTTP/httpparser.cpp
index db9d3c8..06385cd 100644
--- a/src/modules/HTTP/httpparser.cpp
+++ b/src/modules/HTTP/httpparser.cpp
@@ -35,7 +35,7 @@
 bool CHttpParser::changePutPostData(CIEC_STRING& paDest, const CIEC_STRING& paData) {
   char* helperChar = strstr(paDest.getValue(), "length: ");
   if(0 != helperChar) {
-    helperChar += 8;
+    helperChar += sizeof("length: ") - 1;
     *helperChar = '\0';
     paDest = paDest.getValue(); //will shrink the length of the string to the new ending
     char contentLength[scmMaxLengthOfContent];
@@ -54,7 +54,7 @@
   if(CHttpParser::getHttpResponseCode(paResponseCode, paSrc)) {
     char* helperChar = strstr(paSrc, "\r\n\r\n"); // Extract data from HTTP response char
     if(0 != helperChar) {
-      helperChar += 4;
+      helperChar += sizeof("\r\n\r\n") - 1;
       paBody = helperChar;
     } else { // Empty response received
       DEVLOG_INFO("[HTTP Parser] Empty content response received\n");
@@ -67,28 +67,73 @@
 
 bool forte::com_infra::CHttpParser::parseGetRequest(CIEC_STRING& paPath, CSinglyLinkedList<CIEC_STRING>& paParameterNames,
     CSinglyLinkedList<CIEC_STRING>& paParameterValues, char* paData) {
-  char* helperChar = strstr(paData, "GET ");
-  if(helperChar != 0) {
-    helperChar += 4;
-    char* endOfPath = strstr(helperChar, " ");
+  if(0 == strncmp(paData, "GET ", 4)) {
+    paData = paData + 4;
+
+    char* endOfPath = strstr(paData, " ");
     if(endOfPath != 0) {
       *endOfPath = '\0';
-      char* startOfParameters = strstr(paData, "?");
+      char* startOfParameters = strstr(paData + 1, "?");
       if(startOfParameters != 0) {
         *startOfParameters = '\0';
         startOfParameters++;
         parseGETParameters(startOfParameters, paParameterNames, paParameterValues);
       }
-      paPath = helperChar;
+      paPath = paData;
     } else {
-      DEVLOG_ERROR("[HTTP Parser] Invalid HTTP Get request. No space after path found\n");
+      DEVLOG_ERROR("[HTTP Parser] Invalid HTTP Get request. No GET string found\n");
       return false;
     }
-    return true;
+
   } else {
-    DEVLOG_ERROR("[HTTP Parser] Invalid HTTP Get request. No GET string found\n");
+    DEVLOG_ERROR("[HTTP Parser] Invalid HTTP Get request. No space after path found\n");
     return false;
   }
+  return true;
+}
+
+bool forte::com_infra::CHttpParser::parsePutPostRequest(CIEC_STRING& paPath, CIEC_STRING &paContent, char* paData) {
+  if(0 == strncmp(paData, "PUT ", 4)) {
+    paData += sizeof("PUT ") - 1;
+  } else if(0 == strncmp(paData, "POST ", 5)) {
+    paData += sizeof("POST ") - 1;
+  } else {
+    DEVLOG_ERROR("[HTTP Parser] Invalid HTTP PUT/POST request. No PUT/POST string found\n");
+    return false;
+  }
+
+  char* endOfPath = strstr(paData, " ");
+  if(endOfPath != 0) {
+    *endOfPath = '\0';
+    paPath = paData;
+    paData = strstr(endOfPath + 1, "\r\n\r\n");
+    if(paData != 0) {
+      paData += sizeof("\r\n\r\n") - 1;
+      paContent = paData;
+    } else {
+      DEVLOG_ERROR("[HTTP Parser] Invalid HTTP PUT/POST request. No content was found\n");
+      return false;
+    }
+
+  } else {
+    DEVLOG_ERROR("[HTTP Parser] Invalid HTTP PUT/POST request. No space after path found\n");
+    return false;
+  }
+  return true;
+}
+
+
+CHttpComLayer::ERequestType forte::com_infra::CHttpParser::getTypeOfRequest(const char* paRequest) {
+  if(0 == strncmp(paRequest, "GET ", 4)) {
+    return CHttpComLayer::ERequestType::e_GET;
+  } else if(0 == strncmp(paRequest, "PUT ", 4)) {
+    return CHttpComLayer::ERequestType::e_PUT;
+  } else if(0 == strncmp(paRequest, "POST ", 5)) {
+    return CHttpComLayer::ERequestType::e_POST;
+  } else {
+    DEVLOG_ERROR("[HTTP Parser] Invalid HTTP request\n");
+    return CHttpComLayer::ERequestType::e_NOTSET;
+  }
 }
 
 void forte::com_infra::CHttpParser::createResponse(CIEC_STRING& paDest, const CIEC_STRING& paResult, const CIEC_STRING& paContentType,
diff --git a/src/modules/HTTP/httpparser.h b/src/modules/HTTP/httpparser.h
index ca1ff7f..f77b3a2 100644
--- a/src/modules/HTTP/httpparser.h
+++ b/src/modules/HTTP/httpparser.h
@@ -73,6 +73,15 @@
             char* paData);
 
         /**
+         * Parse a PUT/POST request received as a server
+         * @param paPath place to store the received path
+         * @param paContent place to store the content of the request
+         * @param paData the received PUT/POST  request
+         * @return true if no error happened, false otherwise
+         */
+        static bool parsePutPostRequest(CIEC_STRING& paPath, CIEC_STRING &paContent, char* paData);
+
+        /**
          * Create a HTTP response
          * @param paDest
          * @param paResult the status line of the response
@@ -81,6 +90,13 @@
          */
         static void createResponse(CIEC_STRING& paDest, const CIEC_STRING& paResult, const CIEC_STRING& paContentType, const CIEC_STRING& paData);
 
+        /**
+         * Look in the request for its type
+         * @param paRequest request to look into
+         * @return Type of request
+         */
+        static CHttpComLayer::ERequestType getTypeOfRequest(const char* paRequest);
+
       private:
         CHttpParser();
         virtual ~CHttpParser();
diff --git a/src/modules/arrowhead/CMakeLists.txt b/src/modules/arrowhead/CMakeLists.txt
index 793bd85..ae52e1c 100644
--- a/src/modules/arrowhead/CMakeLists.txt
+++ b/src/modules/arrowhead/CMakeLists.txt
@@ -20,7 +20,7 @@
   add_subdirectory(common)
   add_subdirectory(orchestrator)
   add_subdirectory(serviceRegistry)
-  add_subdirectory(SystemTests)
+  add_subdirectory(eventHandler)
 ENDIF(FORTE_MODULE_Arrowhead)
 
 
diff --git a/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.cpp b/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.cpp
index bb52914..5736c4c 100644
--- a/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.cpp
+++ b/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.cpp
@@ -21,10 +21,18 @@
 void ArrowheadJSONHelper::transformANYToJSON(const CIEC_ANY& paSource, CIEC_STRING& paResult) {
   switch(paSource.getDataTypeID()){
     case CIEC_ANY::e_STRUCT:
-      if(g_nStringIdArrowheadService == static_cast<const CIEC_STRUCT&>(paSource).getStructTypeNameID()) {
+      if(g_nStringIdArrowheadSystem == static_cast<const CIEC_STRUCT&>(paSource).getStructTypeNameID()) {
+        transformSystemToJSON(const_cast<CIEC_ArrowheadSystem&>(static_cast<const CIEC_ArrowheadSystem&>(paSource)), paResult);
+      } else if(g_nStringIdArrowheadService == static_cast<const CIEC_STRUCT&>(paSource).getStructTypeNameID()) {
         transformServiceToJSON(const_cast<CIEC_ArrowheadService&>(static_cast<const CIEC_ArrowheadService&>(paSource)), paResult);
       } else if(g_nStringIdServiceRequestForm == static_cast<const CIEC_STRUCT&>(paSource).getStructTypeNameID()) {
         transformOrchServciceRequestFormToJSON(const_cast<CIEC_ServiceRequestForm&>(static_cast<const CIEC_ServiceRequestForm&>(paSource)), paResult);
+      } else if(g_nStringIdArrowheadEvent == static_cast<const CIEC_STRUCT&>(paSource).getStructTypeNameID()) {
+        transformArrowheadEventToJSON(const_cast<CIEC_ArrowheadEvent&>(static_cast<const CIEC_ArrowheadEvent&>(paSource)), paResult);
+      } else if(g_nStringIdPublishEvent == static_cast<const CIEC_STRUCT&>(paSource).getStructTypeNameID()) {
+        transformPublishEventToJSON(const_cast<CIEC_PublishEvent&>(static_cast<const CIEC_PublishEvent&>(paSource)), paResult);
+      } else if(g_nStringIdEventFilter == static_cast<const CIEC_STRUCT&>(paSource).getStructTypeNameID()) {
+        transformEventFilterToJSON(const_cast<CIEC_EventFilter&>(static_cast<const CIEC_EventFilter&>(paSource)), paResult);
       } else {
         transformStructToJSON(static_cast<const CIEC_STRUCT&>(paSource), paResult);
       }
@@ -36,9 +44,27 @@
       paResult.append(static_cast<bool>(static_cast<const CIEC_BOOL&>(paSource)) ? "true" : "false");
       break;
     default: {
-      unsigned int size = paSource.getToStringBufferSize();
+      bool isDateAndTime = CIEC_ANY::e_DATE_AND_TIME == paSource.getDataTypeID();
+      size_t size = paSource.getToStringBufferSize();
+      if(isDateAndTime) {
+        size++;
+      }
       char *toStore = new char[size];
       paSource.toString(toStore, size);
+
+      if(CIEC_ANY::e_DATE_AND_TIME == paSource.getDataTypeID()) { //time expected has the format 2007-12-21T15:00:00.000Z -> a "T" separates the date from the time instead of a "-" and a Z is added at the end
+        size_t counter = 3;
+        char *toChange = toStore;
+        while(counter) {
+          toChange = strchr(toChange + 1, '-');
+          counter--;
+        }
+        *toChange = 'T';
+        toChange = strchr(toChange, '\0');
+        *toChange = 'Z';
+        *(toChange + 1) = '\0';
+      }
+
       paResult.append(toStore);
       delete[] toStore;
       break;
@@ -56,6 +82,8 @@
 
 void ArrowheadJSONHelper::transformJSONToStruct(char* paToChange) {
   transformServiceMetadata(paToChange);
+  transformNull(paToChange);
+  removeEndOfValidity(paToChange);
   removeIds(paToChange);
   char* runner = paToChange;
   changeKeys(&runner);
@@ -86,6 +114,24 @@
   paResult.append("}");
 }
 
+void ArrowheadJSONHelper::transformSystemToJSON(CIEC_ArrowheadSystem& paSource, CIEC_STRING& paResult) {
+  paResult.append("{\"systemName\":");
+  transformANYToJSON(paSource.systemName(), paResult);
+
+  paResult.append(",\"address\":");
+  transformANYToJSON(paSource.address(), paResult);
+
+  paResult.append(",\"port\":");
+  transformANYToJSON(paSource.port(), paResult);
+
+  if("" != paSource.authenticationInfo()) { //we skip authenticationInfo if empty because it creates problems with security in non-secured clouds
+    paResult.append(",\"authenticationInfo\":");
+    transformANYToJSON(paSource.authenticationInfo(), paResult);
+  }
+
+  paResult.append("}");
+}
+
 void ArrowheadJSONHelper::transformServiceToJSON(CIEC_ArrowheadService& paSource, CIEC_STRING& paResult) {
 
   paResult.append("{\"serviceDefinition\":\"");
@@ -165,14 +211,137 @@
   paResult.append("],\"requestedQoS\":{}}"); //requestedQoS not implemented yet in the arrowhead definition
 }
 
+void ArrowheadJSONHelper::transformArrowheadEventToJSON(CIEC_ArrowheadEvent& paSource, CIEC_STRING& paResult) {
+
+  paResult.append("{\"type\":");
+  transformANYToJSON(paSource.type(), paResult);
+
+  paResult.append(",\"payload\":");
+  transformANYToJSON(paSource.payload(), paResult);
+
+  paResult.append(",\"timestamp\":\"");
+
+  if(0 != static_cast<TForteUInt64>(paSource.timestamp())) { //if the time is zero, we just send an empty string to avoid errors complaining about too old messages
+    transformANYToJSON(paSource.timestamp(), paResult);
+  }
+  paResult.append("\",\"eventMetadata\":{");
+  bool first = true;
+  for(size_t i = 0; i < 10; i++) {
+    if(0 != strcmp(paSource.eventMetadata()[i].getValue(), "")) { //if a eventMetadata is empty, keep looking for others, just in case
+      if(!first) {
+        paResult.append(",");
+      } else {
+        first = false;
+      }
+
+      CParameterParser parser(paSource.eventMetadata()[i].getValue(), '=', 2);
+      if(2 != parser.parseParameters()) {
+        DEVLOG_ERROR("[ArrowheadJSONHelper]: wrong eventMetadata %s. Each eventMetadata should be in the form of key=value\n",
+          paSource.eventMetadata()[i].getValue());
+        break;
+      }
+
+      paResult.append("\"");
+      paResult.append(parser[0]);
+      paResult.append("\":\"");
+      paResult.append(parser[1]);
+      paResult.append("\"");
+    }
+  }
+
+  paResult.append("}}");
+}
+
+void ArrowheadJSONHelper::transformEventFilterToJSON(CIEC_EventFilter& paSource, CIEC_STRING& paResult) {
+
+  paResult.append("{\"eventType\":");
+  transformANYToJSON(paSource.eventType(), paResult);
+
+  paResult.append(",\"consumer\":");
+  transformANYToJSON(paSource.consumer(), paResult);
+
+  paResult.append(",\"sources\":[");
+
+  bool first = true;
+  for(size_t i = 0; i < 10; i++) {
+    if(0 != strcmp(paSource.sources()[i].systemName().getValue(), "")) { //if the system address is empty, no more systems are added
+      if(!first) {
+        paResult.append(",");
+      } else {
+        first = false;
+      }
+      transformANYToJSON(paSource.sources()[i], paResult);
+    } else {
+      break;
+    }
+  }
+
+  paResult.append("],\"startDate\":\"");
+  if(0 != static_cast<TForteUInt64>(paSource.startDate())) { //if the time is zero, we just send an empty string to avoid errors complaining about too old messages
+    transformANYToJSON(paSource.startDate(), paResult);
+  }
+
+  paResult.append("\",\"endDate\":\"");
+  if(0 != static_cast<TForteUInt64>(paSource.endDate())) { //if the time is zero, we just send an empty string to avoid errors complaining about too old messages
+    transformANYToJSON(paSource.endDate(), paResult);
+  }
+
+  paResult.append("\",\"filterMetadata\":{");
+  for(size_t i = 0; i < 10; i++) {
+    if(0 != strcmp(paSource.filterMetadata()[i].getValue(), "")) { //if a eventMetadata is empty, keep looking for others, just in case
+      if(!first) {
+        paResult.append(",");
+      } else {
+        first = false;
+      }
+
+      CParameterParser parser(paSource.filterMetadata()[i].getValue(), '=', 2);
+      if(2 != parser.parseParameters()) {
+        DEVLOG_ERROR("[ArrowheadJSONHelper]: wrong filterMetadata %s. Each filterMetadata should be in the form of key=value\n",
+          paSource.filterMetadata()[i].getValue());
+        break;
+      }
+
+      paResult.append("\"");
+      paResult.append(parser[0]);
+      paResult.append("\":\"");
+      paResult.append(parser[1]);
+      paResult.append("\"");
+    }
+  }
+
+  paResult.append("},\"notifyUri\":");
+  transformANYToJSON(paSource.notifyUri(), paResult);
+
+  paResult.append(",\"matchMetadata\":");
+  transformANYToJSON(paSource.matchMetadata(), paResult);
+
+  paResult.append("}");
+
+}
+
+void ArrowheadJSONHelper::transformPublishEventToJSON(CIEC_PublishEvent& paSource, CIEC_STRING& paResult) {
+
+  paResult.append("{\"source\":");
+  transformANYToJSON(paSource.source(), paResult);
+
+  paResult.append(",\"event\":");
+  transformANYToJSON(paSource.event(), paResult);
+
+  //we don't send the deliveryCompleteUri, even if empty, because the event handler core system will try to send the results
+  //which is not supported yet by forte
+
+  paResult.append("}");
+}
+
 void ArrowheadJSONHelper::transformArrayToJSON(const CIEC_ARRAY& paSource, CIEC_STRING& paResult) {
   TForteUInt16 unSize = paSource.size();
   paResult.append("[");
 
   bool first = true;
-  for(unsigned int i = 0; i < unSize; ++i) {
+  for(size_t i = 0; i < unSize; ++i) {
     if((CIEC_ANY::e_STRING == paSource.getElementDataTypeID() || CIEC_ANY::e_WSTRING == paSource.getElementDataTypeID())
-      && 0 == strcmp(static_cast<const CIEC_WSTRING*>(paSource[i])->getValue(), "")) {
+      && 0 == strcmp(static_cast<const CIEC_WSTRING*>(paSource[static_cast<TForteUInt16>(i)])->getValue(), "")) {
       break;
     }
 
@@ -181,7 +350,7 @@
     } else {
       first = false;
     }
-    transformANYToJSON(*paSource[i], paResult);
+    transformANYToJSON(*paSource[static_cast<TForteUInt16>(i)], paResult);
   }
   paResult.append("]");
 }
@@ -247,6 +416,32 @@
   } while(0 != paText);
 }
 
+void ArrowheadJSONHelper::removeEndOfValidity(char *paText) {
+  do {
+    paText = strstr(paText, "\"endOfValidity\"");
+    if(0 != paText) {
+      while(',' != *paText) {
+        *paText = ' ';
+        paText++;
+      }
+      *paText = ' '; //for the last comma
+      paText++;
+    }
+  } while(0 != paText);
+}
+
+void ArrowheadJSONHelper::transformNull(char *paText) {
+  do {
+    paText = strstr(paText, "null");
+    if(0 != paText) {
+      *paText++ = ' ';
+      *paText++ = '"';
+      *paText++ = '"';
+      *paText++ = ' ';
+    }
+  } while(0 != paText);
+}
+
 void ArrowheadJSONHelper::changeKeysArray(char** paText) {
 
   do {
diff --git a/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.h b/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.h
index 735ef96..ce25186 100644
--- a/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.h
+++ b/src/modules/arrowhead/common/JSON/ArrowheadJSONHelper.h
@@ -18,6 +18,10 @@
 #include <forte_array.h>
 #include "../forte_arrowheadservice.h"
 #include "../../orchestrator/forte_servicerequestform.h"
+#include <forte_arrowheadevent.h>
+#include <forte_eventfilter.h>
+#include <forte_publishevent.h>
+#include <forte_arrowheadsystem.h>
 
 class ArrowheadJSONHelper {
   public:
@@ -35,18 +39,30 @@
 
     static void transformArrayToJSON(const CIEC_ARRAY &paSource, CIEC_STRING &paResult);
 
+    static void transformSystemToJSON(CIEC_ArrowheadSystem& paSource, CIEC_STRING& paResult);
+
     static void transformServiceToJSON(CIEC_ArrowheadService &paSource, CIEC_STRING &paResult);
 
     static void transformOrchServciceRequestFormToJSON(CIEC_ServiceRequestForm& paSource, CIEC_STRING& paResult);
 
+    static void transformArrowheadEventToJSON(CIEC_ArrowheadEvent& paSource, CIEC_STRING& paResult);
+
+    static void transformEventFilterToJSON(CIEC_EventFilter& paSource, CIEC_STRING& paResult);
+
+    static void transformPublishEventToJSON(CIEC_PublishEvent& paSource, CIEC_STRING& paResult);
+
     static void transformServiceMetadata(char* paText);
 
     static void removeIds(char* paText);
 
+    static void removeEndOfValidity(char *paText);
+
     static void changeKeys(char** paText);
 
     static void changeKeysArray(char** paText);
 
+    static void transformNull(char *paText);
+
     static void changeToStruct(char* paText);
 };
 
diff --git a/src/modules/arrowhead/common/JSON/GetArrayResponseFromJSON.cpp b/src/modules/arrowhead/common/JSON/GetArrayResponseFromJSON.cpp
index 28d8c2f..4b9a440 100644
--- a/src/modules/arrowhead/common/JSON/GetArrayResponseFromJSON.cpp
+++ b/src/modules/arrowhead/common/JSON/GetArrayResponseFromJSON.cpp
@@ -58,7 +58,7 @@
     //clean the output first
     output_Array().setup(output_Array().size(), static_cast<CIEC_STRUCT*>(output_Array()[0])->getStructTypeNameID());
 
-    DEVLOG_DEBUG("[Arrowhead GetResponseFromHTTP]: Response received: %s\n", response().getValue());
+    DEVLOG_DEBUG("[Arrowhead GetArrayResponseFromJSON]: Response received: %s\n", response().getValue());
     char* helper = strrchr(response().getValue(), ']');
     if(0 != helper) {
 
@@ -71,10 +71,10 @@
           output().fromString(helper);
         } //if response is empty, don't do anything.
       } else {
-        DEVLOG_ERROR("[Arrowhead GetResponseFromHTTP]: Invalid response, ] was found but not [: \n", response().getValue());
+        DEVLOG_ERROR("[Arrowhead GetArrayResponseFromJSON]: Invalid response, ] was found but not [: \n", response().getValue());
       }
     } else {
-      DEVLOG_ERROR("[Arrowhead GetResponseFromHTTP]: Invalid response, no ] was found: %s\n", response().getValue());
+      DEVLOG_ERROR("[Arrowhead GetArrayResponseFromJSON]: Invalid response, no ] was found: %s\n", response().getValue());
     }
     sendOutputEvent(scm_nEventCNFID);
   }
diff --git a/src/modules/arrowhead/eventHandler/ArrowheadPublish.cpp b/src/modules/arrowhead/eventHandler/ArrowheadPublish.cpp
new file mode 100644
index 0000000..d94d254
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/ArrowheadPublish.cpp
@@ -0,0 +1,60 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "ArrowheadPublish.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "ArrowheadPublish_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_ArrowheadPublish, g_nStringIdArrowheadPublish)
+
+const CStringDictionary::TStringId FORTE_ArrowheadPublish::scm_anDataInputNames[] = {g_nStringIdpublishEvent, g_nStringIdendpoint};
+
+const CStringDictionary::TStringId FORTE_ArrowheadPublish::scm_anDataInputTypeIds[] = {g_nStringIdPublishEvent, g_nStringIdWSTRING};
+
+const TForteInt16 FORTE_ArrowheadPublish::scm_anEIWithIndexes[] = {0};
+const TDataIOID FORTE_ArrowheadPublish::scm_anEIWith[] = {0, 1, 255};
+const CStringDictionary::TStringId FORTE_ArrowheadPublish::scm_anEventInputNames[] = {g_nStringIdpublish};
+
+const TForteInt16 FORTE_ArrowheadPublish::scm_anEOWithIndexes[] = {-1, -1};
+const CStringDictionary::TStringId FORTE_ArrowheadPublish::scm_anEventOutputNames[] = {g_nStringIdpublished};
+
+const SAdapterInstanceDef FORTE_ArrowheadPublish::scm_astAdapterInstances[] = {
+{g_nStringIdArrowheadPublishAdp, g_nStringIdArrowheadPublishAdp, true }};
+
+const SFBInterfaceSpec FORTE_ArrowheadPublish::scm_stFBInterfaceSpec = {
+  1,  scm_anEventInputNames,  scm_anEIWith,  scm_anEIWithIndexes,
+  1,  scm_anEventOutputNames,  0, 0,  2,  scm_anDataInputNames, scm_anDataInputTypeIds,
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBConnectionData FORTE_ArrowheadPublish::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdpublish), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdArrowheadPublishAdp, g_nStringIdpublish), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdArrowheadPublishAdp, g_nStringIdpublished), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdpublished), -1},
+};
+
+const SCFB_FBConnectionData FORTE_ArrowheadPublish::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdpublishEvent), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdArrowheadPublishAdp, g_nStringIdpublishEvent), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdendpoint), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdArrowheadPublishAdp, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0},
+};
+
+const SCFB_FBNData FORTE_ArrowheadPublish::scm_stFBNData = {
+  0, 0,
+  2, scm_astEventConnections,
+  0, 0,
+  2, scm_astDataConnections,
+  0, 0,
+  0, 0
+};
+
+
diff --git a/src/modules/arrowhead/eventHandler/ArrowheadPublish.h b/src/modules/arrowhead/eventHandler/ArrowheadPublish.h
new file mode 100644
index 0000000..b5e873e
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/ArrowheadPublish.h
@@ -0,0 +1,69 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _ARROWHEADPUBLISH_H_
+#define _ARROWHEADPUBLISH_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include <forte_publishevent.h>
+#include <forte_wstring.h>
+#include "ArrowheadPublishAdp.h"
+
+class FORTE_ArrowheadPublish: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_ArrowheadPublish)
+
+private:
+  static const CStringDictionary::TStringId scm_anDataInputNames[];
+  static const CStringDictionary::TStringId scm_anDataInputTypeIds[];
+  CIEC_PublishEvent &publishEvent() {
+    return *static_cast<CIEC_PublishEvent*>(getDI(0));
+  };
+
+  CIEC_WSTRING &endpoint() {
+    return *static_cast<CIEC_WSTRING*>(getDI(1));
+  };
+
+  static const TEventID scm_nEventpublishID = 0;
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const TDataIOID scm_anEIWith[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+  static const TEventID scm_nEventpublishedID = 0;
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_ArrowheadPublishAdp& ArrowheadPublishAdp() {
+    return (*static_cast<FORTE_ArrowheadPublishAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_nArrowheadPublishAdpAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(1, 2, 0, 1);
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_ArrowheadPublish){
+  };
+
+  virtual ~FORTE_ArrowheadPublish(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/ArrowheadPublishAdp.cpp b/src/modules/arrowhead/eventHandler/ArrowheadPublishAdp.cpp
new file mode 100644
index 0000000..085b984
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/ArrowheadPublishAdp.cpp
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "ArrowheadPublishAdp.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "ArrowheadPublishAdp_gen.cpp"
+#endif
+
+DEFINE_ADAPTER_TYPE(FORTE_ArrowheadPublishAdp, g_nStringIdArrowheadPublishAdp)
+
+const CStringDictionary::TStringId FORTE_ArrowheadPublishAdp::scm_anDataOutputNames[] = {g_nStringIdpublishEvent, g_nStringIdendpoint};
+
+const CStringDictionary::TStringId FORTE_ArrowheadPublishAdp::scm_anDataOutputTypeIds[] = {g_nStringIdPublishEvent, g_nStringIdWSTRING};
+
+const TForteInt16 FORTE_ArrowheadPublishAdp::scm_anEIWithIndexes[] = {-1, -1};
+const CStringDictionary::TStringId FORTE_ArrowheadPublishAdp::scm_anEventInputNames[] = {g_nStringIdpublished};
+
+const TDataIOID FORTE_ArrowheadPublishAdp::scm_anEOWith[] = {0, 1, 255};
+const TForteInt16 FORTE_ArrowheadPublishAdp::scm_anEOWithIndexes[] = {0, -1};
+const CStringDictionary::TStringId FORTE_ArrowheadPublishAdp::scm_anEventOutputNames[] = {g_nStringIdpublish};
+
+const SFBInterfaceSpec FORTE_ArrowheadPublishAdp::scm_stFBInterfaceSpecSocket = {
+  1,  scm_anEventInputNames,  0,  scm_anEIWithIndexes,
+  1,  scm_anEventOutputNames,  scm_anEOWith, scm_anEOWithIndexes,  0,  0, 0, 
+  2,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0, 0
+};
+
+const SFBInterfaceSpec FORTE_ArrowheadPublishAdp::scm_stFBInterfaceSpecPlug = {
+  1,  scm_anEventOutputNames,  scm_anEOWith,  scm_anEOWithIndexes,
+  1,  scm_anEventInputNames,  0, 0,  2,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0,  0, 0,
+  0, 0
+};
+
+
+
diff --git a/src/modules/arrowhead/eventHandler/ArrowheadPublishAdp.h b/src/modules/arrowhead/eventHandler/ArrowheadPublishAdp.h
new file mode 100644
index 0000000..cb4ec44
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/ArrowheadPublishAdp.h
@@ -0,0 +1,71 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _ARROWHEADPUBLISHADP_H_
+#define _ARROWHEADPUBLISHADP_H_
+
+#include <adapter.h>
+#include <typelib.h>
+#include <forte_publishevent.h>
+#include <forte_wstring.h>
+
+class FORTE_ArrowheadPublishAdp: public CAdapter{
+  DECLARE_ADAPTER_TYPE(FORTE_ArrowheadPublishAdp)
+
+private:
+ private:
+  static const CStringDictionary::TStringId scm_anDataOutputNames[];
+  static const CStringDictionary::TStringId scm_anDataOutputTypeIds[];
+ public:
+  CIEC_PublishEvent &publishEvent() {
+    return *static_cast<CIEC_PublishEvent*>((isSocket()) ? getDO(0) : getDI(0));
+  };
+
+  CIEC_WSTRING &endpoint() {
+    return *static_cast<CIEC_WSTRING*>((isSocket()) ? getDO(1) : getDI(1));
+  };
+
+ public:
+  static const TEventID scm_nEventpublishedID = 0;
+  int published() {
+    return m_nParentAdapterListEventID + scm_nEventpublishedID;
+  }
+ private:
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+ public:
+  static const TEventID scm_nEventpublishID = 0;
+  int publish() {
+    return m_nParentAdapterListEventID + scm_nEventpublishID;
+  }
+ private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const TDataIOID scm_anEOWith[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpecSocket;
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpecPlug;
+
+   FORTE_ADAPTER_DATA_ARRAY(1, 1, 0, 2, 0);
+
+public:
+  ADAPTER_CTOR(FORTE_ArrowheadPublishAdp){
+  };
+
+  virtual ~FORTE_ArrowheadPublishAdp(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/CMakeLists.txt b/src/modules/arrowhead/eventHandler/CMakeLists.txt
new file mode 100644
index 0000000..a25c1f9
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/CMakeLists.txt
@@ -0,0 +1,29 @@
+# *******************************************************************************
+# Copyright (c) 2019, fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#   Jose Cabral - initial implementation
+# *******************************************************************************
+
+#############################################################################
+# Arrowhead specific functional blocks for event handler
+#############################################################################
+
+forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+forte_add_sourcefile_hcpp(forte_arrowheadevent forte_publishevent forte_eventfilter)
+forte_add_sourcefile_hcpp(FieldsToArrowheadEvent FieldsToPublishEvent FieldsToEventFilter)
+forte_add_sourcefile_hcpp(ArrowheadPublish ArrowheadPublishAdp SubscribeEvent SubscribeEventAdp)
+
+if(FORTE_COM_HTTP)
+  add_subdirectory(HTTP)
+endif(FORTE_COM_HTTP)
+
+if(FORTE_COM_OPC_UA)
+  add_subdirectory(OpcUa)
+endif(FORTE_COM_OPC_UA)
diff --git a/src/modules/arrowhead/eventHandler/FieldsToArrowheadEvent.cpp b/src/modules/arrowhead/eventHandler/FieldsToArrowheadEvent.cpp
new file mode 100644
index 0000000..37b3b17
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/FieldsToArrowheadEvent.cpp
@@ -0,0 +1,97 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "FieldsToArrowheadEvent.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "FieldsToArrowheadEvent_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_FieldsToArrowheadEvent, g_nStringIdFieldsToArrowheadEvent)
+
+const CStringDictionary::TStringId FORTE_FieldsToArrowheadEvent::scm_anDataInputNames[] = {g_nStringIdtype, g_nStringIdpayload, g_nStringIdtimestamp, g_nStringIdeventMetadata};
+
+const CStringDictionary::TStringId FORTE_FieldsToArrowheadEvent::scm_anDataInputTypeIds[] = {g_nStringIdWSTRING, g_nStringIdWSTRING, g_nStringIdDATE_AND_TIME, g_nStringIdARRAY, 10, g_nStringIdWSTRING};
+
+const CStringDictionary::TStringId FORTE_FieldsToArrowheadEvent::scm_anDataOutputNames[] = {g_nStringIdarrowheadEvent};
+
+const CStringDictionary::TStringId FORTE_FieldsToArrowheadEvent::scm_anDataOutputTypeIds[] = {g_nStringIdArrowheadEvent};
+
+const TForteInt16 FORTE_FieldsToArrowheadEvent::scm_anEIWithIndexes[] = {0};
+const TDataIOID FORTE_FieldsToArrowheadEvent::scm_anEIWith[] = {0, 1, 2, 3, 255};
+const CStringDictionary::TStringId FORTE_FieldsToArrowheadEvent::scm_anEventInputNames[] = {g_nStringIdREQ};
+
+const TDataIOID FORTE_FieldsToArrowheadEvent::scm_anEOWith[] = {0, 255};
+const TForteInt16 FORTE_FieldsToArrowheadEvent::scm_anEOWithIndexes[] = {0, -1};
+const CStringDictionary::TStringId FORTE_FieldsToArrowheadEvent::scm_anEventOutputNames[] = {g_nStringIdCNF};
+
+const SFBInterfaceSpec FORTE_FieldsToArrowheadEvent::scm_stFBInterfaceSpec = {
+  1,  scm_anEventInputNames,  scm_anEIWith,  scm_anEIWithIndexes,
+  1,  scm_anEventOutputNames,  scm_anEOWith, scm_anEOWithIndexes,  4,  scm_anDataInputNames, scm_anDataInputTypeIds,
+  1,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0, 0
+};
+
+void FORTE_FieldsToArrowheadEvent::alg_REQ(void){
+CIEC_INT i;
+;
+
+i = 0;
+arrowheadEvent().type() = type();
+arrowheadEvent().payload() = payload();
+arrowheadEvent().timestamp() == timestamp();
+
+while((i < 10)){
+// looks like while is faster than FOR when exporting to cpp
+
+arrowheadEvent().eventMetadata()[i] = eventMetadata()[i];
+i = i+1;
+}
+}
+
+
+void FORTE_FieldsToArrowheadEvent::enterStateSTART(void){
+  m_nECCState = scm_nStateSTART;
+}
+
+void FORTE_FieldsToArrowheadEvent::enterStateREQ(void){
+  m_nECCState = scm_nStateREQ;
+  alg_REQ();
+  sendOutputEvent( scm_nEventCNFID);
+}
+
+void FORTE_FieldsToArrowheadEvent::executeEvent(int pa_nEIID){
+  bool bTransitionCleared;
+  do{
+    bTransitionCleared = true;
+    switch(m_nECCState){
+      case scm_nStateSTART:
+        if(scm_nEventREQID == pa_nEIID)
+          enterStateREQ();
+        else
+          bTransitionCleared  = false; //no transition cleared
+        break;
+      case scm_nStateREQ:
+        if((1))
+          enterStateSTART();
+        else
+          bTransitionCleared  = false; //no transition cleared
+        break;
+      default:
+      DEVLOG_ERROR("The state is not in the valid range! The state value is: %d. The max value can be: 1.", m_nECCState.operator TForteUInt16 ());
+        m_nECCState = 0; //0 is always the initial state
+        break;
+    }
+    pa_nEIID = cg_nInvalidEventID;  // we have to clear the event after the first check in order to ensure correct behavior
+  }while(bTransitionCleared);
+}
+
+
diff --git a/src/modules/arrowhead/eventHandler/FieldsToArrowheadEvent.h b/src/modules/arrowhead/eventHandler/FieldsToArrowheadEvent.h
new file mode 100644
index 0000000..f7c8910
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/FieldsToArrowheadEvent.h
@@ -0,0 +1,87 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _FIELDSTOARROWHEADEVENT_H_
+#define _FIELDSTOARROWHEADEVENT_H_
+
+#include <basicfb.h>
+#include <forte_date_and_time.h>
+#include <forte_arrowheadevent.h>
+#include <forte_wstring.h>
+#include <forte_array.h>
+
+class FORTE_FieldsToArrowheadEvent: public CBasicFB{
+  DECLARE_FIRMWARE_FB(FORTE_FieldsToArrowheadEvent)
+
+private:
+  static const CStringDictionary::TStringId scm_anDataInputNames[];
+  static const CStringDictionary::TStringId scm_anDataInputTypeIds[];
+  CIEC_WSTRING &type() {
+    return *static_cast<CIEC_WSTRING*>(getDI(0));
+  };
+
+  CIEC_WSTRING &payload() {
+    return *static_cast<CIEC_WSTRING*>(getDI(1));
+  };
+
+  CIEC_DATE_AND_TIME &timestamp() {
+    return *static_cast<CIEC_DATE_AND_TIME*>(getDI(2));
+  };
+
+  CIEC_WSTRING *eventMetadata() {
+    return (CIEC_WSTRING*)(*static_cast<CIEC_ARRAY *>(getDI(3)))[0]; //the first element marks the start of the array
+  };
+
+  CIEC_ARRAY &eventMetadata_Array() {
+    return *static_cast<CIEC_ARRAY*>(getDI(3));
+  };
+
+  static const CStringDictionary::TStringId scm_anDataOutputNames[];
+  static const CStringDictionary::TStringId scm_anDataOutputTypeIds[];
+  CIEC_ArrowheadEvent &arrowheadEvent() {
+    return *static_cast<CIEC_ArrowheadEvent*>(getDO(0));
+  };
+
+  static const TEventID scm_nEventREQID = 0;
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const TDataIOID scm_anEIWith[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+  static const TEventID scm_nEventCNFID = 0;
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const TDataIOID scm_anEOWith[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_BASIC_FB_DATA_ARRAY(1, 4, 1, 0, 0);
+  void alg_REQ(void);
+  static const TForteInt16 scm_nStateSTART = 0;
+  static const TForteInt16 scm_nStateREQ = 1;
+
+  void enterStateSTART(void);
+  void enterStateREQ(void);
+
+  virtual void executeEvent(int pa_nEIID);
+
+public:
+  FORTE_FieldsToArrowheadEvent(CStringDictionary::TStringId pa_nInstanceNameId, CResource *pa_poSrcRes) : 
+       CBasicFB(pa_poSrcRes, &scm_stFBInterfaceSpec, pa_nInstanceNameId,
+              0, m_anFBConnData, m_anFBVarsData){
+  };
+
+  virtual ~FORTE_FieldsToArrowheadEvent(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/FieldsToEventFilter.cpp b/src/modules/arrowhead/eventHandler/FieldsToEventFilter.cpp
new file mode 100644
index 0000000..8c1b55e
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/FieldsToEventFilter.cpp
@@ -0,0 +1,101 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "FieldsToEventFilter.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "FieldsToEventFilter_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_FieldsToEventFilter, g_nStringIdFieldsToEventFilter)
+
+const CStringDictionary::TStringId FORTE_FieldsToEventFilter::scm_anDataInputNames[] = {g_nStringIdeventType, g_nStringIdconsumer, g_nStringIdsources, g_nStringIdstartDate, g_nStringIdendDate, g_nStringIdfilterMetadata, g_nStringIdnotifyUri, g_nStringIdmatchMetadata};
+
+const CStringDictionary::TStringId FORTE_FieldsToEventFilter::scm_anDataInputTypeIds[] = {g_nStringIdWSTRING, g_nStringIdArrowheadSystem, g_nStringIdARRAY, 10, g_nStringIdArrowheadSystem, g_nStringIdDATE_AND_TIME, g_nStringIdDATE_AND_TIME, g_nStringIdARRAY, 10, g_nStringIdWSTRING, g_nStringIdWSTRING, g_nStringIdBOOL};
+
+const CStringDictionary::TStringId FORTE_FieldsToEventFilter::scm_anDataOutputNames[] = {g_nStringIdeventFilter};
+
+const CStringDictionary::TStringId FORTE_FieldsToEventFilter::scm_anDataOutputTypeIds[] = {g_nStringIdEventFilter};
+
+const TForteInt16 FORTE_FieldsToEventFilter::scm_anEIWithIndexes[] = {0};
+const TDataIOID FORTE_FieldsToEventFilter::scm_anEIWith[] = {0, 1, 3, 6, 2, 4, 5, 7, 255};
+const CStringDictionary::TStringId FORTE_FieldsToEventFilter::scm_anEventInputNames[] = {g_nStringIdREQ};
+
+const TDataIOID FORTE_FieldsToEventFilter::scm_anEOWith[] = {0, 255};
+const TForteInt16 FORTE_FieldsToEventFilter::scm_anEOWithIndexes[] = {0, -1};
+const CStringDictionary::TStringId FORTE_FieldsToEventFilter::scm_anEventOutputNames[] = {g_nStringIdCNF};
+
+const SFBInterfaceSpec FORTE_FieldsToEventFilter::scm_stFBInterfaceSpec = {
+  1,  scm_anEventInputNames,  scm_anEIWith,  scm_anEIWithIndexes,
+  1,  scm_anEventOutputNames,  scm_anEOWith, scm_anEOWithIndexes,  8,  scm_anDataInputNames, scm_anDataInputTypeIds,
+  1,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0, 0
+};
+
+void FORTE_FieldsToEventFilter::alg_REQ(void){
+CIEC_INT i;
+;
+
+i = 0;
+eventFilter().eventType() = eventType();
+eventFilter().consumer() = consumer();
+eventFilter().startDate() = startDate();
+eventFilter().endDate() = endDate();
+eventFilter().notifyUri() = notifyUri();
+eventFilter().matchMetadata() = matchMetadata();
+
+while((i < 10)){
+// looks like while is faster than FOR when exporting to cpp
+
+eventFilter().sources()[i] = sources()[i];
+eventFilter().filterMetadata()[i] = filterMetadata()[i];
+i = i+1;
+}
+}
+
+
+void FORTE_FieldsToEventFilter::enterStateSTART(void){
+  m_nECCState = scm_nStateSTART;
+}
+
+void FORTE_FieldsToEventFilter::enterStateREQ(void){
+  m_nECCState = scm_nStateREQ;
+  alg_REQ();
+  sendOutputEvent( scm_nEventCNFID);
+}
+
+void FORTE_FieldsToEventFilter::executeEvent(int pa_nEIID){
+  bool bTransitionCleared;
+  do{
+    bTransitionCleared = true;
+    switch(m_nECCState){
+      case scm_nStateSTART:
+        if(scm_nEventREQID == pa_nEIID)
+          enterStateREQ();
+        else
+          bTransitionCleared  = false; //no transition cleared
+        break;
+      case scm_nStateREQ:
+        if((1))
+          enterStateSTART();
+        else
+          bTransitionCleared  = false; //no transition cleared
+        break;
+      default:
+      DEVLOG_ERROR("The state is not in the valid range! The state value is: %d. The max value can be: 1.", m_nECCState.operator TForteUInt16 ());
+        m_nECCState = 0; //0 is always the initial state
+        break;
+    }
+    pa_nEIID = cg_nInvalidEventID;  // we have to clear the event after the first check in order to ensure correct behavior
+  }while(bTransitionCleared);
+}
+
+
diff --git a/src/modules/arrowhead/eventHandler/FieldsToEventFilter.h b/src/modules/arrowhead/eventHandler/FieldsToEventFilter.h
new file mode 100644
index 0000000..2684ff7
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/FieldsToEventFilter.h
@@ -0,0 +1,109 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _FIELDSTOEVENTFILTER_H_
+#define _FIELDSTOEVENTFILTER_H_
+
+#include <basicfb.h>
+#include <forte_date_and_time.h>
+#include <forte_bool.h>
+#include <forte_arrowheadsystem.h>
+#include <forte_eventfilter.h>
+#include <forte_wstring.h>
+#include <forte_array.h>
+
+class FORTE_FieldsToEventFilter: public CBasicFB{
+  DECLARE_FIRMWARE_FB(FORTE_FieldsToEventFilter)
+
+private:
+  static const CStringDictionary::TStringId scm_anDataInputNames[];
+  static const CStringDictionary::TStringId scm_anDataInputTypeIds[];
+  CIEC_WSTRING &eventType() {
+    return *static_cast<CIEC_WSTRING*>(getDI(0));
+  };
+
+  CIEC_ArrowheadSystem &consumer() {
+    return *static_cast<CIEC_ArrowheadSystem*>(getDI(1));
+  };
+
+  CIEC_ArrowheadSystem *sources() {
+    return (CIEC_ArrowheadSystem*)(*static_cast<CIEC_ARRAY *>(getDI(2)))[0]; //the first element marks the start of the array
+  };
+
+  CIEC_ARRAY &sources_Array() {
+    return *static_cast<CIEC_ARRAY*>(getDI(2));
+  };
+
+  CIEC_DATE_AND_TIME &startDate() {
+    return *static_cast<CIEC_DATE_AND_TIME*>(getDI(3));
+  };
+
+  CIEC_DATE_AND_TIME &endDate() {
+    return *static_cast<CIEC_DATE_AND_TIME*>(getDI(4));
+  };
+
+  CIEC_WSTRING *filterMetadata() {
+    return (CIEC_WSTRING*)(*static_cast<CIEC_ARRAY *>(getDI(5)))[0]; //the first element marks the start of the array
+  };
+
+  CIEC_ARRAY &filterMetadata_Array() {
+    return *static_cast<CIEC_ARRAY*>(getDI(5));
+  };
+
+  CIEC_WSTRING &notifyUri() {
+    return *static_cast<CIEC_WSTRING*>(getDI(6));
+  };
+
+  CIEC_BOOL &matchMetadata() {
+    return *static_cast<CIEC_BOOL*>(getDI(7));
+  };
+
+  static const CStringDictionary::TStringId scm_anDataOutputNames[];
+  static const CStringDictionary::TStringId scm_anDataOutputTypeIds[];
+  CIEC_EventFilter &eventFilter() {
+    return *static_cast<CIEC_EventFilter*>(getDO(0));
+  };
+
+  static const TEventID scm_nEventREQID = 0;
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const TDataIOID scm_anEIWith[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+  static const TEventID scm_nEventCNFID = 0;
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const TDataIOID scm_anEOWith[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_BASIC_FB_DATA_ARRAY(1, 8, 1, 0, 0);
+  void alg_REQ(void);
+  static const TForteInt16 scm_nStateSTART = 0;
+  static const TForteInt16 scm_nStateREQ = 1;
+
+  void enterStateSTART(void);
+  void enterStateREQ(void);
+
+  virtual void executeEvent(int pa_nEIID);
+
+public:
+  FORTE_FieldsToEventFilter(CStringDictionary::TStringId pa_nInstanceNameId, CResource *pa_poSrcRes) : 
+       CBasicFB(pa_poSrcRes, &scm_stFBInterfaceSpec, pa_nInstanceNameId,
+              0, m_anFBConnData, m_anFBVarsData){
+  };
+
+  virtual ~FORTE_FieldsToEventFilter(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/FieldsToPublishEvent.cpp b/src/modules/arrowhead/eventHandler/FieldsToPublishEvent.cpp
new file mode 100644
index 0000000..a949b91
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/FieldsToPublishEvent.cpp
@@ -0,0 +1,88 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "FieldsToPublishEvent.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "FieldsToPublishEvent_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_FieldsToPublishEvent, g_nStringIdFieldsToPublishEvent)
+
+const CStringDictionary::TStringId FORTE_FieldsToPublishEvent::scm_anDataInputNames[] = {g_nStringIdsource, g_nStringIdevent, g_nStringIddeliveryCompleteUri};
+
+const CStringDictionary::TStringId FORTE_FieldsToPublishEvent::scm_anDataInputTypeIds[] = {g_nStringIdArrowheadSystem, g_nStringIdArrowheadEvent, g_nStringIdWSTRING};
+
+const CStringDictionary::TStringId FORTE_FieldsToPublishEvent::scm_anDataOutputNames[] = {g_nStringIdpublishEvent};
+
+const CStringDictionary::TStringId FORTE_FieldsToPublishEvent::scm_anDataOutputTypeIds[] = {g_nStringIdPublishEvent};
+
+const TForteInt16 FORTE_FieldsToPublishEvent::scm_anEIWithIndexes[] = {0};
+const TDataIOID FORTE_FieldsToPublishEvent::scm_anEIWith[] = {0, 1, 2, 255};
+const CStringDictionary::TStringId FORTE_FieldsToPublishEvent::scm_anEventInputNames[] = {g_nStringIdREQ};
+
+const TDataIOID FORTE_FieldsToPublishEvent::scm_anEOWith[] = {0, 255};
+const TForteInt16 FORTE_FieldsToPublishEvent::scm_anEOWithIndexes[] = {0, -1};
+const CStringDictionary::TStringId FORTE_FieldsToPublishEvent::scm_anEventOutputNames[] = {g_nStringIdCNF};
+
+const SFBInterfaceSpec FORTE_FieldsToPublishEvent::scm_stFBInterfaceSpec = {
+  1,  scm_anEventInputNames,  scm_anEIWith,  scm_anEIWithIndexes,
+  1,  scm_anEventOutputNames,  scm_anEOWith, scm_anEOWithIndexes,  3,  scm_anDataInputNames, scm_anDataInputTypeIds,
+  1,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0, 0
+};
+
+void FORTE_FieldsToPublishEvent::alg_REQ(void){
+publishEvent().source() = source();
+publishEvent().event() = event();
+publishEvent().deliveryCompleteUri() = deliveryCompleteUri();
+
+
+}
+
+
+void FORTE_FieldsToPublishEvent::enterStateSTART(void){
+  m_nECCState = scm_nStateSTART;
+}
+
+void FORTE_FieldsToPublishEvent::enterStateREQ(void){
+  m_nECCState = scm_nStateREQ;
+  alg_REQ();
+  sendOutputEvent( scm_nEventCNFID);
+}
+
+void FORTE_FieldsToPublishEvent::executeEvent(int pa_nEIID){
+  bool bTransitionCleared;
+  do{
+    bTransitionCleared = true;
+    switch(m_nECCState){
+      case scm_nStateSTART:
+        if(scm_nEventREQID == pa_nEIID)
+          enterStateREQ();
+        else
+          bTransitionCleared  = false; //no transition cleared
+        break;
+      case scm_nStateREQ:
+        if((1))
+          enterStateSTART();
+        else
+          bTransitionCleared  = false; //no transition cleared
+        break;
+      default:
+      DEVLOG_ERROR("The state is not in the valid range! The state value is: %d. The max value can be: 1.", m_nECCState.operator TForteUInt16 ());
+        m_nECCState = 0; //0 is always the initial state
+        break;
+    }
+    pa_nEIID = cg_nInvalidEventID;  // we have to clear the event after the first check in order to ensure correct behavior
+  }while(bTransitionCleared);
+}
+
+
diff --git a/src/modules/arrowhead/eventHandler/FieldsToPublishEvent.h b/src/modules/arrowhead/eventHandler/FieldsToPublishEvent.h
new file mode 100644
index 0000000..54d00e4
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/FieldsToPublishEvent.h
@@ -0,0 +1,79 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _FIELDSTOPUBLISHEVENT_H_
+#define _FIELDSTOPUBLISHEVENT_H_
+
+#include <basicfb.h>
+#include <forte_publishevent.h>
+#include <forte_arrowheadsystem.h>
+#include <forte_arrowheadevent.h>
+#include <forte_wstring.h>
+
+class FORTE_FieldsToPublishEvent: public CBasicFB{
+  DECLARE_FIRMWARE_FB(FORTE_FieldsToPublishEvent)
+
+private:
+  static const CStringDictionary::TStringId scm_anDataInputNames[];
+  static const CStringDictionary::TStringId scm_anDataInputTypeIds[];
+  CIEC_ArrowheadSystem &source() {
+    return *static_cast<CIEC_ArrowheadSystem*>(getDI(0));
+  };
+
+  CIEC_ArrowheadEvent &event() {
+    return *static_cast<CIEC_ArrowheadEvent*>(getDI(1));
+  };
+
+  CIEC_WSTRING &deliveryCompleteUri() {
+    return *static_cast<CIEC_WSTRING*>(getDI(2));
+  };
+
+  static const CStringDictionary::TStringId scm_anDataOutputNames[];
+  static const CStringDictionary::TStringId scm_anDataOutputTypeIds[];
+  CIEC_PublishEvent &publishEvent() {
+    return *static_cast<CIEC_PublishEvent*>(getDO(0));
+  };
+
+  static const TEventID scm_nEventREQID = 0;
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const TDataIOID scm_anEIWith[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+  static const TEventID scm_nEventCNFID = 0;
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const TDataIOID scm_anEOWith[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_BASIC_FB_DATA_ARRAY(1, 3, 1, 0, 0);
+  void alg_REQ(void);
+  static const TForteInt16 scm_nStateSTART = 0;
+  static const TForteInt16 scm_nStateREQ = 1;
+
+  void enterStateSTART(void);
+  void enterStateREQ(void);
+
+  virtual void executeEvent(int pa_nEIID);
+
+public:
+  FORTE_FieldsToPublishEvent(CStringDictionary::TStringId pa_nInstanceNameId, CResource *pa_poSrcRes) : 
+       CBasicFB(pa_poSrcRes, &scm_stFBInterfaceSpec, pa_nInstanceNameId,
+              0, m_anFBConnData, m_anFBVarsData){
+  };
+
+  virtual ~FORTE_FieldsToPublishEvent(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/HTTP/CMakeLists.txt b/src/modules/arrowhead/eventHandler/HTTP/CMakeLists.txt
new file mode 100644
index 0000000..d8b526b
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/HTTP/CMakeLists.txt
@@ -0,0 +1,20 @@
+# *******************************************************************************
+# Copyright (c) 2019, fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#   Jose Cabral - initial implementation
+# *******************************************************************************
+
+#############################################################################
+# Arrowhead specific functional blocks for HTTP for event handler
+#############################################################################
+
+forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+forte_add_sourcefile_hcpp(PublishEventHTTP SubscribeEventHTTP)
+
diff --git a/src/modules/arrowhead/eventHandler/HTTP/PublishEventHTTP.cpp b/src/modules/arrowhead/eventHandler/HTTP/PublishEventHTTP.cpp
new file mode 100644
index 0000000..6eeb2f7
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/HTTP/PublishEventHTTP.cpp
@@ -0,0 +1,82 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "PublishEventHTTP.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "PublishEventHTTP_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_PublishEventHTTP, g_nStringIdPublishEventHTTP)
+
+const TForteInt16 FORTE_PublishEventHTTP::scm_anEOWithIndexes[] = {-1};
+const SAdapterInstanceDef FORTE_PublishEventHTTP::scm_astAdapterInstances[] = {
+{g_nStringIdArrowheadPublishAdp, g_nStringIdpublishEvent, false }};
+
+const SFBInterfaceSpec FORTE_PublishEventHTTP::scm_stFBInterfaceSpec = {
+  0,  0,  0,  0,
+  0,  0,   0, 0,  0,  0, 0, 
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBInstanceData FORTE_PublishEventHTTP::scm_astInternalFBs[] = {
+  {g_nStringIdANYToJSON, g_nStringIdANYToJSON},
+  {g_nStringIdInitFlag, g_nStringIdE_SR},
+  {g_nStringIdAPPEND_STRING_3, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdF_STRING_TO_WSTRING, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdQuery, g_nStringIdCLIENT_1_2},
+  {g_nStringIdE_PERMIT, g_nStringIdE_PERMIT},
+};
+
+const SCFB_FBParameter FORTE_PublishEventHTTP::scm_astParamters[] = {
+  {2, g_nStringIdIN_1, "STRING#http["},
+  {2, g_nStringIdIN_3, "STRING#/publish; POST; application/json]"},
+};
+
+const SCFB_FBConnectionData FORTE_PublishEventHTTP::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEO), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdREQ), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdCNF), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdREQ), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdEO), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdINIT), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdCNF), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdREQ), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdCNF), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdS), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdINITO), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEI), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdCNF), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdR), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdpublish), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 0},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_PublishEventHTTP::scm_astFannedOutEventConnections[] = {
+  {6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdpublished), CCompositeFB::scm_nAdapterMarker |0},
+};
+
+const SCFB_FBConnectionData FORTE_PublishEventHTTP::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdoutput), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdSD_1), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdQ), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdQI), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdOUT), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdIN), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdOUT), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdID), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdpublishEvent), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdinput), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdIN_2), 2},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_PublishEventHTTP::scm_astFannedOutDataConnections[] = {
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdPERMIT), 5},
+};
+
+const SCFB_FBNData FORTE_PublishEventHTTP::scm_stFBNData = {
+  6, scm_astInternalFBs,
+  8, scm_astEventConnections,
+  1, scm_astFannedOutEventConnections,
+  6, scm_astDataConnections,
+  1, scm_astFannedOutDataConnections,
+  2, scm_astParamters
+};
+
+
diff --git a/src/modules/arrowhead/eventHandler/HTTP/PublishEventHTTP.h b/src/modules/arrowhead/eventHandler/HTTP/PublishEventHTTP.h
new file mode 100644
index 0000000..4062817
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/HTTP/PublishEventHTTP.h
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _PUBLISHEVENTHTTP_H_
+#define _PUBLISHEVENTHTTP_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include "ArrowheadPublishAdp.h"
+
+class FORTE_PublishEventHTTP: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_PublishEventHTTP)
+
+private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_ArrowheadPublishAdp& publishEvent() {
+    return (*static_cast<FORTE_ArrowheadPublishAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_npublishEventAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(0, 0, 0, 1);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBParameter scm_astParamters[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_PublishEventHTTP){
+  };
+
+  virtual ~FORTE_PublishEventHTTP(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/HTTP/SubscribeEventHTTP.cpp b/src/modules/arrowhead/eventHandler/HTTP/SubscribeEventHTTP.cpp
new file mode 100644
index 0000000..c5e7a85
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/HTTP/SubscribeEventHTTP.cpp
@@ -0,0 +1,104 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "SubscribeEventHTTP.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "SubscribeEventHTTP_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_SubscribeEventHTTP, g_nStringIdSubscribeEventHTTP)
+
+const TForteInt16 FORTE_SubscribeEventHTTP::scm_anEOWithIndexes[] = {-1};
+const SAdapterInstanceDef FORTE_SubscribeEventHTTP::scm_astAdapterInstances[] = {
+{g_nStringIdSubscribeEventAdp, g_nStringIdSubscribeEventAdp, false }};
+
+const SFBInterfaceSpec FORTE_SubscribeEventHTTP::scm_stFBInterfaceSpec = {
+  0,  0,  0,  0,
+  0,  0,   0, 0,  0,  0, 0, 
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBInstanceData FORTE_SubscribeEventHTTP::scm_astInternalFBs[] = {
+  {g_nStringIdInitFlagReg, g_nStringIdE_SR},
+  {g_nStringIdE_PERMIT, g_nStringIdE_PERMIT},
+  {g_nStringIdInitFlagUnReg, g_nStringIdE_SR},
+  {g_nStringIdF_STRING_TO_WSTRING, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdCreateRegisterID, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdANYToJSON, g_nStringIdANYToJSON},
+  {g_nStringIdE_PERMIT_1, g_nStringIdE_PERMIT},
+  {g_nStringIdRegister, g_nStringIdCLIENT_1_2},
+  {g_nStringIdUnregister, g_nStringIdCLIENT_1_2},
+  {g_nStringIdCreateRegisterID_1, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdF_STRING_TO_WSTRING},
+};
+
+const SCFB_FBParameter FORTE_SubscribeEventHTTP::scm_astParamters[] = {
+  {4, g_nStringIdIN_1, "STRING#http["},
+  {4, g_nStringIdIN_3, "STRING#/subscription; POST; application/json]"},
+  {9, g_nStringIdIN_1, "STRING#http["},
+  {9, g_nStringIdIN_3, "STRING#/subscription; PUT; application/json]"},
+};
+
+const SCFB_FBConnectionData FORTE_SubscribeEventHTTP::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdINITO), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEI), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdCNF), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdR), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdEO), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdINIT), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdCNF), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdREQ), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdCNF), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEO), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdREQ), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdSubscribe), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdREQ), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdEO), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdINIT), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdEO), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdREQ), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdINITO), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdEI), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdCNF), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdUnsubscribed), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdUnsubscribe), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdREQ), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdCNF), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdREQ), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdCNF), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 5},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_SubscribeEventHTTP::scm_astFannedOutEventConnections[] = {
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdSubscribed), CCompositeFB::scm_nAdapterMarker |0},
+  {4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdS), 0},
+  {10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdR), 2},
+  {13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdS), 2},
+};
+
+const SCFB_FBConnectionData FORTE_SubscribeEventHTTP::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdQ), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdPERMIT), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdQ), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdQI), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdoutput), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdSD_1), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdOUT), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdIN), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdOUT), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdID), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdIN_2), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdeventFilter), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdinput), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdOUT), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdIN), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdOUT), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdID), 8},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_SubscribeEventHTTP::scm_astFannedOutDataConnections[] = {
+  {0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdQI), 8},
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdPERMIT), 1},
+  {2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdSD_1), 8},
+  {5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdIN_2), 9},
+};
+
+const SCFB_FBNData FORTE_SubscribeEventHTTP::scm_stFBNData = {
+  11, scm_astInternalFBs,
+  14, scm_astEventConnections,
+  4, scm_astFannedOutEventConnections,
+  9, scm_astDataConnections,
+  4, scm_astFannedOutDataConnections,
+  4, scm_astParamters
+};
+
+
diff --git a/src/modules/arrowhead/eventHandler/HTTP/SubscribeEventHTTP.h b/src/modules/arrowhead/eventHandler/HTTP/SubscribeEventHTTP.h
new file mode 100644
index 0000000..295d03d
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/HTTP/SubscribeEventHTTP.h
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _SUBSCRIBEEVENTHTTP_H_
+#define _SUBSCRIBEEVENTHTTP_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include "SubscribeEventAdp.h"
+
+class FORTE_SubscribeEventHTTP: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_SubscribeEventHTTP)
+
+private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_SubscribeEventAdp& SubscribeEventAdp() {
+    return (*static_cast<FORTE_SubscribeEventAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_nSubscribeEventAdpAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(0, 0, 0, 1);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBParameter scm_astParamters[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_SubscribeEventHTTP){
+  };
+
+  virtual ~FORTE_SubscribeEventHTTP(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/OpcUa/CMakeLists.txt b/src/modules/arrowhead/eventHandler/OpcUa/CMakeLists.txt
new file mode 100644
index 0000000..1dd0a82
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/OpcUa/CMakeLists.txt
@@ -0,0 +1,22 @@
+# *******************************************************************************
+# Copyright (c) 2019, fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#   Jose Cabral - initial implementation
+# *******************************************************************************
+
+#############################################################################
+# Arrowhead specific functional blocks for OPC UA for event handler
+#############################################################################
+
+forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+forte_add_sourcefile_hcpp(PublishEventOpcUa)
+forte_add_sourcefile_hcpp(SubscribeEventOpcUa)
+
+  
\ No newline at end of file
diff --git a/src/modules/arrowhead/eventHandler/OpcUa/PublishEventOpcUa.cpp b/src/modules/arrowhead/eventHandler/OpcUa/PublishEventOpcUa.cpp
new file mode 100644
index 0000000..c0196d3
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/OpcUa/PublishEventOpcUa.cpp
@@ -0,0 +1,99 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "PublishEventOpcUa.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "PublishEventOpcUa_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_PublishEventOpcUa, g_nStringIdPublishEventOpcUa)
+
+const TForteInt16 FORTE_PublishEventOpcUa::scm_anEOWithIndexes[] = {-1};
+const SAdapterInstanceDef FORTE_PublishEventOpcUa::scm_astAdapterInstances[] = {
+{g_nStringIdArrowheadPublishAdp, g_nStringIdpublishEvent, false }};
+
+const SFBInterfaceSpec FORTE_PublishEventOpcUa::scm_stFBInterfaceSpec = {
+  0,  0,  0,  0,
+  0,  0,   0, 0,  0,  0, 0, 
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBInstanceData FORTE_PublishEventOpcUa::scm_astInternalFBs[] = {
+  {g_nStringIdANYToJSON, g_nStringIdANYToJSON},
+  {g_nStringIdInitFlag, g_nStringIdE_SR},
+  {g_nStringIdAPPEND_STRING_3, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdF_STRING_TO_WSTRING, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdE_PERMIT, g_nStringIdE_PERMIT},
+  {g_nStringIdE_SWITCH_2, g_nStringIdE_SWITCH},
+  {g_nStringIdE_SWITCH_1_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_CTU_1, g_nStringIdE_CTU},
+  {g_nStringIdE_DELAY_1, g_nStringIdE_DELAY},
+  {g_nStringIdQuery, g_nStringIdCLIENT_1_0},
+};
+
+const SCFB_FBParameter FORTE_PublishEventOpcUa::scm_astParamters[] = {
+  {2, g_nStringIdIN_1, "STRING#opc_ua[CALL_METHOD; "},
+  {2, g_nStringIdIN_3, "STRING##; /Objects/2:EventHandler/2:publish]"},
+  {7, g_nStringIdPV, "UINT#3"},
+  {8, g_nStringIdDT, "T#250ms"},
+};
+
+const SCFB_FBConnectionData FORTE_PublishEventOpcUa::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdCNF), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdREQ), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdCNF), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdREQ), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdCNF), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdS), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdpublish), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEO1), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdR), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEO1), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdR), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEO0), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdCU), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdCUO), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEI), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEO0), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1, g_nStringIdSTART), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdEO), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdINIT), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEO), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdREQ), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1, g_nStringIdEO), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdREQ), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdINITO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEI), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdCNF), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEI), 5},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_PublishEventOpcUa::scm_astFannedOutEventConnections[] = {
+  {4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdpublished), CCompositeFB::scm_nAdapterMarker |0},
+  {4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdR), 1},
+  {5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdR), 1},
+  {5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdpublished), CCompositeFB::scm_nAdapterMarker |0},
+};
+
+const SCFB_FBConnectionData FORTE_PublishEventOpcUa::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdOUT), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdIN), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdQ), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdPERMIT), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdpublishEvent), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdinput), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdpublishEvent, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdIN_2), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdQ), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdG), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdOUT), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdID), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdoutput), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdSD_1), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdQO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdG), 5},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_PublishEventOpcUa::scm_astFannedOutDataConnections[] = {
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdQI), 9},
+};
+
+const SCFB_FBNData FORTE_PublishEventOpcUa::scm_stFBNData = {
+  10, scm_astInternalFBs,
+  14, scm_astEventConnections,
+  4, scm_astFannedOutEventConnections,
+  8, scm_astDataConnections,
+  1, scm_astFannedOutDataConnections,
+  4, scm_astParamters
+};
+
+
diff --git a/src/modules/arrowhead/eventHandler/OpcUa/PublishEventOpcUa.h b/src/modules/arrowhead/eventHandler/OpcUa/PublishEventOpcUa.h
new file mode 100644
index 0000000..bc99961
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/OpcUa/PublishEventOpcUa.h
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _PUBLISHEVENTOPCUA_H_
+#define _PUBLISHEVENTOPCUA_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include "ArrowheadPublishAdp.h"
+
+class FORTE_PublishEventOpcUa: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_PublishEventOpcUa)
+
+private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_ArrowheadPublishAdp& publishEvent() {
+    return (*static_cast<FORTE_ArrowheadPublishAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_npublishEventAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(0, 0, 0, 1);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBParameter scm_astParamters[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_PublishEventOpcUa){
+  };
+
+  virtual ~FORTE_PublishEventOpcUa(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/OpcUa/SubscribeEventOpcUa.cpp b/src/modules/arrowhead/eventHandler/OpcUa/SubscribeEventOpcUa.cpp
new file mode 100644
index 0000000..a61f94c
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/OpcUa/SubscribeEventOpcUa.cpp
@@ -0,0 +1,138 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "SubscribeEventOpcUa.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "SubscribeEventOpcUa_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_SubscribeEventOpcUa, g_nStringIdSubscribeEventOpcUa)
+
+const TForteInt16 FORTE_SubscribeEventOpcUa::scm_anEOWithIndexes[] = {-1};
+const SAdapterInstanceDef FORTE_SubscribeEventOpcUa::scm_astAdapterInstances[] = {
+{g_nStringIdSubscribeEventAdp, g_nStringIdSubscribeEventAdp, false }};
+
+const SFBInterfaceSpec FORTE_SubscribeEventOpcUa::scm_stFBInterfaceSpec = {
+  0,  0,  0,  0,
+  0,  0,   0, 0,  0,  0, 0, 
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBInstanceData FORTE_SubscribeEventOpcUa::scm_astInternalFBs[] = {
+  {g_nStringIdInitFlagReg, g_nStringIdE_SR},
+  {g_nStringIdE_PERMIT, g_nStringIdE_PERMIT},
+  {g_nStringIdInitFlagUnReg, g_nStringIdE_SR},
+  {g_nStringIdF_STRING_TO_WSTRING, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdCreateRegisterID, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdANYToJSON, g_nStringIdANYToJSON},
+  {g_nStringIdE_PERMIT_1, g_nStringIdE_PERMIT},
+  {g_nStringIdCreateRegisterID_1, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdRegister, g_nStringIdCLIENT_1_0},
+  {g_nStringIdUnregister, g_nStringIdCLIENT_1_0},
+  {g_nStringIdE_DELAY_1, g_nStringIdE_DELAY},
+  {g_nStringIdE_SWITCH_1_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_SWITCH_2, g_nStringIdE_SWITCH},
+  {g_nStringIdE_CTU_1, g_nStringIdE_CTU},
+  {g_nStringIdE_DELAY_1_1, g_nStringIdE_DELAY},
+  {g_nStringIdE_SWITCH_1_1_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_SWITCH_2_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_CTU_1_1, g_nStringIdE_CTU},
+};
+
+const SCFB_FBParameter FORTE_SubscribeEventOpcUa::scm_astParamters[] = {
+  {4, g_nStringIdIN_1, "STRING#opc_ua[CALL_METHOD; "},
+  {4, g_nStringIdIN_3, "STRING##; /Objects/2:EventHandler/2:subscribe]"},
+  {7, g_nStringIdIN_1, "STRING#opc_ua[CALL_METHOD; "},
+  {7, g_nStringIdIN_3, "STRING##; /Objects/2:EventHandler/2:unsubscribe]"},
+  {11, g_nStringIdDT, "T#250ms"},
+  {14, g_nStringIdPV, "UINT#3"},
+  {15, g_nStringIdDT, "T#250ms"},
+  {18, g_nStringIdPV, "UINT#3"},
+};
+
+const SCFB_FBConnectionData FORTE_SubscribeEventOpcUa::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdCNF), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdREQ), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdCNF), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdSubscribe), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdREQ), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdUnsubscribe), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdREQ), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdCNF), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdREQ), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdCNF), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdEO), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdINIT), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEO), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdREQ), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdINITO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEI), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdEO), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdINIT), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdEO), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdREQ), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdINITO), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdEI), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEO1), 13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdR), 14},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEO1), 12, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdR), 14},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdCUO), 14, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEI), 12},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEO0), 13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdCU), 14},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEO0), 12, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1, g_nStringIdSTART), 11},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2_1, g_nStringIdEO1), 17, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1_1, g_nStringIdR), 18},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1_1, g_nStringIdEO1), 16, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1_1, g_nStringIdR), 18},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1_1, g_nStringIdCUO), 18, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1_1, g_nStringIdEI), 16},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2_1, g_nStringIdEO0), 17, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1_1, g_nStringIdCU), 18},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1_1, g_nStringIdEO0), 16, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1_1, g_nStringIdSTART), 15},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdCNF), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEI), 13},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1, g_nStringIdEO), 11, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdREQ), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdCNF), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2_1, g_nStringIdEI), 17},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1_1, g_nStringIdEO), 15, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdREQ), 9},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_SubscribeEventOpcUa::scm_astFannedOutEventConnections[] = {
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdS), 0},
+  {5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdS), 2},
+  {12, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdUnsubscribed), CCompositeFB::scm_nAdapterMarker |0},
+  {12, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdR), 2},
+  {13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdR), 2},
+  {13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdUnsubscribed), CCompositeFB::scm_nAdapterMarker |0},
+  {17, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdSubscribed), CCompositeFB::scm_nAdapterMarker |0},
+  {17, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdR), 0},
+  {18, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdR), 0},
+  {18, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdSubscribed), CCompositeFB::scm_nAdapterMarker |0},
+};
+
+const SCFB_FBConnectionData FORTE_SubscribeEventOpcUa::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdQ), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdPERMIT), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdOUT), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdIN), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdQ), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdPERMIT), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdIN_2), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdeventFilter), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdinput), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdOUT), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdIN), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdOUT), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdID), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdoutput), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdSD_1), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_2, g_nStringIdOUT), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdID), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdQ), 14, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdG), 12},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1_1, g_nStringIdQ), 18, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1_1, g_nStringIdG), 16},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdQO), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdG), 13},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdQO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2_1, g_nStringIdG), 17},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_SubscribeEventOpcUa::scm_astFannedOutDataConnections[] = {
+  {0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdQI), 10},
+  {2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdQI), 9},
+  {3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID_1, g_nStringIdIN_2), 7},
+  {7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdSD_1), 10},
+};
+
+const SCFB_FBNData FORTE_SubscribeEventOpcUa::scm_stFBNData = {
+  19, scm_astInternalFBs,
+  26, scm_astEventConnections,
+  10, scm_astFannedOutEventConnections,
+  13, scm_astDataConnections,
+  4, scm_astFannedOutDataConnections,
+  8, scm_astParamters
+};
+
+
diff --git a/src/modules/arrowhead/eventHandler/OpcUa/SubscribeEventOpcUa.h b/src/modules/arrowhead/eventHandler/OpcUa/SubscribeEventOpcUa.h
new file mode 100644
index 0000000..04ec801
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/OpcUa/SubscribeEventOpcUa.h
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _SUBSCRIBEEVENTOPCUA_H_
+#define _SUBSCRIBEEVENTOPCUA_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include "SubscribeEventAdp.h"
+
+class FORTE_SubscribeEventOpcUa: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_SubscribeEventOpcUa)
+
+private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_SubscribeEventAdp& SubscribeEventAdp() {
+    return (*static_cast<FORTE_SubscribeEventAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_nSubscribeEventAdpAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(0, 0, 0, 1);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBParameter scm_astParamters[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_SubscribeEventOpcUa){
+  };
+
+  virtual ~FORTE_SubscribeEventOpcUa(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/SubscribeEvent.cpp b/src/modules/arrowhead/eventHandler/SubscribeEvent.cpp
new file mode 100644
index 0000000..f6e28e6
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/SubscribeEvent.cpp
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "SubscribeEvent.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "SubscribeEvent_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_SubscribeEvent, g_nStringIdSubscribeEvent)
+
+const CStringDictionary::TStringId FORTE_SubscribeEvent::scm_anDataInputNames[] = {g_nStringIdeventFilter, g_nStringIdendpoint};
+
+const CStringDictionary::TStringId FORTE_SubscribeEvent::scm_anDataInputTypeIds[] = {g_nStringIdEventFilter, g_nStringIdWSTRING};
+
+const TForteInt16 FORTE_SubscribeEvent::scm_anEIWithIndexes[] = {0, 3};
+const TDataIOID FORTE_SubscribeEvent::scm_anEIWith[] = {0, 1, 255, 0, 1, 255};
+const CStringDictionary::TStringId FORTE_SubscribeEvent::scm_anEventInputNames[] = {g_nStringIdSubscribe, g_nStringIdUnsubscribe};
+
+const TForteInt16 FORTE_SubscribeEvent::scm_anEOWithIndexes[] = {-1, -1, -1};
+const CStringDictionary::TStringId FORTE_SubscribeEvent::scm_anEventOutputNames[] = {g_nStringIdSubscribed, g_nStringIdUnsubscribed};
+
+const SAdapterInstanceDef FORTE_SubscribeEvent::scm_astAdapterInstances[] = {
+{g_nStringIdSubscribeEventAdp, g_nStringIdSubscribeEventAdp, true }};
+
+const SFBInterfaceSpec FORTE_SubscribeEvent::scm_stFBInterfaceSpec = {
+  2,  scm_anEventInputNames,  scm_anEIWith,  scm_anEIWithIndexes,
+  2,  scm_anEventOutputNames,  0, 0,  2,  scm_anDataInputNames, scm_anDataInputTypeIds,
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBConnectionData FORTE_SubscribeEvent::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdUnsubscribe), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdUnsubscribe), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdSubscribe), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdSubscribe), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdSubscribed), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdSubscribed), -1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdUnsubscribed), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdUnsubscribed), -1},
+};
+
+const SCFB_FBConnectionData FORTE_SubscribeEvent::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdeventFilter), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdeventFilter), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdendpoint), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdSubscribeEventAdp, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0},
+};
+
+const SCFB_FBNData FORTE_SubscribeEvent::scm_stFBNData = {
+  0, 0,
+  4, scm_astEventConnections,
+  0, 0,
+  2, scm_astDataConnections,
+  0, 0,
+  0, 0
+};
+
+
diff --git a/src/modules/arrowhead/eventHandler/SubscribeEvent.h b/src/modules/arrowhead/eventHandler/SubscribeEvent.h
new file mode 100644
index 0000000..3882277
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/SubscribeEvent.h
@@ -0,0 +1,71 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _SUBSCRIBEEVENT_H_
+#define _SUBSCRIBEEVENT_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include <forte_eventfilter.h>
+#include <forte_wstring.h>
+#include "SubscribeEventAdp.h"
+
+class FORTE_SubscribeEvent: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_SubscribeEvent)
+
+private:
+  static const CStringDictionary::TStringId scm_anDataInputNames[];
+  static const CStringDictionary::TStringId scm_anDataInputTypeIds[];
+  CIEC_EventFilter &eventFilter() {
+    return *static_cast<CIEC_EventFilter*>(getDI(0));
+  };
+
+  CIEC_WSTRING &endpoint() {
+    return *static_cast<CIEC_WSTRING*>(getDI(1));
+  };
+
+  static const TEventID scm_nEventSubscribeID = 0;
+  static const TEventID scm_nEventUnsubscribeID = 1;
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const TDataIOID scm_anEIWith[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+  static const TEventID scm_nEventSubscribedID = 0;
+  static const TEventID scm_nEventUnsubscribedID = 1;
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_SubscribeEventAdp& SubscribeEventAdp() {
+    return (*static_cast<FORTE_SubscribeEventAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_nSubscribeEventAdpAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(2, 2, 0, 1);
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_SubscribeEvent){
+  };
+
+  virtual ~FORTE_SubscribeEvent(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/SubscribeEventAdp.cpp b/src/modules/arrowhead/eventHandler/SubscribeEventAdp.cpp
new file mode 100644
index 0000000..1d97aa1
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/SubscribeEventAdp.cpp
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "SubscribeEventAdp.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "SubscribeEventAdp_gen.cpp"
+#endif
+
+DEFINE_ADAPTER_TYPE(FORTE_SubscribeEventAdp, g_nStringIdSubscribeEventAdp)
+
+const CStringDictionary::TStringId FORTE_SubscribeEventAdp::scm_anDataOutputNames[] = {g_nStringIdeventFilter, g_nStringIdendpoint};
+
+const CStringDictionary::TStringId FORTE_SubscribeEventAdp::scm_anDataOutputTypeIds[] = {g_nStringIdEventFilter, g_nStringIdWSTRING};
+
+const TForteInt16 FORTE_SubscribeEventAdp::scm_anEIWithIndexes[] = {-1, -1, -1};
+const CStringDictionary::TStringId FORTE_SubscribeEventAdp::scm_anEventInputNames[] = {g_nStringIdSubscribed, g_nStringIdUnsubscribed};
+
+const TDataIOID FORTE_SubscribeEventAdp::scm_anEOWith[] = {0, 1, 255, 1, 0, 255};
+const TForteInt16 FORTE_SubscribeEventAdp::scm_anEOWithIndexes[] = {0, 3, -1};
+const CStringDictionary::TStringId FORTE_SubscribeEventAdp::scm_anEventOutputNames[] = {g_nStringIdSubscribe, g_nStringIdUnsubscribe};
+
+const SFBInterfaceSpec FORTE_SubscribeEventAdp::scm_stFBInterfaceSpecSocket = {
+  2,  scm_anEventInputNames,  0,  scm_anEIWithIndexes,
+  2,  scm_anEventOutputNames,  scm_anEOWith, scm_anEOWithIndexes,  0,  0, 0, 
+  2,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0, 0
+};
+
+const SFBInterfaceSpec FORTE_SubscribeEventAdp::scm_stFBInterfaceSpecPlug = {
+  2,  scm_anEventOutputNames,  scm_anEOWith,  scm_anEOWithIndexes,
+  2,  scm_anEventInputNames,  0, 0,  2,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0,  0, 0,
+  0, 0
+};
+
+
+
diff --git a/src/modules/arrowhead/eventHandler/SubscribeEventAdp.h b/src/modules/arrowhead/eventHandler/SubscribeEventAdp.h
new file mode 100644
index 0000000..04750f9
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/SubscribeEventAdp.h
@@ -0,0 +1,79 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _SUBSCRIBEEVENTADP_H_
+#define _SUBSCRIBEEVENTADP_H_
+
+#include <adapter.h>
+#include <typelib.h>
+#include <forte_eventfilter.h>
+#include <forte_wstring.h>
+
+class FORTE_SubscribeEventAdp: public CAdapter{
+  DECLARE_ADAPTER_TYPE(FORTE_SubscribeEventAdp)
+
+private:
+ private:
+  static const CStringDictionary::TStringId scm_anDataOutputNames[];
+  static const CStringDictionary::TStringId scm_anDataOutputTypeIds[];
+ public:
+  CIEC_EventFilter &eventFilter() {
+    return *static_cast<CIEC_EventFilter*>((isSocket()) ? getDO(0) : getDI(0));
+  };
+
+  CIEC_WSTRING &endpoint() {
+    return *static_cast<CIEC_WSTRING*>((isSocket()) ? getDO(1) : getDI(1));
+  };
+
+ public:
+  static const TEventID scm_nEventSubscribedID = 0;
+  int Subscribed() {
+    return m_nParentAdapterListEventID + scm_nEventSubscribedID;
+  }
+  static const TEventID scm_nEventUnsubscribedID = 1;
+  int Unsubscribed() {
+    return m_nParentAdapterListEventID + scm_nEventUnsubscribedID;
+  }
+ private:
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+ public:
+  static const TEventID scm_nEventSubscribeID = 0;
+  int Subscribe() {
+    return m_nParentAdapterListEventID + scm_nEventSubscribeID;
+  }
+  static const TEventID scm_nEventUnsubscribeID = 1;
+  int Unsubscribe() {
+    return m_nParentAdapterListEventID + scm_nEventUnsubscribeID;
+  }
+ private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const TDataIOID scm_anEOWith[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpecSocket;
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpecPlug;
+
+   FORTE_ADAPTER_DATA_ARRAY(2, 2, 0, 2, 0);
+
+public:
+  ADAPTER_CTOR(FORTE_SubscribeEventAdp){
+  };
+
+  virtual ~FORTE_SubscribeEventAdp(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/eventHandler/forte_arrowheadevent.cpp b/src/modules/arrowhead/eventHandler/forte_arrowheadevent.cpp
new file mode 100644
index 0000000..b33736a
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/forte_arrowheadevent.cpp
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "forte_arrowheadevent.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "forte_arrowheadevent_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_DATATYPE(ArrowheadEvent, g_nStringIdArrowheadEvent);
+
+CIEC_ArrowheadEvent::CIEC_ArrowheadEvent() :
+    CIEC_STRUCT(g_nStringIdArrowheadEvent, 4, scmElementTypes, scmElementNames, e_APPLICATION + e_CONSTRUCTED + 1) {
+}
+
+const CStringDictionary::TStringId CIEC_ArrowheadEvent::scmElementTypes[] = { g_nStringIdWSTRING, g_nStringIdWSTRING, g_nStringIdDATE_AND_TIME, g_nStringIdARRAY, 10, g_nStringIdWSTRING};
+const CStringDictionary::TStringId CIEC_ArrowheadEvent::scmElementNames[] =
+  { g_nStringIdtype, g_nStringIdpayload, g_nStringIdtimestamp, g_nStringIdeventMetadata };
diff --git a/src/modules/arrowhead/eventHandler/forte_arrowheadevent.h b/src/modules/arrowhead/eventHandler/forte_arrowheadevent.h
new file mode 100644
index 0000000..20b021c
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/forte_arrowheadevent.h
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _FORTE_ARROWHEADSEVENT_H_
+#define _FORTE_ARROWHEADSEVENT_H_
+
+#include "forte_struct.h"
+#include "forte_wstring.h"
+#include "forte_array.h"
+#include "forte_date_and_time.h"
+
+class CIEC_ArrowheadEvent : public CIEC_STRUCT {
+  DECLARE_FIRMWARE_DATATYPE(ArrowheadEvent)
+
+  public:
+    CIEC_ArrowheadEvent();
+
+    virtual ~CIEC_ArrowheadEvent() {
+    }
+
+    CIEC_WSTRING &type() {
+      return *static_cast<CIEC_WSTRING*>(&getMembers()[0]);
+    }
+
+    CIEC_WSTRING &payload() {
+      return *static_cast<CIEC_WSTRING*>(&getMembers()[1]);
+    }
+
+    CIEC_DATE_AND_TIME &timestamp() {
+      return *static_cast<CIEC_DATE_AND_TIME*>(&getMembers()[2]);
+    }
+
+    CIEC_ARRAY *eventMetadata_array() {
+      return static_cast<CIEC_ARRAY *>(&getMembers()[3]); //the first element marks the start of the array
+    }
+
+    CIEC_WSTRING *eventMetadata() {
+      return static_cast<CIEC_WSTRING*>((*static_cast<CIEC_ARRAY *>(&getMembers()[3]))[0]); //the first element marks the start of the array
+    }
+
+  private:
+    static const CStringDictionary::TStringId scmElementTypes[];
+    static const CStringDictionary::TStringId scmElementNames[];
+};
+
+#endif //_FORTE_ARROWHEADSEVENT_H_
diff --git a/src/modules/arrowhead/eventHandler/forte_eventfilter.cpp b/src/modules/arrowhead/eventHandler/forte_eventfilter.cpp
new file mode 100644
index 0000000..13a85c4
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/forte_eventfilter.cpp
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "forte_eventfilter.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "forte_eventfilter_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_DATATYPE(EventFilter, g_nStringIdEventFilter);
+
+CIEC_EventFilter::CIEC_EventFilter() :
+    CIEC_STRUCT(g_nStringIdEventFilter, 8, scmElementTypes, scmElementNames, e_APPLICATION + e_CONSTRUCTED + 1) {
+}
+
+const CStringDictionary::TStringId CIEC_EventFilter::scmElementTypes[] =
+  { g_nStringIdWSTRING, g_nStringIdArrowheadSystem, g_nStringIdARRAY, 10, g_nStringIdArrowheadSystem, g_nStringIdDATE_AND_TIME, g_nStringIdDATE_AND_TIME,
+    g_nStringIdARRAY, 10, g_nStringIdWSTRING, g_nStringIdWSTRING, g_nStringIdBOOL };
+const CStringDictionary::TStringId CIEC_EventFilter::scmElementNames[] = { g_nStringIdeventType, g_nStringIdconsumer, g_nStringIdsources, g_nStringIdstartDate,
+  g_nStringIdendDate, g_nStringIdfilterMetada, g_nStringIdnotifyUri, g_nStringIdmatchMetada };
diff --git a/src/modules/arrowhead/eventHandler/forte_eventfilter.h b/src/modules/arrowhead/eventHandler/forte_eventfilter.h
new file mode 100644
index 0000000..46b6c02
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/forte_eventfilter.h
@@ -0,0 +1,75 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _FORTE_EVENTFILTER_H_
+#define _FORTE_EVENTFILTER_H_
+
+#include "forte_struct.h"
+#include "forte_array.h"
+#include "forte_wstring.h"
+#include "forte_arrowheadsystem.h"
+#include "forte_date_and_time.h"
+#include "forte_bool.h"
+
+class CIEC_EventFilter : public CIEC_STRUCT {
+  DECLARE_FIRMWARE_DATATYPE(EventFilter)
+
+  public:
+    CIEC_EventFilter();
+
+    virtual ~CIEC_EventFilter() {
+    }
+
+    CIEC_WSTRING &eventType() {
+      return *static_cast<CIEC_WSTRING*>(&getMembers()[0]);
+    }
+
+    CIEC_ArrowheadSystem &consumer() {
+      return *static_cast<CIEC_ArrowheadSystem*>(&getMembers()[1]);
+    }
+
+    CIEC_ARRAY *sources_array() {
+      return static_cast<CIEC_ARRAY *>(&getMembers()[2]); //the first element marks the start of the array
+    }
+
+    CIEC_ArrowheadSystem *sources() {
+      return static_cast<CIEC_ArrowheadSystem*>((*static_cast<CIEC_ARRAY *>(&getMembers()[2]))[0]); //the first element marks the start of the array
+    }
+
+    CIEC_DATE_AND_TIME &startDate() {
+      return *static_cast<CIEC_DATE_AND_TIME*>(&getMembers()[3]);
+    }
+    CIEC_DATE_AND_TIME &endDate() {
+      return *static_cast<CIEC_DATE_AND_TIME*>(&getMembers()[4]);
+    }
+
+    CIEC_ARRAY *filterMetadata_array() {
+      return static_cast<CIEC_ARRAY *>(&getMembers()[5]); //the first element marks the start of the array
+    }
+
+    CIEC_WSTRING *filterMetadata() {
+      return static_cast<CIEC_WSTRING*>((*static_cast<CIEC_ARRAY *>(&getMembers()[5]))[0]); //the first element marks the start of the array
+    }
+
+    CIEC_WSTRING &notifyUri() {
+      return *static_cast<CIEC_WSTRING*>(&getMembers()[6]);
+    }
+    CIEC_BOOL &matchMetadata() {
+      return *static_cast<CIEC_BOOL*>(&getMembers()[7]);
+    }
+
+  private:
+    static const CStringDictionary::TStringId scmElementTypes[];
+    static const CStringDictionary::TStringId scmElementNames[];
+};
+
+#endif //_FORTE_EVENTFILTER_H_
diff --git a/src/modules/arrowhead/eventHandler/forte_publishevent.cpp b/src/modules/arrowhead/eventHandler/forte_publishevent.cpp
new file mode 100644
index 0000000..cdc689a
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/forte_publishevent.cpp
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "forte_publishevent.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "forte_publishevent_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_DATATYPE(PublishEvent, g_nStringIdPublishEvent);
+
+CIEC_PublishEvent::CIEC_PublishEvent() :
+    CIEC_STRUCT(g_nStringIdPublishEvent, 3, scmElementTypes, scmElementNames, e_APPLICATION + e_CONSTRUCTED + 1) {
+}
+
+const CStringDictionary::TStringId CIEC_PublishEvent::scmElementTypes[] = { g_nStringIdArrowheadSystem, g_nStringIdArrowheadEvent, g_nStringIdWSTRING};
+const CStringDictionary::TStringId CIEC_PublishEvent::scmElementNames[] =
+  { g_nStringIdsource, g_nStringIdevent, g_nStringIddeliveryCompleteUri};
diff --git a/src/modules/arrowhead/eventHandler/forte_publishevent.h b/src/modules/arrowhead/eventHandler/forte_publishevent.h
new file mode 100644
index 0000000..2d7332b
--- /dev/null
+++ b/src/modules/arrowhead/eventHandler/forte_publishevent.h
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _FORTE_PUBLISHEVENT_H_
+#define _FORTE_PUBLISHEVENT_H_
+
+#include "forte_struct.h"
+#include "forte_wstring.h"
+#include "forte_arrowheadsystem.h"
+#include "forte_arrowheadevent.h"
+
+class CIEC_PublishEvent : public CIEC_STRUCT {
+  DECLARE_FIRMWARE_DATATYPE(PublishEvent)
+
+  public:
+    CIEC_PublishEvent();
+
+    virtual ~CIEC_PublishEvent() {
+    }
+
+    CIEC_ArrowheadSystem &source() {
+      return *static_cast<CIEC_ArrowheadSystem*>(&getMembers()[0]);
+    }
+
+    CIEC_ArrowheadEvent &event() {
+      return *static_cast<CIEC_ArrowheadEvent*>(&getMembers()[1]);
+    }
+
+    CIEC_WSTRING &deliveryCompleteUri() {
+      return *static_cast<CIEC_WSTRING*>(&getMembers()[2]);
+    }
+
+  private:
+    static const CStringDictionary::TStringId scmElementTypes[];
+    static const CStringDictionary::TStringId scmElementNames[];
+};
+
+#endif //_FORTE_PUBLISHEVENT_H_
diff --git a/src/modules/arrowhead/orchestrator/CMakeLists.txt b/src/modules/arrowhead/orchestrator/CMakeLists.txt
index 37a1b7e..2f4a646 100644
--- a/src/modules/arrowhead/orchestrator/CMakeLists.txt
+++ b/src/modules/arrowhead/orchestrator/CMakeLists.txt
@@ -26,4 +26,6 @@
   add_subdirectory(HTTP)
 endif(FORTE_COM_HTTP)
 
-  
\ No newline at end of file
+if(FORTE_COM_OPC_UA)
+  add_subdirectory(OpcUa)
+endif(FORTE_COM_OPC_UA)
\ No newline at end of file
diff --git a/src/modules/arrowhead/orchestrator/OpcUa/CMakeLists.txt b/src/modules/arrowhead/orchestrator/OpcUa/CMakeLists.txt
new file mode 100644
index 0000000..e6b87b4
--- /dev/null
+++ b/src/modules/arrowhead/orchestrator/OpcUa/CMakeLists.txt
@@ -0,0 +1,19 @@
+# *******************************************************************************
+# Copyright (c) 2019, fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#   Jose Cabral - initial implementation
+# *******************************************************************************
+
+#############################################################################
+# Arrowhead specific functional blocks for OpcUa for the orchestrator
+#############################################################################
+
+forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+forte_add_sourcefile_hcpp(RequestOrchestrationOpcUa)
diff --git a/src/modules/arrowhead/orchestrator/OpcUa/RequestOrchestrationOpcUa.cpp b/src/modules/arrowhead/orchestrator/OpcUa/RequestOrchestrationOpcUa.cpp
new file mode 100644
index 0000000..a84c3d3
--- /dev/null
+++ b/src/modules/arrowhead/orchestrator/OpcUa/RequestOrchestrationOpcUa.cpp
@@ -0,0 +1,103 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "RequestOrchestrationOpcUa.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "RequestOrchestrationOpcUa_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_RequestOrchestrationOpcUa, g_nStringIdRequestOrchestrationOpcUa)
+
+const TForteInt16 FORTE_RequestOrchestrationOpcUa::scm_anEOWithIndexes[] = {-1};
+const SAdapterInstanceDef FORTE_RequestOrchestrationOpcUa::scm_astAdapterInstances[] = {
+{g_nStringIdOrchestratorRequestAdp, g_nStringIdrequestOrchestration, false }};
+
+const SFBInterfaceSpec FORTE_RequestOrchestrationOpcUa::scm_stFBInterfaceSpec = {
+  0,  0,  0,  0,
+  0,  0,   0, 0,  0,  0, 0, 
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBInstanceData FORTE_RequestOrchestrationOpcUa::scm_astInternalFBs[] = {
+  {g_nStringIdAPPEND_STRING_3, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdInitFlag, g_nStringIdE_SR},
+  {g_nStringIdE_PERMIT, g_nStringIdE_PERMIT},
+  {g_nStringIdF_STRING_TO_WSTRING, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdANYToJSON, g_nStringIdANYToJSON},
+  {g_nStringIdGetHTTPOrchestrationForm, g_nStringIdGetArrayResponseFromJSON},
+  {g_nStringIdRequest, g_nStringIdCLIENT_1},
+  {g_nStringIdE_SWITCH, g_nStringIdE_SWITCH},
+  {g_nStringIdE_SWITCH_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_CTU, g_nStringIdE_CTU},
+  {g_nStringIdE_DELAY, g_nStringIdE_DELAY},
+};
+
+const SCFB_FBParameter FORTE_RequestOrchestrationOpcUa::scm_astParamters[] = {
+  {0, g_nStringIdIN_1, "STRING#opc_ua[CALL_METHOD; "},
+  {0, g_nStringIdIN_3, "STRING##; /Objects/2:Orchestrator/2:orchestration]"},
+  {9, g_nStringIdPV, "UINT#3"},
+  {10, g_nStringIdDT, "T#250ms"},
+};
+
+const SCFB_FBConnectionData FORTE_RequestOrchestrationOpcUa::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdCNF), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdREQ), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdCNF), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdS), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdCNF), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdREQ), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdrequestOrchestration, g_nStringIdrequestOrchestator), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPOrchestrationForm, g_nStringIdCNF), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdrequestOrchestration, g_nStringIdresponseReceived), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdEO), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdINIT), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEO), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdREQ), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdINITO), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEI), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEO1), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPOrchestrationForm, g_nStringIdREQ), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdCNF), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEI), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEO0), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdCU), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY, g_nStringIdEO), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdREQ), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdCUO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEI), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEO0), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY, g_nStringIdSTART), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEO1), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdR), 1},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_RequestOrchestrationOpcUa::scm_astFannedOutEventConnections[] = {
+  {8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdR), 1},
+  {8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdR), 9},
+  {14, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPOrchestrationForm, g_nStringIdREQ), 5},
+  {14, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdR), 9},
+};
+
+const SCFB_FBConnectionData FORTE_RequestOrchestrationOpcUa::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdOUT), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdIN), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdQ), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdPERMIT), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdrequestOrchestration, g_nStringIdserviceRequestForm), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdinput), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdrequestOrchestration, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdIN_2), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPOrchestrationForm, g_nStringIdoutput), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdrequestOrchestration, g_nStringIdorchestrationResponse), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdOUT), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdID), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdoutput), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdSD_1), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdRD_1), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPOrchestrationForm, g_nStringIdresponse), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdQO), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdG), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdQ), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdG), 8},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_RequestOrchestrationOpcUa::scm_astFannedOutDataConnections[] = {
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRequest, g_nStringIdQI), 6},
+};
+
+const SCFB_FBNData FORTE_RequestOrchestrationOpcUa::scm_stFBNData = {
+  11, scm_astInternalFBs,
+  15, scm_astEventConnections,
+  4, scm_astFannedOutEventConnections,
+  10, scm_astDataConnections,
+  1, scm_astFannedOutDataConnections,
+  4, scm_astParamters
+};
+
+
diff --git a/src/modules/arrowhead/orchestrator/OpcUa/RequestOrchestrationOpcUa.h b/src/modules/arrowhead/orchestrator/OpcUa/RequestOrchestrationOpcUa.h
new file mode 100644
index 0000000..5eac776
--- /dev/null
+++ b/src/modules/arrowhead/orchestrator/OpcUa/RequestOrchestrationOpcUa.h
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _REQUESTORCHESTRATIONOPCUA_H_
+#define _REQUESTORCHESTRATIONOPCUA_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include "OrchestratorRequestAdp.h"
+
+class FORTE_RequestOrchestrationOpcUa: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_RequestOrchestrationOpcUa)
+
+private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_OrchestratorRequestAdp& requestOrchestration() {
+    return (*static_cast<FORTE_OrchestratorRequestAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_nrequestOrchestrationAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(0, 0, 0, 1);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBParameter scm_astParamters[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_RequestOrchestrationOpcUa){
+  };
+
+  virtual ~FORTE_RequestOrchestrationOpcUa(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/serviceRegistry/CMakeLists.txt b/src/modules/arrowhead/serviceRegistry/CMakeLists.txt
index 7aa8380..ea49ea2 100644
--- a/src/modules/arrowhead/serviceRegistry/CMakeLists.txt
+++ b/src/modules/arrowhead/serviceRegistry/CMakeLists.txt
@@ -26,3 +26,6 @@
   add_subdirectory(HTTP)
 endif(FORTE_COM_HTTP)
 
+if(FORTE_COM_OPC_UA)
+  add_subdirectory(OpcUa)
+endif(FORTE_COM_OPC_UA)
\ No newline at end of file
diff --git a/src/modules/arrowhead/serviceRegistry/OpcUa/CMakeLists.txt b/src/modules/arrowhead/serviceRegistry/OpcUa/CMakeLists.txt
new file mode 100644
index 0000000..e8dd669
--- /dev/null
+++ b/src/modules/arrowhead/serviceRegistry/OpcUa/CMakeLists.txt
@@ -0,0 +1,22 @@
+# *******************************************************************************
+# Copyright (c) 2018, fortiss GmbH
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#   Kirill Dorofeev - initial implementation
+# *******************************************************************************
+
+#############################################################################
+# Arrowhead specific functional blocks for OPC UA for service registry
+#############################################################################
+
+forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+
+forte_add_sourcefile_hcpp(RegisterServiceOpcUa)
+forte_add_sourcefile_hcpp(QueryServiceOpcUa)
+
+  
\ No newline at end of file
diff --git a/src/modules/arrowhead/serviceRegistry/OpcUa/QueryServiceOpcUa.cpp b/src/modules/arrowhead/serviceRegistry/OpcUa/QueryServiceOpcUa.cpp
new file mode 100644
index 0000000..c83776b
--- /dev/null
+++ b/src/modules/arrowhead/serviceRegistry/OpcUa/QueryServiceOpcUa.cpp
@@ -0,0 +1,102 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+#include "QueryServiceOpcUa.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "QueryServiceOpcUa_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_QueryServiceOpcUa, g_nStringIdQueryServiceOpcUa)
+
+const TForteInt16 FORTE_QueryServiceOpcUa::scm_anEOWithIndexes[] = {-1};
+const SAdapterInstanceDef FORTE_QueryServiceOpcUa::scm_astAdapterInstances[] = {
+{g_nStringIdQueryServicesAdp, g_nStringIdqueryServices, false }};
+
+const SFBInterfaceSpec FORTE_QueryServiceOpcUa::scm_stFBInterfaceSpec = {
+  0,  0,  0,  0,
+  0,  0,   0, 0,  0,  0, 0, 
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBInstanceData FORTE_QueryServiceOpcUa::scm_astInternalFBs[] = {
+  {g_nStringIdAPPEND_STRING_3, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdF_STRING_TO_WSTRING, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdInitFlag, g_nStringIdE_SR},
+  {g_nStringIdE_PERMIT, g_nStringIdE_PERMIT},
+  {g_nStringIdANYToJSON, g_nStringIdANYToJSON},
+  {g_nStringIdGetHTTPResult, g_nStringIdGetArrayResponseFromJSON},
+  {g_nStringIdQuery, g_nStringIdCLIENT_1},
+  {g_nStringIdE_SWITCH_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_SWITCH, g_nStringIdE_SWITCH},
+  {g_nStringIdE_DELAY, g_nStringIdE_DELAY},
+  {g_nStringIdE_CTU, g_nStringIdE_CTU},
+};
+
+const SCFB_FBParameter FORTE_QueryServiceOpcUa::scm_astParamters[] = {
+  {0, g_nStringIdIN_1, "STRING#opc_ua[CALL_METHOD; "},
+  {0, g_nStringIdIN_3, "STRING##; /Objects/2:ServiceRegistry/2:query]"},
+  {9, g_nStringIdDT, "T#250ms"},
+  {10, g_nStringIdPV, "UINT#3"},
+};
+
+const SCFB_FBConnectionData FORTE_QueryServiceOpcUa::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdCNF), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdREQ), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdCNF), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdS), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdCNF), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdREQ), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdqueryServices, g_nStringIdquery), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPResult, g_nStringIdCNF), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdqueryServices, g_nStringIdqueried), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdEO), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdINIT), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEO), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdREQ), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdINITO), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEI), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEO0), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY, g_nStringIdSTART), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdCUO), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEI), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEO0), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdCU), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEO1), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPResult, g_nStringIdREQ), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdCNF), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEI), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEO1), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdR), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY, g_nStringIdEO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdREQ), 6},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_QueryServiceOpcUa::scm_astFannedOutEventConnections[] = {
+  {11, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdR), 2},
+  {11, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdR), 10},
+  {13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPResult, g_nStringIdREQ), 5},
+  {13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdR), 10},
+};
+
+const SCFB_FBConnectionData FORTE_QueryServiceOpcUa::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdOUT), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdIN), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlag, g_nStringIdQ), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdPERMIT), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdqueryServices, g_nStringIdserviceQueryForm), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdinput), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdqueryServices, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdAPPEND_STRING_3, g_nStringIdIN_2), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPResult, g_nStringIdoutput), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdqueryServices, g_nStringIdserviceEntries), CCompositeFB::scm_nAdapterMarker |0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdOUT), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdID), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdoutput), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdSD_1), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdRD_1), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGetHTTPResult, g_nStringIdresponse), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdQ), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdG), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdQO), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdG), 8},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_QueryServiceOpcUa::scm_astFannedOutDataConnections[] = {
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdQuery, g_nStringIdQI), 6},
+};
+
+const SCFB_FBNData FORTE_QueryServiceOpcUa::scm_stFBNData = {
+  11, scm_astInternalFBs,
+  15, scm_astEventConnections,
+  4, scm_astFannedOutEventConnections,
+  10, scm_astDataConnections,
+  1, scm_astFannedOutDataConnections,
+  4, scm_astParamters
+};
+
+
diff --git a/src/modules/arrowhead/serviceRegistry/OpcUa/QueryServiceOpcUa.h b/src/modules/arrowhead/serviceRegistry/OpcUa/QueryServiceOpcUa.h
new file mode 100644
index 0000000..d2bd903
--- /dev/null
+++ b/src/modules/arrowhead/serviceRegistry/OpcUa/QueryServiceOpcUa.h
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _QUERYSERVICEOPCUA_H_
+#define _QUERYSERVICEOPCUA_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include "QueryServicesAdp.h"
+
+class FORTE_QueryServiceOpcUa: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_QueryServiceOpcUa)
+
+private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_QueryServicesAdp& queryServices() {
+    return (*static_cast<FORTE_QueryServicesAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_nqueryServicesAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(0, 0, 0, 1);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBParameter scm_astParamters[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_QueryServiceOpcUa){
+  };
+
+  virtual ~FORTE_QueryServiceOpcUa(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/arrowhead/serviceRegistry/OpcUa/RegisterServiceOpcUa.cpp b/src/modules/arrowhead/serviceRegistry/OpcUa/RegisterServiceOpcUa.cpp
new file mode 100644
index 0000000..52bbdcf
--- /dev/null
+++ b/src/modules/arrowhead/serviceRegistry/OpcUa/RegisterServiceOpcUa.cpp
@@ -0,0 +1,138 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "RegisterServiceOpcUa.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "RegisterServiceOpcUa_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_RegisterServiceOpcUa, g_nStringIdRegisterServiceOpcUa)
+
+const TForteInt16 FORTE_RegisterServiceOpcUa::scm_anEOWithIndexes[] = {-1};
+const SAdapterInstanceDef FORTE_RegisterServiceOpcUa::scm_astAdapterInstances[] = {
+{g_nStringIdRegisterServiceAdp, g_nStringIdregisterService, false }};
+
+const SFBInterfaceSpec FORTE_RegisterServiceOpcUa::scm_stFBInterfaceSpec = {
+  0,  0,  0,  0,
+  0,  0,   0, 0,  0,  0, 0, 
+  0,  0, 0,
+  1,scm_astAdapterInstances};
+
+
+const SCFB_FBInstanceData FORTE_RegisterServiceOpcUa::scm_astInternalFBs[] = {
+  {g_nStringIdInitFlagReg, g_nStringIdE_SR},
+  {g_nStringIdE_PERMIT, g_nStringIdE_PERMIT},
+  {g_nStringIdCreateRegisterID, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdF_STRING_TO_WSTRING, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdE_PERMIT_1, g_nStringIdE_PERMIT},
+  {g_nStringIdInitFlagUnReg, g_nStringIdE_SR},
+  {g_nStringIdCreateUnRegisterID, g_nStringIdAPPEND_STRING_3},
+  {g_nStringIdF_STRING_TO_WSTRING_1, g_nStringIdF_STRING_TO_WSTRING},
+  {g_nStringIdANYToJSON, g_nStringIdANYToJSON},
+  {g_nStringIdRegister, g_nStringIdCLIENT_1_0},
+  {g_nStringIdUnregister, g_nStringIdCLIENT_1_0},
+  {g_nStringIdE_SWITCH, g_nStringIdE_SWITCH},
+  {g_nStringIdE_SWITCH_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_DELAY, g_nStringIdE_DELAY},
+  {g_nStringIdE_CTU, g_nStringIdE_CTU},
+  {g_nStringIdE_SWITCH_1_1, g_nStringIdE_SWITCH},
+  {g_nStringIdE_SWITCH_2, g_nStringIdE_SWITCH},
+  {g_nStringIdE_DELAY_1, g_nStringIdE_DELAY},
+  {g_nStringIdE_CTU_1, g_nStringIdE_CTU},
+};
+
+const SCFB_FBParameter FORTE_RegisterServiceOpcUa::scm_astParamters[] = {
+  {2, g_nStringIdIN_1, "STRING#opc_ua[CALL_METHOD; "},
+  {2, g_nStringIdIN_3, "STRING##; /Objects/2:ServiceRegistry/2:register]"},
+  {6, g_nStringIdIN_1, "STRING#opc_ua[CALL_METHOD; "},
+  {6, g_nStringIdIN_3, "STRING##; /Objects/2:ServiceRegistry/2:remove]"},
+  {13, g_nStringIdDT, "T#250ms"},
+  {14, g_nStringIdPV, "UINT#3"},
+  {17, g_nStringIdDT, "T#250ms"},
+  {18, g_nStringIdPV, "UINT#3"},
+};
+
+const SCFB_FBConnectionData FORTE_RegisterServiceOpcUa::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdCNF), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdREQ), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdCNF), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdS), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateUnRegisterID, g_nStringIdCNF), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_1, g_nStringIdREQ), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_1, g_nStringIdCNF), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdS), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIdregisterService), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdREQ), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIdunregisterService), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateUnRegisterID, g_nStringIdREQ), 6},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdEO), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdINIT), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEO), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdREQ), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdINITO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdEI), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdEO), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdINIT), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdEO), 4, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdREQ), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdINITO), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdEI), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdCUO), 14, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEI), 12},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEO0), 12, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY, g_nStringIdSTART), 13},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEO0), 11, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdCU), 14},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEO1), 11, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdR), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdCNF), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdEI), 11},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY, g_nStringIdEO), 13, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdREQ), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEO0), 15, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1, g_nStringIdSTART), 17},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdCUO), 18, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEI), 15},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEO0), 16, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdCU), 18},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEO1), 16, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdR), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdCNF), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdEI), 16},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_DELAY_1, g_nStringIdEO), 17, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdREQ), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdEO1), 15, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdR), 5},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdEO1), 12, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdR), 0},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_RegisterServiceOpcUa::scm_astFannedOutEventConnections[] = {
+  {1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 8},
+  {3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdREQ), 8},
+  {15, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIddoneRegister), CCompositeFB::scm_nAdapterMarker |0},
+  {15, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdR), 14},
+  {21, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIddoneUnregister), CCompositeFB::scm_nAdapterMarker |0},
+  {21, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdR), 18},
+  {24, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIddoneUnregister), CCompositeFB::scm_nAdapterMarker |0},
+  {24, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdR), 18},
+  {25, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIddoneRegister), CCompositeFB::scm_nAdapterMarker |0},
+  {25, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdR), 14},
+};
+
+const SCFB_FBConnectionData FORTE_RegisterServiceOpcUa::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagReg, g_nStringIdQ), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT, g_nStringIdPERMIT), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdOUT), 2, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdIN), 3},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateUnRegisterID, g_nStringIdOUT), 6, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_1, g_nStringIdIN), 7},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdInitFlagUnReg, g_nStringIdQ), 5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_PERMIT_1, g_nStringIdPERMIT), 4},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIdserviceRegistryEntry), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdinput), 8},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdregisterService, g_nStringIdendpoint), CCompositeFB::scm_nAdapterMarker |0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateRegisterID, g_nStringIdIN_2), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING, g_nStringIdOUT), 3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdID), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdANYToJSON, g_nStringIdoutput), 8, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdSD_1), 9},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdF_STRING_TO_WSTRING_1, g_nStringIdOUT), 7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdID), 10},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU, g_nStringIdQ), 14, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1, g_nStringIdG), 12},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdQO), 9, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH, g_nStringIdG), 11},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_CTU_1, g_nStringIdQ), 18, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_1_1, g_nStringIdG), 15},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdQO), 10, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdE_SWITCH_2, g_nStringIdG), 16},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_RegisterServiceOpcUa::scm_astFannedOutDataConnections[] = {
+  {0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdRegister, g_nStringIdQI), 9},
+  {3, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdQI), 10},
+  {5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCreateUnRegisterID, g_nStringIdIN_2), 6},
+  {7, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdUnregister, g_nStringIdSD_1), 10},
+};
+
+const SCFB_FBNData FORTE_RegisterServiceOpcUa::scm_stFBNData = {
+  19, scm_astInternalFBs,
+  26, scm_astEventConnections,
+  10, scm_astFannedOutEventConnections,
+  13, scm_astDataConnections,
+  4, scm_astFannedOutDataConnections,
+  8, scm_astParamters
+};
+
+
diff --git a/src/modules/arrowhead/serviceRegistry/OpcUa/RegisterServiceOpcUa.h b/src/modules/arrowhead/serviceRegistry/OpcUa/RegisterServiceOpcUa.h
new file mode 100644
index 0000000..6fb3aaa
--- /dev/null
+++ b/src/modules/arrowhead/serviceRegistry/OpcUa/RegisterServiceOpcUa.h
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2019, fortiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef _REGISTERSERVICEOPCUA_H_
+#define _REGISTERSERVICEOPCUA_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include "RegisterServiceAdp.h"
+
+class FORTE_RegisterServiceOpcUa: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_RegisterServiceOpcUa)
+
+private:
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const SAdapterInstanceDef scm_astAdapterInstances[];
+
+  FORTE_RegisterServiceAdp& registerService() {
+    return (*static_cast<FORTE_RegisterServiceAdp*>(m_apoAdapters[0]));
+  };
+  static const int scm_nregisterServiceAdpNum = 0;
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(0, 0, 0, 1);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBParameter scm_astParamters[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_RegisterServiceOpcUa){
+  };
+
+  virtual ~FORTE_RegisterServiceOpcUa(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/src/modules/lms_ev3/processinterface.cpp b/src/modules/lms_ev3/processinterface.cpp
index 5b6889e..8a1f772 100644
--- a/src/modules/lms_ev3/processinterface.cpp
+++ b/src/modules/lms_ev3/processinterface.cpp
@@ -1,5 +1,6 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 fortiss GmbH
+ *               2019 Robert Promok
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License 2.0 which is available at
  * http://www.eclipse.org/legal/epl-2.0.
@@ -9,6 +10,7 @@
  * Contributors:
  *    Alois Zoitl - initial API and implementation and/or initial documentation
  *    Jose Cabral - expansion of capabilities
+ *    Robert Promok - added functions
  *******************************************************************************/
 
 #include "processinterface.h"
@@ -25,9 +27,15 @@
 const std::string CLMSEV3ProcessInterface::scmModeID("mode");
 
 const std::string CLMSEV3ProcessInterface::scmEnableID("enable");
+const std::string CLMSEV3ProcessInterface::scmEnableSpeedID("enableSpeed");
+const std::string CLMSEV3ProcessInterface::scmRelPositionID("relPos");
+const std::string CLMSEV3ProcessInterface::scmAbsPositionID("absPos");
+
 const std::string CLMSEV3ProcessInterface::scmResetID("reset");
 const std::string CLMSEV3ProcessInterface::scmPWMID("pwm");
 const std::string CLMSEV3ProcessInterface::scmSPEEDID("speed");
+const std::string CLMSEV3ProcessInterface::scmSPEEDSETPOINTID("speedsp");
+const std::string CLMSEV3ProcessInterface::scmPOSITIONSETPOINTID("positionsp");
 const std::string CLMSEV3ProcessInterface::scmStopID("stop");
 const std::string CLMSEV3ProcessInterface::scmPositionID("position");
 const std::string CLMSEV3ProcessInterface::scmRotID("rot");
@@ -160,6 +168,21 @@
         mFile << val;
         break;
       }
+      case MOTOR_ENABLE_SPEED:{
+        std::string val = (false != OUT_X()) ? "run-forever" : "stop";
+        mFile << val;
+        break;
+      }
+      case MOTOR_RELATIVE_POSITION:{
+        std::string val = (false != OUT_X()) ? "run-to-rel-pos" : "stop";
+        mFile << val;
+        break;
+      }
+      case MOTOR_ABSOLUTE_POSITION:{
+        std::string val = (false != OUT_X()) ? "run-to-abs-pos" : "stop";
+        mFile << val;
+        break;
+      }
       case MOTOR_RESET:{
         if (true == OUT_X()){
           mFile << "reset";
@@ -190,12 +213,12 @@
 bool CLMSEV3ProcessInterface::readWord(){
   bool retVal = false;
 
-  if (SENSORW_VALUE == mnTypeOfIO || MOTOR_PWM == mnTypeOfIO || MOTOR_SPEED == mnTypeOfIO || MOTOR_ROT == mnTypeOfIO) {
+  if (SENSORW_VALUE == mnTypeOfIO || MOTOR_PWM == mnTypeOfIO || MOTOR_SPEED == mnTypeOfIO || MOTOR_ROT == mnTypeOfIO || MOTOR_SPEEDSETPOINT == mnTypeOfIO ) {
     TForteInt32 val;
     int internalChecker;
     internalChecker = readNumberFromFile(&val);
     if (0 == internalChecker){
-      IN_W() = (TForteWord) (val);
+      IN_W() = static_cast<TForteWord>(val);
       STATUS() = scmOK;
       retVal = true;
     }else if (1 == internalChecker){
@@ -211,7 +234,7 @@
       mFile.seekg(0, std::ios::beg);
       std::getline(mFile, mode);
       if(mFile.fail()){
-        STATUS() == scmCouldNotRead;
+        STATUS() = scmCouldNotRead;
       }else{
         TForteWord counter = 0;
         std::vector<std::string>::iterator it;
@@ -224,7 +247,7 @@
           }
         }
         if (it == mModes.end()){
-          STATUS() == scmCouldNotRead;
+          STATUS() = scmCouldNotRead;
         }
       }
     }else{
@@ -250,7 +273,7 @@
     TForteWord val = OUT_W();
     switch (mnTypeOfIO){
       case MOTOR_PWM:{
-        TForteInt16 finalVal = (TForteInt16) val;
+        TForteInt16 finalVal = static_cast<TForteInt16>(val);
         if (-100 <= finalVal && 100 >= finalVal){
           mFile << finalVal;
           writeAttempted = true;
@@ -259,6 +282,16 @@
         }
         break;
       }
+      case MOTOR_SPEEDSETPOINT:{
+        TForteInt16 finalVal = static_cast<TForteInt16>(val);
+        if (-30000 <= finalVal && 30000 >= finalVal){
+          mFile << finalVal;
+          writeAttempted = true;
+        }else{
+          STATUS() = scmCouldNotWrite;
+        }
+        break;
+      }
       case MOTOR_STOP:{
         std::string finalVal = "";
         switch(val){
@@ -325,18 +358,33 @@
     TForteInt32 val;
     internalChecker = readNumberFromFile(&val);
     if (0 == internalChecker){
-      IN_D() = (TForteDWord) (val);
+      IN_D() = static_cast<TForteDWord>(val);
       STATUS() = scmOK;
       retVal = true;
     }else if (1 == internalChecker){
       STATUS() = scmNotInitialised;
-      DEVLOG_ERROR("Reading double word failed. The FB with PARAMS() = '%s' is not initialized.", PARAMS().getValue());
+      DEVLOG_ERROR("Reading double word failed. The FB with PARAMS() = '%s' is not initialized.\n", PARAMS().getValue());
+    }else{
+      STATUS() = scmCouldNotRead;
+    }
+  }
+  else if (MOTOR_POSITIONSETPOINT == mnTypeOfIO){
+    int internalChecker;
+    TForteInt32 val;
+    internalChecker = readNumberFromFile(&val);
+    if (0 == internalChecker){
+      IN_D() = static_cast<TForteDWord>(val);
+      STATUS() = scmOK;
+      retVal = true;
+    }else if (1 == internalChecker){
+      STATUS() = scmNotInitialised;
+      DEVLOG_ERROR("Reading double word failed. The FB with PARAMS() = '%s' is not initialized.\n", PARAMS().getValue());
     }else{
       STATUS() = scmCouldNotRead;
     }
   }
   if (!retVal){
-    DEVLOG_ERROR("Reading double word failed. The FB with PARAMS() = '%s' couldn't be read.", PARAMS().getValue());
+    DEVLOG_ERROR("Reading double word failed. The FB with PARAMS() = '%s' couldn't be read.\n", PARAMS().getValue());
   }
 
   return retVal;
@@ -352,7 +400,7 @@
     TForteDWord val = OUT_D();
     switch (mnTypeOfIO){
       case MOTOR_POSITION:{
-        TForteInt32 finalVal = (TForteInt32) val;
+        TForteInt32 finalVal = static_cast<TForteInt32>(val);
         if (CIEC_INT::scm_nMinVal <= finalVal && CIEC_INT::scm_nMaxVal >= finalVal){
           mFile << finalVal;
           writeAttempted = true;
@@ -361,6 +409,17 @@
         }
         break;
       }
+      case MOTOR_POSITIONSETPOINT:{
+        TForteInt32 finalVal = static_cast<TForteInt32>(val);
+        if (CIEC_INT::scm_nMinVal <= finalVal && CIEC_INT::scm_nMaxVal >= finalVal){
+          mFile << finalVal;
+          writeAttempted = true;
+        }else{
+          STATUS() = scmCouldNotWrite;
+        }
+        break;
+      }
+
       default:{
         STATUS() = scmCouldNotWrite;
         break;
@@ -581,6 +640,12 @@
           }else if (scmPositionID == paParamList[2]){
             sysFileName += number.str() + "/position";
             mnTypeOfIO = MOTOR_POSITION;
+          }else if (scmSPEEDSETPOINTID == paParamList[2]){
+            sysFileName += number.str() + "/speed_sp";
+            mnTypeOfIO = MOTOR_SPEEDSETPOINT;
+          }else if (scmPOSITIONSETPOINTID == paParamList[2]){
+            sysFileName += number.str() + "/position_sp";
+            mnTypeOfIO = MOTOR_POSITIONSETPOINT;
           }else{
             defaultType = true;
           }
@@ -588,6 +653,15 @@
           if (scmEnableID == paParamList[2]){
             sysFileName += number.str() + "/command";
             mnTypeOfIO = MOTOR_ENABLE;
+          }else if (scmEnableSpeedID == paParamList[2]){
+            sysFileName += number.str() + "/command";
+            mnTypeOfIO = MOTOR_ENABLE_SPEED;
+          }else if (scmRelPositionID == paParamList[2]){
+            sysFileName += number.str() + "/command";
+            mnTypeOfIO = MOTOR_RELATIVE_POSITION;
+          }else if (scmAbsPositionID == paParamList[2]){
+            sysFileName += number.str() + "/command";
+            mnTypeOfIO = MOTOR_ABSOLUTE_POSITION;
           }else if (scmResetID == paParamList[2]){
             sysFileName += number.str() + "/command";
             mnTypeOfIO = MOTOR_RESET;
@@ -595,11 +669,17 @@
             sysFileName += number.str() + "/duty_cycle_sp";
             mnTypeOfIO = MOTOR_PWM;
           }else if (scmStopID == paParamList[2]){
-            sysFileName += number.str() + "/stop_command";
+            sysFileName += number.str() + "/stop_action";
             mnTypeOfIO = MOTOR_STOP;
           }else if (scmPositionID == paParamList[2]){
             sysFileName += number.str() + "/position";
             mnTypeOfIO = MOTOR_POSITION;
+          }else if (scmSPEEDSETPOINTID == paParamList[2]){
+            sysFileName += number.str() + "/speed_sp";
+            mnTypeOfIO = MOTOR_SPEEDSETPOINT;
+          }else if (scmPOSITIONSETPOINTID == paParamList[2]){
+            sysFileName += number.str() + "/position_sp";
+            mnTypeOfIO = MOTOR_POSITIONSETPOINT;
           }else{
             defaultType = true;
           }
@@ -632,9 +712,9 @@
   int retVal = -1;
   std::fstream mAddressFile;
   std::string fullPath;
-  int portLenght = paEv3Port.length();
+  int portLength = static_cast<int>(paEv3Port.length());
 
-  if (portLenght < 5){ //Only possible values are inX and outX according to input and output ports of the EV3
+  if (portLength < 5){ //Only possible values are inX and outX according to input and output ports of the EV3
     for(int i = 0; i < 255; i++){ //TODO: check maximum value of i
       std::stringstream number;
       number << i;
@@ -642,13 +722,13 @@
         fullPath = paBasePath + number.str() + "/address";
         mAddressFile.open(fullPath.c_str(), std::fstream::in); //TODO change this when fully switching to C++11 for LMS EV3ca
         if(mAddressFile.is_open()){
-          char port[5];
+          char port[16];
           mAddressFile.clear();
           mAddressFile.seekg(0, std::ios::beg);
-          mAddressFile.read(port, portLenght);
-          if (!mAddressFile.fail()){
-            port[portLenght] = '\0';
-            if(paEv3Port.compare(port) == 0){
+          mAddressFile.read(port, sizeof(port));
+          auto len = mAddressFile.gcount();
+          if (len > 1) {
+            if (paEv3Port.at(portLength-1) == port[len-2]) {
               retVal = i;
               break;
             }
diff --git a/src/modules/lms_ev3/processinterface.h b/src/modules/lms_ev3/processinterface.h
index ff56447..0e7d824 100644
--- a/src/modules/lms_ev3/processinterface.h
+++ b/src/modules/lms_ev3/processinterface.h
@@ -1,5 +1,6 @@
 /*******************************************************************************
  * Copyright (c) 2015, 2016 fortiss GmbH
+ *               2019 Robert Promok
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License 2.0 which is available at
  * http://www.eclipse.org/legal/epl-2.0.
@@ -9,6 +10,7 @@
  * Contributors:
  *    Alois Zoitl - initial API and implementation and/or initial documentation
  *    Jose Cabral - expansion of capabilities
+ *    Robert Promok - added functions
  *******************************************************************************/
 
 #ifndef _PROCESSINTERFACE_H_
@@ -32,9 +34,14 @@
   SENSORW_MODE,
   BUTTON,
   MOTOR_ENABLE,
+  MOTOR_ENABLE_SPEED,
+  MOTOR_RELATIVE_POSITION,
+  MOTOR_ABSOLUTE_POSITION,
   MOTOR_RESET,
   MOTOR_PWM,
   MOTOR_SPEED,
+  MOTOR_SPEEDSETPOINT,
+  MOTOR_POSITIONSETPOINT,
   MOTOR_STOP,
   MOTOR_POSITION,
   MOTOR_ROT,
@@ -68,9 +75,15 @@
 
     /* Used together with Motor */
     static const std::string scmEnableID;
+    static const std::string scmEnableSpeedID;
+    static const std::string scmRelPositionID;
+    static const std::string scmAbsPositionID;
+
     static const std::string scmResetID;
     static const std::string scmPWMID;
     static const std::string scmSPEEDID;
+    static const std::string scmSPEEDSETPOINTID;
+    static const std::string scmPOSITIONSETPOINTID;
     static const std::string scmStopID;
     static const std::string scmPositionID;
     static const std::string scmRotID;
diff --git a/src/modules/mqtt_paho/CMakeLists.txt b/src/modules/mqtt_paho/CMakeLists.txt
index abd3ca4..0a129ea 100644
--- a/src/modules/mqtt_paho/CMakeLists.txt
+++ b/src/modules/mqtt_paho/CMakeLists.txt
@@ -19,7 +19,7 @@
 forte_add_include_directories(${CMAKE_CURRENT_SOURCE_DIR})

 

 if(FORTE_COM_PAHOMQTT)

-  forte_add_sourcefile_hcpp( MQTTComLayer MQTTHandler)

+  forte_add_sourcefile_hcpp( MQTTComLayer MQTTHandler MQTTClientConfigParser)

   

   forte_add_handler(MQTTHandler MQTTHandler)

   

@@ -40,6 +40,9 @@
     forte_add_include_system_directories(${FORTE_COM_PAHOMQTT_INCLUDE_DIR})

     forte_add_link_directories(${FORTE_COM_PAHOMQTT_LIB_DIR})

     forte_add_link_library_beginning(${FORTE_COM_PAHOMQTT_LIB})

+    forte_add_custom_configuration("#include <string>")

+    forte_add_custom_configuration("extern std::string gMqttClientConfigFile\;")

+    forte_add_custom_configuration("#cmakedefine FORTE_COM_PAHOMQTT")

   

     IF(NOT EXISTS ${FORTE_COM_PAHOMQTT_INCLUDE_DIR})

       MESSAGE(WARNING "WARNING: FORTE_COM_PAHOMQTT_INCLUDE_DIR not set or does not exist. This will probably make the compilation fail.")

diff --git a/src/modules/mqtt_paho/MQTTClientConfigParser.cpp b/src/modules/mqtt_paho/MQTTClientConfigParser.cpp
new file mode 100644
index 0000000..c7eb28b
--- /dev/null
+++ b/src/modules/mqtt_paho/MQTTClientConfigParser.cpp
@@ -0,0 +1,74 @@
+/*******************************************************************************
+ * Copyright (c) 2020 fortiss GmbH
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *    Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "MQTTClientConfigParser.h"
+
+#include "arch/devlog.h"
+
+const char *const CMQTTClientConfigFileParser::mConfigKeysNames[] = {
+  "endpoint",
+  "username",
+  "password" };
+
+bool CMQTTClientConfigFileParser::loadConfig(std::string &paFileLocation, std::string &paEndpoint, MQTTConfigFromFile &paResult) {
+  bool retVal = true;
+
+  CConfigFileParser configFileParser(paFileLocation);
+  bool endpointFound = false;
+  std::string endpointKey = mConfigKeysNames[MQTTConfigKeys::eEndoint];
+
+  if(CConfigFileParser::lookForKeyValueInFile(configFileParser, endpointKey, paEndpoint, endpointFound)) {
+    if(endpointFound) {
+
+      bool moreLinesToRead = true;
+      while(moreLinesToRead) {
+        std::pair<std::string, std::string> resultPair;
+
+        switch(configFileParser.parseNextLine(resultPair)){
+          case CConfigFileParser::eOk:
+            if(0 == resultPair.first.compare(mConfigKeysNames[MQTTConfigKeys::eEndoint])) {
+              moreLinesToRead = false;
+            } else if(0 == resultPair.first.compare(mConfigKeysNames[MQTTConfigKeys::eUsername])) {
+              paResult.mUsername = resultPair.second;
+            } else if(0 == resultPair.first.compare(mConfigKeysNames[MQTTConfigKeys::ePassword])) {
+              paResult.mPassword = resultPair.second;
+            }
+            else {
+              DEVLOG_WARNING("[CMQTTClientConfigFileParser]: They %s was not recognized so it will be omitted\n", resultPair.first.c_str());
+            }
+            break;
+          case CConfigFileParser::eEmptyLine:
+            //do nothing, keep reading
+            break;
+          case CConfigFileParser::eEndOfFile:
+            moreLinesToRead = false;
+            break;
+          case CConfigFileParser::eWrongLine:
+          case CConfigFileParser::eFileNotOpened:
+          case CConfigFileParser::eInternalError:
+          default:
+            retVal = false;
+            moreLinesToRead = false;
+            break;
+        }
+      }
+    } else { //if the endpoint is not found, configuration is initialize as default
+      DEVLOG_INFO("[CMQTTClientConfigFileParser]: No entry for endpoint %s was found in file %s\n", paEndpoint.c_str(), paFileLocation.c_str());
+    }
+  } else { //if lookForEndpointInFile fails, the errors was already logged
+    retVal = false;
+  }
+
+  return retVal;
+}
+
diff --git a/src/modules/mqtt_paho/MQTTClientConfigParser.h b/src/modules/mqtt_paho/MQTTClientConfigParser.h
new file mode 100644
index 0000000..39900f7
--- /dev/null
+++ b/src/modules/mqtt_paho/MQTTClientConfigParser.h
@@ -0,0 +1,75 @@
+/*******************************************************************************
+ * Copyright (c) 2020 fortiss GmbH
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *    Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef SRC_MODULES_OPC_UA_OPCUA_CLIENT_CONFIG_PARSER_H_
+#define SRC_MODULES_OPC_UA_OPCUA_CLIENT_CONFIG_PARSER_H_
+
+#include "utils/configFileParser.h"
+#include <core/datatypes/forte_string.h>
+#include <string>
+
+/**
+ * Parse the configuration file for the mqtt client. It supports the following keys:
+ *   endpoint (string)
+ *   username (string)
+ *   password (string)
+ *
+ *   The parser looks for an endpoint, and only after it matches the one passed as argument, it starts storing the following information, and
+ *   it will keep reading after another endpoint other the end of file is found
+ */
+class CMQTTClientConfigFileParser {
+  public:
+
+    /**
+     * Encapsulation for the result used by the class when parsing the configuration file
+     */
+    class MQTTConfigFromFile {
+      public:
+        MQTTConfigFromFile(std::string &paUsername, std::string &paPassword) :
+            mUsername(paUsername), mPassword(paPassword) {
+        }
+        std::string &mUsername;
+        std::string &mPassword;
+    };
+
+    /**
+     * Reads a configuration file, parse it and store the data
+     * @param paFileLocation Path to file to be parsed
+     * @param paEndpoint Endpoint of the client to be looked for
+     * @param paResult Place to store the results
+     * @return True if no error occurred, false otherwise
+     */
+    static bool loadConfig(std::string &paFileLocation, std::string &paEndpoint, MQTTConfigFromFile &paResult);
+
+  private:
+    explicit CMQTTClientConfigFileParser();
+    virtual ~CMQTTClientConfigFileParser();
+
+    /**
+     * Allowed key in the configuration file for the mqtt clients
+     */
+    enum MQTTConfigKeys {
+      eEndoint, /**< eEndoint */
+      eUsername,/**< eUsername */
+      ePassword,/**< ePassword */
+      eUnknown /**< eUnknown */
+    };
+
+    /**
+     * Strings for the allowed keys in the configuration file for the mqtt clients
+     */
+    static const char *const mConfigKeysNames[MQTTConfigKeys::eUnknown];
+
+};
+
+#endif /* SRC_MODULES_OPC_UA_OPCUA_CLIENT_CONFIG_PARSER_H_ */
diff --git a/src/modules/mqtt_paho/MQTTHandler.cpp b/src/modules/mqtt_paho/MQTTHandler.cpp
index ea9b77e..6041eac 100644
--- a/src/modules/mqtt_paho/MQTTHandler.cpp
+++ b/src/modules/mqtt_paho/MQTTHandler.cpp
@@ -14,7 +14,11 @@
 #include "MQTTHandler.h"
 #include "../../core/cominfra/commfb.h"
 #include <criticalregion.h>
-#include <string.h>
+#include <string>
+
+#include "MQTTClientConfigParser.h"
+
+std::string gMqttClientConfigFile;
 
 DEFINE_HANDLER(MQTTHandler);
 
@@ -26,6 +30,9 @@
 MQTTAsync MQTTHandler::smClient = 0;
 CIEC_STRING MQTTHandler::smClientId;
 CIEC_STRING MQTTHandler::smAddress;
+std::string MQTTHandler::scmUsername;
+std::string MQTTHandler::scmPassword;
+
 
 MQTTStates MQTTHandler::smMQTTS_STATE = NOT_CONNECTED;
 forte::arch::CSemaphore MQTTHandler::mStateSemaphore = forte::arch::CSemaphore();
@@ -192,6 +199,20 @@
     smClientConnectionOptions.onSuccess = onMqttConnectionSucceed;
     smClientConnectionOptions.onFailure = onMqttConnectionFailed;
     smClientConnectionOptions.context = this;
+
+    if("" != gMqttClientConfigFile) { //file was provided
+
+      CMQTTClientConfigFileParser::MQTTConfigFromFile result = CMQTTClientConfigFileParser::MQTTConfigFromFile(scmUsername, scmPassword);
+      std::string endpoint = smAddress.getValue();
+
+      if(CMQTTClientConfigFileParser::loadConfig(gMqttClientConfigFile, endpoint, result)) {
+        smClientConnectionOptions.username = scmUsername.c_str();
+        smClientConnectionOptions.password = scmPassword.c_str();
+      } else {
+        return eWrongClientID;
+      }
+    }
+
     if(MQTTASYNC_SUCCESS != MQTTAsync_setCallbacks(smClient, this, MQTTHandler::onMqttConnectionLost, onMqttMessageArrived, NULL)){
       return eConnectionFailed;
     }
diff --git a/src/modules/mqtt_paho/MQTTHandler.h b/src/modules/mqtt_paho/MQTTHandler.h
index f5ebf14..cd8e0e8 100644
--- a/src/modules/mqtt_paho/MQTTHandler.h
+++ b/src/modules/mqtt_paho/MQTTHandler.h
@@ -21,6 +21,7 @@
 #include <forte_string.h>
 #include <forte_thread.h>
 #include <forte_sem.h>
+#include <string>
 
 extern "C" {
 #include <MQTTAsync.h>
@@ -89,6 +90,8 @@
 
     static CIEC_STRING smClientId;
     static CIEC_STRING smAddress;
+    static std::string scmUsername;
+    static std::string scmPassword;
 
     static CSyncObject smMQTTMutex;
 
diff --git a/src/modules/opc_ua/CMakeLists.txt b/src/modules/opc_ua/CMakeLists.txt
index 0204503..65079e6 100644
--- a/src/modules/opc_ua/CMakeLists.txt
+++ b/src/modules/opc_ua/CMakeLists.txt
@@ -31,14 +31,15 @@
     

     forte_add_sourcefile_with_path_cpp(${CMAKE_BINARY_DIR}/modules/opc_ua/opcua_types.cpp) # created file

 

-    SET(FORTE_COM_OPC_UA_PORT "4840" CACHE NUMBER "Port where the OPC_UA server will listen")

-    SET(FORTE_COM_OPC_UA_SERVER_PUB_INTERVAL "100.0" CACHE NUMBER "OPC UA Server publishing interval in ms")

-    SET(FORTE_COM_OPC_UA_CLIENT_PUB_INTERVAL "100.0" CACHE NUMBER "OPC UA Client requested publishing interval via OPC UA data subscription in ms")

-    SET(FORTE_COM_OPC_UA_MULTICAST OFF CACHE BOOLEAN "Enable multicast support for OPC UA and registering with LDS")

+    SET(FORTE_COM_OPC_UA_PORT 4840 CACHE STRING "Port where the OPC_UA server will listen")

+    SET(FORTE_COM_OPC_UA_SERVER_PUB_INTERVAL 100.0 CACHE STRING "OPC UA Server publishing interval in ms")

+    SET(FORTE_COM_OPC_UA_CLIENT_PUB_INTERVAL 100.0 CACHE STRING "OPC UA Client requested publishing interval via OPC UA data subscription in ms")

+    SET(FORTE_COM_OPC_UA_MULTICAST OFF CACHE BOOL "Enable multicast support for OPC UA and registering with LDS")

     SET(FORTE_COM_OPC_UA_INCLUDE_DIR "" CACHE PATH "ABSOLUTE path to open62541.h file in the OPC UA project")

     SET(FORTE_COM_OPC_UA_LIB_DIR "" CACHE PATH "ABSOLUTE path to OPC UA folder with object library FORTE_COM_OPC_UA_LIB")

     SET(FORTE_COM_OPC_UA_CUSTOM_HOSTNAME CACHE STRING "Custom hostname which is used for the OPC UA app name and app uri")

-    SET(FORTE_COM_OPC_UA_MASTER_BRANCH OFF CACHE BOOLEAN "Use the master branch")

+    SET(FORTE_COM_OPC_UA_MASTER_BRANCH OFF CACHE BOOL "Use the master branch")

+    SET(FORTE_COM_OPC_UA_ENCRYPTION OFF CACHE BOOL "The open62541 lilbrary was compiled using encryption")

 

     # OPEN62541 library to be linked to forte

     IF ("${FORTE_ARCHITECTURE}" STREQUAL "Win32")

@@ -63,7 +64,8 @@
 

     forte_add_handler(COPC_UA_Local_Handler opcua_local_handler)

     forte_add_handler(COPC_UA_Remote_Handler opcua_remote_handler)

-    forte_add_sourcefile_hcpp(opcua_layer opcua_local_handler opcua_helper opcua_remote_handler opcua_handler_abstract opcua_client_information opcua_action_info)

+    forte_add_sourcefile_hcpp(opcua_layer opcua_local_handler opcua_helper opcua_remote_handler opcua_handler_abstract opcua_client_information opcua_action_info

+        opcua_client_config_parser)

     if (NOT EXISTS ${FORTE_COM_OPC_UA_INCLUDE_DIR})

         message(SEND_ERROR "FORTE_COM_OPC_UA_INCLUDE_DIR not set or does not exist")

     endif (NOT EXISTS ${FORTE_COM_OPC_UA_INCLUDE_DIR})

@@ -75,6 +77,8 @@
     

     forte_add_custom_configuration("#define FORTE_COM_OPC_UA_PORT ${FORTE_COM_OPC_UA_PORT}") 

     forte_add_custom_configuration("extern TForteUInt16 gOpcuaServerPort\;")

+    forte_add_custom_configuration("#include <string>")

+    forte_add_custom_configuration("extern std::string gOpcuaClientConfigFile\;")

     forte_add_custom_configuration("#define FORTE_COM_OPC_UA_SERVER_PUB_INTERVAL ${FORTE_COM_OPC_UA_SERVER_PUB_INTERVAL}")

     forte_add_custom_configuration("#define FORTE_COM_OPC_UA_CLIENT_PUB_INTERVAL ${FORTE_COM_OPC_UA_CLIENT_PUB_INTERVAL}")

     

@@ -87,7 +91,22 @@
 

     add_subdirectory(FBs)    

     add_subdirectory(types)

+    

+    if(FORTE_COM_OPC_UA_ENCRYPTION)

+      if(NOT FORTE_COM_OPC_UA_MASTER_BRANCH)

+        message(SEND_WARNING "You are compiling open62541 with encryption and v0.3.0 which is not fully supported in forte. For encryption, use v1.0")  

+      endif(NOT FORTE_COM_OPC_UA_MASTER_BRANCH)

+      

+      SET(FORTE_COM_OPC_UA_ENCRYPTION_INCLUDE_DIR "" CACHE STRING "ABSOLUTE path to encryption headers")

+      SET(FORTE_COM_OPC_UA_ENCRYPTION_LIB_DIR "" CACHE STRING "ABSOLUTE path to encryption libraries")

+      

+      forte_add_include_system_directories(${FORTE_COM_OPC_UA_ENCRYPTION_INCLUDE_DIR})

+      forte_add_link_directories(${FORTE_COM_OPC_UA_ENCRYPTION_LIB_DIR})

 

+      forte_add_link_library("libmbedcrypto.a")

+      forte_add_link_library("libmbedtls.a")

+      forte_add_link_library("libmbedx509.a")

+    endif()  

 endif (FORTE_COM_OPC_UA)

 

 

diff --git a/src/modules/opc_ua/opcua_client_config_parser.cpp b/src/modules/opc_ua/opcua_client_config_parser.cpp
new file mode 100644
index 0000000..648cf72
--- /dev/null
+++ b/src/modules/opc_ua/opcua_client_config_parser.cpp
@@ -0,0 +1,173 @@
+/*******************************************************************************
+ * Copyright (c) 2019 fortiss GmbH
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *    Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#include "opcua_client_config_parser.h"
+#include "arch/devlog.h"
+
+bool CUA_ClientConfigFileParser::loadConfig(std::string &paFileLocation, std::string &paEndpoint, UA_ConfigFromFile &paResult) {
+  bool retVal = true;
+  UA_StatusCode retValOpcUa = UA_STATUSCODE_GOOD;
+
+  CConfigFileParser configFileParser(paFileLocation);
+  bool endpointFound = false;
+  std::string endpointKey = "endpoint";
+
+  if(CConfigFileParser::lookForKeyValueInFile(configFileParser, endpointKey, paEndpoint, endpointFound)) {
+    if(endpointFound) {
+
+#ifdef UA_ENABLE_ENCRYPTION
+# ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+      UA_ByteString certificateFileContent = UA_STRING_NULL;
+      UA_ByteString privateKeyFileContent = UA_STRING_NULL;
+      UA_MessageSecurityMode securityMode = UA_MESSAGESECURITYMODE_INVALID;
+      UA_String securityPolicyUri = UA_STRING_NULL;
+# else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+# endif // FORTE_COM_OPC_UA_MASTER_BRANCH
+#endif //UA_ENABLE_ENCRYPTION
+
+      bool moreLinesToRead = true;
+      while(moreLinesToRead) {
+        std::pair<std::string, std::string> resultPair;
+
+        switch(configFileParser.parseNextLine(resultPair)){
+          case CConfigFileParser::eOk:
+            if(0 == resultPair.first.compare("endpoint")) {
+              moreLinesToRead = false;
+            } else if(0 == resultPair.first.compare("username")) {
+              paResult.mUsername = resultPair.second;
+            } else if(0 == resultPair.first.compare("password")) {
+              paResult.mPassword = resultPair.second;
+            }
+#ifdef UA_ENABLE_ENCRYPTION
+# ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+            else if(0 == resultPair.first.compare("certificate")) {
+              retVal = loadFileIntoBytestring(resultPair.second, certificateFileContent);
+            } else if(0 == resultPair.first.compare("privateKey")) {
+              retVal = loadFileIntoBytestring(resultPair.second, privateKeyFileContent);
+            } else if(0 == resultPair.first.compare("securityMode")) {
+              securityMode = static_cast<UA_MessageSecurityMode>(atoi(resultPair.second.c_str()));
+            } else if(0 == resultPair.first.compare("securityPolicy")) {
+              securityPolicyUri = UA_STRING_ALLOC(resultPair.second.c_str());
+            }
+# else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+# endif // FORTE_COM_OPC_UA_MASTER_BRANCH
+#endif //UA_ENABLE_ENCRYPTION
+            else {
+              DEVLOG_WARNING("[CUA_ClientConfigFileParser]: They %s was not recognized so it will be omitted\n", resultPair.first.c_str());
+            }
+            break;
+          case CConfigFileParser::eEmptyLine:
+            //do nothing, keep reading
+            break;
+          case CConfigFileParser::eEndOfFile:
+            moreLinesToRead = false;
+            break;
+          case CConfigFileParser::eWrongLine:
+          case CConfigFileParser::eFileNotOpened:
+          case CConfigFileParser::eInternalError:
+          default:
+            retVal = false;
+            moreLinesToRead = false;
+            break;
+        }
+      }
+
+      if(retVal) {
+#ifdef UA_ENABLE_ENCRYPTION
+# ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+        if(0 != certificateFileContent.length) {
+          retValOpcUa = UA_ClientConfig_setDefaultEncryption(&paResult.mClientConfig, certificateFileContent, privateKeyFileContent, NULL, 0, NULL, 0);
+          if(UA_STATUSCODE_GOOD == retValOpcUa) {
+            paResult.mClientConfig.securityMode = securityMode;
+            paResult.mClientConfig.securityPolicyUri = securityPolicyUri;
+          }
+        } else
+# else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+# endif // FORTE_COM_OPC_UA_MASTER_BRANCH
+#endif //UA_ENABLE_ENCRYPTION
+
+#ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+        {
+          retValOpcUa = UA_ClientConfig_setDefault(&paResult.mClientConfig);
+        }
+#else //FORTE_COM_OPC_UA_MASTER_BRANCH
+
+#endif //FORTE_COM_OPC_UA_MASTER_BRANCH
+      }
+
+#ifdef UA_ENABLE_ENCRYPTION
+# ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+      else {
+        UA_String_clear(&securityPolicyUri);
+      }
+
+      UA_ByteString_clear(&certificateFileContent);
+      UA_ByteString_clear(&privateKeyFileContent);
+# else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+# endif // FORTE_COM_OPC_UA_MASTER_BRANCH
+#endif
+
+    } else { //if the endpoint is not found, configuration is initialize as default
+      DEVLOG_INFO("[CUA_ClientConfigFileParser]: No entry for endpoint %s was found in file %s\n", paEndpoint.c_str(), paFileLocation.c_str());
+#ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+      retValOpcUa = UA_ClientConfig_setDefault(&paResult.mClientConfig);
+#else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+#endif //FORTE_COM_OPC_UA_MASTER_BRANCH
+    }
+
+    if(retVal && UA_STATUSCODE_GOOD != retValOpcUa) {
+      DEVLOG_ERROR("[CUA_ClientConfigFileParser]: Error setting client configuration. Error: %s\n", UA_StatusCode_name(retValOpcUa));
+      retVal = false;
+    }
+  } else { //if lookForEndpointInFile fails, the errors was already logged
+    retVal = false;
+  }
+
+  return retVal;
+}
+
+#ifdef UA_ENABLE_ENCRYPTION
+# ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+bool CUA_ClientConfigFileParser::loadFileIntoBytestring(std::string &paFileLocation, UA_ByteString &paResult) {
+  bool retVal = false;
+
+  FILE *file = fopen(paFileLocation.c_str(), "rb"); //read binary
+  if(0 != file) {
+    //look for size of file
+    fseek(file, 0, SEEK_END);
+    paResult.length = (size_t) ftell(file);
+    paResult.data = (UA_Byte *) UA_malloc(paResult.length * sizeof(UA_Byte));
+
+    fseek(file, 0, SEEK_SET);
+    if(paResult.length == fread(paResult.data, sizeof(UA_Byte), paResult.length, file)) {
+      retVal = true;
+    } else {
+      DEVLOG_ERROR("[OPC UA CLIENT]: Error reading file %s\n", paFileLocation.c_str());
+      UA_ByteString_clear(&paResult);
+    }
+    fclose(file);
+  } else {
+    DEVLOG_ERROR("[OPC UA CLIENT]: Error opening file %s\n", paFileLocation.c_str());
+  }
+
+  return retVal;
+}
+# else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+# endif // FORTE_COM_OPC_UA_MASTER_BRANCH
+#endif //UA_ENABLE_ENCRYPTION
diff --git a/src/modules/opc_ua/opcua_client_config_parser.h b/src/modules/opc_ua/opcua_client_config_parser.h
new file mode 100644
index 0000000..aa38554
--- /dev/null
+++ b/src/modules/opc_ua/opcua_client_config_parser.h
@@ -0,0 +1,79 @@
+/*******************************************************************************
+ * Copyright (c) 2019 fortiss GmbH
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *    Jose Cabral - initial implementation
+ *******************************************************************************/
+
+#ifndef SRC_MODULES_OPC_UA_OPCUA_CLIENT_CONFIG_PARSER_H_
+#define SRC_MODULES_OPC_UA_OPCUA_CLIENT_CONFIG_PARSER_H_
+
+#include "utils/configFileParser.h"
+#include <core/datatypes/forte_string.h>
+#include <open62541.h>
+#include <string>
+
+/**
+ * Parse the configuration file for OPC UA clients. It supports the following keys:
+ *   endpoint (string)
+ *   username (string)
+ *   password (string)
+ *   certificate (path to file, only if encryption is enabled)
+ *   privateKey (path to file, only if encryption is enabled)
+ *   securityMode (integer, only if encryption is enabled. 1: None; 2:Sign; 3: Sign and encrypt)
+ *   securityPolicy (string URI, for example http://opcfoundation.org/UA/SecurityPolicy#Basic256, only if encryption is enabled)
+ *
+ *   The parser looks for an endpoint, and only after it matches the one passed as argument, it starts storing the following information, and
+ *   it will keep reading after another endpoint other the end of file is found
+ */
+class CUA_ClientConfigFileParser {
+  public:
+
+    /**
+     * Encapsulation for the result used by the class when parsing the configuration file
+     */
+    class UA_ConfigFromFile {
+      public:
+        UA_ConfigFromFile(UA_ClientConfig &paClientConfig, std::string &paUsername, std::string &paPassword) :
+            mClientConfig(paClientConfig), mUsername(paUsername), mPassword(paPassword) {
+        }
+        UA_ClientConfig &mClientConfig;
+        std::string &mUsername;
+        std::string &mPassword;
+    };
+
+    /**
+     * Reads a configuration file, parse it and store the data
+     * @param paFileLocation Path to file to be parsed
+     * @param paEndpoint Endpoint of the client to be looked for
+     * @param paResult Place to store the results
+     * @return True if no error occurred, false otherwise
+     */
+    static bool loadConfig(std::string &paFileLocation, std::string &paEndpoint, UA_ConfigFromFile &paResult);
+
+  private:
+    explicit CUA_ClientConfigFileParser();
+    virtual ~CUA_ClientConfigFileParser();
+
+#ifdef UA_ENABLE_ENCRYPTION
+# ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+    /**
+     * Load a file into a byte string. Used for certifcates and privated key files
+     * @param paFileLocation Path to the file to be loaded
+     * @param paResult Place to store the result
+     * @return True if no error occurred, false otherwise
+     */
+    static bool loadFileIntoBytestring(std::string &paFileLocation, UA_ByteString &paResult);
+# else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+# endif // FORTE_COM_OPC_UA_MASTER_BRANCH
+#endif //UA_ENABLE_ENCRYPTION
+};
+
+#endif /* SRC_MODULES_OPC_UA_OPCUA_CLIENT_CONFIG_PARSER_H_ */
diff --git a/src/modules/opc_ua/opcua_client_information.cpp b/src/modules/opc_ua/opcua_client_information.cpp
index 5fa7937..f8f0976 100644
--- a/src/modules/opc_ua/opcua_client_information.cpp
+++ b/src/modules/opc_ua/opcua_client_information.cpp
@@ -15,38 +15,73 @@
 #include "opcua_client_information.h"
 #include <basecommfb.h>
 #include "opcua_handler_abstract.h" //for logger
+#include "opcua_client_config_parser.h"
+#include <stdio.h>
 
+std::string gOpcuaClientConfigFile;
 
 CUA_ClientInformation::CUA_ClientInformation(const CIEC_STRING &paEndpoint) :
     mEndpointUrl(paEndpoint), mClient(0), mSubscriptionInfo(0), mMissingAsyncCalls(0), mNeedsReconnection(false), mWaitToInitializeActions(false),
+        mIsClientValid(true),
         mLastReconnectionTry(0), mLastActionInitializationTry(0), mSomeActionWasInitialized(false) {
 }
 
 CUA_ClientInformation::~CUA_ClientInformation() {
+  CCriticalRegion clientRegion(mClientMutex);
   uninitializeClient();
 }
 
 bool CUA_ClientInformation::configureClient() {
+  bool retVal = true;
 #ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
   mClient = UA_Client_new();
   UA_ClientConfig *configPointer = UA_Client_getConfig(mClient);
-  UA_StatusCode retVal = UA_ClientConfig_setDefault(configPointer);
-  if(UA_STATUSCODE_GOOD != retVal) {
-    DEVLOG_ERROR("[OPC UA CLIENT]: Error setting default client config. Error: %s\n", UA_StatusCode_name(retVal));
+
+  if(configureClientFromFile(*configPointer)) {
+    configPointer->stateCallback = CUA_RemoteCallbackFunctions::clientStateChangeCallback;
+    configPointer->logger = COPC_UA_HandlerAbstract::getLogger();
+    configPointer->timeout = scmClientTimeoutInMilli;
+  } else {
     UA_Client_delete(mClient);
-    return false;
+    mClient = 0;
+    retVal = false;
   }
-  configPointer->stateCallback = CUA_RemoteCallbackFunctions::clientStateChangeCallback;
-  configPointer->logger = COPC_UA_HandlerAbstract::getLogger();
-  configPointer->timeout = scmClientTimeoutInMilli;
 #else //FORTE_COM_OPC_UA_MASTER_BRANCH
   UA_ClientConfig config = UA_ClientConfig_default;
-  config.stateCallback = CUA_RemoteCallbackFunctions::clientStateChangeCallback;
-  config.logger = COPC_UA_HandlerAbstract::getLogger();
-  config.timeout = scmClientTimeoutInMilli;
-  mClient = UA_Client_new(config);
+  if(configureClientFromFile(config)) {
+    config.stateCallback = CUA_RemoteCallbackFunctions::clientStateChangeCallback;
+    config.logger = COPC_UA_HandlerAbstract::getLogger();
+    config.timeout = scmClientTimeoutInMilli;
+    mClient = UA_Client_new(config);
+  } else {
+    retVal = false;
+  }
 #endif //FORTE_COM_OPC_UA_MASTER_BRANCH
-  return true;
+  return retVal;
+}
+
+bool CUA_ClientInformation::configureClientFromFile(UA_ClientConfig &paConfig) {
+  bool retVal = true;
+
+  if("" != gOpcuaClientConfigFile){ //file was provided
+
+    std::string endpoint = mEndpointUrl.getValue();
+    CUA_ClientConfigFileParser::UA_ConfigFromFile result = CUA_ClientConfigFileParser::UA_ConfigFromFile(paConfig, mUsername, mPassword);
+
+    retVal = CUA_ClientConfigFileParser::loadConfig(gOpcuaClientConfigFile, endpoint, result);
+  } else {
+#ifdef FORTE_COM_OPC_UA_MASTER_BRANCH
+    UA_StatusCode retValOpcUa = UA_ClientConfig_setDefault(&paConfig);
+    if(UA_STATUSCODE_GOOD != retValOpcUa) {
+      DEVLOG_ERROR("[OPC UA CLIENT]: Error setting client configuration. Error: %s\n", UA_StatusCode_name(retValOpcUa));
+      retVal = false;
+    }
+#else // FORTE_COM_OPC_UA_MASTER_BRANCH
+
+#endif // FORTE_COM_OPC_UA_MASTER_BRANCH
+  }
+
+  return retVal;
 }
 
 void CUA_ClientInformation::uninitializeClient() {
@@ -57,9 +92,11 @@
     uninitializeAction(**itReferencingActions);
     mActionsToBeInitialized.pushBack(*itReferencingActions);
   }
-  UA_Client_disconnect(mClient);
-  UA_Client_delete(mClient);
-  mClient = 0;
+  if(mClient) {
+    UA_Client_disconnect(mClient);
+    UA_Client_delete(mClient);
+    mClient = 0;
+  }
   mWaitToInitializeActions = false;
   mNeedsReconnection = false;
   mSomeActionWasInitialized = false;
@@ -101,8 +138,9 @@
     } else {
       if(!connectClient()) {
         tryAnotherChangeImmediately = false;
-        DEVLOG_ERROR("[OPC UA CLIENT]: Couldn't connect to endpoint %s. Forte will try to reconnect in %u nanoseconds\n", mEndpointUrl.getValue(),
-          scmConnectionRetryTimeoutNano);
+        DEVLOG_ERROR(("[OPC UA CLIENT]: Couldn't connect to endpoint %s. Forte will try to reconnect in %u milliseconds\n"),
+          mEndpointUrl.getValue(),
+          static_cast<unsigned int>(scmConnectionRetryTimeoutNano / 1E6));
         mNeedsReconnection = true;
         mLastReconnectionTry = getNanoSecondsMonotonic();
       } else { //if connection succeeded, don't break the while and try to handle subscriptions immediately
@@ -292,7 +330,11 @@
 }
 
 bool CUA_ClientInformation::connectClient() {
-  return (UA_STATUSCODE_GOOD == UA_Client_connect(mClient, mEndpointUrl.getValue()));
+  if(0 == mUsername.compare("")) {
+    return (UA_STATUSCODE_GOOD == UA_Client_connect(mClient, mEndpointUrl.getValue()));
+  } else {
+    return (UA_STATUSCODE_GOOD == UA_Client_connect_username(mClient, mEndpointUrl.getValue(), mUsername.c_str(), mPassword.c_str()));
+  }
 }
 
 bool CUA_ClientInformation::initializeAllActions() {
@@ -510,11 +552,11 @@
 void CUA_ClientInformation::uninitializeAction(CActionInfo& paActionInfo) {
   mActionsToBeInitialized.erase(&paActionInfo); //remove in case it is still not initialized
   if(CActionInfo::eSubscribe == paActionInfo.getAction()) { //only subscription has something to release
-    uninitializeSubscription(paActionInfo);
+    uninitializeSubscribeAction(paActionInfo);
   }
 }
 
-void CUA_ClientInformation::uninitializeSubscription(CActionInfo& paActionInfo) {
+void CUA_ClientInformation::uninitializeSubscribeAction(CActionInfo& paActionInfo) {
   if(mSubscriptionInfo) {
     CSinglyLinkedList<UA_MonitoringItemInfo> toDelete;
     for(CSinglyLinkedList<UA_MonitoringItemInfo>::Iterator itMonitoringItemInfo = mSubscriptionInfo->mMonitoredItems.begin();
@@ -529,6 +571,12 @@
       if(UA_STATUSCODE_GOOD != retVal) {
         DEVLOG_ERROR("[OPC UA CLIENT]: Couldn't delete monitored item %u. No further actions will be taken. Error: %s\n",
           (*itMonitoringItemInfo).mMonitoringItemId, UA_StatusCode_name(retVal));
+
+        // if the remote is unplugged the missing subscription is detected and deleted with the previous call to the stack,
+        // so the callback is called and the subscription is cleaned already by this point
+        if(!mSubscriptionInfo) {
+          return;
+        }
       }
 
       mSubscriptionInfo->mMonitoredItems.erase(*itMonitoringItemInfo);
diff --git a/src/modules/opc_ua/opcua_client_information.h b/src/modules/opc_ua/opcua_client_information.h
index 0bed3c5..02fbc8d 100644
--- a/src/modules/opc_ua/opcua_client_information.h
+++ b/src/modules/opc_ua/opcua_client_information.h
@@ -18,6 +18,7 @@
 #include <fortelist.h>
 #include <forte_sync.h>
 #include <criticalregion.h>
+#include <string>
 
 /**
  * Contains all the information needed for a client to execute remote calls. It's the only class tha access
@@ -100,6 +101,14 @@
       return mClientMutex;
     }
 
+    void setClientToInvalid() {
+      mIsClientValid = false;
+    }
+
+    bool isClientValid() {
+      return mIsClientValid;
+    }
+
     /**
      * Place the request to the OPC UA API for an asynchronous read of a remote variable
      * @param paActionInfo Action to be performed
@@ -263,6 +272,13 @@
     };
 
     /**
+     * Look for the configuration file and load the configuration from it, otherwise it loads the default configuration
+     * @param paConfigPointer Place to store the configuration
+     * @return True if no error ocurred, false otherwise
+     */
+    bool configureClientFromFile(UA_ClientConfig &paConfigPointer);
+
+    /**
      * Try to connect the client
      * @return True if the connection succeeded, false otherwise
      */
@@ -335,7 +351,7 @@
      * Uninitialze a subscription action
      * @param paActionInfo Action to be uninitialized
      */
-    void uninitializeSubscription(CActionInfo& paActionInfo);
+    void uninitializeSubscribeAction(CActionInfo& paActionInfo);
 
     /**
      * Reset the subscription information.
@@ -359,6 +375,16 @@
     CIEC_STRING mEndpointUrl;
 
     /**
+     * Username to be used to connect to the server
+     */
+    std::string mUsername;
+
+    /**
+     * * Password to be used to connect to the server
+     */
+    std::string mPassword;
+
+    /**
      * Handler of the OPC UA stack client
      */
     UA_Client *mClient;
@@ -401,6 +427,19 @@
     bool mWaitToInitializeActions;
 
     /**
+     * Indicate the client is about to be deleted, so it's not added to new lists.
+     * The reason behind this variable, is because the following race condition happened in COPC_UA_Remote_Handler::removeClientFromAllLists
+     *  - The client is removed from the connection list
+     *  - Before removing from the normal handler list, the async call fails and the client is reconfigured and re-added to the connection handler
+     *  - The Client is deleted from allClients lists
+     *  - The Client is deleted (C++ wise)
+     *  - Since the connectionHandler has still the client, it tries to use it and crash
+     *
+     *  So this variable prevents the re-adding to any iteration list if it was set already to invalid, when is about to be deleted
+     */
+    bool mIsClientValid;
+
+    /**
      * Store the time when the connection last failed
      */
     uint_fast64_t mLastReconnectionTry;
diff --git a/src/modules/opc_ua/opcua_local_handler.cpp b/src/modules/opc_ua/opcua_local_handler.cpp
index 832fc75..c3ebb20 100644
--- a/src/modules/opc_ua/opcua_local_handler.cpp
+++ b/src/modules/opc_ua/opcua_local_handler.cpp
@@ -90,10 +90,10 @@
   if(mUaServer) {

     uaServerConfig = UA_Server_getConfig(mUaServer);

     UA_ServerConfig_setMinimal(uaServerConfig, gOpcuaServerPort, 0);

-    configureUAServer(gOpcuaServerPort, serverStrings, *uaServerConfig);

+    configureUAServer(serverStrings, *uaServerConfig);

 #else

   uaServerConfig = UA_ServerConfig_new_minimal(gOpcuaServerPort, 0);

-  configureUAServer(gOpcuaServerPort, serverStrings, *uaServerConfig);

+  configureUAServer(serverStrings, *uaServerConfig);

   mUaServer = UA_Server_new(uaServerConfig);

   if(mUaServer) {

 #endif

@@ -165,7 +165,7 @@
   paServerStrings.mHostname = hostname;

 }

 

-void COPC_UA_Local_Handler::configureUAServer(TForteUInt16 paUAServerPort, UA_ServerStrings &paServerStrings, UA_ServerConfig &paUaServerConfig) {

+void COPC_UA_Local_Handler::configureUAServer(UA_ServerStrings &paServerStrings, UA_ServerConfig &paUaServerConfig) {

 

   paUaServerConfig.logger = COPC_UA_HandlerAbstract::getLogger();

 

diff --git a/src/modules/opc_ua/opcua_local_handler.h b/src/modules/opc_ua/opcua_local_handler.h
index 1b9a32c..eb39d65 100644
--- a/src/modules/opc_ua/opcua_local_handler.h
+++ b/src/modules/opc_ua/opcua_local_handler.h
@@ -126,11 +126,10 @@
     void generateServerStrings(TForteUInt16 paUAServerPort, UA_ServerStrings &paServerStrings);
     /**
      *  Creates the configuration for the OPC UA Server.
-     * @param paUAServerPort Port where the OPC UA server will listen
      * @param paServerStrings Strings needed to configure the server
      * @param paUaServerConfig Place to store all the configurations
      */
-    void configureUAServer(TForteUInt16 paUAServerPort, UA_ServerStrings &paServerStrings, UA_ServerConfig &paUaServerConfig);
+    void configureUAServer(UA_ServerStrings &paServerStrings, UA_ServerConfig &paUaServerConfig);
 
     /**
      * Handler of the OPC UA stack server
diff --git a/src/modules/opc_ua/opcua_remote_handler.cpp b/src/modules/opc_ua/opcua_remote_handler.cpp
index 937082a..696948f 100644
--- a/src/modules/opc_ua/opcua_remote_handler.cpp
+++ b/src/modules/opc_ua/opcua_remote_handler.cpp
@@ -43,10 +43,12 @@
 }
 
 void COPC_UA_Client_IterationList::addClient(CUA_ClientInformation& paClientInformation) {
-  CCriticalRegion iterationListRegion(mNewClientsMutex);
-  addClientToList(paClientInformation, mNewClients);
-  mNeedsIteration.inc();
-  mNewClientsPresent = true;
+  if(paClientInformation.isClientValid()) {
+    CCriticalRegion iterationListRegion(mNewClientsMutex);
+    addClientToList(paClientInformation, mNewClients);
+    mNeedsIteration.inc();
+    mNewClientsPresent = true;
+  }
 }
 
 void COPC_UA_Client_IterationList::removeClient(CUA_ClientInformation& paClientInformation) {
@@ -273,6 +275,7 @@
 }
 
 void COPC_UA_Remote_Handler::removeClientFromAllLists(CUA_ClientInformation& paClientInformation) {
+  paClientInformation.setClientToInvalid();
   mConnectionHandler.removeClient(paClientInformation);
   removeClient(paClientInformation);
   mAllClients.erase(&paClientInformation);
diff --git a/src/modules/opc_ua/types/forte_localizedtext.cpp b/src/modules/opc_ua/types/forte_localizedtext.cpp
index 908698f..9a54a05 100644
--- a/src/modules/opc_ua/types/forte_localizedtext.cpp
+++ b/src/modules/opc_ua/types/forte_localizedtext.cpp
@@ -23,4 +23,4 @@
 }
 
 const CStringDictionary::TStringId CIEC_LocalizedText::scmElementTypes[] = { g_nStringIdSTRING, g_nStringIdSTRING };
-const CStringDictionary::TStringId CIEC_LocalizedText::scmElementNames[] = { g_nStringIdtext, g_nStringIdlocale };
+const CStringDictionary::TStringId CIEC_LocalizedText::scmElementNames[] = { g_nStringIdlocale, g_nStringIdtext };
diff --git a/src/modules/opc_ua/types/forte_localizedtext.h b/src/modules/opc_ua/types/forte_localizedtext.h
index d10c6df..bf1d6c5 100644
--- a/src/modules/opc_ua/types/forte_localizedtext.h
+++ b/src/modules/opc_ua/types/forte_localizedtext.h
@@ -26,11 +26,11 @@
     virtual ~CIEC_LocalizedText() {
     }
 
-    CIEC_STRING &text() {
+    CIEC_STRING &locale() {
       return *static_cast<CIEC_STRING*>(&getMembers()[0]);
     }
 
-    CIEC_STRING &locale() {
+    CIEC_STRING &text() {
       return *static_cast<CIEC_STRING*>(&getMembers()[1]);
     }
 
diff --git a/src/modules/utils/GEN_F_MUX.cpp b/src/modules/utils/GEN_F_MUX.cpp
index 55b1416..5e9788d 100644
--- a/src/modules/utils/GEN_F_MUX.cpp
+++ b/src/modules/utils/GEN_F_MUX.cpp
@@ -96,13 +96,11 @@
   char baseName[cg_nIdentifierLength];
 
   TIdentifier typeIdString;
-  size_t inlength;
 
-  memcpy(typeIdString, paConfigString, cg_nIdentifierLength);
+  memcpy(typeIdString, paConfigString, (strlen(paConfigString) > cg_nIdentifierLength) ? cg_nIdentifierLength : strlen(paConfigString) + 1); //plus 1 for the null character
+  typeIdString[cg_nIdentifierLength] = '\0';
 
-  typeIdString[cg_nIdentifierLength] = '\0'; //make a string
-
-  inlength = strlen(typeIdString);
+  size_t inlength = strlen(typeIdString);
 
   for(index = 0; index < (int) inlength - 1; index++){
 
diff --git a/src/modules/wagokbus/modular/wagoHandle.cpp b/src/modules/wagokbus/modular/wagoHandle.cpp
index aea9a86..2710231 100644
--- a/src/modules/wagokbus/modular/wagoHandle.cpp
+++ b/src/modules/wagokbus/modular/wagoHandle.cpp
@@ -90,8 +90,8 @@
 }
 
 void WagoHandle::getBoolean(CIEC_BOOL &paState) {
-  bool *inDataBool = 0;
-  mAppDevInterface->ReadBool(mKBusDeviceId, mTaskId, mInputOffset, inDataBool);
+  bool inDataBool = false;
+  mAppDevInterface->ReadBool(mKBusDeviceId, mTaskId, mInputOffset, &inDataBool);
   paState = inDataBool;
 }
 
diff --git a/src/stdfblib/events/CMakeLists.txt b/src/stdfblib/events/CMakeLists.txt
index a4eb1c9..5af7d07 100644
--- a/src/stdfblib/events/CMakeLists.txt
+++ b/src/stdfblib/events/CMakeLists.txt
@@ -1,12 +1,12 @@
 #*******************************************************************************

 # Copyright (c) 2010 - 2014 ACIN, fortiss GmbH

-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License 2.0 which is available at
-# http://www.eclipse.org/legal/epl-2.0.
-#
+# This program and the accompanying materials are made available under the

+# terms of the Eclipse Public License 2.0 which is available at

+# http://www.eclipse.org/legal/epl-2.0.

+#

 # SPDX-License-Identifier: EPL-2.0

-# 
-# Contributors:
+# 

+# Contributors:

 #    Alois Zoitl, Monika Wenger

 # *     - initial API and implementation and/or initial documentation

 # *******************************************************************************/

@@ -24,3 +24,4 @@
 forte_add_sourcefile_hcpp(E_RDELAY   E_RESTART E_R_TRIG E_SPLIT   E_SWITCH)

 forte_add_sourcefile_hcpp(GEN_E_DEMUX GEN_E_MUX)

 forte_add_sourcefile_hcpp(ATimeOut E_TimeOut ARTimeOut E_RTimeOut E_T_FF)

+forte_add_sourcefile_hcpp(E_TRAIN)

diff --git a/src/stdfblib/events/E_TRAIN.cpp b/src/stdfblib/events/E_TRAIN.cpp
new file mode 100644
index 0000000..e8ad9eb
--- /dev/null
+++ b/src/stdfblib/events/E_TRAIN.cpp
@@ -0,0 +1,81 @@
+/*******************************************************************************
+ * Copyright (c) 2017 fortiss GmbH
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Alois Zoitl
+ *     - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+
+#include "E_TRAIN.h"
+#ifdef FORTE_ENABLE_GENERATED_SOURCE_CPP
+#include "E_TRAIN_gen.cpp"
+#endif
+
+DEFINE_FIRMWARE_FB(FORTE_E_TRAIN, g_nStringIdE_TRAIN)
+
+const CStringDictionary::TStringId FORTE_E_TRAIN::scm_anDataInputNames[] = {g_nStringIdDT, g_nStringIdN};
+
+const CStringDictionary::TStringId FORTE_E_TRAIN::scm_anDataInputTypeIds[] = {g_nStringIdTIME, g_nStringIdUINT};
+
+const CStringDictionary::TStringId FORTE_E_TRAIN::scm_anDataOutputNames[] = {g_nStringIdCV};
+
+const CStringDictionary::TStringId FORTE_E_TRAIN::scm_anDataOutputTypeIds[] = {g_nStringIdUINT};
+
+const TForteInt16 FORTE_E_TRAIN::scm_anEIWithIndexes[] = {0, 2};
+const TDataIOID FORTE_E_TRAIN::scm_anEIWith[] = {0, 255, 0, 255};
+const CStringDictionary::TStringId FORTE_E_TRAIN::scm_anEventInputNames[] = {g_nStringIdSTART, g_nStringIdSTOP};
+
+const TDataIOID FORTE_E_TRAIN::scm_anEOWith[] = {0, 255};
+const TForteInt16 FORTE_E_TRAIN::scm_anEOWithIndexes[] = {0, -1};
+const CStringDictionary::TStringId FORTE_E_TRAIN::scm_anEventOutputNames[] = {g_nStringIdEO};
+
+const SFBInterfaceSpec FORTE_E_TRAIN::scm_stFBInterfaceSpec = {
+  2,  scm_anEventInputNames,  scm_anEIWith,  scm_anEIWithIndexes,
+  1,  scm_anEventOutputNames,  scm_anEOWith, scm_anEOWithIndexes,  2,  scm_anDataInputNames, scm_anDataInputTypeIds,
+  1,  scm_anDataOutputNames, scm_anDataOutputTypeIds,
+  0, 0
+};
+
+
+const SCFB_FBInstanceData FORTE_E_TRAIN::scm_astInternalFBs[] = {
+  {g_nStringIdCTR, g_nStringIdE_CTU},
+  {g_nStringIdGATE, g_nStringIdE_SWITCH},
+  {g_nStringIdDLY, g_nStringIdE_DELAY},
+};
+
+const SCFB_FBConnectionData FORTE_E_TRAIN::scm_astEventConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCTR, g_nStringIdCUO), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGATE, g_nStringIdEI), 1},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCTR, g_nStringIdRO), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGATE, g_nStringIdEI), 1},
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdSTART), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCTR, g_nStringIdR), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGATE, g_nStringIdEO0), 1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdDLY, g_nStringIdSTART), 2},
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdSTOP), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdDLY, g_nStringIdSTOP), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdDLY, g_nStringIdEO), 2, GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdEO), -1},
+};
+
+const SCFB_FBFannedOutConnectionData FORTE_E_TRAIN::scm_astFannedOutEventConnections[] = {
+  {5, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCTR, g_nStringIdCU), 0},
+};
+
+const SCFB_FBConnectionData FORTE_E_TRAIN::scm_astDataConnections[] = {
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdN), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCTR, g_nStringIdPV), 0},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCTR, g_nStringIdCV), 0, GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdCV), -1},
+  {GENERATE_CONNECTION_PORT_ID_1_ARG(g_nStringIdDT), -1, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdDLY, g_nStringIdDT), 2},
+  {GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdCTR, g_nStringIdQ), 0, GENERATE_CONNECTION_PORT_ID_2_ARG(g_nStringIdGATE, g_nStringIdG), 1},
+};
+
+const SCFB_FBNData FORTE_E_TRAIN::scm_stFBNData = {
+  3, scm_astInternalFBs,
+  6, scm_astEventConnections,
+  1, scm_astFannedOutEventConnections,
+  4, scm_astDataConnections,
+  0, 0,
+  0, 0
+};
+
+
diff --git a/src/stdfblib/events/E_TRAIN.h b/src/stdfblib/events/E_TRAIN.h
new file mode 100644
index 0000000..e4cc876
--- /dev/null
+++ b/src/stdfblib/events/E_TRAIN.h
@@ -0,0 +1,76 @@
+/*******************************************************************************
+ * Copyright (c) 2017 fortiss GmbH
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Alois Zoitl
+ *     - initial API and implementation and/or initial documentation
+ *******************************************************************************/
+
+#ifndef _E_TRAIN_H_
+#define _E_TRAIN_H_
+
+#include <cfb.h>
+#include <typelib.h>
+#include <forte_time.h>
+#include <forte_uint.h>
+
+class FORTE_E_TRAIN: public CCompositeFB{
+  DECLARE_FIRMWARE_FB(FORTE_E_TRAIN)
+
+private:
+  static const CStringDictionary::TStringId scm_anDataInputNames[];
+  static const CStringDictionary::TStringId scm_anDataInputTypeIds[];
+  CIEC_TIME &DT() {
+    return *static_cast<CIEC_TIME*>(getDI(0));
+  };
+
+  CIEC_UINT &N() {
+    return *static_cast<CIEC_UINT*>(getDI(1));
+  };
+
+  static const CStringDictionary::TStringId scm_anDataOutputNames[];
+  static const CStringDictionary::TStringId scm_anDataOutputTypeIds[];
+  CIEC_UINT &CV() {
+    return *static_cast<CIEC_UINT*>(getDO(0));
+  };
+
+  static const TEventID scm_nEventSTARTID = 0;
+  static const TEventID scm_nEventSTOPID = 1;
+  static const TForteInt16 scm_anEIWithIndexes[];
+  static const TDataIOID scm_anEIWith[];
+  static const CStringDictionary::TStringId scm_anEventInputNames[];
+
+  static const TEventID scm_nEventEOID = 0;
+  static const TForteInt16 scm_anEOWithIndexes[];
+  static const TDataIOID scm_anEOWith[];
+  static const CStringDictionary::TStringId scm_anEventOutputNames[];
+
+  static const SFBInterfaceSpec scm_stFBInterfaceSpec;
+
+   FORTE_FB_DATA_ARRAY(1, 2, 1, 0);
+
+  static const SCFB_FBInstanceData scm_astInternalFBs[];
+
+  static const SCFB_FBConnectionData scm_astEventConnections[];
+
+  static const SCFB_FBFannedOutConnectionData scm_astFannedOutEventConnections[];
+
+  static const SCFB_FBConnectionData scm_astDataConnections[];
+  static const SCFB_FBNData scm_stFBNData;
+
+public:
+  COMPOSITE_FUNCTION_BLOCK_CTOR(FORTE_E_TRAIN){
+  };
+
+  virtual ~FORTE_E_TRAIN(){};
+
+};
+
+#endif //close the ifdef sequence from the beginning of the file
+
diff --git a/systemtests/src/modules/CMakeLists.txt b/systemtests/src/modules/CMakeLists.txt
index 1794988..48e1c37 100644
--- a/systemtests/src/modules/CMakeLists.txt
+++ b/systemtests/src/modules/CMakeLists.txt
@@ -17,3 +17,7 @@
 if(FORTE_COM_OPC_UA)
   add_subdirectory(opc_ua)
 endif(FORTE_COM_OPC_UA)
+
+if(FORTE_MODULE_Arrowhead)
+  add_subdirectory(arrowhead)
+endif(FORTE_MODULE_Arrowhead)
diff --git a/src/modules/arrowhead/SystemTests/Arrowhead_HTTPTest.fboot b/systemtests/src/modules/arrowhead/Arrowhead_HTTPTest.fboot
similarity index 94%
rename from src/modules/arrowhead/SystemTests/Arrowhead_HTTPTest.fboot
rename to systemtests/src/modules/arrowhead/Arrowhead_HTTPTest.fboot
index 2a6eeb0..7028bd3 100644
--- a/src/modules/arrowhead/SystemTests/Arrowhead_HTTPTest.fboot
+++ b/systemtests/src/modules/arrowhead/Arrowhead_HTTPTest.fboot
@@ -211,7 +211,7 @@
 RegisterUnregister;<Request ID="211" Action="CREATE"><Connection Source="Sequencer.E_DEMUX.EO2" Destination="QueryService.query" /></Request>
 RegisterUnregister;<Request ID="212" Action="CREATE"><Connection Source="Sequencer.E_DEMUX.EO3" Destination="RegisterService.unregister" /></Request>
 RegisterUnregister;<Request ID="213" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO0" Destination="QueryService.query" /></Request>
-RegisterUnregister;<Request ID="214" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO1" Destination="PUBLISH_0.INIT" /></Request>
+RegisterUnregister;<Request ID="214" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO1" Destination="PUBLISH_0.REQ" /></Request>
 RegisterUnregister;<Request ID="215" Action="CREATE"><Connection Source="Sequencer.F_GT.CNF" Destination="Sequencer.E_SWITCH.EI" /></Request>
 RegisterUnregister;<Request ID="216" Action="CREATE"><Connection Source="Sequencer.E_SWITCH.EO0" Destination="Sequencer.E_DEMUX.EI" /></Request>
 RegisterUnregister;<Request ID="217" Action="CREATE"><Connection Source="Sequencer.E_MERGE.EO" Destination="Sequencer.E_CTU.CU" /></Request>
@@ -269,12 +269,12 @@
 RegisterUnregister;<Request ID="269" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
 RegisterUnregister;<Request ID="270" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_2.REQ" /></Request>
 RegisterUnregister;<Request ID="271" Action="CREATE"><Connection Source="ServiceNotRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterUnregister;<Request ID="272" Action="CREATE"><Connection Source="PUBLISH_0.INITO" Destination="PUBLISH_0.REQ" /></Request>
-RegisterUnregister;<Request ID="273" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-RegisterUnregister;<Request ID="274" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterUnregister;<Request ID="275" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
-RegisterUnregister;<Request ID="276" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-RegisterUnregister;<Request ID="277" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+RegisterUnregister;<Request ID="272" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+RegisterUnregister;<Request ID="273" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterUnregister;<Request ID="274" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
+RegisterUnregister;<Request ID="275" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+RegisterUnregister;<Request ID="276" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+RegisterUnregister;<Request ID="277" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBLISH_0.INIT" /></Request>
 RegisterUnregister;<Request ID="278" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="FieldsToServiceQueryForm.service" /></Request>
 RegisterUnregister;<Request ID="279" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="ServiceNotRegisteredPos1.check" /></Request>
 RegisterUnregister;<Request ID="280" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
@@ -346,29 +346,29 @@
 DoubleRegister;<Request ID="346" Action="CREATE"><FB Name="RegisterService" Type="RegisterService" /></Request>
 DoubleRegister;<Request ID="347" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService.endpoint" /></Request>
 DoubleRegister;<Request ID="348" Action="CREATE"><FB Name="RegisterServiceHTTP" Type="RegisterServiceHTTP" /></Request>
-DoubleRegister;<Request ID="349" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-DoubleRegister;<Request ID="350" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-DoubleRegister;<Request ID="351" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="352" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
-DoubleRegister;<Request ID="353" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
-DoubleRegister;<Request ID="354" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
-DoubleRegister;<Request ID="355" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="356" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
-DoubleRegister;<Request ID="357" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-DoubleRegister;<Request ID="358" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="359" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
-DoubleRegister;<Request ID="360" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-DoubleRegister;<Request ID="361" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-DoubleRegister;<Request ID="362" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-DoubleRegister;<Request ID="363" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
-DoubleRegister;<Request ID="364" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
-DoubleRegister;<Request ID="365" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
-DoubleRegister;<Request ID="366" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_2.IN1" /></Request>
-DoubleRegister;<Request ID="367" Action="CREATE"><FB Name="ServiceNotRegisteredPos0" Type="TEST_CONDITION" /></Request>
-DoubleRegister;<Request ID="368" Action="CREATE"><FB Name="SUBSCRIBE_0" Type="SUBL_0" /></Request>
-DoubleRegister;<Request ID="369" Action="WRITE"><Connection Source="WSTRIGN#RegisterUnregisterTestReady" Destination="SUBSCRIBE_0.ID" /></Request>
-DoubleRegister;<Request ID="370" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-DoubleRegister;<Request ID="371" Action="WRITE"><Connection Source="WSTRIGN#DoubleRegisterReady" Destination="PUBL_0.ID" /></Request>
+DoubleRegister;<Request ID="349" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
+DoubleRegister;<Request ID="350" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
+DoubleRegister;<Request ID="351" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
+DoubleRegister;<Request ID="352" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_2.IN1" /></Request>
+DoubleRegister;<Request ID="353" Action="CREATE"><FB Name="ServiceNotRegisteredPos0" Type="TEST_CONDITION" /></Request>
+DoubleRegister;<Request ID="354" Action="CREATE"><FB Name="SUBSCRIBE_0" Type="SUBL_0" /></Request>
+DoubleRegister;<Request ID="355" Action="WRITE"><Connection Source="WSTRIGN#RegisterUnregisterTestReady" Destination="SUBSCRIBE_0.ID" /></Request>
+DoubleRegister;<Request ID="356" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+DoubleRegister;<Request ID="357" Action="WRITE"><Connection Source="WSTRIGN#DoubleRegisterReady" Destination="PUBL_0.ID" /></Request>
+DoubleRegister;<Request ID="358" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+DoubleRegister;<Request ID="359" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+DoubleRegister;<Request ID="360" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="361" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
+DoubleRegister;<Request ID="362" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
+DoubleRegister;<Request ID="363" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
+DoubleRegister;<Request ID="364" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="365" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
+DoubleRegister;<Request ID="366" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+DoubleRegister;<Request ID="367" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="368" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
+DoubleRegister;<Request ID="369" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+DoubleRegister;<Request ID="370" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+DoubleRegister;<Request ID="371" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
 DoubleRegister;<Request ID="372" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.REQ" /></Request>
 DoubleRegister;<Request ID="373" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPort.REQ" /></Request>
 DoubleRegister;<Request ID="374" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetPort.REQ" /></Request>
@@ -449,18 +449,18 @@
 DoubleRegister;<Request ID="449" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Registered.S" /></Request>
 DoubleRegister;<Request ID="450" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Registered.R" /></Request>
 DoubleRegister;<Request ID="451" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
-DoubleRegister;<Request ID="452" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-DoubleRegister;<Request ID="453" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_2.REQ" /></Request>
-DoubleRegister;<Request ID="454" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="ServiceNotRegisteredPos0.REQ" /></Request>
-DoubleRegister;<Request ID="455" Action="CREATE"><Connection Source="ServiceNotRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="456" Action="CREATE"><Connection Source="START.COLD" Destination="SUBSCRIBE_0.INIT" /></Request>
-DoubleRegister;<Request ID="457" Action="CREATE"><Connection Source="START.WARM" Destination="SUBSCRIBE_0.INIT" /></Request>
-DoubleRegister;<Request ID="458" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="459" Action="CREATE"><Connection Source="SUBSCRIBE_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
-DoubleRegister;<Request ID="460" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-DoubleRegister;<Request ID="461" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="462" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="463" Action="CREATE"><Connection Source="SUBSCRIBE_0.INITO" Destination="PUBL_0.INIT" /></Request>
+DoubleRegister;<Request ID="452" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_2.REQ" /></Request>
+DoubleRegister;<Request ID="453" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="ServiceNotRegisteredPos0.REQ" /></Request>
+DoubleRegister;<Request ID="454" Action="CREATE"><Connection Source="ServiceNotRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="455" Action="CREATE"><Connection Source="START.COLD" Destination="SUBSCRIBE_0.INIT" /></Request>
+DoubleRegister;<Request ID="456" Action="CREATE"><Connection Source="START.WARM" Destination="SUBSCRIBE_0.INIT" /></Request>
+DoubleRegister;<Request ID="457" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="458" Action="CREATE"><Connection Source="SUBSCRIBE_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
+DoubleRegister;<Request ID="459" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+DoubleRegister;<Request ID="460" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="461" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="462" Action="CREATE"><Connection Source="SUBSCRIBE_0.INITO" Destination="PUBL_0.INIT" /></Request>
+DoubleRegister;<Request ID="463" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
 DoubleRegister;<Request ID="464" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
 DoubleRegister;<Request ID="465" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="ServiceNotRegisteredPos1.check" /></Request>
 DoubleRegister;<Request ID="466" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
@@ -472,8 +472,8 @@
 DoubleRegister;<Request ID="472" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToServiceRegistryEntry.provider" /></Request>
 DoubleRegister;<Request ID="473" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService.serviceRegistryEntry" /></Request>
 DoubleRegister;<Request ID="474" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
-DoubleRegister;<Request ID="475" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-DoubleRegister;<Request ID="476" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="ServiceNotRegisteredPos0.check" /></Request>
+DoubleRegister;<Request ID="475" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="ServiceNotRegisteredPos0.check" /></Request>
+DoubleRegister;<Request ID="476" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
 DoubleRegister;<Request ID="477" Action="CREATE"><Connection Source="QueryService.queryServices" Destination="QueryServiceHTTP.queryServices" /></Request>
 DoubleRegister;<Request ID="478" Action="CREATE"><Connection Source="RegisterService.registerService" Destination="RegisterServiceHTTP.registerService" /></Request>
 DoubleRegister;<Request ID="479" Action="START"/>
@@ -706,7 +706,7 @@
 RegisterMoreServices;<Request ID="706" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.CNF" Destination="Sequencer.E_DEMUX_1_1.EI" /></Request>
 RegisterMoreServices;<Request ID="707" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="QueryService1.FieldsToServiceQueryForm.REQ" /></Request>
 RegisterMoreServices;<Request ID="708" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="QueryService2.FieldsToServiceQueryForm.REQ" /></Request>
-RegisterMoreServices;<Request ID="709" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.INIT" /></Request>
+RegisterMoreServices;<Request ID="709" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.REQ" /></Request>
 RegisterMoreServices;<Request ID="710" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO3" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServices;<Request ID="711" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServices;<Request ID="712" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="Sequencer.E_MERGE.EI2" /></Request>
@@ -826,7 +826,7 @@
 RegisterMoreServices;<Request ID="826" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
 RegisterMoreServices;<Request ID="827" Action="CREATE"><Connection Source="Service1.CNF" Destination="Service2.REQ" /></Request>
 RegisterMoreServices;<Request ID="828" Action="CREATE"><Connection Source="Service2.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServices;<Request ID="829" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
+RegisterMoreServices;<Request ID="829" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
 RegisterMoreServices;<Request ID="830" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="Service1RegisteredPos0.check" /></Request>
 RegisterMoreServices;<Request ID="831" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="Service1NotRegisteredPos1.check" /></Request>
 RegisterMoreServices;<Request ID="832" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
@@ -1005,7 +1005,7 @@
 SameServiceTwice;<Request ID="1,005" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.CNF" Destination="Sequencer.E_DEMUX_1_1.EI" /></Request>
 SameServiceTwice;<Request ID="1,006" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.REQ" /></Request>
 SameServiceTwice;<Request ID="1,007" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="F_EQ_1_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,008" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.INIT" /></Request>
+SameServiceTwice;<Request ID="1,008" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.REQ" /></Request>
 SameServiceTwice;<Request ID="1,009" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO3" Destination="Sequencer.E_MERGE.EI2" /></Request>
 SameServiceTwice;<Request ID="1,010" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="Sequencer.E_MERGE.EI2" /></Request>
 SameServiceTwice;<Request ID="1,011" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="Sequencer.E_MERGE.EI2" /></Request>
@@ -1130,7 +1130,7 @@
 SameServiceTwice;<Request ID="1,130" Action="CREATE"><Connection Source="Service1.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
 SameServiceTwice;<Request ID="1,131" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
 SameServiceTwice;<Request ID="1,132" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,133" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
+SameServiceTwice;<Request ID="1,133" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
 SameServiceTwice;<Request ID="1,134" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
 SameServiceTwice;<Request ID="1,135" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService1.FieldsToServiceRegistryEntry.providedService" /></Request>
 SameServiceTwice;<Request ID="1,136" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService1.FieldsToServiceRegistryEntry.provider" /></Request>
@@ -1438,7 +1438,7 @@
 VersionInterfaceAndMetadata;<Request ID="1,438" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.version" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,439" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.address" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,440" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.doneRegister" Destination="FieldsToArrowheadService.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,441" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.doneUnregister" Destination="PUBL_0.INIT" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,441" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.doneUnregister" Destination="PUBL_0.REQ" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,442" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.register" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,443" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.unregister" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,444" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.CNF" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND.EI2" /></Request>
@@ -1742,7 +1742,7 @@
 VersionInterfaceAndMetadata;<Request ID="1,742" Action="CREATE"><Connection Source="NoMetadataAndAsked.CNF" Destination="FieldsToArrowheadService_1_2_1_1_1_1.REQ" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,743" Action="CREATE"><Connection Source="WrongMetadaButNotAsked.CNF" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.REQ" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,744" Action="CREATE"><Connection Source="WrongMetadaButNotAsked.CNF" Destination="RegisterServiceFullHTTP.E_SR.R" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,745" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,745" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,746" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.service" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,747" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,748" Action="CREATE"><Connection Source="F_EQ_4.OUT" Destination="LowerVersion.check" /></Request>
@@ -2009,7 +2009,7 @@
 RegisterMoreServicesSubApp;<Request ID="2,009" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.CNF" Destination="Sequencer.E_DEMUX_1_1.EI" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,010" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="QuerySecondService.FieldsToArrowheadService.REQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,011" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="F_EQ_3_1_1_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,012" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0_1.INIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,012" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0_1.REQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,013" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO3" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,014" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,015" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="Sequencer.E_MERGE.EI2" /></Request>
@@ -2163,7 +2163,7 @@
 RegisterMoreServicesSubApp;<Request ID="2,163" Action="CREATE"><Connection Source="Pos1Empty4.CNF" Destination="E_MERGE.EI2" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,164" Action="CREATE"><Connection Source="E_MERGE.EO" Destination="Sequencer.F_GT.REQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,165" Action="CREATE"><Connection Source="E_MERGE_1.EO" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,166" Action="CREATE"><Connection Source="PUBL_0_1.INITO" Destination="PUBL_0_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,166" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0_1.INIT" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,167" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,168" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,169" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="Pos1Empty2.check" /></Request>
@@ -2297,7 +2297,7 @@
 OrchestratorNoRule;<Request ID="2,297" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="RegisterService2.E_REND.EI1" /></Request>
 OrchestratorNoRule;<Request ID="2,298" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
 OrchestratorNoRule;<Request ID="2,299" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="E_SR.R" /></Request>
-OrchestratorNoRule;<Request ID="2,300" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="PUBL_0.INIT" /></Request>
+OrchestratorNoRule;<Request ID="2,300" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="PUBL_0.REQ" /></Request>
 OrchestratorNoRule;<Request ID="2,301" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1.E_CTU.R" /></Request>
 OrchestratorNoRule;<Request ID="2,302" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
 OrchestratorNoRule;<Request ID="2,303" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
@@ -2324,14 +2324,14 @@
 OrchestratorNoRule;<Request ID="2,324" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoServiceAvailable.REQ" /></Request>
 OrchestratorNoRule;<Request ID="2,325" Action="CREATE"><Connection Source="E_SR.EO" Destination="SERVER_1.INIT" /></Request>
 OrchestratorNoRule;<Request ID="2,326" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,327" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,328" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-OrchestratorNoRule;<Request ID="2,329" Action="CREATE"><Connection Source="GET_STRUCT_VALUE1.CNF" Destination="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,330" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,331" Action="CREATE"><Connection Source="FieldsToServiceRequestForm.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,332" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-OrchestratorNoRule;<Request ID="2,333" Action="CREATE"><Connection Source="SERVER_1.INITO" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,334" Action="CREATE"><Connection Source="RequestOrchestrationForm.responseReceived" Destination="GET_STRUCT_VALUE1.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,327" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+OrchestratorNoRule;<Request ID="2,328" Action="CREATE"><Connection Source="GET_STRUCT_VALUE1.CNF" Destination="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,329" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,330" Action="CREATE"><Connection Source="FieldsToServiceRequestForm.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,331" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+OrchestratorNoRule;<Request ID="2,332" Action="CREATE"><Connection Source="SERVER_1.INITO" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,333" Action="CREATE"><Connection Source="RequestOrchestrationForm.responseReceived" Destination="GET_STRUCT_VALUE1.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,334" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
 OrchestratorNoRule;<Request ID="2,335" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToServiceRequestForm.requesterSystem" /></Request>
 OrchestratorNoRule;<Request ID="2,336" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="FieldsToServiceRequestForm.requestedService" /></Request>
 OrchestratorNoRule;<Request ID="2,337" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoServiceAvailable.check" /></Request>
@@ -2367,7 +2367,7 @@
 OrchestrationWithRules;<Request ID="2,367" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
 OrchestrationWithRules;<Request ID="2,368" Action="WRITE"><Connection Source="WSTRING#test7Ended" Destination="SUBL_0.ID" /></Request>
 OrchestrationWithRules;<Request ID="2,369" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-OrchestrationWithRules;<Request ID="2,370" Action="WRITE"><Connection Source="WSTRIGN#allEnded" Destination="PUBL_0.ID" /></Request>
+OrchestrationWithRules;<Request ID="2,370" Action="WRITE"><Connection Source="test8Ended" Destination="PUBL_0.ID" /></Request>
 OrchestrationWithRules;<Request ID="2,371" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX" Type="E_DEMUX" /></Request>
 OrchestrationWithRules;<Request ID="2,372" Action="CREATE"><FB Name="Sequencer_1.E_CTU" Type="E_CTU" /></Request>
 OrchestrationWithRules;<Request ID="2,373" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1" Type="E_DEMUX" /></Request>
@@ -2402,176 +2402,332 @@
 OrchestrationWithRules;<Request ID="2,402" Action="WRITE"><Connection Source="http[127.0.0.1:8440/orchestrator/mgmt/store; POST; application/json]]" Destination="CLIENT_1_2_1.ID" /></Request>
 OrchestrationWithRules;<Request ID="2,403" Action="WRITE"><Connection Source="STRING#[{&quot;service&quot; : {&quot;serviceDefinition&quot; : &quot;serviceTest&quot;,&quot;interfaces&quot; : [ &quot;XML&quot;, &quot;JSON&quot;],&quot;serviceMetadata&quot; : { &quot;key1&quot; : &quot;value1&quot;, &quot;key2&quot; : &quot;value2&quot;}},&quot;consumer&quot; : {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; :&quot;localhost&quot;,&quot;port&quot; : 8090, &quot;authenticationInfo&quot; : &quot;&quot;},&quot;providerSystem&quot; : {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; : &quot;localhost&quot;,&quot;port&quot; : 8090,&quot;authenticationInfo&quot; : &quot;&quot;},&quot;priority&quot; : 1,&quot;defaultEntry&quot; : true,&quot;name&quot; : &quot;&quot;,&quot;lastUpdated&quot; : &quot;&quot;,&quot;instruction&quot; : &quot;&quot;,&quot;attributes&quot; : { },&quot;serviceURI&quot; : &quot;serviceTest/start&quot;} ]" Destination="CLIENT_1_2_1.SD_1" /></Request>
 OrchestrationWithRules;<Request ID="2,404" Action="CREATE"><FB Name="STRING2STRING" Type="STRING2STRING" /></Request>
-OrchestrationWithRules;<Request ID="2,405" Action="CREATE"><FB Name="PUBL_0_1" Type="PUBL_0" /></Request>
-OrchestrationWithRules;<Request ID="2,406" Action="WRITE"><Connection Source="WSTRING#allLoaded" Destination="PUBL_0_1.ID" /></Request>
-OrchestrationWithRules;<Request ID="2,407" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
-OrchestrationWithRules;<Request ID="2,408" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-OrchestrationWithRules;<Request ID="2,409" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS" Type="WSTRING2WSTRING" /></Request>
-OrchestrationWithRules;<Request ID="2,410" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S" Type="F_DINT_TO_STRING" /></Request>
-OrchestrationWithRules;<Request ID="2,411" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-OrchestrationWithRules;<Request ID="2,412" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.member" /></Request>
-OrchestrationWithRules;<Request ID="2,413" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-OrchestrationWithRules;<Request ID="2,414" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.member" /></Request>
-OrchestrationWithRules;<Request ID="2,415" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-OrchestrationWithRules;<Request ID="2,416" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.member" /></Request>
-OrchestrationWithRules;<Request ID="2,417" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort" Type="APPEND_STRING_3" /></Request>
-OrchestrationWithRules;<Request ID="2,418" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_2" /></Request>
-OrchestrationWithRules;<Request ID="2,419" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm" Type="OrchestrationForm2OrchestrationForm" /></Request>
-OrchestrationWithRules;<Request ID="2,420" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1" Type="WSTRING2WSTRING" /></Request>
-OrchestrationWithRules;<Request ID="2,421" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI" Type="APPEND_STRING_2" /></Request>
-OrchestrationWithRules;<Request ID="2,422" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud" Type="FieldsToArrowheadCloud" /></Request>
-OrchestrationWithRules;<Request ID="2,423" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-OrchestrationWithRules;<Request ID="2,424" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationHTTP" Type="RequestOrchestrationHTTP" /></Request>
-OrchestrationWithRules;<Request ID="2,425" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm" Type="FieldsToServiceRequestForm" /></Request>
-OrchestrationWithRules;<Request ID="2,426" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-OrchestrationWithRules;<Request ID="2,427" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm" Type="RequestOrchestrationForm" /></Request>
-OrchestrationWithRules;<Request ID="2,428" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
-OrchestrationWithRules;<Request ID="2,429" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
-OrchestrationWithRules;<Request ID="2,430" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
-OrchestrationWithRules;<Request ID="2,431" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
-OrchestrationWithRules;<Request ID="2,432" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
-OrchestrationWithRules;<Request ID="2,433" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.systemName" /></Request>
-OrchestrationWithRules;<Request ID="2,434" Action="WRITE"><Connection Source="localhost" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.address" /></Request>
-OrchestrationWithRules;<Request ID="2,435" Action="WRITE"><Connection Source="8090" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.port" /></Request>
-OrchestrationWithRules;<Request ID="2,436" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.serviceDefinition" /></Request>
-OrchestrationWithRules;<Request ID="2,437" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.interfaces" /></Request>
-OrchestrationWithRules;<Request ID="2,438" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.serviceMetadata" /></Request>
-OrchestrationWithRules;<Request ID="2,439" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8440/orchestrator" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.endpoint" /></Request>
-OrchestrationWithRules;<Request ID="2,440" Action="WRITE"><Connection Source="0" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.INDEX" /></Request>
-OrchestrationWithRules;<Request ID="2,441" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,442" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,443" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
-OrchestrationWithRules;<Request ID="2,444" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
-OrchestrationWithRules;<Request ID="2,445" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
-OrchestrationWithRules;<Request ID="2,446" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,447" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
-OrchestrationWithRules;<Request ID="2,448" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
-OrchestrationWithRules;<Request ID="2,449" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
-OrchestrationWithRules;<Request ID="2,450" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceHTTP_1.registerService" /></Request>
-OrchestrationWithRules;<Request ID="2,451" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="CLIENT_1_2.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,452" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,453" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_SR.S" /></Request>
-OrchestrationWithRules;<Request ID="2,454" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,455" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_REND.EI1" /></Request>
-OrchestrationWithRules;<Request ID="2,456" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="E_SR_1.S" /></Request>
-OrchestrationWithRules;<Request ID="2,457" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,458" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="E_SR.S" /></Request>
-OrchestrationWithRules;<Request ID="2,459" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,460" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_SR.R" /></Request>
-OrchestrationWithRules;<Request ID="2,461" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,462" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_REND.EI1" /></Request>
-OrchestrationWithRules;<Request ID="2,463" Action="CREATE"><Connection Source="Sequencer_1.F_GT.CNF" Destination="Sequencer_1.E_SWITCH.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,464" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO0" Destination="Sequencer_1.E_DEMUX.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,465" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.CNF" Destination="Sequencer_1.E_DEMUX_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,466" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO1" Destination="Sequencer_1.F_GT_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,467" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.CNF" Destination="Sequencer_1.E_SWITCH_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,468" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO0" Destination="Sequencer_1.F_SUB.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,469" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,470" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="E_SR_1.R" /></Request>
-OrchestrationWithRules;<Request ID="2,471" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,472" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="E_SR.R" /></Request>
-OrchestrationWithRules;<Request ID="2,473" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,474" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,475" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,476" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,477" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,478" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,479" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,480" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,481" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,482" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,483" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,484" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.CNF" Destination="Sequencer_1.E_SWITCH_1_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,485" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,486" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="PUBL_0.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,487" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO1" Destination="Sequencer_1.F_GT_1_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,488" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO0" Destination="Sequencer_1.F_SUB_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,489" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO1" Destination="Sequencer_1.F_SUB_1_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,490" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.R" /></Request>
-OrchestrationWithRules;<Request ID="2,491" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,492" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,493" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,494" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,495" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,496" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,497" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.E_DEMUX.K" /></Request>
-OrchestrationWithRules;<Request ID="2,498" Action="CREATE"><Connection Source="Sequencer_1.F_GT.OUT" Destination="Sequencer_1.E_SWITCH.G" /></Request>
-OrchestrationWithRules;<Request ID="2,499" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.OUT" Destination="Sequencer_1.E_DEMUX_1.K" /></Request>
-OrchestrationWithRules;<Request ID="2,500" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,501" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,502" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,503" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,504" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.OUT" Destination="Sequencer_1.E_SWITCH_1.G" /></Request>
-OrchestrationWithRules;<Request ID="2,505" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1.K" /></Request>
-OrchestrationWithRules;<Request ID="2,506" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.OUT" Destination="Sequencer_1.E_SWITCH_1_1.G" /></Request>
-OrchestrationWithRules;<Request ID="2,507" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1_1.K" /></Request>
-OrchestrationWithRules;<Request ID="2,508" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,509" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,510" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,511" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,512" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,513" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,514" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.CNF" Destination="E_SWITCH.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,515" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,516" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,517" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,518" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,519" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,520" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_3" /></Request>
-OrchestrationWithRules;<Request ID="2,521" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_1" /></Request>
-OrchestrationWithRules;<Request ID="2,522" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,523" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,524" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,525" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,526" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.in_struct" /></Request>
-OrchestrationWithRules;<Request ID="2,527" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.in_struct" /></Request>
-OrchestrationWithRules;<Request ID="2,528" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.in_struct" /></Request>
-OrchestrationWithRules;<Request ID="2,529" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,530" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_1" /></Request>
-OrchestrationWithRules;<Request ID="2,531" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,532" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_2" /></Request>
-OrchestrationWithRules;<Request ID="2,533" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,534" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.requestOrchestator" /></Request>
-OrchestrationWithRules;<Request ID="2,535" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.responseReceived" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,536" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.arrowheadService" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requestedService" /></Request>
-OrchestrationWithRules;<Request ID="2,537" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.serviceRequestForm" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.serviceRequestForm" /></Request>
-OrchestrationWithRules;<Request ID="2,538" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.orchestrationResponse" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.IN_ARRAY" /></Request>
-OrchestrationWithRules;<Request ID="2,539" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.requestOrchestration" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationHTTP.requestOrchestration" /></Request>
-OrchestrationWithRules;<Request ID="2,540" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,541" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,542" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.arrowheadSystem" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requesterSystem" /></Request>
-OrchestrationWithRules;<Request ID="2,543" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.arrowheadCloud" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requesterCloud" /></Request>
-OrchestrationWithRules;<Request ID="2,544" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,545" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,546" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,547" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoServiceAvailable.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,548" Action="CREATE"><Connection Source="E_SR.EO" Destination="SERVER_1.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,549" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,550" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,551" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,552" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="ServiceAvailable.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,553" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,554" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,555" Action="CREATE"><Connection Source="E_SR_1.EO" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,556" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,557" Action="CREATE"><Connection Source="SERVER_1.INITO" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,558" Action="CREATE"><Connection Source="CLIENT_1_2.INITO" Destination="CLIENT_1_2.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,559" Action="CREATE"><Connection Source="CLIENT_1_2.CNF" Destination="CLIENT_1_2_1.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,560" Action="CREATE"><Connection Source="CLIENT_1_2_1.INITO" Destination="CLIENT_1_2_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,561" Action="CREATE"><Connection Source="CLIENT_1_2_1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,562" Action="CREATE"><Connection Source="SERVER_1.IND" Destination="STRING2STRING.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,563" Action="CREATE"><Connection Source="STRING2STRING.CNF" Destination="SERVER_1.RSP" /></Request>
-OrchestrationWithRules;<Request ID="2,564" Action="CREATE"><Connection Source="ServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,565" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,566" Action="CREATE"><Connection Source="Service1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,567" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0_1.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,568" Action="CREATE"><Connection Source="PUBL_0_1.INITO" Destination="PUBL_0_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,569" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoServiceAvailable.check" /></Request>
-OrchestrationWithRules;<Request ID="2,570" Action="CREATE"><Connection Source="E_SR.Q" Destination="SERVER_1.QI" /></Request>
-OrchestrationWithRules;<Request ID="2,571" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
-OrchestrationWithRules;<Request ID="2,572" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
-OrchestrationWithRules;<Request ID="2,573" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="ServiceAvailable.check" /></Request>
-OrchestrationWithRules;<Request ID="2,574" Action="CREATE"><Connection Source="E_SR_1.Q" Destination="E_SWITCH.G" /></Request>
-OrchestrationWithRules;<Request ID="2,575" Action="CREATE"><Connection Source="SERVER_1.RD_1" Destination="STRING2STRING.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,576" Action="CREATE"><Connection Source="STRING2STRING.OUT" Destination="SERVER_1.SD_1" /></Request>
-OrchestrationWithRules;<Request ID="2,577" Action="START"/>
+OrchestrationWithRules;<Request ID="2,405" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
+OrchestrationWithRules;<Request ID="2,406" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+OrchestrationWithRules;<Request ID="2,407" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS" Type="WSTRING2WSTRING" /></Request>
+OrchestrationWithRules;<Request ID="2,408" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S" Type="F_DINT_TO_STRING" /></Request>
+OrchestrationWithRules;<Request ID="2,409" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+OrchestrationWithRules;<Request ID="2,410" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.member" /></Request>
+OrchestrationWithRules;<Request ID="2,411" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+OrchestrationWithRules;<Request ID="2,412" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.member" /></Request>
+OrchestrationWithRules;<Request ID="2,413" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+OrchestrationWithRules;<Request ID="2,414" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.member" /></Request>
+OrchestrationWithRules;<Request ID="2,415" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort" Type="APPEND_STRING_3" /></Request>
+OrchestrationWithRules;<Request ID="2,416" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_2" /></Request>
+OrchestrationWithRules;<Request ID="2,417" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm" Type="OrchestrationForm2OrchestrationForm" /></Request>
+OrchestrationWithRules;<Request ID="2,418" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1" Type="WSTRING2WSTRING" /></Request>
+OrchestrationWithRules;<Request ID="2,419" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI" Type="APPEND_STRING_2" /></Request>
+OrchestrationWithRules;<Request ID="2,420" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud" Type="FieldsToArrowheadCloud" /></Request>
+OrchestrationWithRules;<Request ID="2,421" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+OrchestrationWithRules;<Request ID="2,422" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationHTTP" Type="RequestOrchestrationHTTP" /></Request>
+OrchestrationWithRules;<Request ID="2,423" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm" Type="FieldsToServiceRequestForm" /></Request>
+OrchestrationWithRules;<Request ID="2,424" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+OrchestrationWithRules;<Request ID="2,425" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm" Type="RequestOrchestrationForm" /></Request>
+OrchestrationWithRules;<Request ID="2,426" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
+OrchestrationWithRules;<Request ID="2,427" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
+OrchestrationWithRules;<Request ID="2,428" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
+OrchestrationWithRules;<Request ID="2,429" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
+OrchestrationWithRules;<Request ID="2,430" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
+OrchestrationWithRules;<Request ID="2,431" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.systemName" /></Request>
+OrchestrationWithRules;<Request ID="2,432" Action="WRITE"><Connection Source="localhost" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.address" /></Request>
+OrchestrationWithRules;<Request ID="2,433" Action="WRITE"><Connection Source="8090" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.port" /></Request>
+OrchestrationWithRules;<Request ID="2,434" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.serviceDefinition" /></Request>
+OrchestrationWithRules;<Request ID="2,435" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.interfaces" /></Request>
+OrchestrationWithRules;<Request ID="2,436" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.serviceMetadata" /></Request>
+OrchestrationWithRules;<Request ID="2,437" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8440/orchestrator" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.endpoint" /></Request>
+OrchestrationWithRules;<Request ID="2,438" Action="WRITE"><Connection Source="0" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.INDEX" /></Request>
+OrchestrationWithRules;<Request ID="2,439" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,440" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,441" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
+OrchestrationWithRules;<Request ID="2,442" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
+OrchestrationWithRules;<Request ID="2,443" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
+OrchestrationWithRules;<Request ID="2,444" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,445" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
+OrchestrationWithRules;<Request ID="2,446" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
+OrchestrationWithRules;<Request ID="2,447" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
+OrchestrationWithRules;<Request ID="2,448" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceHTTP_1.registerService" /></Request>
+OrchestrationWithRules;<Request ID="2,449" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="CLIENT_1_2.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,450" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,451" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_SR.S" /></Request>
+OrchestrationWithRules;<Request ID="2,452" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,453" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_REND.EI1" /></Request>
+OrchestrationWithRules;<Request ID="2,454" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="E_SR_1.S" /></Request>
+OrchestrationWithRules;<Request ID="2,455" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,456" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="E_SR.S" /></Request>
+OrchestrationWithRules;<Request ID="2,457" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,458" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_SR.R" /></Request>
+OrchestrationWithRules;<Request ID="2,459" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,460" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_REND.EI1" /></Request>
+OrchestrationWithRules;<Request ID="2,461" Action="CREATE"><Connection Source="Sequencer_1.F_GT.CNF" Destination="Sequencer_1.E_SWITCH.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,462" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO0" Destination="Sequencer_1.E_DEMUX.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,463" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.CNF" Destination="Sequencer_1.E_DEMUX_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,464" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO1" Destination="Sequencer_1.F_GT_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,465" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.CNF" Destination="Sequencer_1.E_SWITCH_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,466" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO0" Destination="Sequencer_1.F_SUB.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,467" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,468" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="E_SR_1.R" /></Request>
+OrchestrationWithRules;<Request ID="2,469" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,470" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="E_SR.R" /></Request>
+OrchestrationWithRules;<Request ID="2,471" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,472" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,473" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,474" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,475" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,476" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,477" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,478" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,479" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,480" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,481" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,482" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.CNF" Destination="Sequencer_1.E_SWITCH_1_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,483" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,484" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="PUBL_0.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,485" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO1" Destination="Sequencer_1.F_GT_1_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,486" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO0" Destination="Sequencer_1.F_SUB_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,487" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO1" Destination="Sequencer_1.F_SUB_1_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,488" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.R" /></Request>
+OrchestrationWithRules;<Request ID="2,489" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,490" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,491" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,492" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,493" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,494" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,495" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.E_DEMUX.K" /></Request>
+OrchestrationWithRules;<Request ID="2,496" Action="CREATE"><Connection Source="Sequencer_1.F_GT.OUT" Destination="Sequencer_1.E_SWITCH.G" /></Request>
+OrchestrationWithRules;<Request ID="2,497" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.OUT" Destination="Sequencer_1.E_DEMUX_1.K" /></Request>
+OrchestrationWithRules;<Request ID="2,498" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,499" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,500" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,501" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,502" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.OUT" Destination="Sequencer_1.E_SWITCH_1.G" /></Request>
+OrchestrationWithRules;<Request ID="2,503" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1.K" /></Request>
+OrchestrationWithRules;<Request ID="2,504" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.OUT" Destination="Sequencer_1.E_SWITCH_1_1.G" /></Request>
+OrchestrationWithRules;<Request ID="2,505" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1_1.K" /></Request>
+OrchestrationWithRules;<Request ID="2,506" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,507" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,508" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,509" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,510" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,511" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,512" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.CNF" Destination="E_SWITCH.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,513" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,514" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,515" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,516" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,517" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,518" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_3" /></Request>
+OrchestrationWithRules;<Request ID="2,519" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_1" /></Request>
+OrchestrationWithRules;<Request ID="2,520" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,521" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,522" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,523" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,524" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.in_struct" /></Request>
+OrchestrationWithRules;<Request ID="2,525" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.in_struct" /></Request>
+OrchestrationWithRules;<Request ID="2,526" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.in_struct" /></Request>
+OrchestrationWithRules;<Request ID="2,527" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,528" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_1" /></Request>
+OrchestrationWithRules;<Request ID="2,529" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,530" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_2" /></Request>
+OrchestrationWithRules;<Request ID="2,531" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,532" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.requestOrchestator" /></Request>
+OrchestrationWithRules;<Request ID="2,533" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.responseReceived" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,534" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.arrowheadService" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requestedService" /></Request>
+OrchestrationWithRules;<Request ID="2,535" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.serviceRequestForm" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.serviceRequestForm" /></Request>
+OrchestrationWithRules;<Request ID="2,536" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.orchestrationResponse" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.IN_ARRAY" /></Request>
+OrchestrationWithRules;<Request ID="2,537" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.requestOrchestration" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationHTTP.requestOrchestration" /></Request>
+OrchestrationWithRules;<Request ID="2,538" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,539" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,540" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.arrowheadSystem" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requesterSystem" /></Request>
+OrchestrationWithRules;<Request ID="2,541" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.arrowheadCloud" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requesterCloud" /></Request>
+OrchestrationWithRules;<Request ID="2,542" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,543" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,544" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,545" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoServiceAvailable.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,546" Action="CREATE"><Connection Source="E_SR.EO" Destination="SERVER_1.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,547" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,548" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,549" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="ServiceAvailable.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,550" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,551" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,552" Action="CREATE"><Connection Source="E_SR_1.EO" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,553" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,554" Action="CREATE"><Connection Source="SERVER_1.INITO" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,555" Action="CREATE"><Connection Source="CLIENT_1_2.INITO" Destination="CLIENT_1_2.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,556" Action="CREATE"><Connection Source="CLIENT_1_2.CNF" Destination="CLIENT_1_2_1.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,557" Action="CREATE"><Connection Source="CLIENT_1_2_1.INITO" Destination="CLIENT_1_2_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,558" Action="CREATE"><Connection Source="SERVER_1.IND" Destination="STRING2STRING.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,559" Action="CREATE"><Connection Source="STRING2STRING.CNF" Destination="SERVER_1.RSP" /></Request>
+OrchestrationWithRules;<Request ID="2,560" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,561" Action="CREATE"><Connection Source="Service1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,562" Action="CREATE"><Connection Source="CLIENT_1_2_1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,563" Action="CREATE"><Connection Source="ServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,564" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,565" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoServiceAvailable.check" /></Request>
+OrchestrationWithRules;<Request ID="2,566" Action="CREATE"><Connection Source="E_SR.Q" Destination="SERVER_1.QI" /></Request>
+OrchestrationWithRules;<Request ID="2,567" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
+OrchestrationWithRules;<Request ID="2,568" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
+OrchestrationWithRules;<Request ID="2,569" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="ServiceAvailable.check" /></Request>
+OrchestrationWithRules;<Request ID="2,570" Action="CREATE"><Connection Source="E_SR_1.Q" Destination="E_SWITCH.G" /></Request>
+OrchestrationWithRules;<Request ID="2,571" Action="CREATE"><Connection Source="SERVER_1.RD_1" Destination="STRING2STRING.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,572" Action="CREATE"><Connection Source="STRING2STRING.OUT" Destination="SERVER_1.SD_1" /></Request>
+OrchestrationWithRules;<Request ID="2,573" Action="START"/>
+;<Request ID="2,574" Action="CREATE"><FB Name="PublishSubscribe" Type="EMB_RES" /></Request>
+PublishSubscribe;<Request ID="2,575" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+PublishSubscribe;<Request ID="2,576" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+PublishSubscribe;<Request ID="2,577" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+PublishSubscribe;<Request ID="2,578" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
+PublishSubscribe;<Request ID="2,579" Action="CREATE"><FB Name="FieldsToPublishEvent" Type="FieldsToPublishEvent" /></Request>
+PublishSubscribe;<Request ID="2,580" Action="CREATE"><FB Name="ArrowheadPublish" Type="ArrowheadPublish" /></Request>
+PublishSubscribe;<Request ID="2,581" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8454/eventhandler" Destination="ArrowheadPublish.endpoint" /></Request>
+PublishSubscribe;<Request ID="2,582" Action="CREATE"><FB Name="FieldsToArrowheadEvent" Type="FieldsToArrowheadEvent" /></Request>
+PublishSubscribe;<Request ID="2,583" Action="WRITE"><Connection Source="WSTRING#eventType4diac" Destination="FieldsToArrowheadEvent.type" /></Request>
+PublishSubscribe;<Request ID="2,584" Action="WRITE"><Connection Source="WSTRING#This is the payload of the event" Destination="FieldsToArrowheadEvent.payload" /></Request>
+PublishSubscribe;<Request ID="2,585" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadEvent.eventMetadata" /></Request>
+PublishSubscribe;<Request ID="2,586" Action="CREATE"><FB Name="SubscribeEvent" Type="SubscribeEvent" /></Request>
+PublishSubscribe;<Request ID="2,587" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8454/eventhandler" Destination="SubscribeEvent.endpoint" /></Request>
+PublishSubscribe;<Request ID="2,588" Action="CREATE"><FB Name="FieldsToEventFilter" Type="FieldsToEventFilter" /></Request>
+PublishSubscribe;<Request ID="2,589" Action="WRITE"><Connection Source="WSTRING#eventType4diac" Destination="FieldsToEventFilter.eventType" /></Request>
+PublishSubscribe;<Request ID="2,590" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToEventFilter.filterMetadata" /></Request>
+PublishSubscribe;<Request ID="2,591" Action="WRITE"><Connection Source="WSTRING#/subscribePath" Destination="FieldsToEventFilter.notifyUri" /></Request>
+PublishSubscribe;<Request ID="2,592" Action="WRITE"><Connection Source="BOOL#TRUE" Destination="FieldsToEventFilter.matchMetadata" /></Request>
+PublishSubscribe;<Request ID="2,593" Action="CREATE"><FB Name="E_CTU" Type="E_CTU" /></Request>
+PublishSubscribe;<Request ID="2,594" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+PublishSubscribe;<Request ID="2,595" Action="WRITE"><Connection Source="UINT#0" Destination="F_EQ.IN2" /></Request>
+PublishSubscribe;<Request ID="2,596" Action="CREATE"><FB Name="E_DELAY" Type="E_DELAY" /></Request>
+PublishSubscribe;<Request ID="2,597" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY.DT" /></Request>
+PublishSubscribe;<Request ID="2,598" Action="CREATE"><FB Name="NoMessage" Type="TEST_CONDITION" /></Request>
+PublishSubscribe;<Request ID="2,599" Action="CREATE"><FB Name="E_DELAY_1" Type="E_DELAY" /></Request>
+PublishSubscribe;<Request ID="2,600" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY_1.DT" /></Request>
+PublishSubscribe;<Request ID="2,601" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
+PublishSubscribe;<Request ID="2,602" Action="WRITE"><Connection Source="UINT#1" Destination="F_EQ_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,603" Action="CREATE"><FB Name="OneMessage" Type="TEST_CONDITION" /></Request>
+PublishSubscribe;<Request ID="2,604" Action="CREATE"><FB Name="E_DELAY_1_1" Type="E_DELAY" /></Request>
+PublishSubscribe;<Request ID="2,605" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY_1_1.DT" /></Request>
+PublishSubscribe;<Request ID="2,606" Action="CREATE"><FB Name="TwoMessages" Type="TEST_CONDITION" /></Request>
+PublishSubscribe;<Request ID="2,607" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
+PublishSubscribe;<Request ID="2,608" Action="WRITE"><Connection Source="UINT#2" Destination="F_EQ_1_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,609" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,610" Action="CREATE"><FB Name="Sequencer_1_1.E_CTU" Type="E_CTU" /></Request>
+PublishSubscribe;<Request ID="2,611" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX_1" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,612" Action="CREATE"><FB Name="Sequencer_1_1.E_SWITCH" Type="E_SWITCH" /></Request>
+PublishSubscribe;<Request ID="2,613" Action="CREATE"><FB Name="Sequencer_1_1.F_GT" Type="F_GT" /></Request>
+PublishSubscribe;<Request ID="2,614" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer_1_1.F_GT.IN2" /></Request>
+PublishSubscribe;<Request ID="2,615" Action="CREATE"><FB Name="Sequencer_1_1.F_SUB" Type="F_SUB" /></Request>
+PublishSubscribe;<Request ID="2,616" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer_1_1.F_SUB.IN2" /></Request>
+PublishSubscribe;<Request ID="2,617" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,618" Action="CREATE"><FB Name="Sequencer_1_1.F_GT_1" Type="F_GT" /></Request>
+PublishSubscribe;<Request ID="2,619" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer_1_1.F_GT_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,620" Action="CREATE"><FB Name="Sequencer_1_1.F_SUB_1" Type="F_SUB" /></Request>
+PublishSubscribe;<Request ID="2,621" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer_1_1.F_SUB_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,622" Action="CREATE"><FB Name="Sequencer_1_1.E_SWITCH_1" Type="E_SWITCH" /></Request>
+PublishSubscribe;<Request ID="2,623" Action="CREATE"><FB Name="Sequencer_1_1.F_GT_1_1" Type="F_GT" /></Request>
+PublishSubscribe;<Request ID="2,624" Action="WRITE"><Connection Source="INT#11" Destination="Sequencer_1_1.F_GT_1_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,625" Action="CREATE"><FB Name="Sequencer_1_1.E_SWITCH_1_1" Type="E_SWITCH" /></Request>
+PublishSubscribe;<Request ID="2,626" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX_1_1_1" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,627" Action="CREATE"><FB Name="Sequencer_1_1.F_SUB_1_1" Type="F_SUB" /></Request>
+PublishSubscribe;<Request ID="2,628" Action="WRITE"><Connection Source="INT#12" Destination="Sequencer_1_1.F_SUB_1_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,629" Action="CREATE"><FB Name="SERVER_1_0" Type="SERVER_1" /></Request>
+PublishSubscribe;<Request ID="2,630" Action="WRITE"><Connection Source="1" Destination="SERVER_1_0.QI" /></Request>
+PublishSubscribe;<Request ID="2,631" Action="WRITE"><Connection Source="http[/subscribePath]" Destination="SERVER_1_0.ID" /></Request>
+PublishSubscribe;<Request ID="2,632" Action="CREATE"><FB Name="PUBL_0_1" Type="PUBL_0" /></Request>
+PublishSubscribe;<Request ID="2,633" Action="WRITE"><Connection Source="WSTRING#allLoaded" Destination="PUBL_0_1.ID" /></Request>
+PublishSubscribe;<Request ID="2,634" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+PublishSubscribe;<Request ID="2,635" Action="WRITE"><Connection Source="test8Ended" Destination="SUBL_0.ID" /></Request>
+PublishSubscribe;<Request ID="2,636" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+PublishSubscribe;<Request ID="2,637" Action="WRITE"><Connection Source="WSTRIGN#allEnded" Destination="PUBL_0.ID" /></Request>
+PublishSubscribe;<Request ID="2,638" Action="CREATE"><FB Name="PublishEventHTTP" Type="PublishEventHTTP" /></Request>
+PublishSubscribe;<Request ID="2,639" Action="CREATE"><FB Name="SubscribeEventHTTP" Type="SubscribeEventHTTP" /></Request>
+PublishSubscribe;<Request ID="2,640" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO0" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+PublishSubscribe;<Request ID="2,641" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO1" Destination="FieldsToPublishEvent.REQ" /></Request>
+PublishSubscribe;<Request ID="2,642" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO2" Destination="E_DELAY.START" /></Request>
+PublishSubscribe;<Request ID="2,643" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO3" Destination="SubscribeEvent.Subscribe" /></Request>
+PublishSubscribe;<Request ID="2,644" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO0" Destination="E_DELAY.START" /></Request>
+PublishSubscribe;<Request ID="2,645" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO1" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,646" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO2" Destination="E_DELAY_1.START" /></Request>
+PublishSubscribe;<Request ID="2,647" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO3" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,648" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT.CNF" Destination="Sequencer_1_1.E_SWITCH.EI" /></Request>
+PublishSubscribe;<Request ID="2,649" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH.EO0" Destination="Sequencer_1_1.E_DEMUX.EI" /></Request>
+PublishSubscribe;<Request ID="2,650" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB.CNF" Destination="Sequencer_1_1.E_DEMUX_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,651" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH.EO1" Destination="Sequencer_1_1.F_GT_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,652" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1.CNF" Destination="Sequencer_1_1.E_SWITCH_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,653" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1.EO0" Destination="Sequencer_1_1.F_SUB.REQ" /></Request>
+PublishSubscribe;<Request ID="2,654" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1.CNF" Destination="Sequencer_1_1.E_DEMUX_1_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,655" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO0" Destination="E_DELAY_1_1.START" /></Request>
+PublishSubscribe;<Request ID="2,656" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO1" Destination="SubscribeEvent.Unsubscribe" /></Request>
+PublishSubscribe;<Request ID="2,657" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO2" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,658" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,659" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,660" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,661" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,662" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,663" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,664" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,665" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,666" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,667" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,668" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,669" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1_1.CNF" Destination="Sequencer_1_1.E_SWITCH_1_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,670" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1_1.CNF" Destination="Sequencer_1_1.E_DEMUX_1_1_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,671" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1.EO1" Destination="Sequencer_1_1.F_GT_1_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,672" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1_1.EO0" Destination="Sequencer_1_1.F_SUB_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,673" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1_1.EO1" Destination="Sequencer_1_1.F_SUB_1_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,674" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1_1.E_CTU.R" /></Request>
+PublishSubscribe;<Request ID="2,675" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,676" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,677" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,678" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,679" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO3" Destination="E_DELAY_1_1.START" /></Request>
+PublishSubscribe;<Request ID="2,680" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,681" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO0" Destination="PUBL_0.REQ" /></Request>
+PublishSubscribe;<Request ID="2,682" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.E_DEMUX.K" /></Request>
+PublishSubscribe;<Request ID="2,683" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT.OUT" Destination="Sequencer_1_1.E_SWITCH.G" /></Request>
+PublishSubscribe;<Request ID="2,684" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB.OUT" Destination="Sequencer_1_1.E_DEMUX_1.K" /></Request>
+PublishSubscribe;<Request ID="2,685" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_GT.IN1" /></Request>
+PublishSubscribe;<Request ID="2,686" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_SUB.IN1" /></Request>
+PublishSubscribe;<Request ID="2,687" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_SUB_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,688" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_GT_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,689" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1.OUT" Destination="Sequencer_1_1.E_SWITCH_1.G" /></Request>
+PublishSubscribe;<Request ID="2,690" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1.OUT" Destination="Sequencer_1_1.E_DEMUX_1_1.K" /></Request>
+PublishSubscribe;<Request ID="2,691" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1_1.OUT" Destination="Sequencer_1_1.E_SWITCH_1_1.G" /></Request>
+PublishSubscribe;<Request ID="2,692" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1_1.OUT" Destination="Sequencer_1_1.E_DEMUX_1_1_1.K" /></Request>
+PublishSubscribe;<Request ID="2,693" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_SUB_1_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,694" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_GT_1_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,695" Action="CREATE"><Connection Source="FieldsToPublishEvent.CNF" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,696" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="FieldsToArrowheadEvent.REQ" /></Request>
+PublishSubscribe;<Request ID="2,697" Action="CREATE"><Connection Source="E_DELAY.EO" Destination="F_EQ.REQ" /></Request>
+PublishSubscribe;<Request ID="2,698" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoMessage.REQ" /></Request>
+PublishSubscribe;<Request ID="2,699" Action="CREATE"><Connection Source="E_DELAY_1.EO" Destination="F_EQ_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,700" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="OneMessage.REQ" /></Request>
+PublishSubscribe;<Request ID="2,701" Action="CREATE"><Connection Source="E_DELAY_1_1.EO" Destination="F_EQ_1_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,702" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="TwoMessages.REQ" /></Request>
+PublishSubscribe;<Request ID="2,703" Action="CREATE"><Connection Source="TwoMessages.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,704" Action="CREATE"><Connection Source="OneMessage.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,705" Action="CREATE"><Connection Source="NoMessage.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,706" Action="CREATE"><Connection Source="FieldsToEventFilter.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,707" Action="CREATE"><Connection Source="ArrowheadPublish.published" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,708" Action="CREATE"><Connection Source="SubscribeEvent.Subscribed" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,709" Action="CREATE"><Connection Source="FieldsToArrowheadEvent.CNF" Destination="SERVER_1_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,710" Action="CREATE"><Connection Source="E_CTU.CUO" Destination="SERVER_1_0.RSP" /></Request>
+PublishSubscribe;<Request ID="2,711" Action="CREATE"><Connection Source="SERVER_1_0.INITO" Destination="FieldsToEventFilter.REQ" /></Request>
+PublishSubscribe;<Request ID="2,712" Action="CREATE"><Connection Source="SERVER_1_0.IND" Destination="E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,713" Action="CREATE"><Connection Source="SubscribeEvent.Unsubscribed" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,714" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0_1.INIT" /></Request>
+PublishSubscribe;<Request ID="2,715" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,716" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,717" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,718" Action="CREATE"><Connection Source="PUBL_0_1.INITO" Destination="PUBL_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,719" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,720" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToPublishEvent.source" /></Request>
+PublishSubscribe;<Request ID="2,721" Action="CREATE"><Connection Source="FieldsToPublishEvent.publishEvent" Destination="ArrowheadPublish.publishEvent" /></Request>
+PublishSubscribe;<Request ID="2,722" Action="CREATE"><Connection Source="FieldsToArrowheadEvent.arrowheadEvent" Destination="FieldsToPublishEvent.event" /></Request>
+PublishSubscribe;<Request ID="2,723" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToEventFilter.consumer" /></Request>
+PublishSubscribe;<Request ID="2,724" Action="CREATE"><Connection Source="FieldsToEventFilter.eventFilter" Destination="SubscribeEvent.eventFilter" /></Request>
+PublishSubscribe;<Request ID="2,725" Action="CREATE"><Connection Source="E_CTU.CV" Destination="F_EQ.IN1" /></Request>
+PublishSubscribe;<Request ID="2,726" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoMessage.check" /></Request>
+PublishSubscribe;<Request ID="2,727" Action="CREATE"><Connection Source="E_CTU.CV" Destination="F_EQ_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,728" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="OneMessage.check" /></Request>
+PublishSubscribe;<Request ID="2,729" Action="CREATE"><Connection Source="F_EQ_1_1.OUT" Destination="TwoMessages.check" /></Request>
+PublishSubscribe;<Request ID="2,730" Action="CREATE"><Connection Source="E_CTU.CV" Destination="F_EQ_1_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,731" Action="CREATE"><Connection Source="ArrowheadPublish.ArrowheadPublishAdp" Destination="PublishEventHTTP.publishEvent" /></Request>
+PublishSubscribe;<Request ID="2,732" Action="CREATE"><Connection Source="SubscribeEvent.SubscribeEventAdp" Destination="SubscribeEventHTTP.SubscribeEventAdp" /></Request>
+PublishSubscribe;<Request ID="2,733" Action="START"/>
diff --git a/src/modules/arrowhead/SystemTests/Arrowhead_HTTPTest.fboot b/systemtests/src/modules/arrowhead/Arrowhead_OpcUaTest.fboot
similarity index 82%
copy from src/modules/arrowhead/SystemTests/Arrowhead_HTTPTest.fboot
copy to systemtests/src/modules/arrowhead/Arrowhead_OpcUaTest.fboot
index 2a6eeb0..1e72580 100644
--- a/src/modules/arrowhead/SystemTests/Arrowhead_HTTPTest.fboot
+++ b/systemtests/src/modules/arrowhead/Arrowhead_OpcUaTest.fboot
@@ -1,60 +1,60 @@
 ;<Request ID="1" Action="CREATE"><FB Name="cleanAll" Type="EMB_RES" /></Request>
-cleanAll;<Request ID="2" Action="CREATE"><FB Name="RegisterService1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-cleanAll;<Request ID="3" Action="CREATE"><FB Name="RegisterService1.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-cleanAll;<Request ID="4" Action="CREATE"><FB Name="RegisterService1.RegisterService" Type="RegisterService" /></Request>
-cleanAll;<Request ID="5" Action="CREATE"><FB Name="RegisterService1.E_SR" Type="E_SR" /></Request>
-cleanAll;<Request ID="6" Action="CREATE"><FB Name="RegisterService1.E_SWITCH" Type="E_SWITCH" /></Request>
-cleanAll;<Request ID="7" Action="CREATE"><FB Name="RegisterService1.E_REND" Type="E_REND" /></Request>
-cleanAll;<Request ID="8" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-cleanAll;<Request ID="9" Action="CREATE"><FB Name="RegisterService2.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-cleanAll;<Request ID="10" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
-cleanAll;<Request ID="11" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
-cleanAll;<Request ID="12" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
-cleanAll;<Request ID="13" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
-cleanAll;<Request ID="14" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-cleanAll;<Request ID="15" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
-cleanAll;<Request ID="16" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-cleanAll;<Request ID="17" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
-cleanAll;<Request ID="18" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-cleanAll;<Request ID="19" Action="WRITE"><Connection Source="WSTRIGN#allCleaned" Destination="PUBL_0.ID" /></Request>
-cleanAll;<Request ID="20" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-cleanAll;<Request ID="21" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
-cleanAll;<Request ID="22" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
-cleanAll;<Request ID="23" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
-cleanAll;<Request ID="24" Action="CREATE"><FB Name="FieldsToArrowheadService_1" Type="FieldsToArrowheadService" /></Request>
-cleanAll;<Request ID="25" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="FieldsToArrowheadService_1.serviceDefinition" /></Request>
-cleanAll;<Request ID="26" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1.interfaces" /></Request>
-cleanAll;<Request ID="27" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1.serviceMetadata" /></Request>
-cleanAll;<Request ID="28" Action="CREATE"><FB Name="RegisterService2_1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-cleanAll;<Request ID="29" Action="CREATE"><FB Name="RegisterService2_1.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-cleanAll;<Request ID="30" Action="CREATE"><FB Name="RegisterService2_1.RegisterService" Type="RegisterService" /></Request>
-cleanAll;<Request ID="31" Action="CREATE"><FB Name="RegisterService2_1.E_SR" Type="E_SR" /></Request>
-cleanAll;<Request ID="32" Action="CREATE"><FB Name="RegisterService2_1.E_SWITCH" Type="E_SWITCH" /></Request>
-cleanAll;<Request ID="33" Action="CREATE"><FB Name="RegisterService2_1.E_REND" Type="E_REND" /></Request>
-cleanAll;<Request ID="34" Action="CREATE"><FB Name="FieldsToArrowheadSystem_1" Type="FieldsToArrowheadSystem" /></Request>
-cleanAll;<Request ID="35" Action="WRITE"><Connection Source="WSTRING#systemTestName2" Destination="FieldsToArrowheadSystem_1.systemName" /></Request>
-cleanAll;<Request ID="36" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem_1.address" /></Request>
-cleanAll;<Request ID="37" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem_1.port" /></Request>
-cleanAll;<Request ID="38" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
-cleanAll;<Request ID="39" Action="WRITE"><Connection Source="WSTRIGN#allEnded" Destination="SUBL_0.ID" /></Request>
-cleanAll;<Request ID="40" Action="CREATE"><FB Name="STEST_END" Type="STEST_END" /></Request>
-cleanAll;<Request ID="41" Action="CREATE"><FB Name="SUBL_0_1" Type="SUBL_0" /></Request>
-cleanAll;<Request ID="42" Action="WRITE"><Connection Source="WSTRING#allLoaded" Destination="SUBL_0_1.ID" /></Request>
+cleanAll;<Request ID="2" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+cleanAll;<Request ID="3" Action="WRITE"><Connection Source="WSTRIGN#allCleaned" Destination="PUBL_0.ID" /></Request>
+cleanAll;<Request ID="4" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+cleanAll;<Request ID="5" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+cleanAll;<Request ID="6" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+cleanAll;<Request ID="7" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
+cleanAll;<Request ID="8" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+cleanAll;<Request ID="9" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
+cleanAll;<Request ID="10" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
+cleanAll;<Request ID="11" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
+cleanAll;<Request ID="12" Action="CREATE"><FB Name="FieldsToArrowheadService_1" Type="FieldsToArrowheadService" /></Request>
+cleanAll;<Request ID="13" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="FieldsToArrowheadService_1.serviceDefinition" /></Request>
+cleanAll;<Request ID="14" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1.interfaces" /></Request>
+cleanAll;<Request ID="15" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1.serviceMetadata" /></Request>
+cleanAll;<Request ID="16" Action="CREATE"><FB Name="FieldsToArrowheadSystem_1" Type="FieldsToArrowheadSystem" /></Request>
+cleanAll;<Request ID="17" Action="WRITE"><Connection Source="WSTRING#systemTestName2" Destination="FieldsToArrowheadSystem_1.systemName" /></Request>
+cleanAll;<Request ID="18" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem_1.address" /></Request>
+cleanAll;<Request ID="19" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem_1.port" /></Request>
+cleanAll;<Request ID="20" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+cleanAll;<Request ID="21" Action="WRITE"><Connection Source="WSTRIGN#allEnded" Destination="SUBL_0.ID" /></Request>
+cleanAll;<Request ID="22" Action="CREATE"><FB Name="STEST_END" Type="STEST_END" /></Request>
+cleanAll;<Request ID="23" Action="CREATE"><FB Name="SUBL_0_1" Type="SUBL_0" /></Request>
+cleanAll;<Request ID="24" Action="WRITE"><Connection Source="WSTRING#allLoaded" Destination="SUBL_0_1.ID" /></Request>
+cleanAll;<Request ID="25" Action="CREATE"><FB Name="RegisterService1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+cleanAll;<Request ID="26" Action="CREATE"><FB Name="RegisterService1.RegisterService" Type="RegisterService" /></Request>
+cleanAll;<Request ID="27" Action="CREATE"><FB Name="RegisterService1.E_SR" Type="E_SR" /></Request>
+cleanAll;<Request ID="28" Action="CREATE"><FB Name="RegisterService1.E_SWITCH" Type="E_SWITCH" /></Request>
+cleanAll;<Request ID="29" Action="CREATE"><FB Name="RegisterService1.E_REND" Type="E_REND" /></Request>
+cleanAll;<Request ID="30" Action="CREATE"><FB Name="RegisterService1.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+cleanAll;<Request ID="31" Action="CREATE"><FB Name="RegisterService2_1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+cleanAll;<Request ID="32" Action="CREATE"><FB Name="RegisterService2_1.RegisterService" Type="RegisterService" /></Request>
+cleanAll;<Request ID="33" Action="CREATE"><FB Name="RegisterService2_1.E_SR" Type="E_SR" /></Request>
+cleanAll;<Request ID="34" Action="CREATE"><FB Name="RegisterService2_1.E_SWITCH" Type="E_SWITCH" /></Request>
+cleanAll;<Request ID="35" Action="CREATE"><FB Name="RegisterService2_1.E_REND" Type="E_REND" /></Request>
+cleanAll;<Request ID="36" Action="CREATE"><FB Name="RegisterService2_1.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+cleanAll;<Request ID="37" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+cleanAll;<Request ID="38" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
+cleanAll;<Request ID="39" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
+cleanAll;<Request ID="40" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
+cleanAll;<Request ID="41" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
+cleanAll;<Request ID="42" Action="CREATE"><FB Name="RegisterService2.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
 cleanAll;<Request ID="43" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterService1.FieldsToServiceRegistryEntry.serviceURI" /></Request>
 cleanAll;<Request ID="44" Action="WRITE"><Connection Source="1" Destination="RegisterService1.FieldsToServiceRegistryEntry.version" /></Request>
 cleanAll;<Request ID="45" Action="WRITE"><Connection Source="false" Destination="RegisterService1.FieldsToServiceRegistryEntry.udp" /></Request>
-cleanAll;<Request ID="46" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService1.FieldsToServiceRegistryEntry.metadata" /></Request>
-cleanAll;<Request ID="47" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService1.RegisterService.endpoint" /></Request>
-cleanAll;<Request ID="48" Action="WRITE"><Connection Source="/serviceTest/start2" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
-cleanAll;<Request ID="49" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
-cleanAll;<Request ID="50" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
-cleanAll;<Request ID="51" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
-cleanAll;<Request ID="52" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
-cleanAll;<Request ID="53" Action="WRITE"><Connection Source="/serviceTest/start2" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.serviceURI" /></Request>
-cleanAll;<Request ID="54" Action="WRITE"><Connection Source="1" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.version" /></Request>
-cleanAll;<Request ID="55" Action="WRITE"><Connection Source="false" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.udp" /></Request>
-cleanAll;<Request ID="56" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.metadata" /></Request>
-cleanAll;<Request ID="57" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2_1.RegisterService.endpoint" /></Request>
+cleanAll;<Request ID="46" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService1.FieldsToServiceRegistryEntry.metadata" /></Request>
+cleanAll;<Request ID="47" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService1.RegisterService.endpoint" /></Request>
+cleanAll;<Request ID="48" Action="WRITE"><Connection Source="/serviceTest/start2" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.serviceURI" /></Request>
+cleanAll;<Request ID="49" Action="WRITE"><Connection Source="1" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.version" /></Request>
+cleanAll;<Request ID="50" Action="WRITE"><Connection Source="false" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.udp" /></Request>
+cleanAll;<Request ID="51" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.metadata" /></Request>
+cleanAll;<Request ID="52" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService2_1.RegisterService.endpoint" /></Request>
+cleanAll;<Request ID="53" Action="WRITE"><Connection Source="/serviceTest/start2" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
+cleanAll;<Request ID="54" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
+cleanAll;<Request ID="55" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
+cleanAll;<Request ID="56" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
+cleanAll;<Request ID="57" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
 cleanAll;<Request ID="58" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneUnregister" Destination="RegisterService2.E_SR.R" /></Request>
 cleanAll;<Request ID="59" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneUnregister" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
 cleanAll;<Request ID="60" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneUnregister" Destination="RegisterService2.E_REND.EI1" /></Request>
@@ -65,124 +65,124 @@
 cleanAll;<Request ID="65" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_REND.R" /></Request>
 cleanAll;<Request ID="66" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService1.RegisterService.serviceRegistryEntry" /></Request>
 cleanAll;<Request ID="67" Action="CREATE"><Connection Source="RegisterService1.E_SR.Q" Destination="RegisterService1.E_SWITCH.G" /></Request>
-cleanAll;<Request ID="68" Action="CREATE"><Connection Source="RegisterService1.RegisterService.registerService" Destination="RegisterService1.RegisterServiceHTTP_1.registerService" /></Request>
-cleanAll;<Request ID="69" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="RegisterService2_1.E_SR.R" /></Request>
-cleanAll;<Request ID="70" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.REQ" /></Request>
-cleanAll;<Request ID="71" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="RegisterService2_1.E_REND.EI1" /></Request>
-cleanAll;<Request ID="72" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
-cleanAll;<Request ID="73" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
-cleanAll;<Request ID="74" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
-cleanAll;<Request ID="75" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
-cleanAll;<Request ID="76" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
-cleanAll;<Request ID="77" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
-cleanAll;<Request ID="78" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
-cleanAll;<Request ID="79" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceHTTP_1.registerService" /></Request>
-cleanAll;<Request ID="80" Action="CREATE"><Connection Source="RegisterService2_1.RegisterService.doneUnregister" Destination="PUBL_0.INIT" /></Request>
-cleanAll;<Request ID="81" Action="CREATE"><Connection Source="RegisterService2_1.E_SWITCH.EO1" Destination="RegisterService2_1.RegisterService.register" /></Request>
-cleanAll;<Request ID="82" Action="CREATE"><Connection Source="RegisterService2_1.E_SWITCH.EO0" Destination="RegisterService2_1.RegisterService.unregister" /></Request>
-cleanAll;<Request ID="83" Action="CREATE"><Connection Source="RegisterService2_1.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2_1.E_REND.EI2" /></Request>
-cleanAll;<Request ID="84" Action="CREATE"><Connection Source="RegisterService2_1.E_REND.EO" Destination="RegisterService2_1.E_SWITCH.EI" /></Request>
-cleanAll;<Request ID="85" Action="CREATE"><Connection Source="RegisterService2_1.E_REND.EO" Destination="RegisterService2_1.E_REND.R" /></Request>
-cleanAll;<Request ID="86" Action="CREATE"><Connection Source="RegisterService2_1.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2_1.RegisterService.serviceRegistryEntry" /></Request>
-cleanAll;<Request ID="87" Action="CREATE"><Connection Source="RegisterService2_1.E_SR.Q" Destination="RegisterService2_1.E_SWITCH.G" /></Request>
-cleanAll;<Request ID="88" Action="CREATE"><Connection Source="RegisterService2_1.RegisterService.registerService" Destination="RegisterService2_1.RegisterServiceHTTP_1.registerService" /></Request>
+cleanAll;<Request ID="68" Action="CREATE"><Connection Source="RegisterService1.RegisterService.registerService" Destination="RegisterService1.RegisterServiceOpcUa.registerService" /></Request>
+cleanAll;<Request ID="69" Action="CREATE"><Connection Source="RegisterService2_1.RegisterService.doneUnregister" Destination="PUBL_0.INIT" /></Request>
+cleanAll;<Request ID="70" Action="CREATE"><Connection Source="RegisterService2_1.E_SWITCH.EO1" Destination="RegisterService2_1.RegisterService.register" /></Request>
+cleanAll;<Request ID="71" Action="CREATE"><Connection Source="RegisterService2_1.E_SWITCH.EO0" Destination="RegisterService2_1.RegisterService.unregister" /></Request>
+cleanAll;<Request ID="72" Action="CREATE"><Connection Source="RegisterService2_1.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2_1.E_REND.EI2" /></Request>
+cleanAll;<Request ID="73" Action="CREATE"><Connection Source="RegisterService2_1.E_REND.EO" Destination="RegisterService2_1.E_SWITCH.EI" /></Request>
+cleanAll;<Request ID="74" Action="CREATE"><Connection Source="RegisterService2_1.E_REND.EO" Destination="RegisterService2_1.E_REND.R" /></Request>
+cleanAll;<Request ID="75" Action="CREATE"><Connection Source="RegisterService2_1.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2_1.RegisterService.serviceRegistryEntry" /></Request>
+cleanAll;<Request ID="76" Action="CREATE"><Connection Source="RegisterService2_1.E_SR.Q" Destination="RegisterService2_1.E_SWITCH.G" /></Request>
+cleanAll;<Request ID="77" Action="CREATE"><Connection Source="RegisterService2_1.RegisterService.registerService" Destination="RegisterService2_1.RegisterServiceOpcUa.registerService" /></Request>
+cleanAll;<Request ID="78" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="RegisterService2_1.E_SR.R" /></Request>
+cleanAll;<Request ID="79" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.REQ" /></Request>
+cleanAll;<Request ID="80" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="RegisterService2_1.E_REND.EI1" /></Request>
+cleanAll;<Request ID="81" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
+cleanAll;<Request ID="82" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
+cleanAll;<Request ID="83" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
+cleanAll;<Request ID="84" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
+cleanAll;<Request ID="85" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
+cleanAll;<Request ID="86" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
+cleanAll;<Request ID="87" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
+cleanAll;<Request ID="88" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceOpcUa.registerService" /></Request>
 cleanAll;<Request ID="89" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="FieldsToArrowheadService.REQ" /></Request>
 cleanAll;<Request ID="90" Action="CREATE"><Connection Source="FieldsToArrowheadService.CNF" Destination="FieldsToArrowheadService_1.REQ" /></Request>
-cleanAll;<Request ID="91" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="RegisterService1.E_SR.R" /></Request>
-cleanAll;<Request ID="92" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="RegisterService1.FieldsToServiceRegistryEntry.REQ" /></Request>
-cleanAll;<Request ID="93" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="RegisterService1.E_REND.EI1" /></Request>
-cleanAll;<Request ID="94" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.CNF" Destination="FieldsToArrowheadSystem_1.REQ" /></Request>
-cleanAll;<Request ID="95" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-cleanAll;<Request ID="96" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="SUBL_0.INIT" /></Request>
-cleanAll;<Request ID="97" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="STEST_END.REQ" /></Request>
-cleanAll;<Request ID="98" Action="CREATE"><Connection Source="SUBL_0_1.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-cleanAll;<Request ID="99" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0_1.INIT" /></Request>
-cleanAll;<Request ID="100" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0_1.INIT" /></Request>
-cleanAll;<Request ID="101" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService1.FieldsToServiceRegistryEntry.provider" /></Request>
-cleanAll;<Request ID="102" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
-cleanAll;<Request ID="103" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="RegisterService1.FieldsToServiceRegistryEntry.providedService" /></Request>
-cleanAll;<Request ID="104" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
-cleanAll;<Request ID="105" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.providedService" /></Request>
-cleanAll;<Request ID="106" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.arrowheadSystem" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.provider" /></Request>
+cleanAll;<Request ID="91" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.CNF" Destination="FieldsToArrowheadSystem_1.REQ" /></Request>
+cleanAll;<Request ID="92" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="SUBL_0.INIT" /></Request>
+cleanAll;<Request ID="93" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
+cleanAll;<Request ID="94" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="STEST_END.REQ" /></Request>
+cleanAll;<Request ID="95" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0_1.INIT" /></Request>
+cleanAll;<Request ID="96" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0_1.INIT" /></Request>
+cleanAll;<Request ID="97" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="RegisterService1.E_SR.R" /></Request>
+cleanAll;<Request ID="98" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="RegisterService1.FieldsToServiceRegistryEntry.REQ" /></Request>
+cleanAll;<Request ID="99" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="RegisterService1.E_REND.EI1" /></Request>
+cleanAll;<Request ID="100" Action="CREATE"><Connection Source="SUBL_0_1.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+cleanAll;<Request ID="101" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="RegisterService1.FieldsToServiceRegistryEntry.providedService" /></Request>
+cleanAll;<Request ID="102" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService1.FieldsToServiceRegistryEntry.provider" /></Request>
+cleanAll;<Request ID="103" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.providedService" /></Request>
+cleanAll;<Request ID="104" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.arrowheadSystem" Destination="RegisterService2_1.FieldsToServiceRegistryEntry.provider" /></Request>
+cleanAll;<Request ID="105" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
+cleanAll;<Request ID="106" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
 cleanAll;<Request ID="107" Action="START"/>
 ;<Request ID="108" Action="CREATE"><FB Name="RegisterUnregister" Type="EMB_RES" /></Request>
-RegisterUnregister;<Request ID="109" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
-RegisterUnregister;<Request ID="110" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
-RegisterUnregister;<Request ID="111" Action="CREATE"><FB Name="ServiceNotRegisteredPos1" Type="TEST_CONDITION" /></Request>
-RegisterUnregister;<Request ID="112" Action="CREATE"><FB Name="FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-RegisterUnregister;<Request ID="113" Action="WRITE"><Connection Source="1" Destination="FieldsToServiceQueryForm.version" /></Request>
-RegisterUnregister;<Request ID="114" Action="CREATE"><FB Name="QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-RegisterUnregister;<Request ID="115" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-RegisterUnregister;<Request ID="116" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
-RegisterUnregister;<Request ID="117" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
-RegisterUnregister;<Request ID="118" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
-RegisterUnregister;<Request ID="119" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
-RegisterUnregister;<Request ID="120" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
-RegisterUnregister;<Request ID="121" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
-RegisterUnregister;<Request ID="122" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
-RegisterUnregister;<Request ID="123" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-RegisterUnregister;<Request ID="124" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
-RegisterUnregister;<Request ID="125" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
-RegisterUnregister;<Request ID="126" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
-RegisterUnregister;<Request ID="127" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-RegisterUnregister;<Request ID="128" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
-RegisterUnregister;<Request ID="129" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-RegisterUnregister;<Request ID="130" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-RegisterUnregister;<Request ID="131" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
-RegisterUnregister;<Request ID="132" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-RegisterUnregister;<Request ID="133" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-RegisterUnregister;<Request ID="134" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
-RegisterUnregister;<Request ID="135" Action="CREATE"><FB Name="QueryService" Type="QueryService" /></Request>
-RegisterUnregister;<Request ID="136" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryService.address" /></Request>
-RegisterUnregister;<Request ID="137" Action="CREATE"><FB Name="Registered" Type="E_SR" /></Request>
-RegisterUnregister;<Request ID="138" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
-RegisterUnregister;<Request ID="139" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
-RegisterUnregister;<Request ID="140" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_1.IN1" /></Request>
-RegisterUnregister;<Request ID="141" Action="CREATE"><FB Name="ServiceRegisteredPos0" Type="TEST_CONDITION" /></Request>
-RegisterUnregister;<Request ID="142" Action="CREATE"><FB Name="Sequencer.E_DEMUX" Type="E_DEMUX" /></Request>
-RegisterUnregister;<Request ID="143" Action="CREATE"><FB Name="Sequencer.E_CTU" Type="E_CTU" /></Request>
-RegisterUnregister;<Request ID="144" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1" Type="E_DEMUX" /></Request>
-RegisterUnregister;<Request ID="145" Action="CREATE"><FB Name="Sequencer.E_SWITCH" Type="E_SWITCH" /></Request>
-RegisterUnregister;<Request ID="146" Action="CREATE"><FB Name="Sequencer.F_GT" Type="F_GT" /></Request>
-RegisterUnregister;<Request ID="147" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer.F_GT.IN2" /></Request>
-RegisterUnregister;<Request ID="148" Action="CREATE"><FB Name="Sequencer.E_MERGE" Type="E_MERGE" /></Request>
-RegisterUnregister;<Request ID="149" Action="CREATE"><FB Name="Sequencer.F_SUB" Type="F_SUB" /></Request>
-RegisterUnregister;<Request ID="150" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer.F_SUB.IN2" /></Request>
-RegisterUnregister;<Request ID="151" Action="CREATE"><FB Name="RegisterServiceHTTP" Type="RegisterServiceHTTP" /></Request>
-RegisterUnregister;<Request ID="152" Action="CREATE"><FB Name="RegisterService" Type="RegisterService" /></Request>
-RegisterUnregister;<Request ID="153" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService.endpoint" /></Request>
+RegisterUnregister;<Request ID="109" Action="CREATE"><FB Name="QueryService" Type="QueryService" /></Request>
+RegisterUnregister;<Request ID="110" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryService.address" /></Request>
+RegisterUnregister;<Request ID="111" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
+RegisterUnregister;<Request ID="112" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
+RegisterUnregister;<Request ID="113" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+RegisterUnregister;<Request ID="114" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
+RegisterUnregister;<Request ID="115" Action="CREATE"><FB Name="ServiceNotRegisteredPos1" Type="TEST_CONDITION" /></Request>
+RegisterUnregister;<Request ID="116" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
+RegisterUnregister;<Request ID="117" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
+RegisterUnregister;<Request ID="118" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+RegisterUnregister;<Request ID="119" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
+RegisterUnregister;<Request ID="120" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
+RegisterUnregister;<Request ID="121" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
+RegisterUnregister;<Request ID="122" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+RegisterUnregister;<Request ID="123" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
+RegisterUnregister;<Request ID="124" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+RegisterUnregister;<Request ID="125" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+RegisterUnregister;<Request ID="126" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
+RegisterUnregister;<Request ID="127" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+RegisterUnregister;<Request ID="128" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+RegisterUnregister;<Request ID="129" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
+RegisterUnregister;<Request ID="130" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+RegisterUnregister;<Request ID="131" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
+RegisterUnregister;<Request ID="132" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
+RegisterUnregister;<Request ID="133" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
+RegisterUnregister;<Request ID="134" Action="CREATE"><FB Name="FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+RegisterUnregister;<Request ID="135" Action="WRITE"><Connection Source="1" Destination="FieldsToServiceQueryForm.version" /></Request>
+RegisterUnregister;<Request ID="136" Action="CREATE"><FB Name="Registered" Type="E_SR" /></Request>
+RegisterUnregister;<Request ID="137" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
+RegisterUnregister;<Request ID="138" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
+RegisterUnregister;<Request ID="139" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_1.IN1" /></Request>
+RegisterUnregister;<Request ID="140" Action="CREATE"><FB Name="ServiceRegisteredPos0" Type="TEST_CONDITION" /></Request>
+RegisterUnregister;<Request ID="141" Action="CREATE"><FB Name="Sequencer.E_DEMUX" Type="E_DEMUX" /></Request>
+RegisterUnregister;<Request ID="142" Action="CREATE"><FB Name="Sequencer.E_CTU" Type="E_CTU" /></Request>
+RegisterUnregister;<Request ID="143" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1" Type="E_DEMUX" /></Request>
+RegisterUnregister;<Request ID="144" Action="CREATE"><FB Name="Sequencer.E_SWITCH" Type="E_SWITCH" /></Request>
+RegisterUnregister;<Request ID="145" Action="CREATE"><FB Name="Sequencer.F_GT" Type="F_GT" /></Request>
+RegisterUnregister;<Request ID="146" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer.F_GT.IN2" /></Request>
+RegisterUnregister;<Request ID="147" Action="CREATE"><FB Name="Sequencer.E_MERGE" Type="E_MERGE" /></Request>
+RegisterUnregister;<Request ID="148" Action="CREATE"><FB Name="Sequencer.F_SUB" Type="F_SUB" /></Request>
+RegisterUnregister;<Request ID="149" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer.F_SUB.IN2" /></Request>
+RegisterUnregister;<Request ID="150" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+RegisterUnregister;<Request ID="151" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+RegisterUnregister;<Request ID="152" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+RegisterUnregister;<Request ID="153" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
 RegisterUnregister;<Request ID="154" Action="CREATE"><FB Name="FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
 RegisterUnregister;<Request ID="155" Action="WRITE"><Connection Source="/serviceTest/start" Destination="FieldsToServiceRegistryEntry.serviceURI" /></Request>
 RegisterUnregister;<Request ID="156" Action="WRITE"><Connection Source="1" Destination="FieldsToServiceRegistryEntry.version" /></Request>
 RegisterUnregister;<Request ID="157" Action="WRITE"><Connection Source="false" Destination="FieldsToServiceRegistryEntry.udp" /></Request>
-RegisterUnregister;<Request ID="158" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="FieldsToServiceRegistryEntry.metadata" /></Request>
-RegisterUnregister;<Request ID="159" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-RegisterUnregister;<Request ID="160" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
-RegisterUnregister;<Request ID="161" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-RegisterUnregister;<Request ID="162" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
-RegisterUnregister;<Request ID="163" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-RegisterUnregister;<Request ID="164" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-RegisterUnregister;<Request ID="165" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-RegisterUnregister;<Request ID="166" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
-RegisterUnregister;<Request ID="167" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
-RegisterUnregister;<Request ID="168" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
-RegisterUnregister;<Request ID="169" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-RegisterUnregister;<Request ID="170" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
-RegisterUnregister;<Request ID="171" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-RegisterUnregister;<Request ID="172" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-RegisterUnregister;<Request ID="173" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
-RegisterUnregister;<Request ID="174" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-RegisterUnregister;<Request ID="175" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-RegisterUnregister;<Request ID="176" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-RegisterUnregister;<Request ID="177" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
-RegisterUnregister;<Request ID="178" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_2.IN1" /></Request>
-RegisterUnregister;<Request ID="179" Action="CREATE"><FB Name="ServiceNotRegisteredPos0" Type="TEST_CONDITION" /></Request>
-RegisterUnregister;<Request ID="180" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
-RegisterUnregister;<Request ID="181" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
-RegisterUnregister;<Request ID="182" Action="CREATE"><FB Name="PUBLISH_0" Type="PUBL_0" /></Request>
-RegisterUnregister;<Request ID="183" Action="WRITE"><Connection Source="WSTRIGN#RegisterUnregisterTestReady" Destination="PUBLISH_0.ID" /></Request>
-RegisterUnregister;<Request ID="184" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
-RegisterUnregister;<Request ID="185" Action="WRITE"><Connection Source="WSTRIGN#allCleaned" Destination="SUBL_0.ID" /></Request>
+RegisterUnregister;<Request ID="158" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="FieldsToServiceRegistryEntry.metadata" /></Request>
+RegisterUnregister;<Request ID="159" Action="CREATE"><FB Name="RegisterService" Type="RegisterService" /></Request>
+RegisterUnregister;<Request ID="160" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService.endpoint" /></Request>
+RegisterUnregister;<Request ID="161" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+RegisterUnregister;<Request ID="162" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+RegisterUnregister;<Request ID="163" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+RegisterUnregister;<Request ID="164" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
+RegisterUnregister;<Request ID="165" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
+RegisterUnregister;<Request ID="166" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
+RegisterUnregister;<Request ID="167" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+RegisterUnregister;<Request ID="168" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
+RegisterUnregister;<Request ID="169" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+RegisterUnregister;<Request ID="170" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+RegisterUnregister;<Request ID="171" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
+RegisterUnregister;<Request ID="172" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+RegisterUnregister;<Request ID="173" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+RegisterUnregister;<Request ID="174" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+RegisterUnregister;<Request ID="175" Action="CREATE"><FB Name="ServiceNotRegisteredPos0" Type="TEST_CONDITION" /></Request>
+RegisterUnregister;<Request ID="176" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
+RegisterUnregister;<Request ID="177" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
+RegisterUnregister;<Request ID="178" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
+RegisterUnregister;<Request ID="179" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_2.IN1" /></Request>
+RegisterUnregister;<Request ID="180" Action="CREATE"><FB Name="PUBLISH_0" Type="PUBL_0" /></Request>
+RegisterUnregister;<Request ID="181" Action="WRITE"><Connection Source="WSTRIGN#RegisterUnregisterTestReady" Destination="PUBLISH_0.ID" /></Request>
+RegisterUnregister;<Request ID="182" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+RegisterUnregister;<Request ID="183" Action="WRITE"><Connection Source="WSTRIGN#allCleaned" Destination="SUBL_0.ID" /></Request>
+RegisterUnregister;<Request ID="184" Action="CREATE"><FB Name="RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+RegisterUnregister;<Request ID="185" Action="CREATE"><FB Name="QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
 RegisterUnregister;<Request ID="186" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.REQ" /></Request>
 RegisterUnregister;<Request ID="187" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPort.REQ" /></Request>
 RegisterUnregister;<Request ID="188" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetPort.REQ" /></Request>
@@ -211,7 +211,7 @@
 RegisterUnregister;<Request ID="211" Action="CREATE"><Connection Source="Sequencer.E_DEMUX.EO2" Destination="QueryService.query" /></Request>
 RegisterUnregister;<Request ID="212" Action="CREATE"><Connection Source="Sequencer.E_DEMUX.EO3" Destination="RegisterService.unregister" /></Request>
 RegisterUnregister;<Request ID="213" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO0" Destination="QueryService.query" /></Request>
-RegisterUnregister;<Request ID="214" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO1" Destination="PUBLISH_0.INIT" /></Request>
+RegisterUnregister;<Request ID="214" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO1" Destination="PUBLISH_0.REQ" /></Request>
 RegisterUnregister;<Request ID="215" Action="CREATE"><Connection Source="Sequencer.F_GT.CNF" Destination="Sequencer.E_SWITCH.EI" /></Request>
 RegisterUnregister;<Request ID="216" Action="CREATE"><Connection Source="Sequencer.E_SWITCH.EO0" Destination="Sequencer.E_DEMUX.EI" /></Request>
 RegisterUnregister;<Request ID="217" Action="CREATE"><Connection Source="Sequencer.E_MERGE.EO" Destination="Sequencer.E_CTU.CU" /></Request>
@@ -252,123 +252,123 @@
 RegisterUnregister;<Request ID="252" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_1" /></Request>
 RegisterUnregister;<Request ID="253" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.IN" /></Request>
 RegisterUnregister;<Request ID="254" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_2" /></Request>
-RegisterUnregister;<Request ID="255" Action="CREATE"><Connection Source="FieldsToArrowheadService.CNF" Destination="FieldsToServiceQueryForm.REQ" /></Request>
+RegisterUnregister;<Request ID="255" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
 RegisterUnregister;<Request ID="256" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="ServiceNotRegisteredPos1.REQ" /></Request>
 RegisterUnregister;<Request ID="257" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-RegisterUnregister;<Request ID="258" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
+RegisterUnregister;<Request ID="258" Action="CREATE"><Connection Source="FieldsToArrowheadService.CNF" Destination="FieldsToServiceQueryForm.REQ" /></Request>
 RegisterUnregister;<Request ID="259" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_1.REQ" /></Request>
 RegisterUnregister;<Request ID="260" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="ServiceRegisteredPos0.REQ" /></Request>
 RegisterUnregister;<Request ID="261" Action="CREATE"><Connection Source="ServiceRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterUnregister;<Request ID="262" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterUnregister;<Request ID="263" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Registered.R" /></Request>
-RegisterUnregister;<Request ID="264" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterUnregister;<Request ID="265" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Registered.S" /></Request>
-RegisterUnregister;<Request ID="266" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="FieldsToServiceRegistryEntry.REQ" /></Request>
-RegisterUnregister;<Request ID="267" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="ServiceNotRegisteredPos0.REQ" /></Request>
-RegisterUnregister;<Request ID="268" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-RegisterUnregister;<Request ID="269" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
-RegisterUnregister;<Request ID="270" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_2.REQ" /></Request>
-RegisterUnregister;<Request ID="271" Action="CREATE"><Connection Source="ServiceNotRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterUnregister;<Request ID="272" Action="CREATE"><Connection Source="PUBLISH_0.INITO" Destination="PUBLISH_0.REQ" /></Request>
-RegisterUnregister;<Request ID="273" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-RegisterUnregister;<Request ID="274" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterUnregister;<Request ID="275" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
+RegisterUnregister;<Request ID="262" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+RegisterUnregister;<Request ID="263" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="FieldsToServiceRegistryEntry.REQ" /></Request>
+RegisterUnregister;<Request ID="264" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterUnregister;<Request ID="265" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterUnregister;<Request ID="266" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Registered.S" /></Request>
+RegisterUnregister;<Request ID="267" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterUnregister;<Request ID="268" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Registered.R" /></Request>
+RegisterUnregister;<Request ID="269" Action="CREATE"><Connection Source="ServiceNotRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterUnregister;<Request ID="270" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
+RegisterUnregister;<Request ID="271" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+RegisterUnregister;<Request ID="272" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_2.REQ" /></Request>
+RegisterUnregister;<Request ID="273" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="ServiceNotRegisteredPos0.REQ" /></Request>
+RegisterUnregister;<Request ID="274" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
+RegisterUnregister;<Request ID="275" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
 RegisterUnregister;<Request ID="276" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-RegisterUnregister;<Request ID="277" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-RegisterUnregister;<Request ID="278" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="FieldsToServiceQueryForm.service" /></Request>
+RegisterUnregister;<Request ID="277" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBLISH_0.INIT" /></Request>
+RegisterUnregister;<Request ID="278" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
 RegisterUnregister;<Request ID="279" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="ServiceNotRegisteredPos1.check" /></Request>
 RegisterUnregister;<Request ID="280" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-RegisterUnregister;<Request ID="281" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryService.serviceQueryForm" /></Request>
-RegisterUnregister;<Request ID="282" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
+RegisterUnregister;<Request ID="281" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="FieldsToServiceQueryForm.service" /></Request>
+RegisterUnregister;<Request ID="282" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryService.serviceQueryForm" /></Request>
 RegisterUnregister;<Request ID="283" Action="CREATE"><Connection Source="Registered.Q" Destination="E_SWITCH.G" /></Request>
 RegisterUnregister;<Request ID="284" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="ServiceRegisteredPos0.check" /></Request>
-RegisterUnregister;<Request ID="285" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService.serviceRegistryEntry" /></Request>
-RegisterUnregister;<Request ID="286" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="FieldsToServiceRegistryEntry.providedService" /></Request>
-RegisterUnregister;<Request ID="287" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToServiceRegistryEntry.provider" /></Request>
-RegisterUnregister;<Request ID="288" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="ServiceNotRegisteredPos0.check" /></Request>
+RegisterUnregister;<Request ID="285" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="FieldsToServiceRegistryEntry.providedService" /></Request>
+RegisterUnregister;<Request ID="286" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToServiceRegistryEntry.provider" /></Request>
+RegisterUnregister;<Request ID="287" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService.serviceRegistryEntry" /></Request>
+RegisterUnregister;<Request ID="288" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
 RegisterUnregister;<Request ID="289" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-RegisterUnregister;<Request ID="290" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
-RegisterUnregister;<Request ID="291" Action="CREATE"><Connection Source="QueryService.queryServices" Destination="QueryServiceHTTP.queryServices" /></Request>
-RegisterUnregister;<Request ID="292" Action="CREATE"><Connection Source="RegisterService.registerService" Destination="RegisterServiceHTTP.registerService" /></Request>
+RegisterUnregister;<Request ID="290" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="ServiceNotRegisteredPos0.check" /></Request>
+RegisterUnregister;<Request ID="291" Action="CREATE"><Connection Source="RegisterService.registerService" Destination="RegisterServiceOpcUa.registerService" /></Request>
+RegisterUnregister;<Request ID="292" Action="CREATE"><Connection Source="QueryService.queryServices" Destination="QueryServiceOpcUa.queryServices" /></Request>
 RegisterUnregister;<Request ID="293" Action="START"/>
 ;<Request ID="294" Action="CREATE"><FB Name="DoubleRegister" Type="EMB_RES" /></Request>
 DoubleRegister;<Request ID="295" Action="CREATE"><FB Name="QueryService" Type="QueryService" /></Request>
-DoubleRegister;<Request ID="296" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryService.address" /></Request>
-DoubleRegister;<Request ID="297" Action="CREATE"><FB Name="QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-DoubleRegister;<Request ID="298" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
-DoubleRegister;<Request ID="299" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
-DoubleRegister;<Request ID="300" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
-DoubleRegister;<Request ID="301" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
-DoubleRegister;<Request ID="302" Action="CREATE"><FB Name="ServiceNotRegisteredPos1" Type="TEST_CONDITION" /></Request>
-DoubleRegister;<Request ID="303" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
-DoubleRegister;<Request ID="304" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
-DoubleRegister;<Request ID="305" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="306" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
-DoubleRegister;<Request ID="307" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
-DoubleRegister;<Request ID="308" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
-DoubleRegister;<Request ID="309" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="310" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
-DoubleRegister;<Request ID="311" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-DoubleRegister;<Request ID="312" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="313" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
-DoubleRegister;<Request ID="314" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-DoubleRegister;<Request ID="315" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-DoubleRegister;<Request ID="316" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
-DoubleRegister;<Request ID="317" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-DoubleRegister;<Request ID="318" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
-DoubleRegister;<Request ID="319" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
-DoubleRegister;<Request ID="320" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
-DoubleRegister;<Request ID="321" Action="CREATE"><FB Name="FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-DoubleRegister;<Request ID="322" Action="WRITE"><Connection Source="1" Destination="FieldsToServiceQueryForm.version" /></Request>
-DoubleRegister;<Request ID="323" Action="CREATE"><FB Name="Registered" Type="E_SR" /></Request>
-DoubleRegister;<Request ID="324" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
-DoubleRegister;<Request ID="325" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
-DoubleRegister;<Request ID="326" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_1.IN1" /></Request>
-DoubleRegister;<Request ID="327" Action="CREATE"><FB Name="ServiceRegisteredPos0" Type="TEST_CONDITION" /></Request>
-DoubleRegister;<Request ID="328" Action="CREATE"><FB Name="Sequencer.E_DEMUX" Type="E_DEMUX" /></Request>
-DoubleRegister;<Request ID="329" Action="CREATE"><FB Name="Sequencer.E_CTU" Type="E_CTU" /></Request>
-DoubleRegister;<Request ID="330" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1" Type="E_DEMUX" /></Request>
-DoubleRegister;<Request ID="331" Action="CREATE"><FB Name="Sequencer.E_SWITCH" Type="E_SWITCH" /></Request>
-DoubleRegister;<Request ID="332" Action="CREATE"><FB Name="Sequencer.F_GT" Type="F_GT" /></Request>
-DoubleRegister;<Request ID="333" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer.F_GT.IN2" /></Request>
-DoubleRegister;<Request ID="334" Action="CREATE"><FB Name="Sequencer.F_SUB" Type="F_SUB" /></Request>
-DoubleRegister;<Request ID="335" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer.F_SUB.IN2" /></Request>
-DoubleRegister;<Request ID="336" Action="CREATE"><FB Name="Sequencer.E_MERGE_1" Type="E_MERGE" /></Request>
-DoubleRegister;<Request ID="337" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-DoubleRegister;<Request ID="338" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
-DoubleRegister;<Request ID="339" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-DoubleRegister;<Request ID="340" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
-DoubleRegister;<Request ID="341" Action="CREATE"><FB Name="FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-DoubleRegister;<Request ID="342" Action="WRITE"><Connection Source="/serviceTest/start" Destination="FieldsToServiceRegistryEntry.serviceURI" /></Request>
-DoubleRegister;<Request ID="343" Action="WRITE"><Connection Source="1" Destination="FieldsToServiceRegistryEntry.version" /></Request>
-DoubleRegister;<Request ID="344" Action="WRITE"><Connection Source="false" Destination="FieldsToServiceRegistryEntry.udp" /></Request>
-DoubleRegister;<Request ID="345" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="FieldsToServiceRegistryEntry.metadata" /></Request>
-DoubleRegister;<Request ID="346" Action="CREATE"><FB Name="RegisterService" Type="RegisterService" /></Request>
-DoubleRegister;<Request ID="347" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService.endpoint" /></Request>
-DoubleRegister;<Request ID="348" Action="CREATE"><FB Name="RegisterServiceHTTP" Type="RegisterServiceHTTP" /></Request>
-DoubleRegister;<Request ID="349" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-DoubleRegister;<Request ID="350" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-DoubleRegister;<Request ID="351" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="352" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
-DoubleRegister;<Request ID="353" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
-DoubleRegister;<Request ID="354" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
-DoubleRegister;<Request ID="355" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="356" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
-DoubleRegister;<Request ID="357" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-DoubleRegister;<Request ID="358" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-DoubleRegister;<Request ID="359" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
-DoubleRegister;<Request ID="360" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-DoubleRegister;<Request ID="361" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-DoubleRegister;<Request ID="362" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-DoubleRegister;<Request ID="363" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
-DoubleRegister;<Request ID="364" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
-DoubleRegister;<Request ID="365" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
-DoubleRegister;<Request ID="366" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_2.IN1" /></Request>
-DoubleRegister;<Request ID="367" Action="CREATE"><FB Name="ServiceNotRegisteredPos0" Type="TEST_CONDITION" /></Request>
-DoubleRegister;<Request ID="368" Action="CREATE"><FB Name="SUBSCRIBE_0" Type="SUBL_0" /></Request>
-DoubleRegister;<Request ID="369" Action="WRITE"><Connection Source="WSTRIGN#RegisterUnregisterTestReady" Destination="SUBSCRIBE_0.ID" /></Request>
-DoubleRegister;<Request ID="370" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-DoubleRegister;<Request ID="371" Action="WRITE"><Connection Source="WSTRIGN#DoubleRegisterReady" Destination="PUBL_0.ID" /></Request>
+DoubleRegister;<Request ID="296" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryService.address" /></Request>
+DoubleRegister;<Request ID="297" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
+DoubleRegister;<Request ID="298" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
+DoubleRegister;<Request ID="299" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+DoubleRegister;<Request ID="300" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
+DoubleRegister;<Request ID="301" Action="CREATE"><FB Name="ServiceNotRegisteredPos1" Type="TEST_CONDITION" /></Request>
+DoubleRegister;<Request ID="302" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
+DoubleRegister;<Request ID="303" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
+DoubleRegister;<Request ID="304" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="305" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
+DoubleRegister;<Request ID="306" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
+DoubleRegister;<Request ID="307" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
+DoubleRegister;<Request ID="308" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="309" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
+DoubleRegister;<Request ID="310" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+DoubleRegister;<Request ID="311" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="312" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
+DoubleRegister;<Request ID="313" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+DoubleRegister;<Request ID="314" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+DoubleRegister;<Request ID="315" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
+DoubleRegister;<Request ID="316" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+DoubleRegister;<Request ID="317" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
+DoubleRegister;<Request ID="318" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
+DoubleRegister;<Request ID="319" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
+DoubleRegister;<Request ID="320" Action="CREATE"><FB Name="FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+DoubleRegister;<Request ID="321" Action="WRITE"><Connection Source="1" Destination="FieldsToServiceQueryForm.version" /></Request>
+DoubleRegister;<Request ID="322" Action="CREATE"><FB Name="Registered" Type="E_SR" /></Request>
+DoubleRegister;<Request ID="323" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
+DoubleRegister;<Request ID="324" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
+DoubleRegister;<Request ID="325" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_1.IN1" /></Request>
+DoubleRegister;<Request ID="326" Action="CREATE"><FB Name="ServiceRegisteredPos0" Type="TEST_CONDITION" /></Request>
+DoubleRegister;<Request ID="327" Action="CREATE"><FB Name="Sequencer.E_DEMUX" Type="E_DEMUX" /></Request>
+DoubleRegister;<Request ID="328" Action="CREATE"><FB Name="Sequencer.E_CTU" Type="E_CTU" /></Request>
+DoubleRegister;<Request ID="329" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1" Type="E_DEMUX" /></Request>
+DoubleRegister;<Request ID="330" Action="CREATE"><FB Name="Sequencer.E_SWITCH" Type="E_SWITCH" /></Request>
+DoubleRegister;<Request ID="331" Action="CREATE"><FB Name="Sequencer.F_GT" Type="F_GT" /></Request>
+DoubleRegister;<Request ID="332" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer.F_GT.IN2" /></Request>
+DoubleRegister;<Request ID="333" Action="CREATE"><FB Name="Sequencer.F_SUB" Type="F_SUB" /></Request>
+DoubleRegister;<Request ID="334" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer.F_SUB.IN2" /></Request>
+DoubleRegister;<Request ID="335" Action="CREATE"><FB Name="Sequencer.E_MERGE_1" Type="E_MERGE" /></Request>
+DoubleRegister;<Request ID="336" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+DoubleRegister;<Request ID="337" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+DoubleRegister;<Request ID="338" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+DoubleRegister;<Request ID="339" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
+DoubleRegister;<Request ID="340" Action="CREATE"><FB Name="FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+DoubleRegister;<Request ID="341" Action="WRITE"><Connection Source="/serviceTest/start" Destination="FieldsToServiceRegistryEntry.serviceURI" /></Request>
+DoubleRegister;<Request ID="342" Action="WRITE"><Connection Source="1" Destination="FieldsToServiceRegistryEntry.version" /></Request>
+DoubleRegister;<Request ID="343" Action="WRITE"><Connection Source="false" Destination="FieldsToServiceRegistryEntry.udp" /></Request>
+DoubleRegister;<Request ID="344" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="FieldsToServiceRegistryEntry.metadata" /></Request>
+DoubleRegister;<Request ID="345" Action="CREATE"><FB Name="RegisterService" Type="RegisterService" /></Request>
+DoubleRegister;<Request ID="346" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService.endpoint" /></Request>
+DoubleRegister;<Request ID="347" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+DoubleRegister;<Request ID="348" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+DoubleRegister;<Request ID="349" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="350" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
+DoubleRegister;<Request ID="351" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
+DoubleRegister;<Request ID="352" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
+DoubleRegister;<Request ID="353" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="354" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
+DoubleRegister;<Request ID="355" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+DoubleRegister;<Request ID="356" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+DoubleRegister;<Request ID="357" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
+DoubleRegister;<Request ID="358" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+DoubleRegister;<Request ID="359" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+DoubleRegister;<Request ID="360" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+DoubleRegister;<Request ID="361" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
+DoubleRegister;<Request ID="362" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
+DoubleRegister;<Request ID="363" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
+DoubleRegister;<Request ID="364" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_2.IN1" /></Request>
+DoubleRegister;<Request ID="365" Action="CREATE"><FB Name="ServiceNotRegisteredPos0" Type="TEST_CONDITION" /></Request>
+DoubleRegister;<Request ID="366" Action="CREATE"><FB Name="SUBSCRIBE_0" Type="SUBL_0" /></Request>
+DoubleRegister;<Request ID="367" Action="WRITE"><Connection Source="WSTRIGN#RegisterUnregisterTestReady" Destination="SUBSCRIBE_0.ID" /></Request>
+DoubleRegister;<Request ID="368" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+DoubleRegister;<Request ID="369" Action="WRITE"><Connection Source="WSTRIGN#DoubleRegisterReady" Destination="PUBL_0.ID" /></Request>
+DoubleRegister;<Request ID="370" Action="CREATE"><FB Name="RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+DoubleRegister;<Request ID="371" Action="CREATE"><FB Name="QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
 DoubleRegister;<Request ID="372" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.REQ" /></Request>
 DoubleRegister;<Request ID="373" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPort.REQ" /></Request>
 DoubleRegister;<Request ID="374" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetPort.REQ" /></Request>
@@ -445,22 +445,22 @@
 DoubleRegister;<Request ID="445" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_1.REQ" /></Request>
 DoubleRegister;<Request ID="446" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="ServiceRegisteredPos0.REQ" /></Request>
 DoubleRegister;<Request ID="447" Action="CREATE"><Connection Source="ServiceRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="448" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="FieldsToServiceRegistryEntry.REQ" /></Request>
-DoubleRegister;<Request ID="449" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Registered.S" /></Request>
-DoubleRegister;<Request ID="450" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Registered.R" /></Request>
-DoubleRegister;<Request ID="451" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
-DoubleRegister;<Request ID="452" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-DoubleRegister;<Request ID="453" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_2.REQ" /></Request>
-DoubleRegister;<Request ID="454" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="ServiceNotRegisteredPos0.REQ" /></Request>
-DoubleRegister;<Request ID="455" Action="CREATE"><Connection Source="ServiceNotRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="456" Action="CREATE"><Connection Source="START.COLD" Destination="SUBSCRIBE_0.INIT" /></Request>
-DoubleRegister;<Request ID="457" Action="CREATE"><Connection Source="START.WARM" Destination="SUBSCRIBE_0.INIT" /></Request>
-DoubleRegister;<Request ID="458" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="459" Action="CREATE"><Connection Source="SUBSCRIBE_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
-DoubleRegister;<Request ID="460" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-DoubleRegister;<Request ID="461" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="462" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Sequencer.F_GT.REQ" /></Request>
-DoubleRegister;<Request ID="463" Action="CREATE"><Connection Source="SUBSCRIBE_0.INITO" Destination="PUBL_0.INIT" /></Request>
+DoubleRegister;<Request ID="448" Action="CREATE"><Connection Source="FieldsToServiceQueryForm.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+DoubleRegister;<Request ID="449" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="FieldsToServiceRegistryEntry.REQ" /></Request>
+DoubleRegister;<Request ID="450" Action="CREATE"><Connection Source="FieldsToServiceRegistryEntry.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="451" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Registered.S" /></Request>
+DoubleRegister;<Request ID="452" Action="CREATE"><Connection Source="RegisterService.doneRegister" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="453" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Registered.R" /></Request>
+DoubleRegister;<Request ID="454" Action="CREATE"><Connection Source="RegisterService.doneUnregister" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="455" Action="CREATE"><Connection Source="QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
+DoubleRegister;<Request ID="456" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+DoubleRegister;<Request ID="457" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_2.REQ" /></Request>
+DoubleRegister;<Request ID="458" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="ServiceNotRegisteredPos0.REQ" /></Request>
+DoubleRegister;<Request ID="459" Action="CREATE"><Connection Source="ServiceNotRegisteredPos0.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+DoubleRegister;<Request ID="460" Action="CREATE"><Connection Source="SUBSCRIBE_0.IND" Destination="FieldsToArrowheadService.REQ" /></Request>
+DoubleRegister;<Request ID="461" Action="CREATE"><Connection Source="SUBSCRIBE_0.INITO" Destination="PUBL_0.INIT" /></Request>
+DoubleRegister;<Request ID="462" Action="CREATE"><Connection Source="START.COLD" Destination="SUBSCRIBE_0.INIT" /></Request>
+DoubleRegister;<Request ID="463" Action="CREATE"><Connection Source="START.WARM" Destination="SUBSCRIBE_0.INIT" /></Request>
 DoubleRegister;<Request ID="464" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
 DoubleRegister;<Request ID="465" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="ServiceNotRegisteredPos1.check" /></Request>
 DoubleRegister;<Request ID="466" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
@@ -474,159 +474,159 @@
 DoubleRegister;<Request ID="474" Action="CREATE"><Connection Source="QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
 DoubleRegister;<Request ID="475" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
 DoubleRegister;<Request ID="476" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="ServiceNotRegisteredPos0.check" /></Request>
-DoubleRegister;<Request ID="477" Action="CREATE"><Connection Source="QueryService.queryServices" Destination="QueryServiceHTTP.queryServices" /></Request>
-DoubleRegister;<Request ID="478" Action="CREATE"><Connection Source="RegisterService.registerService" Destination="RegisterServiceHTTP.registerService" /></Request>
+DoubleRegister;<Request ID="477" Action="CREATE"><Connection Source="RegisterService.registerService" Destination="RegisterServiceOpcUa.registerService" /></Request>
+DoubleRegister;<Request ID="478" Action="CREATE"><Connection Source="QueryService.queryServices" Destination="QueryServiceOpcUa.queryServices" /></Request>
 DoubleRegister;<Request ID="479" Action="START"/>
 ;<Request ID="480" Action="CREATE"><FB Name="RegisterMoreServices" Type="EMB_RES" /></Request>
-RegisterMoreServices;<Request ID="481" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
-RegisterMoreServices;<Request ID="482" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-RegisterMoreServices;<Request ID="483" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="484" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="485" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
-RegisterMoreServices;<Request ID="486" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
-RegisterMoreServices;<Request ID="487" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
-RegisterMoreServices;<Request ID="488" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="489" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
-RegisterMoreServices;<Request ID="490" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-RegisterMoreServices;<Request ID="491" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="492" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
-RegisterMoreServices;<Request ID="493" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="494" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="495" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-RegisterMoreServices;<Request ID="496" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-RegisterMoreServices;<Request ID="497" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
-RegisterMoreServices;<Request ID="498" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-RegisterMoreServices;<Request ID="499" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
-RegisterMoreServices;<Request ID="500" Action="CREATE"><FB Name="Service2RegisteredPos0" Type="TEST_CONDITION" /></Request>
-RegisterMoreServices;<Request ID="501" Action="CREATE"><FB Name="Service1RegisteredPos0" Type="TEST_CONDITION" /></Request>
-RegisterMoreServices;<Request ID="502" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
-RegisterMoreServices;<Request ID="503" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
-RegisterMoreServices;<Request ID="504" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
-RegisterMoreServices;<Request ID="505" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_2.IN1" /></Request>
-RegisterMoreServices;<Request ID="506" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
-RegisterMoreServices;<Request ID="507" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="508" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="509" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
-RegisterMoreServices;<Request ID="510" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
-RegisterMoreServices;<Request ID="511" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
-RegisterMoreServices;<Request ID="512" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="513" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
-RegisterMoreServices;<Request ID="514" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-RegisterMoreServices;<Request ID="515" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="516" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
-RegisterMoreServices;<Request ID="517" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="518" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="519" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
-RegisterMoreServices;<Request ID="520" Action="CREATE"><FB Name="Service1NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
-RegisterMoreServices;<Request ID="521" Action="CREATE"><FB Name="Sequencer.E_DEMUX" Type="E_DEMUX" /></Request>
-RegisterMoreServices;<Request ID="522" Action="CREATE"><FB Name="Sequencer.E_CTU" Type="E_CTU" /></Request>
-RegisterMoreServices;<Request ID="523" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1" Type="E_DEMUX" /></Request>
-RegisterMoreServices;<Request ID="524" Action="CREATE"><FB Name="Sequencer.E_SWITCH" Type="E_SWITCH" /></Request>
-RegisterMoreServices;<Request ID="525" Action="CREATE"><FB Name="Sequencer.F_GT" Type="F_GT" /></Request>
-RegisterMoreServices;<Request ID="526" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer.F_GT.IN2" /></Request>
-RegisterMoreServices;<Request ID="527" Action="CREATE"><FB Name="Sequencer.E_MERGE" Type="E_MERGE" /></Request>
-RegisterMoreServices;<Request ID="528" Action="CREATE"><FB Name="Sequencer.F_SUB" Type="F_SUB" /></Request>
-RegisterMoreServices;<Request ID="529" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer.F_SUB.IN2" /></Request>
-RegisterMoreServices;<Request ID="530" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
-RegisterMoreServices;<Request ID="531" Action="CREATE"><FB Name="Sequencer.F_GT_1" Type="F_GT" /></Request>
-RegisterMoreServices;<Request ID="532" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer.F_GT_1.IN2" /></Request>
-RegisterMoreServices;<Request ID="533" Action="CREATE"><FB Name="Sequencer.F_SUB_1" Type="F_SUB" /></Request>
-RegisterMoreServices;<Request ID="534" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer.F_SUB_1.IN2" /></Request>
-RegisterMoreServices;<Request ID="535" Action="CREATE"><FB Name="Sequencer.E_SWITCH_1" Type="E_SWITCH" /></Request>
-RegisterMoreServices;<Request ID="536" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
-RegisterMoreServices;<Request ID="537" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
-RegisterMoreServices;<Request ID="538" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
-RegisterMoreServices;<Request ID="539" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
-RegisterMoreServices;<Request ID="540" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
-RegisterMoreServices;<Request ID="541" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start2" Destination="F_EQ_1.IN1" /></Request>
-RegisterMoreServices;<Request ID="542" Action="CREATE"><FB Name="S1Reg" Type="E_SR" /></Request>
-RegisterMoreServices;<Request ID="543" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="544" Action="CREATE"><FB Name="RegisterService2.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-RegisterMoreServices;<Request ID="545" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
-RegisterMoreServices;<Request ID="546" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
-RegisterMoreServices;<Request ID="547" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
-RegisterMoreServices;<Request ID="548" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
-RegisterMoreServices;<Request ID="549" Action="CREATE"><FB Name="RegisterService1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="550" Action="CREATE"><FB Name="RegisterService1.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-RegisterMoreServices;<Request ID="551" Action="CREATE"><FB Name="RegisterService1.RegisterService" Type="RegisterService" /></Request>
-RegisterMoreServices;<Request ID="552" Action="CREATE"><FB Name="RegisterService1.E_SR" Type="E_SR" /></Request>
-RegisterMoreServices;<Request ID="553" Action="CREATE"><FB Name="RegisterService1.E_SWITCH" Type="E_SWITCH" /></Request>
-RegisterMoreServices;<Request ID="554" Action="CREATE"><FB Name="RegisterService1.E_REND" Type="E_REND" /></Request>
-RegisterMoreServices;<Request ID="555" Action="CREATE"><FB Name="Service2NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
-RegisterMoreServices;<Request ID="556" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
-RegisterMoreServices;<Request ID="557" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1.IN1" /></Request>
-RegisterMoreServices;<Request ID="558" Action="CREATE"><FB Name="S2Reg" Type="E_SR" /></Request>
-RegisterMoreServices;<Request ID="559" Action="CREATE"><FB Name="E_SWITCH_1" Type="E_SWITCH" /></Request>
-RegisterMoreServices;<Request ID="560" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-RegisterMoreServices;<Request ID="561" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="562" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="563" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.member" /></Request>
-RegisterMoreServices;<Request ID="564" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
-RegisterMoreServices;<Request ID="565" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_2" /></Request>
-RegisterMoreServices;<Request ID="566" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="567" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.member" /></Request>
-RegisterMoreServices;<Request ID="568" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-RegisterMoreServices;<Request ID="569" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="570" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.member" /></Request>
-RegisterMoreServices;<Request ID="571" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="572" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="573" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-RegisterMoreServices;<Request ID="574" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.WS2WS" Type="WSTRING2WSTRING" /></Request>
-RegisterMoreServices;<Request ID="575" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.DI2S" Type="F_DINT_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="576" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="577" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_2.GetPort.member" /></Request>
-RegisterMoreServices;<Request ID="578" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.IpPort" Type="APPEND_STRING_3" /></Request>
-RegisterMoreServices;<Request ID="579" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.IN_2" /></Request>
-RegisterMoreServices;<Request ID="580" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="581" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_2.GetAddress.member" /></Request>
-RegisterMoreServices;<Request ID="582" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-RegisterMoreServices;<Request ID="583" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-RegisterMoreServices;<Request ID="584" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_2.GetURI.member" /></Request>
-RegisterMoreServices;<Request ID="585" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="586" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-RegisterMoreServices;<Request ID="587" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.IpPortURI" Type="APPEND_STRING_2" /></Request>
-RegisterMoreServices;<Request ID="588" Action="CREATE"><FB Name="GET_AT_INDEX_1_1" Type="GET_AT_INDEX" /></Request>
-RegisterMoreServices;<Request ID="589" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1_1.INDEX" /></Request>
-RegisterMoreServices;<Request ID="590" Action="CREATE"><FB Name="QueryService2.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-RegisterMoreServices;<Request ID="591" Action="CREATE"><FB Name="QueryService2.QueryService" Type="QueryService" /></Request>
-RegisterMoreServices;<Request ID="592" Action="CREATE"><FB Name="QueryService2.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-RegisterMoreServices;<Request ID="593" Action="CREATE"><FB Name="GET_AT_INDEX_2" Type="GET_AT_INDEX" /></Request>
-RegisterMoreServices;<Request ID="594" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_2.INDEX" /></Request>
-RegisterMoreServices;<Request ID="595" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
-RegisterMoreServices;<Request ID="596" Action="WRITE"><Connection Source="WSTRIGN#DoubleRegisterReady" Destination="SUBL_0.ID" /></Request>
-RegisterMoreServices;<Request ID="597" Action="CREATE"><FB Name="F_EQ_3" Type="F_EQ" /></Request>
-RegisterMoreServices;<Request ID="598" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3.IN1" /></Request>
-RegisterMoreServices;<Request ID="599" Action="CREATE"><FB Name="Service1NotRegisteredPos0" Type="TEST_CONDITION" /></Request>
-RegisterMoreServices;<Request ID="600" Action="CREATE"><FB Name="F_EQ_3_1" Type="F_EQ" /></Request>
-RegisterMoreServices;<Request ID="601" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3_1.IN1" /></Request>
-RegisterMoreServices;<Request ID="602" Action="CREATE"><FB Name="Service2NotRegisteredPos0" Type="TEST_CONDITION" /></Request>
-RegisterMoreServices;<Request ID="603" Action="CREATE"><FB Name="QueryService1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-RegisterMoreServices;<Request ID="604" Action="CREATE"><FB Name="QueryService1.QueryService" Type="QueryService" /></Request>
-RegisterMoreServices;<Request ID="605" Action="CREATE"><FB Name="QueryService1.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-RegisterMoreServices;<Request ID="606" Action="CREATE"><FB Name="Service1" Type="FieldsToArrowheadService" /></Request>
-RegisterMoreServices;<Request ID="607" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="Service1.serviceDefinition" /></Request>
-RegisterMoreServices;<Request ID="608" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service1.interfaces" /></Request>
-RegisterMoreServices;<Request ID="609" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service1.serviceMetadata" /></Request>
-RegisterMoreServices;<Request ID="610" Action="CREATE"><FB Name="Service2" Type="FieldsToArrowheadService" /></Request>
-RegisterMoreServices;<Request ID="611" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="Service2.serviceDefinition" /></Request>
-RegisterMoreServices;<Request ID="612" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service2.interfaces" /></Request>
-RegisterMoreServices;<Request ID="613" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service2.serviceMetadata" /></Request>
-RegisterMoreServices;<Request ID="614" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-RegisterMoreServices;<Request ID="615" Action="WRITE"><Connection Source="WSTRIGN#testMoreServicesReady" Destination="PUBL_0.ID" /></Request>
+RegisterMoreServices;<Request ID="481" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+RegisterMoreServices;<Request ID="482" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="483" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="484" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
+RegisterMoreServices;<Request ID="485" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
+RegisterMoreServices;<Request ID="486" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
+RegisterMoreServices;<Request ID="487" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="488" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
+RegisterMoreServices;<Request ID="489" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+RegisterMoreServices;<Request ID="490" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="491" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
+RegisterMoreServices;<Request ID="492" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="493" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="494" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+RegisterMoreServices;<Request ID="495" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
+RegisterMoreServices;<Request ID="496" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
+RegisterMoreServices;<Request ID="497" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
+RegisterMoreServices;<Request ID="498" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="499" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="500" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
+RegisterMoreServices;<Request ID="501" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
+RegisterMoreServices;<Request ID="502" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
+RegisterMoreServices;<Request ID="503" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="504" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
+RegisterMoreServices;<Request ID="505" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+RegisterMoreServices;<Request ID="506" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="507" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
+RegisterMoreServices;<Request ID="508" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="509" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="510" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
+RegisterMoreServices;<Request ID="511" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+RegisterMoreServices;<Request ID="512" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
+RegisterMoreServices;<Request ID="513" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+RegisterMoreServices;<Request ID="514" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+RegisterMoreServices;<Request ID="515" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+RegisterMoreServices;<Request ID="516" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
+RegisterMoreServices;<Request ID="517" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
+RegisterMoreServices;<Request ID="518" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_2.IN1" /></Request>
+RegisterMoreServices;<Request ID="519" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
+RegisterMoreServices;<Request ID="520" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
+RegisterMoreServices;<Request ID="521" Action="CREATE"><FB Name="S1Reg" Type="E_SR" /></Request>
+RegisterMoreServices;<Request ID="522" Action="CREATE"><FB Name="Service2RegisteredPos0" Type="TEST_CONDITION" /></Request>
+RegisterMoreServices;<Request ID="523" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
+RegisterMoreServices;<Request ID="524" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
+RegisterMoreServices;<Request ID="525" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start2" Destination="F_EQ_1.IN1" /></Request>
+RegisterMoreServices;<Request ID="526" Action="CREATE"><FB Name="Service1RegisteredPos0" Type="TEST_CONDITION" /></Request>
+RegisterMoreServices;<Request ID="527" Action="CREATE"><FB Name="Service1NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
+RegisterMoreServices;<Request ID="528" Action="CREATE"><FB Name="Sequencer.E_DEMUX" Type="E_DEMUX" /></Request>
+RegisterMoreServices;<Request ID="529" Action="CREATE"><FB Name="Sequencer.E_CTU" Type="E_CTU" /></Request>
+RegisterMoreServices;<Request ID="530" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1" Type="E_DEMUX" /></Request>
+RegisterMoreServices;<Request ID="531" Action="CREATE"><FB Name="Sequencer.E_SWITCH" Type="E_SWITCH" /></Request>
+RegisterMoreServices;<Request ID="532" Action="CREATE"><FB Name="Sequencer.F_GT" Type="F_GT" /></Request>
+RegisterMoreServices;<Request ID="533" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer.F_GT.IN2" /></Request>
+RegisterMoreServices;<Request ID="534" Action="CREATE"><FB Name="Sequencer.E_MERGE" Type="E_MERGE" /></Request>
+RegisterMoreServices;<Request ID="535" Action="CREATE"><FB Name="Sequencer.F_SUB" Type="F_SUB" /></Request>
+RegisterMoreServices;<Request ID="536" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer.F_SUB.IN2" /></Request>
+RegisterMoreServices;<Request ID="537" Action="CREATE"><FB Name="Sequencer.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
+RegisterMoreServices;<Request ID="538" Action="CREATE"><FB Name="Sequencer.F_GT_1" Type="F_GT" /></Request>
+RegisterMoreServices;<Request ID="539" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer.F_GT_1.IN2" /></Request>
+RegisterMoreServices;<Request ID="540" Action="CREATE"><FB Name="Sequencer.F_SUB_1" Type="F_SUB" /></Request>
+RegisterMoreServices;<Request ID="541" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer.F_SUB_1.IN2" /></Request>
+RegisterMoreServices;<Request ID="542" Action="CREATE"><FB Name="Sequencer.E_SWITCH_1" Type="E_SWITCH" /></Request>
+RegisterMoreServices;<Request ID="543" Action="CREATE"><FB Name="Service2NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
+RegisterMoreServices;<Request ID="544" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
+RegisterMoreServices;<Request ID="545" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1.IN1" /></Request>
+RegisterMoreServices;<Request ID="546" Action="CREATE"><FB Name="S2Reg" Type="E_SR" /></Request>
+RegisterMoreServices;<Request ID="547" Action="CREATE"><FB Name="E_SWITCH_1" Type="E_SWITCH" /></Request>
+RegisterMoreServices;<Request ID="548" Action="CREATE"><FB Name="GET_AT_INDEX_1_1" Type="GET_AT_INDEX" /></Request>
+RegisterMoreServices;<Request ID="549" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1_1.INDEX" /></Request>
+RegisterMoreServices;<Request ID="550" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+RegisterMoreServices;<Request ID="551" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="552" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="553" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.member" /></Request>
+RegisterMoreServices;<Request ID="554" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
+RegisterMoreServices;<Request ID="555" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_2" /></Request>
+RegisterMoreServices;<Request ID="556" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="557" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.member" /></Request>
+RegisterMoreServices;<Request ID="558" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+RegisterMoreServices;<Request ID="559" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="560" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.member" /></Request>
+RegisterMoreServices;<Request ID="561" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="562" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="563" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+RegisterMoreServices;<Request ID="564" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.WS2WS" Type="WSTRING2WSTRING" /></Request>
+RegisterMoreServices;<Request ID="565" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.DI2S" Type="F_DINT_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="566" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="567" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_2.GetPort.member" /></Request>
+RegisterMoreServices;<Request ID="568" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.IpPort" Type="APPEND_STRING_3" /></Request>
+RegisterMoreServices;<Request ID="569" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.IN_2" /></Request>
+RegisterMoreServices;<Request ID="570" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="571" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_2.GetAddress.member" /></Request>
+RegisterMoreServices;<Request ID="572" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+RegisterMoreServices;<Request ID="573" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+RegisterMoreServices;<Request ID="574" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_2.GetURI.member" /></Request>
+RegisterMoreServices;<Request ID="575" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="576" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+RegisterMoreServices;<Request ID="577" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_2.IpPortURI" Type="APPEND_STRING_2" /></Request>
+RegisterMoreServices;<Request ID="578" Action="CREATE"><FB Name="GET_AT_INDEX_2" Type="GET_AT_INDEX" /></Request>
+RegisterMoreServices;<Request ID="579" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_2.INDEX" /></Request>
+RegisterMoreServices;<Request ID="580" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+RegisterMoreServices;<Request ID="581" Action="WRITE"><Connection Source="WSTRIGN#DoubleRegisterReady" Destination="SUBL_0.ID" /></Request>
+RegisterMoreServices;<Request ID="582" Action="CREATE"><FB Name="Service1NotRegisteredPos0" Type="TEST_CONDITION" /></Request>
+RegisterMoreServices;<Request ID="583" Action="CREATE"><FB Name="F_EQ_3" Type="F_EQ" /></Request>
+RegisterMoreServices;<Request ID="584" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3.IN1" /></Request>
+RegisterMoreServices;<Request ID="585" Action="CREATE"><FB Name="F_EQ_3_1" Type="F_EQ" /></Request>
+RegisterMoreServices;<Request ID="586" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3_1.IN1" /></Request>
+RegisterMoreServices;<Request ID="587" Action="CREATE"><FB Name="Service2NotRegisteredPos0" Type="TEST_CONDITION" /></Request>
+RegisterMoreServices;<Request ID="588" Action="CREATE"><FB Name="Service1" Type="FieldsToArrowheadService" /></Request>
+RegisterMoreServices;<Request ID="589" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="Service1.serviceDefinition" /></Request>
+RegisterMoreServices;<Request ID="590" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service1.interfaces" /></Request>
+RegisterMoreServices;<Request ID="591" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service1.serviceMetadata" /></Request>
+RegisterMoreServices;<Request ID="592" Action="CREATE"><FB Name="Service2" Type="FieldsToArrowheadService" /></Request>
+RegisterMoreServices;<Request ID="593" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="Service2.serviceDefinition" /></Request>
+RegisterMoreServices;<Request ID="594" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service2.interfaces" /></Request>
+RegisterMoreServices;<Request ID="595" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service2.serviceMetadata" /></Request>
+RegisterMoreServices;<Request ID="596" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+RegisterMoreServices;<Request ID="597" Action="WRITE"><Connection Source="WSTRIGN#testMoreServicesReady" Destination="PUBL_0.ID" /></Request>
+RegisterMoreServices;<Request ID="598" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="599" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
+RegisterMoreServices;<Request ID="600" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
+RegisterMoreServices;<Request ID="601" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
+RegisterMoreServices;<Request ID="602" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
+RegisterMoreServices;<Request ID="603" Action="CREATE"><FB Name="RegisterService2.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+RegisterMoreServices;<Request ID="604" Action="CREATE"><FB Name="RegisterService1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="605" Action="CREATE"><FB Name="RegisterService1.RegisterService" Type="RegisterService" /></Request>
+RegisterMoreServices;<Request ID="606" Action="CREATE"><FB Name="RegisterService1.E_SR" Type="E_SR" /></Request>
+RegisterMoreServices;<Request ID="607" Action="CREATE"><FB Name="RegisterService1.E_SWITCH" Type="E_SWITCH" /></Request>
+RegisterMoreServices;<Request ID="608" Action="CREATE"><FB Name="RegisterService1.E_REND" Type="E_REND" /></Request>
+RegisterMoreServices;<Request ID="609" Action="CREATE"><FB Name="RegisterService1.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+RegisterMoreServices;<Request ID="610" Action="CREATE"><FB Name="QueryService2.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+RegisterMoreServices;<Request ID="611" Action="CREATE"><FB Name="QueryService2.QueryService" Type="QueryService" /></Request>
+RegisterMoreServices;<Request ID="612" Action="CREATE"><FB Name="QueryService2.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+RegisterMoreServices;<Request ID="613" Action="CREATE"><FB Name="QueryService1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+RegisterMoreServices;<Request ID="614" Action="CREATE"><FB Name="QueryService1.QueryService" Type="QueryService" /></Request>
+RegisterMoreServices;<Request ID="615" Action="CREATE"><FB Name="QueryService1.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
 RegisterMoreServices;<Request ID="616" Action="WRITE"><Connection Source="/serviceTest/start2" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
 RegisterMoreServices;<Request ID="617" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
 RegisterMoreServices;<Request ID="618" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
-RegisterMoreServices;<Request ID="619" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
-RegisterMoreServices;<Request ID="620" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
+RegisterMoreServices;<Request ID="619" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
+RegisterMoreServices;<Request ID="620" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
 RegisterMoreServices;<Request ID="621" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterService1.FieldsToServiceRegistryEntry.serviceURI" /></Request>
 RegisterMoreServices;<Request ID="622" Action="WRITE"><Connection Source="1" Destination="RegisterService1.FieldsToServiceRegistryEntry.version" /></Request>
 RegisterMoreServices;<Request ID="623" Action="WRITE"><Connection Source="false" Destination="RegisterService1.FieldsToServiceRegistryEntry.udp" /></Request>
-RegisterMoreServices;<Request ID="624" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService1.FieldsToServiceRegistryEntry.metadata" /></Request>
-RegisterMoreServices;<Request ID="625" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService1.RegisterService.endpoint" /></Request>
+RegisterMoreServices;<Request ID="624" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService1.FieldsToServiceRegistryEntry.metadata" /></Request>
+RegisterMoreServices;<Request ID="625" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService1.RegisterService.endpoint" /></Request>
 RegisterMoreServices;<Request ID="626" Action="WRITE"><Connection Source="1" Destination="QueryService2.FieldsToServiceQueryForm.version" /></Request>
-RegisterMoreServices;<Request ID="627" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryService2.QueryService.address" /></Request>
+RegisterMoreServices;<Request ID="627" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryService2.QueryService.address" /></Request>
 RegisterMoreServices;<Request ID="628" Action="WRITE"><Connection Source="1" Destination="QueryService1.FieldsToServiceQueryForm.version" /></Request>
-RegisterMoreServices;<Request ID="629" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryService1.QueryService.address" /></Request>
+RegisterMoreServices;<Request ID="629" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryService1.QueryService.address" /></Request>
 RegisterMoreServices;<Request ID="630" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.REQ" /></Request>
 RegisterMoreServices;<Request ID="631" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.REQ" /></Request>
 RegisterMoreServices;<Request ID="632" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.REQ" /></Request>
@@ -706,7 +706,7 @@
 RegisterMoreServices;<Request ID="706" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.CNF" Destination="Sequencer.E_DEMUX_1_1.EI" /></Request>
 RegisterMoreServices;<Request ID="707" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="QueryService1.FieldsToServiceQueryForm.REQ" /></Request>
 RegisterMoreServices;<Request ID="708" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="QueryService2.FieldsToServiceQueryForm.REQ" /></Request>
-RegisterMoreServices;<Request ID="709" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.INIT" /></Request>
+RegisterMoreServices;<Request ID="709" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.REQ" /></Request>
 RegisterMoreServices;<Request ID="710" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO3" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServices;<Request ID="711" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServices;<Request ID="712" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="Sequencer.E_MERGE.EI2" /></Request>
@@ -721,130 +721,130 @@
 RegisterMoreServices;<Request ID="721" Action="CREATE"><Connection Source="Sequencer.E_CTU.CV" Destination="Sequencer.F_GT_1.IN1" /></Request>
 RegisterMoreServices;<Request ID="722" Action="CREATE"><Connection Source="Sequencer.F_GT_1.OUT" Destination="Sequencer.E_SWITCH_1.G" /></Request>
 RegisterMoreServices;<Request ID="723" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.OUT" Destination="Sequencer.E_DEMUX_1_1.K" /></Request>
-RegisterMoreServices;<Request ID="724" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="S2Reg.S" /></Request>
-RegisterMoreServices;<Request ID="725" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="S2Reg.R" /></Request>
-RegisterMoreServices;<Request ID="726" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
-RegisterMoreServices;<Request ID="727" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
-RegisterMoreServices;<Request ID="728" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
-RegisterMoreServices;<Request ID="729" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
-RegisterMoreServices;<Request ID="730" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
-RegisterMoreServices;<Request ID="731" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="732" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
-RegisterMoreServices;<Request ID="733" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceHTTP_1.registerService" /></Request>
-RegisterMoreServices;<Request ID="734" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneRegister" Destination="S1Reg.S" /></Request>
-RegisterMoreServices;<Request ID="735" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneUnregister" Destination="S1Reg.R" /></Request>
-RegisterMoreServices;<Request ID="736" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO1" Destination="RegisterService1.RegisterService.register" /></Request>
-RegisterMoreServices;<Request ID="737" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO0" Destination="RegisterService1.RegisterService.unregister" /></Request>
-RegisterMoreServices;<Request ID="738" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService1.E_REND.EI2" /></Request>
-RegisterMoreServices;<Request ID="739" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_SWITCH.EI" /></Request>
-RegisterMoreServices;<Request ID="740" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_REND.R" /></Request>
-RegisterMoreServices;<Request ID="741" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService1.RegisterService.serviceRegistryEntry" /></Request>
-RegisterMoreServices;<Request ID="742" Action="CREATE"><Connection Source="RegisterService1.E_SR.Q" Destination="RegisterService1.E_SWITCH.G" /></Request>
-RegisterMoreServices;<Request ID="743" Action="CREATE"><Connection Source="RegisterService1.RegisterService.registerService" Destination="RegisterService1.RegisterServiceHTTP_1.registerService" /></Request>
-RegisterMoreServices;<Request ID="744" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.REQ" /></Request>
-RegisterMoreServices;<Request ID="745" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.REQ" /></Request>
-RegisterMoreServices;<Request ID="746" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.REQ" /></Request>
-RegisterMoreServices;<Request ID="747" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.CNF" Destination="E_SWITCH_1.EI" /></Request>
-RegisterMoreServices;<Request ID="748" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.REQ" /></Request>
-RegisterMoreServices;<Request ID="749" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.REQ" /></Request>
-RegisterMoreServices;<Request ID="750" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="751" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.REQ" /></Request>
-RegisterMoreServices;<Request ID="752" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.REQ" /></Request>
-RegisterMoreServices;<Request ID="753" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.REQ" /></Request>
-RegisterMoreServices;<Request ID="754" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_1" /></Request>
-RegisterMoreServices;<Request ID="755" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.IN" /></Request>
-RegisterMoreServices;<Request ID="756" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_3" /></Request>
-RegisterMoreServices;<Request ID="757" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.IN" /></Request>
-RegisterMoreServices;<Request ID="758" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.OUT" Destination="F_EQ_1_1.IN2" /></Request>
-RegisterMoreServices;<Request ID="759" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.in_struct" /></Request>
-RegisterMoreServices;<Request ID="760" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.in_struct" /></Request>
-RegisterMoreServices;<Request ID="761" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.in_struct" /></Request>
-RegisterMoreServices;<Request ID="762" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.IN" /></Request>
-RegisterMoreServices;<Request ID="763" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_1" /></Request>
-RegisterMoreServices;<Request ID="764" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.IN" /></Request>
-RegisterMoreServices;<Request ID="765" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_2" /></Request>
-RegisterMoreServices;<Request ID="766" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS.REQ" /></Request>
-RegisterMoreServices;<Request ID="767" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.REQ" /></Request>
-RegisterMoreServices;<Request ID="768" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.GetPort.REQ" /></Request>
-RegisterMoreServices;<Request ID="769" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.S2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-RegisterMoreServices;<Request ID="770" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.GetURI.REQ" /></Request>
-RegisterMoreServices;<Request ID="771" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.GetAddress.REQ" /></Request>
-RegisterMoreServices;<Request ID="772" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="773" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.DI2S.REQ" /></Request>
-RegisterMoreServices;<Request ID="774" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.REQ" /></Request>
-RegisterMoreServices;<Request ID="775" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.S2WS.REQ" /></Request>
-RegisterMoreServices;<Request ID="776" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.IN_1" /></Request>
-RegisterMoreServices;<Request ID="777" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS.IN" /></Request>
-RegisterMoreServices;<Request ID="778" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.IN_3" /></Request>
-RegisterMoreServices;<Request ID="779" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_2.DI2S.IN" /></Request>
-RegisterMoreServices;<Request ID="780" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
-RegisterMoreServices;<Request ID="781" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.S2WS.OUT" Destination="F_EQ_3_1.IN2" /></Request>
-RegisterMoreServices;<Request ID="782" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.GetURI.in_struct" /></Request>
-RegisterMoreServices;<Request ID="783" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.GetPort.in_struct" /></Request>
-RegisterMoreServices;<Request ID="784" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.GetAddress.in_struct" /></Request>
-RegisterMoreServices;<Request ID="785" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.IN" /></Request>
-RegisterMoreServices;<Request ID="786" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.IN_1" /></Request>
-RegisterMoreServices;<Request ID="787" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.S2WS.IN" /></Request>
-RegisterMoreServices;<Request ID="788" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.IN_2" /></Request>
+RegisterMoreServices;<Request ID="724" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.REQ" /></Request>
+RegisterMoreServices;<Request ID="725" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.REQ" /></Request>
+RegisterMoreServices;<Request ID="726" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.REQ" /></Request>
+RegisterMoreServices;<Request ID="727" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.CNF" Destination="E_SWITCH_1.EI" /></Request>
+RegisterMoreServices;<Request ID="728" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.REQ" /></Request>
+RegisterMoreServices;<Request ID="729" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.REQ" /></Request>
+RegisterMoreServices;<Request ID="730" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="731" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.REQ" /></Request>
+RegisterMoreServices;<Request ID="732" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.REQ" /></Request>
+RegisterMoreServices;<Request ID="733" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.REQ" /></Request>
+RegisterMoreServices;<Request ID="734" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_1" /></Request>
+RegisterMoreServices;<Request ID="735" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.IN" /></Request>
+RegisterMoreServices;<Request ID="736" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_3" /></Request>
+RegisterMoreServices;<Request ID="737" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.IN" /></Request>
+RegisterMoreServices;<Request ID="738" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.OUT" Destination="F_EQ_1_1.IN2" /></Request>
+RegisterMoreServices;<Request ID="739" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.in_struct" /></Request>
+RegisterMoreServices;<Request ID="740" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.in_struct" /></Request>
+RegisterMoreServices;<Request ID="741" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.in_struct" /></Request>
+RegisterMoreServices;<Request ID="742" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.IN" /></Request>
+RegisterMoreServices;<Request ID="743" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_1" /></Request>
+RegisterMoreServices;<Request ID="744" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.IN" /></Request>
+RegisterMoreServices;<Request ID="745" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_2" /></Request>
+RegisterMoreServices;<Request ID="746" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS.REQ" /></Request>
+RegisterMoreServices;<Request ID="747" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.REQ" /></Request>
+RegisterMoreServices;<Request ID="748" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.GetPort.REQ" /></Request>
+RegisterMoreServices;<Request ID="749" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.S2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+RegisterMoreServices;<Request ID="750" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.GetURI.REQ" /></Request>
+RegisterMoreServices;<Request ID="751" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.GetAddress.REQ" /></Request>
+RegisterMoreServices;<Request ID="752" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="753" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.DI2S.REQ" /></Request>
+RegisterMoreServices;<Request ID="754" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.REQ" /></Request>
+RegisterMoreServices;<Request ID="755" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.S2WS.REQ" /></Request>
+RegisterMoreServices;<Request ID="756" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.IN_1" /></Request>
+RegisterMoreServices;<Request ID="757" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS.IN" /></Request>
+RegisterMoreServices;<Request ID="758" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPort.IN_3" /></Request>
+RegisterMoreServices;<Request ID="759" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_2.DI2S.IN" /></Request>
+RegisterMoreServices;<Request ID="760" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
+RegisterMoreServices;<Request ID="761" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.S2WS.OUT" Destination="F_EQ_3_1.IN2" /></Request>
+RegisterMoreServices;<Request ID="762" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.GetURI.in_struct" /></Request>
+RegisterMoreServices;<Request ID="763" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.GetPort.in_struct" /></Request>
+RegisterMoreServices;<Request ID="764" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.GetAddress.in_struct" /></Request>
+RegisterMoreServices;<Request ID="765" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.IN" /></Request>
+RegisterMoreServices;<Request ID="766" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.IN_1" /></Request>
+RegisterMoreServices;<Request ID="767" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.S2WS.IN" /></Request>
+RegisterMoreServices;<Request ID="768" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.IN_2" /></Request>
+RegisterMoreServices;<Request ID="769" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="S2Reg.S" /></Request>
+RegisterMoreServices;<Request ID="770" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="S2Reg.R" /></Request>
+RegisterMoreServices;<Request ID="771" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
+RegisterMoreServices;<Request ID="772" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
+RegisterMoreServices;<Request ID="773" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
+RegisterMoreServices;<Request ID="774" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
+RegisterMoreServices;<Request ID="775" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
+RegisterMoreServices;<Request ID="776" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="777" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
+RegisterMoreServices;<Request ID="778" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceOpcUa.registerService" /></Request>
+RegisterMoreServices;<Request ID="779" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneRegister" Destination="S1Reg.S" /></Request>
+RegisterMoreServices;<Request ID="780" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneUnregister" Destination="S1Reg.R" /></Request>
+RegisterMoreServices;<Request ID="781" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO1" Destination="RegisterService1.RegisterService.register" /></Request>
+RegisterMoreServices;<Request ID="782" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO0" Destination="RegisterService1.RegisterService.unregister" /></Request>
+RegisterMoreServices;<Request ID="783" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService1.E_REND.EI2" /></Request>
+RegisterMoreServices;<Request ID="784" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_SWITCH.EI" /></Request>
+RegisterMoreServices;<Request ID="785" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_REND.R" /></Request>
+RegisterMoreServices;<Request ID="786" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService1.RegisterService.serviceRegistryEntry" /></Request>
+RegisterMoreServices;<Request ID="787" Action="CREATE"><Connection Source="RegisterService1.E_SR.Q" Destination="RegisterService1.E_SWITCH.G" /></Request>
+RegisterMoreServices;<Request ID="788" Action="CREATE"><Connection Source="RegisterService1.RegisterService.registerService" Destination="RegisterService1.RegisterServiceOpcUa.registerService" /></Request>
 RegisterMoreServices;<Request ID="789" Action="CREATE"><Connection Source="QueryService2.FieldsToServiceQueryForm.CNF" Destination="QueryService2.QueryService.query" /></Request>
 RegisterMoreServices;<Request ID="790" Action="CREATE"><Connection Source="QueryService2.QueryService.queried" Destination="GET_AT_INDEX_2.REQ" /></Request>
 RegisterMoreServices;<Request ID="791" Action="CREATE"><Connection Source="QueryService2.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryService2.QueryService.serviceQueryForm" /></Request>
-RegisterMoreServices;<Request ID="792" Action="CREATE"><Connection Source="QueryService2.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_1.IN_ARRAY" /></Request>
-RegisterMoreServices;<Request ID="793" Action="CREATE"><Connection Source="QueryService2.QueryService.serviceEntries" Destination="GET_AT_INDEX_2.IN_ARRAY" /></Request>
-RegisterMoreServices;<Request ID="794" Action="CREATE"><Connection Source="QueryService2.QueryService.queryServices" Destination="QueryService2.QueryServiceHTTP.queryServices" /></Request>
+RegisterMoreServices;<Request ID="792" Action="CREATE"><Connection Source="QueryService2.QueryService.serviceEntries" Destination="GET_AT_INDEX_2.IN_ARRAY" /></Request>
+RegisterMoreServices;<Request ID="793" Action="CREATE"><Connection Source="QueryService2.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_1.IN_ARRAY" /></Request>
+RegisterMoreServices;<Request ID="794" Action="CREATE"><Connection Source="QueryService2.QueryService.queryServices" Destination="QueryService2.QueryServiceOpcUa.queryServices" /></Request>
 RegisterMoreServices;<Request ID="795" Action="CREATE"><Connection Source="QueryService1.FieldsToServiceQueryForm.CNF" Destination="QueryService1.QueryService.query" /></Request>
 RegisterMoreServices;<Request ID="796" Action="CREATE"><Connection Source="QueryService1.QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
 RegisterMoreServices;<Request ID="797" Action="CREATE"><Connection Source="QueryService1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryService1.QueryService.serviceQueryForm" /></Request>
 RegisterMoreServices;<Request ID="798" Action="CREATE"><Connection Source="QueryService1.QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
 RegisterMoreServices;<Request ID="799" Action="CREATE"><Connection Source="QueryService1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
-RegisterMoreServices;<Request ID="800" Action="CREATE"><Connection Source="QueryService1.QueryService.queryServices" Destination="QueryService1.QueryServiceHTTP.queryServices" /></Request>
-RegisterMoreServices;<Request ID="801" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="Service1RegisteredPos0.REQ" /></Request>
-RegisterMoreServices;<Request ID="802" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="Service1NotRegisteredPos1.REQ" /></Request>
-RegisterMoreServices;<Request ID="803" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="Service2RegisteredPos0.REQ" /></Request>
-RegisterMoreServices;<Request ID="804" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="Service2NotRegisteredPos1.REQ" /></Request>
-RegisterMoreServices;<Request ID="805" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-RegisterMoreServices;<Request ID="806" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GET_AT_INDEX_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="807" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-RegisterMoreServices;<Request ID="808" Action="CREATE"><Connection Source="Service1RegisteredPos0.CNF" Destination="F_EQ.REQ" /></Request>
-RegisterMoreServices;<Request ID="809" Action="CREATE"><Connection Source="Service2RegisteredPos0.CNF" Destination="F_EQ_1_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="810" Action="CREATE"><Connection Source="GET_AT_INDEX_2.CNF" Destination="GET_AT_INDEX_1_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="811" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-RegisterMoreServices;<Request ID="812" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_2.REQ" /></Request>
-RegisterMoreServices;<Request ID="813" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_3.REQ" /></Request>
-RegisterMoreServices;<Request ID="814" Action="CREATE"><Connection Source="F_EQ_3.CNF" Destination="Service1NotRegisteredPos0.REQ" /></Request>
-RegisterMoreServices;<Request ID="815" Action="CREATE"><Connection Source="Service1NotRegisteredPos0.CNF" Destination="F_EQ.REQ" /></Request>
-RegisterMoreServices;<Request ID="816" Action="CREATE"><Connection Source="F_EQ_3_1.CNF" Destination="Service2NotRegisteredPos0.REQ" /></Request>
-RegisterMoreServices;<Request ID="817" Action="CREATE"><Connection Source="E_SWITCH_1.EO1" Destination="F_EQ_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="818" Action="CREATE"><Connection Source="E_SWITCH_1.EO0" Destination="F_EQ_3_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="819" Action="CREATE"><Connection Source="Service2NotRegisteredPos0.CNF" Destination="F_EQ_1_1.REQ" /></Request>
-RegisterMoreServices;<Request ID="820" Action="CREATE"><Connection Source="Service2NotRegisteredPos1.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServices;<Request ID="821" Action="CREATE"><Connection Source="Service1NotRegisteredPos1.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServices;<Request ID="822" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-RegisterMoreServices;<Request ID="823" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-RegisterMoreServices;<Request ID="824" Action="CREATE"><Connection Source="S2Reg.EO" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServices;<Request ID="825" Action="CREATE"><Connection Source="S1Reg.EO" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServices;<Request ID="826" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
-RegisterMoreServices;<Request ID="827" Action="CREATE"><Connection Source="Service1.CNF" Destination="Service2.REQ" /></Request>
-RegisterMoreServices;<Request ID="828" Action="CREATE"><Connection Source="Service2.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServices;<Request ID="829" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-RegisterMoreServices;<Request ID="830" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="Service1RegisteredPos0.check" /></Request>
-RegisterMoreServices;<Request ID="831" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="Service1NotRegisteredPos1.check" /></Request>
-RegisterMoreServices;<Request ID="832" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-RegisterMoreServices;<Request ID="833" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-RegisterMoreServices;<Request ID="834" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="Service2RegisteredPos0.check" /></Request>
-RegisterMoreServices;<Request ID="835" Action="CREATE"><Connection Source="S1Reg.Q" Destination="E_SWITCH.G" /></Request>
-RegisterMoreServices;<Request ID="836" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
-RegisterMoreServices;<Request ID="837" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService1.FieldsToServiceRegistryEntry.provider" /></Request>
-RegisterMoreServices;<Request ID="838" Action="CREATE"><Connection Source="F_EQ_1_1.OUT" Destination="Service2NotRegisteredPos1.check" /></Request>
-RegisterMoreServices;<Request ID="839" Action="CREATE"><Connection Source="S2Reg.Q" Destination="E_SWITCH_1.G" /></Request>
-RegisterMoreServices;<Request ID="840" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-RegisterMoreServices;<Request ID="841" Action="CREATE"><Connection Source="GET_AT_INDEX_2.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-RegisterMoreServices;<Request ID="842" Action="CREATE"><Connection Source="F_EQ_3.OUT" Destination="Service1NotRegisteredPos0.check" /></Request>
-RegisterMoreServices;<Request ID="843" Action="CREATE"><Connection Source="F_EQ_3_1.OUT" Destination="Service2NotRegisteredPos0.check" /></Request>
+RegisterMoreServices;<Request ID="800" Action="CREATE"><Connection Source="QueryService1.QueryService.queryServices" Destination="QueryService1.QueryServiceOpcUa.queryServices" /></Request>
+RegisterMoreServices;<Request ID="801" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+RegisterMoreServices;<Request ID="802" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GET_AT_INDEX_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="803" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_2.REQ" /></Request>
+RegisterMoreServices;<Request ID="804" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="Service2RegisteredPos0.REQ" /></Request>
+RegisterMoreServices;<Request ID="805" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="Service1RegisteredPos0.REQ" /></Request>
+RegisterMoreServices;<Request ID="806" Action="CREATE"><Connection Source="Service1RegisteredPos0.CNF" Destination="F_EQ.REQ" /></Request>
+RegisterMoreServices;<Request ID="807" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="Service1NotRegisteredPos1.REQ" /></Request>
+RegisterMoreServices;<Request ID="808" Action="CREATE"><Connection Source="Service1NotRegisteredPos1.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServices;<Request ID="809" Action="CREATE"><Connection Source="S1Reg.EO" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServices;<Request ID="810" Action="CREATE"><Connection Source="Service2NotRegisteredPos1.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServices;<Request ID="811" Action="CREATE"><Connection Source="Service2RegisteredPos0.CNF" Destination="F_EQ_1_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="812" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="Service2NotRegisteredPos1.REQ" /></Request>
+RegisterMoreServices;<Request ID="813" Action="CREATE"><Connection Source="S2Reg.EO" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServices;<Request ID="814" Action="CREATE"><Connection Source="E_SWITCH_1.EO1" Destination="F_EQ_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="815" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+RegisterMoreServices;<Request ID="816" Action="CREATE"><Connection Source="GET_AT_INDEX_2.CNF" Destination="GET_AT_INDEX_1_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="817" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+RegisterMoreServices;<Request ID="818" Action="CREATE"><Connection Source="Service1NotRegisteredPos0.CNF" Destination="F_EQ.REQ" /></Request>
+RegisterMoreServices;<Request ID="819" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ_3.REQ" /></Request>
+RegisterMoreServices;<Request ID="820" Action="CREATE"><Connection Source="F_EQ_3.CNF" Destination="Service1NotRegisteredPos0.REQ" /></Request>
+RegisterMoreServices;<Request ID="821" Action="CREATE"><Connection Source="E_SWITCH_1.EO0" Destination="F_EQ_3_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="822" Action="CREATE"><Connection Source="F_EQ_3_1.CNF" Destination="Service2NotRegisteredPos0.REQ" /></Request>
+RegisterMoreServices;<Request ID="823" Action="CREATE"><Connection Source="Service2NotRegisteredPos0.CNF" Destination="F_EQ_1_1.REQ" /></Request>
+RegisterMoreServices;<Request ID="824" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
+RegisterMoreServices;<Request ID="825" Action="CREATE"><Connection Source="Service1.CNF" Destination="Service2.REQ" /></Request>
+RegisterMoreServices;<Request ID="826" Action="CREATE"><Connection Source="Service2.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServices;<Request ID="827" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+RegisterMoreServices;<Request ID="828" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+RegisterMoreServices;<Request ID="829" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
+RegisterMoreServices;<Request ID="830" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+RegisterMoreServices;<Request ID="831" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+RegisterMoreServices;<Request ID="832" Action="CREATE"><Connection Source="S1Reg.Q" Destination="E_SWITCH.G" /></Request>
+RegisterMoreServices;<Request ID="833" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="Service2RegisteredPos0.check" /></Request>
+RegisterMoreServices;<Request ID="834" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="Service1RegisteredPos0.check" /></Request>
+RegisterMoreServices;<Request ID="835" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="Service1NotRegisteredPos1.check" /></Request>
+RegisterMoreServices;<Request ID="836" Action="CREATE"><Connection Source="F_EQ_1_1.OUT" Destination="Service2NotRegisteredPos1.check" /></Request>
+RegisterMoreServices;<Request ID="837" Action="CREATE"><Connection Source="S2Reg.Q" Destination="E_SWITCH_1.G" /></Request>
+RegisterMoreServices;<Request ID="838" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+RegisterMoreServices;<Request ID="839" Action="CREATE"><Connection Source="GET_AT_INDEX_2.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+RegisterMoreServices;<Request ID="840" Action="CREATE"><Connection Source="F_EQ_3.OUT" Destination="Service1NotRegisteredPos0.check" /></Request>
+RegisterMoreServices;<Request ID="841" Action="CREATE"><Connection Source="F_EQ_3_1.OUT" Destination="Service2NotRegisteredPos0.check" /></Request>
+RegisterMoreServices;<Request ID="842" Action="CREATE"><Connection Source="Service2.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
+RegisterMoreServices;<Request ID="843" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
 RegisterMoreServices;<Request ID="844" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService1.FieldsToServiceRegistryEntry.providedService" /></Request>
-RegisterMoreServices;<Request ID="845" Action="CREATE"><Connection Source="Service2.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
-RegisterMoreServices;<Request ID="846" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="QueryService1.FieldsToServiceQueryForm.service" /></Request>
-RegisterMoreServices;<Request ID="847" Action="CREATE"><Connection Source="Service2.arrowheadService" Destination="QueryService2.FieldsToServiceQueryForm.service" /></Request>
+RegisterMoreServices;<Request ID="845" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService1.FieldsToServiceRegistryEntry.provider" /></Request>
+RegisterMoreServices;<Request ID="846" Action="CREATE"><Connection Source="Service2.arrowheadService" Destination="QueryService2.FieldsToServiceQueryForm.service" /></Request>
+RegisterMoreServices;<Request ID="847" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="QueryService1.FieldsToServiceQueryForm.service" /></Request>
 RegisterMoreServices;<Request ID="848" Action="START"/>
 ;<Request ID="849" Action="CREATE"><FB Name="SameServiceTwice" Type="EMB_RES" /></Request>
 SameServiceTwice;<Request ID="850" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
@@ -864,113 +864,113 @@
 SameServiceTwice;<Request ID="864" Action="CREATE"><FB Name="Sequencer.F_SUB_1" Type="F_SUB" /></Request>
 SameServiceTwice;<Request ID="865" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer.F_SUB_1.IN2" /></Request>
 SameServiceTwice;<Request ID="866" Action="CREATE"><FB Name="Sequencer.E_SWITCH_1" Type="E_SWITCH" /></Request>
-SameServiceTwice;<Request ID="867" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-SameServiceTwice;<Request ID="868" Action="CREATE"><FB Name="RegisterService2.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-SameServiceTwice;<Request ID="869" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
-SameServiceTwice;<Request ID="870" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
-SameServiceTwice;<Request ID="871" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
-SameServiceTwice;<Request ID="872" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
-SameServiceTwice;<Request ID="873" Action="CREATE"><FB Name="Service1" Type="FieldsToArrowheadService" /></Request>
-SameServiceTwice;<Request ID="874" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="Service1.serviceDefinition" /></Request>
-SameServiceTwice;<Request ID="875" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service1.interfaces" /></Request>
-SameServiceTwice;<Request ID="876" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service1.serviceMetadata" /></Request>
-SameServiceTwice;<Request ID="877" Action="CREATE"><FB Name="RegisterService1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-SameServiceTwice;<Request ID="878" Action="CREATE"><FB Name="RegisterService1.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-SameServiceTwice;<Request ID="879" Action="CREATE"><FB Name="RegisterService1.RegisterService" Type="RegisterService" /></Request>
-SameServiceTwice;<Request ID="880" Action="CREATE"><FB Name="RegisterService1.E_SR" Type="E_SR" /></Request>
-SameServiceTwice;<Request ID="881" Action="CREATE"><FB Name="RegisterService1.E_SWITCH" Type="E_SWITCH" /></Request>
-SameServiceTwice;<Request ID="882" Action="CREATE"><FB Name="RegisterService1.E_REND" Type="E_REND" /></Request>
-SameServiceTwice;<Request ID="883" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-SameServiceTwice;<Request ID="884" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
-SameServiceTwice;<Request ID="885" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-SameServiceTwice;<Request ID="886" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
-SameServiceTwice;<Request ID="887" Action="CREATE"><FB Name="QueryServiceHTTPSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-SameServiceTwice;<Request ID="888" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryService" Type="QueryService" /></Request>
-SameServiceTwice;<Request ID="889" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-SameServiceTwice;<Request ID="890" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
-SameServiceTwice;<Request ID="891" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
-SameServiceTwice;<Request ID="892" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
-SameServiceTwice;<Request ID="893" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
-SameServiceTwice;<Request ID="894" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-SameServiceTwice;<Request ID="895" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
-SameServiceTwice;<Request ID="896" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
-SameServiceTwice;<Request ID="897" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
-SameServiceTwice;<Request ID="898" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-SameServiceTwice;<Request ID="899" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
-SameServiceTwice;<Request ID="900" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-SameServiceTwice;<Request ID="901" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-SameServiceTwice;<Request ID="902" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
-SameServiceTwice;<Request ID="903" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-SameServiceTwice;<Request ID="904" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-SameServiceTwice;<Request ID="905" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
-SameServiceTwice;<Request ID="906" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
-SameServiceTwice;<Request ID="907" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
-SameServiceTwice;<Request ID="908" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-SameServiceTwice;<Request ID="909" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-SameServiceTwice;<Request ID="910" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-SameServiceTwice;<Request ID="911" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
-SameServiceTwice;<Request ID="912" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
-SameServiceTwice;<Request ID="913" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
-SameServiceTwice;<Request ID="914" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-SameServiceTwice;<Request ID="915" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
-SameServiceTwice;<Request ID="916" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-SameServiceTwice;<Request ID="917" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-SameServiceTwice;<Request ID="918" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
-SameServiceTwice;<Request ID="919" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-SameServiceTwice;<Request ID="920" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-SameServiceTwice;<Request ID="921" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-SameServiceTwice;<Request ID="922" Action="CREATE"><FB Name="Service1RegisteredPos0" Type="TEST_CONDITION" /></Request>
-SameServiceTwice;<Request ID="923" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="924" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_2.IN1" /></Request>
-SameServiceTwice;<Request ID="925" Action="CREATE"><FB Name="BothServicesRegistered" Type="TEST_CONDITION" /></Request>
-SameServiceTwice;<Request ID="926" Action="CREATE"><FB Name="F_EQ_3" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="927" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start2" Destination="F_EQ_3.IN1" /></Request>
-SameServiceTwice;<Request ID="928" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="929" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ.IN1" /></Request>
-SameServiceTwice;<Request ID="930" Action="CREATE"><FB Name="F_EQ_2_1" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="931" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start2" Destination="F_EQ_2_1.IN1" /></Request>
-SameServiceTwice;<Request ID="932" Action="CREATE"><FB Name="F_EQ_3_1" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="933" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_3_1.IN1" /></Request>
-SameServiceTwice;<Request ID="934" Action="CREATE"><FB Name="Service2RegisteredPos0" Type="TEST_CONDITION" /></Request>
-SameServiceTwice;<Request ID="935" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="936" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start2" Destination="F_EQ_1.IN1" /></Request>
-SameServiceTwice;<Request ID="937" Action="CREATE"><FB Name="BothServicesNotRegistered" Type="TEST_CONDITION" /></Request>
-SameServiceTwice;<Request ID="938" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="939" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1.IN1" /></Request>
-SameServiceTwice;<Request ID="940" Action="CREATE"><FB Name="F_EQ_1_1_1" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="941" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1_1.IN1" /></Request>
-SameServiceTwice;<Request ID="942" Action="CREATE"><FB Name="Service2NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
-SameServiceTwice;<Request ID="943" Action="CREATE"><FB Name="F_EQ_4" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="944" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4.IN1" /></Request>
-SameServiceTwice;<Request ID="945" Action="CREATE"><FB Name="F_EQ_4_1" Type="F_EQ" /></Request>
-SameServiceTwice;<Request ID="946" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1.IN1" /></Request>
-SameServiceTwice;<Request ID="947" Action="CREATE"><FB Name="Service1NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
-SameServiceTwice;<Request ID="948" Action="CREATE"><FB Name="F_AND" Type="F_AND" /></Request>
-SameServiceTwice;<Request ID="949" Action="CREATE"><FB Name="E_MERGE" Type="E_MERGE" /></Request>
-SameServiceTwice;<Request ID="950" Action="CREATE"><FB Name="E_MERGE_1" Type="E_MERGE" /></Request>
-SameServiceTwice;<Request ID="951" Action="CREATE"><FB Name="F_AND_1" Type="F_AND" /></Request>
-SameServiceTwice;<Request ID="952" Action="CREATE"><FB Name="F_OR" Type="F_OR" /></Request>
-SameServiceTwice;<Request ID="953" Action="CREATE"><FB Name="F_AND_1_1" Type="F_AND" /></Request>
-SameServiceTwice;<Request ID="954" Action="CREATE"><FB Name="BOOL2BOOL" Type="BOOL2BOOL" /></Request>
-SameServiceTwice;<Request ID="955" Action="CREATE"><FB Name="BOOL2BOOL_1" Type="BOOL2BOOL" /></Request>
-SameServiceTwice;<Request ID="956" Action="CREATE"><FB Name="FieldsToArrowheadSystem_1" Type="FieldsToArrowheadSystem" /></Request>
-SameServiceTwice;<Request ID="957" Action="WRITE"><Connection Source="WSTRING#systemTestName2" Destination="FieldsToArrowheadSystem_1.systemName" /></Request>
-SameServiceTwice;<Request ID="958" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem_1.address" /></Request>
-SameServiceTwice;<Request ID="959" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem_1.port" /></Request>
-SameServiceTwice;<Request ID="960" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-SameServiceTwice;<Request ID="961" Action="WRITE"><Connection Source="WSTRIGN#sameServiceTwiceReady" Destination="PUBL_0.ID" /></Request>
+SameServiceTwice;<Request ID="867" Action="CREATE"><FB Name="Service1" Type="FieldsToArrowheadService" /></Request>
+SameServiceTwice;<Request ID="868" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="Service1.serviceDefinition" /></Request>
+SameServiceTwice;<Request ID="869" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service1.interfaces" /></Request>
+SameServiceTwice;<Request ID="870" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service1.serviceMetadata" /></Request>
+SameServiceTwice;<Request ID="871" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+SameServiceTwice;<Request ID="872" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+SameServiceTwice;<Request ID="873" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+SameServiceTwice;<Request ID="874" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
+SameServiceTwice;<Request ID="875" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
+SameServiceTwice;<Request ID="876" Action="WRITE"><Connection Source="1" Destination="GET_AT_INDEX_1.INDEX" /></Request>
+SameServiceTwice;<Request ID="877" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
+SameServiceTwice;<Request ID="878" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
+SameServiceTwice;<Request ID="879" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+SameServiceTwice;<Request ID="880" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
+SameServiceTwice;<Request ID="881" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
+SameServiceTwice;<Request ID="882" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
+SameServiceTwice;<Request ID="883" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+SameServiceTwice;<Request ID="884" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
+SameServiceTwice;<Request ID="885" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+SameServiceTwice;<Request ID="886" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+SameServiceTwice;<Request ID="887" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
+SameServiceTwice;<Request ID="888" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+SameServiceTwice;<Request ID="889" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+SameServiceTwice;<Request ID="890" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
+SameServiceTwice;<Request ID="891" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
+SameServiceTwice;<Request ID="892" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
+SameServiceTwice;<Request ID="893" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+SameServiceTwice;<Request ID="894" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+SameServiceTwice;<Request ID="895" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+SameServiceTwice;<Request ID="896" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
+SameServiceTwice;<Request ID="897" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
+SameServiceTwice;<Request ID="898" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
+SameServiceTwice;<Request ID="899" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+SameServiceTwice;<Request ID="900" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
+SameServiceTwice;<Request ID="901" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+SameServiceTwice;<Request ID="902" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+SameServiceTwice;<Request ID="903" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
+SameServiceTwice;<Request ID="904" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+SameServiceTwice;<Request ID="905" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+SameServiceTwice;<Request ID="906" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+SameServiceTwice;<Request ID="907" Action="CREATE"><FB Name="Service1RegisteredPos0" Type="TEST_CONDITION" /></Request>
+SameServiceTwice;<Request ID="908" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="909" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_2.IN1" /></Request>
+SameServiceTwice;<Request ID="910" Action="CREATE"><FB Name="BothServicesRegistered" Type="TEST_CONDITION" /></Request>
+SameServiceTwice;<Request ID="911" Action="CREATE"><FB Name="F_EQ_3" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="912" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start2" Destination="F_EQ_3.IN1" /></Request>
+SameServiceTwice;<Request ID="913" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="914" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ.IN1" /></Request>
+SameServiceTwice;<Request ID="915" Action="CREATE"><FB Name="F_EQ_2_1" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="916" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start2" Destination="F_EQ_2_1.IN1" /></Request>
+SameServiceTwice;<Request ID="917" Action="CREATE"><FB Name="F_EQ_3_1" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="918" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_3_1.IN1" /></Request>
+SameServiceTwice;<Request ID="919" Action="CREATE"><FB Name="Service2RegisteredPos0" Type="TEST_CONDITION" /></Request>
+SameServiceTwice;<Request ID="920" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="921" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start2" Destination="F_EQ_1.IN1" /></Request>
+SameServiceTwice;<Request ID="922" Action="CREATE"><FB Name="BothServicesNotRegistered" Type="TEST_CONDITION" /></Request>
+SameServiceTwice;<Request ID="923" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="924" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1.IN1" /></Request>
+SameServiceTwice;<Request ID="925" Action="CREATE"><FB Name="F_EQ_1_1_1" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="926" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1_1.IN1" /></Request>
+SameServiceTwice;<Request ID="927" Action="CREATE"><FB Name="Service2NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
+SameServiceTwice;<Request ID="928" Action="CREATE"><FB Name="F_EQ_4" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="929" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4.IN1" /></Request>
+SameServiceTwice;<Request ID="930" Action="CREATE"><FB Name="F_EQ_4_1" Type="F_EQ" /></Request>
+SameServiceTwice;<Request ID="931" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1.IN1" /></Request>
+SameServiceTwice;<Request ID="932" Action="CREATE"><FB Name="Service1NotRegisteredPos1" Type="TEST_CONDITION" /></Request>
+SameServiceTwice;<Request ID="933" Action="CREATE"><FB Name="F_AND" Type="F_AND" /></Request>
+SameServiceTwice;<Request ID="934" Action="CREATE"><FB Name="E_MERGE" Type="E_MERGE" /></Request>
+SameServiceTwice;<Request ID="935" Action="CREATE"><FB Name="E_MERGE_1" Type="E_MERGE" /></Request>
+SameServiceTwice;<Request ID="936" Action="CREATE"><FB Name="F_AND_1" Type="F_AND" /></Request>
+SameServiceTwice;<Request ID="937" Action="CREATE"><FB Name="F_OR" Type="F_OR" /></Request>
+SameServiceTwice;<Request ID="938" Action="CREATE"><FB Name="F_AND_1_1" Type="F_AND" /></Request>
+SameServiceTwice;<Request ID="939" Action="CREATE"><FB Name="BOOL2BOOL" Type="BOOL2BOOL" /></Request>
+SameServiceTwice;<Request ID="940" Action="CREATE"><FB Name="BOOL2BOOL_1" Type="BOOL2BOOL" /></Request>
+SameServiceTwice;<Request ID="941" Action="CREATE"><FB Name="FieldsToArrowheadSystem_1" Type="FieldsToArrowheadSystem" /></Request>
+SameServiceTwice;<Request ID="942" Action="WRITE"><Connection Source="WSTRING#systemTestName2" Destination="FieldsToArrowheadSystem_1.systemName" /></Request>
+SameServiceTwice;<Request ID="943" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem_1.address" /></Request>
+SameServiceTwice;<Request ID="944" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem_1.port" /></Request>
+SameServiceTwice;<Request ID="945" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+SameServiceTwice;<Request ID="946" Action="WRITE"><Connection Source="WSTRIGN#sameServiceTwiceReady" Destination="PUBL_0.ID" /></Request>
+SameServiceTwice;<Request ID="947" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+SameServiceTwice;<Request ID="948" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
+SameServiceTwice;<Request ID="949" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
+SameServiceTwice;<Request ID="950" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
+SameServiceTwice;<Request ID="951" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
+SameServiceTwice;<Request ID="952" Action="CREATE"><FB Name="RegisterService2.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+SameServiceTwice;<Request ID="953" Action="CREATE"><FB Name="RegisterService1.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+SameServiceTwice;<Request ID="954" Action="CREATE"><FB Name="RegisterService1.RegisterService" Type="RegisterService" /></Request>
+SameServiceTwice;<Request ID="955" Action="CREATE"><FB Name="RegisterService1.E_SR" Type="E_SR" /></Request>
+SameServiceTwice;<Request ID="956" Action="CREATE"><FB Name="RegisterService1.E_SWITCH" Type="E_SWITCH" /></Request>
+SameServiceTwice;<Request ID="957" Action="CREATE"><FB Name="RegisterService1.E_REND" Type="E_REND" /></Request>
+SameServiceTwice;<Request ID="958" Action="CREATE"><FB Name="RegisterService1.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+SameServiceTwice;<Request ID="959" Action="CREATE"><FB Name="QueryServiceHTTPSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+SameServiceTwice;<Request ID="960" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryService" Type="QueryService" /></Request>
+SameServiceTwice;<Request ID="961" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
 SameServiceTwice;<Request ID="962" Action="WRITE"><Connection Source="/serviceTest/start2" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
 SameServiceTwice;<Request ID="963" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
 SameServiceTwice;<Request ID="964" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
-SameServiceTwice;<Request ID="965" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
-SameServiceTwice;<Request ID="966" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
+SameServiceTwice;<Request ID="965" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
+SameServiceTwice;<Request ID="966" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
 SameServiceTwice;<Request ID="967" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterService1.FieldsToServiceRegistryEntry.serviceURI" /></Request>
 SameServiceTwice;<Request ID="968" Action="WRITE"><Connection Source="1" Destination="RegisterService1.FieldsToServiceRegistryEntry.version" /></Request>
 SameServiceTwice;<Request ID="969" Action="WRITE"><Connection Source="false" Destination="RegisterService1.FieldsToServiceRegistryEntry.udp" /></Request>
-SameServiceTwice;<Request ID="970" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService1.FieldsToServiceRegistryEntry.metadata" /></Request>
-SameServiceTwice;<Request ID="971" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService1.RegisterService.endpoint" /></Request>
+SameServiceTwice;<Request ID="970" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService1.FieldsToServiceRegistryEntry.metadata" /></Request>
+SameServiceTwice;<Request ID="971" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService1.RegisterService.endpoint" /></Request>
 SameServiceTwice;<Request ID="972" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.version" /></Request>
-SameServiceTwice;<Request ID="973" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub.QueryService.address" /></Request>
+SameServiceTwice;<Request ID="973" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub.QueryService.address" /></Request>
 SameServiceTwice;<Request ID="974" Action="CREATE"><Connection Source="Sequencer.E_DEMUX.EO0" Destination="RegisterService1.E_SR.S" /></Request>
 SameServiceTwice;<Request ID="975" Action="CREATE"><Connection Source="Sequencer.E_DEMUX.EO0" Destination="RegisterService1.FieldsToServiceRegistryEntry.REQ" /></Request>
 SameServiceTwice;<Request ID="976" Action="CREATE"><Connection Source="Sequencer.E_DEMUX.EO0" Destination="RegisterService1.E_REND.EI1" /></Request>
@@ -1005,7 +1005,7 @@
 SameServiceTwice;<Request ID="1,005" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.CNF" Destination="Sequencer.E_DEMUX_1_1.EI" /></Request>
 SameServiceTwice;<Request ID="1,006" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.REQ" /></Request>
 SameServiceTwice;<Request ID="1,007" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="F_EQ_1_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,008" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.INIT" /></Request>
+SameServiceTwice;<Request ID="1,008" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0.REQ" /></Request>
 SameServiceTwice;<Request ID="1,009" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO3" Destination="Sequencer.E_MERGE.EI2" /></Request>
 SameServiceTwice;<Request ID="1,010" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="Sequencer.E_MERGE.EI2" /></Request>
 SameServiceTwice;<Request ID="1,011" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="Sequencer.E_MERGE.EI2" /></Request>
@@ -1020,756 +1020,756 @@
 SameServiceTwice;<Request ID="1,020" Action="CREATE"><Connection Source="Sequencer.E_CTU.CV" Destination="Sequencer.F_GT_1.IN1" /></Request>
 SameServiceTwice;<Request ID="1,021" Action="CREATE"><Connection Source="Sequencer.F_GT_1.OUT" Destination="Sequencer.E_SWITCH_1.G" /></Request>
 SameServiceTwice;<Request ID="1,022" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.OUT" Destination="Sequencer.E_DEMUX_1_1.K" /></Request>
-SameServiceTwice;<Request ID="1,023" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="E_MERGE_1.EI1" /></Request>
-SameServiceTwice;<Request ID="1,024" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="E_MERGE_1.EI2" /></Request>
-SameServiceTwice;<Request ID="1,025" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
-SameServiceTwice;<Request ID="1,026" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
-SameServiceTwice;<Request ID="1,027" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
-SameServiceTwice;<Request ID="1,028" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
-SameServiceTwice;<Request ID="1,029" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
-SameServiceTwice;<Request ID="1,030" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
-SameServiceTwice;<Request ID="1,031" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
-SameServiceTwice;<Request ID="1,032" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceHTTP_1.registerService" /></Request>
-SameServiceTwice;<Request ID="1,033" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneRegister" Destination="E_MERGE_1.EI1" /></Request>
-SameServiceTwice;<Request ID="1,034" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneUnregister" Destination="E_MERGE_1.EI2" /></Request>
-SameServiceTwice;<Request ID="1,035" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO1" Destination="RegisterService1.RegisterService.register" /></Request>
-SameServiceTwice;<Request ID="1,036" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO0" Destination="RegisterService1.RegisterService.unregister" /></Request>
-SameServiceTwice;<Request ID="1,037" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService1.E_REND.EI2" /></Request>
-SameServiceTwice;<Request ID="1,038" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_SWITCH.EI" /></Request>
-SameServiceTwice;<Request ID="1,039" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_REND.R" /></Request>
-SameServiceTwice;<Request ID="1,040" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService1.RegisterService.serviceRegistryEntry" /></Request>
-SameServiceTwice;<Request ID="1,041" Action="CREATE"><Connection Source="RegisterService1.E_SR.Q" Destination="RegisterService1.E_SWITCH.G" /></Request>
-SameServiceTwice;<Request ID="1,042" Action="CREATE"><Connection Source="RegisterService1.RegisterService.registerService" Destination="RegisterService1.RegisterServiceHTTP_1.registerService" /></Request>
-SameServiceTwice;<Request ID="1,043" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub.QueryService.query" /></Request>
-SameServiceTwice;<Request ID="1,044" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
-SameServiceTwice;<Request ID="1,045" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub.QueryService.serviceQueryForm" /></Request>
-SameServiceTwice;<Request ID="1,046" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
-SameServiceTwice;<Request ID="1,047" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
-SameServiceTwice;<Request ID="1,048" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queryServices" Destination="QueryServiceHTTPSub.QueryServiceHTTP.queryServices" /></Request>
-SameServiceTwice;<Request ID="1,049" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.REQ" /></Request>
-SameServiceTwice;<Request ID="1,050" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPort.REQ" /></Request>
-SameServiceTwice;<Request ID="1,051" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetPort.REQ" /></Request>
-SameServiceTwice;<Request ID="1,052" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-SameServiceTwice;<Request ID="1,053" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetURI.REQ" /></Request>
-SameServiceTwice;<Request ID="1,054" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.REQ" /></Request>
-SameServiceTwice;<Request ID="1,055" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,056" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.DI2S.REQ" /></Request>
-SameServiceTwice;<Request ID="1,057" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.REQ" /></Request>
-SameServiceTwice;<Request ID="1,058" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.S2WS.REQ" /></Request>
-SameServiceTwice;<Request ID="1,059" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_1" /></Request>
-SameServiceTwice;<Request ID="1,060" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.IN" /></Request>
-SameServiceTwice;<Request ID="1,061" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_3" /></Request>
-SameServiceTwice;<Request ID="1,062" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry.DI2S.IN" /></Request>
-SameServiceTwice;<Request ID="1,063" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_3.IN2" /></Request>
-SameServiceTwice;<Request ID="1,064" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ.IN2" /></Request>
-SameServiceTwice;<Request ID="1,065" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_3_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,066" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,067" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_1_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,068" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetURI.in_struct" /></Request>
-SameServiceTwice;<Request ID="1,069" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetPort.in_struct" /></Request>
-SameServiceTwice;<Request ID="1,070" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.in_struct" /></Request>
-SameServiceTwice;<Request ID="1,071" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.IN" /></Request>
-SameServiceTwice;<Request ID="1,072" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_1" /></Request>
-SameServiceTwice;<Request ID="1,073" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry.S2WS.IN" /></Request>
-SameServiceTwice;<Request ID="1,074" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_2" /></Request>
-SameServiceTwice;<Request ID="1,075" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.REQ" /></Request>
-SameServiceTwice;<Request ID="1,076" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.REQ" /></Request>
-SameServiceTwice;<Request ID="1,077" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.REQ" /></Request>
-SameServiceTwice;<Request ID="1,078" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-SameServiceTwice;<Request ID="1,079" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.REQ" /></Request>
-SameServiceTwice;<Request ID="1,080" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.REQ" /></Request>
-SameServiceTwice;<Request ID="1,081" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,082" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.REQ" /></Request>
-SameServiceTwice;<Request ID="1,083" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.REQ" /></Request>
-SameServiceTwice;<Request ID="1,084" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.REQ" /></Request>
-SameServiceTwice;<Request ID="1,085" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_1" /></Request>
-SameServiceTwice;<Request ID="1,086" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.IN" /></Request>
-SameServiceTwice;<Request ID="1,087" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_3" /></Request>
-SameServiceTwice;<Request ID="1,088" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.IN" /></Request>
-SameServiceTwice;<Request ID="1,089" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_2.IN2" /></Request>
-SameServiceTwice;<Request ID="1,090" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_2_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,091" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_1_1_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,092" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_4.IN2" /></Request>
-SameServiceTwice;<Request ID="1,093" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_4_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,094" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.in_struct" /></Request>
-SameServiceTwice;<Request ID="1,095" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.in_struct" /></Request>
-SameServiceTwice;<Request ID="1,096" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.in_struct" /></Request>
-SameServiceTwice;<Request ID="1,097" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.IN" /></Request>
-SameServiceTwice;<Request ID="1,098" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_1" /></Request>
-SameServiceTwice;<Request ID="1,099" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.IN" /></Request>
-SameServiceTwice;<Request ID="1,100" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_2" /></Request>
-SameServiceTwice;<Request ID="1,101" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,102" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-SameServiceTwice;<Request ID="1,103" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GET_AT_INDEX_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,104" Action="CREATE"><Connection Source="F_EQ_3.CNF" Destination="F_EQ_2.REQ" /></Request>
-SameServiceTwice;<Request ID="1,105" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="Service1RegisteredPos0.REQ" /></Request>
-SameServiceTwice;<Request ID="1,106" Action="CREATE"><Connection Source="F_EQ_3_1.CNF" Destination="F_EQ_2_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,107" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="Service2RegisteredPos0.REQ" /></Request>
-SameServiceTwice;<Request ID="1,108" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="F_EQ_1_1_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,109" Action="CREATE"><Connection Source="Service1RegisteredPos0.CNF" Destination="F_EQ_4.REQ" /></Request>
-SameServiceTwice;<Request ID="1,110" Action="CREATE"><Connection Source="F_EQ_4.CNF" Destination="Service2NotRegisteredPos1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,111" Action="CREATE"><Connection Source="Service2RegisteredPos0.CNF" Destination="F_EQ_4_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,112" Action="CREATE"><Connection Source="F_EQ_4_1.CNF" Destination="Service1NotRegisteredPos1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,113" Action="CREATE"><Connection Source="F_EQ_1_1_1.CNF" Destination="F_AND.REQ" /></Request>
-SameServiceTwice;<Request ID="1,114" Action="CREATE"><Connection Source="F_AND.CNF" Destination="BothServicesNotRegistered.REQ" /></Request>
-SameServiceTwice;<Request ID="1,115" Action="CREATE"><Connection Source="BothServicesRegistered.CNF" Destination="E_MERGE.EI1" /></Request>
-SameServiceTwice;<Request ID="1,116" Action="CREATE"><Connection Source="BothServicesNotRegistered.CNF" Destination="E_MERGE.EI2" /></Request>
-SameServiceTwice;<Request ID="1,117" Action="CREATE"><Connection Source="Service1NotRegisteredPos1.CNF" Destination="E_MERGE.EI2" /></Request>
-SameServiceTwice;<Request ID="1,118" Action="CREATE"><Connection Source="Service2NotRegisteredPos1.CNF" Destination="E_MERGE.EI2" /></Request>
-SameServiceTwice;<Request ID="1,119" Action="CREATE"><Connection Source="E_MERGE.EO" Destination="Sequencer.F_GT.REQ" /></Request>
-SameServiceTwice;<Request ID="1,120" Action="CREATE"><Connection Source="E_MERGE_1.EO" Destination="Sequencer.F_GT.REQ" /></Request>
-SameServiceTwice;<Request ID="1,121" Action="CREATE"><Connection Source="F_EQ_2_1.CNF" Destination="F_AND_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,122" Action="CREATE"><Connection Source="F_OR.CNF" Destination="BothServicesRegistered.REQ" /></Request>
-SameServiceTwice;<Request ID="1,123" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="F_AND_1_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,124" Action="CREATE"><Connection Source="F_AND_1.CNF" Destination="BOOL2BOOL.REQ" /></Request>
-SameServiceTwice;<Request ID="1,125" Action="CREATE"><Connection Source="BOOL2BOOL.CNF" Destination="F_EQ_3.REQ" /></Request>
-SameServiceTwice;<Request ID="1,126" Action="CREATE"><Connection Source="F_AND_1_1.CNF" Destination="BOOL2BOOL_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,127" Action="CREATE"><Connection Source="BOOL2BOOL_1.CNF" Destination="F_OR.REQ" /></Request>
-SameServiceTwice;<Request ID="1,128" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-SameServiceTwice;<Request ID="1,129" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-SameServiceTwice;<Request ID="1,130" Action="CREATE"><Connection Source="Service1.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-SameServiceTwice;<Request ID="1,131" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-SameServiceTwice;<Request ID="1,132" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem_1.REQ" /></Request>
-SameServiceTwice;<Request ID="1,133" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-SameServiceTwice;<Request ID="1,134" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
-SameServiceTwice;<Request ID="1,135" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService1.FieldsToServiceRegistryEntry.providedService" /></Request>
-SameServiceTwice;<Request ID="1,136" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService1.FieldsToServiceRegistryEntry.provider" /></Request>
-SameServiceTwice;<Request ID="1,137" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.service" /></Request>
-SameServiceTwice;<Request ID="1,138" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-SameServiceTwice;<Request ID="1,139" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-SameServiceTwice;<Request ID="1,140" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="Service1RegisteredPos0.check" /></Request>
-SameServiceTwice;<Request ID="1,141" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="Service2RegisteredPos0.check" /></Request>
-SameServiceTwice;<Request ID="1,142" Action="CREATE"><Connection Source="F_EQ_4.OUT" Destination="Service2NotRegisteredPos1.check" /></Request>
-SameServiceTwice;<Request ID="1,143" Action="CREATE"><Connection Source="F_EQ_4_1.OUT" Destination="Service1NotRegisteredPos1.check" /></Request>
-SameServiceTwice;<Request ID="1,144" Action="CREATE"><Connection Source="F_EQ_1_1.OUT" Destination="F_AND.IN1" /></Request>
-SameServiceTwice;<Request ID="1,145" Action="CREATE"><Connection Source="F_EQ_1_1_1.OUT" Destination="F_AND.IN2" /></Request>
-SameServiceTwice;<Request ID="1,146" Action="CREATE"><Connection Source="F_AND.OUT" Destination="BothServicesNotRegistered.check" /></Request>
-SameServiceTwice;<Request ID="1,147" Action="CREATE"><Connection Source="F_EQ_3_1.OUT" Destination="F_AND_1.IN1" /></Request>
-SameServiceTwice;<Request ID="1,148" Action="CREATE"><Connection Source="F_EQ_2_1.OUT" Destination="F_AND_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,149" Action="CREATE"><Connection Source="F_OR.OUT" Destination="BothServicesRegistered.check" /></Request>
-SameServiceTwice;<Request ID="1,150" Action="CREATE"><Connection Source="F_EQ_3.OUT" Destination="F_AND_1_1.IN1" /></Request>
-SameServiceTwice;<Request ID="1,151" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="F_AND_1_1.IN2" /></Request>
-SameServiceTwice;<Request ID="1,152" Action="CREATE"><Connection Source="F_AND_1.OUT" Destination="BOOL2BOOL.IN" /></Request>
-SameServiceTwice;<Request ID="1,153" Action="CREATE"><Connection Source="BOOL2BOOL.OUT" Destination="F_OR.IN1" /></Request>
-SameServiceTwice;<Request ID="1,154" Action="CREATE"><Connection Source="F_AND_1_1.OUT" Destination="BOOL2BOOL_1.IN" /></Request>
-SameServiceTwice;<Request ID="1,155" Action="CREATE"><Connection Source="BOOL2BOOL_1.OUT" Destination="F_OR.IN2" /></Request>
-SameServiceTwice;<Request ID="1,156" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
+SameServiceTwice;<Request ID="1,023" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.REQ" /></Request>
+SameServiceTwice;<Request ID="1,024" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPort.REQ" /></Request>
+SameServiceTwice;<Request ID="1,025" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetPort.REQ" /></Request>
+SameServiceTwice;<Request ID="1,026" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+SameServiceTwice;<Request ID="1,027" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetURI.REQ" /></Request>
+SameServiceTwice;<Request ID="1,028" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.REQ" /></Request>
+SameServiceTwice;<Request ID="1,029" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,030" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.DI2S.REQ" /></Request>
+SameServiceTwice;<Request ID="1,031" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.REQ" /></Request>
+SameServiceTwice;<Request ID="1,032" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.S2WS.REQ" /></Request>
+SameServiceTwice;<Request ID="1,033" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_1" /></Request>
+SameServiceTwice;<Request ID="1,034" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.IN" /></Request>
+SameServiceTwice;<Request ID="1,035" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_3" /></Request>
+SameServiceTwice;<Request ID="1,036" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry.DI2S.IN" /></Request>
+SameServiceTwice;<Request ID="1,037" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_3.IN2" /></Request>
+SameServiceTwice;<Request ID="1,038" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ.IN2" /></Request>
+SameServiceTwice;<Request ID="1,039" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_3_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,040" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,041" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_1_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,042" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetURI.in_struct" /></Request>
+SameServiceTwice;<Request ID="1,043" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetPort.in_struct" /></Request>
+SameServiceTwice;<Request ID="1,044" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.in_struct" /></Request>
+SameServiceTwice;<Request ID="1,045" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.IN" /></Request>
+SameServiceTwice;<Request ID="1,046" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_1" /></Request>
+SameServiceTwice;<Request ID="1,047" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry.S2WS.IN" /></Request>
+SameServiceTwice;<Request ID="1,048" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_2" /></Request>
+SameServiceTwice;<Request ID="1,049" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.REQ" /></Request>
+SameServiceTwice;<Request ID="1,050" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.REQ" /></Request>
+SameServiceTwice;<Request ID="1,051" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.REQ" /></Request>
+SameServiceTwice;<Request ID="1,052" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+SameServiceTwice;<Request ID="1,053" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.REQ" /></Request>
+SameServiceTwice;<Request ID="1,054" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.REQ" /></Request>
+SameServiceTwice;<Request ID="1,055" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,056" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.REQ" /></Request>
+SameServiceTwice;<Request ID="1,057" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.REQ" /></Request>
+SameServiceTwice;<Request ID="1,058" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.REQ" /></Request>
+SameServiceTwice;<Request ID="1,059" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_1" /></Request>
+SameServiceTwice;<Request ID="1,060" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.IN" /></Request>
+SameServiceTwice;<Request ID="1,061" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_3" /></Request>
+SameServiceTwice;<Request ID="1,062" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.IN" /></Request>
+SameServiceTwice;<Request ID="1,063" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_2.IN2" /></Request>
+SameServiceTwice;<Request ID="1,064" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_2_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,065" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_1_1_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,066" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_4.IN2" /></Request>
+SameServiceTwice;<Request ID="1,067" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_4_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,068" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.in_struct" /></Request>
+SameServiceTwice;<Request ID="1,069" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.in_struct" /></Request>
+SameServiceTwice;<Request ID="1,070" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.in_struct" /></Request>
+SameServiceTwice;<Request ID="1,071" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.IN" /></Request>
+SameServiceTwice;<Request ID="1,072" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_1" /></Request>
+SameServiceTwice;<Request ID="1,073" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.IN" /></Request>
+SameServiceTwice;<Request ID="1,074" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_2" /></Request>
+SameServiceTwice;<Request ID="1,075" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="E_MERGE_1.EI1" /></Request>
+SameServiceTwice;<Request ID="1,076" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="E_MERGE_1.EI2" /></Request>
+SameServiceTwice;<Request ID="1,077" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
+SameServiceTwice;<Request ID="1,078" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
+SameServiceTwice;<Request ID="1,079" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
+SameServiceTwice;<Request ID="1,080" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
+SameServiceTwice;<Request ID="1,081" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
+SameServiceTwice;<Request ID="1,082" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
+SameServiceTwice;<Request ID="1,083" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
+SameServiceTwice;<Request ID="1,084" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceOpcUa.registerService" /></Request>
+SameServiceTwice;<Request ID="1,085" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneRegister" Destination="E_MERGE_1.EI1" /></Request>
+SameServiceTwice;<Request ID="1,086" Action="CREATE"><Connection Source="RegisterService1.RegisterService.doneUnregister" Destination="E_MERGE_1.EI2" /></Request>
+SameServiceTwice;<Request ID="1,087" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO1" Destination="RegisterService1.RegisterService.register" /></Request>
+SameServiceTwice;<Request ID="1,088" Action="CREATE"><Connection Source="RegisterService1.E_SWITCH.EO0" Destination="RegisterService1.RegisterService.unregister" /></Request>
+SameServiceTwice;<Request ID="1,089" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService1.E_REND.EI2" /></Request>
+SameServiceTwice;<Request ID="1,090" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_SWITCH.EI" /></Request>
+SameServiceTwice;<Request ID="1,091" Action="CREATE"><Connection Source="RegisterService1.E_REND.EO" Destination="RegisterService1.E_REND.R" /></Request>
+SameServiceTwice;<Request ID="1,092" Action="CREATE"><Connection Source="RegisterService1.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService1.RegisterService.serviceRegistryEntry" /></Request>
+SameServiceTwice;<Request ID="1,093" Action="CREATE"><Connection Source="RegisterService1.E_SR.Q" Destination="RegisterService1.E_SWITCH.G" /></Request>
+SameServiceTwice;<Request ID="1,094" Action="CREATE"><Connection Source="RegisterService1.RegisterService.registerService" Destination="RegisterService1.RegisterServiceOpcUa.registerService" /></Request>
+SameServiceTwice;<Request ID="1,095" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub.QueryService.query" /></Request>
+SameServiceTwice;<Request ID="1,096" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
+SameServiceTwice;<Request ID="1,097" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub.QueryService.serviceQueryForm" /></Request>
+SameServiceTwice;<Request ID="1,098" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
+SameServiceTwice;<Request ID="1,099" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
+SameServiceTwice;<Request ID="1,100" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queryServices" Destination="QueryServiceHTTPSub.QueryServiceOpcUa.queryServices" /></Request>
+SameServiceTwice;<Request ID="1,101" Action="CREATE"><Connection Source="Service1.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+SameServiceTwice;<Request ID="1,102" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,103" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+SameServiceTwice;<Request ID="1,104" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GET_AT_INDEX_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,105" Action="CREATE"><Connection Source="F_EQ_3.CNF" Destination="F_EQ_2.REQ" /></Request>
+SameServiceTwice;<Request ID="1,106" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="Service1RegisteredPos0.REQ" /></Request>
+SameServiceTwice;<Request ID="1,107" Action="CREATE"><Connection Source="F_EQ_3_1.CNF" Destination="F_EQ_2_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,108" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="Service2RegisteredPos0.REQ" /></Request>
+SameServiceTwice;<Request ID="1,109" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="F_EQ_1_1_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,110" Action="CREATE"><Connection Source="Service1RegisteredPos0.CNF" Destination="F_EQ_4.REQ" /></Request>
+SameServiceTwice;<Request ID="1,111" Action="CREATE"><Connection Source="F_EQ_4.CNF" Destination="Service2NotRegisteredPos1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,112" Action="CREATE"><Connection Source="Service2RegisteredPos0.CNF" Destination="F_EQ_4_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,113" Action="CREATE"><Connection Source="F_EQ_4_1.CNF" Destination="Service1NotRegisteredPos1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,114" Action="CREATE"><Connection Source="F_EQ_1_1_1.CNF" Destination="F_AND.REQ" /></Request>
+SameServiceTwice;<Request ID="1,115" Action="CREATE"><Connection Source="F_AND.CNF" Destination="BothServicesNotRegistered.REQ" /></Request>
+SameServiceTwice;<Request ID="1,116" Action="CREATE"><Connection Source="BothServicesRegistered.CNF" Destination="E_MERGE.EI1" /></Request>
+SameServiceTwice;<Request ID="1,117" Action="CREATE"><Connection Source="BothServicesNotRegistered.CNF" Destination="E_MERGE.EI2" /></Request>
+SameServiceTwice;<Request ID="1,118" Action="CREATE"><Connection Source="Service1NotRegisteredPos1.CNF" Destination="E_MERGE.EI2" /></Request>
+SameServiceTwice;<Request ID="1,119" Action="CREATE"><Connection Source="Service2NotRegisteredPos1.CNF" Destination="E_MERGE.EI2" /></Request>
+SameServiceTwice;<Request ID="1,120" Action="CREATE"><Connection Source="E_MERGE.EO" Destination="Sequencer.F_GT.REQ" /></Request>
+SameServiceTwice;<Request ID="1,121" Action="CREATE"><Connection Source="E_MERGE_1.EO" Destination="Sequencer.F_GT.REQ" /></Request>
+SameServiceTwice;<Request ID="1,122" Action="CREATE"><Connection Source="F_EQ_2_1.CNF" Destination="F_AND_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,123" Action="CREATE"><Connection Source="F_OR.CNF" Destination="BothServicesRegistered.REQ" /></Request>
+SameServiceTwice;<Request ID="1,124" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="F_AND_1_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,125" Action="CREATE"><Connection Source="F_AND_1.CNF" Destination="BOOL2BOOL.REQ" /></Request>
+SameServiceTwice;<Request ID="1,126" Action="CREATE"><Connection Source="BOOL2BOOL.CNF" Destination="F_EQ_3.REQ" /></Request>
+SameServiceTwice;<Request ID="1,127" Action="CREATE"><Connection Source="F_AND_1_1.CNF" Destination="BOOL2BOOL_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,128" Action="CREATE"><Connection Source="BOOL2BOOL_1.CNF" Destination="F_OR.REQ" /></Request>
+SameServiceTwice;<Request ID="1,129" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem_1.REQ" /></Request>
+SameServiceTwice;<Request ID="1,130" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.CNF" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+SameServiceTwice;<Request ID="1,131" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+SameServiceTwice;<Request ID="1,132" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+SameServiceTwice;<Request ID="1,133" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
+SameServiceTwice;<Request ID="1,134" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+SameServiceTwice;<Request ID="1,135" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+SameServiceTwice;<Request ID="1,136" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="Service1RegisteredPos0.check" /></Request>
+SameServiceTwice;<Request ID="1,137" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="Service2RegisteredPos0.check" /></Request>
+SameServiceTwice;<Request ID="1,138" Action="CREATE"><Connection Source="F_EQ_4.OUT" Destination="Service2NotRegisteredPos1.check" /></Request>
+SameServiceTwice;<Request ID="1,139" Action="CREATE"><Connection Source="F_EQ_4_1.OUT" Destination="Service1NotRegisteredPos1.check" /></Request>
+SameServiceTwice;<Request ID="1,140" Action="CREATE"><Connection Source="F_EQ_1_1.OUT" Destination="F_AND.IN1" /></Request>
+SameServiceTwice;<Request ID="1,141" Action="CREATE"><Connection Source="F_EQ_1_1_1.OUT" Destination="F_AND.IN2" /></Request>
+SameServiceTwice;<Request ID="1,142" Action="CREATE"><Connection Source="F_AND.OUT" Destination="BothServicesNotRegistered.check" /></Request>
+SameServiceTwice;<Request ID="1,143" Action="CREATE"><Connection Source="F_EQ_3_1.OUT" Destination="F_AND_1.IN1" /></Request>
+SameServiceTwice;<Request ID="1,144" Action="CREATE"><Connection Source="F_EQ_2_1.OUT" Destination="F_AND_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,145" Action="CREATE"><Connection Source="F_OR.OUT" Destination="BothServicesRegistered.check" /></Request>
+SameServiceTwice;<Request ID="1,146" Action="CREATE"><Connection Source="F_EQ_3.OUT" Destination="F_AND_1_1.IN1" /></Request>
+SameServiceTwice;<Request ID="1,147" Action="CREATE"><Connection Source="F_EQ_2.OUT" Destination="F_AND_1_1.IN2" /></Request>
+SameServiceTwice;<Request ID="1,148" Action="CREATE"><Connection Source="F_AND_1.OUT" Destination="BOOL2BOOL.IN" /></Request>
+SameServiceTwice;<Request ID="1,149" Action="CREATE"><Connection Source="BOOL2BOOL.OUT" Destination="F_OR.IN1" /></Request>
+SameServiceTwice;<Request ID="1,150" Action="CREATE"><Connection Source="F_AND_1_1.OUT" Destination="BOOL2BOOL_1.IN" /></Request>
+SameServiceTwice;<Request ID="1,151" Action="CREATE"><Connection Source="BOOL2BOOL_1.OUT" Destination="F_OR.IN2" /></Request>
+SameServiceTwice;<Request ID="1,152" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
+SameServiceTwice;<Request ID="1,153" Action="CREATE"><Connection Source="FieldsToArrowheadSystem_1.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
+SameServiceTwice;<Request ID="1,154" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService1.FieldsToServiceRegistryEntry.providedService" /></Request>
+SameServiceTwice;<Request ID="1,155" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService1.FieldsToServiceRegistryEntry.provider" /></Request>
+SameServiceTwice;<Request ID="1,156" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.service" /></Request>
 SameServiceTwice;<Request ID="1,157" Action="START"/>
 ;<Request ID="1,158" Action="CREATE"><FB Name="VersionInterfaceAndMetadata" Type="EMB_RES" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,159" Action="CREATE"><FB Name="RegisterServiceFullHTTP.FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,160" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,161" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,162" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService" Type="RegisterService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,163" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SR" Type="E_SR" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,164" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SWITCH" Type="E_SWITCH" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,165" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND" Type="E_REND" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,166" Action="CREATE"><FB Name="RegisterServiceFullHTTP.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,167" Action="CREATE"><FB Name="RegisterServiceFullHTTP.E_SR" Type="E_SR" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,168" Action="CREATE"><FB Name="RegisterServiceFullHTTP.E_SWITCH" Type="E_SWITCH" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,169" Action="CREATE"><FB Name="QueryServiceHTTPSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,170" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,171" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,172" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,173" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,174" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,175" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,176" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,177" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,178" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,179" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,180" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,181" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,182" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,183" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,184" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,185" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,186" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,187" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,188" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,189" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,190" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,191" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,192" Action="CREATE"><FB Name="F_EQ_4" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,193" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,194" Action="CREATE"><FB Name="LowerVersion" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,195" Action="CREATE"><FB Name="FieldsToArrowheadService_1" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,196" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,197" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,198" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,199" Action="CREATE"><FB Name="SameVersion" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,200" Action="CREATE"><FB Name="QueryServiceHTTPSub_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,201" Action="CREATE"><FB Name="QueryServiceHTTPSub_1.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,202" Action="CREATE"><FB Name="QueryServiceHTTPSub_1.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,203" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,204" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,205" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,206" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,207" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,208" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,209" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,210" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,211" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,212" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,213" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,214" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,215" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,216" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,217" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,218" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,219" Action="CREATE"><FB Name="F_EQ_4_1" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,220" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_4_1.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,221" Action="CREATE"><FB Name="OneInterfaceOutOfTwo" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,222" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,223" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_1.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,224" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_1.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,225" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,226" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,227" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,228" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,229" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,230" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,231" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,232" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,233" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,234" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,235" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,236" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,237" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,238" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,239" Action="CREATE"><FB Name="F_EQ_4_1_1" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,240" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_4_1_1.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,241" Action="CREATE"><FB Name="FieldsToArrowheadService_1_1" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,242" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_1.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,243" Action="WRITE"><Connection Source="[&quot;XML&quot;]" Destination="FieldsToArrowheadService_1_1.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,244" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_1.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,245" Action="CREATE"><FB Name="GET_AT_INDEX_1_1" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,246" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_1.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,247" Action="CREATE"><FB Name="OneInterfaceOutOfTwo_2" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,248" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,249" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,250" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,251" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,252" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,253" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,254" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,255" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,256" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,257" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,258" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,259" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,260" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,261" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,262" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,263" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,264" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,265" Action="CREATE"><FB Name="F_EQ_4_1_2" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,266" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_4_1_2.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,267" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,268" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,269" Action="WRITE"><Connection Source="[&quot;JSON&quot;]" Destination="FieldsToArrowheadService_1_2.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,270" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_2.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,271" Action="CREATE"><FB Name="GET_AT_INDEX_1_2" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,272" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,273" Action="CREATE"><FB Name="WrongInterfaceProvided" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,274" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,275" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,276" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,277" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,278" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,279" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,280" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,281" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,282" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,283" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,284" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,285" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,286" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,287" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,288" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,289" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,290" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,291" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,292" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,293" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,294" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,295" Action="WRITE"><Connection Source="[&quot;JSON1&quot;]" Destination="FieldsToArrowheadService_1_2_1.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,296" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_2_1.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,297" Action="CREATE"><FB Name="F_EQ_4_1_2_1" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,298" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,299" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,300" Action="WRITE"><Connection Source="WSTRIGN#sameServiceTwiceReady" Destination="SUBL_0.ID" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,301" Action="CREATE"><FB Name="OnlyOneMetadata" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,302" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,303" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,304" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,305" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,306" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,307" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,308" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,309" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,310" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,311" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,312" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,313" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,314" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,315" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,316" Action="CREATE"><FB Name="F_EQ_4_1_2_1_1" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,317" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1_1.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,318" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_1" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,319" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_1.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,320" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1_2_1_1.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,321" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;]" Destination="FieldsToArrowheadService_1_2_1_1.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,322" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_1" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,323" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_1.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,324" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,325" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,326" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,327" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,328" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,329" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,330" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,331" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,332" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,333" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,334" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,335" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,336" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,337" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,338" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,339" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,340" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,341" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,342" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,343" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,344" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_1_1" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,345" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_1_1.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,346" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1_2_1_1_1.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,347" Action="CREATE"><FB Name="F_EQ_4_1_2_1_1_1" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,348" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1_1_1.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,349" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_1_1" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,350" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_1_1.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,351" Action="CREATE"><FB Name="NoMetadataAndAsked" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,352" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_2" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,353" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_2.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,354" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_2_1_2.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,355" Action="CREATE"><FB Name="F_EQ_4_1_2_1_2" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,356" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1_2.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,357" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,358" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,359" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,360" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,361" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,362" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,363" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,364" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,365" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,366" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,367" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,368" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,369" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,370" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,371" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_2" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,372" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_2.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,373" Action="CREATE"><FB Name="NoInterfaceProvided" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,374" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,375" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_2.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,376" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_2.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,377" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_1_1_1" Type="GET_AT_INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,378" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_1_1_1.INDEX" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,379" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_1_1_1" Type="FieldsToArrowheadService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,380" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_1_1_1.serviceDefinition" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,381" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1_2_1_1_1_1.interfaces" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,382" Action="CREATE"><FB Name="WrongMetadaButNotAsked" Type="TEST_CONDITION" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,383" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,384" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService" Type="QueryService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,385" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1_1.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,386" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,387" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,388" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,389" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,390" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,391" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,392" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,393" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,394" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,395" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,396" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.member" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,397" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,398" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,399" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,400" Action="CREATE"><FB Name="F_EQ_4_1_2_1_1_1_1" Type="F_EQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,401" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_4_1_2_1_1_1_1.IN1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,402" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,403" Action="WRITE"><Connection Source="WSTRIGN#versionEnded" Destination="PUBL_0.ID" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,159" Action="CREATE"><FB Name="FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,160" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,161" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,162" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService.serviceMetadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,163" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,164" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,165" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,166" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,167" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,168" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,169" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,170" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,171" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,172" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,173" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,174" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,175" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,176" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,177" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,178" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,179" Action="CREATE"><FB Name="F_EQ_4" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,180" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,181" Action="CREATE"><FB Name="LowerVersion" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,182" Action="CREATE"><FB Name="FieldsToArrowheadService_1" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,183" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,184" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,185" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1.serviceMetadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,186" Action="CREATE"><FB Name="SameVersion" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,187" Action="CREATE"><FB Name="GET_AT_INDEX_1" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,188" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,189" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,190" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,191" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,192" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,193" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,194" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,195" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,196" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,197" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,198" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,199" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,200" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,201" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,202" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,203" Action="CREATE"><FB Name="F_EQ_4_1" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,204" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_4_1.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,205" Action="CREATE"><FB Name="OneInterfaceOutOfTwo" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,206" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,207" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,208" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,209" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,210" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,211" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,212" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,213" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,214" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,215" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,216" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,217" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,218" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,219" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,220" Action="CREATE"><FB Name="F_EQ_4_1_1" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,221" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_4_1_1.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,222" Action="CREATE"><FB Name="FieldsToArrowheadService_1_1" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,223" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_1.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,224" Action="WRITE"><Connection Source="[&quot;XML&quot;]" Destination="FieldsToArrowheadService_1_1.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,225" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_1.serviceMetadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,226" Action="CREATE"><FB Name="GET_AT_INDEX_1_1" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,227" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_1.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,228" Action="CREATE"><FB Name="OneInterfaceOutOfTwo_2" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,229" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,230" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,231" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,232" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,233" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,234" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,235" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,236" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,237" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,238" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,239" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,240" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,241" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,242" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,243" Action="CREATE"><FB Name="F_EQ_4_1_2" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,244" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_4_1_2.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,245" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,246" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,247" Action="WRITE"><Connection Source="[&quot;JSON&quot;]" Destination="FieldsToArrowheadService_1_2.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,248" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_2.serviceMetadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,249" Action="CREATE"><FB Name="GET_AT_INDEX_1_2" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,250" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,251" Action="CREATE"><FB Name="WrongInterface" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,252" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,253" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,254" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,255" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,256" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,257" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,258" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,259" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,260" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,261" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,262" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,263" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,264" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,265" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,266" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,267" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,268" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,269" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,270" Action="WRITE"><Connection Source="[&quot;JSON1&quot;]" Destination="FieldsToArrowheadService_1_2_1.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,271" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_2_1.serviceMetadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,272" Action="CREATE"><FB Name="F_EQ_4_1_2_1" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,273" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,274" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,275" Action="WRITE"><Connection Source="WSTRIGN#sameServiceTwiceReady" Destination="SUBL_0.ID" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,276" Action="CREATE"><FB Name="OnlyOneMetadata" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,277" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,278" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,279" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,280" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,281" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,282" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,283" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,284" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,285" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,286" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,287" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,288" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,289" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,290" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,291" Action="CREATE"><FB Name="F_EQ_4_1_2_1_1" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,292" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1_1.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,293" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_1" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,294" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_1.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,295" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1_2_1_1.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,296" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;]" Destination="FieldsToArrowheadService_1_2_1_1.serviceMetadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,297" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_1" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,298" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_1.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,299" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,300" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,301" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,302" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,303" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,304" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,305" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,306" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,307" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,308" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,309" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,310" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,311" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,312" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,313" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_1_1" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,314" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_1_1.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,315" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1_2_1_1_1.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,316" Action="CREATE"><FB Name="F_EQ_4_1_2_1_1_1" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,317" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1_1_1.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,318" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_1_1" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,319" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_1_1.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,320" Action="CREATE"><FB Name="NoMetadataAndAsked" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,321" Action="CREATE"><FB Name="F_EQ_4_1_2_1_2" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,322" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_4_1_2_1_2.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,323" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_2" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,324" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_2.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,325" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_2" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,326" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_2.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,327" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadService_1_2_1_2.serviceMetadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,328" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,329" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,330" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,331" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,332" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,333" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,334" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,335" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,336" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,337" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,338" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,339" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,340" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,341" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,342" Action="CREATE"><FB Name="NoInterface" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,343" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS" Type="WSTRING2WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,344" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S" Type="F_DINT_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,345" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,346" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,347" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort" Type="APPEND_STRING_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,348" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,349" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,350" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,351" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,352" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,353" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.member" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,354" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry" Type="ServiceRegistryEntry2ServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,355" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1" Type="F_WSTRING_TO_STRING" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,356" Action="CREATE"><FB Name="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI" Type="APPEND_STRING_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,357" Action="CREATE"><FB Name="GET_AT_INDEX_1_2_1_1_1_1" Type="GET_AT_INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,358" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_1_2_1_1_1_1.INDEX" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,359" Action="CREATE"><FB Name="F_EQ_4_1_2_1_1_1_1" Type="F_EQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,360" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_4_1_2_1_1_1_1.IN1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,361" Action="CREATE"><FB Name="WrongMetadaButNotAsked" Type="TEST_CONDITION" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,362" Action="CREATE"><FB Name="FieldsToArrowheadService_1_2_1_1_1_1" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,363" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="FieldsToArrowheadService_1_2_1_1_1_1.serviceDefinition" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,364" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="FieldsToArrowheadService_1_2_1_1_1_1.interfaces" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,365" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,366" Action="WRITE"><Connection Source="WSTRIGN#versionEnded" Destination="PUBL_0.ID" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,367" Action="CREATE"><FB Name="RegisterServiceFullHTTP.FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,368" Action="CREATE"><FB Name="RegisterServiceFullHTTP.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,369" Action="CREATE"><FB Name="RegisterServiceFullHTTP.E_SR" Type="E_SR" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,370" Action="CREATE"><FB Name="RegisterServiceFullHTTP.E_SWITCH" Type="E_SWITCH" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,371" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,372" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService" Type="RegisterService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,373" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SR" Type="E_SR" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,374" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SWITCH" Type="E_SWITCH" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,375" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_REND" Type="E_REND" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,376" Action="CREATE"><FB Name="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,377" Action="CREATE"><FB Name="QueryServiceHTTPSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,378" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,379" Action="CREATE"><FB Name="QueryServiceHTTPSub.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,380" Action="CREATE"><FB Name="QueryServiceHTTPSub_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,381" Action="CREATE"><FB Name="QueryServiceHTTPSub_1.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,382" Action="CREATE"><FB Name="QueryServiceHTTPSub_1.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,383" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,384" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_1.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,385" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_1.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,386" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,387" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,388" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,389" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,390" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_2.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,391" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_2.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,392" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,393" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,394" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,395" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,396" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,397" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,398" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,399" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,400" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,401" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,402" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService" Type="QueryService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,403" Action="CREATE"><FB Name="QueryServiceHTTPSub_1_2_1_1_1_1.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,404" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.systemName" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,405" Action="WRITE"><Connection Source="localhost" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.address" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,406" Action="WRITE"><Connection Source="8090" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.port" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,406" Action="WRITE"><Connection Source="4840" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.port" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,407" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="RegisterServiceFullHTTP.FieldsToArrowheadService.serviceDefinition" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,408" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="RegisterServiceFullHTTP.FieldsToArrowheadService.interfaces" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,409" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="RegisterServiceFullHTTP.FieldsToArrowheadService.serviceMetadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,410" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.serviceURI" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,411" Action="WRITE"><Connection Source="1" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,412" Action="WRITE"><Connection Source="false" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.udp" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,413" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.metadata" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,414" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.endpoint" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,410" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.serviceURI" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,411" Action="WRITE"><Connection Source="1" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.version" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,412" Action="WRITE"><Connection Source="false" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.udp" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,413" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.metadata" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,414" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService.endpoint" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,415" Action="WRITE"><Connection Source="0" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,416" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,416" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub.QueryService.address" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,417" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,418" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,418" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1.QueryService.address" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,419" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,420" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,421" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_1.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,421" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1_1.QueryService.address" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,422" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.metadataSearch" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,423" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,424" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_2.QueryService.address" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,425" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,426" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,427" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1.QueryService.address" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,428" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,429" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,430" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_1.QueryService.address" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,431" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,432" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,433" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryService.address" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,434" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.metadataSearch" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,435" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,436" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_2.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,424" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1_2.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,425" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.metadataSearch" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,426" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.version" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,427" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_2.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,428" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,429" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.version" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,430" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,431" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,432" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.version" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,433" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_1.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,434" Action="WRITE"><Connection Source="true" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,435" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.version" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,436" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryService.address" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,437" Action="WRITE"><Connection Source="false" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.metadataSearch" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,438" Action="WRITE"><Connection Source="1" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.version" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,439" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.address" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,440" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.doneRegister" Destination="FieldsToArrowheadService.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,441" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.doneUnregister" Destination="PUBL_0.INIT" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,442" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.register" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,443" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.unregister" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,444" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.CNF" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND.EI2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,445" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND.EO" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SWITCH.EI" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,446" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND.EO" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND.R" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,447" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.serviceRegistryEntry" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,448" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SR.Q" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SWITCH.G" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,449" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterService.registerService" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.RegisterServiceHTTP_1.registerService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,450" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadSystem.CNF" Destination="RegisterServiceFullHTTP.FieldsToArrowheadService.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,451" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadService.CNF" Destination="RegisterServiceFullHTTP.E_SWITCH.EI" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,452" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SR.S" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,453" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,454" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND.EI1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,455" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_SR.R" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,456" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,457" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.E_REND.EI1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,458" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.provider" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,459" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SR.Q" Destination="RegisterServiceFullHTTP.E_SWITCH.G" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,460" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadService.arrowheadService" Destination="RegisterServiceFullHTTP.RegisterServicePartialHTTP.FieldsToServiceRegistryEntry.providedService" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,461" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,462" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,463" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,464" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,465" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queryServices" Destination="QueryServiceHTTPSub.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,466" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,467" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,468" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,469" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.CNF" Destination="F_EQ_4.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,470" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,471" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,472" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,473" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,474" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,475" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,476" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,477" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,478" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,479" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,480" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_4.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,481" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,482" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,483" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,484" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,485" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,486" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,487" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,488" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,489" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,490" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,491" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,492" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,493" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,494" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,495" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,496" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.CNF" Destination="F_EQ_4_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,497" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,498" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,499" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,500" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,501" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,502" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,503" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,504" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,505" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,506" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,507" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_4_1.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,508" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,509" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,510" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,511" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,512" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,513" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,514" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,515" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_1.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,516" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,517" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_1.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,518" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_1.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,519" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_1.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,520" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,521" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,522" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,523" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.CNF" Destination="F_EQ_4_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,524" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,525" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,526" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,527" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,528" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,529" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,530" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,531" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,532" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,533" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,534" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.OUT" Destination="F_EQ_4_1_1.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,535" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,536" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,537" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,538" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,539" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,540" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,541" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,542" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,543" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.QueryService.queried" Destination="GET_AT_INDEX_1_2.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,544" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,545" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,546" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,547" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,548" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,549" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,550" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.S2WS.CNF" Destination="F_EQ_4_1_2.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,551" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,552" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,553" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,554" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,555" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,556" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,557" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,558" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,559" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,560" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,561" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.S2WS.OUT" Destination="F_EQ_4_1_2.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,562" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,563" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,564" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,565" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,566" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,567" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,568" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,569" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,570" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,571" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,572" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,573" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,574" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,575" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,576" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,577" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.CNF" Destination="F_EQ_4_1_2_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,578" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,579" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,580" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,581" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,582" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,583" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,584" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,585" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,586" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,587" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,588" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.OUT" Destination="F_EQ_4_1_2_1.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,589" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,590" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,591" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,592" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,593" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,594" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,595" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,596" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,597" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,598" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,599" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.CNF" Destination="F_EQ_4_1_2_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,600" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,601" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,602" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,603" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,604" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,605" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,606" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,607" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,608" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,609" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,610" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.OUT" Destination="F_EQ_4_1_2_1_1.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,611" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,612" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,613" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,614" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,615" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,616" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,617" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,618" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_1.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,619" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,620" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_1.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,621" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_1.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,622" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_1.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,623" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,624" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,625" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,626" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_1_1.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,627" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,628" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,629" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,630" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,631" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.CNF" Destination="F_EQ_4_1_2_1_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,632" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,633" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,634" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,635" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,636" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,637" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,638" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,639" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,640" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,641" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,642" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.OUT" Destination="F_EQ_4_1_2_1_1_1.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,643" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,644" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,645" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,646" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,647" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,648" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,649" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,650" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,651" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,652" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,653" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.CNF" Destination="F_EQ_4_1_2_1_2.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,654" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,655" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,656" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,657" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,658" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,659" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,660" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,661" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,662" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,663" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,664" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.OUT" Destination="F_EQ_4_1_2_1_2.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,665" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,666" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,667" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,668" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,669" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,670" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,671" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,672" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_2.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,673" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_2.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,674" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_2.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,675" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_2.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,676" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_2.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,677" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.query" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,678" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_1_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,679" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.serviceQueryForm" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,680" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_1_1_1.IN_ARRAY" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,681" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryServiceHTTP.queryServices" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,682" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,683" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,684" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,685" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.CNF" Destination="F_EQ_4_1_2_1_1_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,686" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,687" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,688" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,689" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,690" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,691" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,692" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,693" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,694" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.IN_3" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,695" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,696" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.OUT" Destination="F_EQ_4_1_2_1_1_1_1.IN2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,697" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,698" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,699" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.in_struct" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,700" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,701" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.IN_1" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,702" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,703" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.IN_2" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,704" Action="CREATE"><Connection Source="FieldsToArrowheadService.CNF" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,705" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,706" Action="CREATE"><Connection Source="F_EQ_4.CNF" Destination="LowerVersion.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,707" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.CNF" Destination="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,708" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,709" Action="CREATE"><Connection Source="F_EQ_4_1.CNF" Destination="SameVersion.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,710" Action="CREATE"><Connection Source="F_EQ_4_1_1.CNF" Destination="OneInterfaceOutOfTwo.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,711" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_1.CNF" Destination="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,712" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,713" Action="CREATE"><Connection Source="F_EQ_4_1_2.CNF" Destination="OneInterfaceOutOfTwo_2.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,714" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2.CNF" Destination="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,715" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,716" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,717" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1.CNF" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,718" Action="CREATE"><Connection Source="F_EQ_4_1_2_1.CNF" Destination="WrongInterfaceProvided.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,719" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1.CNF" Destination="OnlyOneMetadata.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,720" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,721" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1.CNF" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,722" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,723" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,724" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1.CNF" Destination="NoMetadataAndAsked.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,725" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,726" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,727" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_2.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,728" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_2.CNF" Destination="NoInterfaceProvided.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,729" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_2.CNF" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,730" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1_1.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,731" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,732" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1_1.CNF" Destination="WrongMetadaButNotAsked.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,733" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,734" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="RegisterServiceFullHTTP.E_SR.S" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,735" Action="CREATE"><Connection Source="LowerVersion.CNF" Destination="FieldsToArrowheadService_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,736" Action="CREATE"><Connection Source="SameVersion.CNF" Destination="FieldsToArrowheadService_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,737" Action="CREATE"><Connection Source="OneInterfaceOutOfTwo.CNF" Destination="FieldsToArrowheadService_1_2.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,738" Action="CREATE"><Connection Source="OneInterfaceOutOfTwo_2.CNF" Destination="FieldsToArrowheadService_1_2_1_2.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,739" Action="CREATE"><Connection Source="NoInterfaceProvided.CNF" Destination="FieldsToArrowheadService_1_2_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,740" Action="CREATE"><Connection Source="WrongInterfaceProvided.CNF" Destination="FieldsToArrowheadService_1_2_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,741" Action="CREATE"><Connection Source="OnlyOneMetadata.CNF" Destination="FieldsToArrowheadService_1_2_1_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,742" Action="CREATE"><Connection Source="NoMetadataAndAsked.CNF" Destination="FieldsToArrowheadService_1_2_1_1_1_1.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,743" Action="CREATE"><Connection Source="WrongMetadaButNotAsked.CNF" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,744" Action="CREATE"><Connection Source="WrongMetadaButNotAsked.CNF" Destination="RegisterServiceFullHTTP.E_SR.R" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,745" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,746" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,747" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,748" Action="CREATE"><Connection Source="F_EQ_4.OUT" Destination="LowerVersion.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,749" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.arrowheadService" Destination="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,750" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,751" Action="CREATE"><Connection Source="F_EQ_4_1.OUT" Destination="SameVersion.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,752" Action="CREATE"><Connection Source="F_EQ_4_1_1.OUT" Destination="OneInterfaceOutOfTwo.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,753" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,754" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,755" Action="CREATE"><Connection Source="F_EQ_4_1_2.OUT" Destination="OneInterfaceOutOfTwo_2.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,756" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2.arrowheadService" Destination="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,757" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,758" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,759" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,760" Action="CREATE"><Connection Source="F_EQ_4_1_2_1.OUT" Destination="WrongInterfaceProvided.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,761" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1.OUT" Destination="OnlyOneMetadata.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,762" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,763" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,764" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,765" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,766" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1.OUT" Destination="NoMetadataAndAsked.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,767" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_2.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,768" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_2.OUT" Destination="NoInterfaceProvided.check" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,769" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_2.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,770" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.service" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,771" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
-VersionInterfaceAndMetadata;<Request ID="1,772" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1_1.OUT" Destination="WrongMetadaButNotAsked.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,439" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.address" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,440" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,441" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,442" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,443" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.CNF" Destination="F_EQ_4.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,444" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,445" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,446" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,447" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,448" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,449" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,450" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,451" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,452" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,453" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,454" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.S2WS.OUT" Destination="F_EQ_4.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,455" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,456" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,457" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,458" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,459" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,460" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,461" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,462" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,463" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,464" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,465" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.CNF" Destination="F_EQ_4_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,466" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,467" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,468" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,469" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,470" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,471" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,472" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,473" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,474" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,475" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,476" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.S2WS.OUT" Destination="F_EQ_4_1.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,477" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,478" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,479" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,480" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,481" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,482" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,483" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,484" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,485" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,486" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,487" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.CNF" Destination="F_EQ_4_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,488" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,489" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,490" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,491" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,492" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,493" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,494" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,495" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,496" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,497" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,498" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.S2WS.OUT" Destination="F_EQ_4_1_1.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,499" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,500" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,501" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,502" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,503" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,504" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,505" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,506" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,507" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,508" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,509" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.S2WS.CNF" Destination="F_EQ_4_1_2.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,510" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,511" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,512" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,513" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,514" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,515" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,516" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,517" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,518" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,519" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,520" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.S2WS.OUT" Destination="F_EQ_4_1_2.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,521" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,522" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,523" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,524" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,525" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,526" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,527" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,528" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,529" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,530" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,531" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.CNF" Destination="F_EQ_4_1_2_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,532" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,533" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,534" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,535" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,536" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,537" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,538" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,539" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,540" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,541" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,542" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.OUT" Destination="F_EQ_4_1_2_1.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,543" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,544" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,545" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,546" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,547" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,548" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,549" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,550" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,551" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,552" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,553" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.CNF" Destination="F_EQ_4_1_2_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,554" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,555" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,556" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,557" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,558" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,559" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,560" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,561" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,562" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,563" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,564" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.OUT" Destination="F_EQ_4_1_2_1_1.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,565" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,566" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,567" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,568" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,569" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,570" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,571" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,572" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,573" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,574" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,575" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.CNF" Destination="F_EQ_4_1_2_1_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,576" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,577" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,578" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,579" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,580" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,581" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,582" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,583" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,584" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,585" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,586" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.OUT" Destination="F_EQ_4_1_2_1_1_1.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,587" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,588" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,589" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,590" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,591" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,592" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,593" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,594" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,595" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,596" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,597" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.CNF" Destination="F_EQ_4_1_2_1_2.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,598" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,599" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,600" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,601" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,602" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,603" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,604" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,605" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,606" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,607" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,608" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.OUT" Destination="F_EQ_4_1_2_1_2.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,609" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,610" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,611" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,612" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,613" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,614" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,615" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_2.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,616" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,617" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,618" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,619" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.CNF" Destination="F_EQ_4_1_2_1_1_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,620" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,621" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,622" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,623" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,624" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,625" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,626" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,627" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,628" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.IN_3" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,629" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.DI2S.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,630" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.OUT" Destination="F_EQ_4_1_2_1_1_1_1.IN2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,631" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,632" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetPort.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,633" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetAddress.in_struct" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,634" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.GetURI.output" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,635" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.IN_1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,636" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.S2WS.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,637" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.IpPortURI.IN_2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,638" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService.doneRegister" Destination="FieldsToArrowheadService.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,639" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService.doneUnregister" Destination="PUBL_0.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,640" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService.register" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,641" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService.unregister" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,642" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.CNF" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_REND.EI2" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,643" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_REND.EO" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SWITCH.EI" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,644" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_REND.EO" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_REND.R" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,645" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService.serviceRegistryEntry" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,646" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SR.Q" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SWITCH.G" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,647" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterService.registerService" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.RegisterServiceOpcUa.registerService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,648" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadSystem.CNF" Destination="RegisterServiceFullHTTP.FieldsToArrowheadService.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,649" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadService.CNF" Destination="RegisterServiceFullHTTP.E_SWITCH.EI" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,650" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SR.S" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,651" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,652" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO1" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_REND.EI1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,653" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_SR.R" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,654" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,655" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SWITCH.EO0" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.E_REND.EI1" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,656" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.E_SR.Q" Destination="RegisterServiceFullHTTP.E_SWITCH.G" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,657" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadService.arrowheadService" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.providedService" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,658" Action="CREATE"><Connection Source="RegisterServiceFullHTTP.FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterServiceFullHTTP.RegisterServicePartialOpcUa.FieldsToServiceRegistryEntry.provider" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,659" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,660" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,661" Action="CREATE"><Connection Source="QueryServiceHTTPSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,662" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,663" Action="CREATE"><Connection Source="QueryServiceHTTPSub.QueryService.queryServices" Destination="QueryServiceHTTPSub.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,664" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,665" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.QueryService.queried" Destination="GET_AT_INDEX_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,666" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,667" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,668" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,669" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_1.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,670" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,671" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_1.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,672" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_1.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,673" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_1.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,674" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,675" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.QueryService.queried" Destination="GET_AT_INDEX_1_2.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,676" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,677" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,678" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,679" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_2.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,680" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_2.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,681" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_2.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,682" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_2.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,683" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_2.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_2.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,684" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,685" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,686" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,687" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,688" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,689" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_1.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,690" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,691" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_1.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,692" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_1.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,693" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_1.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,694" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,695" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,696" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,697" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_1_1.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,698" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_1_1.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,699" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.query" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,700" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.queried" Destination="GET_AT_INDEX_1_2_1_1_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,701" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.serviceQueryForm" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,702" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_2_1_1_1_1.IN_ARRAY" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,703" Action="CREATE"><Connection Source="QueryServiceHTTPSub_1_2_1_1_1_1.QueryService.queryServices" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.QueryServiceOpcUa.queryServices" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,704" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,705" Action="CREATE"><Connection Source="F_EQ_4.CNF" Destination="LowerVersion.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,706" Action="CREATE"><Connection Source="LowerVersion.CNF" Destination="FieldsToArrowheadService_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,707" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,708" Action="CREATE"><Connection Source="F_EQ_4_1.CNF" Destination="SameVersion.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,709" Action="CREATE"><Connection Source="F_EQ_4_1_1.CNF" Destination="OneInterfaceOutOfTwo.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,710" Action="CREATE"><Connection Source="SameVersion.CNF" Destination="FieldsToArrowheadService_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,711" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,712" Action="CREATE"><Connection Source="F_EQ_4_1_2.CNF" Destination="OneInterfaceOutOfTwo_2.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,713" Action="CREATE"><Connection Source="OneInterfaceOutOfTwo.CNF" Destination="FieldsToArrowheadService_1_2.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,714" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,715" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,716" Action="CREATE"><Connection Source="F_EQ_4_1_2_1.CNF" Destination="WrongInterface.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,717" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1.CNF" Destination="OnlyOneMetadata.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,718" Action="CREATE"><Connection Source="WrongInterface.CNF" Destination="FieldsToArrowheadService_1_2_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,719" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,720" Action="CREATE"><Connection Source="OnlyOneMetadata.CNF" Destination="FieldsToArrowheadService_1_2_1_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,721" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,722" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1.CNF" Destination="NoMetadataAndAsked.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,723" Action="CREATE"><Connection Source="OneInterfaceOutOfTwo_2.CNF" Destination="FieldsToArrowheadService_1_2_1_2.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,724" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_2.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,725" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_2.CNF" Destination="NoInterface.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,726" Action="CREATE"><Connection Source="NoInterface.CNF" Destination="FieldsToArrowheadService_1_2_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,727" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,728" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1_1.CNF" Destination="WrongMetadaButNotAsked.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,729" Action="CREATE"><Connection Source="NoMetadataAndAsked.CNF" Destination="FieldsToArrowheadService_1_2_1_1_1_1.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,730" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,731" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,732" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,733" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="RegisterServiceFullHTTP.E_SR.S" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,734" Action="CREATE"><Connection Source="WrongMetadaButNotAsked.CNF" Destination="RegisterServiceFullHTTP.FieldsToArrowheadSystem.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,735" Action="CREATE"><Connection Source="WrongMetadaButNotAsked.CNF" Destination="RegisterServiceFullHTTP.E_SR.R" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,736" Action="CREATE"><Connection Source="FieldsToArrowheadService.CNF" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,737" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.CNF" Destination="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,738" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_1.CNF" Destination="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,739" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2.CNF" Destination="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,740" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_2.CNF" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,741" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1.CNF" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,742" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1.CNF" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,743" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,744" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1_1.CNF" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.REQ" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,745" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,746" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,747" Action="CREATE"><Connection Source="F_EQ_4.OUT" Destination="LowerVersion.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,748" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,749" Action="CREATE"><Connection Source="F_EQ_4_1.OUT" Destination="SameVersion.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,750" Action="CREATE"><Connection Source="F_EQ_4_1_1.OUT" Destination="OneInterfaceOutOfTwo.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,751" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,752" Action="CREATE"><Connection Source="F_EQ_4_1_2.OUT" Destination="OneInterfaceOutOfTwo_2.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,753" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,754" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,755" Action="CREATE"><Connection Source="F_EQ_4_1_2_1.OUT" Destination="WrongInterface.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,756" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1.OUT" Destination="OnlyOneMetadata.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,757" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,758" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,759" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1.OUT" Destination="NoMetadataAndAsked.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,760" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_2.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_2.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,761" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_2.OUT" Destination="NoInterface.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,762" Action="CREATE"><Connection Source="GET_AT_INDEX_1_2_1_1_1_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1_2_1_1_1_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,763" Action="CREATE"><Connection Source="F_EQ_4_1_2_1_1_1_1.OUT" Destination="WrongMetadaButNotAsked.check" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,764" Action="CREATE"><Connection Source="FieldsToArrowheadService.arrowheadService" Destination="QueryServiceHTTPSub.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,765" Action="CREATE"><Connection Source="FieldsToArrowheadService_1.arrowheadService" Destination="QueryServiceHTTPSub_1.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,766" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_1.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,767" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2.arrowheadService" Destination="QueryServiceHTTPSub_1_2.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,768" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_2.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_2.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,769" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,770" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_1.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,771" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_1_1.FieldsToServiceQueryForm.service" /></Request>
+VersionInterfaceAndMetadata;<Request ID="1,772" Action="CREATE"><Connection Source="FieldsToArrowheadService_1_2_1_1_1_1.arrowheadService" Destination="QueryServiceHTTPSub_1_2_1_1_1_1.FieldsToServiceQueryForm.service" /></Request>
 VersionInterfaceAndMetadata;<Request ID="1,773" Action="START"/>
 ;<Request ID="1,774" Action="CREATE"><FB Name="RegisterMoreServicesSubApp" Type="EMB_RES" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,775" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
@@ -1807,7 +1807,7 @@
 RegisterMoreServicesSubApp;<Request ID="1,807" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,808" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,809" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,810" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,810" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,811" Action="CREATE"><FB Name="F_EQ_2" Type="F_EQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,812" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_2.IN1" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,813" Action="CREATE"><FB Name="GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
@@ -1865,78 +1865,78 @@
 RegisterMoreServicesSubApp;<Request ID="1,865" Action="WRITE"><Connection Source="0" Destination="GET_AT_INDEX_2.INDEX" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,866" Action="CREATE"><FB Name="Pos0Service1" Type="TEST_CONDITION" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,867" Action="CREATE"><FB Name="F_EQ_3" Type="F_EQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,868" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_3.IN1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,868" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_3.IN1" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,869" Action="CREATE"><FB Name="F_EQ_3_1" Type="F_EQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,870" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start2" Destination="F_EQ_3_1.IN1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,870" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start2" Destination="F_EQ_3_1.IN1" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,871" Action="CREATE"><FB Name="Pos0Service2" Type="TEST_CONDITION" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,872" Action="CREATE"><FB Name="PUBL_0_1" Type="PUBL_0" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,873" Action="WRITE"><Connection Source="test6Ended" Destination="PUBL_0_1.ID" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,874" Action="CREATE"><FB Name="QuerySecondService.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,875" Action="CREATE"><FB Name="QuerySecondService.QueryServiceHTTPSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,876" Action="CREATE"><FB Name="QuerySecondService.QueryServiceHTTPSub.QueryService" Type="QueryService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,877" Action="CREATE"><FB Name="QuerySecondService.QueryServiceHTTPSub.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,878" Action="CREATE"><FB Name="QueryFirstService.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,879" Action="CREATE"><FB Name="QueryFirstService.QueryServiceHTTPSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,880" Action="CREATE"><FB Name="QueryFirstService.QueryServiceHTTPSub.QueryService" Type="QueryService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,881" Action="CREATE"><FB Name="QueryFirstService.QueryServiceHTTPSub.QueryServiceHTTP" Type="QueryServiceHTTP" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,882" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,883" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1.IN1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,884" Action="CREATE"><FB Name="F_EQ_3_1_1" Type="F_EQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,885" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3_1_1.IN1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,886" Action="CREATE"><FB Name="Pos1Empty3" Type="TEST_CONDITION" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,887" Action="CREATE"><FB Name="Pos0Empty3" Type="TEST_CONDITION" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,888" Action="CREATE"><FB Name="F_EQ_1_1_1" Type="F_EQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,889" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1_1.IN1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,890" Action="CREATE"><FB Name="Pos0Empty4" Type="TEST_CONDITION" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,891" Action="CREATE"><FB Name="Pos1Empty4" Type="TEST_CONDITION" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,892" Action="CREATE"><FB Name="F_EQ_3_1_1_1" Type="F_EQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,893" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3_1_1_1.IN1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,894" Action="CREATE"><FB Name="E_MERGE" Type="E_MERGE" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,895" Action="CREATE"><FB Name="E_MERGE_1" Type="E_MERGE" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,896" Action="CREATE"><FB Name="RegisterManyServices.Reset" Type="E_MERGE" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,897" Action="CREATE"><FB Name="RegisterManyServices.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,898" Action="CREATE"><FB Name="RegisterManyServices.RegUnreg" Type="E_SWITCH" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,899" Action="CREATE"><FB Name="RegisterManyServices.Register" Type="E_SR" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,900" Action="CREATE"><FB Name="RegisterManyServices.RegisterService" Type="RegisterService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,901" Action="CREATE"><FB Name="RegisterManyServices.RegisterServiceHTTP" Type="RegisterServiceHTTP" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,902" Action="CREATE"><FB Name="RegisterManyServices.RegUnregDone" Type="E_SWITCH" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,903" Action="CREATE"><FB Name="RegisterManyServices.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,904" Action="CREATE"><FB Name="RegisterManyServices.GetName" Type="GET_AT_INDEX" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,905" Action="CREATE"><FB Name="RegisterManyServices.E_CTU" Type="E_CTU" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,906" Action="CREATE"><FB Name="RegisterManyServices.E_SWITCH" Type="E_SWITCH" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,907" Action="CREATE"><FB Name="RegisterManyServices.WSTRING2WSTRING" Type="WSTRING2WSTRING" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,908" Action="CREATE"><FB Name="RegisterManyServices.IsLast" Type="F_EQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,909" Action="WRITE"><Connection Source="WSTRING#&quot;&quot;" Destination="RegisterManyServices.IsLast.IN1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,910" Action="CREATE"><FB Name="RegisterManyServices.GetURI" Type="GET_AT_INDEX" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,911" Action="CREATE"><FB Name="RegisterManyServices.E_SPLIT" Type="E_SPLIT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,912" Action="CREATE"><FB Name="RegisterManyServices.PermitUnreg" Type="E_PERMIT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,913" Action="CREATE"><FB Name="RegisterManyServices.F_NOT" Type="F_NOT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,914" Action="CREATE"><FB Name="RegisterManyServices.PermitReg" Type="E_PERMIT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,915" Action="CREATE"><FB Name="RegisterManyServices.Regblock" Type="E_SR" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,916" Action="CREATE"><FB Name="RegisterManyServices.F_NOT_1" Type="F_NOT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,917" Action="CREATE"><FB Name="RegisterManyServices.UnRegBlock" Type="E_SR" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,918" Action="CREATE"><FB Name="RegisterManyServices.ARRAY2ARRAY_10_WSTRING" Type="ARRAY2ARRAY_10_WSTRING" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,919" Action="CREATE"><FB Name="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1" Type="ARRAY2ARRAY_10_WSTRING" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,920" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="QuerySecondService.FieldsToArrowheadService.serviceDefinition" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,921" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="QuerySecondService.FieldsToArrowheadService.interfaces" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,922" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="QuerySecondService.FieldsToArrowheadService.serviceMetadata" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,923" Action="WRITE"><Connection Source="false" Destination="QuerySecondService.QueryServiceHTTPSub.FieldsToServiceQueryForm.metadataSearch" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,924" Action="WRITE"><Connection Source="1" Destination="QuerySecondService.QueryServiceHTTPSub.FieldsToServiceQueryForm.version" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,925" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QuerySecondService.QueryServiceHTTPSub.QueryService.address" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,926" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="QueryFirstService.FieldsToArrowheadService.serviceDefinition" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,927" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="QueryFirstService.FieldsToArrowheadService.interfaces" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,928" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="QueryFirstService.FieldsToArrowheadService.serviceMetadata" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,929" Action="WRITE"><Connection Source="false" Destination="QueryFirstService.QueryServiceHTTPSub.FieldsToServiceQueryForm.metadataSearch" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,930" Action="WRITE"><Connection Source="1" Destination="QueryFirstService.QueryServiceHTTPSub.FieldsToServiceQueryForm.version" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,931" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="QueryFirstService.QueryServiceHTTPSub.QueryService.address" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,932" Action="WRITE"><Connection Source="[&quot;serviceTest&quot;, &quot;serviceTest2&quot;]" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.IN" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,933" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="RegisterManyServices.FieldsToArrowheadService.interfaces" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,934" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="RegisterManyServices.FieldsToArrowheadService.serviceMetadata" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,935" Action="WRITE"><Connection Source="[&quot;/serviceTest/start&quot;, &quot;/serviceTest/start2&quot;]" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.IN" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,936" Action="WRITE"><Connection Source="1" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.version" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,937" Action="WRITE"><Connection Source="false" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.udp" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,938" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.metadata" /></Request>
-RegisterMoreServicesSubApp;<Request ID="1,939" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterManyServices.RegisterService.endpoint" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,874" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,875" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1.IN1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,876" Action="CREATE"><FB Name="F_EQ_3_1_1" Type="F_EQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,877" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3_1_1.IN1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,878" Action="CREATE"><FB Name="Pos1Empty3" Type="TEST_CONDITION" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,879" Action="CREATE"><FB Name="Pos0Empty3" Type="TEST_CONDITION" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,880" Action="CREATE"><FB Name="F_EQ_1_1_1" Type="F_EQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,881" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_1_1_1.IN1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,882" Action="CREATE"><FB Name="Pos0Empty4" Type="TEST_CONDITION" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,883" Action="CREATE"><FB Name="Pos1Empty4" Type="TEST_CONDITION" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,884" Action="CREATE"><FB Name="F_EQ_3_1_1_1" Type="F_EQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,885" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ_3_1_1_1.IN1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,886" Action="CREATE"><FB Name="E_MERGE" Type="E_MERGE" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,887" Action="CREATE"><FB Name="E_MERGE_1" Type="E_MERGE" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,888" Action="CREATE"><FB Name="RegisterManyServices.Reset" Type="E_MERGE" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,889" Action="CREATE"><FB Name="RegisterManyServices.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,890" Action="CREATE"><FB Name="RegisterManyServices.RegUnreg" Type="E_SWITCH" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,891" Action="CREATE"><FB Name="RegisterManyServices.Register" Type="E_SR" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,892" Action="CREATE"><FB Name="RegisterManyServices.RegisterService" Type="RegisterService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,893" Action="CREATE"><FB Name="RegisterManyServices.RegUnregDone" Type="E_SWITCH" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,894" Action="CREATE"><FB Name="RegisterManyServices.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,895" Action="CREATE"><FB Name="RegisterManyServices.GetName" Type="GET_AT_INDEX" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,896" Action="CREATE"><FB Name="RegisterManyServices.E_CTU" Type="E_CTU" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,897" Action="CREATE"><FB Name="RegisterManyServices.E_SWITCH" Type="E_SWITCH" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,898" Action="CREATE"><FB Name="RegisterManyServices.WSTRING2WSTRING" Type="WSTRING2WSTRING" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,899" Action="CREATE"><FB Name="RegisterManyServices.IsLast" Type="F_EQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,900" Action="WRITE"><Connection Source="WSTRING#&quot;&quot;" Destination="RegisterManyServices.IsLast.IN1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,901" Action="CREATE"><FB Name="RegisterManyServices.GetURI" Type="GET_AT_INDEX" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,902" Action="CREATE"><FB Name="RegisterManyServices.E_SPLIT" Type="E_SPLIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,903" Action="CREATE"><FB Name="RegisterManyServices.PermitUnreg" Type="E_PERMIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,904" Action="CREATE"><FB Name="RegisterManyServices.F_NOT" Type="F_NOT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,905" Action="CREATE"><FB Name="RegisterManyServices.PermitReg" Type="E_PERMIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,906" Action="CREATE"><FB Name="RegisterManyServices.Regblock" Type="E_SR" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,907" Action="CREATE"><FB Name="RegisterManyServices.F_NOT_1" Type="F_NOT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,908" Action="CREATE"><FB Name="RegisterManyServices.UnRegBlock" Type="E_SR" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,909" Action="CREATE"><FB Name="RegisterManyServices.ARRAY2ARRAY_10_WSTRING" Type="ARRAY2ARRAY_10_WSTRING" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,910" Action="CREATE"><FB Name="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1" Type="ARRAY2ARRAY_10_WSTRING" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,911" Action="CREATE"><FB Name="RegisterManyServices.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,912" Action="CREATE"><FB Name="QueryFirstService.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,913" Action="CREATE"><FB Name="QueryFirstService.QueryServiceOpcUaSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,914" Action="CREATE"><FB Name="QueryFirstService.QueryServiceOpcUaSub.QueryService" Type="QueryService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,915" Action="CREATE"><FB Name="QueryFirstService.QueryServiceOpcUaSub.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,916" Action="CREATE"><FB Name="QuerySecondService.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,917" Action="CREATE"><FB Name="QuerySecondService.QueryServiceOpcUaSub.FieldsToServiceQueryForm" Type="FieldsToServiceQueryForm" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,918" Action="CREATE"><FB Name="QuerySecondService.QueryServiceOpcUaSub.QueryService" Type="QueryService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,919" Action="CREATE"><FB Name="QuerySecondService.QueryServiceOpcUaSub.QueryServiceOpcUa" Type="QueryServiceOpcUa" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,920" Action="WRITE"><Connection Source="[&quot;serviceTest&quot;, &quot;serviceTest2&quot;]" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.IN" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,921" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="RegisterManyServices.FieldsToArrowheadService.interfaces" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,922" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="RegisterManyServices.FieldsToArrowheadService.serviceMetadata" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,923" Action="WRITE"><Connection Source="[&quot;/serviceTest/start&quot;, &quot;/serviceTest/start2&quot;]" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.IN" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,924" Action="WRITE"><Connection Source="1" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.version" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,925" Action="WRITE"><Connection Source="false" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.udp" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,926" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.metadata" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,927" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterManyServices.RegisterService.endpoint" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,928" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="QueryFirstService.FieldsToArrowheadService.serviceDefinition" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,929" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="QueryFirstService.FieldsToArrowheadService.interfaces" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,930" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="QueryFirstService.FieldsToArrowheadService.serviceMetadata" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,931" Action="WRITE"><Connection Source="false" Destination="QueryFirstService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.metadataSearch" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,932" Action="WRITE"><Connection Source="1" Destination="QueryFirstService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.version" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,933" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QueryFirstService.QueryServiceOpcUaSub.QueryService.address" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,934" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="QuerySecondService.FieldsToArrowheadService.serviceDefinition" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,935" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="QuerySecondService.FieldsToArrowheadService.interfaces" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,936" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="QuerySecondService.FieldsToArrowheadService.serviceMetadata" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,937" Action="WRITE"><Connection Source="false" Destination="QuerySecondService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.metadataSearch" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,938" Action="WRITE"><Connection Source="1" Destination="QuerySecondService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.version" /></Request>
+RegisterMoreServicesSubApp;<Request ID="1,939" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="QuerySecondService.QueryServiceOpcUaSub.QueryService.address" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,940" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.DI2S.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.WS2WS.REQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,941" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.WS2WS.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.IpPort.REQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="1,942" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_1.GetAddress.CNF" Destination="GetEndpointFromServiceRegistryEntry_1.GetPort.REQ" /></Request>
@@ -2009,7 +2009,7 @@
 RegisterMoreServicesSubApp;<Request ID="2,009" Action="CREATE"><Connection Source="Sequencer.F_SUB_1.CNF" Destination="Sequencer.E_DEMUX_1_1.EI" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,010" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="QuerySecondService.FieldsToArrowheadService.REQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,011" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="F_EQ_3_1_1_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,012" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0_1.INIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,012" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO2" Destination="PUBL_0_1.REQ" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,013" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1.EO3" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,014" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO0" Destination="Sequencer.E_MERGE.EI2" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,015" Action="CREATE"><Connection Source="Sequencer.E_DEMUX_1_1.EO1" Destination="Sequencer.E_MERGE.EI2" /></Request>
@@ -2070,100 +2070,100 @@
 RegisterMoreServicesSubApp;<Request ID="2,070" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPort.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.IN_1" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,071" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.IpPortURI.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.S2WS.IN" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,072" Action="CREATE"><Connection Source="GetEndpointFromServiceRegistryEntry_2.WS2WS_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_2.IpPortURI.IN_2" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,073" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceHTTPSub.FieldsToServiceQueryForm.CNF" Destination="QuerySecondService.QueryServiceHTTPSub.QueryService.query" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,074" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceHTTPSub.QueryService.queried" Destination="GET_AT_INDEX_2.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,075" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceHTTPSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QuerySecondService.QueryServiceHTTPSub.QueryService.serviceQueryForm" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,076" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_1.IN_ARRAY" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,077" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_2.IN_ARRAY" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,078" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceHTTPSub.QueryService.queryServices" Destination="QuerySecondService.QueryServiceHTTPSub.QueryServiceHTTP.queryServices" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,079" Action="CREATE"><Connection Source="QuerySecondService.FieldsToArrowheadService.CNF" Destination="QuerySecondService.QueryServiceHTTPSub.FieldsToServiceQueryForm.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,080" Action="CREATE"><Connection Source="QuerySecondService.FieldsToArrowheadService.arrowheadService" Destination="QuerySecondService.QueryServiceHTTPSub.FieldsToServiceQueryForm.service" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,081" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceHTTPSub.FieldsToServiceQueryForm.CNF" Destination="QueryFirstService.QueryServiceHTTPSub.QueryService.query" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,082" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceHTTPSub.QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,083" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceHTTPSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryFirstService.QueryServiceHTTPSub.QueryService.serviceQueryForm" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,084" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,085" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceHTTPSub.QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,086" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceHTTPSub.QueryService.queryServices" Destination="QueryFirstService.QueryServiceHTTPSub.QueryServiceHTTP.queryServices" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,087" Action="CREATE"><Connection Source="QueryFirstService.FieldsToArrowheadService.CNF" Destination="QueryFirstService.QueryServiceHTTPSub.FieldsToServiceQueryForm.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,088" Action="CREATE"><Connection Source="QueryFirstService.FieldsToArrowheadService.arrowheadService" Destination="QueryFirstService.QueryServiceHTTPSub.FieldsToServiceQueryForm.service" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,089" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO0" Destination="RegisterManyServices.Reset.EI1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,090" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO1" Destination="RegisterManyServices.Reset.EI2" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,091" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToArrowheadService.CNF" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,092" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToServiceRegistryEntry.CNF" Destination="RegisterManyServices.RegUnreg.EI" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,093" Action="CREATE"><Connection Source="RegisterManyServices.RegUnreg.EO0" Destination="RegisterManyServices.RegisterService.unregister" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,094" Action="CREATE"><Connection Source="RegisterManyServices.RegUnreg.EO1" Destination="RegisterManyServices.RegisterService.register" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,095" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO1" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,096" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO0" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,097" Action="CREATE"><Connection Source="RegisterManyServices.IsLast.CNF" Destination="RegisterManyServices.E_SWITCH.EI" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,098" Action="CREATE"><Connection Source="RegisterManyServices.WSTRING2WSTRING.CNF" Destination="RegisterManyServices.IsLast.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,099" Action="CREATE"><Connection Source="RegisterManyServices.GetURI.CNF" Destination="RegisterManyServices.WSTRING2WSTRING.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,100" Action="CREATE"><Connection Source="RegisterManyServices.E_SPLIT.EO1" Destination="RegisterManyServices.E_CTU.CU" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,101" Action="CREATE"><Connection Source="RegisterManyServices.E_SWITCH.EO0" Destination="RegisterManyServices.E_SPLIT.EI" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,102" Action="CREATE"><Connection Source="RegisterManyServices.E_SWITCH.EO1" Destination="RegisterManyServices.E_CTU.R" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,103" Action="CREATE"><Connection Source="RegisterManyServices.E_SPLIT.EO2" Destination="RegisterManyServices.FieldsToArrowheadService.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,104" Action="CREATE"><Connection Source="RegisterManyServices.RegisterService.doneRegister" Destination="RegisterManyServices.GetName.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,105" Action="CREATE"><Connection Source="RegisterManyServices.E_CTU.RO" Destination="RegisterManyServices.RegUnregDone.EI" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,106" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT_1.CNF" Destination="RegisterManyServices.PermitReg.EI" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,107" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT.CNF" Destination="RegisterManyServices.PermitUnreg.EI" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,108" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.Register.R" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,109" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.Register.S" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,110" Action="CREATE"><Connection Source="RegisterManyServices.Reset.EO" Destination="RegisterManyServices.UnRegBlock.R" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,111" Action="CREATE"><Connection Source="RegisterManyServices.Reset.EO" Destination="RegisterManyServices.Regblock.R" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,112" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.UnRegBlock.S" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,113" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.Regblock.S" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,114" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.Regblock.S" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,115" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.UnRegBlock.S" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,116" Action="CREATE"><Connection Source="RegisterManyServices.RegisterService.doneUnregister" Destination="RegisterManyServices.GetName.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,117" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.CNF" Destination="RegisterManyServices.GetName.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,118" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.CNF" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,119" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,120" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,121" Action="CREATE"><Connection Source="RegisterManyServices.GetName.CNF" Destination="RegisterManyServices.GetURI.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,122" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToArrowheadService.arrowheadService" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.providedService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,123" Action="CREATE"><Connection Source="RegisterManyServices.Register.Q" Destination="RegisterManyServices.RegUnreg.G" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,124" Action="CREATE"><Connection Source="RegisterManyServices.Register.Q" Destination="RegisterManyServices.RegUnregDone.G" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,125" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterManyServices.RegisterService.serviceRegistryEntry" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,126" Action="CREATE"><Connection Source="RegisterManyServices.E_CTU.CV" Destination="RegisterManyServices.GetName.INDEX" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,127" Action="CREATE"><Connection Source="RegisterManyServices.GetName.OUT" Destination="RegisterManyServices.WSTRING2WSTRING.IN" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,128" Action="CREATE"><Connection Source="RegisterManyServices.E_CTU.CV" Destination="RegisterManyServices.GetURI.INDEX" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,129" Action="CREATE"><Connection Source="RegisterManyServices.IsLast.OUT" Destination="RegisterManyServices.E_SWITCH.G" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,130" Action="CREATE"><Connection Source="RegisterManyServices.WSTRING2WSTRING.OUT" Destination="RegisterManyServices.IsLast.IN2" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,131" Action="CREATE"><Connection Source="RegisterManyServices.GetURI.OUT" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.serviceURI" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,132" Action="CREATE"><Connection Source="RegisterManyServices.GetName.OUT" Destination="RegisterManyServices.FieldsToArrowheadService.serviceDefinition" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,133" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT.OUT" Destination="RegisterManyServices.PermitUnreg.PERMIT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,134" Action="CREATE"><Connection Source="RegisterManyServices.UnRegBlock.Q" Destination="RegisterManyServices.F_NOT.IN" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,135" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT_1.OUT" Destination="RegisterManyServices.PermitReg.PERMIT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,136" Action="CREATE"><Connection Source="RegisterManyServices.Regblock.Q" Destination="RegisterManyServices.F_NOT_1.IN" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,137" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.OUT" Destination="RegisterManyServices.GetURI.IN_ARRAY" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,138" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.OUT" Destination="RegisterManyServices.GetName.IN_ARRAY" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,139" Action="CREATE"><Connection Source="RegisterManyServices.RegisterService.registerService" Destination="RegisterManyServices.RegisterServiceHTTP.registerService" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,140" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,141" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,142" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,143" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,144" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GET_AT_INDEX_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,145" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,146" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,147" Action="CREATE"><Connection Source="GET_AT_INDEX_2.CNF" Destination="GET_AT_INDEX_1_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,148" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="Pos0Service1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,149" Action="CREATE"><Connection Source="Pos0Service1.CNF" Destination="Pos1Empty.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,150" Action="CREATE"><Connection Source="F_EQ_3.CNF" Destination="F_EQ_2.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,151" Action="CREATE"><Connection Source="F_EQ_3_1.CNF" Destination="F_EQ_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,152" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="Pos0Service2.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,153" Action="CREATE"><Connection Source="Pos0Service2.CNF" Destination="Pos1Empty2.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,154" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="Pos1Empty3.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,155" Action="CREATE"><Connection Source="F_EQ_3_1_1.CNF" Destination="Pos0Empty3.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,156" Action="CREATE"><Connection Source="Pos0Empty3.CNF" Destination="F_EQ_1_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,157" Action="CREATE"><Connection Source="Pos0Empty4.CNF" Destination="F_EQ_1_1_1.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,158" Action="CREATE"><Connection Source="F_EQ_1_1_1.CNF" Destination="Pos1Empty4.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,159" Action="CREATE"><Connection Source="F_EQ_3_1_1_1.CNF" Destination="Pos0Empty4.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,160" Action="CREATE"><Connection Source="Pos1Empty.CNF" Destination="E_MERGE.EI1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,161" Action="CREATE"><Connection Source="Pos1Empty2.CNF" Destination="E_MERGE.EI1" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,162" Action="CREATE"><Connection Source="Pos1Empty3.CNF" Destination="E_MERGE.EI2" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,163" Action="CREATE"><Connection Source="Pos1Empty4.CNF" Destination="E_MERGE.EI2" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,164" Action="CREATE"><Connection Source="E_MERGE.EO" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,165" Action="CREATE"><Connection Source="E_MERGE_1.EO" Destination="Sequencer.F_GT.REQ" /></Request>
-RegisterMoreServicesSubApp;<Request ID="2,166" Action="CREATE"><Connection Source="PUBL_0_1.INITO" Destination="PUBL_0_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,073" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO0" Destination="RegisterManyServices.Reset.EI1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,074" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO1" Destination="RegisterManyServices.Reset.EI2" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,075" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToArrowheadService.CNF" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,076" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToServiceRegistryEntry.CNF" Destination="RegisterManyServices.RegUnreg.EI" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,077" Action="CREATE"><Connection Source="RegisterManyServices.RegUnreg.EO0" Destination="RegisterManyServices.RegisterService.unregister" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,078" Action="CREATE"><Connection Source="RegisterManyServices.RegUnreg.EO1" Destination="RegisterManyServices.RegisterService.register" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,079" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO1" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,080" Action="CREATE"><Connection Source="RegisterManyServices.RegUnregDone.EO0" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,081" Action="CREATE"><Connection Source="RegisterManyServices.IsLast.CNF" Destination="RegisterManyServices.E_SWITCH.EI" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,082" Action="CREATE"><Connection Source="RegisterManyServices.WSTRING2WSTRING.CNF" Destination="RegisterManyServices.IsLast.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,083" Action="CREATE"><Connection Source="RegisterManyServices.GetURI.CNF" Destination="RegisterManyServices.WSTRING2WSTRING.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,084" Action="CREATE"><Connection Source="RegisterManyServices.E_SPLIT.EO1" Destination="RegisterManyServices.E_CTU.CU" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,085" Action="CREATE"><Connection Source="RegisterManyServices.E_SWITCH.EO0" Destination="RegisterManyServices.E_SPLIT.EI" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,086" Action="CREATE"><Connection Source="RegisterManyServices.E_SWITCH.EO1" Destination="RegisterManyServices.E_CTU.R" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,087" Action="CREATE"><Connection Source="RegisterManyServices.E_SPLIT.EO2" Destination="RegisterManyServices.FieldsToArrowheadService.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,088" Action="CREATE"><Connection Source="RegisterManyServices.RegisterService.doneRegister" Destination="RegisterManyServices.GetName.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,089" Action="CREATE"><Connection Source="RegisterManyServices.E_CTU.RO" Destination="RegisterManyServices.RegUnregDone.EI" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,090" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT_1.CNF" Destination="RegisterManyServices.PermitReg.EI" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,091" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT.CNF" Destination="RegisterManyServices.PermitUnreg.EI" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,092" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.Register.R" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,093" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.Register.S" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,094" Action="CREATE"><Connection Source="RegisterManyServices.Reset.EO" Destination="RegisterManyServices.UnRegBlock.R" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,095" Action="CREATE"><Connection Source="RegisterManyServices.Reset.EO" Destination="RegisterManyServices.Regblock.R" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,096" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.UnRegBlock.S" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,097" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.Regblock.S" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,098" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.Regblock.S" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,099" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.UnRegBlock.S" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,100" Action="CREATE"><Connection Source="RegisterManyServices.RegisterService.doneUnregister" Destination="RegisterManyServices.GetName.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,101" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.CNF" Destination="RegisterManyServices.GetName.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,102" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.CNF" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,103" Action="CREATE"><Connection Source="RegisterManyServices.PermitReg.EO" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,104" Action="CREATE"><Connection Source="RegisterManyServices.PermitUnreg.EO" Destination="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,105" Action="CREATE"><Connection Source="RegisterManyServices.GetName.CNF" Destination="RegisterManyServices.GetURI.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,106" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToArrowheadService.arrowheadService" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.providedService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,107" Action="CREATE"><Connection Source="RegisterManyServices.Register.Q" Destination="RegisterManyServices.RegUnreg.G" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,108" Action="CREATE"><Connection Source="RegisterManyServices.Register.Q" Destination="RegisterManyServices.RegUnregDone.G" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,109" Action="CREATE"><Connection Source="RegisterManyServices.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterManyServices.RegisterService.serviceRegistryEntry" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,110" Action="CREATE"><Connection Source="RegisterManyServices.E_CTU.CV" Destination="RegisterManyServices.GetName.INDEX" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,111" Action="CREATE"><Connection Source="RegisterManyServices.GetName.OUT" Destination="RegisterManyServices.WSTRING2WSTRING.IN" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,112" Action="CREATE"><Connection Source="RegisterManyServices.E_CTU.CV" Destination="RegisterManyServices.GetURI.INDEX" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,113" Action="CREATE"><Connection Source="RegisterManyServices.IsLast.OUT" Destination="RegisterManyServices.E_SWITCH.G" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,114" Action="CREATE"><Connection Source="RegisterManyServices.WSTRING2WSTRING.OUT" Destination="RegisterManyServices.IsLast.IN2" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,115" Action="CREATE"><Connection Source="RegisterManyServices.GetURI.OUT" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.serviceURI" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,116" Action="CREATE"><Connection Source="RegisterManyServices.GetName.OUT" Destination="RegisterManyServices.FieldsToArrowheadService.serviceDefinition" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,117" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT.OUT" Destination="RegisterManyServices.PermitUnreg.PERMIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,118" Action="CREATE"><Connection Source="RegisterManyServices.UnRegBlock.Q" Destination="RegisterManyServices.F_NOT.IN" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,119" Action="CREATE"><Connection Source="RegisterManyServices.F_NOT_1.OUT" Destination="RegisterManyServices.PermitReg.PERMIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,120" Action="CREATE"><Connection Source="RegisterManyServices.Regblock.Q" Destination="RegisterManyServices.F_NOT_1.IN" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,121" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING.OUT" Destination="RegisterManyServices.GetURI.IN_ARRAY" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,122" Action="CREATE"><Connection Source="RegisterManyServices.ARRAY2ARRAY_10_WSTRING_1.OUT" Destination="RegisterManyServices.GetName.IN_ARRAY" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,123" Action="CREATE"><Connection Source="RegisterManyServices.RegisterService.registerService" Destination="RegisterManyServices.RegisterServiceOpcUa.registerService" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,124" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.CNF" Destination="QueryFirstService.QueryServiceOpcUaSub.QueryService.query" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,125" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceOpcUaSub.QueryService.queried" Destination="GET_AT_INDEX.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,126" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QueryFirstService.QueryServiceOpcUaSub.QueryService.serviceQueryForm" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,127" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceOpcUaSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_1.IN_ARRAY" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,128" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceOpcUaSub.QueryService.serviceEntries" Destination="GET_AT_INDEX.IN_ARRAY" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,129" Action="CREATE"><Connection Source="QueryFirstService.QueryServiceOpcUaSub.QueryService.queryServices" Destination="QueryFirstService.QueryServiceOpcUaSub.QueryServiceOpcUa.queryServices" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,130" Action="CREATE"><Connection Source="QueryFirstService.FieldsToArrowheadService.CNF" Destination="QueryFirstService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,131" Action="CREATE"><Connection Source="QueryFirstService.FieldsToArrowheadService.arrowheadService" Destination="QueryFirstService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.service" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,132" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.CNF" Destination="QuerySecondService.QueryServiceOpcUaSub.QueryService.query" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,133" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceOpcUaSub.QueryService.queried" Destination="GET_AT_INDEX_2.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,134" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.serviceQueryForm" Destination="QuerySecondService.QueryServiceOpcUaSub.QueryService.serviceQueryForm" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,135" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceOpcUaSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_1_1.IN_ARRAY" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,136" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceOpcUaSub.QueryService.serviceEntries" Destination="GET_AT_INDEX_2.IN_ARRAY" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,137" Action="CREATE"><Connection Source="QuerySecondService.QueryServiceOpcUaSub.QueryService.queryServices" Destination="QuerySecondService.QueryServiceOpcUaSub.QueryServiceOpcUa.queryServices" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,138" Action="CREATE"><Connection Source="QuerySecondService.FieldsToArrowheadService.CNF" Destination="QuerySecondService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,139" Action="CREATE"><Connection Source="QuerySecondService.FieldsToArrowheadService.arrowheadService" Destination="QuerySecondService.QueryServiceOpcUaSub.FieldsToServiceQueryForm.service" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,140" Action="CREATE"><Connection Source="GET_AT_INDEX_1.CNF" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,141" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,142" Action="CREATE"><Connection Source="GET_AT_INDEX.CNF" Destination="GET_AT_INDEX_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,143" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,144" Action="CREATE"><Connection Source="GET_AT_INDEX_1_1.CNF" Destination="GetEndpointFromServiceRegistryEntry_2.ServiceRegistryEntry2ServiceRegistryEntry.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,145" Action="CREATE"><Connection Source="GET_AT_INDEX_2.CNF" Destination="GET_AT_INDEX_1_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,146" Action="CREATE"><Connection Source="F_EQ_2.CNF" Destination="Pos0Service1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,147" Action="CREATE"><Connection Source="Pos0Service1.CNF" Destination="Pos1Empty.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,148" Action="CREATE"><Connection Source="F_EQ_3.CNF" Destination="F_EQ_2.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,149" Action="CREATE"><Connection Source="F_EQ_3_1.CNF" Destination="F_EQ_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,150" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="Pos0Service2.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,151" Action="CREATE"><Connection Source="Pos0Service2.CNF" Destination="Pos1Empty2.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,152" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="Pos1Empty3.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,153" Action="CREATE"><Connection Source="F_EQ_3_1_1.CNF" Destination="Pos0Empty3.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,154" Action="CREATE"><Connection Source="Pos0Empty3.CNF" Destination="F_EQ_1_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,155" Action="CREATE"><Connection Source="Pos0Empty4.CNF" Destination="F_EQ_1_1_1.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,156" Action="CREATE"><Connection Source="F_EQ_1_1_1.CNF" Destination="Pos1Empty4.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,157" Action="CREATE"><Connection Source="F_EQ_3_1_1_1.CNF" Destination="Pos0Empty4.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,158" Action="CREATE"><Connection Source="Pos1Empty.CNF" Destination="E_MERGE.EI1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,159" Action="CREATE"><Connection Source="Pos1Empty2.CNF" Destination="E_MERGE.EI1" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,160" Action="CREATE"><Connection Source="Pos1Empty3.CNF" Destination="E_MERGE.EI2" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,161" Action="CREATE"><Connection Source="Pos1Empty4.CNF" Destination="E_MERGE.EI2" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,162" Action="CREATE"><Connection Source="E_MERGE.EO" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,163" Action="CREATE"><Connection Source="E_MERGE_1.EO" Destination="Sequencer.F_GT.REQ" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,164" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,165" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+RegisterMoreServicesSubApp;<Request ID="2,166" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0_1.INIT" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,167" Action="CREATE"><Connection Source="GET_AT_INDEX_1.OUT" Destination="GetEndpointFromServiceRegistryEntry_1.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,168" Action="CREATE"><Connection Source="GET_AT_INDEX.OUT" Destination="GetEndpointFromServiceRegistryEntry.ServiceRegistryEntry2ServiceRegistryEntry.IN" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,169" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="Pos1Empty2.check" /></Request>
@@ -2179,69 +2179,69 @@
 RegisterMoreServicesSubApp;<Request ID="2,179" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterManyServices.FieldsToServiceRegistryEntry.provider" /></Request>
 RegisterMoreServicesSubApp;<Request ID="2,180" Action="START"/>
 ;<Request ID="2,181" Action="CREATE"><FB Name="OrchestratorNoRule" Type="EMB_RES" /></Request>
-OrchestratorNoRule;<Request ID="2,182" Action="CREATE"><FB Name="RequestOrchestrationHTTP" Type="RequestOrchestrationHTTP" /></Request>
-OrchestratorNoRule;<Request ID="2,183" Action="CREATE"><FB Name="FieldsToServiceRequestForm" Type="FieldsToServiceRequestForm" /></Request>
-OrchestratorNoRule;<Request ID="2,184" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-OrchestratorNoRule;<Request ID="2,185" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
-OrchestratorNoRule;<Request ID="2,186" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-OrchestratorNoRule;<Request ID="2,187" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
-OrchestratorNoRule;<Request ID="2,188" Action="CREATE"><FB Name="Service1" Type="FieldsToArrowheadService" /></Request>
-OrchestratorNoRule;<Request ID="2,189" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="Service1.serviceDefinition" /></Request>
-OrchestratorNoRule;<Request ID="2,190" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service1.interfaces" /></Request>
-OrchestratorNoRule;<Request ID="2,191" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service1.serviceMetadata" /></Request>
-OrchestratorNoRule;<Request ID="2,192" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-OrchestratorNoRule;<Request ID="2,193" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.WS2WS" Type="WSTRING2WSTRING" /></Request>
-OrchestratorNoRule;<Request ID="2,194" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.DI2S" Type="F_DINT_TO_STRING" /></Request>
-OrchestratorNoRule;<Request ID="2,195" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-OrchestratorNoRule;<Request ID="2,196" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromOrchestrationForm.GetAddress.member" /></Request>
-OrchestratorNoRule;<Request ID="2,197" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-OrchestratorNoRule;<Request ID="2,198" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromOrchestrationForm.GetPort.member" /></Request>
-OrchestratorNoRule;<Request ID="2,199" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-OrchestratorNoRule;<Request ID="2,200" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromOrchestrationForm.GetURI.member" /></Request>
-OrchestratorNoRule;<Request ID="2,201" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.IpPort" Type="APPEND_STRING_3" /></Request>
-OrchestratorNoRule;<Request ID="2,202" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromOrchestrationForm.IpPort.IN_2" /></Request>
-OrchestratorNoRule;<Request ID="2,203" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm" Type="OrchestrationForm2OrchestrationForm" /></Request>
-OrchestratorNoRule;<Request ID="2,204" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.WS2WS_1" Type="WSTRING2WSTRING" /></Request>
-OrchestratorNoRule;<Request ID="2,205" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.IpPortURI" Type="APPEND_STRING_2" /></Request>
-OrchestratorNoRule;<Request ID="2,206" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
-OrchestratorNoRule;<Request ID="2,207" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
-OrchestratorNoRule;<Request ID="2,208" Action="CREATE"><FB Name="NoServiceAvailable" Type="TEST_CONDITION" /></Request>
-OrchestratorNoRule;<Request ID="2,209" Action="CREATE"><FB Name="SERVER_1" Type="SERVER_1" /></Request>
-OrchestratorNoRule;<Request ID="2,210" Action="WRITE"><Connection Source="http[/serviceTest/start2]" Destination="SERVER_1.ID" /></Request>
-OrchestratorNoRule;<Request ID="2,211" Action="CREATE"><FB Name="E_SR" Type="E_SR" /></Request>
-OrchestratorNoRule;<Request ID="2,212" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-OrchestratorNoRule;<Request ID="2,213" Action="CREATE"><FB Name="RegisterService2.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-OrchestratorNoRule;<Request ID="2,214" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
-OrchestratorNoRule;<Request ID="2,215" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
-OrchestratorNoRule;<Request ID="2,216" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
-OrchestratorNoRule;<Request ID="2,217" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
-OrchestratorNoRule;<Request ID="2,218" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
-OrchestratorNoRule;<Request ID="2,219" Action="WRITE"><Connection Source="test6Ended" Destination="SUBL_0.ID" /></Request>
-OrchestratorNoRule;<Request ID="2,220" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-OrchestratorNoRule;<Request ID="2,221" Action="WRITE"><Connection Source="WSTRING#test7Ended" Destination="PUBL_0.ID" /></Request>
-OrchestratorNoRule;<Request ID="2,222" Action="CREATE"><FB Name="GET_STRUCT_VALUE1" Type="GET_AT_INDEX" /></Request>
-OrchestratorNoRule;<Request ID="2,223" Action="WRITE"><Connection Source="0" Destination="GET_STRUCT_VALUE1.INDEX" /></Request>
-OrchestratorNoRule;<Request ID="2,224" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX" Type="E_DEMUX" /></Request>
-OrchestratorNoRule;<Request ID="2,225" Action="CREATE"><FB Name="Sequencer_1.E_CTU" Type="E_CTU" /></Request>
-OrchestratorNoRule;<Request ID="2,226" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1" Type="E_DEMUX" /></Request>
-OrchestratorNoRule;<Request ID="2,227" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH" Type="E_SWITCH" /></Request>
-OrchestratorNoRule;<Request ID="2,228" Action="CREATE"><FB Name="Sequencer_1.F_GT" Type="F_GT" /></Request>
-OrchestratorNoRule;<Request ID="2,229" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer_1.F_GT.IN2" /></Request>
-OrchestratorNoRule;<Request ID="2,230" Action="CREATE"><FB Name="Sequencer_1.F_SUB" Type="F_SUB" /></Request>
-OrchestratorNoRule;<Request ID="2,231" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer_1.F_SUB.IN2" /></Request>
-OrchestratorNoRule;<Request ID="2,232" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
-OrchestratorNoRule;<Request ID="2,233" Action="CREATE"><FB Name="Sequencer_1.F_GT_1" Type="F_GT" /></Request>
-OrchestratorNoRule;<Request ID="2,234" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer_1.F_GT_1.IN2" /></Request>
-OrchestratorNoRule;<Request ID="2,235" Action="CREATE"><FB Name="Sequencer_1.F_SUB_1" Type="F_SUB" /></Request>
-OrchestratorNoRule;<Request ID="2,236" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer_1.F_SUB_1.IN2" /></Request>
-OrchestratorNoRule;<Request ID="2,237" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH_1" Type="E_SWITCH" /></Request>
-OrchestratorNoRule;<Request ID="2,238" Action="CREATE"><FB Name="RequestOrchestrationForm" Type="RequestOrchestrationForm" /></Request>
-OrchestratorNoRule;<Request ID="2,239" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8440/orchestrator" Destination="RequestOrchestrationForm.endpoint" /></Request>
+OrchestratorNoRule;<Request ID="2,182" Action="CREATE"><FB Name="FieldsToServiceRequestForm" Type="FieldsToServiceRequestForm" /></Request>
+OrchestratorNoRule;<Request ID="2,183" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+OrchestratorNoRule;<Request ID="2,184" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+OrchestratorNoRule;<Request ID="2,185" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+OrchestratorNoRule;<Request ID="2,186" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
+OrchestratorNoRule;<Request ID="2,187" Action="CREATE"><FB Name="Service1" Type="FieldsToArrowheadService" /></Request>
+OrchestratorNoRule;<Request ID="2,188" Action="WRITE"><Connection Source="WSTRING#serviceTest2" Destination="Service1.serviceDefinition" /></Request>
+OrchestratorNoRule;<Request ID="2,189" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service1.interfaces" /></Request>
+OrchestratorNoRule;<Request ID="2,190" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="Service1.serviceMetadata" /></Request>
+OrchestratorNoRule;<Request ID="2,191" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+OrchestratorNoRule;<Request ID="2,192" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.WS2WS" Type="WSTRING2WSTRING" /></Request>
+OrchestratorNoRule;<Request ID="2,193" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.DI2S" Type="F_DINT_TO_STRING" /></Request>
+OrchestratorNoRule;<Request ID="2,194" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+OrchestratorNoRule;<Request ID="2,195" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromOrchestrationForm.GetAddress.member" /></Request>
+OrchestratorNoRule;<Request ID="2,196" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+OrchestratorNoRule;<Request ID="2,197" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromOrchestrationForm.GetPort.member" /></Request>
+OrchestratorNoRule;<Request ID="2,198" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+OrchestratorNoRule;<Request ID="2,199" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromOrchestrationForm.GetURI.member" /></Request>
+OrchestratorNoRule;<Request ID="2,200" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.IpPort" Type="APPEND_STRING_3" /></Request>
+OrchestratorNoRule;<Request ID="2,201" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromOrchestrationForm.IpPort.IN_2" /></Request>
+OrchestratorNoRule;<Request ID="2,202" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm" Type="OrchestrationForm2OrchestrationForm" /></Request>
+OrchestratorNoRule;<Request ID="2,203" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.WS2WS_1" Type="WSTRING2WSTRING" /></Request>
+OrchestratorNoRule;<Request ID="2,204" Action="CREATE"><FB Name="GetEndpointFromOrchestrationForm.IpPortURI" Type="APPEND_STRING_2" /></Request>
+OrchestratorNoRule;<Request ID="2,205" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+OrchestratorNoRule;<Request ID="2,206" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
+OrchestratorNoRule;<Request ID="2,207" Action="CREATE"><FB Name="NoServiceAvailable" Type="TEST_CONDITION" /></Request>
+OrchestratorNoRule;<Request ID="2,208" Action="CREATE"><FB Name="E_SR" Type="E_SR" /></Request>
+OrchestratorNoRule;<Request ID="2,209" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+OrchestratorNoRule;<Request ID="2,210" Action="WRITE"><Connection Source="test6Ended" Destination="SUBL_0.ID" /></Request>
+OrchestratorNoRule;<Request ID="2,211" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+OrchestratorNoRule;<Request ID="2,212" Action="WRITE"><Connection Source="WSTRING#test7Ended" Destination="PUBL_0.ID" /></Request>
+OrchestratorNoRule;<Request ID="2,213" Action="CREATE"><FB Name="GET_STRUCT_VALUE1" Type="GET_AT_INDEX" /></Request>
+OrchestratorNoRule;<Request ID="2,214" Action="WRITE"><Connection Source="0" Destination="GET_STRUCT_VALUE1.INDEX" /></Request>
+OrchestratorNoRule;<Request ID="2,215" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX" Type="E_DEMUX" /></Request>
+OrchestratorNoRule;<Request ID="2,216" Action="CREATE"><FB Name="Sequencer_1.E_CTU" Type="E_CTU" /></Request>
+OrchestratorNoRule;<Request ID="2,217" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1" Type="E_DEMUX" /></Request>
+OrchestratorNoRule;<Request ID="2,218" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH" Type="E_SWITCH" /></Request>
+OrchestratorNoRule;<Request ID="2,219" Action="CREATE"><FB Name="Sequencer_1.F_GT" Type="F_GT" /></Request>
+OrchestratorNoRule;<Request ID="2,220" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer_1.F_GT.IN2" /></Request>
+OrchestratorNoRule;<Request ID="2,221" Action="CREATE"><FB Name="Sequencer_1.F_SUB" Type="F_SUB" /></Request>
+OrchestratorNoRule;<Request ID="2,222" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer_1.F_SUB.IN2" /></Request>
+OrchestratorNoRule;<Request ID="2,223" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
+OrchestratorNoRule;<Request ID="2,224" Action="CREATE"><FB Name="Sequencer_1.F_GT_1" Type="F_GT" /></Request>
+OrchestratorNoRule;<Request ID="2,225" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer_1.F_GT_1.IN2" /></Request>
+OrchestratorNoRule;<Request ID="2,226" Action="CREATE"><FB Name="Sequencer_1.F_SUB_1" Type="F_SUB" /></Request>
+OrchestratorNoRule;<Request ID="2,227" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer_1.F_SUB_1.IN2" /></Request>
+OrchestratorNoRule;<Request ID="2,228" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH_1" Type="E_SWITCH" /></Request>
+OrchestratorNoRule;<Request ID="2,229" Action="CREATE"><FB Name="RequestOrchestrationForm" Type="RequestOrchestrationForm" /></Request>
+OrchestratorNoRule;<Request ID="2,230" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62548/orchestrator" Destination="RequestOrchestrationForm.endpoint" /></Request>
+OrchestratorNoRule;<Request ID="2,231" Action="CREATE"><FB Name="RequestOrchestrationHTTP" Type="RequestOrchestrationOpcUa" /></Request>
+OrchestratorNoRule;<Request ID="2,232" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+OrchestratorNoRule;<Request ID="2,233" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
+OrchestratorNoRule;<Request ID="2,234" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
+OrchestratorNoRule;<Request ID="2,235" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
+OrchestratorNoRule;<Request ID="2,236" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
+OrchestratorNoRule;<Request ID="2,237" Action="CREATE"><FB Name="RegisterService2.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+OrchestratorNoRule;<Request ID="2,238" Action="CREATE"><FB Name="SERVER_1_1" Type="SERVER_0" /></Request>
+OrchestratorNoRule;<Request ID="2,239" Action="WRITE"><Connection Source="opc_ua[CREATE_METHOD;/Objects/serviceTest/start2]" Destination="SERVER_1_1.ID" /></Request>
 OrchestratorNoRule;<Request ID="2,240" Action="WRITE"><Connection Source="/serviceTest/start2" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
 OrchestratorNoRule;<Request ID="2,241" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
 OrchestratorNoRule;<Request ID="2,242" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
-OrchestratorNoRule;<Request ID="2,243" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
-OrchestratorNoRule;<Request ID="2,244" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
+OrchestratorNoRule;<Request ID="2,243" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
+OrchestratorNoRule;<Request ID="2,244" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
 OrchestratorNoRule;<Request ID="2,245" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationForm.DI2S.CNF" Destination="GetEndpointFromOrchestrationForm.WS2WS.REQ" /></Request>
 OrchestratorNoRule;<Request ID="2,246" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationForm.GetPort.CNF" Destination="GetEndpointFromOrchestrationForm.GetURI.REQ" /></Request>
 OrchestratorNoRule;<Request ID="2,247" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationForm.WS2WS.CNF" Destination="GetEndpointFromOrchestrationForm.IpPort.REQ" /></Request>
@@ -2264,90 +2264,90 @@
 OrchestratorNoRule;<Request ID="2,264" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationForm.IpPort.OUT" Destination="GetEndpointFromOrchestrationForm.IpPortURI.IN_1" /></Request>
 OrchestratorNoRule;<Request ID="2,265" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationForm.IpPortURI.OUT" Destination="GetEndpointFromOrchestrationForm.S2WS.IN" /></Request>
 OrchestratorNoRule;<Request ID="2,266" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationForm.WS2WS_1.OUT" Destination="GetEndpointFromOrchestrationForm.IpPortURI.IN_2" /></Request>
-OrchestratorNoRule;<Request ID="2,267" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,268" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,269" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
-OrchestratorNoRule;<Request ID="2,270" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
-OrchestratorNoRule;<Request ID="2,271" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
-OrchestratorNoRule;<Request ID="2,272" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
-OrchestratorNoRule;<Request ID="2,273" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
-OrchestratorNoRule;<Request ID="2,274" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
-OrchestratorNoRule;<Request ID="2,275" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
-OrchestratorNoRule;<Request ID="2,276" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceHTTP_1.registerService" /></Request>
-OrchestratorNoRule;<Request ID="2,277" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
-OrchestratorNoRule;<Request ID="2,278" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="RegisterService2.E_SR.S" /></Request>
-OrchestratorNoRule;<Request ID="2,279" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,280" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="RegisterService2.E_REND.EI1" /></Request>
-OrchestratorNoRule;<Request ID="2,281" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
-OrchestratorNoRule;<Request ID="2,282" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="E_SR.S" /></Request>
-OrchestratorNoRule;<Request ID="2,283" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
-OrchestratorNoRule;<Request ID="2,284" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="E_SR.R" /></Request>
-OrchestratorNoRule;<Request ID="2,285" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
-OrchestratorNoRule;<Request ID="2,286" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="E_SR.S" /></Request>
-OrchestratorNoRule;<Request ID="2,287" Action="CREATE"><Connection Source="Sequencer_1.F_GT.CNF" Destination="Sequencer_1.E_SWITCH.EI" /></Request>
-OrchestratorNoRule;<Request ID="2,288" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO0" Destination="Sequencer_1.E_DEMUX.EI" /></Request>
-OrchestratorNoRule;<Request ID="2,289" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.CNF" Destination="Sequencer_1.E_DEMUX_1.EI" /></Request>
-OrchestratorNoRule;<Request ID="2,290" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO1" Destination="Sequencer_1.F_GT_1.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,291" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.CNF" Destination="Sequencer_1.E_SWITCH_1.EI" /></Request>
-OrchestratorNoRule;<Request ID="2,292" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO0" Destination="Sequencer_1.F_SUB.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,293" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO1" Destination="Sequencer_1.F_SUB_1.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,294" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1.EI" /></Request>
-OrchestratorNoRule;<Request ID="2,295" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="RegisterService2.E_SR.R" /></Request>
-OrchestratorNoRule;<Request ID="2,296" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,297" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="RegisterService2.E_REND.EI1" /></Request>
-OrchestratorNoRule;<Request ID="2,298" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
-OrchestratorNoRule;<Request ID="2,299" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="E_SR.R" /></Request>
-OrchestratorNoRule;<Request ID="2,300" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="PUBL_0.INIT" /></Request>
-OrchestratorNoRule;<Request ID="2,301" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1.E_CTU.R" /></Request>
-OrchestratorNoRule;<Request ID="2,302" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,303" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,304" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,305" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,306" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,307" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,308" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,309" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,310" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,311" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,312" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestratorNoRule;<Request ID="2,313" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.E_DEMUX.K" /></Request>
-OrchestratorNoRule;<Request ID="2,314" Action="CREATE"><Connection Source="Sequencer_1.F_GT.OUT" Destination="Sequencer_1.E_SWITCH.G" /></Request>
-OrchestratorNoRule;<Request ID="2,315" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.OUT" Destination="Sequencer_1.E_DEMUX_1.K" /></Request>
-OrchestratorNoRule;<Request ID="2,316" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT.IN1" /></Request>
-OrchestratorNoRule;<Request ID="2,317" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB.IN1" /></Request>
-OrchestratorNoRule;<Request ID="2,318" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1.IN1" /></Request>
-OrchestratorNoRule;<Request ID="2,319" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1.IN1" /></Request>
-OrchestratorNoRule;<Request ID="2,320" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.OUT" Destination="Sequencer_1.E_SWITCH_1.G" /></Request>
-OrchestratorNoRule;<Request ID="2,321" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1.K" /></Request>
+OrchestratorNoRule;<Request ID="2,267" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
+OrchestratorNoRule;<Request ID="2,268" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="RegisterService2.E_SR.S" /></Request>
+OrchestratorNoRule;<Request ID="2,269" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,270" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="RegisterService2.E_REND.EI1" /></Request>
+OrchestratorNoRule;<Request ID="2,271" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
+OrchestratorNoRule;<Request ID="2,272" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="E_SR.S" /></Request>
+OrchestratorNoRule;<Request ID="2,273" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
+OrchestratorNoRule;<Request ID="2,274" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="E_SR.R" /></Request>
+OrchestratorNoRule;<Request ID="2,275" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
+OrchestratorNoRule;<Request ID="2,276" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="E_SR.S" /></Request>
+OrchestratorNoRule;<Request ID="2,277" Action="CREATE"><Connection Source="Sequencer_1.F_GT.CNF" Destination="Sequencer_1.E_SWITCH.EI" /></Request>
+OrchestratorNoRule;<Request ID="2,278" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO0" Destination="Sequencer_1.E_DEMUX.EI" /></Request>
+OrchestratorNoRule;<Request ID="2,279" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.CNF" Destination="Sequencer_1.E_DEMUX_1.EI" /></Request>
+OrchestratorNoRule;<Request ID="2,280" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO1" Destination="Sequencer_1.F_GT_1.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,281" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.CNF" Destination="Sequencer_1.E_SWITCH_1.EI" /></Request>
+OrchestratorNoRule;<Request ID="2,282" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO0" Destination="Sequencer_1.F_SUB.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,283" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO1" Destination="Sequencer_1.F_SUB_1.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,284" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1.EI" /></Request>
+OrchestratorNoRule;<Request ID="2,285" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="RegisterService2.E_SR.R" /></Request>
+OrchestratorNoRule;<Request ID="2,286" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,287" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="RegisterService2.E_REND.EI1" /></Request>
+OrchestratorNoRule;<Request ID="2,288" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="RequestOrchestrationForm.requestOrchestator" /></Request>
+OrchestratorNoRule;<Request ID="2,289" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="E_SR.R" /></Request>
+OrchestratorNoRule;<Request ID="2,290" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="PUBL_0.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,291" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1.E_CTU.R" /></Request>
+OrchestratorNoRule;<Request ID="2,292" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,293" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,294" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,295" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,296" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,297" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,298" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,299" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,300" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,301" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,302" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestratorNoRule;<Request ID="2,303" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.E_DEMUX.K" /></Request>
+OrchestratorNoRule;<Request ID="2,304" Action="CREATE"><Connection Source="Sequencer_1.F_GT.OUT" Destination="Sequencer_1.E_SWITCH.G" /></Request>
+OrchestratorNoRule;<Request ID="2,305" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.OUT" Destination="Sequencer_1.E_DEMUX_1.K" /></Request>
+OrchestratorNoRule;<Request ID="2,306" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT.IN1" /></Request>
+OrchestratorNoRule;<Request ID="2,307" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB.IN1" /></Request>
+OrchestratorNoRule;<Request ID="2,308" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1.IN1" /></Request>
+OrchestratorNoRule;<Request ID="2,309" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1.IN1" /></Request>
+OrchestratorNoRule;<Request ID="2,310" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.OUT" Destination="Sequencer_1.E_SWITCH_1.G" /></Request>
+OrchestratorNoRule;<Request ID="2,311" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1.K" /></Request>
+OrchestratorNoRule;<Request ID="2,312" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,313" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,314" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
+OrchestratorNoRule;<Request ID="2,315" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
+OrchestratorNoRule;<Request ID="2,316" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
+OrchestratorNoRule;<Request ID="2,317" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
+OrchestratorNoRule;<Request ID="2,318" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
+OrchestratorNoRule;<Request ID="2,319" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
+OrchestratorNoRule;<Request ID="2,320" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
+OrchestratorNoRule;<Request ID="2,321" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceOpcUa.registerService" /></Request>
 OrchestratorNoRule;<Request ID="2,322" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
 OrchestratorNoRule;<Request ID="2,323" Action="CREATE"><Connection Source="Service1.CNF" Destination="FieldsToServiceRequestForm.REQ" /></Request>
 OrchestratorNoRule;<Request ID="2,324" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoServiceAvailable.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,325" Action="CREATE"><Connection Source="E_SR.EO" Destination="SERVER_1.INIT" /></Request>
-OrchestratorNoRule;<Request ID="2,326" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,327" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,328" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-OrchestratorNoRule;<Request ID="2,329" Action="CREATE"><Connection Source="GET_STRUCT_VALUE1.CNF" Destination="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,330" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,331" Action="CREATE"><Connection Source="FieldsToServiceRequestForm.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,332" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-OrchestratorNoRule;<Request ID="2,333" Action="CREATE"><Connection Source="SERVER_1.INITO" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestratorNoRule;<Request ID="2,334" Action="CREATE"><Connection Source="RequestOrchestrationForm.responseReceived" Destination="GET_STRUCT_VALUE1.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,325" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,326" Action="CREATE"><Connection Source="GET_STRUCT_VALUE1.CNF" Destination="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,327" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,328" Action="CREATE"><Connection Source="FieldsToServiceRequestForm.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,329" Action="CREATE"><Connection Source="RequestOrchestrationForm.responseReceived" Destination="GET_STRUCT_VALUE1.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,330" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+OrchestratorNoRule;<Request ID="2,331" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+OrchestratorNoRule;<Request ID="2,332" Action="CREATE"><Connection Source="E_SR.EO" Destination="SERVER_1_1.INIT" /></Request>
+OrchestratorNoRule;<Request ID="2,333" Action="CREATE"><Connection Source="SERVER_1_1.INITO" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestratorNoRule;<Request ID="2,334" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
 OrchestratorNoRule;<Request ID="2,335" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToServiceRequestForm.requesterSystem" /></Request>
 OrchestratorNoRule;<Request ID="2,336" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="FieldsToServiceRequestForm.requestedService" /></Request>
 OrchestratorNoRule;<Request ID="2,337" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoServiceAvailable.check" /></Request>
-OrchestratorNoRule;<Request ID="2,338" Action="CREATE"><Connection Source="E_SR.Q" Destination="SERVER_1.QI" /></Request>
-OrchestratorNoRule;<Request ID="2,339" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
-OrchestratorNoRule;<Request ID="2,340" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
-OrchestratorNoRule;<Request ID="2,341" Action="CREATE"><Connection Source="GET_STRUCT_VALUE1.OUT" Destination="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.IN" /></Request>
-OrchestratorNoRule;<Request ID="2,342" Action="CREATE"><Connection Source="FieldsToServiceRequestForm.serviceRequestForm" Destination="RequestOrchestrationForm.serviceRequestForm" /></Request>
-OrchestratorNoRule;<Request ID="2,343" Action="CREATE"><Connection Source="RequestOrchestrationForm.orchestrationResponse" Destination="GET_STRUCT_VALUE1.IN_ARRAY" /></Request>
+OrchestratorNoRule;<Request ID="2,338" Action="CREATE"><Connection Source="GET_STRUCT_VALUE1.OUT" Destination="GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.IN" /></Request>
+OrchestratorNoRule;<Request ID="2,339" Action="CREATE"><Connection Source="FieldsToServiceRequestForm.serviceRequestForm" Destination="RequestOrchestrationForm.serviceRequestForm" /></Request>
+OrchestratorNoRule;<Request ID="2,340" Action="CREATE"><Connection Source="RequestOrchestrationForm.orchestrationResponse" Destination="GET_STRUCT_VALUE1.IN_ARRAY" /></Request>
+OrchestratorNoRule;<Request ID="2,341" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
+OrchestratorNoRule;<Request ID="2,342" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
+OrchestratorNoRule;<Request ID="2,343" Action="CREATE"><Connection Source="E_SR.Q" Destination="SERVER_1_1.QI" /></Request>
 OrchestratorNoRule;<Request ID="2,344" Action="CREATE"><Connection Source="RequestOrchestrationForm.requestOrchestration" Destination="RequestOrchestrationHTTP.requestOrchestration" /></Request>
 OrchestratorNoRule;<Request ID="2,345" Action="START"/>
 ;<Request ID="2,346" Action="CREATE"><FB Name="OrchestrationWithRules" Type="EMB_RES" /></Request>
 OrchestrationWithRules;<Request ID="2,347" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
 OrchestrationWithRules;<Request ID="2,348" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
 OrchestrationWithRules;<Request ID="2,349" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
-OrchestrationWithRules;<Request ID="2,350" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
+OrchestrationWithRules;<Request ID="2,350" Action="WRITE"><Connection Source="4840" Destination="FieldsToArrowheadSystem.port" /></Request>
 OrchestrationWithRules;<Request ID="2,351" Action="CREATE"><FB Name="Service1" Type="FieldsToArrowheadService" /></Request>
 OrchestrationWithRules;<Request ID="2,352" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="Service1.serviceDefinition" /></Request>
 OrchestrationWithRules;<Request ID="2,353" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="Service1.interfaces" /></Request>
@@ -2355,223 +2355,387 @@
 OrchestrationWithRules;<Request ID="2,355" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
 OrchestrationWithRules;<Request ID="2,356" Action="WRITE"><Connection Source="WSTRING#:0" Destination="F_EQ.IN1" /></Request>
 OrchestrationWithRules;<Request ID="2,357" Action="CREATE"><FB Name="NoServiceAvailable" Type="TEST_CONDITION" /></Request>
-OrchestrationWithRules;<Request ID="2,358" Action="CREATE"><FB Name="SERVER_1" Type="SERVER_1" /></Request>
-OrchestrationWithRules;<Request ID="2,359" Action="WRITE"><Connection Source="http[/serviceTest/start]" Destination="SERVER_1.ID" /></Request>
-OrchestrationWithRules;<Request ID="2,360" Action="CREATE"><FB Name="E_SR" Type="E_SR" /></Request>
-OrchestrationWithRules;<Request ID="2,361" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
-OrchestrationWithRules;<Request ID="2,362" Action="CREATE"><FB Name="RegisterService2.RegisterServiceHTTP_1" Type="RegisterServiceHTTP" /></Request>
-OrchestrationWithRules;<Request ID="2,363" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
-OrchestrationWithRules;<Request ID="2,364" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
-OrchestrationWithRules;<Request ID="2,365" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
-OrchestrationWithRules;<Request ID="2,366" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
-OrchestrationWithRules;<Request ID="2,367" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
-OrchestrationWithRules;<Request ID="2,368" Action="WRITE"><Connection Source="WSTRING#test7Ended" Destination="SUBL_0.ID" /></Request>
-OrchestrationWithRules;<Request ID="2,369" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
-OrchestrationWithRules;<Request ID="2,370" Action="WRITE"><Connection Source="WSTRIGN#allEnded" Destination="PUBL_0.ID" /></Request>
-OrchestrationWithRules;<Request ID="2,371" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX" Type="E_DEMUX" /></Request>
-OrchestrationWithRules;<Request ID="2,372" Action="CREATE"><FB Name="Sequencer_1.E_CTU" Type="E_CTU" /></Request>
-OrchestrationWithRules;<Request ID="2,373" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1" Type="E_DEMUX" /></Request>
-OrchestrationWithRules;<Request ID="2,374" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH" Type="E_SWITCH" /></Request>
-OrchestrationWithRules;<Request ID="2,375" Action="CREATE"><FB Name="Sequencer_1.F_GT" Type="F_GT" /></Request>
-OrchestrationWithRules;<Request ID="2,376" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer_1.F_GT.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,377" Action="CREATE"><FB Name="Sequencer_1.F_SUB" Type="F_SUB" /></Request>
-OrchestrationWithRules;<Request ID="2,378" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer_1.F_SUB.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,379" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
-OrchestrationWithRules;<Request ID="2,380" Action="CREATE"><FB Name="Sequencer_1.F_GT_1" Type="F_GT" /></Request>
-OrchestrationWithRules;<Request ID="2,381" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer_1.F_GT_1.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,382" Action="CREATE"><FB Name="Sequencer_1.F_SUB_1" Type="F_SUB" /></Request>
-OrchestrationWithRules;<Request ID="2,383" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer_1.F_SUB_1.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,384" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH_1" Type="E_SWITCH" /></Request>
-OrchestrationWithRules;<Request ID="2,385" Action="CREATE"><FB Name="Sequencer_1.F_GT_1_1" Type="F_GT" /></Request>
-OrchestrationWithRules;<Request ID="2,386" Action="WRITE"><Connection Source="INT#11" Destination="Sequencer_1.F_GT_1_1.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,387" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH_1_1" Type="E_SWITCH" /></Request>
-OrchestrationWithRules;<Request ID="2,388" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1_1_1" Type="E_DEMUX" /></Request>
-OrchestrationWithRules;<Request ID="2,389" Action="CREATE"><FB Name="Sequencer_1.F_SUB_1_1" Type="F_SUB" /></Request>
-OrchestrationWithRules;<Request ID="2,390" Action="WRITE"><Connection Source="INT#12" Destination="Sequencer_1.F_SUB_1_1.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,391" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
-OrchestrationWithRules;<Request ID="2,392" Action="WRITE"><Connection Source="WSTRING#localhost:8090/serviceTest/start" Destination="F_EQ_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,393" Action="CREATE"><FB Name="ServiceAvailable" Type="TEST_CONDITION" /></Request>
-OrchestrationWithRules;<Request ID="2,394" Action="CREATE"><FB Name="E_SR_1" Type="E_SR" /></Request>
-OrchestrationWithRules;<Request ID="2,395" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
-OrchestrationWithRules;<Request ID="2,396" Action="CREATE"><FB Name="CLIENT_1_2" Type="CLIENT_1_2" /></Request>
-OrchestrationWithRules;<Request ID="2,397" Action="WRITE"><Connection Source="1" Destination="CLIENT_1_2.QI" /></Request>
-OrchestrationWithRules;<Request ID="2,398" Action="WRITE"><Connection Source="http[127.0.0.1:8444/authorization/mgmt/intracloud; POST; application/json]]" Destination="CLIENT_1_2.ID" /></Request>
-OrchestrationWithRules;<Request ID="2,399" Action="WRITE"><Connection Source="STRING#{&quot;consumer&quot;: {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; : &quot;localhost&quot;,&quot;port&quot; : 8090},&quot;providerList&quot;: [{&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; : &quot;localhost&quot;,&quot;port&quot; : 8090}],&quot;serviceList&quot;: [{&quot;serviceDefinition&quot; : &quot;serviceTest&quot;}]}" Destination="CLIENT_1_2.SD_1" /></Request>
-OrchestrationWithRules;<Request ID="2,400" Action="CREATE"><FB Name="CLIENT_1_2_1" Type="CLIENT_1_2" /></Request>
-OrchestrationWithRules;<Request ID="2,401" Action="WRITE"><Connection Source="1" Destination="CLIENT_1_2_1.QI" /></Request>
-OrchestrationWithRules;<Request ID="2,402" Action="WRITE"><Connection Source="http[127.0.0.1:8440/orchestrator/mgmt/store; POST; application/json]]" Destination="CLIENT_1_2_1.ID" /></Request>
-OrchestrationWithRules;<Request ID="2,403" Action="WRITE"><Connection Source="STRING#[{&quot;service&quot; : {&quot;serviceDefinition&quot; : &quot;serviceTest&quot;,&quot;interfaces&quot; : [ &quot;XML&quot;, &quot;JSON&quot;],&quot;serviceMetadata&quot; : { &quot;key1&quot; : &quot;value1&quot;, &quot;key2&quot; : &quot;value2&quot;}},&quot;consumer&quot; : {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; :&quot;localhost&quot;,&quot;port&quot; : 8090, &quot;authenticationInfo&quot; : &quot;&quot;},&quot;providerSystem&quot; : {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; : &quot;localhost&quot;,&quot;port&quot; : 8090,&quot;authenticationInfo&quot; : &quot;&quot;},&quot;priority&quot; : 1,&quot;defaultEntry&quot; : true,&quot;name&quot; : &quot;&quot;,&quot;lastUpdated&quot; : &quot;&quot;,&quot;instruction&quot; : &quot;&quot;,&quot;attributes&quot; : { },&quot;serviceURI&quot; : &quot;serviceTest/start&quot;} ]" Destination="CLIENT_1_2_1.SD_1" /></Request>
-OrchestrationWithRules;<Request ID="2,404" Action="CREATE"><FB Name="STRING2STRING" Type="STRING2STRING" /></Request>
-OrchestrationWithRules;<Request ID="2,405" Action="CREATE"><FB Name="PUBL_0_1" Type="PUBL_0" /></Request>
-OrchestrationWithRules;<Request ID="2,406" Action="WRITE"><Connection Source="WSTRING#allLoaded" Destination="PUBL_0_1.ID" /></Request>
-OrchestrationWithRules;<Request ID="2,407" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
-OrchestrationWithRules;<Request ID="2,408" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
-OrchestrationWithRules;<Request ID="2,409" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS" Type="WSTRING2WSTRING" /></Request>
-OrchestrationWithRules;<Request ID="2,410" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S" Type="F_DINT_TO_STRING" /></Request>
-OrchestrationWithRules;<Request ID="2,411" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
-OrchestrationWithRules;<Request ID="2,412" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.member" /></Request>
-OrchestrationWithRules;<Request ID="2,413" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort" Type="GET_STRUCT_VALUE" /></Request>
-OrchestrationWithRules;<Request ID="2,414" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.member" /></Request>
-OrchestrationWithRules;<Request ID="2,415" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI" Type="GET_STRUCT_VALUE" /></Request>
-OrchestrationWithRules;<Request ID="2,416" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.member" /></Request>
-OrchestrationWithRules;<Request ID="2,417" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort" Type="APPEND_STRING_3" /></Request>
-OrchestrationWithRules;<Request ID="2,418" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_2" /></Request>
-OrchestrationWithRules;<Request ID="2,419" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm" Type="OrchestrationForm2OrchestrationForm" /></Request>
-OrchestrationWithRules;<Request ID="2,420" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1" Type="WSTRING2WSTRING" /></Request>
-OrchestrationWithRules;<Request ID="2,421" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI" Type="APPEND_STRING_2" /></Request>
-OrchestrationWithRules;<Request ID="2,422" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud" Type="FieldsToArrowheadCloud" /></Request>
-OrchestrationWithRules;<Request ID="2,423" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
-OrchestrationWithRules;<Request ID="2,424" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationHTTP" Type="RequestOrchestrationHTTP" /></Request>
-OrchestrationWithRules;<Request ID="2,425" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm" Type="FieldsToServiceRequestForm" /></Request>
-OrchestrationWithRules;<Request ID="2,426" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
-OrchestrationWithRules;<Request ID="2,427" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm" Type="RequestOrchestrationForm" /></Request>
-OrchestrationWithRules;<Request ID="2,428" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
-OrchestrationWithRules;<Request ID="2,429" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
-OrchestrationWithRules;<Request ID="2,430" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
-OrchestrationWithRules;<Request ID="2,431" Action="WRITE"><Connection Source="&quot;key1=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
-OrchestrationWithRules;<Request ID="2,432" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8442/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
-OrchestrationWithRules;<Request ID="2,433" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.systemName" /></Request>
-OrchestrationWithRules;<Request ID="2,434" Action="WRITE"><Connection Source="localhost" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.address" /></Request>
-OrchestrationWithRules;<Request ID="2,435" Action="WRITE"><Connection Source="8090" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.port" /></Request>
-OrchestrationWithRules;<Request ID="2,436" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.serviceDefinition" /></Request>
-OrchestrationWithRules;<Request ID="2,437" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.interfaces" /></Request>
-OrchestrationWithRules;<Request ID="2,438" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.serviceMetadata" /></Request>
-OrchestrationWithRules;<Request ID="2,439" Action="WRITE"><Connection Source="WSTRING#127.0.0.1:8440/orchestrator" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.endpoint" /></Request>
-OrchestrationWithRules;<Request ID="2,440" Action="WRITE"><Connection Source="0" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.INDEX" /></Request>
-OrchestrationWithRules;<Request ID="2,441" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,442" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,443" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
-OrchestrationWithRules;<Request ID="2,444" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
-OrchestrationWithRules;<Request ID="2,445" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
-OrchestrationWithRules;<Request ID="2,446" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,447" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
-OrchestrationWithRules;<Request ID="2,448" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
-OrchestrationWithRules;<Request ID="2,449" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
-OrchestrationWithRules;<Request ID="2,450" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceHTTP_1.registerService" /></Request>
-OrchestrationWithRules;<Request ID="2,451" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="CLIENT_1_2.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,452" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,453" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_SR.S" /></Request>
-OrchestrationWithRules;<Request ID="2,454" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,455" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_REND.EI1" /></Request>
-OrchestrationWithRules;<Request ID="2,456" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="E_SR_1.S" /></Request>
-OrchestrationWithRules;<Request ID="2,457" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,458" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="E_SR.S" /></Request>
-OrchestrationWithRules;<Request ID="2,459" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,460" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_SR.R" /></Request>
-OrchestrationWithRules;<Request ID="2,461" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,462" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_REND.EI1" /></Request>
-OrchestrationWithRules;<Request ID="2,463" Action="CREATE"><Connection Source="Sequencer_1.F_GT.CNF" Destination="Sequencer_1.E_SWITCH.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,464" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO0" Destination="Sequencer_1.E_DEMUX.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,465" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.CNF" Destination="Sequencer_1.E_DEMUX_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,466" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO1" Destination="Sequencer_1.F_GT_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,467" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.CNF" Destination="Sequencer_1.E_SWITCH_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,468" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO0" Destination="Sequencer_1.F_SUB.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,469" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,470" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="E_SR_1.R" /></Request>
-OrchestrationWithRules;<Request ID="2,471" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,472" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="E_SR.R" /></Request>
-OrchestrationWithRules;<Request ID="2,473" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,474" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,475" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,476" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,477" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,478" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,479" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,480" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,481" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,482" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,483" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,484" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.CNF" Destination="Sequencer_1.E_SWITCH_1_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,485" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1_1.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,486" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="PUBL_0.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,487" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO1" Destination="Sequencer_1.F_GT_1_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,488" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO0" Destination="Sequencer_1.F_SUB_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,489" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO1" Destination="Sequencer_1.F_SUB_1_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,490" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.R" /></Request>
-OrchestrationWithRules;<Request ID="2,491" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,492" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,493" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,494" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,495" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,496" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
-OrchestrationWithRules;<Request ID="2,497" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.E_DEMUX.K" /></Request>
-OrchestrationWithRules;<Request ID="2,498" Action="CREATE"><Connection Source="Sequencer_1.F_GT.OUT" Destination="Sequencer_1.E_SWITCH.G" /></Request>
-OrchestrationWithRules;<Request ID="2,499" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.OUT" Destination="Sequencer_1.E_DEMUX_1.K" /></Request>
-OrchestrationWithRules;<Request ID="2,500" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,501" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,502" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,503" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,504" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.OUT" Destination="Sequencer_1.E_SWITCH_1.G" /></Request>
-OrchestrationWithRules;<Request ID="2,505" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1.K" /></Request>
-OrchestrationWithRules;<Request ID="2,506" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.OUT" Destination="Sequencer_1.E_SWITCH_1_1.G" /></Request>
-OrchestrationWithRules;<Request ID="2,507" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1_1.K" /></Request>
-OrchestrationWithRules;<Request ID="2,508" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,509" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1_1.IN1" /></Request>
-OrchestrationWithRules;<Request ID="2,510" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,511" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,512" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,513" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,514" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.CNF" Destination="E_SWITCH.EI" /></Request>
-OrchestrationWithRules;<Request ID="2,515" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,516" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,517" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,518" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,519" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,520" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_3" /></Request>
-OrchestrationWithRules;<Request ID="2,521" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_1" /></Request>
-OrchestrationWithRules;<Request ID="2,522" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,523" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,524" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,525" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ.IN2" /></Request>
-OrchestrationWithRules;<Request ID="2,526" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.in_struct" /></Request>
-OrchestrationWithRules;<Request ID="2,527" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.in_struct" /></Request>
-OrchestrationWithRules;<Request ID="2,528" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.in_struct" /></Request>
-OrchestrationWithRules;<Request ID="2,529" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,530" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_1" /></Request>
-OrchestrationWithRules;<Request ID="2,531" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,532" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_2" /></Request>
-OrchestrationWithRules;<Request ID="2,533" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,534" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.requestOrchestator" /></Request>
-OrchestrationWithRules;<Request ID="2,535" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.responseReceived" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,536" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.arrowheadService" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requestedService" /></Request>
-OrchestrationWithRules;<Request ID="2,537" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.serviceRequestForm" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.serviceRequestForm" /></Request>
-OrchestrationWithRules;<Request ID="2,538" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.orchestrationResponse" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.IN_ARRAY" /></Request>
-OrchestrationWithRules;<Request ID="2,539" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationForm.requestOrchestration" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.RequestOrchestrationHTTP.requestOrchestration" /></Request>
-OrchestrationWithRules;<Request ID="2,540" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,541" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToArrowheadService.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,542" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadSystem.arrowheadSystem" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requesterSystem" /></Request>
-OrchestrationWithRules;<Request ID="2,543" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.FieldsToArrowheadCloud.arrowheadCloud" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationHTTPPFull.RequestOrchestrationHTTPPartial.FieldsToServiceRequestForm.requesterCloud" /></Request>
-OrchestrationWithRules;<Request ID="2,544" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,545" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,546" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,547" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoServiceAvailable.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,548" Action="CREATE"><Connection Source="E_SR.EO" Destination="SERVER_1.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,549" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,550" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,551" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,552" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="ServiceAvailable.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,553" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,554" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,555" Action="CREATE"><Connection Source="E_SR_1.EO" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,556" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,557" Action="CREATE"><Connection Source="SERVER_1.INITO" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,558" Action="CREATE"><Connection Source="CLIENT_1_2.INITO" Destination="CLIENT_1_2.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,559" Action="CREATE"><Connection Source="CLIENT_1_2.CNF" Destination="CLIENT_1_2_1.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,560" Action="CREATE"><Connection Source="CLIENT_1_2_1.INITO" Destination="CLIENT_1_2_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,561" Action="CREATE"><Connection Source="CLIENT_1_2_1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,562" Action="CREATE"><Connection Source="SERVER_1.IND" Destination="STRING2STRING.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,563" Action="CREATE"><Connection Source="STRING2STRING.CNF" Destination="SERVER_1.RSP" /></Request>
-OrchestrationWithRules;<Request ID="2,564" Action="CREATE"><Connection Source="ServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,565" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,566" Action="CREATE"><Connection Source="Service1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,567" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0_1.INIT" /></Request>
-OrchestrationWithRules;<Request ID="2,568" Action="CREATE"><Connection Source="PUBL_0_1.INITO" Destination="PUBL_0_1.REQ" /></Request>
-OrchestrationWithRules;<Request ID="2,569" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoServiceAvailable.check" /></Request>
-OrchestrationWithRules;<Request ID="2,570" Action="CREATE"><Connection Source="E_SR.Q" Destination="SERVER_1.QI" /></Request>
-OrchestrationWithRules;<Request ID="2,571" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
-OrchestrationWithRules;<Request ID="2,572" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
-OrchestrationWithRules;<Request ID="2,573" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="ServiceAvailable.check" /></Request>
-OrchestrationWithRules;<Request ID="2,574" Action="CREATE"><Connection Source="E_SR_1.Q" Destination="E_SWITCH.G" /></Request>
-OrchestrationWithRules;<Request ID="2,575" Action="CREATE"><Connection Source="SERVER_1.RD_1" Destination="STRING2STRING.IN" /></Request>
-OrchestrationWithRules;<Request ID="2,576" Action="CREATE"><Connection Source="STRING2STRING.OUT" Destination="SERVER_1.SD_1" /></Request>
-OrchestrationWithRules;<Request ID="2,577" Action="START"/>
+OrchestrationWithRules;<Request ID="2,358" Action="CREATE"><FB Name="E_SR" Type="E_SR" /></Request>
+OrchestrationWithRules;<Request ID="2,359" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+OrchestrationWithRules;<Request ID="2,360" Action="WRITE"><Connection Source="WSTRING#test7Ended" Destination="SUBL_0.ID" /></Request>
+OrchestrationWithRules;<Request ID="2,361" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+OrchestrationWithRules;<Request ID="2,362" Action="WRITE"><Connection Source="test8Ended" Destination="PUBL_0.ID" /></Request>
+OrchestrationWithRules;<Request ID="2,363" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX" Type="E_DEMUX" /></Request>
+OrchestrationWithRules;<Request ID="2,364" Action="CREATE"><FB Name="Sequencer_1.E_CTU" Type="E_CTU" /></Request>
+OrchestrationWithRules;<Request ID="2,365" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1" Type="E_DEMUX" /></Request>
+OrchestrationWithRules;<Request ID="2,366" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH" Type="E_SWITCH" /></Request>
+OrchestrationWithRules;<Request ID="2,367" Action="CREATE"><FB Name="Sequencer_1.F_GT" Type="F_GT" /></Request>
+OrchestrationWithRules;<Request ID="2,368" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer_1.F_GT.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,369" Action="CREATE"><FB Name="Sequencer_1.F_SUB" Type="F_SUB" /></Request>
+OrchestrationWithRules;<Request ID="2,370" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer_1.F_SUB.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,371" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
+OrchestrationWithRules;<Request ID="2,372" Action="CREATE"><FB Name="Sequencer_1.F_GT_1" Type="F_GT" /></Request>
+OrchestrationWithRules;<Request ID="2,373" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer_1.F_GT_1.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,374" Action="CREATE"><FB Name="Sequencer_1.F_SUB_1" Type="F_SUB" /></Request>
+OrchestrationWithRules;<Request ID="2,375" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer_1.F_SUB_1.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,376" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH_1" Type="E_SWITCH" /></Request>
+OrchestrationWithRules;<Request ID="2,377" Action="CREATE"><FB Name="Sequencer_1.F_GT_1_1" Type="F_GT" /></Request>
+OrchestrationWithRules;<Request ID="2,378" Action="WRITE"><Connection Source="INT#11" Destination="Sequencer_1.F_GT_1_1.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,379" Action="CREATE"><FB Name="Sequencer_1.E_SWITCH_1_1" Type="E_SWITCH" /></Request>
+OrchestrationWithRules;<Request ID="2,380" Action="CREATE"><FB Name="Sequencer_1.E_DEMUX_1_1_1" Type="E_DEMUX" /></Request>
+OrchestrationWithRules;<Request ID="2,381" Action="CREATE"><FB Name="Sequencer_1.F_SUB_1_1" Type="F_SUB" /></Request>
+OrchestrationWithRules;<Request ID="2,382" Action="WRITE"><Connection Source="INT#12" Destination="Sequencer_1.F_SUB_1_1.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,383" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
+OrchestrationWithRules;<Request ID="2,384" Action="WRITE"><Connection Source="WSTRING#localhost:4840/serviceTest/start" Destination="F_EQ_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,385" Action="CREATE"><FB Name="ServiceAvailable" Type="TEST_CONDITION" /></Request>
+OrchestrationWithRules;<Request ID="2,386" Action="CREATE"><FB Name="E_SR_1" Type="E_SR" /></Request>
+OrchestrationWithRules;<Request ID="2,387" Action="CREATE"><FB Name="E_SWITCH" Type="E_SWITCH" /></Request>
+OrchestrationWithRules;<Request ID="2,388" Action="CREATE"><FB Name="SERVER_1_1" Type="SERVER_0" /></Request>
+OrchestrationWithRules;<Request ID="2,389" Action="WRITE"><Connection Source="opc_ua[CREATE_METHOD;/Objects/serviceTest/start2]" Destination="SERVER_1_1.ID" /></Request>
+OrchestrationWithRules;<Request ID="2,390" Action="CREATE"><FB Name="RegisterService2.FieldsToServiceRegistryEntry" Type="FieldsToServiceRegistryEntry" /></Request>
+OrchestrationWithRules;<Request ID="2,391" Action="CREATE"><FB Name="RegisterService2.RegisterService" Type="RegisterService" /></Request>
+OrchestrationWithRules;<Request ID="2,392" Action="CREATE"><FB Name="RegisterService2.E_SR" Type="E_SR" /></Request>
+OrchestrationWithRules;<Request ID="2,393" Action="CREATE"><FB Name="RegisterService2.E_SWITCH" Type="E_SWITCH" /></Request>
+OrchestrationWithRules;<Request ID="2,394" Action="CREATE"><FB Name="RegisterService2.E_REND" Type="E_REND" /></Request>
+OrchestrationWithRules;<Request ID="2,395" Action="CREATE"><FB Name="RegisterService2.RegisterServiceOpcUa" Type="RegisterServiceOpcUa" /></Request>
+OrchestrationWithRules;<Request ID="2,396" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX" Type="GET_AT_INDEX" /></Request>
+OrchestrationWithRules;<Request ID="2,397" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS" Type="F_STRING_TO_WSTRING" /></Request>
+OrchestrationWithRules;<Request ID="2,398" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS" Type="WSTRING2WSTRING" /></Request>
+OrchestrationWithRules;<Request ID="2,399" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S" Type="F_DINT_TO_STRING" /></Request>
+OrchestrationWithRules;<Request ID="2,400" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress" Type="GET_STRUCT_VALUE" /></Request>
+OrchestrationWithRules;<Request ID="2,401" Action="WRITE"><Connection Source="STRING#provider.address" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.member" /></Request>
+OrchestrationWithRules;<Request ID="2,402" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort" Type="GET_STRUCT_VALUE" /></Request>
+OrchestrationWithRules;<Request ID="2,403" Action="WRITE"><Connection Source="STRING#provider.port" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.member" /></Request>
+OrchestrationWithRules;<Request ID="2,404" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI" Type="GET_STRUCT_VALUE" /></Request>
+OrchestrationWithRules;<Request ID="2,405" Action="WRITE"><Connection Source="STRING#serviceURI" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.member" /></Request>
+OrchestrationWithRules;<Request ID="2,406" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort" Type="APPEND_STRING_3" /></Request>
+OrchestrationWithRules;<Request ID="2,407" Action="WRITE"><Connection Source="STRING#:" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_2" /></Request>
+OrchestrationWithRules;<Request ID="2,408" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm" Type="OrchestrationForm2OrchestrationForm" /></Request>
+OrchestrationWithRules;<Request ID="2,409" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1" Type="WSTRING2WSTRING" /></Request>
+OrchestrationWithRules;<Request ID="2,410" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI" Type="APPEND_STRING_2" /></Request>
+OrchestrationWithRules;<Request ID="2,411" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadCloud" Type="FieldsToArrowheadCloud" /></Request>
+OrchestrationWithRules;<Request ID="2,412" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+OrchestrationWithRules;<Request ID="2,413" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToServiceRequestForm" Type="FieldsToServiceRequestForm" /></Request>
+OrchestrationWithRules;<Request ID="2,414" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToArrowheadService" Type="FieldsToArrowheadService" /></Request>
+OrchestrationWithRules;<Request ID="2,415" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationForm" Type="RequestOrchestrationForm" /></Request>
+OrchestrationWithRules;<Request ID="2,416" Action="CREATE"><FB Name="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationOpcUa" Type="RequestOrchestrationOpcUa" /></Request>
+OrchestrationWithRules;<Request ID="2,417" Action="CREATE"><FB Name="E_DELAY" Type="E_DELAY" /></Request>
+OrchestrationWithRules;<Request ID="2,418" Action="WRITE"><Connection Source="T#1s" Destination="E_DELAY.DT" /></Request>
+OrchestrationWithRules;<Request ID="2,419" Action="CREATE"><FB Name="E_DELAY_1" Type="E_DELAY" /></Request>
+OrchestrationWithRules;<Request ID="2,420" Action="WRITE"><Connection Source="T#1s" Destination="E_DELAY_1.DT" /></Request>
+OrchestrationWithRules;<Request ID="2,421" Action="CREATE"><FB Name="STRING2STRING_3_1" Type="STRING2STRING" /></Request>
+OrchestrationWithRules;<Request ID="2,422" Action="WRITE"><Connection Source="STRING#[{&quot;service&quot; : {&quot;serviceDefinition&quot; : &quot;serviceTest&quot;,&quot;interfaces&quot; : [ &quot;XML&quot;, &quot;JSON&quot;],&quot;serviceMetadata&quot; : { &quot;key1&quot; : &quot;value1&quot;, &quot;key2&quot; : &quot;value2&quot;}},&quot;consumer&quot; : {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; :&quot;localhost&quot;,&quot;port&quot; : 4840, &quot;authenticationInfo&quot; : &quot;&quot;},&quot;providerSystem&quot; : {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; : &quot;localhost&quot;,&quot;port&quot; : 4840,&quot;authenticationInfo&quot; : &quot;&quot;},&quot;priority&quot; : 1,&quot;defaultEntry&quot; : true,&quot;name&quot; : &quot;&quot;,&quot;lastUpdated&quot; : &quot;&quot;,&quot;instruction&quot; : &quot;&quot;,&quot;attributes&quot; : { },&quot;serviceURI&quot; : &quot;serviceTest/start&quot;} ]" Destination="STRING2STRING_3_1.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,423" Action="CREATE"><FB Name="STRING2STRING_3" Type="STRING2STRING" /></Request>
+OrchestrationWithRules;<Request ID="2,424" Action="WRITE"><Connection Source="STRING#{&quot;consumer&quot;: {&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; : &quot;localhost&quot;,&quot;port&quot; : 4840},&quot;providerList&quot;: [{&quot;systemName&quot; : &quot;systemTestName&quot;,&quot;address&quot; : &quot;localhost&quot;,&quot;port&quot; : 4840}],&quot;serviceList&quot;: [{&quot;serviceDefinition&quot; : &quot;serviceTest&quot;}]}" Destination="STRING2STRING_3.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,425" Action="CREATE"><FB Name="CLIENT_1_2" Type="CLIENT_1_0" /></Request>
+OrchestrationWithRules;<Request ID="2,426" Action="WRITE"><Connection Source="1" Destination="CLIENT_1_2.QI" /></Request>
+OrchestrationWithRules;<Request ID="2,427" Action="WRITE"><Connection Source="opc_ua[CALL_METHOD; opc.tcp://127.0.0.1:62541/authorization/#; /Objects/2:Authorization/2:addSystemToAuthorized]" Destination="CLIENT_1_2.ID" /></Request>
+OrchestrationWithRules;<Request ID="2,428" Action="CREATE"><FB Name="CLIENT_1_2_1" Type="CLIENT_1_0" /></Request>
+OrchestrationWithRules;<Request ID="2,429" Action="WRITE"><Connection Source="1" Destination="CLIENT_1_2_1.QI" /></Request>
+OrchestrationWithRules;<Request ID="2,430" Action="WRITE"><Connection Source="opc_ua[CALL_METHOD; opc.tcp://127.0.0.1:62548/orchestrator#; /Objects/2:Orchestrator/2:store]" Destination="CLIENT_1_2_1.ID" /></Request>
+OrchestrationWithRules;<Request ID="2,431" Action="WRITE"><Connection Source="/serviceTest/start" Destination="RegisterService2.FieldsToServiceRegistryEntry.serviceURI" /></Request>
+OrchestrationWithRules;<Request ID="2,432" Action="WRITE"><Connection Source="1" Destination="RegisterService2.FieldsToServiceRegistryEntry.version" /></Request>
+OrchestrationWithRules;<Request ID="2,433" Action="WRITE"><Connection Source="false" Destination="RegisterService2.FieldsToServiceRegistryEntry.udp" /></Request>
+OrchestrationWithRules;<Request ID="2,434" Action="WRITE"><Connection Source="&quot;key=value1, key2=value2&quot;" Destination="RegisterService2.FieldsToServiceRegistryEntry.metadata" /></Request>
+OrchestrationWithRules;<Request ID="2,435" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62551/serviceregistry" Destination="RegisterService2.RegisterService.endpoint" /></Request>
+OrchestrationWithRules;<Request ID="2,436" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.systemName" /></Request>
+OrchestrationWithRules;<Request ID="2,437" Action="WRITE"><Connection Source="localhost" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.address" /></Request>
+OrchestrationWithRules;<Request ID="2,438" Action="WRITE"><Connection Source="4840" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.port" /></Request>
+OrchestrationWithRules;<Request ID="2,439" Action="WRITE"><Connection Source="WSTRING#serviceTest" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToArrowheadService.serviceDefinition" /></Request>
+OrchestrationWithRules;<Request ID="2,440" Action="WRITE"><Connection Source="[&quot;JSON&quot;, &quot;XML&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToArrowheadService.interfaces" /></Request>
+OrchestrationWithRules;<Request ID="2,441" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToArrowheadService.serviceMetadata" /></Request>
+OrchestrationWithRules;<Request ID="2,442" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62548/orchestrator" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationForm.endpoint" /></Request>
+OrchestrationWithRules;<Request ID="2,443" Action="WRITE"><Connection Source="0" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.INDEX" /></Request>
+OrchestrationWithRules;<Request ID="2,444" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="STRING2STRING_3.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,445" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,446" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_SR.S" /></Request>
+OrchestrationWithRules;<Request ID="2,447" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,448" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="RegisterService2.E_REND.EI1" /></Request>
+OrchestrationWithRules;<Request ID="2,449" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="E_SR_1.S" /></Request>
+OrchestrationWithRules;<Request ID="2,450" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,451" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="E_SR.S" /></Request>
+OrchestrationWithRules;<Request ID="2,452" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,453" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_SR.R" /></Request>
+OrchestrationWithRules;<Request ID="2,454" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.FieldsToServiceRegistryEntry.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,455" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="RegisterService2.E_REND.EI1" /></Request>
+OrchestrationWithRules;<Request ID="2,456" Action="CREATE"><Connection Source="Sequencer_1.F_GT.CNF" Destination="Sequencer_1.E_SWITCH.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,457" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO0" Destination="Sequencer_1.E_DEMUX.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,458" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.CNF" Destination="Sequencer_1.E_DEMUX_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,459" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH.EO1" Destination="Sequencer_1.F_GT_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,460" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.CNF" Destination="Sequencer_1.E_SWITCH_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,461" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO0" Destination="Sequencer_1.F_SUB.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,462" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,463" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="E_SR_1.R" /></Request>
+OrchestrationWithRules;<Request ID="2,464" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,465" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="E_SR.R" /></Request>
+OrchestrationWithRules;<Request ID="2,466" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,467" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,468" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,469" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,470" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,471" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,472" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,473" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,474" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,475" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,476" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,477" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.CNF" Destination="Sequencer_1.E_SWITCH_1_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,478" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.CNF" Destination="Sequencer_1.E_DEMUX_1_1_1.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,479" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="PUBL_0.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,480" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1.EO1" Destination="Sequencer_1.F_GT_1_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,481" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO0" Destination="Sequencer_1.F_SUB_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,482" Action="CREATE"><Connection Source="Sequencer_1.E_SWITCH_1_1.EO1" Destination="Sequencer_1.F_SUB_1_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,483" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.R" /></Request>
+OrchestrationWithRules;<Request ID="2,484" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO0" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,485" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO1" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,486" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO2" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,487" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,488" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,489" Action="CREATE"><Connection Source="Sequencer_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1.E_CTU.CU" /></Request>
+OrchestrationWithRules;<Request ID="2,490" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.E_DEMUX.K" /></Request>
+OrchestrationWithRules;<Request ID="2,491" Action="CREATE"><Connection Source="Sequencer_1.F_GT.OUT" Destination="Sequencer_1.E_SWITCH.G" /></Request>
+OrchestrationWithRules;<Request ID="2,492" Action="CREATE"><Connection Source="Sequencer_1.F_SUB.OUT" Destination="Sequencer_1.E_DEMUX_1.K" /></Request>
+OrchestrationWithRules;<Request ID="2,493" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,494" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,495" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,496" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,497" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1.OUT" Destination="Sequencer_1.E_SWITCH_1.G" /></Request>
+OrchestrationWithRules;<Request ID="2,498" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1.K" /></Request>
+OrchestrationWithRules;<Request ID="2,499" Action="CREATE"><Connection Source="Sequencer_1.F_GT_1_1.OUT" Destination="Sequencer_1.E_SWITCH_1_1.G" /></Request>
+OrchestrationWithRules;<Request ID="2,500" Action="CREATE"><Connection Source="Sequencer_1.F_SUB_1_1.OUT" Destination="Sequencer_1.E_DEMUX_1_1_1.K" /></Request>
+OrchestrationWithRules;<Request ID="2,501" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_SUB_1_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,502" Action="CREATE"><Connection Source="Sequencer_1.E_CTU.CV" Destination="Sequencer_1.F_GT_1_1.IN1" /></Request>
+OrchestrationWithRules;<Request ID="2,503" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneRegister" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,504" Action="CREATE"><Connection Source="RegisterService2.RegisterService.doneUnregister" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,505" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO1" Destination="RegisterService2.RegisterService.register" /></Request>
+OrchestrationWithRules;<Request ID="2,506" Action="CREATE"><Connection Source="RegisterService2.E_SWITCH.EO0" Destination="RegisterService2.RegisterService.unregister" /></Request>
+OrchestrationWithRules;<Request ID="2,507" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.CNF" Destination="RegisterService2.E_REND.EI2" /></Request>
+OrchestrationWithRules;<Request ID="2,508" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_SWITCH.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,509" Action="CREATE"><Connection Source="RegisterService2.E_REND.EO" Destination="RegisterService2.E_REND.R" /></Request>
+OrchestrationWithRules;<Request ID="2,510" Action="CREATE"><Connection Source="RegisterService2.FieldsToServiceRegistryEntry.serviceRegistryEntry" Destination="RegisterService2.RegisterService.serviceRegistryEntry" /></Request>
+OrchestrationWithRules;<Request ID="2,511" Action="CREATE"><Connection Source="RegisterService2.E_SR.Q" Destination="RegisterService2.E_SWITCH.G" /></Request>
+OrchestrationWithRules;<Request ID="2,512" Action="CREATE"><Connection Source="RegisterService2.RegisterService.registerService" Destination="RegisterService2.RegisterServiceOpcUa.registerService" /></Request>
+OrchestrationWithRules;<Request ID="2,513" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,514" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,515" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,516" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,517" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.CNF" Destination="E_SWITCH.EI" /></Request>
+OrchestrationWithRules;<Request ID="2,518" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,519" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,520" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,521" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,522" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,523" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_3" /></Request>
+OrchestrationWithRules;<Request ID="2,524" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.IN_1" /></Request>
+OrchestrationWithRules;<Request ID="2,525" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.DI2S.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,526" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,527" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ_1.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,528" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.OUT" Destination="F_EQ.IN2" /></Request>
+OrchestrationWithRules;<Request ID="2,529" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetAddress.in_struct" /></Request>
+OrchestrationWithRules;<Request ID="2,530" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetPort.in_struct" /></Request>
+OrchestrationWithRules;<Request ID="2,531" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.in_struct" /></Request>
+OrchestrationWithRules;<Request ID="2,532" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.GetURI.output" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,533" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPort.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_1" /></Request>
+OrchestrationWithRules;<Request ID="2,534" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.S2WS.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,535" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.WS2WS_1.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.IpPortURI.IN_2" /></Request>
+OrchestrationWithRules;<Request ID="2,536" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToArrowheadService.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToServiceRequestForm.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,537" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToServiceRequestForm.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationForm.requestOrchestator" /></Request>
+OrchestrationWithRules;<Request ID="2,538" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationForm.responseReceived" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,539" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToArrowheadService.arrowheadService" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToServiceRequestForm.requestedService" /></Request>
+OrchestrationWithRules;<Request ID="2,540" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToServiceRequestForm.serviceRequestForm" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationForm.serviceRequestForm" /></Request>
+OrchestrationWithRules;<Request ID="2,541" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationForm.orchestrationResponse" Destination="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.IN_ARRAY" /></Request>
+OrchestrationWithRules;<Request ID="2,542" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationForm.requestOrchestration" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.RequestOrchestrationOpcUa.requestOrchestration" /></Request>
+OrchestrationWithRules;<Request ID="2,543" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadCloud.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,544" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadCloud.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToArrowheadService.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,545" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadSystem.arrowheadSystem" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToServiceRequestForm.requesterSystem" /></Request>
+OrchestrationWithRules;<Request ID="2,546" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.FieldsToArrowheadCloud.arrowheadCloud" Destination="GetEndpointFromOrchestrationHTTPPFull.RequestOrchestrationOpcUaFull.RequestOrchestrationOpcUaPartial.FieldsToServiceRequestForm.requesterCloud" /></Request>
+OrchestrationWithRules;<Request ID="2,547" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.CNF" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,548" Action="CREATE"><Connection Source="GetEndpointFromOrchestrationHTTPPFull.GET_AT_INDEX.OUT" Destination="GetEndpointFromOrchestrationHTTPPFull.GetEndpointFromOrchestrationForm.OrchestrationForm2OrchestrationForm.IN" /></Request>
+OrchestrationWithRules;<Request ID="2,549" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="Service1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,550" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoServiceAvailable.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,551" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,552" Action="CREATE"><Connection Source="NoServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,553" Action="CREATE"><Connection Source="Service1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,554" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="ServiceAvailable.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,555" Action="CREATE"><Connection Source="ServiceAvailable.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,556" Action="CREATE"><Connection Source="E_SR_1.EO" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,557" Action="CREATE"><Connection Source="E_SWITCH.EO0" Destination="F_EQ.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,558" Action="CREATE"><Connection Source="E_SWITCH.EO1" Destination="F_EQ_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,559" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,560" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,561" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,562" Action="CREATE"><Connection Source="E_SR.EO" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,563" Action="CREATE"><Connection Source="STRING2STRING_3.CNF" Destination="CLIENT_1_2.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,564" Action="CREATE"><Connection Source="E_DELAY.EO" Destination="CLIENT_1_2.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,565" Action="CREATE"><Connection Source="CLIENT_1_2.INITO" Destination="E_DELAY.START" /></Request>
+OrchestrationWithRules;<Request ID="2,566" Action="CREATE"><Connection Source="CLIENT_1_2.CNF" Destination="STRING2STRING_3_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,567" Action="CREATE"><Connection Source="STRING2STRING_3_1.CNF" Destination="CLIENT_1_2_1.INIT" /></Request>
+OrchestrationWithRules;<Request ID="2,568" Action="CREATE"><Connection Source="E_DELAY_1.EO" Destination="CLIENT_1_2_1.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,569" Action="CREATE"><Connection Source="CLIENT_1_2_1.INITO" Destination="E_DELAY_1.START" /></Request>
+OrchestrationWithRules;<Request ID="2,570" Action="CREATE"><Connection Source="CLIENT_1_2_1.CNF" Destination="Sequencer_1.F_GT.REQ" /></Request>
+OrchestrationWithRules;<Request ID="2,571" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoServiceAvailable.check" /></Request>
+OrchestrationWithRules;<Request ID="2,572" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="ServiceAvailable.check" /></Request>
+OrchestrationWithRules;<Request ID="2,573" Action="CREATE"><Connection Source="E_SR_1.Q" Destination="E_SWITCH.G" /></Request>
+OrchestrationWithRules;<Request ID="2,574" Action="CREATE"><Connection Source="E_SR.Q" Destination="SERVER_1_1.QI" /></Request>
+OrchestrationWithRules;<Request ID="2,575" Action="CREATE"><Connection Source="Service1.arrowheadService" Destination="RegisterService2.FieldsToServiceRegistryEntry.providedService" /></Request>
+OrchestrationWithRules;<Request ID="2,576" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="RegisterService2.FieldsToServiceRegistryEntry.provider" /></Request>
+OrchestrationWithRules;<Request ID="2,577" Action="CREATE"><Connection Source="STRING2STRING_3.OUT" Destination="CLIENT_1_2.SD_1" /></Request>
+OrchestrationWithRules;<Request ID="2,578" Action="CREATE"><Connection Source="STRING2STRING_3_1.OUT" Destination="CLIENT_1_2_1.SD_1" /></Request>
+OrchestrationWithRules;<Request ID="2,579" Action="START"/>
+;<Request ID="2,580" Action="CREATE"><FB Name="PublishSubscribe" Type="EMB_RES" /></Request>
+PublishSubscribe;<Request ID="2,581" Action="CREATE"><FB Name="FieldsToPublishEvent" Type="FieldsToPublishEvent" /></Request>
+PublishSubscribe;<Request ID="2,582" Action="CREATE"><FB Name="FieldsToArrowheadSystem" Type="FieldsToArrowheadSystem" /></Request>
+PublishSubscribe;<Request ID="2,583" Action="WRITE"><Connection Source="WSTRING#systemTestName" Destination="FieldsToArrowheadSystem.systemName" /></Request>
+PublishSubscribe;<Request ID="2,584" Action="WRITE"><Connection Source="localhost" Destination="FieldsToArrowheadSystem.address" /></Request>
+PublishSubscribe;<Request ID="2,585" Action="WRITE"><Connection Source="8090" Destination="FieldsToArrowheadSystem.port" /></Request>
+PublishSubscribe;<Request ID="2,586" Action="CREATE"><FB Name="ArrowheadPublish" Type="ArrowheadPublish" /></Request>
+PublishSubscribe;<Request ID="2,587" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62544/eventhandler" Destination="ArrowheadPublish.endpoint" /></Request>
+PublishSubscribe;<Request ID="2,588" Action="CREATE"><FB Name="PublishEventHTTP" Type="PublishEventOpcUa" /></Request>
+PublishSubscribe;<Request ID="2,589" Action="CREATE"><FB Name="FieldsToArrowheadEvent" Type="FieldsToArrowheadEvent" /></Request>
+PublishSubscribe;<Request ID="2,590" Action="WRITE"><Connection Source="WSTRING#eventType4diac" Destination="FieldsToArrowheadEvent.type" /></Request>
+PublishSubscribe;<Request ID="2,591" Action="WRITE"><Connection Source="WSTRING#This is the payload of the event" Destination="FieldsToArrowheadEvent.payload" /></Request>
+PublishSubscribe;<Request ID="2,592" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToArrowheadEvent.eventMetadata" /></Request>
+PublishSubscribe;<Request ID="2,593" Action="CREATE"><FB Name="FieldsToEventFilter" Type="FieldsToEventFilter" /></Request>
+PublishSubscribe;<Request ID="2,594" Action="WRITE"><Connection Source="WSTRING#eventType4diac" Destination="FieldsToEventFilter.eventType" /></Request>
+PublishSubscribe;<Request ID="2,595" Action="WRITE"><Connection Source="[&quot;key1=value1&quot;, &quot;key2=value2&quot;]" Destination="FieldsToEventFilter.filterMetadata" /></Request>
+PublishSubscribe;<Request ID="2,596" Action="WRITE"><Connection Source="WSTRING#/subscribePath" Destination="FieldsToEventFilter.notifyUri" /></Request>
+PublishSubscribe;<Request ID="2,597" Action="WRITE"><Connection Source="BOOL#TRUE" Destination="FieldsToEventFilter.matchMetadata" /></Request>
+PublishSubscribe;<Request ID="2,598" Action="CREATE"><FB Name="SubscribeEvent" Type="SubscribeEvent" /></Request>
+PublishSubscribe;<Request ID="2,599" Action="WRITE"><Connection Source="WSTRING#opc.tcp://127.0.0.1:62544/eventhandler" Destination="SubscribeEvent.endpoint" /></Request>
+PublishSubscribe;<Request ID="2,600" Action="CREATE"><FB Name="SubscribeEventHTTP" Type="SubscribeEventOpcUa" /></Request>
+PublishSubscribe;<Request ID="2,601" Action="CREATE"><FB Name="E_CTU" Type="E_CTU" /></Request>
+PublishSubscribe;<Request ID="2,602" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+PublishSubscribe;<Request ID="2,603" Action="WRITE"><Connection Source="UINT#0" Destination="F_EQ.IN2" /></Request>
+PublishSubscribe;<Request ID="2,604" Action="CREATE"><FB Name="E_DELAY" Type="E_DELAY" /></Request>
+PublishSubscribe;<Request ID="2,605" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY.DT" /></Request>
+PublishSubscribe;<Request ID="2,606" Action="CREATE"><FB Name="NoMessage" Type="TEST_CONDITION" /></Request>
+PublishSubscribe;<Request ID="2,607" Action="CREATE"><FB Name="F_EQ_1" Type="F_EQ" /></Request>
+PublishSubscribe;<Request ID="2,608" Action="WRITE"><Connection Source="UINT#1" Destination="F_EQ_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,609" Action="CREATE"><FB Name="OneMessage" Type="TEST_CONDITION" /></Request>
+PublishSubscribe;<Request ID="2,610" Action="CREATE"><FB Name="E_DELAY_1" Type="E_DELAY" /></Request>
+PublishSubscribe;<Request ID="2,611" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY_1.DT" /></Request>
+PublishSubscribe;<Request ID="2,612" Action="CREATE"><FB Name="E_DELAY_1_1" Type="E_DELAY" /></Request>
+PublishSubscribe;<Request ID="2,613" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY_1_1.DT" /></Request>
+PublishSubscribe;<Request ID="2,614" Action="CREATE"><FB Name="F_EQ_1_1" Type="F_EQ" /></Request>
+PublishSubscribe;<Request ID="2,615" Action="WRITE"><Connection Source="UINT#2" Destination="F_EQ_1_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,616" Action="CREATE"><FB Name="TwoMessages" Type="TEST_CONDITION" /></Request>
+PublishSubscribe;<Request ID="2,617" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,618" Action="CREATE"><FB Name="Sequencer_1_1.E_CTU" Type="E_CTU" /></Request>
+PublishSubscribe;<Request ID="2,619" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX_1" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,620" Action="CREATE"><FB Name="Sequencer_1_1.E_SWITCH" Type="E_SWITCH" /></Request>
+PublishSubscribe;<Request ID="2,621" Action="CREATE"><FB Name="Sequencer_1_1.F_GT" Type="F_GT" /></Request>
+PublishSubscribe;<Request ID="2,622" Action="WRITE"><Connection Source="INT#3" Destination="Sequencer_1_1.F_GT.IN2" /></Request>
+PublishSubscribe;<Request ID="2,623" Action="CREATE"><FB Name="Sequencer_1_1.F_SUB" Type="F_SUB" /></Request>
+PublishSubscribe;<Request ID="2,624" Action="WRITE"><Connection Source="INT#4" Destination="Sequencer_1_1.F_SUB.IN2" /></Request>
+PublishSubscribe;<Request ID="2,625" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX_1_1" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,626" Action="CREATE"><FB Name="Sequencer_1_1.F_GT_1" Type="F_GT" /></Request>
+PublishSubscribe;<Request ID="2,627" Action="WRITE"><Connection Source="INT#7" Destination="Sequencer_1_1.F_GT_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,628" Action="CREATE"><FB Name="Sequencer_1_1.F_SUB_1" Type="F_SUB" /></Request>
+PublishSubscribe;<Request ID="2,629" Action="WRITE"><Connection Source="INT#8" Destination="Sequencer_1_1.F_SUB_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,630" Action="CREATE"><FB Name="Sequencer_1_1.E_SWITCH_1" Type="E_SWITCH" /></Request>
+PublishSubscribe;<Request ID="2,631" Action="CREATE"><FB Name="Sequencer_1_1.F_GT_1_1" Type="F_GT" /></Request>
+PublishSubscribe;<Request ID="2,632" Action="WRITE"><Connection Source="INT#11" Destination="Sequencer_1_1.F_GT_1_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,633" Action="CREATE"><FB Name="Sequencer_1_1.E_SWITCH_1_1" Type="E_SWITCH" /></Request>
+PublishSubscribe;<Request ID="2,634" Action="CREATE"><FB Name="Sequencer_1_1.E_DEMUX_1_1_1" Type="E_DEMUX" /></Request>
+PublishSubscribe;<Request ID="2,635" Action="CREATE"><FB Name="Sequencer_1_1.F_SUB_1_1" Type="F_SUB" /></Request>
+PublishSubscribe;<Request ID="2,636" Action="WRITE"><Connection Source="INT#12" Destination="Sequencer_1_1.F_SUB_1_1.IN2" /></Request>
+PublishSubscribe;<Request ID="2,637" Action="CREATE"><FB Name="SUBL_0" Type="SUBL_0" /></Request>
+PublishSubscribe;<Request ID="2,638" Action="WRITE"><Connection Source="test8Ended" Destination="SUBL_0.ID" /></Request>
+PublishSubscribe;<Request ID="2,639" Action="CREATE"><FB Name="PUBL_0_1" Type="PUBL_0" /></Request>
+PublishSubscribe;<Request ID="2,640" Action="WRITE"><Connection Source="WSTRING#allLoaded" Destination="PUBL_0_1.ID" /></Request>
+PublishSubscribe;<Request ID="2,641" Action="CREATE"><FB Name="PUBL_0" Type="PUBL_0" /></Request>
+PublishSubscribe;<Request ID="2,642" Action="WRITE"><Connection Source="WSTRIGN#allEnded" Destination="PUBL_0.ID" /></Request>
+PublishSubscribe;<Request ID="2,643" Action="CREATE"><FB Name="SERVER_1_0" Type="SERVER_1" /></Request>
+PublishSubscribe;<Request ID="2,644" Action="WRITE"><Connection Source="1" Destination="SERVER_1_0.QI" /></Request>
+PublishSubscribe;<Request ID="2,645" Action="WRITE"><Connection Source="http[/subscribePath]" Destination="SERVER_1_0.ID" /></Request>
+PublishSubscribe;<Request ID="2,646" Action="CREATE"><FB Name="STRING2STRING" Type="STRING2STRING" /></Request>
+PublishSubscribe;<Request ID="2,647" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO0" Destination="FieldsToArrowheadSystem.REQ" /></Request>
+PublishSubscribe;<Request ID="2,648" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO1" Destination="FieldsToPublishEvent.REQ" /></Request>
+PublishSubscribe;<Request ID="2,649" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO2" Destination="E_DELAY.START" /></Request>
+PublishSubscribe;<Request ID="2,650" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO3" Destination="SubscribeEvent.Subscribe" /></Request>
+PublishSubscribe;<Request ID="2,651" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO0" Destination="E_DELAY.START" /></Request>
+PublishSubscribe;<Request ID="2,652" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO1" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,653" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO2" Destination="E_DELAY_1.START" /></Request>
+PublishSubscribe;<Request ID="2,654" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO3" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,655" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT.CNF" Destination="Sequencer_1_1.E_SWITCH.EI" /></Request>
+PublishSubscribe;<Request ID="2,656" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH.EO0" Destination="Sequencer_1_1.E_DEMUX.EI" /></Request>
+PublishSubscribe;<Request ID="2,657" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB.CNF" Destination="Sequencer_1_1.E_DEMUX_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,658" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH.EO1" Destination="Sequencer_1_1.F_GT_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,659" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1.CNF" Destination="Sequencer_1_1.E_SWITCH_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,660" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1.EO0" Destination="Sequencer_1_1.F_SUB.REQ" /></Request>
+PublishSubscribe;<Request ID="2,661" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1.CNF" Destination="Sequencer_1_1.E_DEMUX_1_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,662" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO0" Destination="E_DELAY_1_1.START" /></Request>
+PublishSubscribe;<Request ID="2,663" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO1" Destination="SubscribeEvent.Unsubscribe" /></Request>
+PublishSubscribe;<Request ID="2,664" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO2" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,665" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,666" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,667" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,668" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,669" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,670" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,671" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,672" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,673" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,674" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,675" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,676" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1_1.CNF" Destination="Sequencer_1_1.E_SWITCH_1_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,677" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1_1.CNF" Destination="Sequencer_1_1.E_DEMUX_1_1_1.EI" /></Request>
+PublishSubscribe;<Request ID="2,678" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO0" Destination="PUBL_0.REQ" /></Request>
+PublishSubscribe;<Request ID="2,679" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1.EO1" Destination="Sequencer_1_1.F_GT_1_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,680" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1_1.EO0" Destination="Sequencer_1_1.F_SUB_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,681" Action="CREATE"><Connection Source="Sequencer_1_1.E_SWITCH_1_1.EO1" Destination="Sequencer_1_1.F_SUB_1_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,682" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1_1.E_CTU.R" /></Request>
+PublishSubscribe;<Request ID="2,683" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO0" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,684" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO1" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,685" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO2" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,686" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1_1.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,687" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO3" Destination="E_DELAY_1_1.START" /></Request>
+PublishSubscribe;<Request ID="2,688" Action="CREATE"><Connection Source="Sequencer_1_1.E_DEMUX_1_1.EO3" Destination="Sequencer_1_1.E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,689" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.E_DEMUX.K" /></Request>
+PublishSubscribe;<Request ID="2,690" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT.OUT" Destination="Sequencer_1_1.E_SWITCH.G" /></Request>
+PublishSubscribe;<Request ID="2,691" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB.OUT" Destination="Sequencer_1_1.E_DEMUX_1.K" /></Request>
+PublishSubscribe;<Request ID="2,692" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_GT.IN1" /></Request>
+PublishSubscribe;<Request ID="2,693" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_SUB.IN1" /></Request>
+PublishSubscribe;<Request ID="2,694" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_SUB_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,695" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_GT_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,696" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1.OUT" Destination="Sequencer_1_1.E_SWITCH_1.G" /></Request>
+PublishSubscribe;<Request ID="2,697" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1.OUT" Destination="Sequencer_1_1.E_DEMUX_1_1.K" /></Request>
+PublishSubscribe;<Request ID="2,698" Action="CREATE"><Connection Source="Sequencer_1_1.F_GT_1_1.OUT" Destination="Sequencer_1_1.E_SWITCH_1_1.G" /></Request>
+PublishSubscribe;<Request ID="2,699" Action="CREATE"><Connection Source="Sequencer_1_1.F_SUB_1_1.OUT" Destination="Sequencer_1_1.E_DEMUX_1_1_1.K" /></Request>
+PublishSubscribe;<Request ID="2,700" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_SUB_1_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,701" Action="CREATE"><Connection Source="Sequencer_1_1.E_CTU.CV" Destination="Sequencer_1_1.F_GT_1_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,702" Action="CREATE"><Connection Source="FieldsToPublishEvent.CNF" Destination="ArrowheadPublish.publish" /></Request>
+PublishSubscribe;<Request ID="2,703" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.CNF" Destination="FieldsToArrowheadEvent.REQ" /></Request>
+PublishSubscribe;<Request ID="2,704" Action="CREATE"><Connection Source="E_DELAY.EO" Destination="F_EQ.REQ" /></Request>
+PublishSubscribe;<Request ID="2,705" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="NoMessage.REQ" /></Request>
+PublishSubscribe;<Request ID="2,706" Action="CREATE"><Connection Source="F_EQ_1.CNF" Destination="OneMessage.REQ" /></Request>
+PublishSubscribe;<Request ID="2,707" Action="CREATE"><Connection Source="E_DELAY_1.EO" Destination="F_EQ_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,708" Action="CREATE"><Connection Source="E_DELAY_1_1.EO" Destination="F_EQ_1_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,709" Action="CREATE"><Connection Source="F_EQ_1_1.CNF" Destination="TwoMessages.REQ" /></Request>
+PublishSubscribe;<Request ID="2,710" Action="CREATE"><Connection Source="TwoMessages.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,711" Action="CREATE"><Connection Source="OneMessage.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,712" Action="CREATE"><Connection Source="NoMessage.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,713" Action="CREATE"><Connection Source="FieldsToEventFilter.CNF" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,714" Action="CREATE"><Connection Source="ArrowheadPublish.published" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,715" Action="CREATE"><Connection Source="SubscribeEvent.Subscribed" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,716" Action="CREATE"><Connection Source="SubscribeEvent.Unsubscribed" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,717" Action="CREATE"><Connection Source="SUBL_0.IND" Destination="Sequencer_1_1.F_GT.REQ" /></Request>
+PublishSubscribe;<Request ID="2,718" Action="CREATE"><Connection Source="SUBL_0.INITO" Destination="PUBL_0_1.INIT" /></Request>
+PublishSubscribe;<Request ID="2,719" Action="CREATE"><Connection Source="START.COLD" Destination="SUBL_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,720" Action="CREATE"><Connection Source="START.WARM" Destination="SUBL_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,721" Action="CREATE"><Connection Source="PUBL_0_1.INITO" Destination="PUBL_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,722" Action="CREATE"><Connection Source="PUBL_0.INITO" Destination="PUBL_0_1.REQ" /></Request>
+PublishSubscribe;<Request ID="2,723" Action="CREATE"><Connection Source="FieldsToArrowheadEvent.CNF" Destination="SERVER_1_0.INIT" /></Request>
+PublishSubscribe;<Request ID="2,724" Action="CREATE"><Connection Source="E_CTU.CUO" Destination="SERVER_1_0.RSP" /></Request>
+PublishSubscribe;<Request ID="2,725" Action="CREATE"><Connection Source="SERVER_1_0.INITO" Destination="FieldsToEventFilter.REQ" /></Request>
+PublishSubscribe;<Request ID="2,726" Action="CREATE"><Connection Source="SERVER_1_0.IND" Destination="E_CTU.CU" /></Request>
+PublishSubscribe;<Request ID="2,727" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToPublishEvent.source" /></Request>
+PublishSubscribe;<Request ID="2,728" Action="CREATE"><Connection Source="FieldsToPublishEvent.publishEvent" Destination="ArrowheadPublish.publishEvent" /></Request>
+PublishSubscribe;<Request ID="2,729" Action="CREATE"><Connection Source="FieldsToArrowheadEvent.arrowheadEvent" Destination="FieldsToPublishEvent.event" /></Request>
+PublishSubscribe;<Request ID="2,730" Action="CREATE"><Connection Source="FieldsToArrowheadSystem.arrowheadSystem" Destination="FieldsToEventFilter.consumer" /></Request>
+PublishSubscribe;<Request ID="2,731" Action="CREATE"><Connection Source="FieldsToEventFilter.eventFilter" Destination="SubscribeEvent.eventFilter" /></Request>
+PublishSubscribe;<Request ID="2,732" Action="CREATE"><Connection Source="E_CTU.CV" Destination="F_EQ.IN1" /></Request>
+PublishSubscribe;<Request ID="2,733" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="NoMessage.check" /></Request>
+PublishSubscribe;<Request ID="2,734" Action="CREATE"><Connection Source="E_CTU.CV" Destination="F_EQ_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,735" Action="CREATE"><Connection Source="F_EQ_1.OUT" Destination="OneMessage.check" /></Request>
+PublishSubscribe;<Request ID="2,736" Action="CREATE"><Connection Source="E_CTU.CV" Destination="F_EQ_1_1.IN1" /></Request>
+PublishSubscribe;<Request ID="2,737" Action="CREATE"><Connection Source="F_EQ_1_1.OUT" Destination="TwoMessages.check" /></Request>
+PublishSubscribe;<Request ID="2,738" Action="CREATE"><Connection Source="STRING2STRING.OUT" Destination="SERVER_1_0.SD_1" /></Request>
+PublishSubscribe;<Request ID="2,739" Action="CREATE"><Connection Source="ArrowheadPublish.ArrowheadPublishAdp" Destination="PublishEventHTTP.publishEvent" /></Request>
+PublishSubscribe;<Request ID="2,740" Action="CREATE"><Connection Source="SubscribeEvent.SubscribeEventAdp" Destination="SubscribeEventHTTP.SubscribeEventAdp" /></Request>
+PublishSubscribe;<Request ID="2,741" Action="START"/>
diff --git a/src/modules/arrowhead/SystemTests/CMakeLists.txt b/systemtests/src/modules/arrowhead/CMakeLists.txt
similarity index 78%
rename from src/modules/arrowhead/SystemTests/CMakeLists.txt
rename to systemtests/src/modules/arrowhead/CMakeLists.txt
index 02fac84..ad7d82a 100644
--- a/src/modules/arrowhead/SystemTests/CMakeLists.txt
+++ b/systemtests/src/modules/arrowhead/CMakeLists.txt
@@ -17,8 +17,12 @@
   #test are soft because of the https://github.com/arrowhead-f/core-java/issues/34  
 
   if(FORTE_COM_HTTP)
-    forte_add_systemtest_soft(HTTPTests Arrowhead_HTTPTest.fboot 80)
+    forte_add_systemtest_soft(HTTPArrowheadTests Arrowhead_HTTPTest.fboot 80)
   endif(FORTE_COM_HTTP) 
+ 
+   if(FORTE_COM_OPC_UA)
+    forte_add_systemtest_soft(OpcUaArrowheadTests Arrowhead_OpcUaTest.fboot 80)
+  endif(FORTE_COM_OPC_UA) 
   
    #after compilation, run "make CTEST_OUTPUT_ON_FAILURE=1 test" on the binary folder
 
diff --git a/src/modules/arrowhead/SystemTests/cleanIntracloudAndRules.sh b/systemtests/src/modules/arrowhead/cleanIntracloudAndRules.sh
similarity index 100%
rename from src/modules/arrowhead/SystemTests/cleanIntracloudAndRules.sh
rename to systemtests/src/modules/arrowhead/cleanIntracloudAndRules.sh
diff --git a/systemtests/src/modules/opc_ua/CMakeLists.txt b/systemtests/src/modules/opc_ua/CMakeLists.txt
index cb59499..5b62035 100644
--- a/systemtests/src/modules/opc_ua/CMakeLists.txt
+++ b/systemtests/src/modules/opc_ua/CMakeLists.txt
@@ -39,3 +39,24 @@
 
 forte_opcua_add_nodeset_without_generated(fordiacNamespace ${CMAKE_CURRENT_SOURCE_DIR}/nodespaceTest)
 
+#Config files for clients
+
+forte_add_2dev_systemtests(ClientConfigFailNonExistingFile clientAuthFail.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/NonExistingFile.forte" "" 10 0)
+
+forte_add_2dev_systemtests(ClientConfigFailNoEqualSignal1 clientAuthFail.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/failNoEqualSignal1.forte" "" 10 0)
+
+forte_add_2dev_systemtests(ClientConfigFailNoEqualSignal2 clientAuthFail.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/failNoEqualSignal2.forte" "" 10 0)
+
+forte_add_2dev_systemtests(ClientConfigFailTwoEqualSignal1 clientAuthFail.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/failTwoEqualSignal1.forte" "" 10 0)
+
+forte_add_2dev_systemtests(ClientConfigFailTwoEqualSignal2 clientAuthFail.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/failTwoEqualSignal2.forte" "" 10 0)
+
+forte_add_2dev_systemtests(ClientConfigFailTwoEqualSignal3 clientAuthFail.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/failTwoEqualSignal3.forte" "" 10 0)
+
+forte_add_2dev_systemtests(ClientConfigSuccessNoEndpoint clientAuthSuccess.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/successNoEndpoint.forte" "" 10 1)
+
+forte_add_2dev_systemtests(ClientConfigSuccessNonMatchEndpointFirst clientAuthSuccess.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/successNonMatchEndpointFirst.forte" "" 10 1)
+
+if(FORTE_COM_OPC_UA_ENCRYPTION AND FORTE_COM_OPC_UA_MASTER_BRANCH)
+  forte_add_2dev_systemtests(ClientConfigFailFailNoCertificateFile clientAuthFail.fboot serverForAuth.fboot "-oc ${CMAKE_CURRENT_SOURCE_DIR}/clientsConfigFiles/failNoCertificateFile.forte" "" 10 0)
+endif(FORTE_COM_OPC_UA_ENCRYPTION AND FORTE_COM_OPC_UA_MASTER_BRANCH)
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/clientAuthFail.fboot b/systemtests/src/modules/opc_ua/clientAuthFail.fboot
new file mode 100644
index 0000000..7d8da15
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientAuthFail.fboot
@@ -0,0 +1,21 @@
+;<Request ID="1" Action="CREATE"><FB Name="clientAuthFail" Type="EMB_RES" /></Request>
+clientAuthFail;<Request ID="2" Action="CREATE"><FB Name="CLIENT_0_1" Type="CLIENT_0_1" /></Request>
+clientAuthFail;<Request ID="3" Action="WRITE"><Connection Source="1" Destination="CLIENT_0_1.QI" /></Request>
+clientAuthFail;<Request ID="4" Action="WRITE"><Connection Source="opc_ua[READ;opc.tcp://localhost:4840#;/Objects/IsolatedTests/WRITEVariable]" Destination="CLIENT_0_1.ID" /></Request>
+clientAuthFail;<Request ID="5" Action="CREATE"><FB Name="E_DELAY" Type="E_DELAY" /></Request>
+clientAuthFail;<Request ID="6" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY.DT" /></Request>
+clientAuthFail;<Request ID="7" Action="CREATE"><FB Name="ClientShoulFail" Type="TEST_CONDITION" /></Request>
+clientAuthFail;<Request ID="8" Action="CREATE"><FB Name="STEST_END" Type="STEST_END" /></Request>
+clientAuthFail;<Request ID="9" Action="CREATE"><FB Name="F_NOT" Type="F_NOT" /></Request>
+clientAuthFail;<Request ID="10" Action="CREATE"><FB Name="DINT2DINT_1_1" Type="DINT2DINT" /></Request>
+clientAuthFail;<Request ID="11" Action="CREATE"><Connection Source="CLIENT_0_1.INITO" Destination="E_DELAY.START" /></Request>
+clientAuthFail;<Request ID="12" Action="CREATE"><Connection Source="E_DELAY.EO" Destination="CLIENT_0_1.REQ" /></Request>
+clientAuthFail;<Request ID="13" Action="CREATE"><Connection Source="ClientShoulFail.CNF" Destination="STEST_END.REQ" /></Request>
+clientAuthFail;<Request ID="14" Action="CREATE"><Connection Source="CLIENT_0_1.CNF" Destination="F_NOT.REQ" /></Request>
+clientAuthFail;<Request ID="15" Action="CREATE"><Connection Source="F_NOT.CNF" Destination="ClientShoulFail.REQ" /></Request>
+clientAuthFail;<Request ID="16" Action="CREATE"><Connection Source="START.COLD" Destination="CLIENT_0_1.INIT" /></Request>
+clientAuthFail;<Request ID="17" Action="CREATE"><Connection Source="START.WARM" Destination="CLIENT_0_1.INIT" /></Request>
+clientAuthFail;<Request ID="18" Action="CREATE"><Connection Source="CLIENT_0_1.QO" Destination="F_NOT.IN" /></Request>
+clientAuthFail;<Request ID="19" Action="CREATE"><Connection Source="F_NOT.OUT" Destination="ClientShoulFail.check" /></Request>
+clientAuthFail;<Request ID="20" Action="CREATE"><Connection Source="CLIENT_0_1.RD_1" Destination="DINT2DINT_1_1.IN" /></Request>
+clientAuthFail;<Request ID="21" Action="START"/>
diff --git a/systemtests/src/modules/opc_ua/clientAuthSuccess.fboot b/systemtests/src/modules/opc_ua/clientAuthSuccess.fboot
new file mode 100644
index 0000000..f529456
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientAuthSuccess.fboot
@@ -0,0 +1,23 @@
+;<Request ID="1" Action="CREATE"><FB Name="clientAuthSucess" Type="EMB_RES" /></Request>
+clientAuthSucess;<Request ID="2" Action="CREATE"><FB Name="E_DELAY_2" Type="E_DELAY" /></Request>
+clientAuthSucess;<Request ID="3" Action="WRITE"><Connection Source="T#2s" Destination="E_DELAY_2.DT" /></Request>
+clientAuthSucess;<Request ID="4" Action="CREATE"><FB Name="CLIENT_0_1_1" Type="CLIENT_0_1" /></Request>
+clientAuthSucess;<Request ID="5" Action="WRITE"><Connection Source="1" Destination="CLIENT_0_1_1.QI" /></Request>
+clientAuthSucess;<Request ID="6" Action="WRITE"><Connection Source="opc_ua[READ;opc.tcp://localhost:4840#;/Objects/IsolatedTests/WRITEVariable]" Destination="CLIENT_0_1_1.ID" /></Request>
+clientAuthSucess;<Request ID="7" Action="CREATE"><FB Name="DINT2DINT_1_1_1" Type="DINT2DINT" /></Request>
+clientAuthSucess;<Request ID="8" Action="CREATE"><FB Name="F_EQ" Type="F_EQ" /></Request>
+clientAuthSucess;<Request ID="9" Action="WRITE"><Connection Source="DINT#12" Destination="F_EQ.IN1" /></Request>
+clientAuthSucess;<Request ID="10" Action="CREATE"><FB Name="ClientAuthConnected" Type="TEST_CONDITION" /></Request>
+clientAuthSucess;<Request ID="11" Action="CREATE"><FB Name="STEST_END_2" Type="STEST_END" /></Request>
+clientAuthSucess;<Request ID="12" Action="CREATE"><Connection Source="E_DELAY_2.EO" Destination="CLIENT_0_1_1.REQ" /></Request>
+clientAuthSucess;<Request ID="13" Action="CREATE"><Connection Source="CLIENT_0_1_1.INITO" Destination="E_DELAY_2.START" /></Request>
+clientAuthSucess;<Request ID="14" Action="CREATE"><Connection Source="CLIENT_0_1_1.CNF" Destination="DINT2DINT_1_1_1.REQ" /></Request>
+clientAuthSucess;<Request ID="15" Action="CREATE"><Connection Source="DINT2DINT_1_1_1.CNF" Destination="F_EQ.REQ" /></Request>
+clientAuthSucess;<Request ID="16" Action="CREATE"><Connection Source="F_EQ.CNF" Destination="ClientAuthConnected.REQ" /></Request>
+clientAuthSucess;<Request ID="17" Action="CREATE"><Connection Source="ClientAuthConnected.CNF" Destination="STEST_END_2.REQ" /></Request>
+clientAuthSucess;<Request ID="18" Action="CREATE"><Connection Source="START.COLD" Destination="CLIENT_0_1_1.INIT" /></Request>
+clientAuthSucess;<Request ID="19" Action="CREATE"><Connection Source="START.WARM" Destination="CLIENT_0_1_1.INIT" /></Request>
+clientAuthSucess;<Request ID="20" Action="CREATE"><Connection Source="CLIENT_0_1_1.RD_1" Destination="DINT2DINT_1_1_1.IN" /></Request>
+clientAuthSucess;<Request ID="21" Action="CREATE"><Connection Source="DINT2DINT_1_1_1.OUT" Destination="F_EQ.IN2" /></Request>
+clientAuthSucess;<Request ID="22" Action="CREATE"><Connection Source="F_EQ.OUT" Destination="ClientAuthConnected.check" /></Request>
+clientAuthSucess;<Request ID="23" Action="START"/>
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoCertificateFile.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoCertificateFile.forte
new file mode 100644
index 0000000..9dcd2c7
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoCertificateFile.forte
@@ -0,0 +1,4 @@
+endpoint=opc.tcp://localhost:4840
+certificate=/unknownPath/unknownPathFile
+securityMode=3
+securityPolicy=http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoEqualSignal1.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoEqualSignal1.forte
new file mode 100644
index 0000000..ed36321
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoEqualSignal1.forte
@@ -0,0 +1,5 @@
+username john
+
+endpoint=opc.tcp://localhost:4840
+securityMode=3
+securityPolicy=http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoEqualSignal2.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoEqualSignal2.forte
new file mode 100644
index 0000000..092de66
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/failNoEqualSignal2.forte
@@ -0,0 +1,4 @@
+endpoint=opc.tcp://localhost:4840
+username:john
+securityMode=3
+securityPolicy=http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal1.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal1.forte
new file mode 100644
index 0000000..0982ad5
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal1.forte
@@ -0,0 +1,4 @@
+endpoint=opc.tcp://localhost:4840
+username=john=
+securityMode=3
+securityPolicy=http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal2.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal2.forte
new file mode 100644
index 0000000..dd2f9b2
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal2.forte
@@ -0,0 +1,4 @@
+username=john=
+endpoint=opc.tcp://localhost:4840
+securityMode=3
+securityPolicy=http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal3.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal3.forte
new file mode 100644
index 0000000..9d342ea
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/failTwoEqualSignal3.forte
@@ -0,0 +1,8 @@
+endpoint=opc.tcp://localhost:4840
+securityMode=3
+securityPolicy=http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256
+username=john
+password=doe
+unknownKey=value
+
+username=john=
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/successNoEndpoint.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/successNoEndpoint.forte
new file mode 100644
index 0000000..fa50bfd
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/successNoEndpoint.forte
@@ -0,0 +1,3 @@
+endpoint=opc.tcp://nonMatchingEnpoint:4840
+username=john
+password=doe
diff --git a/systemtests/src/modules/opc_ua/clientsConfigFiles/successNonMatchEndpointFirst.forte b/systemtests/src/modules/opc_ua/clientsConfigFiles/successNonMatchEndpointFirst.forte
new file mode 100644
index 0000000..99e9df4
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/clientsConfigFiles/successNonMatchEndpointFirst.forte
@@ -0,0 +1,5 @@
+endpoint=opc.tcp://nonMatchingEnpoint:4840
+username=john
+password=doe
+
+endpoint=opc.tcp://localhost:4840
\ No newline at end of file
diff --git a/systemtests/src/modules/opc_ua/serverForAuth.fboot b/systemtests/src/modules/opc_ua/serverForAuth.fboot
new file mode 100644
index 0000000..f18f39d
--- /dev/null
+++ b/systemtests/src/modules/opc_ua/serverForAuth.fboot
@@ -0,0 +1,17 @@
+;<Request ID="1" Action="CREATE"><FB Name="serverForAuth" Type="EMB_RES" /></Request>
+serverForAuth;<Request ID="2" Action="CREATE"><FB Name="PUBLISH_1" Type="PUBLISH_1" /></Request>
+serverForAuth;<Request ID="3" Action="WRITE"><Connection Source="1" Destination="PUBLISH_1.QI" /></Request>
+serverForAuth;<Request ID="4" Action="WRITE"><Connection Source="opc_ua[WRITE;/Objects/IsolatedTests/WRITEVariable]" Destination="PUBLISH_1.ID" /></Request>
+serverForAuth;<Request ID="5" Action="CREATE"><FB Name="DINT2DINT_1" Type="DINT2DINT" /></Request>
+serverForAuth;<Request ID="6" Action="WRITE"><Connection Source="DINT#12" Destination="DINT2DINT_1.IN" /></Request>
+serverForAuth;<Request ID="7" Action="CREATE"><FB Name="E_DELAY_1" Type="E_DELAY" /></Request>
+serverForAuth;<Request ID="8" Action="WRITE"><Connection Source="T#4s" Destination="E_DELAY_1.DT" /></Request>
+serverForAuth;<Request ID="9" Action="CREATE"><FB Name="STEST_END_1" Type="STEST_END" /></Request>
+serverForAuth;<Request ID="10" Action="CREATE"><Connection Source="START.COLD" Destination="PUBLISH_1.INIT" /></Request>
+serverForAuth;<Request ID="11" Action="CREATE"><Connection Source="START.WARM" Destination="PUBLISH_1.INIT" /></Request>
+serverForAuth;<Request ID="12" Action="CREATE"><Connection Source="PUBLISH_1.CNF" Destination="E_DELAY_1.START" /></Request>
+serverForAuth;<Request ID="13" Action="CREATE"><Connection Source="E_DELAY_1.EO" Destination="STEST_END_1.REQ" /></Request>
+serverForAuth;<Request ID="14" Action="CREATE"><Connection Source="PUBLISH_1.INITO" Destination="DINT2DINT_1.REQ" /></Request>
+serverForAuth;<Request ID="15" Action="CREATE"><Connection Source="DINT2DINT_1.CNF" Destination="PUBLISH_1.REQ" /></Request>
+serverForAuth;<Request ID="16" Action="CREATE"><Connection Source="DINT2DINT_1.OUT" Destination="PUBLISH_1.SD_1" /></Request>
+serverForAuth;<Request ID="17" Action="START"/>
diff --git a/tests/core/cominfra/CMakeLists.txt b/tests/core/cominfra/CMakeLists.txt
index 34a7710..8908e13 100644
--- a/tests/core/cominfra/CMakeLists.txt
+++ b/tests/core/cominfra/CMakeLists.txt
@@ -16,4 +16,5 @@
   
   forte_test_add_sourcefile_cpp(fbdkasn1layerser_test.cpp)
   forte_test_add_sourcefile_cpp(fbdkasn1layerdeser_test.cpp)
+  forte_test_add_sourcefile_cpp(extractLayerAndParamsTest.cpp)
   
diff --git a/tests/core/cominfra/extractLayerAndParamsTest.cpp b/tests/core/cominfra/extractLayerAndParamsTest.cpp
new file mode 100644
index 0000000..45e83e9
--- /dev/null
+++ b/tests/core/cominfra/extractLayerAndParamsTest.cpp
@@ -0,0 +1,197 @@
+/*******************************************************************************
+ * Copyright (c) 2019 fotiss GmbH
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Jose Cabral- initial API and implementation and/or initial documentation
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+#include "../../../src/core/cominfra/basecommfb.h"
+#include <string>
+
+class CExtractLayerAndParamsCommFB : public forte::com_infra::CBaseCommFB {
+  public:
+    static char *extractLayerIdAndParams(char **paRemainingID, char **paLayerParams) {
+      return forte::com_infra::CBaseCommFB::extractLayerIdAndParams(paRemainingID, paLayerParams);
+    }
+};
+
+BOOST_AUTO_TEST_SUITE (extractLayerAndParams_test)
+
+BOOST_AUTO_TEST_CASE(noExtraSquareBrackets_test) {
+
+
+  const char* stringToTest = "id[normalParams].id2[openingBracket[].id3[twoOpeningBrackets[[].id4[closingBracket\\]].id5[twoClosingBrackes\\]\\]].id6[bothBrackets[\\]].id7[bothBracketsInverted\\][]";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id"));
+  BOOST_CHECK(0 == strcmp(layerParams, "normalParams"));
+  BOOST_CHECK(0 == strcmp(remainingId, "id2[openingBracket[].id3[twoOpeningBrackets[[].id4[closingBracket\\]].id5[twoClosingBrackes\\]\\]].id6[bothBrackets[\\]].id7[bothBracketsInverted\\][]"));
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id2"));
+  BOOST_CHECK(0 == strcmp(layerParams, "openingBracket["));
+  BOOST_CHECK(0 == strcmp(remainingId, "id3[twoOpeningBrackets[[].id4[closingBracket\\]].id5[twoClosingBrackes\\]\\]].id6[bothBrackets[\\]].id7[bothBracketsInverted\\][]"));
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id3"));
+  BOOST_CHECK(0 == strcmp(layerParams, "twoOpeningBrackets[["));
+  BOOST_CHECK(0 == strcmp(remainingId, "id4[closingBracket\\]].id5[twoClosingBrackes\\]\\]].id6[bothBrackets[\\]].id7[bothBracketsInverted\\][]"));
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id4"));
+  BOOST_CHECK(0 == strcmp(layerParams, "closingBracket]"));
+  BOOST_CHECK(0 == strcmp(remainingId, "id5[twoClosingBrackes\\]\\]].id6[bothBrackets[\\]].id7[bothBracketsInverted\\][]"));
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id5"));
+  BOOST_CHECK(0 == strcmp(layerParams, "twoClosingBrackes]]"));
+  BOOST_CHECK(0 == strcmp(remainingId, "id6[bothBrackets[\\]].id7[bothBracketsInverted\\][]"));
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id6"));
+  BOOST_CHECK(0 == strcmp(layerParams, "bothBrackets[]"));
+  BOOST_CHECK(0 == strcmp(remainingId, "id7[bothBracketsInverted\\][]"));
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id7"));
+  BOOST_CHECK(0 == strcmp(layerParams, "bothBracketsInverted]["));
+  BOOST_CHECK(0 == strcmp(remainingId, ""));
+
+}
+
+BOOST_AUTO_TEST_CASE(escapedSign_test) {
+
+  const char* stringToTest = "id[\\\\].id2[\\\\\\]]";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id"));
+  BOOST_CHECK(0 == strcmp(layerParams, "\\"));
+  BOOST_CHECK(0 == strcmp(remainingId, "id2[\\\\\\]]"));
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, "id2"));
+  BOOST_CHECK(0 == strcmp(layerParams, "\\]"));
+  BOOST_CHECK(0 == strcmp(remainingId, ""));
+
+}
+
+BOOST_AUTO_TEST_CASE(emptyId_test) {
+
+  const char* stringToTest = "";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(layerId == 0);
+
+}
+
+
+BOOST_AUTO_TEST_CASE(noOpeningBracket_test) {
+
+  const char* stringToTest = "id1]";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(layerId == 0);
+
+}
+
+BOOST_AUTO_TEST_CASE(noOpeningBracketWithScaped_test) {
+
+  const char* stringToTest = "id1\\[]";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(layerId == 0);
+
+}
+
+BOOST_AUTO_TEST_CASE(noClosingBracket_test) {
+
+  const char* stringToTest = "id1[";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(layerId == 0);
+
+}
+
+BOOST_AUTO_TEST_CASE(noClosingBracketWithScaped_test) {
+
+  const char* stringToTest = "id1[\\]";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(layerId == 0);
+
+}
+
+BOOST_AUTO_TEST_CASE(noId_test) {
+
+  const char* stringToTest = "[]";
+
+  char* remainingId = new char[strlen(stringToTest) + 1];
+  memcpy(remainingId, stringToTest, strlen(stringToTest) + 1);
+  char* layerParams = 0;
+  char* layerId = 0;
+
+  layerId = CExtractLayerAndParamsCommFB::extractLayerIdAndParams(&remainingId, &layerParams);
+
+  BOOST_CHECK(0 == strcmp(layerId, ""));
+  BOOST_CHECK(0 == strcmp(layerParams, ""));
+  BOOST_CHECK(0 == strcmp(remainingId, ""));
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/AT_VARIABLE/CIEC_BYTE_AT_test.cpp b/tests/core/datatypes/AT_VARIABLE/CIEC_BYTE_AT_test.cpp
new file mode 100644
index 0000000..e1bfe96
--- /dev/null
+++ b/tests/core/datatypes/AT_VARIABLE/CIEC_BYTE_AT_test.cpp
@@ -0,0 +1,211 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - add at-variable tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+#include "../../../src/core/datatypes/forte_array_at.h"
+
+using namespace boost::unit_test;
+
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE)
+
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE_BYTE)
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_READ)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  for(auto i=0;i<8;i++){
+    BOOST_CHECK_EQUAL(testArray[i], true);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TEMPORARY)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[0]=false;
+
+  BOOST_CHECK_EQUAL(testArray[0], false);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT0)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[0] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x01);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT1)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[1] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x02);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT2)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[2] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x04);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT3)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[3] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x08);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT4)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[4] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x10);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT5)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[5] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x20);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT6)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[6] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x40);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_BIT7)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[7] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF-0x80);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_WRITE_CHECK_TARGET_OUTOFRANGE)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  testArray[8] = false;
+
+  BOOST_CHECK_EQUAL((int)nTestByte, 0xFF);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_READ_OUTOFRANGE)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0xFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  BOOST_CHECK_EQUAL(testArray[8], testArray[8]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_BYTE_MOVING_BIT)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte = 0x0;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_BYTE, 0, 7> testArray(nTestByte);
+
+  for (size_t i=0; i < 8; i++) {
+    testArray[i] = true;
+    BOOST_CHECK_EQUAL(nTestByte, (TForteByte)1 << i);
+    testArray[i] = false;
+  }
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/AT_VARIABLE/CIEC_DWORD_AT_test.cpp b/tests/core/datatypes/AT_VARIABLE/CIEC_DWORD_AT_test.cpp
new file mode 100644
index 0000000..10b35ec
--- /dev/null
+++ b/tests/core/datatypes/AT_VARIABLE/CIEC_DWORD_AT_test.cpp
@@ -0,0 +1,234 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - add at-variable tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+#include "../../../src/core/datatypes/forte_array_at.h"
+
+using namespace boost::unit_test;
+
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE)
+
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE_DWORD)
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_READ_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord = 0xFFFFFFFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_DWORD, 0, 31> testArray(nTestDWord);
+
+  for(auto i=0;i<32;i++){
+    BOOST_CHECK_EQUAL(testArray[i], true);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_READ_BIT_OUTOFBOUNDS)
+{
+  CIEC_DWORD nTestDWord;
+  ARRAY_AT<CIEC_BOOL, CIEC_DWORD, 0, 31> testArray(nTestDWord);
+
+  BOOST_CHECK_EQUAL(testArray[32], testArray[32]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_WRITE_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_DWORD, 0, 31> testArray(nTestDWord);
+
+  for(auto i=0;i<32;i++){
+    nTestDWord = 0xFFFFFFFF;
+    testArray[i] = false;
+    for(auto j=0;j<32;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_WRITE_BIT_OUTOFBOUNDS)
+{
+  CIEC_DWORD nTestDWord;
+  ARRAY_AT<CIEC_BOOL, CIEC_DWORD, 0, 31> testArray(nTestDWord);
+
+  testArray[32] = true;
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+  BOOST_CHECK_EQUAL(testArray[32], testArray[32]);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_READ_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord = 0xFFFFFFFF;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_DWORD, 0, 3> testArray(nTestDWord);
+
+  for(auto i=0;i<4;i++){
+    BOOST_CHECK_EQUAL((int)testArray[i], 0xFF);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_READ_BYTE_OUTOFBOUNDS)
+{
+  CIEC_DWORD nTestDWord;
+  ARRAY_AT<CIEC_BYTE, CIEC_DWORD, 0, 3> testArray(nTestDWord);
+
+  BOOST_CHECK_EQUAL((int)testArray[4], (int)testArray[4]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_WRITE_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_DWORD, 0, 3> testArray(nTestDWord);
+
+  for(auto i=0;i<4;i++){
+    nTestDWord = 0xFFFFFFFF;
+    testArray[i] = false;
+    for(auto j=0;j<4;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j ? 0xFF : false);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_WRITE_BYTE_OUTOFBOUNDS)
+{
+  CIEC_DWORD nTestDWord;
+  ARRAY_AT<CIEC_BYTE, CIEC_DWORD, 0, 3> testArray(nTestDWord);
+
+  testArray[4] = true;
+  BOOST_CHECK_EQUAL(testArray[4], testArray[4]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_READ_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord = 0xFFFFFFFF;
+
+  ARRAY_AT<CIEC_WORD, CIEC_DWORD, 0, 1> testArray(nTestDWord);
+
+  for(auto i=0;i<2;i++){
+    BOOST_CHECK_EQUAL((int)testArray[i], 0xFFFF);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_READ_WORD_OUTOFBOUNDS)
+{
+  CIEC_DWORD nTestDWord;
+  ARRAY_AT<CIEC_WORD, CIEC_DWORD, 0, 1> testArray(nTestDWord);
+
+  BOOST_CHECK_EQUAL((int)testArray[2], (int)testArray[2]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_WRITE_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  ARRAY_AT<CIEC_WORD, CIEC_DWORD, 0, 1> testArray(nTestDWord);
+
+  for(auto i=0;i<2;i++){
+    nTestDWord = 0xFFFFFFFF;
+    testArray[i] = false;
+    for(auto j=0;j<2;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j ? 0xFFFF : false);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_WRITE_WORD_OUTOFBOUNDS)
+{
+  CIEC_DWORD nTestDWord;
+  ARRAY_AT<CIEC_WORD, CIEC_DWORD, 0, 1> testArray(nTestDWord);
+
+  testArray[2] = true;
+  BOOST_CHECK_EQUAL(testArray[2], testArray[2]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_MOVING_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord = 0x0;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_DWORD, 0, 31> testArray(nTestDWord);
+
+  for (size_t i=0; i < 32; i++) {
+    testArray[i] = true;
+    BOOST_CHECK_EQUAL(nTestDWord, (TForteDWord)1 << i);
+    testArray[i] = false;
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_MOVING_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord = 0x0;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_DWORD, 0, 3> testArray(nTestDWord);
+
+  for (size_t i=0; i < 4; i++) {
+    testArray[i] = 0xFF;
+    BOOST_CHECK_EQUAL(nTestDWord, (TForteDWord)0xFF << i*8);
+    testArray[i] = 0;
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_DWORD_MOVING_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord = 0x0;
+
+  ARRAY_AT<CIEC_WORD, CIEC_DWORD, 0, 1> testArray(nTestDWord);
+
+  for (size_t i=0; i < 2; i++) {
+    testArray[i] = 0xF00D;
+    BOOST_CHECK_EQUAL(nTestDWord, (TForteDWord)0xF00D << i*16);
+    testArray[i] = 0;
+  }
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/AT_VARIABLE/CIEC_LWORD_AT_test.cpp b/tests/core/datatypes/AT_VARIABLE/CIEC_LWORD_AT_test.cpp
new file mode 100644
index 0000000..645a1f8
--- /dev/null
+++ b/tests/core/datatypes/AT_VARIABLE/CIEC_LWORD_AT_test.cpp
@@ -0,0 +1,304 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - add at-variable tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+#include "../../../src/core/datatypes/forte_array_at.h"
+
+using namespace boost::unit_test;
+
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE)
+
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE_LWORD)
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_LWORD, 0, 63> testArray(nTestLWord);
+
+  for(auto i=0;i<64;i++){
+    BOOST_CHECK_EQUAL(testArray[i], true);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_BIT_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_BOOL, CIEC_LWORD, 0, 63> testArray(nTestLWord);
+
+  BOOST_CHECK_EQUAL(testArray[64], testArray[64]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_LWORD, 0, 63> testArray(nTestLWord);
+
+  for(auto i=0;i<64;i++){
+    nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+    testArray[i] = false;
+    for(auto j=0;j<64;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_BIT_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_BOOL, CIEC_LWORD, 0, 63> testArray(nTestLWord);
+
+  testArray[64] = true;
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+  BOOST_CHECK_EQUAL(testArray[64], testArray[64]);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_LWORD, 0, 7> testArray(nTestLWord);
+
+  for(auto i=0;i<8;i++){
+    BOOST_CHECK_EQUAL((int)testArray[i], 0xFF);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_BYTE_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_BYTE, CIEC_LWORD, 0, 7> testArray(nTestLWord);
+
+  BOOST_CHECK_EQUAL((int)testArray[8], (int)testArray[8]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_LWORD, 0, 7> testArray(nTestLWord);
+
+  for(auto i=0;i<8;i++){
+    nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+    testArray[i] = false;
+    for(auto j=0;j<8;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j ? 0xFF : false);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_BYTE_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_BYTE, CIEC_LWORD, 0, 7> testArray(nTestLWord);
+
+  testArray[8] = true;
+  BOOST_CHECK_EQUAL(testArray[8], testArray[8]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+
+  ARRAY_AT<CIEC_WORD, CIEC_LWORD, 0, 3> testArray(nTestLWord);
+
+  for(auto i=0;i<4;i++){
+    BOOST_CHECK_EQUAL((int)testArray[i], 0xFFFF);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_WORD_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_WORD, CIEC_LWORD, 0, 3> testArray(nTestLWord);
+
+  BOOST_CHECK_EQUAL((int)testArray[4], (int)testArray[4]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  ARRAY_AT<CIEC_WORD, CIEC_LWORD, 0, 3> testArray(nTestLWord);
+
+  for(auto i=0;i<4;i++){
+    nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+    testArray[i] = false;
+    for(auto j=0;j<4;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j ? 0xFFFF : false);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_WORD_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_WORD, CIEC_LWORD, 0, 3> testArray(nTestLWord);
+
+  testArray[4] = true;
+  BOOST_CHECK_EQUAL(testArray[4], testArray[4]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+
+  ARRAY_AT<CIEC_DWORD, CIEC_LWORD, 0, 1> testArray(nTestLWord);
+
+  for(auto i=0;i<2;i++){
+    BOOST_CHECK_EQUAL(testArray[i], 0xFFFFFFFF);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_READ_DWORD_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_DWORD, CIEC_LWORD, 0, 1> testArray(nTestLWord);
+
+  BOOST_CHECK_EQUAL(testArray[2], testArray[2]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  ARRAY_AT<CIEC_DWORD, CIEC_LWORD, 0, 1> testArray(nTestLWord);
+
+  for(auto i=0;i<2;i++){
+    nTestLWord = 0xFFFFFFFFFFFFFFFFU;
+    testArray[i] = false;
+    for(auto j=0;j<2;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j ? 0xFFFFFFFF : false);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_WRITE_DWORD_OUTOFBOUNDS)
+{
+  CIEC_LWORD nTestLWord;
+  ARRAY_AT<CIEC_DWORD, CIEC_LWORD, 0, 1> testArray(nTestLWord);
+
+  testArray[2] = true;
+  BOOST_CHECK_EQUAL(testArray[2], testArray[2]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_MOVING_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x0;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_LWORD, 0, 63> testArray(nTestLWord);
+
+  for (size_t i=0; i < 64; i++) {
+    testArray[i] = true;
+    BOOST_CHECK_EQUAL(nTestLWord, (TForteLWord)1 << i);
+    testArray[i] = false;
+  }
+
+}
+
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_MOVING_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x0;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_LWORD, 0, 7> testArray(nTestLWord);
+
+  for (size_t i=0; i < 8; i++) {
+    testArray[i] = 0xFF;
+    BOOST_CHECK_EQUAL(nTestLWord, (TForteLWord)0xFF << i*8);
+    testArray[i] = 0;
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_MOVING_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x0;
+
+  ARRAY_AT<CIEC_WORD, CIEC_LWORD, 0, 3> testArray(nTestLWord);
+
+  for (size_t i=0; i < 4; i++) {
+    testArray[i] = 0xF00D;
+    BOOST_CHECK_EQUAL(nTestLWord, (TForteLWord)0xF00D << i*16);
+    testArray[i] = 0;
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_LWORD_MOVING_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x0;
+
+  ARRAY_AT<CIEC_DWORD, CIEC_LWORD, 0, 1> testArray(nTestLWord);
+
+  for (size_t i=0; i < 2; i++) {
+    testArray[i] = 0xFC0FFEEF;
+    BOOST_CHECK_EQUAL(nTestLWord, (TForteLWord)0xFC0FFEEF << i*32);
+    testArray[i] = 0;
+  }
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/AT_VARIABLE/CIEC_WORD_AT_test.cpp b/tests/core/datatypes/AT_VARIABLE/CIEC_WORD_AT_test.cpp
new file mode 100644
index 0000000..351af48
--- /dev/null
+++ b/tests/core/datatypes/AT_VARIABLE/CIEC_WORD_AT_test.cpp
@@ -0,0 +1,164 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - add at-variable tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+#include "../../../src/core/datatypes/forte_array_at.h"
+
+using namespace boost::unit_test;
+
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE)
+BOOST_AUTO_TEST_SUITE(AT_VARIABLE_WORD)
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_READ_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xFFFF;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_WORD, 0, 15> testArray(nTestWord);
+
+  for(auto i=0;i<16;i++){
+    BOOST_CHECK_EQUAL(testArray[i], true);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_READ_BIT_OUTOFBOUNDS)
+{
+  CIEC_WORD nTestWord;
+  ARRAY_AT<CIEC_BOOL, CIEC_WORD, 0, 15> testArray(nTestWord);
+
+  BOOST_CHECK_EQUAL(testArray[16], testArray[16]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_WRITE_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_WORD, 0, 15> testArray(nTestWord);
+
+  for(auto i=0;i<16;i++){
+    nTestWord = 0xFFFF;
+    testArray[i] = false;
+    for(auto j=0;j<16;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_WRITE_BIT_OUTOFBOUNDS)
+{
+  CIEC_WORD nTestWord;
+  ARRAY_AT<CIEC_BOOL, CIEC_WORD, 0, 15> testArray(nTestWord);
+
+  testArray[16] = true;
+  BOOST_CHECK_EQUAL(testArray[16], testArray[16]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_READ_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xFFFF;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_WORD, 0, 1> testArray(nTestWord);
+
+  for(auto i=0;i<2;i++){
+    BOOST_CHECK_EQUAL((int)testArray[i], 0xFF);
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_READ_BYTE_OUTOFBOUNDS)
+{
+  CIEC_WORD nTestWord;
+  ARRAY_AT<CIEC_BYTE, CIEC_WORD, 0, 1> testArray(nTestWord);
+
+  BOOST_CHECK_EQUAL((int)testArray[2], (int)testArray[2]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_WRITE_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_WORD, 0, 1> testArray(nTestWord);
+
+  for(auto i=0;i<2;i++){
+    nTestWord = 0xFFFF;
+    testArray[i] = false;
+    for(auto j=0;j<2;j++){
+      BOOST_CHECK_EQUAL(testArray[j], i!=j ? 0xFF : false);
+    }
+    BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), false);
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_WRITE_BYTE_OUTOFBOUNDS)
+{
+  CIEC_WORD nTestWord;
+  ARRAY_AT<CIEC_BYTE, CIEC_WORD, 0, 1> testArray(nTestWord);
+
+  testArray[2] = true;
+  BOOST_CHECK_EQUAL(testArray[2], testArray[2]);
+  BOOST_CHECK_EQUAL(testArray.getAccessedOutOfBounds(), true);
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_MOVING_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0x0;
+
+  ARRAY_AT<CIEC_BOOL, CIEC_WORD, 0, 15> testArray(nTestWord);
+
+  for (size_t i=0; i < 16; i++) {
+    testArray[i] = true;
+    BOOST_CHECK_EQUAL(nTestWord, (TForteWord)1 << i);
+    testArray[i] = false;
+  }
+
+}
+
+BOOST_AUTO_TEST_CASE(AT_VARIABLE_WORD_MOVING_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0x0;
+
+  ARRAY_AT<CIEC_BYTE, CIEC_WORD, 0, 1> testArray(nTestWord);
+
+  for (size_t i=0; i < 2; i++) {
+    testArray[i] = 0xFF;
+    BOOST_CHECK_EQUAL(nTestWord, (TForteWord)0xFF << i*8);
+    testArray[i] = 0;
+  }
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/AT_VARIABLE/CMakeLists.txt b/tests/core/datatypes/AT_VARIABLE/CMakeLists.txt
new file mode 100644
index 0000000..8b865c3
--- /dev/null
+++ b/tests/core/datatypes/AT_VARIABLE/CMakeLists.txt
@@ -0,0 +1,26 @@
+#*******************************************************************************
+# Copyright (c) 2011 - 2014 nxtControl, ACIN, fortiss GmbH, Profactor GmbH
+#               2020 Johannes Kepler University Linz
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#    Stanislav Meduna, Ingo Hegny, Alois Zoitl, Monika Wenger, Matthias Plasch  - initial API and implementation and/or initial documentation
+#    Ernst Blecha - add at-variable tests
+# *******************************************************************************/
+
+#SET(SOURCE_GROUP ${SOURCE_GROUP}\\core)
+
+  forte_test_add_inc_directories(${CMAKE_CURRENT_SOURCE_DIR})
+  
+#BIT-Datatypes  
+  forte_test_add_sourcefile_cpp(CIEC_BYTE_AT_test.cpp)
+  forte_test_add_sourcefile_cpp(CIEC_WORD_AT_test.cpp)
+  forte_test_add_sourcefile_cpp(CIEC_DWORD_AT_test.cpp)
+IF (FORTE_USE_64BIT_DATATYPES)
+  forte_test_add_sourcefile_cpp(CIEC_LWORD_AT_test.cpp)
+ENDIF (FORTE_USE_64BIT_DATATYPES) 
+
diff --git a/tests/core/datatypes/CIEC_PARTIAL/CIEC_BYTE_PARTIAL_test.cpp b/tests/core/datatypes/CIEC_PARTIAL/CIEC_BYTE_PARTIAL_test.cpp
new file mode 100644
index 0000000..0c79b07
--- /dev/null
+++ b/tests/core/datatypes/CIEC_PARTIAL/CIEC_BYTE_PARTIAL_test.cpp
@@ -0,0 +1,249 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - Adds partial access tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+/*#ifdef FORTE_USE_REAL_DATATYPE
+  #include <boost/test/floating_point_comparison.hpp>
+
+  #include "../../../src/core/datatypes/forte_real.h"
+#endif //FORTE_USE_REAL_DATATYPE*/
+
+//BOOLEAN
+#include "../../../src/core/datatypes/forte_bool.h"
+//BIT-Datatypes
+#include "../../../src/core/datatypes/forte_byte.h"
+
+#include "CIEC_PARTIAL_test.h"
+
+using namespace boost::unit_test;
+
+class CIEC_BYTE_PARTIAL_UNCHECKED : public CIEC_BYTE{
+public:
+  CIEC_BYTE_PARTIAL_UNCHECKED() {
+  }
+
+  CIEC_BYTE_PARTIAL_UNCHECKED(const CIEC_BYTE& paValue) : CIEC_BYTE(paValue) {
+  }
+
+  CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<CIEC_BOOL, CIEC_BYTE> x(size_t paIndex){
+    return CIEC_ANY_BIT::PARTIAL_ACCESS_TYPE<CIEC_BOOL, CIEC_BYTE>(*this, paIndex);
+  }
+};
+
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL)
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL_BYTE)
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_INITVALUES)
+{
+  CIEC_BYTE nTestByte;
+
+  test4X_0(nTestByte,4);
+  test4X_0(nTestByte,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_CONST_INIT)
+{
+  const CIEC_BOOL nTestBool(true);
+  CIEC_BYTE mTestByte;
+
+  mTestByte.partial<CIEC_BOOL,4>() = nTestBool;
+
+  BOOST_CHECK_EQUAL(mTestByte, 16);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_VALUE1_CHECK_BYTE)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte=0xBE;
+  BOOST_CHECK_EQUAL(nTestByte, 0xBEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_VALUE2_CHECK_BYTE)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte=0xBA;
+  BOOST_CHECK_EQUAL(nTestByte, 0xBAU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_VALUE1_CHECK_BIT)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte=0xBE;
+  test4X_B(nTestByte,4);
+  test4X_E(nTestByte,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_VALUE2_CHECK_BIT)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte=0xBA;
+  test4X_B(nTestByte,4);
+  test4X_A(nTestByte,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_VALUE_CHANGE_CHECK_BYTE)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte=0xBE;
+  nTestByte=0xBA;
+  BOOST_CHECK_EQUAL(nTestByte, 0xBAU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_VALUE_CHANGE_CHECK_BIT)
+{
+  CIEC_BYTE nTestByte;
+
+  nTestByte=0xBE;
+  nTestByte=0xBA;
+  test4X_B(nTestByte,4);
+  test4X_A(nTestByte,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_ASSIGN_BIT_CHANGE_BYTE_CHECK_BYTE_A)
+{
+  CIEC_BYTE nTestByte;
+
+  set4X_0(nTestByte,4);
+  set4X_D(nTestByte,0);
+
+  nTestByte = 0xFE;
+
+  BOOST_CHECK_EQUAL(nTestByte, 0xFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_ASSIGN_BIT_CHANGE_BYTE_CHECK_BYTE_B)
+{
+  CIEC_BYTE nTestByte;
+
+  set4X_0(nTestByte,4);
+  set4X_D(nTestByte,0);
+
+  nTestByte = 0xFE;
+
+  nTestByte = 0x22;
+
+  BOOST_CHECK_EQUAL(nTestByte, 0x22U);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_ASSIGN_BIT_CHECK_BIT)
+{
+  CIEC_BYTE nTestByte;
+
+  set4X_0(nTestByte,4);
+  set4X_D(nTestByte,0);
+
+  test4X_0(nTestByte,4);
+  test4X_D(nTestByte,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_ASSIGN_BIT_CHANGE_BYTE_CHECK_BIT_A)
+{
+  CIEC_BYTE nTestByte;
+
+  set4X_0(nTestByte,4);
+  set4X_D(nTestByte,0);
+
+  nTestByte = 0xFE;
+
+  test4X_F(nTestByte,4);
+  test4X_E(nTestByte,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_ASSIGN_BIT_CHANGE_BYTE_CHECK_BIT_B)
+{
+  CIEC_BYTE nTestByte;
+
+  set4X_0(nTestByte,4);
+  set4X_D(nTestByte,0);
+
+  nTestByte = 0xFE;
+
+  nTestByte = 0x22;
+
+  test4X_2(nTestByte,4);
+  test4X_2(nTestByte,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_ASSIGN_FROM_CONST)
+{
+  const CIEC_BOOL nTestBool(true);
+
+  CIEC_BYTE mTestByte;
+
+  mTestByte.partial<CIEC_BOOL,3>() = nTestBool;
+
+  BOOST_CHECK_EQUAL(mTestByte, 8);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_TYPE_WRITE_OUT_OF_BOUNDS)
+{
+  CIEC_BYTE_PARTIAL_UNCHECKED mTestByte;
+
+  auto tmp = mTestByte.x(8);
+
+  tmp = true;
+
+  BOOST_CHECK_EQUAL(mTestByte, 0);
+  BOOST_CHECK_EQUAL(tmp.getAccessedOutOfBounds(), true);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_TYPE_WRITE_OUT_OF_BOUNDS_FROM_CONST)
+{
+  const CIEC_BOOL nTestBool (true);
+
+  CIEC_BYTE_PARTIAL_UNCHECKED mTestByte;
+
+  auto tmp = mTestByte.x(8);
+
+  tmp = nTestBool;
+
+  BOOST_CHECK_EQUAL(mTestByte, 0);
+  BOOST_CHECK_EQUAL(tmp.getAccessedOutOfBounds(), true);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_BYTE_TYPE_READ_OUT_OF_BOUNDS)
+{
+  CIEC_BYTE nTestByte;
+  CIEC_BYTE_PARTIAL_UNCHECKED mTestByte;
+
+  nTestByte = 255;
+  mTestByte.setValue(nTestByte);
+
+  auto tmp = mTestByte.x(8);
+
+  BOOST_CHECK_EQUAL(mTestByte, 255);
+  BOOST_CHECK_EQUAL(tmp, 0);
+  BOOST_CHECK_EQUAL(tmp.getAccessedOutOfBounds(), true);
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/CIEC_PARTIAL/CIEC_DWORD_PARTIAL_test.cpp b/tests/core/datatypes/CIEC_PARTIAL/CIEC_DWORD_PARTIAL_test.cpp
new file mode 100644
index 0000000..48f3f02
--- /dev/null
+++ b/tests/core/datatypes/CIEC_PARTIAL/CIEC_DWORD_PARTIAL_test.cpp
@@ -0,0 +1,1204 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - Adds partial access tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+/*#ifdef FORTE_USE_REAL_DATATYPE
+  #include <boost/test/floating_point_comparison.hpp>
+
+  #include "../../../src/core/datatypes/forte_real.h"
+#endif //FORTE_USE_REAL_DATATYPE*/
+
+//BOOLEAN
+#include "../../../src/core/datatypes/forte_bool.h"
+//BIT-Datatypes
+#include "../../../src/core/datatypes/forte_byte.h"
+#include "../../../src/core/datatypes/forte_word.h"
+#include "../../../src/core/datatypes/forte_dword.h"
+
+#include "CIEC_PARTIAL_test.h"
+
+using namespace boost::unit_test;
+
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL)
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL_DWORD)
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_INITVALUES_CHECK_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  test4X_0(nTestDWord,28);
+  test4X_0(nTestDWord,24);
+  test4X_0(nTestDWord,20);
+  test4X_0(nTestDWord,16);
+  test4X_0(nTestDWord,12);
+  test4X_0(nTestDWord,8);
+  test4X_0(nTestDWord,4);
+  test4X_0(nTestDWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_INITVALUES_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()),0);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()),0);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()),0);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_INITVALUES_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()),0);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_INITVALUES_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  BOOST_CHECK_EQUAL(nTestDWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CONST_INIT)
+{
+  const CIEC_WORD nTestWord(0x42);
+  CIEC_DWORD mTestDWord;
+
+  mTestDWord.partial<CIEC_WORD,0>() = nTestWord;
+
+  BOOST_CHECK_EQUAL(mTestDWord, 0x42);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_VALUE_CHECK_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord=0xCAFEBABE;
+
+  test4X_C(nTestDWord,28)
+  test4X_A(nTestDWord,24)
+  test4X_F(nTestDWord,20)
+  test4X_E(nTestDWord,16)
+
+  test4X_B(nTestDWord,12)
+  test4X_A(nTestDWord,8)
+  test4X_B(nTestDWord,4)
+  test4X_E(nTestDWord,0)
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_VALUE_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord=0xCAFEBABE;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xBE);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xBA);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xFE);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xCA);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_VALUE_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord=0xCAFEBABE;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xBABE);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xCAFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_VALUE_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord=0xCAFEBABE;
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xCAFEBABE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_ASSIGN)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  test4X_B(nTestDWord,28);
+  test4X_A(nTestDWord,24);
+  test4X_A(nTestDWord,20);
+  test4X_D(nTestDWord,16);
+  test4X_F(nTestDWord,12);
+  test4X_0(nTestDWord,8);
+  test4X_0(nTestDWord,4);
+  test4X_D(nTestDWord,0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xBAU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xADU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xF0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0x0DU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xBAADU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xF00DU);
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAADF00DU);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  test4X_B(nTestDWord,28);
+  test4X_A(nTestDWord,24);
+  test4X_D(nTestDWord,20);
+  test4X_0(nTestDWord,16);
+  test4X_C(nTestDWord,12);
+  test4X_A(nTestDWord,8);
+  test4X_F(nTestDWord,4);
+  test4X_E(nTestDWord,0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xBAU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xD0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xCAU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xFEU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xBAD0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xCAFEU);
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAD0CAFEU);
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  test4X_C(nTestDWord,28);
+  test4X_E(nTestDWord,24);
+  test4X_C(nTestDWord,20);
+  test4X_0(nTestDWord,16);
+  test4X_F(nTestDWord,12);
+  test4X_F(nTestDWord,8);
+  test4X_E(nTestDWord,4);
+  test4X_E(nTestDWord,0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xCEU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xEEU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xCEC0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xFFEEU);
+  BOOST_CHECK_EQUAL(nTestDWord, 0xCEC0FFEEU);
+
+  nTestDWord = 0xADD511FE;
+
+  test4X_A(nTestDWord,28);
+  test4X_D(nTestDWord,24);
+  test4X_D(nTestDWord,20);
+  test4X_5(nTestDWord,16);
+  test4X_1(nTestDWord,12);
+  test4X_1(nTestDWord,8);
+  test4X_F(nTestDWord,4);
+  test4X_E(nTestDWord,0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xADU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xD5U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0x11U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xFEU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xADD5U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0x11FEU);
+  BOOST_CHECK_EQUAL(nTestDWord, 0xADD511FEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_ASSIGN_CHAIN_SET_BIT_CHECK_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  test4X_B(nTestDWord,28);
+  test4X_A(nTestDWord,24);
+  test4X_A(nTestDWord,20);
+  test4X_D(nTestDWord,16);
+  test4X_F(nTestDWord,12);
+  test4X_0(nTestDWord,8);
+  test4X_0(nTestDWord,4);
+  test4X_D(nTestDWord,0);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_ASSIGN_CHAIN_SET_BIT_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xBAU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xADU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xF0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0x0DU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_ASSIGN_CHAIN_SET_BIT_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xBAADU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xF00DU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_ASSIGN_CHAIN_SET_BIT_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAADF00DU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_BYTE_CHECK_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  test4X_B(nTestDWord,28);
+  test4X_A(nTestDWord,24);
+  test4X_D(nTestDWord,20);
+  test4X_0(nTestDWord,16);
+  test4X_C(nTestDWord,12);
+  test4X_A(nTestDWord,8);
+  test4X_F(nTestDWord,4);
+  test4X_E(nTestDWord,0);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_BYTE_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xBAU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xD0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xCAU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xFEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_BYTE_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xBAD0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xCAFEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_BYTE_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAD0CAFEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_WORD_CHECK_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  test4X_C(nTestDWord,28);
+  test4X_E(nTestDWord,24);
+  test4X_C(nTestDWord,20);
+  test4X_0(nTestDWord,16);
+  test4X_F(nTestDWord,12);
+  test4X_F(nTestDWord,8);
+  test4X_E(nTestDWord,4);
+  test4X_E(nTestDWord,0);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_WORD_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xCEU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_WORD_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xCEC0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xFFEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_SET_WORD_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xCEC0FFEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_SET_BIT_CHECK_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  set4X_A((nTestDWord.partial<CIEC_WORD,1>()),12);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),8);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),4);
+  set4X_5((nTestDWord.partial<CIEC_WORD,1>()),0);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),12);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),8);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>()),0);
+
+  test4X_A(nTestDWord,28);
+  test4X_D(nTestDWord,24);
+  test4X_D(nTestDWord,20);
+  test4X_5(nTestDWord,16);
+  test4X_1(nTestDWord,12);
+  test4X_1(nTestDWord,8);
+  test4X_F(nTestDWord,4);
+  test4X_E(nTestDWord,0);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_SET_BIT_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  set4X_A((nTestDWord.partial<CIEC_WORD,1>()),12);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),8);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),4);
+  set4X_5((nTestDWord.partial<CIEC_WORD,1>()),0);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),12);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),8);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>()),0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xADU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xD5U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0x11U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xFEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_SET_BIT_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_B(nTestDWord,28);
+  set4X_A(nTestDWord,24);
+  set4X_A(nTestDWord,20);
+  set4X_D(nTestDWord,16);
+  set4X_F(nTestDWord,12);
+  set4X_0(nTestDWord,8);
+  set4X_0(nTestDWord,4);
+  set4X_D(nTestDWord,0);
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  set4X_A((nTestDWord.partial<CIEC_WORD,1>()),12);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),8);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),4);
+  set4X_5((nTestDWord.partial<CIEC_WORD,1>()),0);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),12);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),8);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>()),0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xADD5U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0x11FEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_SET_BIT_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestDWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestDWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestDWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  nTestDWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestDWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  set4X_A((nTestDWord.partial<CIEC_WORD,1>()),12);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),8);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),4);
+  set4X_5((nTestDWord.partial<CIEC_WORD,1>()),0);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),12);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),8);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>()),0);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xADD511FEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_BYTE_SET_BIT_CHECK_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  test4X_C(nTestDWord,28);
+  test4X_E(nTestDWord,24);
+  test4X_C(nTestDWord,20);
+  test4X_0(nTestDWord,16);
+  test4X_F(nTestDWord,12);
+  test4X_F(nTestDWord,8);
+  test4X_E(nTestDWord,4);
+  test4X_E(nTestDWord,0);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_BYTE_SET_BIT_CHECK_WORD_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  test4X_C((nTestDWord.partial<CIEC_WORD,1>()),12);
+  test4X_E((nTestDWord.partial<CIEC_WORD,1>()),8);
+  test4X_C((nTestDWord.partial<CIEC_WORD,1>()),4);
+  test4X_0((nTestDWord.partial<CIEC_WORD,1>()),0);
+  test4X_F((nTestDWord.partial<CIEC_WORD,0>()),12);
+  test4X_F((nTestDWord.partial<CIEC_WORD,0>()),8);
+  test4X_E((nTestDWord.partial<CIEC_WORD,0>()),4);
+  test4X_E((nTestDWord.partial<CIEC_WORD,0>()),0);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_BYTE_SET_BIT_CHECK_WORD_BYTE_BIT)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  test4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  test4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  test4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  test4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  test4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  test4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  test4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  test4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_BYTE_SET_BIT_CHECK_WORD_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()), 0xCEU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()), 0xEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_BYTE_SET_BIT_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xCEU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_BYTE_SET_BIT_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_A((nTestDWord.partial<CIEC_WORD,1>()),12);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),8);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),4);
+  set4X_5((nTestDWord.partial<CIEC_WORD,1>()),0);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),12);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),8);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>()),0);
+
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xCEC0U);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xFFEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_CHANGE_CHAIN_WORD_BYTE_SET_BIT_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+
+  set4X_A((nTestDWord.partial<CIEC_WORD,1>()),12);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),8);
+  set4X_D((nTestDWord.partial<CIEC_WORD,1>()),4);
+  set4X_5((nTestDWord.partial<CIEC_WORD,1>()),0);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),12);
+  set4X_1((nTestDWord.partial<CIEC_WORD,0>()),8);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>()),0);
+
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xCEC0FFEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_A_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xCAFE;
+
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0x0000);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xCAFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_A_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0x0000CAFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_B_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xBAD0);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0xCAFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_B_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAD0CAFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_BYTE_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,3>()), 0xBA);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xD0);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,1>()), 0x0B);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_BYTE_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xBAD0);
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0x0BFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_BYTE_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAD00BFE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_CHECK_BYTE)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xAD);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_CHECK_WORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0x0BAD);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_CHECK_DWORD)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAD00BAD);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_BIT_A)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BOOL,0>()), false);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_BYTE_A)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,0>()), 0xAC);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_WORD_A)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,0>()), 0x0BAC);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_DWORD_A)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAD00BAC);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_BIT_B)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BOOL,0>()), false);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_BYTE_B)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  nTestBool = true;
+  nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,5>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_BYTE,2>()), 0xF0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_WORD_B)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  nTestBool = true;
+  nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,5>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL((nTestDWord.partial<CIEC_WORD,1>()), 0xBAF0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_DWORD_SET_VALUE_WORD_BYTE_BIT_CHECK_DWORD_B)
+{
+  CIEC_DWORD nTestDWord;
+  CIEC_WORD nTestWord;
+  CIEC_BYTE nTestByte;
+  CIEC_BOOL nTestBool;
+
+  nTestWord = 0xCAFE;
+  nTestDWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xBAD0;
+  nTestDWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestByte = 0x0B;
+  nTestDWord.partial<CIEC_BYTE,1>().setValue(nTestByte);
+
+  nTestByte = 0xAD;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().setValue(nTestByte);
+
+  nTestBool = false;
+  nTestDWord.partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,0>().setValue(nTestBool);
+
+  nTestBool = true;
+  nTestDWord.partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>().partial<CIEC_BOOL,5>().setValue(nTestBool);
+
+  BOOST_CHECK_EQUAL(nTestDWord, 0xBAF00BAC);
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/CIEC_PARTIAL/CIEC_LWORD_PARTIAL_test.cpp b/tests/core/datatypes/CIEC_PARTIAL/CIEC_LWORD_PARTIAL_test.cpp
new file mode 100644
index 0000000..cefa7fb
--- /dev/null
+++ b/tests/core/datatypes/CIEC_PARTIAL/CIEC_LWORD_PARTIAL_test.cpp
@@ -0,0 +1,863 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - Adds partial access tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+/*#ifdef FORTE_USE_REAL_DATATYPE
+  #include <boost/test/floating_point_comparison.hpp>
+
+  #include "../../../src/core/datatypes/forte_real.h"
+#endif //FORTE_USE_REAL_DATATYPE*/
+
+//BOOLEAN
+#include "../../../src/core/datatypes/forte_bool.h"
+//BIT-Datatypes
+#include "../../../src/core/datatypes/forte_byte.h"
+#include "../../../src/core/datatypes/forte_word.h"
+#include "../../../src/core/datatypes/forte_dword.h"
+#ifdef FORTE_USE_64BIT_DATATYPES
+  #include "../../../src/core/datatypes/forte_lword.h"
+#endif //#ifdef FORTE_USE_64BIT_DATATYPES
+
+#include "CIEC_PARTIAL_test.h"
+
+using namespace boost::unit_test;
+
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL)
+
+#ifdef FORTE_USE_64BIT_DATATYPES
+
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL_LWORD)
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_INITVALUES_CHECK_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  test4X_0(nTestLWord, 60);
+  test4X_0(nTestLWord, 56);
+  test4X_0(nTestLWord, 52);
+  test4X_0(nTestLWord, 48);
+
+  test4X_0(nTestLWord, 44);
+  test4X_0(nTestLWord, 40);
+  test4X_0(nTestLWord, 36);
+  test4X_0(nTestLWord, 32);
+
+  test4X_0(nTestLWord, 28);
+  test4X_0(nTestLWord, 24);
+  test4X_0(nTestLWord, 20);
+  test4X_0(nTestLWord, 16);
+
+  test4X_0(nTestLWord, 12);
+  test4X_0(nTestLWord, 8);
+  test4X_0(nTestLWord, 4);
+  test4X_0(nTestLWord, 0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_INITVALUES_CHECK_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,0>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,1>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,2>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,3>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,4>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,5>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,6>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,7>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_INITVALUES_CHECK_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,0>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,1>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,2>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,3>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_INITVALUES_CHECK_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>()),0);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_CONST_INIT)
+{
+  const CIEC_DWORD nTestDword(0x42);
+  CIEC_LWORD mTestLword;
+
+  mTestLword.partial<CIEC_DWORD,0>() = nTestDword;
+
+  BOOST_CHECK_EQUAL(mTestLword, 0x42);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_VALUE_CHECK_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord=0xDEADBEEFCAFEBABEU;
+
+  test4X_D(nTestLWord, 60)
+  test4X_E(nTestLWord, 56)
+  test4X_A(nTestLWord, 52)
+  test4X_D(nTestLWord, 48)
+
+  test4X_B(nTestLWord, 44)
+  test4X_E(nTestLWord, 40)
+  test4X_E(nTestLWord, 36)
+  test4X_F(nTestLWord, 32)
+
+  test4X_C(nTestLWord, 28)
+  test4X_A(nTestLWord, 24)
+  test4X_F(nTestLWord, 20)
+  test4X_E(nTestLWord, 16)
+
+  test4X_B(nTestLWord, 12)
+  test4X_A(nTestLWord, 8)
+  test4X_B(nTestLWord, 4)
+  test4X_E(nTestLWord, 0)
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_VALUE_CHECK_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord=0xDEADBEEFCAFEBABEU;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,0>()), 0xBE);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,1>()), 0xBA);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,2>()), 0xFE);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,3>()), 0xCA);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,4>()), 0xEF);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,5>()), 0xBE);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,6>()), 0xAD);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,7>()), 0xDE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_VALUE_CHECK_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord=0xDEADBEEFCAFEBABEU;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,0>()), 0xBABE);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,1>()), 0xCAFE);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,2>()), 0xBEEF);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,3>()), 0xDEAD);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_VALUE_CHECK_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord=0xDEADBEEFCAFEBABEU;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>()), 0xCAFEBABEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>()), 0xDEADBEEFU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BIT_CHECK_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  set4X_B(nTestLWord,60);
+  set4X_A(nTestLWord,56);
+  set4X_D(nTestLWord,52);
+  set4X_C(nTestLWord,48);
+  set4X_A(nTestLWord,44);
+  set4X_B(nTestLWord,40);
+  set4X_1(nTestLWord,36);
+  set4X_E(nTestLWord,32);
+  set4X_B(nTestLWord,28);
+  set4X_A(nTestLWord,24);
+  set4X_A(nTestLWord,20);
+  set4X_D(nTestLWord,16);
+  set4X_F(nTestLWord,12);
+  set4X_0(nTestLWord,8);
+  set4X_0(nTestLWord,4);
+  set4X_D(nTestLWord,0);
+
+  test4X_B(nTestLWord,60);
+  test4X_A(nTestLWord,56);
+  test4X_D(nTestLWord,52);
+  test4X_C(nTestLWord,48);
+  test4X_A(nTestLWord,44);
+  test4X_B(nTestLWord,40);
+  test4X_1(nTestLWord,36);
+  test4X_E(nTestLWord,32);
+  test4X_B(nTestLWord,28);
+  test4X_A(nTestLWord,24);
+  test4X_A(nTestLWord,20);
+  test4X_D(nTestLWord,16);
+  test4X_F(nTestLWord,12);
+  test4X_0(nTestLWord,8);
+  test4X_0(nTestLWord,4);
+  test4X_D(nTestLWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BIT_CHECK_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  set4X_B(nTestLWord,60);
+  set4X_A(nTestLWord,56);
+  set4X_D(nTestLWord,52);
+  set4X_C(nTestLWord,48);
+  set4X_A(nTestLWord,44);
+  set4X_B(nTestLWord,40);
+  set4X_1(nTestLWord,36);
+  set4X_E(nTestLWord,32);
+  set4X_B(nTestLWord,28);
+  set4X_A(nTestLWord,24);
+  set4X_A(nTestLWord,20);
+  set4X_D(nTestLWord,16);
+  set4X_F(nTestLWord,12);
+  set4X_0(nTestLWord,8);
+  set4X_0(nTestLWord,4);
+  set4X_D(nTestLWord,0);
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,7>()), 0xBAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,6>()), 0xDCU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,5>()), 0xABU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,4>()), 0x1EU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,3>()), 0xBAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,2>()), 0xADU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,1>()), 0xF0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,0>()), 0x0DU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BIT_CHECK_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  set4X_B(nTestLWord,60);
+  set4X_A(nTestLWord,56);
+  set4X_D(nTestLWord,52);
+  set4X_C(nTestLWord,48);
+  set4X_A(nTestLWord,44);
+  set4X_B(nTestLWord,40);
+  set4X_1(nTestLWord,36);
+  set4X_E(nTestLWord,32);
+  set4X_B(nTestLWord,28);
+  set4X_A(nTestLWord,24);
+  set4X_A(nTestLWord,20);
+  set4X_D(nTestLWord,16);
+  set4X_F(nTestLWord,12);
+  set4X_0(nTestLWord,8);
+  set4X_0(nTestLWord,4);
+  set4X_D(nTestLWord,0);
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,3>()), 0xBADCU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,2>()), 0xAB1EU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,1>()), 0xBAADU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,0>()), 0xF00DU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BIT_CHECK_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  set4X_B(nTestLWord,60);
+  set4X_A(nTestLWord,56);
+  set4X_D(nTestLWord,52);
+  set4X_C(nTestLWord,48);
+  set4X_A(nTestLWord,44);
+  set4X_B(nTestLWord,40);
+  set4X_1(nTestLWord,36);
+  set4X_E(nTestLWord,32);
+  set4X_B(nTestLWord,28);
+  set4X_A(nTestLWord,24);
+  set4X_A(nTestLWord,20);
+  set4X_D(nTestLWord,16);
+  set4X_F(nTestLWord,12);
+  set4X_0(nTestLWord,8);
+  set4X_0(nTestLWord,4);
+  set4X_D(nTestLWord,0);
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>()), 0xBADCAB1EU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>()), 0xBAADF00DU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BIT_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  set4X_B(nTestLWord,60);
+  set4X_A(nTestLWord,56);
+  set4X_D(nTestLWord,52);
+  set4X_C(nTestLWord,48);
+  set4X_A(nTestLWord,44);
+  set4X_B(nTestLWord,40);
+  set4X_1(nTestLWord,36);
+  set4X_E(nTestLWord,32);
+  set4X_B(nTestLWord,28);
+  set4X_A(nTestLWord,24);
+  set4X_A(nTestLWord,20);
+  set4X_D(nTestLWord,16);
+  set4X_F(nTestLWord,12);
+  set4X_0(nTestLWord,8);
+  set4X_0(nTestLWord,4);
+  set4X_D(nTestLWord,0);
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0xBADCAB1EBAADF00DU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BYTE_CHECK_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_BYTE,7>() = 0xDE;
+  nTestLWord.partial<CIEC_BYTE,6>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,5>() = 0xFB;
+  nTestLWord.partial<CIEC_BYTE,4>() = 0xAD;
+  nTestLWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestLWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestLWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  test4X_D(nTestLWord,60);
+  test4X_E(nTestLWord,56);
+  test4X_C(nTestLWord,52);
+  test4X_A(nTestLWord,48);
+  test4X_F(nTestLWord,44);
+  test4X_B(nTestLWord,40);
+  test4X_A(nTestLWord,36);
+  test4X_D(nTestLWord,32);
+  test4X_B(nTestLWord,28);
+  test4X_A(nTestLWord,24);
+  test4X_D(nTestLWord,20);
+  test4X_0(nTestLWord,16);
+  test4X_C(nTestLWord,12);
+  test4X_A(nTestLWord,8);
+  test4X_F(nTestLWord,4);
+  test4X_E(nTestLWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BYTE_CHECK_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_BYTE,7>() = 0xDE;
+  nTestLWord.partial<CIEC_BYTE,6>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,5>() = 0xFB;
+  nTestLWord.partial<CIEC_BYTE,4>() = 0xAD;
+  nTestLWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestLWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestLWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,7>()), 0xDEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,6>()), 0xCAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,5>()), 0xFBU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,4>()), 0xADU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,3>()), 0xBAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,2>()), 0xD0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,1>()), 0xCAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,0>()), 0xFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BYTE_CHECK_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_BYTE,7>() = 0xDE;
+  nTestLWord.partial<CIEC_BYTE,6>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,5>() = 0xFB;
+  nTestLWord.partial<CIEC_BYTE,4>() = 0xAD;
+  nTestLWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestLWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestLWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,3>()), 0xDECAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,2>()), 0xFBADU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,1>()), 0xBAD0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,0>()), 0xCAFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BYTE_CHECK_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_BYTE,7>() = 0xDE;
+  nTestLWord.partial<CIEC_BYTE,6>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,5>() = 0xFB;
+  nTestLWord.partial<CIEC_BYTE,4>() = 0xAD;
+  nTestLWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestLWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestLWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>()), 0xDECAFBADU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>()), 0xBAD0CAFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_BYTE_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_BYTE,7>() = 0xDE;
+  nTestLWord.partial<CIEC_BYTE,6>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,5>() = 0xFB;
+  nTestLWord.partial<CIEC_BYTE,4>() = 0xAD;
+  nTestLWord.partial<CIEC_BYTE,3>() = 0xBA;
+  nTestLWord.partial<CIEC_BYTE,2>() = 0xD0;
+  nTestLWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestLWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0xDECAFBADBAD0CAFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_WORD_CHECK_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_WORD,3>() = 0x00FE;
+  nTestLWord.partial<CIEC_WORD,2>() = 0xEDFA;
+  nTestLWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestLWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  test4X_0(nTestLWord,60);
+  test4X_0(nTestLWord,56);
+  test4X_F(nTestLWord,52);
+  test4X_E(nTestLWord,48);
+  test4X_E(nTestLWord,44);
+  test4X_D(nTestLWord,40);
+  test4X_F(nTestLWord,36);
+  test4X_A(nTestLWord,32);
+  test4X_C(nTestLWord,28);
+  test4X_E(nTestLWord,24);
+  test4X_C(nTestLWord,20);
+  test4X_0(nTestLWord,16);
+  test4X_F(nTestLWord,12);
+  test4X_F(nTestLWord,8);
+  test4X_E(nTestLWord,4);
+  test4X_E(nTestLWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_WORD_CHECK_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_WORD,3>() = 0x00FE;
+  nTestLWord.partial<CIEC_WORD,2>() = 0xEDFA;
+  nTestLWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestLWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,7>()), 0x00U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,6>()), 0xFEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,5>()), 0xEDU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,4>()), 0xFAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,3>()), 0xCEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,2>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,0>()), 0xEEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_WORD_CHECK_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_WORD,3>() = 0x00FE;
+  nTestLWord.partial<CIEC_WORD,2>() = 0xEDFA;
+  nTestLWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestLWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,3>()), 0x00FEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,2>()), 0xEDFAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,1>()), 0xCEC0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,0>()), 0xFFEEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_WORD_CHECK_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_WORD,3>() = 0x00FE;
+  nTestLWord.partial<CIEC_WORD,2>() = 0xEDFA;
+  nTestLWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestLWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>()), 0x00FEEDFAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>()), 0xCEC0FFEEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_WORD_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_WORD,3>() = 0x00FE;
+  nTestLWord.partial<CIEC_WORD,2>() = 0xEDFA;
+  nTestLWord.partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestLWord.partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0x00FEEDFACEC0FFEEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_DWORD_CHECK_BIT)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_DWORD,0>() = 0xADD511FE;
+  nTestLWord.partial<CIEC_DWORD,1>() = 0xC0CAC01A;
+
+  test4X_C(nTestLWord,60);
+  test4X_0(nTestLWord,56);
+  test4X_C(nTestLWord,52);
+  test4X_A(nTestLWord,48);
+  test4X_C(nTestLWord,44);
+  test4X_0(nTestLWord,40);
+  test4X_1(nTestLWord,36);
+  test4X_A(nTestLWord,32);
+  test4X_A(nTestLWord,28);
+  test4X_D(nTestLWord,24);
+  test4X_D(nTestLWord,20);
+  test4X_5(nTestLWord,16);
+  test4X_1(nTestLWord,12);
+  test4X_1(nTestLWord,8);
+  test4X_F(nTestLWord,4);
+  test4X_E(nTestLWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_DWORD_CHECK_BYTE)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_DWORD,0>() = 0xADD511FE;
+  nTestLWord.partial<CIEC_DWORD,1>() = 0xC0CAC01A;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,7>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,6>()), 0xCAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,5>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,4>()), 0x1AU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,3>()), 0xADU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,2>()), 0xD5U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,1>()), 0x11U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_BYTE,0>()), 0xFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_DWORD_CHECK_WORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_DWORD,0>() = 0xADD511FE;
+  nTestLWord.partial<CIEC_DWORD,1>() = 0xC0CAC01A;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,3>()), 0xC0CAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,2>()), 0xC01AU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,1>()), 0xADD5U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_WORD,0>()), 0x11FEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_DWORD_CHECK_DWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_DWORD,0>() = 0xADD511FE;
+  nTestLWord.partial<CIEC_DWORD,1>() = 0xC0CAC01A;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>()), 0xC0CAC01AU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>()), 0xADD511FEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_DWORD_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_DWORD,0>() = 0xADD511FE;
+  nTestLWord.partial<CIEC_DWORD,1>() = 0xC0CAC01A;
+
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0xC0CAC01AADD511FEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_SETVALUE_DWORD_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+  CIEC_DWORD nTestDWord;
+
+  nTestDWord = 0xADD511FE;
+  nTestLWord.partial<CIEC_DWORD,0>().setValue(nTestDWord);
+
+  nTestDWord = 0xC0CAC01A;
+  nTestLWord.partial<CIEC_DWORD,1>().setValue(nTestDWord);
+
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0xC0CAC01AADD511FEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_SETVALUE_WORD_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+  CIEC_DWORD nTestWord;
+
+  nTestWord = 0x11FE;
+  nTestLWord.partial<CIEC_WORD,0>().setValue(nTestWord);
+
+  nTestWord = 0xADD5;
+  nTestLWord.partial<CIEC_WORD,1>().setValue(nTestWord);
+
+  nTestWord = 0xC01A;
+  nTestLWord.partial<CIEC_WORD,2>().setValue(nTestWord);
+
+  nTestWord = 0xC0CA;
+  nTestLWord.partial<CIEC_WORD,3>().setValue(nTestWord);
+
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0xC0CAC01AADD511FEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHAIN_DWORD_BYTE_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,3>() = 0xDE;
+  nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,2>() = 0xCA;
+  nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,1>() = 0xFB;
+  nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,0>() = 0xAD;
+  nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,3>() = 0xBA;
+  nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,2>() = 0xD0;
+  nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,1>() = 0xCA;
+  nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0xDECAFBADBAD0CAFEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHAIN_DWORD_WORD_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>() = 0x00FE;
+  nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>() = 0xEDFA;
+  nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>() = 0xCEC0;
+  nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>() = 0xFFEE;
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0x00FEEDFACEC0FFEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHAIN_DWORD_WORD_BIT_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  set4X_C((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),12);
+  set4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),8);
+  set4X_C((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),4);
+  set4X_A((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),0);
+  set4X_C((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),12);
+  set4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),8);
+  set4X_1((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),4);
+  set4X_A((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),0);
+  set4X_A((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),12);
+  set4X_D((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),8);
+  set4X_D((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),4);
+  set4X_5((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),0);
+  set4X_1((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),12);
+  set4X_1((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),8);
+  set4X_F((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),4);
+  set4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),0);
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0xC0CAC01AADD511FEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHAIN_DWORD_WORD_BYTE_BIT_CHECK_LWORD)
+{
+  CIEC_LWORD nTestLWord;
+
+  set4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_F((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_E((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_D((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_F((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_A((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+  set4X_C((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  set4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  set4X_C((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  set4X_0((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  set4X_F((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  set4X_F((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  set4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  set4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+  BOOST_CHECK_EQUAL(nTestLWord, 0x00FEEDFACEC0FFEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHECK_CHAIN_LWORD_DWORD_WORD)
+{
+
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x00FEEDFACEC0FFEEU;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()), 0x00FEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()), 0xEDFAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()), 0xCEC0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()), 0xFFEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHECK_CHAIN_LWORD_DWORD_BYTE)
+{
+
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x00FEEDFACEC0FFEEU;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,3>()), 0x00U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,2>()), 0xFEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,1>()), 0xEDU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,0>()), 0xFAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,3>()), 0xCEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,2>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,0>()), 0xEEU);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHECK_CHAIN_LWORD_DWORD_BIT)
+{
+
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x00FEEDFACEC0FFEEU;
+
+  test4X_0((nTestLWord.partial<CIEC_DWORD,1>()),28);
+  test4X_0((nTestLWord.partial<CIEC_DWORD,1>()),24);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,1>()),20);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,1>()),16);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,1>()),12);
+  test4X_D((nTestLWord.partial<CIEC_DWORD,1>()),8);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,1>()),4);
+  test4X_A((nTestLWord.partial<CIEC_DWORD,1>()),0);
+  test4X_C((nTestLWord.partial<CIEC_DWORD,0>()),28);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>()),24);
+  test4X_C((nTestLWord.partial<CIEC_DWORD,0>()),20);
+  test4X_0((nTestLWord.partial<CIEC_DWORD,0>()),16);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,0>()),12);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,0>()),8);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>()),4);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHECK_CHAIN_LWORD_DWORD_WORD_BIT)
+{
+
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x00FEEDFACEC0FFEEU;
+
+  test4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),12);
+  test4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),8);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),4);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>()),0);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),12);
+  test4X_D((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),8);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),4);
+  test4X_A((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>()),0);
+  test4X_C((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),12);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),8);
+  test4X_C((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),4);
+  test4X_0((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>()),0);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),12);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),8);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),4);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHECK_CHAIN_LWORD_DWORD_WORD_BYTE_BIT)
+{
+
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x00FEEDFACEC0FFEEU;
+
+  test4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  test4X_0((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  test4X_D((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  test4X_A((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+  test4X_C((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),4);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,1>()),0);
+  test4X_C((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),4);
+  test4X_0((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,1>().partial<CIEC_BYTE,0>()),0);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),4);
+  test4X_F((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,1>()),0);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),4);
+  test4X_E((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_WORD,0>().partial<CIEC_BYTE,0>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_LWORD_ASSIGN_CHECK_CHAIN_LWORD_DWORD_BYTE_BIT)
+{
+
+  CIEC_LWORD nTestLWord;
+
+  nTestLWord = 0x00FEEDFACEC0FFEEU;
+
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,3>()), 0x00U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,2>()), 0xFEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,1>()), 0xEDU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,1>().partial<CIEC_BYTE,0>()), 0xFAU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,3>()), 0xCEU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,2>()), 0xC0U);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestLWord.partial<CIEC_DWORD,0>().partial<CIEC_BYTE,0>()), 0xEEU);
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+
+#endif //#ifdef FORTE_USE_64BIT_DATATYPES
+
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/CIEC_PARTIAL/CIEC_PARTIAL_test.h b/tests/core/datatypes/CIEC_PARTIAL/CIEC_PARTIAL_test.h
new file mode 100644
index 0000000..7a2f03f
--- /dev/null
+++ b/tests/core/datatypes/CIEC_PARTIAL/CIEC_PARTIAL_test.h
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - Adds partial access tests
+ *******************************************************************************/
+
+#ifndef CIEC_ANY_BIT_PARTIAL_TEST
+#define CIEC_ANY_BIT_PARTIAL_TEST
+
+#define test4X(var, offset, b3, b2, b1, b0) \
+  BOOST_CHECK_EQUAL((var.partial<CIEC_BOOL,0+offset>()),b0);\
+  BOOST_CHECK_EQUAL((var.partial<CIEC_BOOL,1+offset>()),b1);\
+  BOOST_CHECK_EQUAL((var.partial<CIEC_BOOL,2+offset>()),b2);\
+  BOOST_CHECK_EQUAL((var.partial<CIEC_BOOL,3+offset>()),b3);
+
+#define test4X_0(var, offset) test4X(var, offset, 0, 0, 0, 0)
+#define test4X_1(var, offset) test4X(var, offset, 0, 0, 0, 1)
+#define test4X_2(var, offset) test4X(var, offset, 0, 0, 1, 0)
+#define test4X_3(var, offset) test4X(var, offset, 0, 0, 1, 1)
+#define test4X_4(var, offset) test4X(var, offset, 0, 1, 0, 0)
+#define test4X_5(var, offset) test4X(var, offset, 0, 1, 0, 1)
+#define test4X_6(var, offset) test4X(var, offset, 0, 1, 1, 0)
+#define test4X_7(var, offset) test4X(var, offset, 0, 1, 1, 1)
+#define test4X_8(var, offset) test4X(var, offset, 1, 0, 0, 0)
+#define test4X_9(var, offset) test4X(var, offset, 1, 0, 0, 1)
+#define test4X_A(var, offset) test4X(var, offset, 1, 0, 1, 0)
+#define test4X_B(var, offset) test4X(var, offset, 1, 0, 1, 1)
+#define test4X_C(var, offset) test4X(var, offset, 1, 1, 0, 0)
+#define test4X_D(var, offset) test4X(var, offset, 1, 1, 0, 1)
+#define test4X_E(var, offset) test4X(var, offset, 1, 1, 1, 0)
+#define test4X_F(var, offset) test4X(var, offset, 1, 1, 1, 1)
+
+
+#define set4X(var, offset, b3, b2, b1, b0) \
+  var.partial<CIEC_BOOL,0+offset>()=b0;\
+  var.partial<CIEC_BOOL,1+offset>()=b1;\
+  var.partial<CIEC_BOOL,2+offset>()=b2;\
+  var.partial<CIEC_BOOL,3+offset>()=b3;
+
+#define set4X_0(var, offset) set4X(var, offset, 0, 0, 0, 0)
+#define set4X_1(var, offset) set4X(var, offset, 0, 0, 0, 1)
+#define set4X_2(var, offset) set4X(var, offset, 0, 0, 1, 0)
+#define set4X_3(var, offset) set4X(var, offset, 0, 0, 1, 1)
+#define set4X_4(var, offset) set4X(var, offset, 0, 1, 0, 0)
+#define set4X_5(var, offset) set4X(var, offset, 0, 1, 0, 1)
+#define set4X_6(var, offset) set4X(var, offset, 0, 1, 1, 0)
+#define set4X_7(var, offset) set4X(var, offset, 0, 1, 1, 1)
+#define set4X_8(var, offset) set4X(var, offset, 1, 0, 0, 0)
+#define set4X_9(var, offset) set4X(var, offset, 1, 0, 0, 1)
+#define set4X_A(var, offset) set4X(var, offset, 1, 0, 1, 0)
+#define set4X_B(var, offset) set4X(var, offset, 1, 0, 1, 1)
+#define set4X_C(var, offset) set4X(var, offset, 1, 1, 0, 0)
+#define set4X_D(var, offset) set4X(var, offset, 1, 1, 0, 1)
+#define set4X_E(var, offset) set4X(var, offset, 1, 1, 1, 0)
+#define set4X_F(var, offset) set4X(var, offset, 1, 1, 1, 1)
+
+#endif
diff --git a/tests/core/datatypes/CIEC_PARTIAL/CIEC_WORD_PARTIAL_test.cpp b/tests/core/datatypes/CIEC_PARTIAL/CIEC_WORD_PARTIAL_test.cpp
new file mode 100644
index 0000000..f191ad0
--- /dev/null
+++ b/tests/core/datatypes/CIEC_PARTIAL/CIEC_WORD_PARTIAL_test.cpp
@@ -0,0 +1,258 @@
+/*******************************************************************************
+ * Copyright (c) 2011 - 2012 ACIN, nxtControl, 2018 TU Vienna/ACIN
+ *               2020 Johannes Kepler University Linz
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License 2.0 which is available at
+ * http://www.eclipse.org/legal/epl-2.0.
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *   Martin Melik Merkumians, Ingo Hegny, Alois Zoitl, Stanislav Meduna - initial API and implementation and/or initial documentation
+ *   Ernst Blecha - Adds partial access tests
+ *******************************************************************************/
+
+#include <boost/test/unit_test.hpp>
+
+/*#ifdef FORTE_USE_REAL_DATATYPE
+  #include <boost/test/floating_point_comparison.hpp>
+
+  #include "../../../src/core/datatypes/forte_real.h"
+#endif //FORTE_USE_REAL_DATATYPE*/
+
+//BOOLEAN
+#include "../../../src/core/datatypes/forte_bool.h"
+//BIT-Datatypes
+#include "../../../src/core/datatypes/forte_byte.h"
+#include "../../../src/core/datatypes/forte_word.h"
+
+#include "CIEC_PARTIAL_test.h"
+
+using namespace boost::unit_test;
+
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL)
+BOOST_AUTO_TEST_SUITE(CIEC_ANY_BIT_PARTIAL_WORD)
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_INITVALUES_CHECK_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  test4X_0(nTestWord, 12)
+  test4X_0(nTestWord, 8)
+  test4X_0(nTestWord, 4)
+  test4X_0(nTestWord, 0)
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_INITVALUES_CHECK_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,0>()),0);
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,1>()),0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_CONST_INIT)
+{
+  const CIEC_BYTE nTestByte(0x42);
+  CIEC_WORD mTestWord;
+
+  mTestWord.partial<CIEC_BYTE,0>() = nTestByte;
+
+  BOOST_CHECK_EQUAL(mTestWord, 0x42);
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_VALUE_CHECK_WORD)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord=0xBABE;
+
+  BOOST_CHECK_EQUAL(nTestWord, 0xBABE);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_VALUE_CHECK_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord=0xBABE;
+
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,0>()), 0xBE);
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,1>()), 0xBA);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_VALUE_CHECK_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord=0xBABE;
+
+  test4X_B(nTestWord, 12)
+  test4X_A(nTestWord, 8)
+  test4X_B(nTestWord, 4)
+  test4X_E(nTestWord, 0)
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_BIT_CHECK_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  set4X_F(nTestWord,12);
+  set4X_0(nTestWord,8);
+  set4X_0(nTestWord,4);
+  set4X_D(nTestWord,0);
+
+  test4X_F(nTestWord,12);
+  test4X_0(nTestWord,8);
+  test4X_0(nTestWord,4);
+  test4X_D(nTestWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_BIT_CHECK_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  set4X_F(nTestWord,12);
+  set4X_0(nTestWord,8);
+  set4X_0(nTestWord,4);
+  set4X_D(nTestWord,0);
+
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,1>()), 0xF0U);
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,0>()), 0x0DU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_BIT_CHECK_WORD)
+{
+  CIEC_WORD nTestWord;
+
+  set4X_F(nTestWord,12);
+  set4X_0(nTestWord,8);
+  set4X_0(nTestWord,4);
+  set4X_D(nTestWord,0);
+
+  BOOST_CHECK_EQUAL(nTestWord, 0xF00DU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_BYTE_CHECK_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  test4X_C(nTestWord,12);
+  test4X_A(nTestWord,8);
+  test4X_F(nTestWord,4);
+  test4X_E(nTestWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_BYTE_CHECK_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,1>()), 0xCAU);
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,0>()), 0xFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_BYTE_CHECK_WORD)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord.partial<CIEC_BYTE,1>() = 0xCA;
+  nTestWord.partial<CIEC_BYTE,0>() = 0xFE;
+
+  BOOST_CHECK_EQUAL(nTestWord, 0xCAFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_WORD_CHECK_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xFFEE;
+
+  test4X_F(nTestWord,12);
+  test4X_F(nTestWord,8);
+  test4X_E(nTestWord,4);
+  test4X_E(nTestWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_WORD_CHECK_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xFFEE;
+
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,1>()), 0xFFU);
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,0>()), 0xEEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_WORD_CHECK_WORD)
+{
+  CIEC_WORD nTestWord;
+
+  nTestWord = 0xFFEE;
+
+  BOOST_CHECK_EQUAL(nTestWord, 0xFFEEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_CHAIN_BYTE_BIT_CHECK_BIT)
+{
+  CIEC_WORD nTestWord;
+
+  set4X_1(nTestWord,12);
+  set4X_1(nTestWord,8);
+  set4X_F(nTestWord,4);
+  set4X_E(nTestWord,0);
+
+  test4X_1(nTestWord,12);
+  test4X_1(nTestWord,8);
+  test4X_F(nTestWord,4);
+  test4X_E(nTestWord,0);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_CHAIN_BYTE_BIT_CHECK_BYTE)
+{
+  CIEC_WORD nTestWord;
+
+  set4X_1(nTestWord,12);
+  set4X_1(nTestWord,8);
+  set4X_F(nTestWord,4);
+  set4X_E(nTestWord,0);
+
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,1>()), 0x11U);
+  BOOST_CHECK_EQUAL((nTestWord.partial<CIEC_BYTE,0>()), 0xFEU);
+
+}
+
+BOOST_AUTO_TEST_CASE(PARTIAL_ACCESS_WORD_ASSIGN_CHAIN_BYTE_BIT_CHECK_WORD)
+{
+  CIEC_WORD nTestWord;
+
+  set4X_1(nTestWord,12);
+  set4X_1(nTestWord,8);
+  set4X_F(nTestWord,4);
+  set4X_E(nTestWord,0);
+
+  BOOST_CHECK_EQUAL(nTestWord, 0x11FEU);
+
+}
+
+BOOST_AUTO_TEST_SUITE_END()
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/tests/core/datatypes/CIEC_PARTIAL/CMakeLists.txt b/tests/core/datatypes/CIEC_PARTIAL/CMakeLists.txt
new file mode 100644
index 0000000..bf48293
--- /dev/null
+++ b/tests/core/datatypes/CIEC_PARTIAL/CMakeLists.txt
@@ -0,0 +1,26 @@
+#*******************************************************************************
+# Copyright (c) 2011 - 2014 nxtControl, ACIN, fortiss GmbH, Profactor GmbH
+#               2020 Johannes Kepler University Linz
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License 2.0 which is available at
+# http://www.eclipse.org/legal/epl-2.0.
+#
+# SPDX-License-Identifier: EPL-2.0
+# 
+# Contributors:
+#    Stanislav Meduna, Ingo Hegny, Alois Zoitl, Monika Wenger, Matthias Plasch  - initial API and implementation and/or initial documentation
+#    Ernst Blecha - add multibit partial access
+# *******************************************************************************/
+
+#SET(SOURCE_GROUP ${SOURCE_GROUP}\\core)
+
+  forte_test_add_inc_directories(${CMAKE_CURRENT_SOURCE_DIR})
+  
+#BIT-Datatypes  
+  forte_test_add_sourcefile_cpp(CIEC_BYTE_PARTIAL_test.cpp)
+  forte_test_add_sourcefile_cpp(CIEC_WORD_PARTIAL_test.cpp)
+  forte_test_add_sourcefile_cpp(CIEC_DWORD_PARTIAL_test.cpp)
+IF (FORTE_USE_64BIT_DATATYPES)
+  forte_test_add_sourcefile_cpp(CIEC_LWORD_PARTIAL_test.cpp)
+ENDIF (FORTE_USE_64BIT_DATATYPES) 
+
diff --git a/tests/core/datatypes/CMakeLists.txt b/tests/core/datatypes/CMakeLists.txt
index 45e3f77..20a2c45 100644
--- a/tests/core/datatypes/CMakeLists.txt
+++ b/tests/core/datatypes/CMakeLists.txt
@@ -1,5 +1,6 @@
 #*******************************************************************************
 # Copyright (c) 2011 - 2014 nxtControl, ACIN, fortiss GmbH, Profactor GmbH
+#               2020 Johannes Kepler University Linz
 # This program and the accompanying materials are made available under the
 # terms of the Eclipse Public License 2.0 which is available at
 # http://www.eclipse.org/legal/epl-2.0.
@@ -8,6 +9,7 @@
 # 
 # Contributors:
 #    Stanislav Meduna, Ingo Hegny, Alois Zoitl, Monika Wenger, Matthias Plasch  - initial API and implementation and/or initial documentation
+#    Ernst Blecha - add multibit partial access, add at-variable tests
 # *******************************************************************************/
 
 #SET(SOURCE_GROUP ${SOURCE_GROUP}\\core)
@@ -35,6 +37,8 @@
   forte_test_add_sourcefile_cpp(CIEC_LWORD_test.cpp)
   forte_test_add_sourcefile_cpp(CIEC_LWORD_CASTS_test.cpp)
 ENDIF (FORTE_USE_64BIT_DATATYPES) 
+  forte_test_add_subdirectory(CIEC_PARTIAL)
+  forte_test_add_subdirectory(AT_VARIABLE)
   
 #INT-Datatypes
   forte_test_add_sourcefile_cpp(CIEC_SINT_test.cpp)
@@ -82,4 +86,4 @@
   
   forte_test_add_sourcefile_cpp(CIEC_STRUCT_test.cpp)
  
- forte_test_add_subdirectory(convert)
\ No newline at end of file
+ forte_test_add_subdirectory(convert)
diff --git a/tests/core/utils/string_utils_test.cpp b/tests/core/utils/string_utils_test.cpp
index a5016b7..2a80001 100644
--- a/tests/core/utils/string_utils_test.cpp
+++ b/tests/core/utils/string_utils_test.cpp
@@ -448,7 +448,7 @@
 
     BOOST_AUTO_TEST_CASE(getExtraSizeForEscapedChars){
       for(size_t i = 0; i < sizeof(sNonEscapedData) / sizeof(const char*); i++){
-        BOOST_CHECK_EQUAL(forte::core::util::getExtraSizeForEscapedChars(sNonEscapedData[i]), sExtraSize[i]);
+        BOOST_CHECK_EQUAL(forte::core::util::getExtraSizeForXMLEscapedChars(sNonEscapedData[i]), sExtraSize[i]);
       }
     }