tpd fix, demo removed

Signed-off-by: Eszter Susanszky <eszter.susanszky@ericsson.com>
diff --git a/EPTF_Applib_MBT_CNL113659.tpd b/EPTF_Applib_MBT_CNL113659.tpd
new file mode 100644
index 0000000..1958433
--- /dev/null
+++ b/EPTF_Applib_MBT_CNL113659.tpd
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TITAN_Project_File_Information version="1.0">
+<!--
+Copyright (c) 2000-2017 Ericsson Telecom AB
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+    File:               EPTF_Applib_MBT_CNL113659.tpd
+    Description:        tpd project file
+    Rev:                R2A01
+    Prodnr:             CNL 113 659
+    Updated:            2018-02-26
+    Contact:            http://ttcn.ericsson.se
+-->
+  <ProjectName>EPTF_Applib_MBT_CNL113659</ProjectName>
+  <ReferencedProjects>
+    <ReferencedProject name="EPTF_CLL_Base" projectLocationURI="../EPTF_Core_Library_CNL113512/src/Base/EPTF_CLL_Base.tpd"/>
+    <ReferencedProject name="EPTF_CLL_Common" projectLocationURI="../EPTF_Core_Library_CNL113512/src/Common/EPTF_CLL_Common.tpd"/>
+    <ReferencedProject name="EPTF_CLL_LGenBase" projectLocationURI="../EPTF_Core_Library_CNL113512/src/LGenBase/EPTF_CLL_LGenBase.tpd"/>
+    <ReferencedProject name="EPTF_CLL_Logging" projectLocationURI="../EPTF_Core_Library_CNL113512/src/Logging/EPTF_CLL_Logging.tpd"/>
+    <ReferencedProject name="EPTF_CLL_RedBlackTree" projectLocationURI="../EPTF_Core_Library_CNL113512/src/RedBlackTree/EPTF_CLL_RedBlackTree.tpd"/>
+    <ReferencedProject name="EPTF_CLL_Scheduler" projectLocationURI="../EPTF_Core_Library_CNL113512/src/Scheduler/EPTF_CLL_Scheduler.tpd"/>
+    <ReferencedProject name="EPTF_CLL_Semaphore" projectLocationURI="../EPTF_Core_Library_CNL113512/src/Semaphore/EPTF_CLL_Semaphore.tpd"/>
+    <ReferencedProject name="EPTF_CLL_Variable" projectLocationURI="../EPTF_Core_Library_CNL113512/src/Variable/EPTF_CLL_Variable.tpd"/>
+  </ReferencedProjects>
+  <Files>
+    <FileResource projectRelativePath="EPTF_MBT_LGen_Definitions.ttcn" relativeURI="src/LoadGen/EPTF_MBT_LGen_Definitions.ttcn"/>
+    <FileResource projectRelativePath="EPTF_MBT_LGen_Functions.ttcn" relativeURI="src/LoadGen/EPTF_MBT_LGen_Functions.ttcn"/>
+  </Files>
+  <ActiveConfiguration>Default</ActiveConfiguration>
+  <Configurations>
+    <Configuration name="Default">
+      <ProjectProperties>
+        <MakefileSettings>          
+          <generateInternalMakefile>true</generateInternalMakefile>
+          <GNUMake>true</GNUMake>
+          <incrementalDependencyRefresh>true</incrementalDependencyRefresh>
+          <targetExecutable>bin/MBT_CNL113659</targetExecutable>
+          <buildLevel>Level3-Creatingobjectfileswithdependencyupdate</buildLevel>
+        </MakefileSettings>
+        <LocalBuildSettings>
+          <workingDirectory>bin</workingDirectory>
+        </LocalBuildSettings>
+      </ProjectProperties>
+    </Configuration>
+  </Configurations>
+</TITAN_Project_File_Information>
diff --git a/demo/MBT_demo.cfg b/demo/MBT_demo.cfg
deleted file mode 100755
index 4775520..0000000
--- a/demo/MBT_demo.cfg
+++ /dev/null
@@ -1,55 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2009                           //
-//                                                                           //
-// The copyright to the computer  program(s) herein  is the property of TCC. //
-// The program(s) may be used and/or copied only with the written permission //
-// of TCC or in accordance with  the terms and conditions  stipulated in the //
-// agreement/contract under which the program(s) have been supplied          //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     SIP_Demo.cfg
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 659
-//  Updated:  2009-04-20
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-[DEFINE]
-//num_entities := 1
-//Number of simulated entities
-
-[LOGGING]
-ConsoleMask := ERROR | STATISTICS | ACTION
-FileMask := LOG_ALL | DEBUG | MATCHING
-#FileMask := ERROR | STATISTICS | PARALLEL | ACTION | WARNING
-#LogFile := "%l/%e.%h-%t%r.%s"
-LogEntityName := Yes
-LogEventTypes := Yes//Subcategories;
-SourceInfoFormat := Stack
-
-[TESTPORT_PARAMETERS]
-//*.*.debug := "YES";
-
-[MODULE_PARAMETERS]
-
-tsp_debug_EPTF_SchedulerFunctions := false
-tsp_debugVerbose_EPTF_SchedulerFunctions := false
-tsp_EPTF_LGenBaseDebugTraffic := false
-tsp_EPTF_LGenBaseDebug := false
-
-[EXECUTE]
-MBT_demo.tc_MBT_SIP_Demo
-MBT_demo.tc_MBT_HTTP_Demo
-
-[TESTPORT_PARAMETERS]
-*.IPL4_PCO.debug := "NO"
-# In this section you can specify groups of hosts. These groups can be used inside the
-# [COMPONENTS] section to restrict the creation of certain PTCs to a given set of hosts. 
-
-[COMPONENTS]
-//TERM := rhea;
-//ORIG := 10.6.70.7;
-
-# This section consists of rules restricting the location of created PTCs.
-[MAIN_CONTROLLER]
-# The options herein control the behaviour of MC.
diff --git a/demo/MBT_demo.prj b/demo/MBT_demo.prj
deleted file mode 100644
index 28dcdc1..0000000
--- a/demo/MBT_demo.prj
+++ /dev/null
@@ -1,153 +0,0 @@
-<!DOCTYPE TITAN_GUI_project_file>
-<Project TITAN_version="1.8.pre0 build 3" >
-    <General>
-        <Project_Name>MBT_demo</Project_Name>
-        <Executable_Path>bin/demo</Executable_Path>
-        <Working_Dir>bin</Working_Dir>
-        <Build_Host>alpha</Build_Host>
-        <Execution_Mode>Parallel</Execution_Mode>
-        <ScriptFile_AfterMake>makefile_patch.sh</ScriptFile_AfterMake>
-        <Log_Format>yes</Log_Format>
-        <Update_Symlinks>yes</Update_Symlinks>
-        <Create_Absolute_Symlinks>no</Create_Absolute_Symlinks>
-        <Update_Makefile>yes</Update_Makefile>
-        <Localhost_Execute>yes</Localhost_Execute>
-        <Execute_Command>rsh %host &quot;cd %project_working_dir ; &quot;%executable&quot; %localhost %mctr_port&quot;</Execute_Command>
-        <Execute_Hosts>alfa, beta, gamma</Execute_Hosts>
-        <UnUsed_List></UnUsed_List>
-    </General>
-    <Modules>
-        <Module>MBT_demo.ttcn</Module>
-    </Modules>
-    <Configs>
-        <Config>MBT_demo.cfg</Config>
-    </Configs>
-    <Test_Cases>
-    </Test_Cases>
-    <File_Group name="MainFileGroup" >
-        <File_Groups>
-            <File_Group name="EPTF_Applib_MBT_CNL113659" >
-                <File path="../src/LoadGen/EPTF_MBT_LGen_Definitions.ttcn" />
-                <File path="../src/LoadGen/EPTF_MBT_LGen_Functions.ttcn" />
-            </File_Group>
-            <File_Group name="EPTF_Applib_SIP_CNL113522" >
-                <File_Groups>
-                    <File_Group path="../../EPTF_Applib_SIP_CNL113522/src/LoadGen/EPTF_SIP_LoadGen.grp" />
-                    <File_Group path="../../EPTF_Applib_SIP_CNL113522/src/Logger/EPTF_SIP_Logger.grp" />
-                    <File_Group path="../../EPTF_Applib_SIP_CNL113522/src/Transport/EPTF_SIP_Transport.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="EPTF_Applib_HTTP_CNL113618" >
-                <File_Groups>
-                    <File_Group path="../../EPTF_Applib_HTTP_CNL113618/src/LoadGen/EPTF_HTTP_LoadGen.grp" />
-                    <File_Group path="../../EPTF_Applib_HTTP_CNL113618/src/Logger/EPTF_HTTP_Logger.grp" />
-                    <File_Group path="../../EPTF_Applib_HTTP_CNL113618/src/Transport/EPTF_HTTP_Transport.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="TCCUsefulFunctions_CNL113472" >
-                <File path="../../TCCUsefulFunctions_CNL113472/src/digcalc.c" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/digcalc.h" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCInterface.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCInterface_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCSecurity.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCSecurity_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCIPsec.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Definitions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCEncoding.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCEncoding_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.c" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.h" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCFileIO.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCFileIO_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCDateTime.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCDateTime_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCMaths.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCMaths_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCMaths_GenericTypes.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCInterface_ip.h" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCConversion.cc" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCConversion_Functions.ttcn" />
-                <File path="../../TCCUsefulFunctions_CNL113472/src/TCCTemplate_Functions.ttcn" />
-            </File_Group>
-            <File_Group name="SIPmsg_CNL113319" >
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/lex.SIP_parse_.c" />
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse.h" />
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse_.tab.c" />
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse_.tab.h" />
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PortType.ttcn" />
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PT.cc" />
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PT.hh" />
-                <File path="../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_Types.ttcn" />
-            </File_Group>
-            <File_Group name="HTTPmsg_CNL113312" >
-                <File path="../../../TestPorts/HTTPmsg_CNL113312/src/HTTPmsg_PortType.ttcn" />
-                <File path="../../../TestPorts/HTTPmsg_CNL113312/src/HTTPmsg_PT.cc" />
-                <File path="../../../TestPorts/HTTPmsg_CNL113312/src/HTTPmsg_PT.hh" />
-                <File path="../../../TestPorts/HTTPmsg_CNL113312/src/HTTPmsg_Types.ttcn" />
-                <File path="../../../TestPorts/HTTPmsg_CNL113312/src/HTTPmsg_MessageLen_Function.cc" />
-                <File path="../../../TestPorts/HTTPmsg_CNL113312/src/HTTPmsg_MessageLen.ttcn" />
-            </File_Group>
-            <File_Group name="UDPasp_CNL113346" >
-                <File path="../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PortType.ttcn" />
-                <File path="../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.cc" />
-                <File path="../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.hh" />
-                <File path="../../../TestPorts/UDPasp_CNL113346/src/UDPasp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="IPL4asp_CNL113531" >
-                <File path="../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_discovery.cc" />
-                <File path="../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Functions.ttcn" />
-                <File path="../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PortType.ttcn" />
-                <File path="../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_protocol_L234.hh" />
-                <File path="../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.cc" />
-                <File path="../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.hh" />
-                <File path="../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="Abstract_Socket_CNL113384" >
-                <File path="../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.cc" />
-                <File path="../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.hh" />
-            </File_Group>
-            <File_Group name="IP_CNL113418" >
-                <File path="../../../ProtocolModules/IP_CNL113418/src/IP_EncDec.cc" />
-                <File path="../../../ProtocolModules/IP_CNL113418/src/IP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="LANL2asp_CNL113519" >
-                <File path="../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PortType.ttcn" />
-                <File path="../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.cc" />
-                <File path="../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.hh" />
-                <File path="../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="TCP_CNL113675" >
-                <File path="../../../ProtocolModules/TCP_CNL113675/src/TCP_EncDec.cc" />
-                <File path="../../../ProtocolModules/TCP_CNL113675/src/TCP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="GeneralTypes" >
-                <File path="../../../ProtocolModules/COMMON/src/General_Types.ttcn" />
-            </File_Group>           
-            <File_Group name="EPTF_Core_Library_CNL113512" >
-                <File_Groups>
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Base/EPTF_CLL_Base.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Common/EPTF_CLL_Common.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/FreeBusyQueue/EPTF_CLL_FreeBusyQueue.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/HashMap/EPTF_CLL_HashMap.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/LGenBase/EPTF_CLL_LGenBase.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Logging/EPTF_CLL_Logging.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/RedBlackTree/EPTF_CLL_RBtree_Float.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Scheduler/EPTF_CLL_Scheduler_RBT.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Variable/EPTF_CLL_Variable.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_Transport.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportCommPortIPL4.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportMessageBufferManager.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportRouting.grp" />
-                    <File_Group path="../../../TestPorts/Common_Components/Socket_API_CNL113686/src/Socket_API.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/RandomNArray/EPTF_CLL_RNA.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/Semaphore/EPTF_CLL_Semaphore.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/StatMeasure/EPTF_CLL_StatMeasure.grp" />
-                    <File_Group path="../../EPTF_Core_Library_CNL113512/src/StatHandler/EPTF_CLL_StatHandler.grp" />
-                </File_Groups>
-            </File_Group>
-        </File_Groups>
-    </File_Group>
-</Project>
diff --git a/demo/MBT_demo.ttcn b/demo/MBT_demo.ttcn
deleted file mode 100644
index 7edad5f..0000000
--- a/demo/MBT_demo.ttcn
+++ /dev/null
@@ -1,317 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_demo.ttcn
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 659
-//  Updated:  2009-10-01
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-
-module MBT_demo
-{
-
-import from EPTF_MBT_LGen_Definitions all;
-import from EPTF_MBT_LGen_Functions all;
-import from EPTF_CLL_Common_Definitions all;
-import from EPTF_CLL_Base_Definitions all;
-import from EPTF_CLL_Base_Functions all;
-import from EPTF_CLL_RBTScheduler_Functions all;
-import from EPTF_CLL_LGenBase_Definitions all;
-import from EPTF_CLL_LGenBase_ConfigFunctions all;
-import from EPTF_CLL_LGenBase_EventHandlingFunctions all;
-
-import from EPTF_SIP_LGen_Definitions all;
-import from EPTF_SIP_LGen_Functions all;
-import from EPTF_SIP_Common_Functions all;
-import from EPTF_SIP_UserDatabase_Functions all;
-import from EPTF_SIP_Transport_Definitions all;
-import from EPTF_SIP_Transport_Functions all;
-import from EPTF_SIP_MessageHandler_Functions all;
-
-import from EPTF_HTTP_Transport_Definitions all;
-import from EPTF_HTTP_Transport_Functions all;
-
-import from EPTF_HTTP_Definitions all;
-import from EPTF_HTTP_Functions all;
-
-
-type component MBT_Demo_LGen_CT extends EPTF_MBT_LGen_CT, EPTF_SIP_LGen_CT, EPTF_SIP_LocalTransport_CT,
-EPTF_HTTP_LGen_CT,EPTF_HTTP_LocalTransport_CT 
-{}
-
-type component MBT_Demo_Tester_CT extends EPTF_MBT_Tester_CT {}
-
-type component MBT_Demo_Main_CT extends EPTF_Base_CT {}
-
-testcase tc_MBT_HTTP_Demo() runs on MBT_Demo_Main_CT
-{
-  f_EPTF_Base_init_CT("mtc");
-  
-  var MBT_Demo_LGen_CT vc_MBT_CT := MBT_Demo_LGen_CT.create;
-  var MBT_Demo_Tester_CT vc_Tester_CT := MBT_Demo_Tester_CT.create;
-  
-  connect(vc_MBT_CT:EPTF_MBT_PCO, vc_Tester_CT:EPTF_MBT_TESTER_PCO);
-  
-  vc_MBT_CT.start(f_MBT_Demo_LGen_HTTP_behavior());
-  vc_Tester_CT.start(f_MBT_Demo_Tester_HTTP_behavior());
-  
-  //all component.done;
-  f_EPTF_Base_wait4Shutdown();
-}
-
-testcase tc_MBT_SIP_Demo() runs on MBT_Demo_Main_CT
-{
-  f_EPTF_Base_init_CT("mtc");
-  
-  var MBT_Demo_LGen_CT vc_MBT_CT := MBT_Demo_LGen_CT.create;
-  var MBT_Demo_Tester_CT vc_Tester_CT := MBT_Demo_Tester_CT.create;
-  
-  connect(vc_MBT_CT:EPTF_MBT_PCO, vc_Tester_CT:EPTF_MBT_TESTER_PCO);
-  
-  vc_MBT_CT.start(f_MBT_Demo_LGen_SIP_behavior());
-  vc_Tester_CT.start(f_MBT_Demo_Tester_SIP_behavior());
-  
-  //all component.done;
-  f_EPTF_Base_wait4Shutdown();
-}
-
-function f_MBT_Demo_LGen_HTTP_behavior() runs on MBT_Demo_LGen_CT
-{
-  //map(self:IPL4_PCO, system:IPL4_PCO);
-  f_EPTF_MBT_init("MBT_Demo_LGen",0, "MBT_")
-  
-  f_EPTF_HTTP_init(
- 	pl_selfName:="HTTP_LoadGen", 
- 	pl_selfId:=0, 
- 	pl_entityNamePrefix:="HTTP_AppLib_", 
- 	pl_numEntities:=0)
-
-  f_EPTF_HTTP_LocalTransport_init_CT( 
-  	pl_selfName:="EPTF_HTTP_LocalTransport", 
-  	pl_receiveFunction:=refers(f_EPTF_HTTP_messageReceived), 
-  	pl_eventReceiveFunction:=refers(f_EPTF_HTTP_eventReceived))
-  	
-  f_EPTF_HTTP_setSendRequestFunction(pl_sendRequest_fp:=refers(f_EPTF_HTTP_LocalTransport_sendMessage))
-  f_EPTF_HTTP_setConnectionOpenFunction(plf_connectionOpen:=refers(f_EPTF_HTTP_LocalTransport_connectionOpen))
-  f_EPTF_HTTP_setConnectionCloseFunction(plf_connectionClose:=refers(f_EPTF_HTTP_LocalTransport_connectionClose))
-  f_EPTF_HTTP_setConnectionHalfCloseFunction(plf_connectionHalfClose:=refers(f_EPTF_HTTP_LocalTransport_connectionHalfClose))
-  f_EPTF_HTTP_setFreePortOfUserFunction(plf_fpou:=refers(f_EPTF_HTTP_LocalTransport_freePortOfUser));
-  f_EPTF_HTTP_setClosePortOfUserFunction(plf_cpou:=refers(f_EPTF_HTTP_LocalTransport_closePortOfUser));
-
-  f_EPTF_MBT_initLGenFsm
-  (
-    refers(f_mbt_userfunction),
-    refers(f_EPTF_MBT_HTTP_Demo_fillInDB)
-  );
-  
-  f_EPTF_Base_wait4Shutdown();
-}
-
-function f_MBT_Demo_Tester_HTTP_behavior() runs on MBT_Demo_Tester_CT
-{
-  f_EPTF_Base_init_CT("MBT_Demo_Tester");
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_ConfigRequest:
-    {
-      entityGroupName := "MBT_EntityType",
-      noEntities := 1,
-      behaviors := {"MBT_behavior", "HTTP Behavior"},
-      fsmName := "FSM_MBT"
-    }
-  );
-  
-  // TODO: activate default altstep, with timeout handling
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_ConfigResponse:?);
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_TestStepRequest: {"EPTF HTTP: Sends HTTP Request", {}, omit, omit});
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_TestStepResponse:{ bName := "HTTP Behavior", iName := "HTTP CHAR Response Message Received", addr := *});
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_CommandRequest:{ quit := {}});
-  
-  f_EPTF_Base_wait4Shutdown();
-}
-
-function f_MBT_Demo_LGen_SIP_behavior() runs on MBT_Demo_LGen_CT
-{
-  f_EPTF_MBT_init("MBT_Demo_LGen",0, "MBT_")
-  
-  f_SIP_applibInit("MBT_Demo_LGen");
- 
-  f_EPTF_SIP_LocalTransport_init("udp");
-  vf_EPTF_SIP_LocalTransport_receive := refers(f_EPTF_SIP_Message_MsgHandler);    //receive callback function on LocalTransport
-  vf_EPTF_SIP_LGen_msgSender         := refers(f_EPTF_SIP_LocalTransport_sendSIPMessage);  //send callback function on LGen
-  v_removeUAS                        := refers(fcb_EPTF_SIP_LocalTransport_removeUAS);
-
-  f_EPTF_MBT_initLGenFsm
-  (
-    null,
-    refers(f_EPTF_MBT_SIP_Demo_fillInDB)
-  );
-  
-  f_EPTF_Base_wait4Shutdown();
-}
-
-function f_MBT_Demo_Tester_SIP_behavior() runs on MBT_Demo_Tester_CT
-{
-  f_EPTF_Base_init_CT("MBT_Demo_Tester");
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_ConfigRequest:
-    {
-      entityGroupName := "MBT_EntityType",
-      noEntities := 1,
-      behaviors := {"MBT_behavior", "HTTP Behavior"},
-      fsmName := "FSM_MBT"
-    }
-  );
-  
-  // TODO: activate default altstep, with timeout handling
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_ConfigResponse:?);
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_TestStepRequest: {"SIPAppLib: StepFunction_init", {}, omit, omit});
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_TestStepRequest: {"SIPAppLib: StepFunction_createREGISTER", {}, omit, omit});
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_TestStepResponse:{ bName := "Behavior_SIP", iName := "401", addr := * });
- 
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_TestStepRequest: {"SIPAppLib: StepFunction_createREGISTER", {}, omit, omit});
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_TestStepResponse:{ bName := "Behavior_SIP", iName := "200", addr := * });
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_TestStepRequest: {"SIPAppLib: StepFunction_createDEREGISTER", {}, omit, omit});
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_TestStepResponse:{ bName := "Behavior_SIP", iName := "401", addr := * });
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_TestStepRequest: {"SIPAppLib: StepFunction_createDEREGISTER", {}, omit, omit});
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_TestStepResponse:{ bName := "Behavior_SIP", iName := "200", addr := * });
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_TestStepRequest: {"SIPAppLib: StepFunction_cleanUp", {}, omit, omit});
-
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_CommandRequest:{ quit := {}});
-  
-  f_EPTF_Base_wait4Shutdown();
-}
-
-// CUSTOM PART
-
-function f_mbt_userfunction(in EPTF_LGenBase_TestStepArgs pl_ptr) 
-runs on MBT_Demo_LGen_CT
-return boolean
-{
-  v_msgToProcess.response.messageBody:="Ferike";
-  return true;
-}
-
-function f_EPTF_MBT_SIP_Demo_fillInDB(in EPTF_MBT_ConfigRequest p_req) runs on MBT_Demo_LGen_CT
-{
-  var integer vl_grpIdx := f_EPTF_LGenBase_entityGrpNameIndex(p_req.entityGroupName);
-  var integer vl_entityIdx := f_EPTF_LGenBase_getEGrpBaseOffset(vl_grpIdx);
-  
-  for (var integer i:=0; i<p_req.noEntities; i:=i+1)
-  {
-    var EPTF_IntegerList vl_bCtx := f_EPTF_LGenBase_getBehaviorCtx(i + vl_entityIdx, v_SIP_myBIdx);
-    f_EPTF_SIP_IPL4asp_SetUserData
-    ( 
-      vl_bCtx[0],
-      "10.251.64.2", // local IP
-      {15000, 15001},
-      "udp",
-      "10.80.36.65", // proxy ip
-      5060 // proxy port
-    );
-    
-    f_EPTF_SIP_User_SetUserData(
-      vl_bCtx[0],
-      {
-        {
-          addr := {
-            nameAddr := {
-              displayName := "titansim_user_7465000",
-              addrSpec := {
-                scheme := "sip",
-                userInfo := {
-                  userOrTelephoneSubscriber := "titansim_user_7465000",
-                  password := omit
-                },
-                hostPort := {
-                  host := "tcj.ics.se",
-                  portField := 5060
-                },
-                urlParameters := omit,
-                headers := omit
-              }
-            }
-          },
-          password := "pass2ICS"
-        }
-      },
-      "10.251.64.2",
-      {15000, 15001},
-      i + vl_entityIdx //entity index
-    );
-    
-    f_EPTF_SIP_Session_AddData(vl_bCtx[0], f_EPTF_SIP_getTransport("UDP"),345600);
-    
-    //f_EPTF_SIP_mapUser2TransportUser(vl_bCtx[0], 0);
-    
-    f_EPTF_SIP_IPL4asp_startListening(vl_bCtx[0], true); // Both UDP and TCP
-  }
-}
-
-function f_EPTF_MBT_HTTP_Demo_fillInDB(in EPTF_MBT_ConfigRequest p_req) runs on MBT_Demo_LGen_CT
-{
-
-  var integer vl_grpIdx := f_EPTF_LGenBase_entityGrpNameIndex(p_req.entityGroupName);
-  var integer vl_entityIdx := f_EPTF_LGenBase_getEGrpBaseOffset(vl_grpIdx);
-  
-  for (var integer i:=0; i<p_req.noEntities; i:=i+1)
-  {
-    var EPTF_IntegerList vl_bCtx := f_EPTF_LGenBase_getBehaviorCtx(i + vl_entityIdx, v_EPTF_HTTP_myBIdx);
-    
-    
-     var integer vl_connHandle := f_EPTF_HTTP_LocalTransport_newPort(
-	{
-	name:="SingleHTTP_Port"& "_" & int2str(vl_bCtx[0]),
-	localHostInformation := { "192.168.163.130", 50000+vl_bCtx[0]},   
-    remoteHostInformation := { "ttcn.ericsson.se", 80},
-    instantConnOpen := true, 
-    instantConnClose := true, 
-    useSSL := false,  
-    userFunctions := omit
-	}
-  ) 
-    v_EPTF_HTTP_contexts[vl_bCtx[0]] := { 
-      method := "GET",
-      uri:= "/",
-      version_major:=1,
-      version_minor:=1,
-      headerLinesIdx := f_EPTF_HTTP_addNewHeaderLines({    
-  	     		{header_name:="Host", header_value:="ttcn.ericsson.se"  }, 	
-  	     		{header_name:="Connection",  header_value:="close" }  }),
-      authDetails := {"","","","","00000001","MD5","","","","",""},
-      //authDetails := {"","","","","00000001","MD5",""},
-      requestPending:=false,
-      connId := vl_connHandle,      
-      bodyId :=f_EPTF_HTTP_setCharEntityBody("<HTML>Request.</HTML>"),       
-      headerGetterFn:=refers(f_EPTF_HTTP_getHeaderContentForEntity),
-      rawHeaderGetterFn:= null,
-      contentGetterFn:=refers(f_EPTF_HTTP_getCharstringBodyContentForEntity),
-      charBodyHandlerFn:=refers(f_EPTF_HTTP_defaultCharstringBodyHandler) ,
-      binaryBodyHandlerFn:= refers(f_EPTF_HTTP_defaultBinaryBodyHandler)  
-
-    }
-  }
-}
-
-}
diff --git a/demo/direct/MBT_Qtronic_Demo.cfg b/demo/direct/MBT_Qtronic_Demo.cfg
deleted file mode 100644
index 52510d9..0000000
--- a/demo/direct/MBT_Qtronic_Demo.cfg
+++ /dev/null
@@ -1,62 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2009                           //
-//                                                                           //
-// The copyright to the computer  program(s) herein  is the property of TCC. //
-// The program(s) may be used and/or copied only with the written permission //
-// of TCC or in accordance with  the terms and conditions  stipulated in the //
-// agreement/contract under which the program(s) have been supplied          //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_Qtronic_Demo.cfg
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 522
-//  Updated:  2009-04-20
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-
-[LOGGING]
-
-ConsoleMask := ERROR | STATISTICS | ACTION | TESTCASE
-FileMask := LOG_ALL | DEBUG
-#FileMask := ERROR | STATISTICS | PARALLEL | ACTION | WARNING
-#LogFile := "%l/%e.%h-%t%r.%s"
-LogEntityName := Yes
-LogEventTypes := Yes//Subcategories;
-SourceInfoFormat := Stack
-
-
-[MODULE_PARAMETERS]
-
-tsp_EPTF_MBT_LGen_debug := true;
-tsp_debug_EPTF_SchedulerFunctions := false
-tsp_debugVerbose_EPTF_SchedulerFunctions := false
-tsp_EPTF_LGenBaseDebugTraffic := false
-tsp_EPTF_LGenBaseDebug := false
-
-tsp_SIP_TransactionTimerValues :=
-{
-  0.5,//T1
-  0.0,//no max
-  8.0,//64*T1
-  8.0,//Timer D, >= 32.0
-  0.5,//T1
-  4.0,//T2
-  8.0,//64*T1
-  5.0,//T4
-  0.5,//T1
-  4.0,//T2,
-  8.0,//64*T1
-  5.0,//T4
-  8.0//64*T1
-};
-
-
-[EXECUTE]
-
-MBT_Qtronic_Testcases.control
-
-
-[TESTPORT_PARAMETERS]
-
-*.IPL4_PCO.debug := "NO"
diff --git a/demo/direct/MBT_Qtronic_Demo.prj b/demo/direct/MBT_Qtronic_Demo.prj
deleted file mode 100644
index 35a29dc..0000000
--- a/demo/direct/MBT_Qtronic_Demo.prj
+++ /dev/null
@@ -1,150 +0,0 @@
-<!DOCTYPE TITAN_GUI_project_file>
-<Project TITAN_version="1.8.pl1" >
-    <General>
-        <Project_Name>MBT_Qtronic_Demo</Project_Name>
-        <Executable_Path>bin/demo</Executable_Path>
-        <Working_Dir>bin</Working_Dir>
-        <Build_Host>alpha</Build_Host>
-        <Execution_Mode>Parallel</Execution_Mode>
-        <ScriptFile_AfterMake>../makefile_patch.sh</ScriptFile_AfterMake>
-        <Log_Format>yes</Log_Format>
-        <Update_Symlinks>yes</Update_Symlinks>
-        <Create_Absolute_Symlinks>no</Create_Absolute_Symlinks>
-        <Update_Makefile>yes</Update_Makefile>
-        <Localhost_Execute>yes</Localhost_Execute>
-        <Execute_Command>rsh %host &quot;cd %project_working_dir ; &quot;%executable&quot; %localhost %mctr_port&quot;</Execute_Command>
-        <Execute_Hosts>alfa, beta, gamma</Execute_Hosts>
-        <UnUsed_List></UnUsed_List>
-    </General>
-    <Modules>
-        <Module>MBT_Qtronic_Demo.ttcn</Module>
-        <Module>MBT_Qtronic_Testcases.ttcn</Module>
-        <Module>MBT_Qtronic_Types.ttcn</Module>
-        <Module>MBT_Qtronic_TestHarness.ttcn</Module>
-        <Module>../sut/MBT_SUT_SIP_Phone.ttcn</Module>
-    </Modules>
-    <Configs>
-        <Config>MBT_Qtronic_Demo.cfg</Config>
-    </Configs>
-    <Test_Cases>
-        <Test_Case>MBT_Qtronic_Testcases.control</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_1</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_2</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_3</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_4</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_5</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_6</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_7</Test_Case>
-    </Test_Cases>
-    <File_Group name="MainFileGroup" >
-        <File_Groups>
-            <File_Group name="EPTF_Applib_MBT_CNL113659" >
-                <File path="../../src/LoadGen/EPTF_MBT_LGen_Definitions.ttcn" />
-                <File path="../../src/LoadGen/EPTF_MBT_LGen_Functions.ttcn" />
-            </File_Group>
-            <File_Group name="EPTF_Applib_SIP_CNL113522" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Applib_SIP_CNL113522/src/LoadGen/EPTF_SIP_LoadGen.grp" />
-                    <File_Group path="../../../EPTF_Applib_SIP_CNL113522/src/Logger/EPTF_SIP_Logger.grp" />
-                    <File_Group path="../../../EPTF_Applib_SIP_CNL113522/src/Transport/EPTF_SIP_Transport.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="TCCUsefulFunctions_CNL113472" >
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/digcalc.c" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/digcalc.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCSecurity.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCSecurity_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Definitions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCEncoding.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCEncoding_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.c" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCFileIO.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCFileIO_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCDateTime.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCDateTime_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths_GenericTypes.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface_ip.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCConversion.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCConversion_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCTemplate_Functions.ttcn" />
-            </File_Group>
-            <File_Group name="SIPmsg_CNL113319" >
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/lex.SIP_parse_.c" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse.h" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse_.tab.c" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse_.tab.h" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PortType.ttcn" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PT.cc" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PT.hh" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_Types.ttcn" />
-            </File_Group>
-            <File_Group name="UDPasp_CNL113346" >
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PortType.ttcn" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.cc" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.hh" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="IPL4asp_CNL113531" >
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_discovery.cc" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Functions.ttcn" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PortType.ttcn" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_protocol_L234.hh" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.cc" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.hh" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="Abstract_Socket_CNL113384" >
-                <File path="../../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.cc" />
-                <File path="../../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.hh" />
-            </File_Group>
-            <File_Group name="IP_CNL113418" >
-                <File path="../../../../ProtocolModules/IP_CNL113418/src/IP_EncDec.cc" />
-                <File path="../../../../ProtocolModules/IP_CNL113418/src/IP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="LANL2asp_CNL113519" >
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PortType.ttcn" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.cc" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.hh" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="TCP_CNL113675" >
-                <File path="../../../../ProtocolModules/TCP_CNL113675/src/TCP_EncDec.cc" />
-                <File path="../../../../ProtocolModules/TCP_CNL113675/src/TCP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="GeneralTypes" >
-                <File path="../../../../ProtocolModules/COMMON/src/General_Types.ttcn" />
-            </File_Group>         
-            <File_Group name="EPTF_Core_Library_CNL113512" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Base/EPTF_CLL_Base.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Common/EPTF_CLL_Common.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/FreeBusyQueue/EPTF_CLL_FreeBusyQueue.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/HashMap/EPTF_CLL_HashMap.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Logging/EPTF_CLL_Logging.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/RedBlackTree/EPTF_CLL_RBtree_Float.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Scheduler/EPTF_CLL_Scheduler_RBT.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Variable/EPTF_CLL_Variable.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/StatMeasure/EPTF_CLL_StatMeasure.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_Transport.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportCommPortIPL4.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportMessageBufferManager.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportRouting.grp" />
-                    <File_Group path="../../../../TestPorts/Common_Components/Socket_API_CNL113686/src/Socket_API.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/RandomNArray/EPTF_CLL_RNA.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Semaphore/EPTF_CLL_Semaphore.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/StatHandler/EPTF_CLL_StatHandler.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/LGenBase/EPTF_CLL_LGenBase.grp" />
-                </File_Groups>
-            </File_Group>
-        </File_Groups>
-    </File_Group>
-</Project>
diff --git a/demo/direct/MBT_Qtronic_Demo.ttcn b/demo/direct/MBT_Qtronic_Demo.ttcn
deleted file mode 100644
index a67a0a2..0000000
--- a/demo/direct/MBT_Qtronic_Demo.ttcn
+++ /dev/null
@@ -1,212 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_Qtronic_Demo.ttcn
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 659
-//  Updated:  2009-10-01
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-
-module MBT_Qtronic_Demo
-{
-
-import from MBT_Qtronic_Testcases all;
-import from MBT_Qtronic_Types all;
-import from MBT_Qtronic_TestHarness all;
-
-import from MBT_SUT_SIP_Phone all;
-
-import from EPTF_CLL_Common_Definitions all;
-import from EPTF_CLL_Base_Definitions all;
-import from EPTF_CLL_Base_Functions all;
-import from EPTF_CLL_LGenBase_ConfigFunctions all;
-
-
-import from EPTF_MBT_LGen_Definitions all;
-import from EPTF_MBT_LGen_Functions all;
-
-import from EPTF_SIP_LGen_Definitions all;
-import from EPTF_SIP_LGen_Functions all;
-import from EPTF_SIP_Common_Functions all;
-import from EPTF_SIP_UserDatabase_Functions all;
-import from EPTF_SIP_Transport_Definitions all;
-import from EPTF_SIP_Transport_Functions all;
-import from EPTF_SIP_MessageHandler_Functions all;
-
-modulepar
-{
-  charstring tsp_MBT_Tester_LocalIP    := "159.107.193.33";
-  integer    tsp_MBT_Tester_LocalPort  := 15000;
-  charstring tsp_MBT_Tester_RemoteIP       := "159.107.193.33";
-  integer    tsp_MBT_Tester_RemotePort     := 20000;
-  
-  charstring tsp_MBT_SIP_Transport := "udp";
-}
-
-type component MBT_Qtronic_Demo_Main_CT 
-  extends 
-  EPTF_Base_CT,
-  EPTF_MBT_Tester_CT
-{
-  var MBT_Qtronic_Demo_LGen_CT vc_lgen;
-}
-
-function f_MBT_Qtronic_Demo_beginTestCase() runs on Qtronic_CT
-{
-  log(%definitionId, " started");
- 
-  f_EPTF_Base_init_CT("mtc");
-
-  log(%definitionId, " Creating SUT");
-  var MBT_Qtronic_Demo_SUT_CT vc_sut := MBT_Qtronic_Demo_SUT_CT.create;
-  connect(self:userIn,      vc_sut:userIn);
-  connect(self:userOut,     vc_sut:userOut);
-  connect(self:EPTF_MBT_TESTER_PCO,vc_sut:EPTF_MBT_PCO);
-  vc_sut.start(f_MBT_Qtronic_Demo_SUT_behavior());
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_CommandResponse:?) from vc_sut;
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_ConfigRequest:
-    {
-      entityGroupName := "SUT_EntityType",
-      noEntities := 1,
-      behaviors := {"MBT_behavior", "Behavior_SIP", "SUT_Behavior"},
-      fsmName := "MBT_Qtronic_Demo_SUT_FSM"
-    }
-  ) to vc_sut;
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_ConfigResponse:?) from vc_sut;
-  log(%definitionId, " SUT ready");
-
-  log(%definitionId, " Creating LGen");
-  vc_lgen := MBT_Qtronic_Demo_LGen_CT.create;
-  connect(self:EPTF_MBT_TESTER_PCO,vc_lgen:EPTF_MBT_PCO);
-  vc_lgen.start(f_MBT_Qtronic_Demo_LGen_behavior());
- 
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_CommandResponse:?) from vc_lgen;
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_ConfigRequest:
-    {
-      entityGroupName := "MBT_EntityType",
-      noEntities := 1,
-      behaviors := {"MBT_behavior", "Behavior_SIP"},
-      fsmName := "FSM_MBT"
-    }
-  ) to vc_lgen;
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_ConfigResponse:?) from vc_lgen;
-  
-  log(%definitionId, " LGen ready");
-
-  
-  log(%definitionId, " finished");
-}
-
-
-function f_MBT_Qtronic_Demo_endTestCase() runs on Qtronic_CT
-{
-  log("### MAIN: END TESTCASE started");
-
-  f_EPTF_Base_stopAll(none, true);
-  
-  log("### MAIN: END TESTCASE finished");
-}
-
-/////////////////////////////////////////////////////////////////////////
-//
-//    M B T  Applib
-//
-/////////////////////////////////////////////////////////////////////////
-
-type component MBT_Qtronic_Demo_LGen_CT
-  extends 
-    EPTF_MBT_LGen_CT, 
-    EPTF_SIP_LGen_CT, EPTF_SIP_LocalTransport_CT
-{
-}
-
-function f_MBT_Qtronic_Demo_LGen_behavior() runs on MBT_Qtronic_Demo_LGen_CT
-{
-  //map(self:IPL4_PCO, system:IPL4_PCO);
-  
-  f_SIP_applibInit("MBT_Demo_LGen");
- 
-  f_EPTF_SIP_LocalTransport_init(tsp_MBT_SIP_Transport);
-  vf_EPTF_SIP_LocalTransport_receive := refers(f_EPTF_SIP_Message_MsgHandler);    //receive callback function on LocalTransport
-  vf_EPTF_SIP_LGen_msgSender         := refers(f_EPTF_SIP_LocalTransport_sendSIPMessage);  //send callback function on LGen
-  v_removeUAS                        := refers(fcb_EPTF_SIP_LocalTransport_removeUAS);
-  
-  f_EPTF_MBT_init("MBT_Demo_LGen",0, "MBT_");
-
-  f_EPTF_MBT_initLGenFsm
-  (
-    null,
-    refers(f_MBT_Qtronic_Demo_LGen_fillInDB)
-  );
-  
-  EPTF_MBT_PCO.send(EPTF_MBT_CommandResponse:{ ready := {}}) to mtc;
-  
-  f_EPTF_Base_wait4Shutdown();
-}
-
-function f_MBT_Qtronic_Demo_LGen_fillInDB(in EPTF_MBT_ConfigRequest p_req) runs on MBT_Qtronic_Demo_LGen_CT
-{
-  var integer vl_grpIdx := f_EPTF_LGenBase_entityGrpNameIndex(p_req.entityGroupName);
-  var integer vl_entityIdx := f_EPTF_LGenBase_getEGrpBaseOffset(vl_grpIdx);
-  
-  for (var integer i:=0; i<p_req.noEntities; i:=i+1)
-  {
-    var EPTF_IntegerList vl_bCtx := f_EPTF_LGenBase_getBehaviorCtx(i + vl_entityIdx, v_SIP_myBIdx);
-    f_EPTF_SIP_IPL4asp_SetUserData
-    ( 
-      vl_bCtx[0],
-      tsp_MBT_Tester_LocalIP, // local IP
-      {tsp_MBT_Tester_LocalPort, tsp_MBT_Tester_LocalPort+1},
-      tsp_MBT_SIP_Transport,
-      tsp_MBT_Tester_RemoteIP, // proxy ip
-      tsp_MBT_Tester_RemotePort // proxy port
-    );
-    
-    f_EPTF_SIP_User_SetUserData(
-      vl_bCtx[0],
-      {
-        {
-          addr := {
-            nameAddr := {
-              displayName := "titansim_user_7465000",
-              addrSpec := {
-                scheme := "sip",
-                userInfo := {
-                  userOrTelephoneSubscriber := "titansim_user_7465000",
-                  password := omit
-                },
-                hostPort := {
-                  host := "tcj.ics.se",
-                  portField := tsp_MBT_Tester_LocalPort
-                },
-                urlParameters := omit,
-                headers := omit
-              }
-            }
-          },
-          password := "pass2ICS"
-        }
-      },
-      tsp_MBT_Tester_LocalIP,
-      {tsp_MBT_Tester_LocalPort, tsp_MBT_Tester_LocalPort+1},
-      i + vl_entityIdx //entity index
-    );
-    
-    f_EPTF_SIP_Session_AddData(vl_bCtx[0], f_EPTF_SIP_getTransport(tsp_MBT_SIP_Transport),345600);
-    
-    f_EPTF_SIP_IPL4asp_startListening(vl_bCtx[0], true); // Both UDP and TCP
-  }
-}
-
-}
diff --git a/demo/direct/MBT_Qtronic_TestHarness.ttcn b/demo/direct/MBT_Qtronic_TestHarness.ttcn
deleted file mode 100644
index ff16af0..0000000
--- a/demo/direct/MBT_Qtronic_TestHarness.ttcn
+++ /dev/null
@@ -1,86 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_TestHarness.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-10-01

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-

-

-/* -*- ttcn3 -*- */

-

-/** @file C:\Users\eantwuh\workspace\SIPsim\MBT_Qtronic_TestHarness.ttcn

- *

- * @author Conformiq TTCN3 Script Backend 0.1

- * @date Thu Sep 30 14:15:28 CEST 2010

- *

- * WARNING! This file has been automatically generated using

- * Ericsson Qtronic TTCN3 Script Backend (based on the original Conformiq Backend).DO NOT EDIT.

- */

-

-module MBT_Qtronic_TestHarness

-{

-    import from MBT_Qtronic_Types all;

-/* User provided imports begin */

-import from MBT_Qtronic_Demo all; import from EPTF_MBT_LGen_Definitions all;

-/* User provided imports end */

-    altstep QtronicDefaultAlt() runs on Qtronic_CT

-    {

-        [] any port.receive

-        {

-            harnessTimer.stop;

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-        [] harnessTimer.timeout

-        {

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-    }

-    function qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(template EPTF_MBT_TestStepRequest msgToSend) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'msgToSend'

-        // before it is delivered to the SUT through the real test interface.

-        // This can include addition of fields not present in the model or

-        // manipulation of unique identifiers in the messages that Qtronic

-        // cannot possible know at the time of test generation.

-        EPTF_MBT_TESTER_PCO.send(msgToSend) to vc_lgen;

-    }

-    function qtronic_send_UserInput_to_userIn(template UserInput msgToSend) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'msgToSend'

-        // before it is delivered to the SUT through the real test interface.

-        // This can include addition of fields not present in the model or

-        // manipulation of unique identifiers in the messages that Qtronic

-        // cannot possible know at the time of test generation.

-        userIn.send(msgToSend);

-    }

-    function qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(template EPTF_MBT_TestStepResponse tmplToMatch) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'tmplToMatch'

-        // before matching it against the expected value template.

-        // This manipulation typically means removing fields not present

-        // in the abstract model system interface.

-        EPTF_MBT_TESTER_PCO.receive(tmplToMatch) from vc_lgen;

-    }

-    function qtronic_receive_TimeOutIndication_from_userOut(template TimeOutIndication tmplToMatch) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'tmplToMatch'

-        // before matching it against the expected value template.

-        // This manipulation typically means removing fields not present

-        // in the abstract model system interface.

-        userOut.receive(tmplToMatch);

-    }

-}

diff --git a/demo/direct/MBT_Qtronic_Testcases.ttcn b/demo/direct/MBT_Qtronic_Testcases.ttcn
deleted file mode 100644
index 05d7025..0000000
--- a/demo/direct/MBT_Qtronic_Testcases.ttcn
+++ /dev/null
@@ -1,1448 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_Testcases.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-10-01

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-

-/* -*- ttcn3 -*- */

-

-/** @file C:\Users\eantwuh\workspace\SIPsim\MBT_Qtronic_Testcases.ttcn

- *

- * @author Conformiq TTCN3 Script Backend 0.1

- * @date Thu Sep 30 14:32:36 CEST 2010

- *

- * WARNING! This file has been automatically generated using

- * Ericsson Qtronic TTCN3 Script Backend (based on the original Conformiq Backend).DO NOT EDIT.

- */

-

-module MBT_Qtronic_Testcases

-{

-    import from MBT_Qtronic_Types all;

-    import from MBT_Qtronic_TestHarness all;

-    /* User provided imports begin */

-    import from MBT_Qtronic_Demo all; import from EPTF_MBT_LGen_Definitions all;

-    /* User provided imports end */

-    /* Qtronic generated alt step */

-    altstep QtronicDefaultAlt() runs on Qtronic_CT

-    {

-        [] any port.receive

-        {

-            harnessTimer.stop;

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-        [] harnessTimer.timeout

-        {

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-    }

-    /* Generated test case #1 */

-    testcase Test_Case_1() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicDefaultAlt());

-        log("Structural feature: method: main()");

-        log("Structural feature: method: SIPClient.SIPClient()");

-        log("Structural feature: method: SIPClient.run()");

-        log("Structural feature: state: SIPClient.initial-state-0");

-        log("Structural feature: transition: SIPClient.initial-state-0->SIPClient.Init-9");

-        log("Structural feature: state: SIPClient.Init");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate1);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Init->SIPClient.Calling-0");

-        log("Structural feature: method: SIPClient.Invite()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate2);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate3);

-        oldtimer := 0.0;

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate4);

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Calling");

-        log("Structural feature: state: SIPClient.Calling.initial-state-7");

-        log("Structural feature: transition: SIPClient.Calling.initial-state-7->SIPClient.Calling.Wait-16");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate5);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Calling->SIPClient.Ringing-1");

-        log("Structural feature: state: SIPClient.Ringing");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate6);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Ringing->SIPClient.final-state-6-7");

-        log("Structural feature: method: SIPClient.Ack()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate7);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.final-state-6");

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate1 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate2 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "INVITE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := -1

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate3 :=

-    {

-        stepName := "SIPAppLib: StepFunction_init",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate4 :=

-    {

-        stepName := "SIPAppLib: StepFunction_handleINVITE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate5 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            1

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate6 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            37

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate7 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "ACK",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    /* Generated test case #2 */

-    testcase Test_Case_2() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicDefaultAlt());

-        log("Structural feature: method: main()");

-        log("Structural feature: method: SIPClient.SIPClient()");

-        log("Structural feature: method: SIPClient.run()");

-        log("Structural feature: state: SIPClient.initial-state-0");

-        log("Structural feature: transition: SIPClient.initial-state-0->SIPClient.Init-9");

-        log("Structural feature: state: SIPClient.Init");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate8);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Init->SIPClient.Calling-0");

-        log("Structural feature: method: SIPClient.Invite()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate9);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate10);

-        oldtimer := 0.0;

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate11);

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Calling");

-        log("Structural feature: state: SIPClient.Calling.initial-state-7");

-        log("Structural feature: transition: SIPClient.Calling.initial-state-7->SIPClient.Calling.Wait-16");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate12);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Calling->SIPClient.Ringing-1");

-        log("Structural feature: state: SIPClient.Ringing");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate13);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Ringing->SIPClient.Ready-2");

-        log("Structural feature: method: SIPClient.Ack()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate14);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Requirement: requirement: Acknowledge established call with ACK");

-        log("Structural feature: state: SIPClient.Ready");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate15);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingRequest(String)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: transition: SIPClient.Ready->SIPClient.final-state-3-6");

-        log("Structural feature: method: SIPClient.SendOK(String)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate16);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Requirement: requirement: Terminating/Send OK in response to BYE");

-        log("Structural feature: state: SIPClient.final-state-3");

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate8 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate9 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "INVITE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := -1

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate10 :=

-    {

-        stepName := "SIPAppLib: StepFunction_init",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate11 :=

-    {

-        stepName := "SIPAppLib: StepFunction_handleINVITE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate12 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            1

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate13 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            5

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate14 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "ACK",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate15 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createBYE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate16 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "200",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    /* Generated test case #3 */

-    testcase Test_Case_3() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicDefaultAlt());

-        log("Structural feature: method: main()");

-        log("Structural feature: method: SIPClient.SIPClient()");

-        log("Structural feature: method: SIPClient.run()");

-        log("Structural feature: state: SIPClient.initial-state-0");

-        log("Structural feature: transition: SIPClient.initial-state-0->SIPClient.Init-9");

-        log("Structural feature: state: SIPClient.Init");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate17);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Init->SIPClient.Calling-0");

-        log("Structural feature: method: SIPClient.Invite()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate18);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate19);

-        oldtimer := 0.0;

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate20);

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Calling");

-        log("Structural feature: state: SIPClient.Calling.initial-state-7");

-        log("Structural feature: transition: SIPClient.Calling.initial-state-7->SIPClient.Calling.Wait-16");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        log("Structural feature: transition: SIPClient.Calling.Wait->SIPClient.Calling.junction-state-8-14");

-        log("Structural feature: method: SIPClient.RetransmittedRequest()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate21);

-        harnessTimer.stop;

-        oldtimer := 0.500000000;

-        log("Requirement: requirement: 17.1.1.2 INVITE timers/Resends INVITE after A timeout");

-        log("Structural feature: state: SIPClient.Calling.junction-state-8");

-        log("Structural feature: transition: SIPClient.Calling.junction-state-8->SIPClient.Calling.Wait-15");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        log("Structural feature: transition: SIPClient.Calling.Wait->SIPClient.Calling.junction-state-8-14");

-        log("Structural feature: method: SIPClient.RetransmittedRequest()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((1.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate22);

-        harnessTimer.stop;

-        oldtimer := 1.500000000;

-        log("Requirement: requirement: 17.1.1.2 INVITE timers/Resends INVITE after A timeout");

-        log("Structural feature: state: SIPClient.Calling.junction-state-8");

-        log("Structural feature: transition: SIPClient.Calling.junction-state-8->SIPClient.Calling.Wait-15");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        log("Structural feature: transition: SIPClient.Calling.Wait->SIPClient.Calling.junction-state-8-14");

-        log("Structural feature: method: SIPClient.RetransmittedRequest()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((3.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate23);

-        harnessTimer.stop;

-        oldtimer := 3.500000000;

-        log("Requirement: requirement: 17.1.1.2 INVITE timers/Resends INVITE after A timeout");

-        log("Structural feature: state: SIPClient.Calling.junction-state-8");

-        log("Structural feature: transition: SIPClient.Calling.junction-state-8->SIPClient.Calling.Wait-15");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        log("Structural feature: transition: SIPClient.Calling.Wait->SIPClient.Calling.junction-state-8-14");

-        log("Structural feature: method: SIPClient.RetransmittedRequest()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((7.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate24);

-        harnessTimer.stop;

-        oldtimer := 7.500000000;

-        log("Requirement: requirement: 17.1.1.2 INVITE timers/Resends INVITE after A timeout");

-        log("Structural feature: state: SIPClient.Calling.junction-state-8");

-        log("Structural feature: transition: SIPClient.Calling.junction-state-8->SIPClient.Calling.Wait-15");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        log("Structural feature: transition: SIPClient.Calling->SIPClient.final-state-1-3");

-        log("Requirement: requirement: 17.1.1.2 INVITE timers/Terminates INVITE cycle after B timeout");

-        log("Structural feature: method: SIPClient.TimeOut()");

-        harnessTimer.start((8.0 - oldtimer) + SLACK);

-        qtronic_receive_TimeOutIndication_from_userOut(TimeOutIndicationTemplate25);

-        harnessTimer.stop;

-        oldtimer := 8.0;

-        log("Structural feature: state: SIPClient.final-state-1");

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate17 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate18 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "INVITE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := -1

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate19 :=

-    {

-        stepName := "SIPAppLib: StepFunction_init",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate20 :=

-    {

-        stepName := "SIPAppLib: StepFunction_handleINVITE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate21 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "Retransmitted request",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate22 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "Retransmitted request",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate23 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "Retransmitted request",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate24 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "Retransmitted request",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template TimeOutIndication TimeOutIndicationTemplate25 :=

-    {

-        

-    }

-    /* Generated test case #4 */

-    testcase Test_Case_4() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicDefaultAlt());

-        log("Structural feature: method: main()");

-        log("Structural feature: method: SIPClient.SIPClient()");

-        log("Structural feature: method: SIPClient.run()");

-        log("Structural feature: state: SIPClient.initial-state-0");

-        log("Structural feature: transition: SIPClient.initial-state-0->SIPClient.Init-9");

-        log("Structural feature: state: SIPClient.Init");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate26);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Init->SIPClient.Calling-0");

-        log("Structural feature: method: SIPClient.Invite()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate27);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate28);

-        oldtimer := 0.0;

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate29);

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Calling");

-        log("Structural feature: state: SIPClient.Calling.initial-state-7");

-        log("Structural feature: transition: SIPClient.Calling.initial-state-7->SIPClient.Calling.Wait-16");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate30);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Calling->SIPClient.Ringing-1");

-        log("Structural feature: state: SIPClient.Ringing");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate31);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Ringing->SIPClient.Canceling-12");

-        log("Structural feature: state: SIPClient.Canceling");

-        log("Structural feature: state: SIPClient.Canceling.initial-state-11");

-        log("Structural feature: transition: SIPClient.Canceling.initial-state-11->SIPClient.Canceling.Wait-20");

-        log("Structural feature: method: SIPClient.Cancel()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate32);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Canceling.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate33);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int,int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Canceling->SIPClient.Waiting Response-10");

-        log("Structural feature: state: SIPClient.Waiting Response");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate34);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int,int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Waiting Response->SIPClient.final-state-4-8");

-        log("Structural feature: method: SIPClient.Ack()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate35);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.final-state-4");

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate26 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate27 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "INVITE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := -1

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate28 :=

-    {

-        stepName := "SIPAppLib: StepFunction_init",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate29 :=

-    {

-        stepName := "SIPAppLib: StepFunction_handleINVITE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate30 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            1

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template UserInput UserInputTemplate31 :=

-    {

-        input1 := "cancel",

-        input2 := ""

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate32 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "CANCEL",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate33 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            5,

-2        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate34 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            38,

-4        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate35 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "ACK",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    /* Generated test case #5 */

-    testcase Test_Case_5() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicDefaultAlt());

-        log("Structural feature: method: main()");

-        log("Structural feature: method: SIPClient.SIPClient()");

-        log("Structural feature: method: SIPClient.run()");

-        log("Structural feature: state: SIPClient.initial-state-0");

-        log("Structural feature: transition: SIPClient.initial-state-0->SIPClient.Init-9");

-        log("Structural feature: state: SIPClient.Init");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate36);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Init->SIPClient.Calling-0");

-        log("Structural feature: method: SIPClient.Invite()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate37);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate38);

-        oldtimer := 0.0;

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate39);

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Calling");

-        log("Structural feature: state: SIPClient.Calling.initial-state-7");

-        log("Structural feature: transition: SIPClient.Calling.initial-state-7->SIPClient.Calling.Wait-16");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate40);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Calling->SIPClient.Ringing-1");

-        log("Structural feature: state: SIPClient.Ringing");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate41);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Ringing->SIPClient.Ready-2");

-        log("Structural feature: method: SIPClient.Ack()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate42);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Requirement: requirement: Acknowledge established call with ACK");

-        log("Structural feature: state: SIPClient.Ready");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate43);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Ready->SIPClient.Terminating-4");

-        log("Structural feature: state: SIPClient.Terminating");

-        log("Structural feature: state: SIPClient.Terminating.initial-state-9");

-        log("Structural feature: transition: SIPClient.Terminating.initial-state-9->SIPClient.Terminating.Wait-17");

-        log("Structural feature: method: SIPClient.Bye()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate44);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Terminating.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate45);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Terminating->SIPClient.final-state-5-5");

-        log("Requirement: requirement: Terminating/Wait for OK in response to BYE");

-        log("Structural feature: state: SIPClient.final-state-5");

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate36 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate37 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "INVITE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := -1

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate38 :=

-    {

-        stepName := "SIPAppLib: StepFunction_init",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate39 :=

-    {

-        stepName := "SIPAppLib: StepFunction_handleINVITE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate40 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            1

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate41 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            5

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate42 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "ACK",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template UserInput UserInputTemplate43 :=

-    {

-        input1 := "bye",

-        input2 := ""

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate44 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "BYE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate45 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            5

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    /* Generated test case #6 */

-    testcase Test_Case_6() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicDefaultAlt());

-        log("Structural feature: method: main()");

-        log("Structural feature: method: SIPClient.SIPClient()");

-        log("Structural feature: method: SIPClient.run()");

-        log("Structural feature: state: SIPClient.initial-state-0");

-        log("Structural feature: transition: SIPClient.initial-state-0->SIPClient.Init-9");

-        log("Structural feature: state: SIPClient.Init");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate46);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Init->SIPClient.Calling-0");

-        log("Structural feature: method: SIPClient.Invite()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate47);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate48);

-        oldtimer := 0.0;

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate49);

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Calling");

-        log("Structural feature: state: SIPClient.Calling.initial-state-7");

-        log("Structural feature: transition: SIPClient.Calling.initial-state-7->SIPClient.Calling.Wait-16");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate50);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Calling->SIPClient.Ringing-1");

-        log("Structural feature: state: SIPClient.Ringing");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate51);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Ringing->SIPClient.Canceling-12");

-        log("Structural feature: state: SIPClient.Canceling");

-        log("Structural feature: state: SIPClient.Canceling.initial-state-11");

-        log("Structural feature: transition: SIPClient.Canceling.initial-state-11->SIPClient.Canceling.Wait-20");

-        log("Structural feature: method: SIPClient.Cancel()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate52);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Canceling.Wait");

-        log("Structural feature: transition: SIPClient.Canceling.Wait->SIPClient.Canceling.junction-state-12-21");

-        log("Structural feature: method: SIPClient.Cancel()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate53);

-        harnessTimer.stop;

-        oldtimer := 0.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends CANCEL after E timeout");

-        log("Structural feature: state: SIPClient.Canceling.junction-state-12");

-        log("Structural feature: transition: SIPClient.Canceling.junction-state-12->SIPClient.Canceling.Wait-22");

-        log("Structural feature: state: SIPClient.Canceling.Wait");

-        log("Structural feature: transition: SIPClient.Canceling.Wait->SIPClient.Canceling.junction-state-12-21");

-        log("Structural feature: method: SIPClient.Cancel()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((1.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate54);

-        harnessTimer.stop;

-        oldtimer := 1.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends CANCEL after E timeout");

-        log("Structural feature: state: SIPClient.Canceling.junction-state-12");

-        log("Structural feature: transition: SIPClient.Canceling.junction-state-12->SIPClient.Canceling.Wait-22");

-        log("Structural feature: state: SIPClient.Canceling.Wait");

-        log("Structural feature: transition: SIPClient.Canceling.Wait->SIPClient.Canceling.junction-state-12-21");

-        log("Structural feature: method: SIPClient.Cancel()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((3.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate55);

-        harnessTimer.stop;

-        oldtimer := 3.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends CANCEL after E timeout");

-        log("Structural feature: state: SIPClient.Canceling.junction-state-12");

-        log("Structural feature: transition: SIPClient.Canceling.junction-state-12->SIPClient.Canceling.Wait-22");

-        log("Structural feature: state: SIPClient.Canceling.Wait");

-        log("Structural feature: transition: SIPClient.Canceling.Wait->SIPClient.Canceling.junction-state-12-21");

-        log("Structural feature: method: SIPClient.Cancel()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((7.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate56);

-        harnessTimer.stop;

-        oldtimer := 7.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends CANCEL after E timeout");

-        log("Structural feature: state: SIPClient.Canceling.junction-state-12");

-        log("Structural feature: transition: SIPClient.Canceling.junction-state-12->SIPClient.Canceling.Wait-22");

-        log("Structural feature: state: SIPClient.Canceling.Wait");

-        log("Structural feature: transition: SIPClient.Canceling->SIPClient.final-state-2-13");

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Terminates CANCEL cycle after F timeout");

-        log("Structural feature: method: SIPClient.TimeOut()");

-        harnessTimer.start((8.0 - oldtimer) + SLACK);

-        qtronic_receive_TimeOutIndication_from_userOut(TimeOutIndicationTemplate57);

-        harnessTimer.stop;

-        oldtimer := 8.0;

-        log("Structural feature: state: SIPClient.final-state-2");

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate46 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate47 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "INVITE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := -1

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate48 :=

-    {

-        stepName := "SIPAppLib: StepFunction_init",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate49 :=

-    {

-        stepName := "SIPAppLib: StepFunction_handleINVITE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate50 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            1

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template UserInput UserInputTemplate51 :=

-    {

-        input1 := "cancel",

-        input2 := ""

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate52 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "CANCEL",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate53 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "CANCEL",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate54 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "CANCEL",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate55 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "CANCEL",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate56 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "CANCEL",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template TimeOutIndication TimeOutIndicationTemplate57 :=

-    {

-        

-    }

-    /* Generated test case #7 */

-    testcase Test_Case_7() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicDefaultAlt());

-        log("Structural feature: method: main()");

-        log("Structural feature: method: SIPClient.SIPClient()");

-        log("Structural feature: method: SIPClient.run()");

-        log("Structural feature: state: SIPClient.initial-state-0");

-        log("Structural feature: transition: SIPClient.initial-state-0->SIPClient.Init-9");

-        log("Structural feature: state: SIPClient.Init");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate58);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Init->SIPClient.Calling-0");

-        log("Structural feature: method: SIPClient.Invite()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate59);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate60);

-        oldtimer := 0.0;

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate61);

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Calling");

-        log("Structural feature: state: SIPClient.Calling.initial-state-7");

-        log("Structural feature: transition: SIPClient.Calling.initial-state-7->SIPClient.Calling.Wait-16");

-        log("Structural feature: state: SIPClient.Calling.Wait");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate62);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Calling->SIPClient.Ringing-1");

-        log("Structural feature: state: SIPClient.Ringing");

-        qtronic_send_EPTF_MBT_TestStepRequest_to_fwIn(EPTF_MBT_TestStepRequestTemplate63);

-        oldtimer := 0.0;

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: method: SIPClient.incomingResponse(int)");

-        log("Structural feature: method: c_EPTF_MBT_TestStepRequest_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        log("Structural feature: method: f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int)");

-        log("Structural feature: transition: SIPClient.Ringing->SIPClient.Ready-2");

-        log("Structural feature: method: SIPClient.Ack()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate64);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Requirement: requirement: Acknowledge established call with ACK");

-        log("Structural feature: state: SIPClient.Ready");

-        qtronic_send_UserInput_to_userIn(UserInputTemplate65);

-        oldtimer := 0.0;

-        log("Structural feature: transition: SIPClient.Ready->SIPClient.Terminating-4");

-        log("Structural feature: state: SIPClient.Terminating");

-        log("Structural feature: state: SIPClient.Terminating.initial-state-9");

-        log("Structural feature: transition: SIPClient.Terminating.initial-state-9->SIPClient.Terminating.Wait-17");

-        log("Structural feature: method: SIPClient.Bye()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate66);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        log("Structural feature: state: SIPClient.Terminating.Wait");

-        log("Structural feature: transition: SIPClient.Terminating.Wait->SIPClient.Terminating.junction-state-10-18");

-        log("Structural feature: method: SIPClient.Bye()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((0.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate67);

-        harnessTimer.stop;

-        oldtimer := 0.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends BYE after E timeout");

-        log("Structural feature: state: SIPClient.Terminating.junction-state-10");

-        log("Structural feature: transition: SIPClient.Terminating.junction-state-10->SIPClient.Terminating.Wait-19");

-        log("Structural feature: state: SIPClient.Terminating.Wait");

-        log("Structural feature: transition: SIPClient.Terminating.Wait->SIPClient.Terminating.junction-state-10-18");

-        log("Structural feature: method: SIPClient.Bye()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((1.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate68);

-        harnessTimer.stop;

-        oldtimer := 1.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends BYE after E timeout");

-        log("Structural feature: state: SIPClient.Terminating.junction-state-10");

-        log("Structural feature: transition: SIPClient.Terminating.junction-state-10->SIPClient.Terminating.Wait-19");

-        log("Structural feature: state: SIPClient.Terminating.Wait");

-        log("Structural feature: transition: SIPClient.Terminating.Wait->SIPClient.Terminating.junction-state-10-18");

-        log("Structural feature: method: SIPClient.Bye()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((3.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate69);

-        harnessTimer.stop;

-        oldtimer := 3.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends BYE after E timeout");

-        log("Structural feature: state: SIPClient.Terminating.junction-state-10");

-        log("Structural feature: transition: SIPClient.Terminating.junction-state-10->SIPClient.Terminating.Wait-19");

-        log("Structural feature: state: SIPClient.Terminating.Wait");

-        log("Structural feature: transition: SIPClient.Terminating.Wait->SIPClient.Terminating.junction-state-10-18");

-        log("Structural feature: method: SIPClient.Bye()");

-        log("Structural feature: method: c_EPTF_MBT_TestStepResponse_empty()");

-        log("Structural feature: method: c_EPTF_FsmAddr_empty()");

-        harnessTimer.start((7.500000000 - oldtimer) + SLACK);

-        qtronic_receive_EPTF_MBT_TestStepResponse_from_fwOut(EPTF_MBT_TestStepResponseTemplate70);

-        harnessTimer.stop;

-        oldtimer := 7.500000000;

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Resends BYE after E timeout");

-        log("Structural feature: state: SIPClient.Terminating.junction-state-10");

-        log("Structural feature: transition: SIPClient.Terminating.junction-state-10->SIPClient.Terminating.Wait-19");

-        log("Structural feature: state: SIPClient.Terminating.Wait");

-        log("Structural feature: transition: SIPClient.Terminating->SIPClient.final-state-1-11");

-        log("Requirement: requirement: 17.1.2.2 Non-INVITE timers/Terminates BYE cycle after F timeout");

-        log("Structural feature: method: SIPClient.TimeOut()");

-        harnessTimer.start((8.0 - oldtimer) + SLACK);

-        qtronic_receive_TimeOutIndication_from_userOut(TimeOutIndicationTemplate71);

-        harnessTimer.stop;

-        oldtimer := 8.0;

-        log("Structural feature: state: SIPClient.final-state-1");

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate58 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate59 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "INVITE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := -1

-        }

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate60 :=

-    {

-        stepName := "SIPAppLib: StepFunction_init",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate61 :=

-    {

-        stepName := "SIPAppLib: StepFunction_handleINVITE",

-        stepArgs := {

-            

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate62 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            1

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepRequest EPTF_MBT_TestStepRequestTemplate63 :=

-    {

-        stepName := "SIPAppLib: StepFunction_createResponse",

-        stepArgs := {

-            5

-        },

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        },

-        lock := -1

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate64 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "ACK",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template UserInput UserInputTemplate65 :=

-    {

-        input1 := "bye",

-        input2 := ""

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate66 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "BYE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate67 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "BYE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate68 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "BYE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate69 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "BYE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template EPTF_MBT_TestStepResponse EPTF_MBT_TestStepResponseTemplate70 :=

-    {

-        bName := "Behavior_SIP",

-        iName := "BYE",

-        addr := {

-            entityGroupName := "MBT_EntityType",

-            eIdx := 0,

-            fIdx := 0

-        }

-    }

-    template TimeOutIndication TimeOutIndicationTemplate71 :=

-    {

-        

-    }

-    control

-    {

-        execute(Test_Case_1());

-        execute(Test_Case_2());

-        execute(Test_Case_3());

-        execute(Test_Case_4());

-        execute(Test_Case_5());

-        execute(Test_Case_6());

-        execute(Test_Case_7());

-    }

-}

diff --git a/demo/direct/MBT_Qtronic_Types.ttcn b/demo/direct/MBT_Qtronic_Types.ttcn
deleted file mode 100644
index b721553..0000000
--- a/demo/direct/MBT_Qtronic_Types.ttcn
+++ /dev/null
@@ -1,71 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_Types.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-10-01

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-

-/* -*- ttcn3 -*- */

-

-/** @file C:\Users\eantwuh\workspace\SIPsim\MBT_Qtronic_Types.ttcn

- *

- * @author Conformiq TTCN3 Script Backend 0.1

- * @date Thu Sep 30 14:15:29 CEST 2010

- *

- * WARNING! This file has been automatically generated using

- * Ericsson Qtronic TTCN3 Script Backend (based on the original Conformiq Backend).DO NOT EDIT.

- */

-

-module MBT_Qtronic_Types

-{

-    /* User provided imports begin */

-    import from MBT_Qtronic_Demo all; import from EPTF_MBT_LGen_Definitions all;

-    /* User provided imports end */

-    type port userInPort message

-    {

-        inout UserInput;

-    } with {extension "internal"}

-    type port userOutPort message

-    {

-        inout TimeOutIndication;

-    } with {extension "internal"}

-    type record SIPReq

-    {

-        charstring op,

-        charstring param_

-    }

-    type record SIPResp

-    {

-        integer status,

-        charstring cseq

-    }

-    type record UserInput

-    {

-        charstring input1,

-        charstring input2

-    }

-    type record AnyRecord

-    {

-        

-    }

-    type record TimeOutIndication

-    {

-        

-    }

-    type component Qtronic_CT extends MBT_Qtronic_Demo_Main_CT

-    {

-        port userInPort userIn;

-        port userOutPort userOut;

-        timer harnessTimer := 0.0;

-    }

-}

diff --git a/demo/direct/model/EPTF_MBT_Framework.java b/demo/direct/model/EPTF_MBT_Framework.java
deleted file mode 100644
index bd2b266..0000000
--- a/demo/direct/model/EPTF_MBT_Framework.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/* ====================================================

- * MBT Applib API

- */

-

-record EPTF_MBT_TestStepRequest 

-{

-  public String 	stepName;

-  int[]  			stepArgs;

-  EPTF_FsmAddr      addr;

-  int				lock;

-}

-

-EPTF_MBT_TestStepRequest c_EPTF_MBT_TestStepRequest_empty()

-{

-	EPTF_MBT_TestStepRequest ret;

-	ret.stepName = "";

-	ret.stepArgs = {};

-	ret.addr = c_EPTF_FsmAddr_empty();

-	ret.lock = -1;

-	return ret;

-};

-

-record EPTF_MBT_TestStepResponse 

-{

-  public String	bName;

-  public String	iName;

-  EPTF_FsmAddr  addr;

-}

-

-EPTF_MBT_TestStepResponse c_EPTF_MBT_TestStepResponse_empty()

-{

-	EPTF_MBT_TestStepResponse ret;

-	ret.bName = "";

-	ret.iName = "";

-	ret.addr = c_EPTF_FsmAddr_empty();

-	return ret;

-};

-

-record EPTF_FsmAddr

-{

-  public String entityGroupName;

-  public int	eIdx;

-  public int	fIdx;

-}

-

-EPTF_FsmAddr c_EPTF_FsmAddr_empty()

-{

-	EPTF_FsmAddr ret;

-	ret.entityGroupName = "MBT_EntityType";

-	ret.eIdx = 0;

-	ret.fIdx = 0;

-	return ret;

-};

-

-record EPTF_IntegerList {}

diff --git a/demo/direct/model/EPTF_MBT_SIP_Applib.java b/demo/direct/model/EPTF_MBT_SIP_Applib.java
deleted file mode 100644
index 8df3b39..0000000
--- a/demo/direct/model/EPTF_MBT_SIP_Applib.java
+++ /dev/null
@@ -1,30 +0,0 @@
-String c_SIP_Behavior = "Behavior_SIP";

-    

-// Events

-String c_SIP_eventName_INVITE = "INVITE";

-String c_SIP_eventName_CANCEL = "CANCEL";

-String c_SIP_eventName_ACK = "ACK";

-String c_SIP_eventName_BYE = "BYE";

-String c_SIP_eventName_RetransmittedRequest = "Retransmitted request";

-

-// TestSteps

-String c_SIP_stepFunction_createResponse = "SIPAppLib: StepFunction_createResponse";

-String c_SIP_stepFunction_createBYE = "SIPAppLib: StepFunction_createBYE";

-String c_SIP_stepFunction_init = "SIPAppLib: StepFunction_init";

-String c_SIP_stepFunction_handleINVITE = "SIPAppLib: StepFunction_handleINVITE";

-        

-// Methods

-int c_SIP_Method_CANCEL = 2;

-int c_SIP_Method_INVITE = 4;

-    

-int f_EPTF_SIP_mapAnswerCode2SipTemplateCode(int p_answerCode)

-{

-  	if (p_answerCode == 180)

-   		return 1;

-   	else if (p_answerCode == 486)

-   		return 37;

-   	else if (p_answerCode == 200)

-   		return 5;

-   	else if (p_answerCode == 487)

-   		return 38;

-}
\ No newline at end of file
diff --git a/demo/direct/model/SIPClient.java b/demo/direct/model/SIPClient.java
deleted file mode 100644
index 0e0330f..0000000
--- a/demo/direct/model/SIPClient.java
+++ /dev/null
@@ -1,185 +0,0 @@
-system

-{

-    Inbound  userIn  : UserInput;

-    Outbound userOut : TimeOutIndication;

-	Inbound  fwIn	 : EPTF_MBT_TestStepRequest;

-	Outbound fwOut	 : EPTF_MBT_TestStepResponse;

-}

-

-/* ====================================================

- * Message Definitions

- */

-record TimeOutIndication { }

-

-record UserInput

-{

-    public String input1;

-    public String input2;

-}

-

-record SIPResp

-{

-    public int status;

-    public String cseq;

-}

-

-record SIPReq

-{

-    public String op;

-    public String param;

-}

-

-

-/* ====================================================

- * SIPClient

- */

-

-class SIPClient extends StateMachine {

-

-    const  float T1 = 0.5;		// For UDP transport

-

-    public float timeoutA = T1;		// 17.1.1.2

-    public float timeoutB = 16 * T1;	// 17.1.1.2

-    public float timeoutE = T1;		// 17.1.2.2

-    public float timeoutF = 16 * T1;	// 17.1.2.2

-    

-    public boolean initialized = false;

-

-

-    /* -----------------------------------------

-     * SIP addresses

-     * src = caller, dst = callee

-     */

-

-    public String src = "sip:127.0.0.1";

-    public String dst = "sip:127.0.0.1:5061";

-    

-    /* -----------------------------------------

-     * Methods to send SIP messages to network.

-     */

-    

-    public EPTF_MBT_TestStepRequest incomingRequest(String p_stepName)

-    {

-    	EPTF_MBT_TestStepRequest r = c_EPTF_MBT_TestStepRequest_empty();

-    	r.stepName = p_stepName;

-    	r.stepArgs = {};

-    	r.addr.entityGroupName = "MBT_EntityType";

-    	r.addr.eIdx = 0;

-    	r.addr.fIdx = 0; 

-    	

-    	return r;

-    }

-    

-    public EPTF_MBT_TestStepRequest incomingResponse(int p_answerCode)

-    {

-    	EPTF_MBT_TestStepRequest r = c_EPTF_MBT_TestStepRequest_empty();

-    	r.stepName = c_SIP_stepFunction_createResponse;

-    	r.stepArgs = {f_EPTF_SIP_mapAnswerCode2SipTemplateCode(p_answerCode)};

-    	r.addr.entityGroupName = "MBT_EntityType";

-    	r.addr.eIdx = 0;

-    	r.addr.fIdx = 0; 

-    	

-    	return r;

-    }

-    

-    public EPTF_MBT_TestStepRequest incomingResponse(int p_answerCode, int p_methodCode)

-    {

-    	EPTF_MBT_TestStepRequest r = c_EPTF_MBT_TestStepRequest_empty();

-    	r.stepName = c_SIP_stepFunction_createResponse;

-    	r.stepArgs = {f_EPTF_SIP_mapAnswerCode2SipTemplateCode(p_answerCode), p_methodCode};

-    	r.addr.entityGroupName = "MBT_EntityType";

-    	r.addr.eIdx = 0;

-    	r.addr.fIdx = 0; 

-    	

-    	return r;

-    }

-    

-    public void Invite() {

-    	EPTF_MBT_TestStepResponse r = c_EPTF_MBT_TestStepResponse_empty();

-        r.bName = c_SIP_Behavior;

-        r.iName = c_SIP_eventName_INVITE;

-        r.addr.fIdx = -1;

-        fwOut.send(r, 1.0);

-        

-        if (!initialized)

-        {

-	        EPTF_MBT_TestStepRequest req = c_EPTF_MBT_TestStepRequest_empty();;

-	    	req.stepName = c_SIP_stepFunction_init;

-	    	req.stepArgs = {};

-	    	req.addr.entityGroupName = "MBT_EntityType";

-	    	req.addr.eIdx = 0;

-	    	req.addr.fIdx = 0; 

-	    	AnyRecord a = fwIn.receive();

-	    	require a == req;

-	    	

-	    	req.stepName = c_SIP_stepFunction_handleINVITE;

-	    	req.stepArgs = {};

-	    	req.addr.entityGroupName = "MBT_EntityType";

-	    	req.addr.eIdx = 0;

-	    	req.addr.fIdx = 0; 

-	    	a = fwIn.receive();

-	    	require a == req;

-	    	

-	    	initialized = true;

-        }

-    }

-

-    protected void Cancel() {

-    	EPTF_MBT_TestStepResponse r = c_EPTF_MBT_TestStepResponse_empty();

-        r.bName = c_SIP_Behavior;

-        r.iName = c_SIP_eventName_CANCEL;

-        fwOut.send(r, 1.0);

-    }

-

-    protected void Ack() {

-    	EPTF_MBT_TestStepResponse r = c_EPTF_MBT_TestStepResponse_empty();

-        r.bName = c_SIP_Behavior;

-        r.iName = c_SIP_eventName_ACK;

-        fwOut.send(r, 1.0);

-    }

-

-    protected void Bye() {

-    	EPTF_MBT_TestStepResponse r = c_EPTF_MBT_TestStepResponse_empty();

-        r.bName = c_SIP_Behavior;

-        r.iName = c_SIP_eventName_BYE;

-        fwOut.send(r, 1.0);

-    }

-    

-    protected void RetransmittedRequest()

-    {

-    	EPTF_MBT_TestStepResponse r = c_EPTF_MBT_TestStepResponse_empty();

-        r.bName = c_SIP_Behavior;

-        r.iName = c_SIP_eventName_RetransmittedRequest;

-        fwOut.send(r, 1.0);

-    }

-

-    protected void SendOK(String cseq) {

-    	EPTF_MBT_TestStepResponse r = c_EPTF_MBT_TestStepResponse_empty();

-        r.bName = c_SIP_Behavior;

-        r.iName = "200";

-        fwOut.send(r, 1.0);

-    }

-

-

-    /* -----------------------------------------

-     * Methods to provide indications to the

-     * user interface.

-     */

-    private void TimeOut()

-    {

-        // Indicate timeout

-        TimeOutIndication timeout;

-        userOut.send(timeout);

-    }

-}

-

-

-/* ====================================================

- * main() - Starting Point

- */

-

-void main()

-{

-    var a = new SIPClient();

-    a.start();

-}
\ No newline at end of file
diff --git a/demo/direct/model/SIPClient.xmi b/demo/direct/model/SIPClient.xmi
deleted file mode 100644
index 976f300..0000000
--- a/demo/direct/model/SIPClient.xmi
+++ /dev/null
@@ -1,326 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

-<n1:Project xmlns:n1="http://www.conformiq.com/EMF/SimpleStatechart" xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

-

-  <statemachine name="SIPClient">

-    <transitions body="userIn:UserInput&#xA;[msg.input1==&quot;invite&quot; &amp;&amp; msg.input2==dst]&#xA;/&#xA;Invite();" from="//@statemachine.0/@states.0" to="//@statemachine.0/@states.1"/>

-    <transitions body="fwIn:EPTF_MBT_TestStepRequest&#xA;[msg==incomingResponse(180)]/&#xA;require true;" from="//@statemachine.0/@states.1" to="//@statemachine.0/@states.12"/>

-    <transitions body="fwIn:EPTF_MBT_TestStepRequest&#xA;[msg == incomingResponse(200)]&#xA;/Ack();&#xA;requirement &quot;Acknowledge established call with ACK&quot;;" from="//@statemachine.0/@states.12" to="//@statemachine.0/@states.2"/>

-    <transitions body="after(timeoutB)/&#xA;requirement &quot;17.1.1.2 INVITE timers/Terminates INVITE cycle after B timeout&quot;;&#xA;TimeOut();" from="//@statemachine.0/@states.1" to="//@statemachine.0/@states.5"/>

-    <transitions body="userIn:UserInput&#xA;[msg.input1==&quot;bye&quot;]/" from="//@statemachine.0/@states.2" to="//@statemachine.0/@states.3"/>

-    <transitions body="fwIn:EPTF_MBT_TestStepRequest&#xA;[msg==incomingResponse(200)]/&#xA;requirement &quot;Terminating/Wait for OK in response to BYE&quot;;" from="//@statemachine.0/@states.3" to="//@statemachine.0/@states.10"/>

-    <transitions body="fwIn:EPTF_MBT_TestStepRequest&#xA;[msg==incomingRequest(c_SIP_stepFunction_createBYE)]&#xA;/SendOK(&quot;BYE&quot;);&#xA;requirement &quot;Terminating/Send OK in response to BYE&quot;;" from="//@statemachine.0/@states.2" to="//@statemachine.0/@states.8"/>

-    <transitions body="fwIn:EPTF_MBT_TestStepRequest&#xA;[msg==incomingResponse(486)]&#xA;/Ack();" from="//@statemachine.0/@states.12" to="//@statemachine.0/@states.11"/>

-    <transitions body="fwIn:EPTF_MBT_TestStepRequest&#xA;[msg==incomingResponse(487, c_SIP_Method_INVITE)]&#xA;/&#xA;Ack();" from="//@statemachine.0/@states.13" to="//@statemachine.0/@states.9"/>

-    <transitions body="/ setThreadName(&quot;SIP UAC&quot;);" from="//@statemachine.0/@states.4" to="//@statemachine.0/@states.0"/>

-    <transitions body="fwIn:EPTF_MBT_TestStepRequest&#xA;[msg==incomingResponse(200, c_SIP_Method_CANCEL)]&#xA;/" from="//@statemachine.0/@states.6" to="//@statemachine.0/@states.13"/>

-    <transitions body="after(timeoutF)/&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Terminates BYE cycle after F timeout&quot;;&#xA;TimeOut();" from="//@statemachine.0/@states.3" to="//@statemachine.0/@states.5"/>

-    <transitions body="userIn:UserInput&#xA;[msg.input1==&quot;cancel&quot;]/" from="//@statemachine.0/@states.12" to="//@statemachine.0/@states.6"/>

-    <transitions body="after(timeoutF)/&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Terminates CANCEL cycle after F timeout&quot;;&#xA;TimeOut();" from="//@statemachine.0/@states.6" to="//@statemachine.0/@states.7"/>

-    <states internal="" name="Init" xsi:type="n1:BasicState"/>

-    <states internal="" name="Calling" xsi:type="n1:BasicState">

-      <transitions body="after(timeoutA)/&#xA;//Invite();&#xA;RetransmittedRequest();&#xA;timeoutA = timeoutA * 2.0;&#xA;requirement &quot;17.1.1.2 INVITE timers/Resends INVITE after A timeout&quot;;" from="//@statemachine.0/@states.1/@states.1" to="//@statemachine.0/@states.1/@states.2"/>

-      <transitions body="" from="//@statemachine.0/@states.1/@states.2" to="//@statemachine.0/@states.1/@states.1"/>

-      <transitions body="/timeoutA = T1;" from="//@statemachine.0/@states.1/@states.0" to="//@statemachine.0/@states.1/@states.1"/>

-      <states xsi:type="n1:InitialState"/>

-      <states internal="" name="Wait" xsi:type="n1:BasicState"/>

-      <states xsi:type="n1:Junction"/>

-    </states>

-    <states internal="" name="Ready" xsi:type="n1:BasicState"/>

-    <states internal="" name="Terminating" xsi:type="n1:BasicState">

-      <transitions body="/Bye();&#xA;timeoutE = T1;" from="//@statemachine.0/@states.3/@states.0" to="//@statemachine.0/@states.3/@states.1"/>

-      <transitions body="after(timeoutE)/&#xA;Bye();&#xA;//RetransmittedRequest();&#xA;timeoutE = timeoutE * 2.0;&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Resends BYE after E timeout&quot;;" from="//@statemachine.0/@states.3/@states.1" to="//@statemachine.0/@states.3/@states.2"/>

-      <transitions body="" from="//@statemachine.0/@states.3/@states.2" to="//@statemachine.0/@states.3/@states.1"/>

-      <states xsi:type="n1:InitialState"/>

-      <states internal="" name="Wait" xsi:type="n1:BasicState"/>

-      <states xsi:type="n1:Junction"/>

-    </states>

-    <states xsi:type="n1:InitialState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states internal="" name="Canceling" xsi:type="n1:BasicState">

-      <transitions body="/Cancel();&#xA;timeoutE = T1;" from="//@statemachine.0/@states.6/@states.0" to="//@statemachine.0/@states.6/@states.1"/>

-      <transitions body="after(timeoutE)/&#xA;Cancel();&#xA;timeoutE = timeoutE * 2.0;&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Resends CANCEL after E timeout&quot;;" from="//@statemachine.0/@states.6/@states.1" to="//@statemachine.0/@states.6/@states.2"/>

-      <transitions body="" from="//@statemachine.0/@states.6/@states.2" to="//@statemachine.0/@states.6/@states.1"/>

-      <states xsi:type="n1:InitialState"/>

-      <states internal="" name="Wait" xsi:type="n1:BasicState"/>

-      <states xsi:type="n1:Junction"/>

-    </states>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states internal="" name="Ringing" xsi:type="n1:BasicState"/>

-    <states internal="" name="Waiting Response" xsi:type="n1:BasicState"/>

-  </statemachine>

-

-  <diagrams statemachine="//@statemachine.0">

-    <items height="50" state="//@statemachine.0/@states.0" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-600" y="-300"/>

-    </items>

-    <items height="50" state="//@statemachine.0/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-603" y="-102"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.2" width="200" xsi:type="n1:DiagramBasicState">

-      <location x="100" y="150"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.3" width="150" xsi:type="n1:DiagramBasicState">

-      <location x="-250" y="250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-540" y="-176"/>

-      <route x="-550" y="-250"/>

-      <route x="-550" y="-102"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-314.5" y="-78"/>

-      <route x="-503" y="-77"/>

-      <route x="-100" y="-77"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="0" x="417.917" y="3.888"/>

-      <route x="0" y="0"/>

-      <route x="200" y="0"/>

-      <route x="200" y="150"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.3" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-540" y="112.953"/>

-      <route x="-550" y="-52"/>

-      <route x="-550" y="277.906"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.4" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="0" x="-15.5" y="216"/>

-      <route x="100" y="200"/>

-      <route x="-175" y="200"/>

-      <route x="-175" y="250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.5" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-172" y="416"/>

-      <route x="-182" y="350"/>

-      <route x="-182" y="482"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.6" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="210" y="315"/>

-      <route x="200" y="250"/>

-      <route x="200" y="380"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.7" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-228" y="21"/>

-      <route x="-100" y="50"/>

-      <route x="-330" y="50"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.8" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="685" y="202.5"/>

-      <route x="675" y="150"/>

-      <route x="675" y="255"/>

-    </items>

-    <items state="//@statemachine.0/@states.4" xsi:type="n1:DiagramInitialState">

-      <location x="-550" y="-350"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.9" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-540" y="-315"/>

-      <route x="-550" y="-330"/>

-      <route x="-550" y="-300"/>

-    </items>

-    <items state="//@statemachine.0/@states.5" xsi:type="n1:DiagramFinalState">

-      <location x="-550" y="297.906"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.10" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="685" y="25"/>

-      <route x="675" y="-50"/>

-      <route x="675" y="100"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.11" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-425.57" y="400.906"/>

-      <route x="-250" y="298.763"/>

-      <route x="-530" y="297.963"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.6" width="150" xsi:type="n1:DiagramBasicState">

-      <location x="600" y="-150"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.12" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="300" y="-87.5"/>

-      <route x="0" y="-77.5"/>

-      <route x="600" y="-77.5"/>

-    </items>

-    <items state="//@statemachine.0/@states.7" xsi:type="n1:DiagramFinalState">

-      <location x="675" y="-275.13"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.13" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="536.844" y="-195.261"/>

-      <route x="675" y="-150"/>

-      <route x="675" y="-255.13"/>

-    </items>

-    <items state="//@statemachine.0/@states.8" xsi:type="n1:DiagramFinalState">

-      <location x="200" y="400"/>

-    </items>

-    <items state="//@statemachine.0/@states.9" xsi:type="n1:DiagramFinalState">

-      <location x="675" y="275"/>

-    </items>

-    <items state="//@statemachine.0/@states.10" xsi:type="n1:DiagramFinalState">

-      <location x="-182" y="502"/>

-    </items>

-    <items state="//@statemachine.0/@states.11" xsi:type="n1:DiagramFinalState">

-      <location x="-350" y="50"/>

-    </items>

-    <items height="250" state="//@statemachine.0/@states.12" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-100" y="-150"/>

-    </items>

-    <items height="50" state="//@statemachine.0/@states.13" width="150" xsi:type="n1:DiagramBasicState">

-      <location x="600" y="100"/>

-    </items>

-    <items height="120" note="Triggered by user action, send INVITE request. (We are initiating a new call.)" width="161" xsi:type="n1:DiagramNote">

-      <location x="-838" y="-142"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.1" note="//@diagrams.0/@items.28" xsi:type="n1:DiagramNoteConnector">

-      <route x="-677" y="-77"/>

-      <route x="-603" y="-77"/>

-    </items>

-    <items height="76" note="21.1.2 180 Ringing&#xA;waiting for other end to answer" width="174" xsi:type="n1:DiagramNote">

-      <location x="-100" y="-300"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.26" note="//@diagrams.0/@items.30" xsi:type="n1:DiagramNoteConnector">

-      <route x="-50" y="-224"/>

-      <route x="-50" y="-150"/>

-    </items>

-    <items height="131" note="It is ringing, but we want to cancel (hang-up) before other end answers" width="169" xsi:type="n1:DiagramNote">

-      <location x="250" y="-321"/>

-    </items>

-    <items autolayout="false" note="//@diagrams.0/@items.32" xsi:type="n1:DiagramNoteConnector">

-      <route x="327" y="-190"/>

-      <route x="327" y="-80"/>

-    </items>

-    <items height="84" note="Now we can speak with other end" width="143" xsi:type="n1:DiagramNote">

-      <location x="-35" y="275"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.2" note="//@diagrams.0/@items.34" xsi:type="n1:DiagramNoteConnector">

-      <route x="88" y="275"/>

-      <route x="120" y="250"/>

-    </items>

-    <items height="66" note="21.4.24 486 Busy Here&#xA;Callee rejects call" width="179" xsi:type="n1:DiagramNote">

-      <location x="-536" y="-44"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.25" note="//@diagrams.0/@items.36" xsi:type="n1:DiagramNoteConnector">

-      <route x="-377" y="22"/>

-      <route x="-363.883" y="35.6031"/>

-    </items>

-    <items height="52" note="2.1.4.25 487 Request Terminated&#xA;call is now terminated" width="257" xsi:type="n1:DiagramNote">

-      <location x="370" y="168"/>

-    </items>

-    <items autolayout="false" note="//@diagrams.0/@items.38" xsi:type="n1:DiagramNoteConnector">

-      <route x="627" y="200"/>

-      <route x="675" y="202"/>

-    </items>

-    <items height="69" note="Paragraph numbers in comments and requiremnts refer to RFC 3261 SIP: Session Initiation Protocol" width="307" xsi:type="n1:DiagramNote">

-      <location x="-238" y="-433"/>

-    </items>

-  </diagrams>

-

-  <diagrams substate="//@statemachine.0/@states.3">

-    <items state="//@statemachine.0/@states.3/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="-1200" y="-200"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.3/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-1000" y="-250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.3/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-1090" y="-210"/>

-      <route x="-1180" y="-200"/>

-      <route x="-1000" y="-200"/>

-    </items>

-    <items state="//@statemachine.0/@states.3/@states.2" xsi:type="n1:DiagramJunction">

-      <location x="-599" y="-64"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.3/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="-94" constraintLeft="-880" valign="0" x="-749.5" y="-190"/>

-      <route x="-900" y="-200"/>

-      <route x="-599" y="-200"/>

-      <route x="-599" y="-74"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.3/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintRight="-629" constraintTop="-130" valign="1" x="-779.5" y="-74"/>

-      <route x="-609" y="-64"/>

-      <route x="-950" y="-64"/>

-      <route x="-950" y="-150"/>

-    </items>

-    <items height="150" note="Re-send BYE message after time-out and increase value of timer E according to RFC 3261 17.1.2 Non-INVITE Client Transaction." width="350" xsi:type="n1:DiagramNote">

-      <location x="-1100" y="-50"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.1/@items.3" note="//@diagrams.1/@items.6" xsi:type="n1:DiagramNoteConnector">

-      <route x="-750" y="-30"/>

-      <route x="-608.756" y="-61.8033"/>

-    </items>

-  </diagrams>

-

-  <diagrams selected="//@diagrams.2/@items.2" substate="//@statemachine.0/@states.1">

-    <items state="//@statemachine.0/@states.1/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="-1200" y="-300"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.1/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-1000" y="-350"/>

-    </items>

-    <items state="//@statemachine.0/@states.1/@states.2" xsi:type="n1:DiagramJunction">

-      <location x="-613" y="-163"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.1/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="-193" constraintLeft="-880" valign="0" x="-756.5" y="-290"/>

-      <route x="-900" y="-300"/>

-      <route x="-613" y="-300"/>

-      <route x="-613" y="-173"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.1/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintRight="-643" constraintTop="-230" valign="1" x="-786.5" y="-173"/>

-      <route x="-623" y="-163"/>

-      <route x="-950" y="-163"/>

-      <route x="-950" y="-250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.1/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-1090" y="-310"/>

-      <route x="-1180" y="-300"/>

-      <route x="-1000" y="-300"/>

-    </items>

-    <items height="150" note="Re-send INVITE message after time-out and increase value of timer A according to RFC 3261 17.1.1 INVITE Client Transaction." width="350" xsi:type="n1:DiagramNote">

-      <location x="-1100" y="-150"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.2/@items.2" note="//@diagrams.2/@items.6" xsi:type="n1:DiagramNoteConnector">

-      <route x="-750" y="-130"/>

-      <route x="-622.722" y="-160.658"/>

-    </items>

-  </diagrams>

-

-  <diagrams selected="//@diagrams.3/@items.3" substate="//@statemachine.0/@states.6">

-    <items state="//@statemachine.0/@states.6/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="-1300" y="-300"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.6/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-1100" y="-350"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.6/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-1190" y="-310"/>

-      <route x="-1280" y="-300"/>

-      <route x="-1100" y="-300"/>

-    </items>

-    <items state="//@statemachine.0/@states.6/@states.2" xsi:type="n1:DiagramJunction">

-      <location x="-698" y="-179"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.6/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="-209" constraintLeft="-980" valign="0" x="-849" y="-290"/>

-      <route x="-1000" y="-300"/>

-      <route x="-698" y="-300"/>

-      <route x="-698" y="-189"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.6/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintRight="-728" constraintTop="-230" valign="1" x="-879" y="-189"/>

-      <route x="-708" y="-179"/>

-      <route x="-1050" y="-179"/>

-      <route x="-1050" y="-250"/>

-    </items>

-    <items height="150" note="Re-send CANCEL message after time-out and increase value of timer E according to RFC 3261 17.1.2 Non-INVITE Client Transaction." width="350" xsi:type="n1:DiagramNote">

-      <location x="-1200" y="-150"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.3/@items.3" note="//@diagrams.3/@items.6" xsi:type="n1:DiagramNoteConnector">

-      <route x="-850" y="-130"/>

-      <route x="-707.518" y="-175.932"/>

-    </items>

-  </diagrams>

-

-</n1:Project>

diff --git a/demo/ggsn/MBT_Qtronic_Demo.cfg b/demo/ggsn/MBT_Qtronic_Demo.cfg
deleted file mode 100644
index aea2253..0000000
--- a/demo/ggsn/MBT_Qtronic_Demo.cfg
+++ /dev/null
@@ -1,181 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2009                           //
-//                                                                           //
-// The copyright to the computer  program(s) herein  is the property of TCC. //
-// The program(s) may be used and/or copied only with the written permission //
-// of TCC or in accordance with  the terms and conditions  stipulated in the //
-// agreement/contract under which the program(s) have been supplied          //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_Qtronic_Demo.cfg
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 659
-//  Updated:  2010-10-01
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-[DEFINE]
-//num_entities := 1
-//Number of simulated entities
-
-[LOGGING]
-ConsoleMask := TTCN_ERROR | TTCN_STATISTICS | TTCN_ACTION | TTCN_WARNING
-#FileMask := LOG_ALL | TTCN_DEBUG | TTCN_USER | TTCN_PORTEVENT
-FileMask := TTCN_USER | TTCN_ERROR | TTCN_WARNING
-#FileMask := ERROR | STATISTICS | PARALLEL | ACTION | WARNING
-#LogFile := "%l/%e.%h-%t%r.%s"
-LogEntityName := Yes
-LogEventTypes := Yes//Subcategories;
-SourceInfoFormat := Stack
-
-[TESTPORT_PARAMETERS]
-//*.*.debug := "YES";
-
-[MODULE_PARAMETERS]
-
-
-/////////////////////////////////////////////////
-// Logging settings
-/////////////////////////////////////////////////
-tsp_Mapper_enableDebug := false;
-
-tsp_debug_EPTF_SchedulerFunctions := false;
-tsp_debugVerbose_EPTF_SchedulerFunctions := false;
-
-tsp_EPTF_LGenBaseDebugTraffic := false;
-tsp_EPTF_LGenBaseDebug := false;
-
-tsp_EPTF_MBT_LGen_debug := false;
-
-tsp_EPTF_GTP_loggingEnable := false;
-tsp_EPTF_GTP_Transport_loggingDebug := false;
-tsp_EPTF_GTP_Transport_loggingIO := true;
-
-tsp_EPTF_LANL2_loggingEnable := false;
-tsp_EPTF_LANL2_Transport_loggingEnable := false;
-
-/////////////////////////////////////////////////
-// GTP settings
-/////////////////////////////////////////////////
-#tsp_EPTF_GTP_localIP := "127.0.0.1";
-tsp_EPTF_GTP_localIP := "10.160.46.161";
-tsp_EPTF_GTP_localControlPort := 2123;
-tsp_EPTF_GTP_localDataPort := 2152;
-
-#tsp_EPTF_GTP_remoteIP := "127.0.0.1";
-tsp_EPTF_GTP_remoteIP := "10.161.46.161";
-tsp_EPTF_GTP_remoteControlPort := 2123;
-tsp_EPTF_GTP_remoteDataPort := 2152;
-
-/////////////////////////////////////////////////
-// LANL2 settings
-/////////////////////////////////////////////////
-tsp_EPTF_LANL2_connectionInfoList :=
-{
-  {
-    locHost := "10.160.46.1",
-    locPort := 40000,
-    remHost := "20.46.0.2",
-    remPort := 50000,
-    proto := udp,
-    payload := '00000000'O
-  }  
-}
-
-tsp_EPTF_LANL2_Transport_srcMacAddr := '18a9053b9b32'O
-tsp_EPTF_LANL2_Transport_dstMacAddr := '001db55bcff0'O //'002159b2dff0'O
-
-/////////////////////////////////////////////////
-// TELNET settings
-/////////////////////////////////////////////////
-tsp_EPTF_TELNET_remoteHost:="10.132.1.220"
-tsp_EPTF_TELNET_remotePort := 23;
-tsp_EPTF_TELNET_localHost:="10.132.250.26"
-tsp_EPTF_TELNET_localPort:= 60201
-  
-tsp_EPTF_TELNET_loggingEnable := true;
-tsp_EPTF_TELNET_Transport_loggingEnable := true;
-  
-tsp_EPTF_TELNET_Transport_loginSkipped := false
-tsp_EPTF_TELNET_Transport_userName := "erv"
-tsp_EPTF_TELNET_Transport_password := "ggsn"
-  
-//tsp_EPTF_TELNET_Transport_PlayListDB := {{{msg:="echo me",resp:=omit}}};
-tsp_EPTF_TELNET_PlayListDB := {{
-    {msg:="show chassis hardware\n",resp:="*j20-46-[01][>] "}
-    //,{msg:="op tc_2589_33_Dynamic_filter_rules_over_Gx_shall_be_ignored\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="show services ggsn apn | match ""apn.*.com {""\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="set services ggsn apn apn1.com pdp-context creation blocked\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="set services ggsn apn apn2.com pdp-context creation blocked\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="set services ggsn apn apn3.com pdp-context creation blocked\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="set services ggsn apn apn4.com pdp-context creation blocked\n",resp:="*j20-46-[01][#] "}		
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="set services ggsn apn apn5.com pdp-context creation blocked\n",resp:="*j20-46-[01][#] "}		
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="show services ggsn apn | match ""apn.*.com {""\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="request services ggsn pdp terminate apn apn1.com\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="request services ggsn pdp terminate apn apn2.com\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="request services ggsn pdp terminate apn apn3.com\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="request services ggsn pdp terminate apn apn4.com\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="request services ggsn pdp terminate apn apn5.com\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="load override ft-j20-46.ttcn.mpg.conf\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="set services ggsn apn apn1.com pdp-context creation blocked\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="delete services ggsn apn apn1.com pdp-context pdp-type\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="delete services ggsn apn apn1.com pdp-context ipv6-address\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="delete services ggsn apn apn1.com pdp-context ipv6-address-allocation\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}	
-    ,{msg:="set services ggsn apn apn1.com pdp-context address-allocation local-pool\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-    ,{msg:="edit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="set services ggsn apn apn1.com pdp-context creation unblocked\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="commit\n",resp:="*j20-46-[01][#] "}
-    ,{msg:="exit\n",resp:="*j20-46-[01][>] "}
-
-  }};
-tsp_EPTF_TELNET_Transport_PromptList := {"etibben","j20-46-[01][>#%]"}
-
-[TESTPORT_PARAMETERS]
-*.IPL4_PCO.debug := "NO"
-*.LANL2_PCO.eth_interface_name := "eth1.2301"//eth1"
-*.LANL2_PCO.promiscuous_mode   := "1"
-*.LANL2_PCO.packet_filter      := "ip or ip6 or arp" 
-
-[EXECUTE]
-MBT_Qtronic_Testcases.control
-#MBT_Qtronic_Testcases.tc_Test_Case_1
-#MBT_Qtronic_Testcases.tc_Test_Case_2
-#MBT_Qtronic_Testcases.tc_Test_Case_3
-#MBT_Qtronic_Testcases.tc_Test_Case_4
-#MBT_Qtronic_Testcases.tc_Test_Case_5
-#MBT_Qtronic_Testcases.tc_Test_Case_6
-#MBT_Qtronic_Testcases.tc_Test_Case_7
-#MBT_Qtronic_Testcases.tc_Test_Case_8
-#MBT_Qtronic_Testcases.tc_Test_Case_9
-#MBT_Qtronic_Testcases.tc_Test_Case_10
diff --git a/demo/ggsn/MBT_Qtronic_Demo.prj b/demo/ggsn/MBT_Qtronic_Demo.prj
deleted file mode 100644
index 65971f9..0000000
--- a/demo/ggsn/MBT_Qtronic_Demo.prj
+++ /dev/null
@@ -1,158 +0,0 @@
-<!DOCTYPE TITAN_GUI_project_file>
-<Project TITAN_version="1.8.pl1" >
-    <General>
-        <Project_Name>MBT_Qtronic_Demo</Project_Name>
-        <Executable_Path>bin/demo</Executable_Path>
-        <Working_Dir>bin</Working_Dir>
-        <Build_Host>alpha</Build_Host>
-        <Execution_Mode>Parallel</Execution_Mode>
-        <ScriptFile_AfterMake>./makefile_patch.sh</ScriptFile_AfterMake>
-        <Log_Format>yes</Log_Format>
-        <Update_Symlinks>yes</Update_Symlinks>
-        <Create_Absolute_Symlinks>no</Create_Absolute_Symlinks>
-        <Update_Makefile>yes</Update_Makefile>
-        <Localhost_Execute>yes</Localhost_Execute>
-        <Execute_Command>rsh %host &quot;cd %project_working_dir ; &quot;%executable&quot; %localhost %mctr_port&quot;</Execute_Command>
-        <Execute_Hosts>alfa, beta, gamma</Execute_Hosts>
-        <UnUsed_List></UnUsed_List>
-    </General>
-    <Modules>
-        <Module>MBT_Qtronic_Main.ttcn</Module>
-        <Module>MBT_Qtronic_TestHarness.ttcn</Module>
-        <Module>MBT_Qtronic_TestSystem.ttcn</Module>
-        <Module>MBT_Qtronic_Testcases.ttcn</Module>
-        <Module>MBT_Qtronic_Types.ttcn</Module>
-    </Modules>
-    <Configs>
-        <Config>MBT_Qtronic_Demo.cfg</Config>
-    </Configs>
-    <File_Group name="MainFileGroup" >
-        <File_Groups>
-            <File_Group name="EPTF_Applib_MBT_CNL113659" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Applib_MBT_CNL113659/src/LoadGen/EPTF_MBT_LoadGen.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="EPTF_Applib_GTP_CNL113696" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Applib_GTP_CNL113696/src/LoadGen/EPTF_GTP_LoadGen.grp" />
-                    <File_Group path="../../../EPTF_Applib_GTP_CNL113696/src/Logger/EPTF_GTP_Logger.grp" />
-                    <File_Group path="../../../EPTF_Applib_GTP_CNL113696/src/Transport/EPTF_GTP_Transport.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="EPTF_Applib_TELNET_CNL113697" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Applib_TELNET_CNL113697/src/LoadGen/EPTF_TELNET_LoadGen.grp" />
-                    <File_Group path="../../../EPTF_Applib_TELNET_CNL113697/src/Logger/EPTF_TELNET_Logger.grp" />
-                    <File_Group path="../../../EPTF_Applib_TELNET_CNL113697/src/Transport/EPTF_TELNET_Transport.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="EPTF_Applib_LANL2_CNL113698" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Applib_LANL2_CNL113698/src/LoadGen/EPTF_LANL2_LoadGen.grp" />
-                    <File_Group path="../../../EPTF_Applib_LANL2_CNL113698/src/Logger/EPTF_LANL2_Logger.grp" />
-                    <File_Group path="../../../EPTF_Applib_LANL2_CNL113698/src/Transport/EPTF_LANL2_Transport.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="TCCUsefulFunctions_CNL113472" >
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/digcalc.c" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/digcalc.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCSecurity.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCSecurity_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Definitions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCEncoding.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCEncoding_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.c" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCFileIO.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCFileIO_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCDateTime.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCDateTime_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths_GenericTypes.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface_ip.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCConversion.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCConversion_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCTemplate_Functions.ttcn" />
-            </File_Group>
-            <File_Group name="GTP_v8.1.0_CNL113617">
-                <File path="../../../../ProtocolModules/GTP_v8.1.0_CNL113617/src/GTPC_EncDec.cc" />
-                <File path="../../../../ProtocolModules/GTP_v8.1.0_CNL113617/src/GTPC_Types.ttcn" />
-                <File path="../../../../ProtocolModules/GTP_v8.1.0_CNL113617/src/GTPU_EncDec.cc" />
-                <File path="../../../../ProtocolModules/GTP_v8.1.0_CNL113617/src/GTPU_Types.ttcn" />
-            </File_Group>
-            <File_Group name="GTPP_v7.0.0_CNL113579">
-                <File path="../../../../ProtocolModules/GTPP_v7.0.0_CNL113579/src/GTPP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="UDP_CNL113420">
-                <File path="../../../../ProtocolModules/UDP_CNL113420/src/UDP_Types.ttcn" />
-                <File path="../../../../ProtocolModules/UDP_CNL113420/src/UDP_EncDec.cc" />
-            </File_Group>
-            <File_Group name="UDPasp_CNL113346" >
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PortType.ttcn" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.cc" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.hh" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="IPL4asp_CNL113531" >
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_discovery.cc" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Functions.ttcn" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PortType.ttcn" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_protocol_L234.hh" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.cc" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.hh" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="Abstract_Socket_CNL113384" >
-                <File path="../../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.cc" />
-                <File path="../../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.hh" />
-            </File_Group>
-            <File_Group name="IP_CNL113418" >
-                <File path="../../../../ProtocolModules/IP_CNL113418/src/IP_EncDec.cc" />
-                <File path="../../../../ProtocolModules/IP_CNL113418/src/IP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="LANL2asp_CNL113519" >
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PortType.ttcn" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.cc" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.hh" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="TCP_CNL113675" >
-                <File path="../../../../ProtocolModules/TCP_CNL113675/src/TCP_EncDec.cc" />
-                <File path="../../../../ProtocolModules/TCP_CNL113675/src/TCP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="GeneralTypes" >
-                <File path="../../../../ProtocolModules/COMMON/src/General_Types.ttcn" />
-            </File_Group>           
-            <File_Group name="EPTF_Core_Library_CNL113512" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Base/EPTF_CLL_Base.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Common/EPTF_CLL_Common.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/FreeBusyQueue/EPTF_CLL_FreeBusyQueue.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/HashMap/EPTF_CLL_HashMap.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Logging/EPTF_CLL_Logging.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/RedBlackTree/EPTF_CLL_RBtree_Float.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Scheduler/EPTF_CLL_Scheduler_RBT.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Variable/EPTF_CLL_Variable.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/StatMeasure/EPTF_CLL_StatMeasure.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_Transport.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportCommPortIPL4.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportMessageBufferManager.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportRouting.grp" />
-                    <File_Group path="../../../../TestPorts/Common_Components/Socket_API_CNL113686/src/Socket_API.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/RandomNArray/EPTF_CLL_RNA.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Semaphore/EPTF_CLL_Semaphore.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/StatHandler/EPTF_CLL_StatHandler.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/LGenBase/EPTF_CLL_LGenBase.grp" />
-                </File_Groups>
-            </File_Group>
-        </File_Groups>
-    </File_Group>
-</Project>
diff --git a/demo/ggsn/MBT_Qtronic_Main.ttcn b/demo/ggsn/MBT_Qtronic_Main.ttcn
deleted file mode 100644
index d29e43c..0000000
--- a/demo/ggsn/MBT_Qtronic_Main.ttcn
+++ /dev/null
@@ -1,456 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_Qtronic_Main.ttcn
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 659
-//  Updated:  2010-10-01
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-module MBT_Qtronic_Main
-{
-
-import from EPTF_MBT_LGen_Definitions all;
-import from EPTF_MBT_LGen_Functions all;
-
-import from EPTF_CLL_Common_Definitions all;
-import from EPTF_CLL_Base_Definitions all;
-import from EPTF_CLL_Base_Functions all;
-import from EPTF_CLL_LGenBase_Definitions all;
-
-import from EPTF_GTP_LGen_Definitions all;
-import from EPTF_GTP_LGen_Functions all;
-import from EPTF_GTP_Transport_Definitions all;
-import from EPTF_GTP_Transport_Functions all;
-
-import from EPTF_TELNET_Transport_Definitions all;
-import from EPTF_TELNET_Transport_Functions all;
-import from EPTF_TELNET_LGen_Definitions all;
-import from EPTF_TELNET_LGen_Functions all;
-
-import from EPTF_LANL2_Transport_Definitions all;
-import from EPTF_LANL2_Transport_Functions all;
-import from EPTF_LANL2_LGen_Definitions all;
-import from EPTF_LANL2_LGen_Functions all;
-
-import from MBT_Qtronic_Types all;
-import from MBT_Qtronic_TestSystem all;
-
-modulepar
-{
-  boolean tsp_Mapper_enableDebug := false;
-}
-
-function f_Mapper_log(in charstring p_log)
-{
-  if (tsp_Mapper_enableDebug) { log(p_log); }
-}
-
-type component MBT_Demo_LGen_CT extends EPTF_MBT_LGen_CT,
-  EPTF_GTP_LGen_CT, EPTF_GTP_LocalTransport_CT,
-  EPTF_TELNET_LGen_CT, EPTF_TELNET_LocalTransport_CT,
-  EPTF_LANL2_LGen_CT, EPTF_LANL2_LocalTransport_CT
-{
-}
-
-type component MBT_Demo_Tester_CT extends EPTF_MBT_Tester_CT
-{
-  port GnInPort   GN_IN_LGEN_PCO;
-  port GnOutPort  GN_OUT_LGEN_PCO;
-  port GiInPort   GI_IN_LGEN_PCO;
-  port GiOutPort  GI_OUT_LGEN_PCO;
-}
-
-type component MBT_Qtronic_Main_CT extends MBT_Demo_Tester_CT,  MBT_Demo_LGen_CT
-{
-}
-
-type component MBT_Demo_Main_CT extends EPTF_Base_CT {}
-
-
-///////////////////////////////////////////////////////////////////////////////////
-//      Initialization
-///////////////////////////////////////////////////////////////////////////////////
-
-function f_cq_beginTestcase()
-runs on QtronicCT
-{
-  f_Mapper_log(log2str(%definitionId, " enter"));
-
-  // MBT Applib initialization
-  f_EPTF_MBT_Tester_init("MBT_Demo");
-  f_EPTF_MBT_init("MBT_Demo",0, "MBT_");
-  f_EPTF_MBT_initLGenFsm(refers(f_MBT_Demo_LGen_createUserMessage), null);
-
-  // GTP Applib initialization
-  f_EPTF_GTP_init(
-    pl_selfName:="GTP_LoadGen", 
-    pl_selfId:=0, 
-    pl_entityNamePrefix:="GTP_AppLib_", 
-    pl_numEntities:=0);
-  f_EPTF_GTP_LocalTransport_init_CT();
-
-  vf_EPTF_GTP_sendMessage:=refers(f_EPTF_GTP_LocalTransport_sendMessage);
-  vf_EPTF_GTP_handleMessage:=refers(f_EPTF_GTP_LocalTransport_handleMessage);
-  vf_EPTF_GTP_cleanUpTransport:=refers(f_EPTF_GTP_LocalTransport_cleanUpTransport);
-  vf_EPTF_GTP_LocalTransport_receive:=refers(f_EPTF_GTP_messageHandler);
-
-  // TELNET Applib initialization
-  f_EPTF_TELNET_init(
-    pl_selfName := "TELNET_AppLib", 
-    pl_selfId := 0, 
-    pl_entityNamePrefix := "TELNET_", 
-    pl_numEntities := 0, 
-    pl_bind := refers(f_EPTF_TELNET_bindEntity4Behavior)
-  );
-
-  f_EPTF_TELNET_LocalTransport_init_CT(
-    pl_selfName:= "EPTF_TELNET_LocalTransport", 
-    pl_receiveFunction:= refers(f_EPTF_TELNET_messageReceived), 
-    pl_eventReceiveFunction:= refers(f_EPTF_TELNET_eventReceived)
-  );
-
-  vf_EPTF_TELNET_newTransportUser:=refers( f_EPTF_TELNET_LocalTransport_newTransportUser);
-  vf_EPTF_TELNET_sendMessage := refers(f_EPTF_TELNET_LocalTransport_sendMessage)
-  vf_EPTF_TELNET_playList:=refers(f_EPTF_TELNET_LocalTransport_playListElement)
-
-  // LANL2 Applib initialization
-  f_EPTF_LANL2_init(
-    pl_selfName := "IPL2_AppLib", 
-    pl_selfId := 0, 
-    pl_entityNamePrefix := "IPL2_", 
-    pl_numEntities := 0, 
-    pl_bind := refers(f_EPTF_LANL2_bindEntity4Behavior)
-  );
-
-  f_EPTF_LANL2_LocalTransport_init_CT(
-    pl_selfName:= c_EPTF_LANL2_Transport_LGenType, 
-    pl_receiveFunction:= refers(f_EPTF_LANL2_messageReceived), 
-    pl_eventReceiveFunction:= refers(f_EPTF_LANL2_eventReceived)
-  );
-
-  f_EPTF_LANL2_setSendMessageFunction(plf_sendMessageFunction := refers(f_EPTF_LANL2_LocalTransport_sendMessage));
-  f_EPTF_LANL2_setEchoMessageFunction(plf_echoMessageFunction := refers(f_EPTF_LANL2_LocalTransport_echoMessage));
-  f_EPTF_LANL2_setListenFunction(plf_listenFunction := refers(f_EPTF_LANL2_LocalTransport_listen));
-  f_EPTF_LANL2_setCloseFunction(plf_closeFunction := refers(f_EPTF_LANL2_LocalTransport_close));
-
-  // Connecting the MBT Test Harness with the Tester component
-  connect(self:EPTF_MBT_PCO, self:EPTF_MBT_TESTER_PCO);
-  connect(self:GN_IN_LGEN_PCO, self:GnIn);
-  connect(self:GN_OUT_LGEN_PCO, self:GnOut);
-  connect(self:GI_IN_LGEN_PCO, self:GiIn);
-  connect(self:GI_OUT_LGEN_PCO, self:GiOut);
-
-  // Creating 1 entity with 1 MBT_FSM
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_ConfigRequest:
-    {
-      entityGroupName := "MBT_EntityType",
-      noEntities := 1,
-      behaviors := {c_EPTF_MBT_myBName, c_EPTF_GTP_behavior, c_EPTF_TELNET_behavior},
-      fsmName := "FSM_MBT"
-    }
-  );
-
-  // TODO: activate default altstep, with timeout handling
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_ConfigResponse:?);
-
-  //Activating GTP Echo Handler
-  f_MBT_Demo_LGen_activateEchoHandler();
-    
-  f_Mapper_log(log2str(%definitionId, " finished"));
-}
-
-function f_cq_endTestcase()
-runs on MBT_Qtronic_Main_CT
-{
-  f_Mapper_log(log2str(%definitionId, " enter"));
-
-  f_EPTF_Base_stopAll(none);
-
-  f_Mapper_log(log2str(%definitionId, " finished"));
-}
-
-///////////////////////////////////////////////////////////////////////////////////
-//        Mapping Testcase -> Test Harness
-///////////////////////////////////////////////////////////////////////////////////
-
-function f_Model_sendCreatePDPContext(in CreatePDPcontext p_CreatePDPcontext)
-runs on MBT_Qtronic_Main_CT
-{
-  f_Mapper_log(log2str(%definitionId, " enter ", p_CreatePDPcontext));
-
-  // Creating a GTP session in the test harness
-  f_MBT_execute(c_EPTF_GTP_stepName_init, valueof(t_addr(0)));
-
-  // Start listening on Gi
-  f_MBT_execute(c_EPTF_LANL2_stepName_init, valueof(t_addr(0)), {0});
-  f_MBT_execute(c_EPTF_LANL2_stepName_listen, valueof(t_addr(0)));
-
-  // Example of setting the parameters for the GTP session
-  var EPTF_GTP_FSM_Ctx p_client_ctx;
-  f_EPTF_GTP_getContext(f_convert_FsmAddr2TestStepArgs(valueof(t_addr(0))), p_client_ctx);
-
-  p_client_ctx.primaryCtx.imsi := f_getIMSI_str2hex(p_CreatePDPcontext.imsi);
-  p_client_ctx.primaryCtx.apn := f_getAPN_char2oct(p_CreatePDPcontext.apn);
-  p_client_ctx.primaryCtx.msisdn := f_getMSISDN_str2hex(p_CreatePDPcontext.imsi);
-  f_EPTF_GTP_setContext(f_convert_FsmAddr2TestStepArgs(valueof(t_addr(0))), p_client_ctx);
-  // Example ends
-
-  // Generating a PDP context request
-  f_MBT_execute(c_EPTF_GTP_stepName_createPDPContextRequest, valueof(t_addr(0)));
-
-  // Example of how to update the generated message
-  f_EPTF_GTP_getContext(f_convert_FsmAddr2TestStepArgs(valueof(t_addr(0))), p_client_ctx);
-  p_client_ctx.gtpcMsgToSend.gtpc_pdu.createPDPContextRequest.charging_char.chargingChar := '0800'O;
-  f_EPTF_GTP_setContext(f_convert_FsmAddr2TestStepArgs(valueof(t_addr(0))), p_client_ctx);
-  // Example ends
-
-  // Sending the message
-  f_MBT_execute(c_EPTF_GTP_stepName_sendMessage, valueof(t_addr(0)));
-  
-  f_Mapper_log(log2str(%definitionId, " finished"));
-}
-
-function f_Model_sendUpdatePDPContext(in UpdatePDPcontext p_UpdatePDPcontext)
-runs on MBT_Qtronic_Main_CT
-{
-  f_Mapper_log(log2str(%definitionId, " enter ", p_UpdatePDPcontext));
-
-  // Generating an update PDP context message by the test harness
-  f_MBT_execute(c_EPTF_GTP_stepName_updatePDPContextRequest, valueof(t_addr(0)));
-  // Sending the message
-  f_MBT_execute(c_EPTF_GTP_stepName_sendMessage, valueof(t_addr(0)));
-  
-  f_Mapper_log(log2str(%definitionId, " finished"));
-}
-
-function f_Model_sendDeletePDPContext(in DeletePDPcontext p_DeletePDPcontext)
-runs on MBT_Qtronic_Main_CT
-{
-  f_Mapper_log(log2str(%definitionId, " enter ", p_DeletePDPcontext));
-
-  f_MBT_execute(c_EPTF_GTP_stepName_deletePDPContextRequest, valueof(t_addr(0)));
-  f_MBT_execute(c_EPTF_GTP_stepName_sendMessage, valueof(t_addr(0)));
-  
-  f_Mapper_log(log2str(%definitionId, " finished"));
-}
-
-function f_Model_sendGPDU(in GPDU p_gpdu)
-runs on MBT_Qtronic_Main_CT
-{
-  f_Mapper_log(log2str(%definitionId, " enter ", p_gpdu));
-
-  // First we load the Payload we want to send in the GTP tunnel into the GTP Context
-  var EPTF_GTP_FSM_Ctx p_client_ctx;
-  f_EPTF_GTP_getContext(f_convert_FsmAddr2TestStepArgs(valueof(t_addr(0))), p_client_ctx);
-  p_client_ctx.primaryCtx.payload :=
-    f_EPTF_GTP_createUDPpacket(
-      f_EPTF_GTP_convertIP_oct2str(p_client_ctx.primaryCtx.end_user_address), //"20.46.0.2",
-      tsp_EPTF_LANL2_connectionInfoList[0].remPort,
-      tsp_EPTF_LANL2_connectionInfoList[0].locHost,
-      tsp_EPTF_LANL2_connectionInfoList[0].locPort,
-      tsp_EPTF_LANL2_connectionInfoList[0].payload
-  );
-  f_EPTF_GTP_setContext(f_convert_FsmAddr2TestStepArgs(valueof(t_addr(0))), p_client_ctx);
-
-  // Then we generate the GPDU. The previously loaded payload will be in the generated PDU.
-  f_MBT_execute(c_EPTF_GTP_stepName_createGTPU, valueof(t_addr(0)));
-
-  // It can be now sent out.
-  f_MBT_execute(c_EPTF_GTP_stepName_sendGTPU, valueof(t_addr(0)));
-  
-  f_Mapper_log(log2str(%definitionId, " finished"));
-}
-
-function f_Model_sendUDPpdu(in UDPpdu p_UDPpdu)
-runs on MBT_Qtronic_Main_CT
-{
-  f_Mapper_log(log2str(%definitionId, " enter ", p_UDPpdu));
-
-  f_MBT_execute(c_EPTF_LANL2_stepName_sendMessage, valueof(t_addr(0)), {0});
-
-  f_Mapper_log(log2str(%definitionId, " finished"));
-}
-
-///////////////////////////////////////////////////////////////////////////////////
-//        Message handling: Test Harness -> Testcase
-///////////////////////////////////////////////////////////////////////////////////
-
-function f_MBT_Demo_LGen_createUserMessage(in EPTF_LGenBase_TestStepArgs pl_ptr) 
-runs on MBT_Qtronic_Main_CT
-return boolean
-{
-  // This function catches the events that are generated by the test harness when a message is received.
-  // The purpose of this function to create the message structure that is expected by the model (and thus by the generated test case code)
-
-  f_Mapper_log(log2str(%definitionId & " creating message for:\n", pl_ptr, "\n", pl_ptr.reportedEvent));
-
-  // CreatePDPContextResponse
-  if (pl_ptr.reportedEvent.event.bIdx == v_EPTF_GTP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_EPTF_GTP_inputIdx_createPDPContextResponse)
-  {
-    f_MBT_execute(c_EPTF_GTP_stepName_handleIncomingMessage, valueof(t_addr(0)));
-
-    var integer vl_cause :=
-      oct2int(v_EPTF_GTP_lastReceived.msg.gtpc.gtpc_pdu.createPDPContextResponse.cause.causevalue);
-
-    GN_OUT_LGEN_PCO.send(CreatePDPresponse:{vl_cause});
-  }
-  // UpdatePDPContextResponse
-  else if (pl_ptr.reportedEvent.event.bIdx == v_EPTF_GTP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_EPTF_GTP_inputIdx_updatePDPContextResponse)
-  {
-    f_MBT_execute(c_EPTF_GTP_stepName_handleIncomingMessage, valueof(t_addr(0)));
-
-    var integer vl_cause :=
-      oct2int(v_EPTF_GTP_lastReceived.msg.gtpc.gtpc_pdu.updatePDPContextResponse.updatePDPContextResponseSGSN.cause.causevalue);
-
-    GN_OUT_LGEN_PCO.send(UpdatePDPresponse:{vl_cause});
-  }
-  // DeletePDPContextResponse
-  else if (pl_ptr.reportedEvent.event.bIdx == v_EPTF_GTP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_EPTF_GTP_inputIdx_deletePDPContextResponse)
-  {
-    f_MBT_execute(c_EPTF_GTP_stepName_handleIncomingMessage, valueof(t_addr(0)));
-
-    var integer vl_cause :=
-      oct2int(v_EPTF_GTP_lastReceived.msg.gtpc.gtpc_pdu.deletePDPContextResponse.cause.causevalue);
-
-    GN_OUT_LGEN_PCO.send(DeletePDPresponse:{vl_cause});
-    f_MBT_execute(c_EPTF_GTP_stepName_cleanUp, valueof(t_addr(0)));
-  }
-  // Incoming GTPU
-  else if (pl_ptr.reportedEvent.event.bIdx == v_EPTF_GTP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_EPTF_GTP_inputIdx_GTPU)
-  {
-    // Access and convert the payload here
-    var octetstring vl_payload := ''O;
-    var integer vl_data := 0;
-    if (f_EPTF_GTP_getUDPpayload(vl_payload))
-    { 
-      vl_data := oct2int(vl_payload);
-    }
-    GN_OUT_LGEN_PCO.send(GPDU:{data := vl_data});
-  }
-  // Incmoing LANL2
-  else if (pl_ptr.reportedEvent.event.bIdx == v_EPTF_LANL2_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_EPTF_LANL2_inputIdx_incomingMessage)
-  { 
-    // Access and convert the payload here
-    var octetstring vl_payload := ''O;
-    var integer vl_data := 0;
-    if (f_EPTF_LANL2_getLastUDP(f_convert_FsmAddr2TestStepArgs(valueof(t_addr(0))), vl_payload))
-    {
-      vl_data := oct2int(vl_payload);
-    }
-    GI_OUT_LGEN_PCO.send(UDPpdu:{data := vl_data});
-  }
-  else
-  {
-    f_Mapper_log(log2str(%definitionId & "(): unhandled incoming message"));
-    return false;
-  }
-  return true;
-}
-
-///////////////////////////////////////////////////////////////////////////////////
-//        FSM Activation
-///////////////////////////////////////////////////////////////////////////////////
-
-function f_MBT_Demo_LGen_activateEchoHandler() runs on MBT_Qtronic_Main_CT
-{
-  f_EPTF_GTP_declareEchoHandlerFsm();
-
-  var EPTF_MBT_LGen_Definitions.FsmAddr vl_addr;
-
-  f_MBT_activateFsm("MBT_EntityType", 0, "FSM_GTP_EchoHandler", vl_addr);
-
-  f_MBT_dispatch(c_EPTF_LGenBase_behavior, c_EPTF_LGenBase_inputIdx_testMgmt_startTC, vl_addr);
-}
-
-///////////////////////////////////////////////////////////////////////////////////
-//        Utility functions
-///////////////////////////////////////////////////////////////////////////////////
-
-function f_EPTF_TELNET_bindEntity4Behavior(
-  in integer pl_eIdx)
-runs on QtronicCT 
-return EPTF_IntegerList
-{  
-  return {pl_eIdx};
-}
-
-function f_getAPN_char2oct(in charstring p_apn)
-return octetstring
-{
-  var octetstring vl_ret := '04'O & char2oct(p_apn)
-  for (var integer i:=0; i<lengthof(vl_ret); i:=i+1){ if (vl_ret[i]=='2E'O) { vl_ret[i] := '03'O } }
-  f_Mapper_log(log2str(%definitionId, " in ", p_apn, " -> ", vl_ret));
-  return vl_ret;
-}
-
-function f_getIMSI_str2hex(in charstring p_imsi_str)
-return hexstring
-{  
-  var hexstring vl_ret := f_str2tbcd(p_imsi_str);
-  f_Mapper_log(log2str(%definitionId, " in ", p_imsi_str, " -> ", vl_ret));
-  return vl_ret;
-}
-
-function f_getMSISDN_str2hex(in charstring p_imsi_str)
-return octetstring
-{  
-  var octetstring vl_ret := ''O;
-  var hexstring vl_imsi := f_str2tbcd(p_imsi_str);
-  vl_imsi := substr(vl_imsi, lengthof(vl_imsi)-6, 6);
-  vl_ret := '916464'O & f_encodeTBCD_hex2oct(vl_imsi);
-  
-  f_Mapper_log(log2str(%definitionId, " in ", p_imsi_str, " -> ", vl_ret));
-  return vl_ret;
-}
-
-function f_str2tbcd(in charstring p_str)
-return hexstring
-{
-  var hexstring vl_ret := ''H;
-
-  for (var integer i:=0; i<lengthof(p_str); i:=i+1)
-  {
-    vl_ret[i] := int2hex(str2int(p_str[i]),1);
-  }
-
-  return vl_ret;
-}
-
-function f_encodeTBCD_hex2oct( in hexstring pl_hex )
-return octetstring
-{
-  var integer vl_size:= lengthof(pl_hex);
-  if((vl_size mod 2) == 1)
-  {
-    pl_hex := pl_hex & 'F'H;
-    vl_size := vl_size + 1;
-  }
-  vl_size := vl_size / 2;
-
-  var integer vl_i;
-  var octetstring vl_oct := ''O;
-
-  for (vl_i := 0; vl_i < vl_size; vl_i := vl_i + 1)
-  {
-    vl_oct := vl_oct & hex2oct(pl_hex[(2*vl_i) + 1] & pl_hex[2*vl_i]);
-  }
-
-  return vl_oct;
-}
-
-template EPTF_MBT_LGen_Definitions.FsmAddr t_addr(integer eIdx) :=
-{
-  entityGroupName := "MBT_EntityType",
-  eIdx := eIdx,
-  fIdx  := 0
-}
-
-}
diff --git a/demo/ggsn/MBT_Qtronic_TestHarness.ttcn b/demo/ggsn/MBT_Qtronic_TestHarness.ttcn
deleted file mode 100644
index 4fe49b0..0000000
--- a/demo/ggsn/MBT_Qtronic_TestHarness.ttcn
+++ /dev/null
@@ -1,456 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_TestHarness.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-10-01

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-/* -*- ttcn-3 -*- */

-

-/**

-* @file

-*    C:\Users\eantwuh\workspace\GGSN_Goteborg\MBT_Qtronic_TestHarness.ttcn

-* @author

-*    Conformiq TTCN-3 scripting backend

-* @version

-*    Tue Sep 14 14:48:48 CEST 2010

-* @desc

-*    This is a template file with TTCN-3 function stubs for the implementation 

-*    of test harness code for the test suites generated from the Conformiq '

-*    GGSN_Goteborg' project.

-* @remark

-*    All function definitions must be edited as instructed in their comments in

-*     order for the test suite to execute properly.

-*/

-module MBT_Qtronic_TestHarness

-{

-    import from MBT_Qtronic_Types all;

-    import from MBT_Qtronic_TestSystem all;

-    import from MBT_Qtronic_Main all;

-    import from EPTF_MBT_LGen_Definitions all;

-    import from EPTF_MBT_LGen_Functions all;

-    import from EPTF_TELNET_LGen_Definitions all;

-

-    modulepar

-    {

-      boolean tsp_enableLogging := true;

-    }

-            

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_Restart

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_Restart Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_Restart_to_CLIin(template Restart p_Restart) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_Restart); }

-      

-        // Steps that need to be implemented here are:

-        // (modify and uncomment example code as needed)

-        // 1. transform data from a Restart to the TTCN-3 data value used by the test harness (if needed)

-        // var <T3RestartType> v_T3Restart := f_transformRestartCQtoT3(p_Restart);

-        // 2. replace symbolic values (if any) with real values in TTCN-3 data value

-        // 3. send TTCN-3 data value via TTCN-3 port which corresponds toCLIinmodel port

-        // CLIin.send(v_T3Restart);

-             //CLIin.send(p_Restart);

-        // Remove or comment the following generated code

-      log("CQ_INFO: Warning: f_cq_send_Restart_to_CLIin: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_Configure

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_Configure Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_Configure_to_CLIin(template Configure p_Configure) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_Configure); }

-        // Steps that need to be implemented here are:

-        // (modify and uncomment example code as needed)

-        // 1. transform data from a Configure to the TTCN-3 data value used by the test harness (if needed)

-        // var <T3ConfigureType> v_T3Configure := f_transformConfigureCQtoT3(p_Configure);

-        // 2. replace symbolic values (if any) with real values in TTCN-3 data value

-        // 3. send TTCN-3 data value via TTCN-3 port which corresponds toCLIinmodel port

-        // CLIin.send(v_T3Configure);

-             //CLIin.send(p_Configure);

-        // Remove or comment the following generated code

-        log("CQ_INFO: Warning: f_cq_send_Configure_to_CLIin: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_OverrideConfiguration

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_OverrideConfiguration Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_OverrideConfiguration_to_CLIin(template OverrideConfiguration p_OverrideConfiguration) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_OverrideConfiguration); }

-        // Steps that need to be implemented here are:

-        // (modify and uncomment example code as needed)

-        // 1. transform data from a OverrideConfiguration to the TTCN-3 data value used by the test harness (if needed)

-        // var <T3OverrideConfigurationType> v_T3OverrideConfiguration := f_transformOverrideConfigurationCQtoT3(p_OverrideConfiguration);

-        // 2. replace symbolic values (if any) with real values in TTCN-3 data value

-        // 3. send TTCN-3 data value via TTCN-3 port which corresponds toCLIinmodel port

-        // CLIin.send(v_T3OverrideConfiguration);

-             //CLIin.send(p_OverrideConfiguration);

-        // Remove or comment the following generated code

-        log("CQ_INFO: Warning: f_cq_send_OverrideConfiguration_to_CLIin: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_Prepare

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_Prepare Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_Prepare_to_CLIin(template Prepare p_Prepare) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_Prepare); }

-

-      f_MBT_execute(c_EPTF_TELNET_stepName_init, valueof(t_addr(0)), {0});

-      f_MBT_execute(c_EPTF_TELNET_stepName_connect, valueof(t_addr(0)), {0});

-      f_MBT_waitFor(c_EPTF_TELNET_behavior, c_EPTF_TELNET_inputName_autoLoginFinished, valueof(t_addr(0)));

-

-      timer t_wait := 30.0;

-

-      f_MBT_execute(c_EPTF_TELNET_stepName_playList, valueof(t_addr(0)));

-      t_wait.start;

-

-      alt

-      {

-        [] EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_TestStepResponse:{ bName := c_EPTF_TELNET_behavior, iName := c_EPTF_TELNET_inputName_matchingPlayListResp, addr := valueof(t_addr(0))})

-        { 

-          t_wait.stop;

-          action(%definitionId, "Received: matchingPlayListRespReceived"); 

-          f_MBT_execute(c_EPTF_TELNET_stepName_playList, valueof(t_addr(0)));

-          t_wait.start;

-          repeat;

-        }

-        [] EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_TestStepResponse:{ bName := c_EPTF_TELNET_behavior, iName := c_EPTF_TELNET_inputName_lastMatchingPlayListResp, addr := valueof(t_addr(0))})

-        { 

-          action(%definitionId, "Received: lastMatchingPlayListRespReceived"); 

-          t_wait.stop; 

-        }

-        [] EPTF_MBT_TESTER_PCO.receive

-        { 

-          log(%definitionId, "Dropping unexpected message!"); 

-          repeat;

-        }

-        [] t_wait.timeout

-        {

-          action(%definitionId, "Timeout!"); 

-        }

-      }

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_Restore

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_Restore Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_Restore_to_CLIin(template Restore p_Restore) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_Restore); }

-        // Steps that need to be implemented here are:

-        // (modify and uncomment example code as needed)

-        // 1. transform data from a Restore to the TTCN-3 data value used by the test harness (if needed)

-        // var <T3RestoreType> v_T3Restore := f_transformRestoreCQtoT3(p_Restore);

-        // 2. replace symbolic values (if any) with real values in TTCN-3 data value

-        // 3. send TTCN-3 data value via TTCN-3 port which corresponds toCLIinmodel port

-        // CLIin.send(v_T3Restore);

-             //CLIin.send(p_Restore);

-        // Remove or comment the following generated code

-        log("CQ_INFO: Warning: f_cq_send_Restore_to_CLIin: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_UDPpdu

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_UDPpdu Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_UDPpdu_to_GiIn(template UDPpdu p_UDPpdu) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_UDPpdu); }

-        // Steps that need to be implemented here are:

-        // (modify and uncomment example code as needed)

-        // 1. transform data from a UDPpdu to the TTCN-3 data value used by the test harness (if needed)

-        // var <T3UDPpduType> v_T3UDPpdu := f_transformUDPpduCQtoT3(p_UDPpdu);

-        // 2. replace symbolic values (if any) with real values in TTCN-3 data value

-        // 3. send TTCN-3 data value via TTCN-3 port which corresponds toGiInmodel port

-        // GiIn.send(v_T3UDPpdu);

-             //GiIn.send(p_UDPpdu);

-        // Remove or comment the following generated code

-      //log("CQ_INFO: Warning: f_cq_send_UDPpdu_to_GiIn: function is not implemented)");

-      f_Model_sendUDPpdu(valueof(p_UDPpdu));

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_RadiusAccessAccept

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_RadiusAccessAccept Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_RadiusAccessAccept_to_GiRadiusIn(template RadiusAccessAccept p_RadiusAccessAccept) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_RadiusAccessAccept); }

-        // Steps that need to be implemented here are:

-        // (modify and uncomment example code as needed)

-        // 1. transform data from a RadiusAccessAccept to the TTCN-3 data value used by the test harness (if needed)

-        // var <T3RadiusAccessAcceptType> v_T3RadiusAccessAccept := f_transformRadiusAccessAcceptCQtoT3(p_RadiusAccessAccept);

-        // 2. replace symbolic values (if any) with real values in TTCN-3 data value

-        // 3. send TTCN-3 data value via TTCN-3 port which corresponds toGiRadiusInmodel port

-        // GiRadiusIn.send(v_T3RadiusAccessAccept);

-             //GiRadiusIn.send(p_RadiusAccessAccept);

-        // Remove or comment the following generated code

-        log("CQ_INFO: Warning: f_cq_send_RadiusAccessAccept_to_GiRadiusIn: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_CreatePDPcontext

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_CreatePDPcontext Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_CreatePDPcontext_to_GnIn(template CreatePDPcontext p_CreatePDPcontext) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_CreatePDPcontext); }

-      f_Model_sendCreatePDPContext(valueof(p_CreatePDPcontext));

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_UpdatePDPcontext

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_UpdatePDPcontext Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_UpdatePDPcontext_to_GnIn(template UpdatePDPcontext p_UpdatePDPcontext) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_UpdatePDPcontext); }

-      f_Model_sendUpdatePDPContext(valueof(p_UpdatePDPcontext));

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_DeletePDPcontext

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_DeletePDPcontext Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_DeletePDPcontext_to_GnIn(template DeletePDPcontext p_DeletePDPcontext) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_DeletePDPcontext); }

-      f_Model_sendDeletePDPContext(valueof(p_DeletePDPcontext));

-    }

-

-    /**

-    * @desc

-    *    This function performs manipulation needed and sends a p_GPDU

-    *    via the abstract test interface to the SUT.

-    * @param

-    *    p_GPDU Message data generated by CQ Designerto be sent to the SUT

-    */

-    function f_cq_send_GPDU_to_GnIn(template GPDU p_GPDU) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_GPDU); }

-        // Steps that need to be implemented here are:

-        // (modify and uncomment example code as needed)

-        // 1. transform data from a GPDU to the TTCN-3 data value used by the test harness (if needed)

-        // var <T3GPDUType> v_T3GPDU := f_transformGPDUCQtoT3(p_GPDU);

-        // 2. replace symbolic values (if any) with real values in TTCN-3 data value

-        // 3. send TTCN-3 data value via TTCN-3 port which corresponds toGnInmodel port

-        // GnIn.send(v_T3GPDU);

-             //GnIn.send(p_GPDU);

-      // Remove or comment the following generated code

-      //log("CQ_INFO: Warning: f_cq_send_GPDU_to_GnIn: function is not implemented)");

-      f_Model_sendGPDU(valueof(p_GPDU));

-    }

-

-    /**

-    * @desc

-    *    This function receives a TTCN-3 value corresponding to a UDPpdu

-    *    via the abstract test system interface from the SUT, performs any

-    *    manipulation and transformation needed to convert it to a UDPpdu

-    *    value, and then attempts to match it to the p_expectedUDPpdu generated by CQ Designer

-    * @param

-    *    p_expectedUDPpduExpected data generated by CQ Designer

-    */

-    function f_cq_receive_UDPpdu_from_GiOut(template UDPpdu p_expectedUDPpdu) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_expectedUDPpdu); }

-        //Steps that need to be implemented    here are:

-        //1. receive and store (any) TTCN-3 data value via TTCN-3 port which corresponds to the GiOut model port

-        // var <T3_UDPpduType> v_recvT3UDPpdu;

-        // GiOut.receive(<T3_UDPpduType>:?) -> value v_recvT3UDPpdu;

-        // 2. replace real with symbolic values (if any) in the received TTCN-3 data value

-        // 3. transform data from a TTCN-3 to UDPpdu data value (if needed)

-        // varUDPpduv_recvUDPpdu = f_transformUDPpduT3toCQ(v_recvT3UDPpdu);

-        // 4. set the verdict to fail if if there is a mismatch of the transformed value and p_expectedUDPpdu

-        // if ( !match( v_recvUDPpdu p_expectedUDPpdu) {

-        //  log(CQ_INFO: f_cq_receive_UDPpdu_from_GiOut: FAIL: Mismatch in received and expected UDPpdu values. Stopping test case.�);

-        //   setverdict(fail);

-        //   f_cq_f_MBT_Qtronic_endTestcase();

-        //   stop; }

-             GiOut.receive(p_expectedUDPpdu);

-        // Remove or comment the following generated code

-        //log("CQ_INFO: Warning: f_cq_receive_UDPpdu_from_GiOut: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function receives a TTCN-3 value corresponding to a RadiusAccessRequest

-    *    via the abstract test system interface from the SUT, performs any

-    *    manipulation and transformation needed to convert it to a RadiusAccessRequest

-    *    value, and then attempts to match it to the p_expectedRadiusAccessRequest generated by CQ Designer

-    * @param

-    *    p_expectedRadiusAccessRequestExpected data generated by CQ Designer

-    */

-    function f_cq_receive_RadiusAccessRequest_from_GiRadiusOut(template RadiusAccessRequest p_expectedRadiusAccessRequest) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_expectedRadiusAccessRequest); }

-        //Steps that need to be implemented    here are:

-        //1. receive and store (any) TTCN-3 data value via TTCN-3 port which corresponds to the GiRadiusOut model port

-        // var <T3_RadiusAccessRequestType> v_recvT3RadiusAccessRequest;

-        // GiRadiusOut.receive(<T3_RadiusAccessRequestType>:?) -> value v_recvT3RadiusAccessRequest;

-        // 2. replace real with symbolic values (if any) in the received TTCN-3 data value

-        // 3. transform data from a TTCN-3 to RadiusAccessRequest data value (if needed)

-        // varRadiusAccessRequestv_recvRadiusAccessRequest = f_transformRadiusAccessRequestT3toCQ(v_recvT3RadiusAccessRequest);

-        // 4. set the verdict to fail if if there is a mismatch of the transformed value and p_expectedRadiusAccessRequest

-        // if ( !match( v_recvRadiusAccessRequest p_expectedRadiusAccessRequest) {

-        //  log(CQ_INFO: f_cq_receive_RadiusAccessRequest_from_GiRadiusOut: FAIL: Mismatch in received and expected RadiusAccessRequest values. Stopping test case.�);

-        //   setverdict(fail);

-        //   f_cq_f_MBT_Qtronic_endTestcase();

-        //   stop; }

-             //GiRadiusOut.receive(p_expectedRadiusAccessRequest);

-        // Remove or comment the following generated code

-        log("CQ_INFO: Warning: f_cq_receive_RadiusAccessRequest_from_GiRadiusOut: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function receives a TTCN-3 value corresponding to a CreatePDPresponse

-    *    via the abstract test system interface from the SUT, performs any

-    *    manipulation and transformation needed to convert it to a CreatePDPresponse

-    *    value, and then attempts to match it to the p_expectedCreatePDPresponse generated by CQ Designer

-    * @param

-    *    p_expectedCreatePDPresponseExpected data generated by CQ Designer

-    */

-    function f_cq_receive_CreatePDPresponse_from_GnOut(template CreatePDPresponse p_expectedCreatePDPresponse) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_expectedCreatePDPresponse); }

-      GnOut.receive(p_expectedCreatePDPresponse);

-    }

-

-    /**

-    * @desc

-    *    This function receives a TTCN-3 value corresponding to a UpdatePDPresponse

-    *    via the abstract test system interface from the SUT, performs any

-    *    manipulation and transformation needed to convert it to a UpdatePDPresponse

-    *    value, and then attempts to match it to the p_expectedUpdatePDPresponse generated by CQ Designer

-    * @param

-    *    p_expectedUpdatePDPresponseExpected data generated by CQ Designer

-    */

-    function f_cq_receive_UpdatePDPresponse_from_GnOut(template UpdatePDPresponse p_expectedUpdatePDPresponse) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_expectedUpdatePDPresponse); }

-      GnOut.receive(p_expectedUpdatePDPresponse);

-    }

-

-    /**

-    * @desc

-    *    This function receives a TTCN-3 value corresponding to a DeletePDPresponse

-    *    via the abstract test system interface from the SUT, performs any

-    *    manipulation and transformation needed to convert it to a DeletePDPresponse

-    *    value, and then attempts to match it to the p_expectedDeletePDPresponse generated by CQ Designer

-    * @param

-    *    p_expectedDeletePDPresponseExpected data generated by CQ Designer

-    */

-    function f_cq_receive_DeletePDPresponse_from_GnOut(template DeletePDPresponse p_expectedDeletePDPresponse) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_expectedDeletePDPresponse); }

-      GnOut.receive(p_expectedDeletePDPresponse);

-    }

-

-    /**

-    * @desc

-    *    This function receives a TTCN-3 value corresponding to a GPDU

-    *    via the abstract test system interface from the SUT, performs any

-    *    manipulation and transformation needed to convert it to a GPDU

-    *    value, and then attempts to match it to the p_expectedGPDU generated by CQ Designer

-    * @param

-    *    p_expectedGPDUExpected data generated by CQ Designer

-    */

-    function f_cq_receive_GPDU_from_GnOut(template GPDU p_expectedGPDU) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_expectedGPDU); }

-        //Steps that need to be implemented    here are:

-        //1. receive and store (any) TTCN-3 data value via TTCN-3 port which corresponds to the GnOut model port

-        // var <T3_GPDUType> v_recvT3GPDU;

-        // GnOut.receive(<T3_GPDUType>:?) -> value v_recvT3GPDU;

-        // 2. replace real with symbolic values (if any) in the received TTCN-3 data value

-        // 3. transform data from a TTCN-3 to GPDU data value (if needed)

-        // varGPDUv_recvGPDU = f_transformGPDUT3toCQ(v_recvT3GPDU);

-        // 4. set the verdict to fail if if there is a mismatch of the transformed value and p_expectedGPDU

-        // if ( !match( v_recvGPDU p_expectedGPDU) {

-        //  log(CQ_INFO: f_cq_receive_GPDU_from_GnOut: FAIL: Mismatch in received and expected GPDU values. Stopping test case.�);

-        //   setverdict(fail);

-        //   f_cq_f_MBT_Qtronic_endTestcase();

-        //   stop; }

-      

-      GnOut.receive(p_expectedGPDU);

-        // Remove or comment the following generated code

-        //log("CQ_INFO: Warning: f_cq_receive_GPDU_from_GnOut: function is not implemented)");

-    }

-

-    /**

-    * @desc

-    *    This function receives a TTCN-3 value corresponding to a CDRinfo

-    *    via the abstract test system interface from the SUT, performs any

-    *    manipulation and transformation needed to convert it to a CDRinfo

-    *    value, and then attempts to match it to the p_expectedCDRinfo generated by CQ Designer

-    * @param

-    *    p_expectedCDRinfoExpected data generated by CQ Designer

-    */

-    function f_cq_receive_CDRinfo_from_GnOut(template CDRinfo p_expectedCDRinfo) runs on QtronicCT

-    {

-      if (tsp_enableLogging) { log(%definitionId, " enter: ", p_expectedCDRinfo); }

-        //Steps that need to be implemented    here are:

-        //1. receive and store (any) TTCN-3 data value via TTCN-3 port which corresponds to the GnOut model port

-        // var <T3_CDRinfoType> v_recvT3CDRinfo;

-        // GnOut.receive(<T3_CDRinfoType>:?) -> value v_recvT3CDRinfo;

-        // 2. replace real with symbolic values (if any) in the received TTCN-3 data value

-        // 3. transform data from a TTCN-3 to CDRinfo data value (if needed)

-        // varCDRinfov_recvCDRinfo = f_transformCDRinfoT3toCQ(v_recvT3CDRinfo);

-        // 4. set the verdict to fail if if there is a mismatch of the transformed value and p_expectedCDRinfo

-        // if ( !match( v_recvCDRinfo p_expectedCDRinfo) {

-        //  log(CQ_INFO: f_cq_receive_CDRinfo_from_GnOut: FAIL: Mismatch in received and expected CDRinfo values. Stopping test case.�);

-        //   setverdict(fail);

-        //   f_cq_f_MBT_Qtronic_endTestcase();

-        //   stop; }

-             //GnOut.receive(p_expectedCDRinfo);

-        // Remove or comment the following generated code

-        log("CQ_INFO: Warning: f_cq_receive_CDRinfo_from_GnOut: function is not implemented)");

-    }

-}

diff --git a/demo/ggsn/MBT_Qtronic_TestSystem.ttcn b/demo/ggsn/MBT_Qtronic_TestSystem.ttcn
deleted file mode 100644
index f64069f..0000000
--- a/demo/ggsn/MBT_Qtronic_TestSystem.ttcn
+++ /dev/null
@@ -1,92 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_TestSystem.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-10-01

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-/* -*- ttcn-3 -*- */

-

-/**

-* @file

-*    C:\Users\eantwuh\workspace\GGSN_Goteborg\MBT_Qtronic_Types.ttcn

-* @author

-*    Conformiq TTCN-3 scripting backend

-* @version

-*    Wed Sep 29 11:27:25 CEST 2010

-* @desc

-*    This file contains port type definitions and test component generated by Conformiq

-*    with 'DC 1' design configuration for 'GGSN_Goteborg' project.

-* @remark

-*    WARNING! This file has been automatically generated using the

-*    Conformiq TTCN-3 scripting backend. DO NOT EDIT.

-*/

-module MBT_Qtronic_TestSystem

-{

-    import from MBT_Qtronic_Types all; import from MBT_Qtronic_Main all;

-

-    type port CLIinPort message

-    {

-        inout Restart;

-        inout Configure;

-        inout OverrideConfiguration;

-        inout Prepare;

-        inout Restore;

-    } with {extension "internal"}

-    type port GiInPort message

-    {

-        inout UDPpdu;

-    } with {extension "internal"}

-    type port GiRadiusInPort message

-    {

-        inout RadiusAccessAccept;

-    } with {extension "internal"}

-    type port GnInPort message

-    {

-        inout CreatePDPcontext;

-        inout UpdatePDPcontext;

-        inout DeletePDPcontext;

-        inout GPDU;

-    } with {extension "internal"}

-    type port GiOutPort message

-    {

-        inout UDPpdu;

-    } with {extension "internal"}

-    type port GiRadiusOutPort message

-    {

-        inout RadiusAccessRequest;

-    } with {extension "internal"}

-    type port GnOutPort message

-    {

-        inout CreatePDPresponse;

-        inout UpdatePDPresponse;

-        inout DeletePDPresponse;

-        inout GPDU;

-        inout CDRinfo;

-    } with {extension "internal"}

-

-    /**

-    * @desc

-    *    The test component (MTC) on which all generated test cases run on

-    */

-    type component QtronicCT extends MBT_Qtronic_Main_CT

-    {

-        port CLIinPort CLIin;

-        port GiInPort GiIn;

-        port GiRadiusInPort GiRadiusIn;

-        port GnInPort GnIn;

-        port GiOutPort GiOut;

-        port GiRadiusOutPort GiRadiusOut;

-        port GnOutPort GnOut;

-        timer t_cq_timer := 0.0;

-    }

-}

diff --git a/demo/ggsn/MBT_Qtronic_Testcases.ttcn b/demo/ggsn/MBT_Qtronic_Testcases.ttcn
deleted file mode 100644
index 9c79fd1..0000000
--- a/demo/ggsn/MBT_Qtronic_Testcases.ttcn
+++ /dev/null
@@ -1,1282 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_Testcases.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-10-01

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-/* -*- ttcn-3 -*- */

-

-/**

-* @file

-*    C:\Users\eantwuh\workspace\GGSN_Goteborg\MBT_Qtronic_Testcases.ttcn

-* @author

-*    Conformiq TTCN-3 scripting backend

-* @version

-*    Wed Sep 29 11:27:25 CEST 2010

-* @desc

-*    This file contains all test cases generated from the Conformiq 'GGSN_Goteborg' project

-*    with 'DC 1' design configuration.

-* @remark

-*    WARNING! This file has been automatically generated using the

-*    Conformiq TTCN-3 scripting backend. DO NOT EDIT.

-*/

-module MBT_Qtronic_Testcases

-{

-    import from MBT_Qtronic_TestSystem all;

-    import from MBT_Qtronic_Types all;

-    /* Customized imports begin */

-    import from MBT_Qtronic_TestHarness all; import from MBT_Qtronic_Main all; import from EPTF_MBT_LGen_Definitions all;

-    /* Customized imports end */

-

-    modulepar float mp_max_response_time := 10.0;

-

-    /***** Logging verbosity flags *****/

-    /**

-    * @desc

-    *    When this module parameter value is set to true all requirements

-    *    targeted in each test case will be logged.

-    *    The default value of this module parameter is true.

-    */

-    modulepar boolean mp_log_targeted_requirements := true;

-

-    /**

-    * @desc

-    *    Generated test case #1

-    */

-    testcase tc_Test_Case_1()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_1'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_1: Step 1");

-        f_cq_send_Prepare_to_CLIin(m_PrepareTemplate1);

-        f_cq_log_target("Covered requirement: PrepareRestore/Prepare", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_1");

-    }

-    /***** Template definitions generated for tc_Test_Case_1*****/

-    template Prepare m_PrepareTemplate1 :=

-    {

-        cmds := {

-            "f_TELNET_Init",

-            "f_sr_TELNET_OverrideConfiguration"

-        }

-    }

-

-    /**

-    * @desc

-    *    Generated test case #2

-    */

-    testcase tc_Test_Case_2()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_2'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_2: Step 1");

-        f_cq_send_Restore_to_CLIin(m_RestoreTemplate2);

-        f_cq_log_target("Covered requirement: PrepareRestore/Restore", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_2");

-    }

-    /***** Template definitions generated for tc_Test_Case_2*****/

-    template Restore m_RestoreTemplate2 :=

-    {

-        cmds := {

-            "f_TELNET_Init",

-            "f_sr_TELNET_OverrideConfiguration"

-        }

-    }

-

-    /**

-    * @desc

-    *    Generated test case #3

-    */

-    testcase tc_Test_Case_3()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_3'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_3: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate3);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_3: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate4);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_3: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate5);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_3: Step 4");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_UDPpdu_to_GiIn(m_UDPpduTemplate6);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_3: Step 5");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_GPDU_from_GnOut(m_expectedGPDUTemplate7);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_3: Step 6");

-        f_cq_log_target("Covered requirement: Payload/Forward downlink", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate8);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_3: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate9);

-        t_cq_timer.stop;

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Configuration/Groups/Default - no options", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_3");

-    }

-    /***** Template definitions generated for tc_Test_Case_3*****/

-    template Configure m_ConfigureTemplate3 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := false,

-        enableRadiusAuth := false

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate4 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate5 :=

-    {

-        causevalue := 128

-    }

-

-    template UDPpdu m_UDPpduTemplate6 :=

-    {

-        data := 0

-    }

-

-    template GPDU m_expectedGPDUTemplate7 :=

-    {

-        data := 0

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate8 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate9 :=

-    {

-        causevalue := 128

-    }

-

-    /**

-    * @desc

-    *    Generated test case #4

-    */

-    testcase tc_Test_Case_4()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_4'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate10);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate11);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate12);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 4");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate13);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 5");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate14);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 6");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_UDPpdu_to_GiIn(m_UDPpduTemplate15);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_GPDU_from_GnOut(m_expectedGPDUTemplate16);

-        t_cq_timer.stop;

-

-        /***** Step 8; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 8");

-        f_cq_log_target("Covered requirement: Payload/Forward downlink", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate17);

-

-        /***** Step 9; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_4: Step 9");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate18);

-        t_cq_timer.stop;

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Payload/Bidirectional payload", e_requirement);

-        f_cq_log_target("Covered requirement: Configuration/Groups/Default - no options", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_4");

-    }

-    /***** Template definitions generated for tc_Test_Case_4*****/

-    template Configure m_ConfigureTemplate10 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := false,

-        enableRadiusAuth := false

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate11 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate12 :=

-    {

-        causevalue := 128

-    }

-

-    template GPDU m_GPDUTemplate13 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate14 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_UDPpduTemplate15 :=

-    {

-        data := 0

-    }

-

-    template GPDU m_expectedGPDUTemplate16 :=

-    {

-        data := 0

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate17 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate18 :=

-    {

-        causevalue := 128

-    }

-

-    /**

-    * @desc

-    *    Generated test case #5

-    */

-    testcase tc_Test_Case_5()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_5'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate19);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate20);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate21);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 4");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate22);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 5");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate23);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 6");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_UpdatePDPcontext_to_GnIn(m_UpdatePDPcontextTemplate24);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UpdatePDPresponse_from_GnOut(m_expectedUpdatePDPresponseTemplate25);

-        t_cq_timer.stop;

-

-        /***** Step 8; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 8");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful update", e_requirement);

-        f_cq_log_target("Covered requirement: PDP context/Update/After data transfer", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate26);

-

-        /***** Step 9; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_5: Step 9");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate27);

-        t_cq_timer.stop;

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Configuration/Groups/Default - no options", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_5");

-    }

-    /***** Template definitions generated for tc_Test_Case_5*****/

-    template Configure m_ConfigureTemplate19 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := false,

-        enableRadiusAuth := false

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate20 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate21 :=

-    {

-        causevalue := 128

-    }

-

-    template GPDU m_GPDUTemplate22 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate23 :=

-    {

-        data := 0

-    }

-

-    template UpdatePDPcontext m_UpdatePDPcontextTemplate24 :=

-    {

-        nsapi := 5

-    }

-

-    template UpdatePDPresponse m_expectedUpdatePDPresponseTemplate25 :=

-    {

-        causevalue := 128

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate26 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate27 :=

-    {

-        causevalue := 128

-    }

-

-    /**

-    * @desc

-    *    Generated test case #6

-    */

-    testcase tc_Test_Case_6()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_6'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate28);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate29);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate30);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 4");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_UpdatePDPcontext_to_GnIn(m_UpdatePDPcontextTemplate31);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 5");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UpdatePDPresponse_from_GnOut(m_expectedUpdatePDPresponseTemplate32);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 6");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful update", e_requirement);

-        f_cq_log_target("Covered requirement: PDP context/Update/Before data transfer", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate33);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate34);

-        t_cq_timer.stop;

-

-        /***** Step 8; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 8");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate35);

-

-        /***** Step 9; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_6: Step 9");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate36);

-        t_cq_timer.stop;

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Configuration/Groups/Default - no options", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_6");

-    }

-    /***** Template definitions generated for tc_Test_Case_6*****/

-    template Configure m_ConfigureTemplate28 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := false,

-        enableRadiusAuth := false

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate29 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate30 :=

-    {

-        causevalue := 128

-    }

-

-    template UpdatePDPcontext m_UpdatePDPcontextTemplate31 :=

-    {

-        nsapi := 5

-    }

-

-    template UpdatePDPresponse m_expectedUpdatePDPresponseTemplate32 :=

-    {

-        causevalue := 128

-    }

-

-    template GPDU m_GPDUTemplate33 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate34 :=

-    {

-        data := 0

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate35 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate36 :=

-    {

-        causevalue := 128

-    }

-

-    /**

-    * @desc

-    *    Generated test case #7

-    */

-    testcase tc_Test_Case_7()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_7'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate37);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate38);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate39);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 4");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate40);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 5");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate41);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 6");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate42);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate43);

-        t_cq_timer.stop;

-

-        /***** Step 8; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 8");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Charging/Single data", e_requirement);

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CDRinfo_from_GnOut(m_expectedCDRinfoTemplate44);

-        t_cq_timer.stop;

-

-        /***** Step 9; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_7: Step 9");

-        f_cq_log_target("Covered requirement: Configuration/Groups/Only Charging", e_requirement);

-        f_cq_send_OverrideConfiguration_to_CLIin(m_OverrideConfigurationTemplate45);

-        f_cq_log_target("Covered requirement: Configuration/Clean up if configuration changed", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_7");

-    }

-    /***** Template definitions generated for tc_Test_Case_7*****/

-    template Configure m_ConfigureTemplate37 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := true,

-        enableRadiusAuth := false

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate38 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate39 :=

-    {

-        causevalue := 128

-    }

-

-    template GPDU m_GPDUTemplate40 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate41 :=

-    {

-        data := 0

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate42 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate43 :=

-    {

-        causevalue := 128

-    }

-

-    template CDRinfo m_expectedCDRinfoTemplate44 :=

-    {

-        data := 1

-    }

-

-    template OverrideConfiguration m_OverrideConfigurationTemplate45 :=

-    {

-        overrideCharging := true,

-        overrideRadiusAuth := false

-    }

-

-    /**

-    * @desc

-    *    Generated test case #8

-    */

-    testcase tc_Test_Case_8()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_8'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate46);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate47);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_RadiusAccessRequest_from_GiRadiusOut(m_expectedRadiusAccessRequestTemplate48);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 4");

-        f_cq_log_target("Covered requirement: Radius/Authentication/Send Access Request", e_requirement);

-        f_cq_send_RadiusAccessAccept_to_GiRadiusIn(m_RadiusAccessAcceptTemplate49);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 5");

-        f_cq_log_target("Covered requirement: Radius/Authentication/Wait for Access Accept", e_requirement);

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate50);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 6");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate51);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate52);

-        t_cq_timer.stop;

-

-        /***** Step 8; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 8");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate53);

-

-        /***** Step 9; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 9");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate54);

-        t_cq_timer.stop;

-

-        /***** Step 10; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_8: Step 10");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Configuration/Groups/Only Radius Auth", e_requirement);

-        f_cq_send_OverrideConfiguration_to_CLIin(m_OverrideConfigurationTemplate55);

-        f_cq_log_target("Covered requirement: Configuration/Clean up if configuration changed", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_8");

-    }

-    /***** Template definitions generated for tc_Test_Case_8*****/

-    template Configure m_ConfigureTemplate46 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := false,

-        enableRadiusAuth := true

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate47 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template RadiusAccessRequest m_expectedRadiusAccessRequestTemplate48 :=

-    {

-        

-    }

-

-    template RadiusAccessAccept m_RadiusAccessAcceptTemplate49 :=

-    {

-        

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate50 :=

-    {

-        causevalue := 128

-    }

-

-    template GPDU m_GPDUTemplate51 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate52 :=

-    {

-        data := 0

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate53 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate54 :=

-    {

-        causevalue := 128

-    }

-

-    template OverrideConfiguration m_OverrideConfigurationTemplate55 :=

-    {

-        overrideCharging := false,

-        overrideRadiusAuth := true

-    }

-

-    /**

-    * @desc

-    *    Generated test case #9

-    */

-    testcase tc_Test_Case_9()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_9'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate56);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate57);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_RadiusAccessRequest_from_GiRadiusOut(m_expectedRadiusAccessRequestTemplate58);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 4");

-        f_cq_log_target("Covered requirement: Radius/Authentication/Send Access Request", e_requirement);

-        f_cq_send_RadiusAccessAccept_to_GiRadiusIn(m_RadiusAccessAcceptTemplate59);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 5");

-        f_cq_log_target("Covered requirement: Radius/Authentication/Wait for Access Accept", e_requirement);

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate60);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 6");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate61);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate62);

-        t_cq_timer.stop;

-

-        /***** Step 8; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 8");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate63);

-

-        /***** Step 9; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 9");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate64);

-        t_cq_timer.stop;

-

-        /***** Step 10; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 10");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Charging/Single data", e_requirement);

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CDRinfo_from_GnOut(m_expectedCDRinfoTemplate65);

-        t_cq_timer.stop;

-

-        /***** Step 11; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_9: Step 11");

-        f_cq_log_target("Covered requirement: Configuration/Groups/Both Charging and Radius Auth", e_requirement);

-        f_cq_send_OverrideConfiguration_to_CLIin(m_OverrideConfigurationTemplate66);

-        f_cq_log_target("Covered requirement: Configuration/Clean up if configuration changed", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_9");

-    }

-    /***** Template definitions generated for tc_Test_Case_9*****/

-    template Configure m_ConfigureTemplate56 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := true,

-        enableRadiusAuth := true

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate57 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template RadiusAccessRequest m_expectedRadiusAccessRequestTemplate58 :=

-    {

-        

-    }

-

-    template RadiusAccessAccept m_RadiusAccessAcceptTemplate59 :=

-    {

-        

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate60 :=

-    {

-        causevalue := 128

-    }

-

-    template GPDU m_GPDUTemplate61 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate62 :=

-    {

-        data := 0

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate63 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate64 :=

-    {

-        causevalue := 128

-    }

-

-    template CDRinfo m_expectedCDRinfoTemplate65 :=

-    {

-        data := 1

-    }

-

-    template OverrideConfiguration m_OverrideConfigurationTemplate66 :=

-    {

-        overrideCharging := true,

-        overrideRadiusAuth := true

-    }

-

-    /**

-    * @desc

-    *    Generated test case #10

-    */

-    testcase tc_Test_Case_10()

-    runs on QtronicCT

-    {

-        log("CQ_DEBUG: Starting execution of test case: 'tc_Test_Case_10'");

-        var float v_last_wait_timeout := 0.0;

-        var default v_cq_default;

-

-        /***** set up test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_beginTestcase();

-        // default handles waiting beyond maximum response time and reception of any

-        // other than the expected message with setting a fail verdict and stopping the test

-        v_cq_default := activate(a_cq_default());

-

-        /***** Step 1; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 1");

-        f_cq_send_Configure_to_CLIin(m_ConfigureTemplate67);

-

-        /***** Step 2; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 2");

-        f_cq_send_CreatePDPcontext_to_GnIn(m_CreatePDPcontextTemplate68);

-

-        /***** Step 3; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 3");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CreatePDPresponse_from_GnOut(m_expectedCreatePDPresponseTemplate69);

-        t_cq_timer.stop;

-

-        /***** Step 4; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 4");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful creation", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate70);

-

-        /***** Step 5; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 5");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate71);

-        t_cq_timer.stop;

-

-        /***** Step 6; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 6");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_GPDU_to_GnIn(m_GPDUTemplate72);

-

-        /***** Step 7; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 7");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_UDPpdu_from_GiOut(m_expectedUDPpduTemplate73);

-        t_cq_timer.stop;

-

-        /***** Step 8; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 8");

-        f_cq_log_target("Covered requirement: Payload/Forward uplink", e_requirement);

-        f_cq_send_DeletePDPcontext_to_GnIn(m_DeletePDPcontextTemplate74);

-

-        /***** Step 9; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 9");

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_DeletePDPresponse_from_GnOut(m_expectedDeletePDPresponseTemplate75);

-        t_cq_timer.stop;

-

-        /***** Step 10; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 10");

-        f_cq_log_target("Covered requirement: PDP context/Confirm successful deletion", e_requirement);

-        f_cq_log_target("Covered requirement: Charging/Multiple data", e_requirement);

-        t_cq_timer.start(mp_max_response_time);

-        // Note: In below receive v_cq_default() is active!

-        f_cq_receive_CDRinfo_from_GnOut(m_expectedCDRinfoTemplate76);

-        t_cq_timer.stop;

-

-        /***** Step 11; t = 0.0 *****/

-        log("CQ_DEBUG: tc_Test_Case_10: Step 11");

-        f_cq_log_target("Covered requirement: Configuration/Groups/Only Charging", e_requirement);

-        f_cq_send_OverrideConfiguration_to_CLIin(m_OverrideConfigurationTemplate77);

-        f_cq_log_target("Covered requirement: Configuration/Clean up if configuration changed", e_requirement);

-

-        setverdict(pass);

-        deactivate(v_cq_default);

-

-        /***** tear down test configuration, TTCN-3 harness, and adapter *****/

-        f_cq_endTestcase();

-

-        log("CQ_DEBUG: Ending execution of tc_Test_Case_10");

-    }

-    /***** Template definitions generated for tc_Test_Case_10*****/

-    template Configure m_ConfigureTemplate67 :=

-    {

-        cmds := {

-            "DEFAULT_CONFIG"

-        },

-        enableCharging := true,

-        enableRadiusAuth := false

-    }

-

-    template CreatePDPcontext m_CreatePDPcontextTemplate68 :=

-    {

-        imsi := "240001111231411",

-        nsapi := 5,

-        apn := "apn1.com"

-    }

-

-    template CreatePDPresponse m_expectedCreatePDPresponseTemplate69 :=

-    {

-        causevalue := 128

-    }

-

-    template GPDU m_GPDUTemplate70 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate71 :=

-    {

-        data := 0

-    }

-

-    template GPDU m_GPDUTemplate72 :=

-    {

-        data := 0

-    }

-

-    template UDPpdu m_expectedUDPpduTemplate73 :=

-    {

-        data := 0

-    }

-

-    template DeletePDPcontext m_DeletePDPcontextTemplate74 :=

-    {

-        nsapi := 5

-    }

-

-    template DeletePDPresponse m_expectedDeletePDPresponseTemplate75 :=

-    {

-        causevalue := 128

-    }

-

-    template CDRinfo m_expectedCDRinfoTemplate76 :=

-    {

-        data := 2

-    }

-

-    template OverrideConfiguration m_OverrideConfigurationTemplate77 :=

-    {

-        overrideCharging := true,

-        overrideRadiusAuth := false

-    }

-

-

-    /**

-    * @desc

-    *    This altstep handles terminating after waiting up to

-    *    the maximum response time and receiving any other

-    *    than the expected message with setting a fail 

-    *    verdict and stopping the test

-    */

-    altstep a_cq_default() runs on QtronicCT

-    {

-            [] t_cq_timer.timeout

-            {

-                setverdict(fail);

-                log("CQ_DEBUG: a_cq_default(): FAIL: Stopping test case after time out of timer: t_cq_timer!");

-                f_cq_endTestcase();

-                stop;

-            }

-    }

-    /**

-    * @desc

-    *    This function blocks the execution for the specified time

-    * @param

-    *    p_duration The specified time in seconds

-    */

-    function f_cq_sleep(float p_duration)

-    {

-        timer t;

-        t.start(p_duration);

-        t.timeout; // Note that any active default behavior may interrupt this waiting!

-    }

-

-    type enumerated target_type

-    {

-        e_requirement

-    }

-

-    /**

-    * @desc

-    *    This function logs target description if the module parameter

-    *    related to the target type is set to true.

-    *    Module parameters and target type dependencies are as follows:

-    *        mp_log_targeted_requirements controls logging of targets type e_requirement

-    * @param

-    *    p_description The textual target description to be logged

-    * @param 

-    *    p_target_type The type of target covered by a test

-    */

-    function f_cq_log_target (charstring p_description, target_type p_target_type) runs on QtronicCT

-    {

-        if ((p_target_type == e_requirement) and mp_log_targeted_requirements)

-        {

-            log("CQ_INFO: " & p_description);

-        }

-    }

-    control

-    {

-        execute(tc_Test_Case_1());

-        execute(tc_Test_Case_2());

-        execute(tc_Test_Case_3());

-        execute(tc_Test_Case_4());

-        execute(tc_Test_Case_5());

-        execute(tc_Test_Case_6());

-        execute(tc_Test_Case_7());

-        execute(tc_Test_Case_8());

-        execute(tc_Test_Case_9());

-        execute(tc_Test_Case_10());

-    }

-

-}

diff --git a/demo/ggsn/MBT_Qtronic_Types.ttcn b/demo/ggsn/MBT_Qtronic_Types.ttcn
deleted file mode 100644
index 2ec8b61..0000000
--- a/demo/ggsn/MBT_Qtronic_Types.ttcn
+++ /dev/null
@@ -1,105 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_Types.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-10-01

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-/* -*- ttcn-3 -*- */

-

-/**

-* @file

-*    C:\Users\eantwuh\workspace\GGSN_Goteborg\MBT_Qtronic_Types.ttcn

-* @author

-*    Conformiq TTCN-3 scripting backend

-* @version

-*    Wed Sep 29 11:27:25 CEST 2010

-* @desc

-*    This file contains all data type definitions exported from the Conformiq GGSN_Goteborg' project.

-*    with 'DC 1' design configuration.'

-* @remark

-*    WARNING! This file has been automatically generated using the

-*    Conformiq TTCN-3 scripting backend. DO NOT EDIT.

-*/

-module MBT_Qtronic_Types

-{

-    type record Restart

-    {

-        

-    }

-    type record Configure

-    {

-        charstringArray cmds,

-        boolean enableCharging,

-        boolean enableRadiusAuth

-    }

-    type record OverrideConfiguration

-    {

-        boolean overrideCharging,

-        boolean overrideRadiusAuth

-    }

-    type record Prepare

-    {

-        charstringArray cmds

-    }

-    type record Restore

-    {

-        charstringArray cmds

-    }

-    type record UDPpdu

-    {

-        integer data

-    }

-    type record RadiusAccessAccept

-    {

-        

-    }

-    type record CreatePDPcontext

-    {

-        charstring imsi,

-        integer nsapi,

-        charstring apn

-    }

-    type record UpdatePDPcontext

-    {

-        integer nsapi

-    }

-    type record DeletePDPcontext

-    {

-        integer nsapi

-    }

-    type record GPDU

-    {

-        integer data

-    }

-    type record RadiusAccessRequest

-    {

-        

-    }

-    type record CreatePDPresponse

-    {

-        integer causevalue

-    }

-    type record UpdatePDPresponse

-    {

-        integer causevalue

-    }

-    type record DeletePDPresponse

-    {

-        integer causevalue

-    }

-    type record CDRinfo

-    {

-        integer data

-    }

-    type record of charstring charstringArray;

-}

diff --git a/demo/ggsn/makefile_patch.sh b/demo/ggsn/makefile_patch.sh
deleted file mode 100755
index 51e24e4..0000000
--- a/demo/ggsn/makefile_patch.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-sed -e '
-s/OPENSSL_DIR =/#OPENSSL_DIR =/g
-
-s/CPPFLAGS = .*/CPPFLAGS = -D$(PLATFORM) -I$(TTCN3_DIR)\/include -I$(OPENSSL_DIR)\/include -DNO_IPV6/g
-
-s/SOLARIS8_LIBS = -lsocket -lnsl/SOLARIS8_LIBS = -lpcap -lsocket -lnsl -lresolv/g
-
-s/LINUX_LIBS = -lxml2/LINUX_LIBS = -lxml2 -lpcap/g
-
-s/COMPILER_FLAGS = -L/COMPILER_FLAGS = -L -w/g
-' <$1 >$2
-
-
diff --git a/demo/ggsn/model/CDRrecords.java b/demo/ggsn/model/CDRrecords.java
deleted file mode 100644
index 61094c1..0000000
--- a/demo/ggsn/model/CDRrecords.java
+++ /dev/null
@@ -1,9 +0,0 @@
-/**

- * CDRrecords.java

- * 

- * CDR (charging date) related records

- */

-

-record  CDRinfo {

-	int data;

-}

diff --git a/demo/ggsn/model/CLIrecords.java b/demo/ggsn/model/CLIrecords.java
deleted file mode 100644
index 35c157f..0000000
--- a/demo/ggsn/model/CLIrecords.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/**

- * CLIrecords.java

- * 

- * Ericsson CLI interface records/messages

- */

-

-// Restart - restart node, for instance after changing

-// the node configuraion

-record  Restart { }

-

-record  Prepare {

-	String[] cmds;

-}

-

-record  Restore {

-	String[] cmds;

-}

-

-/**

- * Configuration

- * 

- * Sample GGSN configuration from  test_basic.ttcn  :

- * 

-    f_sr_TELNET_Configuration(

-        {   "set services ggsn charging charging-format 6",

-            "set services ggsn charging cdr-attribute record-extension",

-            "set services ggsn charging characteristics profile8 transfer-type gtp-prime",

-            "set services ggsn charging characteristics profile8 gtp-prime gateway " & tsp_CGF_IpAddr,

-            "set services ggsn charging characteristics profile8 change-limit 1",

-            "set services ggsn charging characteristics default profile8"

-        });  

- *

- *  4th command above relies on an IP address taken from TTCN configuration item "tsp_CGF_IpAddr"

- *  For the pilot we define all configuration commands at the harness level.

- *  Only use "configuration identifiers" at model level, for instance "DEFAULT_CONFIG"??

- *  

- *  It would be possible to define (alternative) configuration at the model level,

- *  and still apply variable substitution on the TTCN level.

-**/

-

-record  Configure {

-	String[] cmds;

-	

-	// 100222: Feature based configuration

-	// On the model level we only take care that certain things assume the

-	// node is configured in a certain way. For instance, the part of the

-	// model describing how a CDR is sent out can only be done if the node

-	// has been set up with charging enabled;

-	

-	boolean enableCharging;

-	boolean enableRadiusAuth;

-}

-

-record OverrideConfiguration {

-	// If we want to tailor the cleanup we can add data items

-	// here to control the cleanup.

-	boolean overrideCharging;

-	boolean overrideRadiusAuth;

-}

diff --git a/demo/ggsn/model/GGSN.java b/demo/ggsn/model/GGSN.java
deleted file mode 100644
index ac20fd4..0000000
--- a/demo/ggsn/model/GGSN.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/**

- * GGSN.java

- * 

- * Core logic of GGSN

- **/

-

-class PDPcontext {

-	public int nsapi;

-	public String imsi;

-	//public int uplinkDataTeid;

-	//public int downlinkDataTeid;

-}

-

-class GGSN extends StateMachine

-{

-	private Charging charging;

-	private CLI cli;

-	private NodeConfiguration nodeConfiguration;

-	private int uplinkData;

-	private int downlinkData;

-	private PDPcontext pdpContext;

-	

-	public GGSN(Charging charging, CLI cli, NodeConfiguration nodeConfiguration)

-	{

-		this.charging = charging;

-		this.cli = cli;

-		this.nodeConfiguration = nodeConfiguration;

-		uplinkData = 0;

-		downlinkData = 0;

-		

-		// NB: In our simplified view (for now) we only handle a single context,

-		// but the model can be easily enhanced to handle multiple contexts.

-		pdpContext = new PDPcontext();

-	}

-

-	private void createPDPcontext(CreatePDPcontext request)

-	{

-		// Control incoming data values - Qtronic specific to

-		// control test data generated for test suite.

-		

-		/**

-		 * Snippet of how it may look with a more or less

-		 * one-to-one mapping between model and GTPC data:

-		require request.imsi_digits != null;

-		require request.imsi_digits.length == IMSI_OCTETS;

-		for (int i = 0; i < request.imsi_digits.length; i++)

-			require request.imsi_digits[i] == imsi1[i];

-		

-		require request.teidDataI != null;

-		require request.teidDataI.length == TEID_OCTETS;

-		for (int i = 0; i < request.teidDataI.length; i++)

-			require request.teidDataI[i] == teid1[i];

-		**/

-		

-		// Our simplified view on data

-		require request.imsi == "240001111231411";

-		//require request.downlinkDataTeid == 1;

-		require request.nsapi == 5;

-		require	request.apn == "apn1.com";

-		

-		// Handle request - in our simplified view we handle

-		// only one single PDP context. The state machine is

-		// laid out so that a createPDPcontext will always be

-		// done before any update, delete, or sending of payload.

-		pdpContext.imsi = request.imsi;

-		pdpContext.nsapi = request.nsapi;

-		//pdpContext.downlinkDataTeid = request.downlinkDataTeid;

-

-		//pdpContext.uplinkDataTeid = 3;

-	}

-	

-	private void sendRadiusAuthRequest()

-	{

-		RadiusAccessRequest request;

-		GiRadiusOut.send(request);

-		requirement "Radius/Authentication/Send Access Request";

-	}

-

-	private void confirmCreatePDPcontext()

-	{

-		// Send response back

-		CreatePDPresponse  response;

-		response.causevalue = REQUEST_ACCEPTED;

-		//response.uplinkDataTeid = pdpContext.uplinkDataTeid;

-		GnOut.send(response);

-		requirement "PDP context/Confirm successful creation";

-	}

-	

-	private void updatePDPcontext(UpdatePDPcontext request)

-	{

-		// TODO: what to do with update??

-		// Currently it seems TTCN libraries take care of both update

-		// details and receiving the correct response, as well as doing

-		// the pass/fail verdict.

-		// We can have an "empty" update request in the model to just

-		// trigger a call to the existing library update function, or

-		// we can add more detail to the model and NOT use the existing

-		// library update function.

-		

-		// 100114: we can handle the response to the update on the

-		// model level for understanding, but regard it as a NOP on

-		// the QtronicHarness level.

-		

-		

-		require request.nsapi == pdpContext.nsapi;

-		//require request.downlinkDataTeid == pdpContext.downlinkDataTeid;

-		

-		// Send response

-		UpdatePDPresponse response;

-		

-		response.causevalue = REQUEST_ACCEPTED;

-		GnOut.send(response);

-		requirement "PDP context/Confirm successful update";

-	}

-

-	private void deletePDPcontext(DeletePDPcontext request)

-	{

-		// Take care of request parameters

-		require request.nsapi == pdpContext.nsapi;

-		

-		// Send response back

-		DeletePDPresponse  response;

-		response.causevalue = REQUEST_ACCEPTED;

-		GnOut.send(response);

-		requirement "PDP context/Confirm successful deletion";

-	}

-

-	// forwardGPDUtoGi() - when a GPDU is recieved on the Gn interface

-	// the payload should be forwarded to the Gi interface

-	private void forwardGPDUtoGi(GPDU pdu)

-	{

-		//require pdu.header.teid == pdpContext.uplinkDataTeid;

-		

-		// TODO: how much detail on model level?

-		uplinkData++;

-		charging.payload(pdu);

-		

-		// Forward payload

-		UDPpdu udpPdu;

-		udpPdu.data = pdu.data;

-		GiOut.send(udpPdu);

-	}

-

-	// forwardUdpPduToGn() - when a UDP pdu is recieved on the Gi interface

-	// it should be forwarded/tunneled to the Gn interface

-	private void forwardUdpPduToGn(UDPpdu udpPdu)

-	{

-		// Forward/tunnel payload

-		GPDU pdu;

-		

-		//pdu.header.teid = pdpContext.downlinkDataTeid;

-		pdu.data = udpPdu.data;

-		GnOut.send(pdu);

-		

-		// TODO: how much detail on model level?

-		downlinkData++;

-		charging.payload(pdu);

-	}

-}

-

-void main()

-{

-	NodeConfiguration nodeConfiguration = new NodeConfiguration();	

-	Charging charging = new Charging();

-	CLI cli = new CLI(nodeConfiguration);

-	

-	GGSN ggsn = new GGSN(charging, cli, nodeConfiguration);

-	ggsn.start("GGSN");

-}

diff --git a/demo/ggsn/model/GGSN.xmi b/demo/ggsn/model/GGSN.xmi
deleted file mode 100644
index 0745df4..0000000
--- a/demo/ggsn/model/GGSN.xmi
+++ /dev/null
@@ -1,230 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

-<n1:Project xmlns:n1="http://www.conformiq.com/EMF/SimpleStatechart" xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

-

-  <statemachine name="GGSN">

-    <transitions body="" from="//@statemachine.0/@states.0" to="//@statemachine.0/@states.1"/>

-    <transitions body="CLIin:Configure[]/&#xA;cli.configure(msg);" from="//@statemachine.0/@states.1" to="//@statemachine.0/@states.2"/>

-    <transitions body="GnIn:CreatePDPcontext[]/&#xA;createPDPcontext(msg);" from="//@statemachine.0/@states.2" to="//@statemachine.0/@states.4"/>

-    <transitions body="GnIn:DeletePDPcontext[]/&#xA;deletePDPcontext(msg);&#xA;require ((uplinkData > 0) || (downlinkData > 0));&#xA;if ((uplinkData > 0) &amp;&amp; (downlinkData > 0))&#xA;  requirement &quot;Payload/Bidirectional payload&quot;;" from="//@statemachine.0/@states.5" to="//@statemachine.0/@states.3"/>

-    <transitions body="[nodeConfiguration.chargingEnabled]/&#xA;charging.sendInfo(GnOut);" from="//@statemachine.0/@states.3" to="//@statemachine.0/@states.10"/>

-    <transitions body="" from="//@statemachine.0/@states.4" to="//@statemachine.0/@states.5"/>

-    <transitions body="GnIn:UpdatePDPcontext[]/&#xA;{&#xA;  updatePDPcontext(msg);&#xA;  if ((uplinkData > 0) || (downlinkData > 0))&#xA;    requirement &quot;PDP context/Update/After data transfer&quot;;&#xA;  else&#xA;    requirement &quot;PDP context/Update/Before data transfer&quot;;&#xA;}" from="//@statemachine.0/@states.5" to="//@statemachine.0/@states.5"/>

-    <transitions body="[else]/" from="//@statemachine.0/@states.3" to="//@statemachine.0/@states.10"/>

-    <transitions body="[else]/" from="//@statemachine.0/@states.9" to="//@statemachine.0/@states.6"/>

-    <transitions body="[nodeConfiguration.configurationChanged()]/" from="//@statemachine.0/@states.9" to="//@statemachine.0/@states.7"/>

-    <transitions body="CLIin:Prepare[]/&#xA;handlePrepare(msg);&#xA;requirement &quot;PrepareRestore/Prepare&quot;;" from="//@statemachine.0/@states.1" to="//@statemachine.0/@states.8"/>

-    <transitions body="CLIin:Restore[]/&#xA;handleRestore(msg);&#xA;requirement &quot;PrepareRestore/Restore&quot;;" from="//@statemachine.0/@states.1" to="//@statemachine.0/@states.8"/>

-    <transitions body="[]/nodeConfiguration.checkConfiguration();" from="//@statemachine.0/@states.10" to="//@statemachine.0/@states.9"/>

-    <transitions body="CLIin: OverrideConfiguration[]/&#xA;require ((msg.overrideCharging == nodeConfiguration.chargingEnabled)&#xA;      &amp;&amp;  (msg.overrideRadiusAuth == nodeConfiguration.radiusAuthEnabled));&#xA;requirement &quot;Configuration/Clean up if configuration changed&quot;;" from="//@statemachine.0/@states.7" to="//@statemachine.0/@states.6"/>

-    <states xsi:type="n1:InitialState"/>

-    <states internal="&#xA;" name="Init" xsi:type="n1:BasicState"/>

-    <states internal="&#xA;" name="Operational" xsi:type="n1:BasicState"/>

-    <states internal="&#xA;" name="ContextDeleted" xsi:type="n1:BasicState"/>

-    <states internal="" name="CreateContext" xsi:type="n1:BasicState">

-      <transitions body="[]/" from="//@statemachine.0/@states.4/@states.0" to="//@statemachine.0/@states.4/@states.3"/>

-      <transitions body="GiRadiusIn:RadiusAccessAccept []/&#xA;requirement &quot;Radius/Authentication/Wait for Access Accept&quot;;" from="//@statemachine.0/@states.4/@states.1" to="//@statemachine.0/@states.4/@states.4"/>

-      <transitions body="[nodeConfiguration.radiusAuthEnabled]/&#xA;sendRadiusAuthRequest();" from="//@statemachine.0/@states.4/@states.3" to="//@statemachine.0/@states.4/@states.1"/>

-      <transitions body="[]/&#xA;confirmCreatePDPcontext();" from="//@statemachine.0/@states.4/@states.4" to="//@statemachine.0/@states.4/@states.2"/>

-      <transitions body="[else]/" from="//@statemachine.0/@states.4/@states.3" to="//@statemachine.0/@states.4/@states.4"/>

-      <states xsi:type="n1:InitialState"/>

-      <states internal="" name="Wait For Radius Accept" xsi:type="n1:BasicState"/>

-      <states xsi:type="n1:FinalState"/>

-      <states xsi:type="n1:Junction"/>

-      <states xsi:type="n1:Junction"/>

-    </states>

-    <states internal="GnIn:GPDU[]/&#xA;{ forwardGPDUtoGi(msg);&#xA;  requirement &quot;Payload/Forward uplink&quot;;  }&#xA;&#xA;GiIn:UDPpdu[]/&#xA;{ forwardUdpPduToGn(msg);&#xA;  requirement &quot;Payload/Forward downlink&quot;; }" name="DataForwarding" xsi:type="n1:BasicState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states internal="" name="Cleanup" xsi:type="n1:BasicState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:Junction"/>

-    <states xsi:type="n1:Junction"/>

-  </statemachine>

-

-  <diagrams statemachine="//@statemachine.0">

-    <items state="//@statemachine.0/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="400" y="40"/>

-    </items>

-    <items height="70" state="//@statemachine.0/@states.1" width="199" xsi:type="n1:DiagramBasicState">

-      <location x="300" y="176"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="410" y="118"/>

-      <route x="400" y="60"/>

-      <route x="400" y="176"/>

-    </items>

-    <items height="114" note="Interfaces/ports:&#xA;&#xA;CLIin&#x9;&#x9;CLI commands&#xA;GnIn/GnOut&#x9;i/f to SGSN&#xA;GiIn/GiOut&#x9;&#x9;i/f to internet" width="288" xsi:type="n1:DiagramNote">

-      <location x="263" y="-117"/>

-    </items>

-    <items height="70" state="//@statemachine.0/@states.2" width="199" xsi:type="n1:DiagramBasicState">

-      <location x="278" y="363"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.3" width="200" xsi:type="n1:DiagramBasicState">

-      <location x="800" y="700"/>

-    </items>

-    <items height="89" state="//@statemachine.0/@states.4" width="202" xsi:type="n1:DiagramBasicState">

-      <location x="798" y="158"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="409.5" y="304.5"/>

-      <route x="399.5" y="246"/>

-      <route x="399.5" y="363"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="910" y="113.5"/>

-      <route x="477" y="400"/>

-      <route x="600" xsi:type="n1:DiagramLayoutMarker" y="400"/>

-      <route x="600" xsi:type="n1:DiagramLayoutMarker" y="42"/>

-      <route x="900" y="42"/>

-      <route x="900" xsi:type="n1:DiagramLayoutMarker" y="69"/>

-      <route x="900" y="158"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.3" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="915.5" y="631.5"/>

-      <route x="905.5" y="563"/>

-      <route x="905.5" y="700"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.4" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="843" constraintLeft="1020" valign="0" x="1194.5" y="760"/>

-      <route x="1000" y="750"/>

-      <route x="1389" y="750"/>

-      <route x="1389" xsi:type="n1:DiagramLayoutMarker" y="863"/>

-      <route x="900" y="863"/>

-      <route x="900" y="890"/>

-    </items>

-    <items height="108" note="GGSN Rule No. 1 – Payload &#xA;Payload shall always be transmitted in a test case whenever a successful PDP Context Activation has been performed.&#xA;" width="374" xsi:type="n1:DiagramNote">

-      <location x="1297" y="552"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.5" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="909" y="288"/>

-      <route x="899" y="247"/>

-      <route x="899" y="329"/>

-    </items>

-    <items height="234" state="//@statemachine.0/@states.5" width="307" xsi:type="n1:DiagramBasicState">

-      <location x="752" y="329"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.6" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintLeft="1207" constraintTop="268" valign="1" x="1364.5" y="453"/>

-      <route x="1059" y="463"/>

-      <route x="1187" xsi:type="n1:DiagramLayoutMarker" y="463"/>

-      <route x="1544" y="463"/>

-      <route x="1544" xsi:type="n1:DiagramLayoutMarker" y="248"/>

-      <route x="1032" y="248"/>

-      <route x="1032" y="329"/>

-    </items>

-    <items state="//@statemachine.0/@states.6" xsi:type="n1:DiagramFinalState">

-      <location x="1209" y="1234"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.7" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="599.5" y="744"/>

-      <route x="800" y="754"/>

-      <route x="399" xsi:type="n1:DiagramLayoutMarker" y="754"/>

-      <route x="402" y="754"/>

-      <route x="402" xsi:type="n1:DiagramLayoutMarker" y="862"/>

-      <route x="900" y="862"/>

-      <route x="900" y="890"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.7" width="200" xsi:type="n1:DiagramBasicState">

-      <location x="1561" y="1017"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.8" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="910" y="1122"/>

-      <route x="900" y="1010"/>

-      <route x="900" xsi:type="n1:DiagramLayoutMarker" y="1234"/>

-      <route x="1189" y="1234"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.9" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="1006" constraintLeft="930" valign="0" x="1214" y="1010"/>

-      <route x="910" y="1000"/>

-      <route x="1661" y="1000"/>

-      <route x="1661" y="1017"/>

-    </items>

-    <items height="53" note="Restore default configuration only if needed" width="236" xsi:type="n1:DiagramNote">

-      <location x="1485" y="1152"/>

-    </items>

-    <items state="//@statemachine.0/@states.8" xsi:type="n1:DiagramFinalState">

-      <location x="-100" y="200"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.10" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-90" y="140"/>

-      <route x="300" y="200"/>

-      <route x="246" xsi:type="n1:DiagramLayoutMarker" y="200"/>

-      <route x="246" xsi:type="n1:DiagramLayoutMarker" y="100"/>

-      <route x="-100" xsi:type="n1:DiagramLayoutMarker" y="100"/>

-      <route x="-100" y="180"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.11" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="73.5" y="290"/>

-      <route x="300" y="223"/>

-      <route x="246" xsi:type="n1:DiagramLayoutMarker" y="223"/>

-      <route x="247" y="223"/>

-      <route x="247" xsi:type="n1:DiagramLayoutMarker" y="300"/>

-      <route x="-100" xsi:type="n1:DiagramLayoutMarker" y="300"/>

-      <route x="-100" y="220"/>

-    </items>

-    <items state="//@statemachine.0/@states.9" xsi:type="n1:DiagramJunction">

-      <location x="900" y="1000"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.12" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="910" y="950"/>

-      <route x="900" y="910"/>

-      <route x="900" y="990"/>

-    </items>

-    <items state="//@statemachine.0/@states.10" xsi:type="n1:DiagramJunction">

-      <location x="900" y="900"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.13" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="1194" constraintRight="1541" valign="0" x="1385" y="1077"/>

-      <route x="1561" y="1067"/>

-      <route x="1209" y="1067"/>

-      <route x="1209" y="1214"/>

-    </items>

-  </diagrams>

-

-  <diagrams substate="//@statemachine.0/@states.4">

-    <items state="//@statemachine.0/@states.4/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="198" y="68"/>

-    </items>

-    <items height="80" state="//@statemachine.0/@states.4/@states.1" width="223" xsi:type="n1:DiagramBasicState">

-      <location x="387" y="284"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.4/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="138" constraintLeft="238" valign="0" x="359.5" y="78"/>

-      <route x="218" y="68"/>

-      <route x="501" y="68"/>

-      <route x="501" y="158"/>

-    </items>

-    <items state="//@statemachine.0/@states.4/@states.2" xsi:type="n1:DiagramFinalState">

-      <location x="500" y="600"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.4/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="510" y="417"/>

-      <route x="500" y="364"/>

-      <route x="500" y="470"/>

-    </items>

-    <items state="//@statemachine.0/@states.4/@states.3" xsi:type="n1:DiagramJunction">

-      <location x="501" y="168"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.4/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="511" y="231"/>

-      <route x="501" y="178"/>

-      <route x="501" y="284"/>

-    </items>

-    <items state="//@statemachine.0/@states.4/@states.4" xsi:type="n1:DiagramJunction">

-      <location x="500" y="480"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.4/@transitions.3" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="510" y="535"/>

-      <route x="500" y="490"/>

-      <route x="500" y="580"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.4/@transitions.4" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="458" constraintRight="281" valign="0" x="300.5" y="177"/>

-      <route x="501" y="167"/>

-      <route x="301" xsi:type="n1:DiagramLayoutMarker" y="167"/>

-      <route x="300" y="167"/>

-      <route x="300" xsi:type="n1:DiagramLayoutMarker" y="478"/>

-      <route x="500" y="478"/>

-    </items>

-  </diagrams>

-

-</n1:Project>

diff --git a/demo/ggsn/model/GTPrecords.java b/demo/ggsn/model/GTPrecords.java
deleted file mode 100644
index 5518a16..0000000
--- a/demo/ggsn/model/GTPrecords.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/**

- * GTPrecords.java

- *

- * GTP and GTP-U records/messages

-**/

-

-// References to 3GPP TS 29.060 V8.7.0

-

-// IMSI 7.7.2

-record  IMSI_gtpc

-{

-	int		type_gtpc;				// type = 2 (Decimal)

-	int[]	imsi_digits;			// 8 octets (15 BCD digits + padding)

-}

-

-//TEI Data I - 7.7.13

-// Tunnel Endpoint Identifier Data

-// Returned by a successful Create PDP Context request,

-// shall be used for all subsequent uplink G-PDUs related

-// to the PDP context.

-record TeidDataI

-{

- int		type_gtpc;				// type = 16 (Decimal)

- int[]		teidDataI;				// 4 octets

-}

-

-//NSAPI - 7.7.17

-// Only used if/when multiple contexts are created for a PDP and APN ??

-record NSAPI_GTPC {

- int		type_gtpc;				// type = 20 (Decimal)

- int		nsapi;					// 4 bits [xxxx : NSAPI]

-}

-

-//Charging ID - 7.7.26

-record ChargingID {

- int		type_gtpc;				// type = 127 (Decimal)

- int[]		chargingID;				// 4 octets

-}

-

-

-// Response cause values

-

-const int REQUEST_ACCEPTED = 128;

-const int SYSTEM_FAILURE = 204;

-

-

-// ===================================================

-// Requests and responses

-

-

-// ---- Create PDP context ----

-

-// a) request

-record  CreatePDPcontext

-{

-//	int[]	imsi_digits;

-//	int[]	teidDataI;

-// 100114: use a more abstract representation at model level and

-// reuse functions in existing TTCN support libraries. For a single

-// context imsi/teid/nsapi can be handled entirely at TTCN level...

-

-	String	imsi;

-	//int		downlinkDataTeid;

-	int		nsapi;

-	String	apn;

-}

-

-const int IMSI_OCTETS = 8;

-const int TEID_OCTETS = 4;

-

-// b) response

-record  CreatePDPresponse

-{

-	int		causevalue;

-	//int		uplinkDataTeid;	// Only applicable if SUCCESS

-}

-

-

-// ---- Delete PDU context ----

-

-// a) request

-record  DeletePDPcontext

-{

-	int		nsapi;

-}

-

-// b) response

-record  DeletePDPresponse

-{

-	int		causevalue;

-}

-

-

-

-record  UpdatePDPcontext

-{

-	int		nsapi;

-	//int		downlinkDataTeid;

-}

-

-

-record  UpdatePDPresponse

-{

-	int		causevalue;

-}

-

-// G-PDU

-record  GTPUheader

-{

-	int		teid;	// Date teid of receiving side

-}

-

-record  GPDU

-{

-	int data;	// TODO: representation of payload on model level?

-}

diff --git a/demo/ggsn/model/RadiusRecords.java b/demo/ggsn/model/RadiusRecords.java
deleted file mode 100644
index 73ff02a..0000000
--- a/demo/ggsn/model/RadiusRecords.java
+++ /dev/null
@@ -1,9 +0,0 @@
-/**

- * Radius.java

- *

- * Radius records/messages

-**/

-

-record RadiusAccessRequest { }

-

-record RadiusAccessAccept { }

diff --git a/demo/ggsn/model/UDPrecords.java b/demo/ggsn/model/UDPrecords.java
deleted file mode 100644
index 4cdf3b0..0000000
--- a/demo/ggsn/model/UDPrecords.java
+++ /dev/null
@@ -1,10 +0,0 @@
-/**

- * UDPrecords.java

- *

- * UDP records/messages

-**/

-

-record  UDPpdu

-{

-	int data;	// TODO: representation of payload on model level?

-}

diff --git a/demo/ggsn/model/charging.java b/demo/ggsn/model/charging.java
deleted file mode 100644
index 9c157bb..0000000
--- a/demo/ggsn/model/charging.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/**

- * charging.java

- *

- * Charging related functions

- **/

-

-

-class Charging

-{

-	private int dataCounter;

-	

-	public Charging()

-	{

-		dataCounter = 0;

-	}

-	

-	public void payload(GPDU pdu)

-	{

-		dataCounter++;

-	}

-	

-	public void sendInfo(CQPort port)

-	{

-		CDRinfo info;

-		

-		if (dataCounter == 0)

-			assert false;	// Design rule 1: Payload shall always be transmitted

-		else if (dataCounter == 1)

-			requirement "Charging/Single data";

-		else

-			requirement "Charging/Multiple data";

-		info.data = dataCounter;

-		port.send(info);

-	}

-}

diff --git a/demo/ggsn/model/cli.java b/demo/ggsn/model/cli.java
deleted file mode 100644
index fc8188f..0000000
--- a/demo/ggsn/model/cli.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**

- * cli.java

- *

- * GGSN CLI

- **/

-

-class CLI {

-	NodeConfiguration nodeConfiguration;

-	

-	public CLI(NodeConfiguration nodeConfiguration)

-	{

-		this.nodeConfiguration = nodeConfiguration;

-	}

-	

-	public void configure(Configure cmd)

-	{

-		require cmd.cmds != null;

-		require cmd.cmds.length == configurationCmds1.length;

-		for (int i = 0; i < configurationCmds1.length; i++)

-			require cmd.cmds[i] == configurationCmds1[i];

-		

-		// 100222 : feature based configuration

-		/**

-		if ((cmd.enableCharging) && (cmd.enableRadiusAuth))

-			requirement "Configuration/Both Charging and Radius Auth";

-		else if (cmd.enableCharging)

-			requirement "Configuration/Only Charging";

-		else if (cmd.enableRadiusAuth)

-			requirement "Configuration/Only Radius Auth";

-		else

-			requirement "Configuration/Default - no options";

-		 **/

-		nodeConfiguration.chargingEnabled   = cmd.enableCharging;

-		nodeConfiguration.radiusAuthEnabled = cmd.enableRadiusAuth;

-

-

-	}

-}

diff --git a/demo/ggsn/model/configuration.java b/demo/ggsn/model/configuration.java
deleted file mode 100644
index d627787..0000000
--- a/demo/ggsn/model/configuration.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/**

- * configuration.java

- * 

- * GGSN node configuration

- */

-

-class NodeConfiguration {

-	public boolean chargingEnabled;

-	public boolean radiusAuthEnabled;

-	

-	public NodeConfiguration()

-	{

-		chargingEnabled   = false;

-		radiusAuthEnabled = false;

-	}

-	

-	public boolean configurationChanged()

-	{

-		return ((chargingEnabled == true) ||

-				(radiusAuthEnabled == true));

-	}

-	

-	public void checkConfiguration()

-	{

-		if ((chargingEnabled) && (radiusAuthEnabled))

-			requirement "Configuration/Groups/Both Charging and Radius Auth";

-		else if (chargingEnabled)

-			requirement "Configuration/Groups/Only Charging";

-		else if (radiusAuthEnabled)

-			requirement "Configuration/Groups/Only Radius Auth";

-		else

-			requirement "Configuration/Groups/Default - no options";

-	}

-}

diff --git a/demo/ggsn/model/globals.java b/demo/ggsn/model/globals.java
deleted file mode 100644
index 28f983f..0000000
--- a/demo/ggsn/model/globals.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/**

- * globals.java

- *

- * Misc global definitions/constants

- **/

-

-

-

-const String[] configurationCmds1 =

-    {   "DEFAULT_CONFIG"

-    };

-

-

-// GTP message data

-// TODO: which imsi and teid should be used?

-

-const int[] imsi1 = {1,2,3,4,5,6,7,8};

-const int[] teid1 = {1,2,3,4};

diff --git a/demo/ggsn/model/prepareRestore.java b/demo/ggsn/model/prepareRestore.java
deleted file mode 100644
index c2296a8..0000000
--- a/demo/ggsn/model/prepareRestore.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/**

- * prepareRestore.java

- * 

- * GGSN node configuration

- */

-

-/* Prepare/Restore commands supported by test harness

- * 

- * f_TELNET_Init

- * f_sr_TELNET_OverrideConfiguration

- * ...more TBD...

- */

-

-/* ----------------------------------------------------------- */

-

-/* prepareCmds []

- * Put your prepare commands here.

- * Pick from the list above.

- */

-const String[] prepareCmds =

-    {   "f_TELNET_Init",

-		"f_sr_TELNET_OverrideConfiguration"

-    };

-

-/* restoreCmds []

- * Put your restore commands here.

- * Pick from the list above.

- */

-const String[] restoreCmds =

-    {   "f_TELNET_Init",

-		"f_sr_TELNET_OverrideConfiguration"

-    };

-

-/* ----------------------------------------------------------- */

-

-void handlePrepare(Prepare msg)

-{

-	require msg.cmds != null;

-	require msg.cmds.length == prepareCmds.length;

-	for (int i = 0; i < prepareCmds.length; i++)

-		require msg.cmds[i] == prepareCmds[i];

-}

-

-void handleRestore(Restore msg)

-{

-	require msg.cmds != null;

-	require msg.cmds.length == restoreCmds.length;

-	for (int i = 0; i < restoreCmds.length; i++)

-		require msg.cmds[i] == restoreCmds[i];

-}

diff --git a/demo/ggsn/model/system.java b/demo/ggsn/model/system.java
deleted file mode 100644
index d88d0d6..0000000
--- a/demo/ggsn/model/system.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/**

- * system.java

- * 

- * Interfaces/ports:

- *	CLIin/CLIout	proprietary CLI commands/responses

- *	GnIn/GnOut		i/f to SGSN

- *	GiIn/GiOut		i/f to internet

-**/

-

-system {

-    Inbound  CLIin  : Restart, Configure, OverrideConfiguration, Prepare, Restore;

-

-	Inbound  GnIn  : CreatePDPcontext, UpdatePDPcontext, DeletePDPcontext, GPDU;

-	Outbound GnOut : CreatePDPresponse, UpdatePDPresponse, DeletePDPresponse,

-					GPDU, CDRinfo;

-

-	Inbound  GiIn  : UDPpdu;

-	Outbound GiOut : UDPpdu;

-

-	Inbound  GiRadiusIn  : RadiusAccessAccept;

-	Outbound GiRadiusOut : RadiusAccessRequest;

-}

diff --git a/demo/makefile_patch.sh b/demo/makefile_patch.sh
deleted file mode 100755
index 51e24e4..0000000
--- a/demo/makefile_patch.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-sed -e '
-s/OPENSSL_DIR =/#OPENSSL_DIR =/g
-
-s/CPPFLAGS = .*/CPPFLAGS = -D$(PLATFORM) -I$(TTCN3_DIR)\/include -I$(OPENSSL_DIR)\/include -DNO_IPV6/g
-
-s/SOLARIS8_LIBS = -lsocket -lnsl/SOLARIS8_LIBS = -lpcap -lsocket -lnsl -lresolv/g
-
-s/LINUX_LIBS = -lxml2/LINUX_LIBS = -lxml2 -lpcap/g
-
-s/COMPILER_FLAGS = -L/COMPILER_FLAGS = -L -w/g
-' <$1 >$2
-
-
diff --git a/demo/mapped/MBT_Qtronic_Demo.cfg b/demo/mapped/MBT_Qtronic_Demo.cfg
deleted file mode 100644
index 94fd3e1..0000000
--- a/demo/mapped/MBT_Qtronic_Demo.cfg
+++ /dev/null
@@ -1,55 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2009                           //
-//                                                                           //
-// The copyright to the computer  program(s) herein  is the property of TCC. //
-// The program(s) may be used and/or copied only with the written permission //
-// of TCC or in accordance with  the terms and conditions  stipulated in the //
-// agreement/contract under which the program(s) have been supplied          //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_Qtronic_Demo.cfg
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 522
-//  Updated:  2009-04-20
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-
-[LOGGING]
-ConsoleMask := ERROR | STATISTICS | ACTION | TESTCASE
-FileMask := LOG_ALL | DEBUG
-#FileMask := ERROR | STATISTICS | PARALLEL | ACTION | WARNING
-#LogFile := "%l/%e.%h-%t%r.%s"
-LogEntityName := Yes
-LogEventTypes := Yes//Subcategories;
-SourceInfoFormat := Stack
-
-[MODULE_PARAMETERS]
-
-tsp_debug_EPTF_SchedulerFunctions := false
-tsp_debugVerbose_EPTF_SchedulerFunctions := false
-tsp_EPTF_LGenBaseDebugTraffic := false
-tsp_EPTF_LGenBaseDebug := false
-
-tsp_SIP_TransactionTimerValues :=
-{
-  0.5,//T1
-  0.0,//no max
-  8.0,//64*T1
-  8.0,//Timer D, >= 32.0
-  0.5,//T1
-  4.0,//T2
-  8.0,//64*T1
-  5.0,//T4
-  0.5,//T1
-  4.0,//T2,
-  8.0,//64*T1
-  5.0,//T4
-  8.0//64*T1
-};
-
-[EXECUTE]
-MBT_Qtronic_Testcases.control
-
-[TESTPORT_PARAMETERS]
-*.IPL4_PCO.debug := "NO"
diff --git a/demo/mapped/MBT_Qtronic_Demo.prj b/demo/mapped/MBT_Qtronic_Demo.prj
deleted file mode 100644
index 94d0b64..0000000
--- a/demo/mapped/MBT_Qtronic_Demo.prj
+++ /dev/null
@@ -1,150 +0,0 @@
-<!DOCTYPE TITAN_GUI_project_file>
-<Project TITAN_version="1.8.pl1" >
-    <General>
-        <Project_Name>MBT_Qtronic_Demo</Project_Name>
-        <Executable_Path>bin/demo</Executable_Path>
-        <Working_Dir>bin</Working_Dir>
-        <Build_Host>alpha</Build_Host>
-        <Execution_Mode>Parallel</Execution_Mode>
-        <ScriptFile_AfterMake>../makefile_patch.sh</ScriptFile_AfterMake>
-        <Log_Format>yes</Log_Format>
-        <Update_Symlinks>yes</Update_Symlinks>
-        <Create_Absolute_Symlinks>no</Create_Absolute_Symlinks>
-        <Update_Makefile>yes</Update_Makefile>
-        <Localhost_Execute>yes</Localhost_Execute>
-        <Execute_Command>rsh %host &quot;cd %project_working_dir ; &quot;%executable&quot; %localhost %mctr_port&quot;</Execute_Command>
-        <Execute_Hosts>alfa, beta, gamma</Execute_Hosts>
-        <UnUsed_List></UnUsed_List>
-    </General>
-    <Modules>
-        <Module>../sut/MBT_SUT_SIP_Phone.ttcn</Module>
-        <Module>MBT_Qtronic_Demo.ttcn</Module>
-        <Module>MBT_Qtronic_TestHarness.ttcn</Module>
-        <Module>MBT_Qtronic_Testcases.ttcn</Module>
-        <Module>MBT_Qtronic_Types.ttcn</Module>
-    </Modules>
-    <Configs>
-        <Config>MBT_Qtronic_Demo.cfg</Config>
-    </Configs>
-    <Test_Cases>
-        <Test_Case>MBT_Qtronic_Testcases.control</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_1</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_2</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_3</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_4</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_5</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_6</Test_Case>
-        <Test_Case>MBT_Qtronic_Testcases.Test_Case_7</Test_Case>
-    </Test_Cases>
-    <File_Group name="MainFileGroup" >
-        <File_Groups>
-            <File_Group name="EPTF_Applib_MBT_CNL113659" >
-                <File path="../../src/LoadGen/EPTF_MBT_LGen_Definitions.ttcn" />
-                <File path="../../src/LoadGen/EPTF_MBT_LGen_Functions.ttcn" />
-            </File_Group>
-            <File_Group name="EPTF_Applib_SIP_CNL113522" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Applib_SIP_CNL113522/src/LoadGen/EPTF_SIP_LoadGen.grp" />
-                    <File_Group path="../../../EPTF_Applib_SIP_CNL113522/src/Logger/EPTF_SIP_Logger.grp" />
-                    <File_Group path="../../../EPTF_Applib_SIP_CNL113522/src/Transport/EPTF_SIP_Transport.grp" />
-                </File_Groups>
-            </File_Group>
-            <File_Group name="TCCUsefulFunctions_CNL113472" >
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/digcalc.c" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/digcalc.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMessageHandling_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCSecurity.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCSecurity_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Definitions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCIPsec_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCEncoding.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCEncoding_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.c" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/aka_algorythm_set.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCFileIO.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCFileIO_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCDateTime.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCDateTime_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCMaths_GenericTypes.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCInterface_ip.h" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCConversion.cc" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCConversion_Functions.ttcn" />
-                <File path="../../../TCCUsefulFunctions_CNL113472/src/TCCTemplate_Functions.ttcn" />
-            </File_Group>
-            <File_Group name="SIPmsg_CNL113319" >
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/lex.SIP_parse_.c" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse.h" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse_.tab.c" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIP_parse_.tab.h" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PortType.ttcn" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PT.cc" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_PT.hh" />
-                <File path="../../../../TestPorts/SIPmsg_CNL113319/src/SIPmsg_Types.ttcn" />
-            </File_Group>
-            <File_Group name="UDPasp_CNL113346" >
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PortType.ttcn" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.cc" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_PT.hh" />
-                <File path="../../../../TestPorts/UDPasp_CNL113346/src/UDPasp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="IPL4asp_CNL113531" >
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_discovery.cc" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Functions.ttcn" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PortType.ttcn" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_protocol_L234.hh" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.cc" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_PT.hh" />
-                <File path="../../../../TestPorts/IPL4asp_CNL113531/src/IPL4asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="Abstract_Socket_CNL113384" >
-                <File path="../../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.cc" />
-                <File path="../../../../TestPorts/Common_Components/Abstract_Socket_CNL113384/src/Abstract_Socket.hh" />
-            </File_Group>
-            <File_Group name="IP_CNL113418" >
-                <File path="../../../../ProtocolModules/IP_CNL113418/src/IP_EncDec.cc" />
-                <File path="../../../../ProtocolModules/IP_CNL113418/src/IP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="LANL2asp_CNL113519" >
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PortType.ttcn" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.cc" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_PT.hh" />
-                <File path="../../../../TestPorts/LANL2asp_CNL113519/src/LANL2asp_Types.ttcn" />
-            </File_Group>
-            <File_Group name="TCP_CNL113675" >
-                <File path="../../../../ProtocolModules/TCP_CNL113675/src/TCP_EncDec.cc" />
-                <File path="../../../../ProtocolModules/TCP_CNL113675/src/TCP_Types.ttcn" />
-            </File_Group>
-            <File_Group name="GeneralTypes" >
-                <File path="../../../../ProtocolModules/COMMON/src/General_Types.ttcn" />
-            </File_Group>           
-            <File_Group name="EPTF_Core_Library_CNL113512" >
-                <File_Groups>
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Base/EPTF_CLL_Base.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Common/EPTF_CLL_Common.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/FreeBusyQueue/EPTF_CLL_FreeBusyQueue.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/HashMap/EPTF_CLL_HashMap.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Logging/EPTF_CLL_Logging.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/RedBlackTree/EPTF_CLL_RBtree_Float.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Scheduler/EPTF_CLL_Scheduler_RBT.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Variable/EPTF_CLL_Variable.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/StatMeasure/EPTF_CLL_StatMeasure.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_Transport.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportCommPortIPL4.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportMessageBufferManager.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Transport/EPTF_CLL_TransportRouting.grp" />
-                    <File_Group path="../../../../TestPorts/Common_Components/Socket_API_CNL113686/src/Socket_API.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/RandomNArray/EPTF_CLL_RNA.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/Semaphore/EPTF_CLL_Semaphore.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/StatHandler/EPTF_CLL_StatHandler.grp" />
-                    <File_Group path="../../../EPTF_Core_Library_CNL113512/src/LGenBase/EPTF_CLL_LGenBase.grp" />
-                </File_Groups>
-            </File_Group>
-        </File_Groups>
-    </File_Group>
-</Project>
diff --git a/demo/mapped/MBT_Qtronic_Demo.ttcn b/demo/mapped/MBT_Qtronic_Demo.ttcn
deleted file mode 100644
index 0e8e33d..0000000
--- a/demo/mapped/MBT_Qtronic_Demo.ttcn
+++ /dev/null
@@ -1,338 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_Qtronic_Demo.ttcn
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 659
-//  Updated:  2009-12-14
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-module MBT_Qtronic_Demo
-{
-
-import from MBT_Qtronic_Testcases all;
-import from MBT_Qtronic_Types all;
-import from MBT_Qtronic_TestHarness all;
-
-import from MBT_SUT_SIP_Phone all;
-
-import from EPTF_CLL_Common_Definitions all;
-import from EPTF_CLL_Base_Definitions all;
-import from EPTF_CLL_Base_Functions all;
-import from EPTF_CLL_RBTScheduler_Functions all;
-import from EPTF_CLL_LGenBase_Definitions all;
-import from EPTF_CLL_LGenBase_ConfigFunctions all;
-import from EPTF_CLL_LGenBase_EventHandlingFunctions all;
-
-import from EPTF_MBT_LGen_Definitions all;
-import from EPTF_MBT_LGen_Functions all;
-
-import from EPTF_SIP_LGen_Definitions all;
-import from EPTF_SIP_LGen_Functions all;
-import from EPTF_SIP_Common_Functions all;
-import from EPTF_SIP_UserDatabase_Functions all;
-import from EPTF_SIP_Transport_Definitions all;
-import from EPTF_SIP_Transport_Functions all;
-import from EPTF_SIP_MessageHandler_Functions all;
-
-import from EPTF_SIP_TestSteps all;
-import from EPTF_SIP_Templates all;
-import from EPTF_SIP_Events all;
-import from EPTF_SIP_Transaction_Definitions all;
-
-import from TCCFileIO_Functions all;
-import from TCCDateTime_Functions all;
-
-modulepar
-{
-  charstring tsp_MBT_Tester_LocalIP    := "159.107.193.33";
-  integer    tsp_MBT_Tester_LocalPort  := 15000;
-  charstring tsp_MBT_Tester_RemoteIP   := "159.107.193.33";
-  integer    tsp_MBT_Tester_RemotePort := 20000;
-  
-  charstring tsp_MBT_SIP_Transport := "udp";
-}
-
-type component MBT_Qtronic_Demo_Main_CT 
-  extends 
-  EPTF_Base_CT,
-  EPTF_MBT_Tester_CT
-{}
-
-function f_MBT_Qtronic_Demo_beginTestCase() runs on Qtronic_CT
-{
-  log(%definitionId, " started");
- 
-  f_EPTF_Base_init_CT("mtc");
-
-  log(%definitionId, " Creating SUT");
-  var MBT_Qtronic_Demo_SUT_CT vc_sut := MBT_Qtronic_Demo_SUT_CT.create;
-  connect(self:userIn,      vc_sut:userIn);
-  connect(self:userOut,     vc_sut:userOut);
-  connect(self:EPTF_MBT_TESTER_PCO,vc_sut:EPTF_MBT_PCO);
-  vc_sut.start(f_MBT_Qtronic_Demo_SUT_behavior());
-  
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_CommandResponse:?) from vc_sut;
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_ConfigRequest:
-    {
-      entityGroupName := "SUT_EntityType",
-      noEntities := 1,
-      behaviors := {"MBT_behavior", "Behavior_SIP", "SUT_Behavior"},
-      fsmName := "MBT_Qtronic_Demo_SUT_FSM"
-    }
-  ) to vc_sut;
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_ConfigResponse:?) from vc_sut;
-  log(%definitionId, " SUT ready");
-
-  log(%definitionId, " Creating LGen");
-  var MBT_Qtronic_Demo_LGen_CT vc_lgen := MBT_Qtronic_Demo_LGen_CT.create;
-  connect(self:netIn,       vc_lgen:netOut);
-  connect(self:netOut,      vc_lgen:netIn);
-  connect(self:EPTF_MBT_TESTER_PCO,vc_lgen:EPTF_MBT_PCO);
-  vc_lgen.start(f_MBT_Qtronic_Demo_LGen_behavior());
- 
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_CommandResponse:?) from vc_lgen;
-  
-  EPTF_MBT_TESTER_PCO.send(EPTF_MBT_ConfigRequest:
-    {
-      entityGroupName := "MBT_EntityType",
-      noEntities := 1,
-      behaviors := {"MBT_behavior", "Behavior_SIP"},
-      fsmName := "FSM_MBT"
-    }
-  ) to vc_lgen;
-  EPTF_MBT_TESTER_PCO.receive(EPTF_MBT_ConfigResponse:?) from vc_lgen;
-  
-  log(%definitionId, " LGen ready");
-
-  log(%definitionId, " finished");
-}
-
-
-function f_MBT_Qtronic_Demo_endTestCase() runs on Qtronic_CT
-{
-  log("### MAIN: END TESTCASE started");
-
-  f_EPTF_Base_stopAll(none, true);
-  
-  log("### MAIN: END TESTCASE finished");
-}
-
-/////////////////////////////////////////////////////////////////////////
-//
-//    M B T  Applib
-//
-/////////////////////////////////////////////////////////////////////////
-
-type component MBT_Qtronic_Demo_LGen_CT
-  extends 
-    EPTF_MBT_LGen_CT, 
-    EPTF_SIP_LGen_CT, EPTF_SIP_LocalTransport_CT
-{
-  port netInPort netIn;
-  port netOutPort netOut;
-}
-
-function f_MBT_Qtronic_Demo_LGen_behavior() runs on MBT_Qtronic_Demo_LGen_CT
-{
-  //map(self:IPL4_PCO, system:IPL4_PCO);
-  
-  activate(as_MBT_Qtronic_Demo_LGen_userMessageHandler());
-  
-  f_EPTF_MBT_init("MBT_Demo_LGen",0, "MBT_")
-  
-  f_SIP_applibInit("MBT_Demo_LGen");
- 
-  f_EPTF_SIP_LocalTransport_init(tsp_MBT_SIP_Transport);
-  vf_EPTF_SIP_LocalTransport_receive := refers(f_EPTF_SIP_Message_MsgHandler);    //receive callback function on LocalTransport
-  vf_EPTF_SIP_LGen_msgSender         := refers(f_EPTF_SIP_LocalTransport_sendSIPMessage);  //send callback function on LGen
-  v_removeUAS                        := refers(fcb_EPTF_SIP_LocalTransport_removeUAS);
-
-  f_EPTF_MBT_initLGenFsm
-  (
-    refers(f_MBT_Qtronic_Demo_LGen_createUserMessage),
-    refers(f_MBT_Qtronic_Demo_LGen_fillInDB)
-  );
-  
-  EPTF_MBT_PCO.send(EPTF_MBT_CommandResponse:{ ready := {}}) to mtc;
-  
-  f_EPTF_Base_wait4Shutdown();
-}
-
-altstep as_MBT_Qtronic_Demo_LGen_userMessageHandler()
-runs on MBT_Qtronic_Demo_LGen_CT
-{
-  var SIPResp vl_SIPResp;
-  var SIPReq  vl_SIPReq;
-  
-  var EPTF_LGenBase_TestStepArgs vl_stepArgs :=
-    { eIdx := 0, refContext := { fCtxIdx := 0, fRefArgs := { } }, stepArgs := { } };
-  
-  [] netOut.receive(SIPResp:?) -> value vl_SIPResp
-    {
-      f_EPTF_SchedulerComp_refreshSnapshotTime();
-      log(%definitionId & "(): incoming ", vl_SIPResp);
-      
-      if (vl_SIPResp.status == 180)
-      {
-        vl_stepArgs.refContext.fRefArgs := {c_status_180Ringing_idx};
-        f_SIP_step_createResponse(vl_stepArgs);
-      }
-      else if (vl_SIPResp.status == 200)
-      {
-        if (vl_SIPResp.cseq == "INVITE")
-        {
-          vl_stepArgs.refContext.fRefArgs := {c_status_200OK_idx, c_SIP_Method_INVITE};
-          f_SIP_step_createResponse(vl_stepArgs);
-        }
-        else if (vl_SIPResp.cseq == "CANCEL")
-        {
-          vl_stepArgs.refContext.fRefArgs := {c_status_200OK_idx, c_SIP_Method_CANCEL};
-          f_SIP_step_createResponse(vl_stepArgs);
-        }
-      }
-      else if (vl_SIPResp.status == 486)
-      {
-        vl_stepArgs.refContext.fRefArgs := {c_status_486BusyHere_idx};
-        f_SIP_step_createResponse(vl_stepArgs);
-      }
-      else if (vl_SIPResp.status == 487)
-      {
-        vl_stepArgs.refContext.fRefArgs := {c_status_487RequestTerminated_idx, c_SIP_Method_INVITE};
-        f_SIP_step_createResponse(vl_stepArgs);
-      }
-      else
-      {
-        log(%definitionId & "(): unhandled SIPResp");
-      }
-      
-      repeat;
-    }
-  [] netOut.receive(SIPReq:?) -> value vl_SIPReq
-    {
-      f_EPTF_SchedulerComp_refreshSnapshotTime();
-      log(%definitionId & "(): incoming ", vl_SIPReq);
-      
-      if (vl_SIPReq.op == "BYE")
-      {
-        f_SIP_step_createBYE(vl_stepArgs);
-      }
-      else
-      {
-        log(%definitionId & "(): unhandled SIPResp");
-      }
-      repeat;
-    }
-}
-
-function f_MBT_Qtronic_Demo_LGen_createUserMessage(in EPTF_LGenBase_TestStepArgs pl_ptr) 
-runs on MBT_Qtronic_Demo_LGen_CT
-return boolean
-{
-  log(%definitionId & " creating message for:\n", pl_ptr, "\n", pl_ptr.reportedEvent);
-  
-  var charstring vl_param := "sip:127.0.0.1:5061";
-  
-  if (pl_ptr.reportedEvent.event.bIdx == v_SIP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_SIP_eventIdx_INVITE)
-  {
-    var integer vl_FSMIdx := -1;
-    pl_ptr.refContext.fCtxIdx := 0;
-    
-    if (not f_EPTF_SIP_FSMInitialized(pl_ptr.eIdx, pl_ptr.refContext.fCtxIdx, vl_FSMIdx))
-    {
-      f_SIP_step_init(pl_ptr);
-      f_SIP_step_handleINVITE(pl_ptr);
-    }
-    netIn.send(SIPReq:{"INVITE", vl_param});
-  }
-  else if (pl_ptr.reportedEvent.event.bIdx == v_SIP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_SIP_eventIdx_ACK)
-  {
-    netIn.send(SIPReq:{"ACK", vl_param});
-  }
-  else if (pl_ptr.reportedEvent.event.bIdx == v_SIP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_SIP_eventIdx_BYE)
-  {
-    netIn.send(SIPReq:{"BYE", vl_param});
-  }
-  else if (pl_ptr.reportedEvent.event.bIdx == v_SIP_myBIdx and pl_ptr.reportedEvent.event.iIdx == c_SIP_eventIdx_CANCEL)
-  {
-    netIn.send(SIPReq:{"CANCEL", vl_param});
-  }
-  else if (pl_ptr.reportedEvent.event.bIdx == v_SIP_myBIdx and pl_ptr.reportedEvent.event.iIdx == 200)
-  {
-    netIn.send(SIPResp:{200, v_msgToProcess.response.msgHeader.cSeq.method});
-  }
-  else if (pl_ptr.reportedEvent.event.bIdx == v_SIP_myBIdx and pl_ptr.reportedEvent.event.iIdx ==  c_SIP_eventIdx_retransmittedRequest)
-  {
-    netIn.send(SIPReq:{v_msgToProcess.request.msgHeader.cSeq.method, vl_param});
-  }
-  else
-  {
-    log(%definitionId & "(): unhandled incoming message");
-    return false;
-  }
-  return true;
-}
-
-function f_MBT_Qtronic_Demo_LGen_fillInDB(in EPTF_MBT_ConfigRequest p_req) runs on MBT_Qtronic_Demo_LGen_CT
-{
-  var integer vl_grpIdx := f_EPTF_LGenBase_entityGrpNameIndex(p_req.entityGroupName);
-  var integer vl_entityIdx := f_EPTF_LGenBase_getEGrpBaseOffset(vl_grpIdx);
-  
-  for (var integer i:=0; i<p_req.noEntities; i:=i+1)
-  {
-    var EPTF_IntegerList vl_bCtx := f_EPTF_LGenBase_getBehaviorCtx(i + vl_entityIdx, v_SIP_myBIdx);
-    f_EPTF_SIP_IPL4asp_SetUserData
-    ( 
-      vl_bCtx[0],
-      tsp_MBT_Tester_LocalIP, // local IP
-      {tsp_MBT_Tester_LocalPort, tsp_MBT_Tester_LocalPort+1},
-      tsp_MBT_SIP_Transport,
-      tsp_MBT_Tester_RemoteIP, // proxy ip
-      tsp_MBT_Tester_RemotePort // proxy port
-    );
-    
-    f_EPTF_SIP_User_SetUserData(
-      vl_bCtx[0],
-      {
-        {
-          addr := {
-            nameAddr := {
-              displayName := "titansim_user_7465000",
-              addrSpec := {
-                scheme := "sip",
-                userInfo := {
-                  userOrTelephoneSubscriber := "titansim_user_7465000",
-                  password := omit
-                },
-                hostPort := {
-                  host := "tcj.ics.se",
-                  portField := tsp_MBT_Tester_LocalPort
-                },
-                urlParameters := omit,
-                headers := omit
-              }
-            }
-          },
-          password := "pass2ICS"
-        }
-      },
-      tsp_MBT_Tester_LocalIP,
-      {tsp_MBT_Tester_LocalPort, tsp_MBT_Tester_LocalPort+1},
-      i + vl_entityIdx //entity index
-    );
-    
-    f_EPTF_SIP_Session_AddData(vl_bCtx[0], f_EPTF_SIP_getTransport(tsp_MBT_SIP_Transport),345600);
-    
-    f_EPTF_SIP_IPL4asp_startListening(vl_bCtx[0], true); // Both UDP and TCP
-  }
-}
-
-}
diff --git a/demo/mapped/MBT_Qtronic_TestHarness.ttcn b/demo/mapped/MBT_Qtronic_TestHarness.ttcn
deleted file mode 100644
index e85bb42..0000000
--- a/demo/mapped/MBT_Qtronic_TestHarness.ttcn
+++ /dev/null
@@ -1,101 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_TestHarness.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-04-14

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-/* -*- ttcn3 -*- */

-

-/** @file C:\Users\eantwuh\workspace\SIPeval\MBT_Qtronic_TestHarness.ttcn

- *

- * @author Conformiq TTCN3 Script Backend

- * @date Wed Apr 14 13:17:47 CEST 2010

- *

- * WARNING! This file has been automatically generated using

- * Ericsson Qtronic TTCN3 Script Backend (based on the original Conformiq Backend).DO NOT EDIT.

- */

-

-module MBT_Qtronic_TestHarness

-{

-    import from MBT_Qtronic_Types all;

-/* User provided imports begin */

-import from MBT_Qtronic_Demo all; import from EPTF_MBT_LGen_Definitions all;

-/* User provided imports end */

-    altstep QtronicHarnessAlt() runs on Qtronic_CT

-    {

-        [] any port.receive

-        {

-            harnessTimer.stop;

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-        [] harnessTimer.timeout

-        {

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-    }

-    function qtronic_send_SIPResp_to_netIn(template SIPResp msgToSend) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'msgToSend'

-        // before it is delivered to the SUT through the real test interface.

-        // This can include addition of fields not present in the model or

-        // manipulation of unique identifiers in the messages that Qtronic

-        // cannot possible know at the time of test generation.

-        netIn.send(msgToSend);

-    }

-    function qtronic_send_SIPReq_to_netIn(template SIPReq msgToSend) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'msgToSend'

-        // before it is delivered to the SUT through the real test interface.

-        // This can include addition of fields not present in the model or

-        // manipulation of unique identifiers in the messages that Qtronic

-        // cannot possible know at the time of test generation.

-        netIn.send(msgToSend);

-    }

-    function qtronic_send_UserInput_to_userIn(template UserInput msgToSend) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'msgToSend'

-        // before it is delivered to the SUT through the real test interface.

-        // This can include addition of fields not present in the model or

-        // manipulation of unique identifiers in the messages that Qtronic

-        // cannot possible know at the time of test generation.

-        userIn.send(msgToSend);

-    }

-    function qtronic_receive_SIPResp_from_netOut(template SIPResp tmplToMatch) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'tmplToMatch'

-        // before matching it against the expected value template.

-        // This manipulation typically means removing fields not present

-        // in the abstract model system interface.

-        netOut.receive(tmplToMatch);

-    }

-    function qtronic_receive_SIPReq_from_netOut(template SIPReq tmplToMatch) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'tmplToMatch'

-        // before matching it against the expected value template.

-        // This manipulation typically means removing fields not present

-        // in the abstract model system interface.

-        netOut.receive(tmplToMatch);

-    }

-    function qtronic_receive_TimeOutIndication_from_userOut(template TimeOutIndication tmplToMatch) runs on Qtronic_CT

-    {

-        // Do whatever manipulation is needed to 'tmplToMatch'

-        // before matching it against the expected value template.

-        // This manipulation typically means removing fields not present

-        // in the abstract model system interface.

-        userOut.receive(tmplToMatch);

-    }

-}

diff --git a/demo/mapped/MBT_Qtronic_Testcases.ttcn b/demo/mapped/MBT_Qtronic_Testcases.ttcn
deleted file mode 100644
index b9c1272..0000000
--- a/demo/mapped/MBT_Qtronic_Testcases.ttcn
+++ /dev/null
@@ -1,606 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_Testcases.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-04-14

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-/* -*- ttcn3 -*- */

-

-/** @file C:\Users\eantwuh\workspace\SIPeval\MBT_Qtronic_Testcases.ttcn

- *

- * @author Conformiq TTCN3 Script Backend

- * @date Wed Apr 14 13:17:47 CEST 2010

- *

- * WARNING! This file has been automatically generated using

- * Ericsson Qtronic TTCN3 Script Backend (based on the original Conformiq Backend).DO NOT EDIT.

- */

-

-module MBT_Qtronic_Testcases

-{

-    import from MBT_Qtronic_Types all;

-    import from MBT_Qtronic_TestHarness all;

-    /* User provided imports begin */

-    import from MBT_Qtronic_Demo all; import from EPTF_MBT_LGen_Definitions all;

-    /* User provided imports end */

-    /* Qtronic generated alt step */

-    altstep QtronicDefaultAlt() runs on Qtronic_CT

-    {

-        [] any port.receive

-        {

-            harnessTimer.stop;

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-        [] harnessTimer.timeout

-        {

-            setverdict(fail);

-            f_MBT_Qtronic_Demo_endTestCase();

-            stop;

-        }

-    }

-    /* Generated test case #1 */

-    testcase Test_Case_1() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicHarnessAlt());

-        qtronic_send_UserInput_to_userIn(UserInputTemplate1);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate2);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate3);

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate4);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate5);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate1 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate2 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate3 :=

-    {

-        status := 180,

-        cseq := ""

-    }

-    template SIPResp SIPRespTemplate4 :=

-    {

-        status := 486,

-        cseq := "INVITE"

-    }

-    template SIPReq SIPReqTemplate5 :=

-    {

-        op := "ACK",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    /* Generated test case #2 */

-    testcase Test_Case_2() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicHarnessAlt());

-        qtronic_send_UserInput_to_userIn(UserInputTemplate6);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate7);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate8);

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate9);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate10);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPReq_to_netIn(SIPReqTemplate11);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPResp_from_netOut(SIPRespTemplate12);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate6 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate7 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate8 :=

-    {

-        status := 180,

-        cseq := ""

-    }

-    template SIPResp SIPRespTemplate9 :=

-    {

-        status := 200,

-        cseq := "INVITE"

-    }

-    template SIPReq SIPReqTemplate10 :=

-    {

-        op := "ACK",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate11 :=

-    {

-        op := "BYE",

-        param_ := "sip:127.0.0.1"

-    }

-    template SIPResp SIPRespTemplate12 :=

-    {

-        status := 200,

-        cseq := "BYE"

-    }

-    /* Generated test case #3 */

-    testcase Test_Case_3() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicHarnessAlt());

-        qtronic_send_UserInput_to_userIn(UserInputTemplate13);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate14);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        harnessTimer.start((0.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate15);

-        harnessTimer.stop;

-        oldtimer := 0.500000000;

-        harnessTimer.start((1.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate16);

-        harnessTimer.stop;

-        oldtimer := 1.500000000;

-        harnessTimer.start((3.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate17);

-        harnessTimer.stop;

-        oldtimer := 3.500000000;

-        harnessTimer.start((7.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate18);

-        harnessTimer.stop;

-        oldtimer := 7.500000000;

-        harnessTimer.start((8.0 - oldtimer) + SLACK);

-        qtronic_receive_TimeOutIndication_from_userOut(TimeOutIndicationTemplate19);

-        harnessTimer.stop;

-        oldtimer := 8.0;

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate13 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate14 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate15 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate16 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate17 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate18 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template TimeOutIndication TimeOutIndicationTemplate19 :=

-    {

-        

-    }

-    /* Generated test case #4 */

-    testcase Test_Case_4() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicHarnessAlt());

-        qtronic_send_UserInput_to_userIn(UserInputTemplate20);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate21);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate22);

-        oldtimer := 0.0;

-        qtronic_send_UserInput_to_userIn(UserInputTemplate23);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate24);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate25);

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate26);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate27);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate20 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate21 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate22 :=

-    {

-        status := 180,

-        cseq := ""

-    }

-    template UserInput UserInputTemplate23 :=

-    {

-        input1 := "cancel",

-        input2 := ""

-    }

-    template SIPReq SIPReqTemplate24 :=

-    {

-        op := "CANCEL",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate25 :=

-    {

-        status := 200,

-        cseq := "CANCEL"

-    }

-    template SIPResp SIPRespTemplate26 :=

-    {

-        status := 487,

-        cseq := "INVITE"

-    }

-    template SIPReq SIPReqTemplate27 :=

-    {

-        op := "ACK",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    /* Generated test case #5 */

-    testcase Test_Case_5() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicHarnessAlt());

-        qtronic_send_UserInput_to_userIn(UserInputTemplate28);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate29);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate30);

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate31);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate32);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_UserInput_to_userIn(UserInputTemplate33);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate34);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate35);

-        oldtimer := 0.0;

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate28 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate29 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate30 :=

-    {

-        status := 180,

-        cseq := ""

-    }

-    template SIPResp SIPRespTemplate31 :=

-    {

-        status := 200,

-        cseq := "INVITE"

-    }

-    template SIPReq SIPReqTemplate32 :=

-    {

-        op := "ACK",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template UserInput UserInputTemplate33 :=

-    {

-        input1 := "bye",

-        input2 := ""

-    }

-    template SIPReq SIPReqTemplate34 :=

-    {

-        op := "BYE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate35 :=

-    {

-        status := 200,

-        cseq := ""

-    }

-    /* Generated test case #6 */

-    testcase Test_Case_6() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicHarnessAlt());

-        qtronic_send_UserInput_to_userIn(UserInputTemplate36);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate37);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate38);

-        oldtimer := 0.0;

-        qtronic_send_UserInput_to_userIn(UserInputTemplate39);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate40);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        harnessTimer.start((0.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate41);

-        harnessTimer.stop;

-        oldtimer := 0.500000000;

-        harnessTimer.start((1.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate42);

-        harnessTimer.stop;

-        oldtimer := 1.500000000;

-        harnessTimer.start((3.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate43);

-        harnessTimer.stop;

-        oldtimer := 3.500000000;

-        harnessTimer.start((7.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate44);

-        harnessTimer.stop;

-        oldtimer := 7.500000000;

-        harnessTimer.start((8.0 - oldtimer) + SLACK);

-        qtronic_receive_TimeOutIndication_from_userOut(TimeOutIndicationTemplate45);

-        harnessTimer.stop;

-        oldtimer := 8.0;

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate36 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate37 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate38 :=

-    {

-        status := 180,

-        cseq := ""

-    }

-    template UserInput UserInputTemplate39 :=

-    {

-        input1 := "cancel",

-        input2 := ""

-    }

-    template SIPReq SIPReqTemplate40 :=

-    {

-        op := "CANCEL",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate41 :=

-    {

-        op := "CANCEL",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate42 :=

-    {

-        op := "CANCEL",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate43 :=

-    {

-        op := "CANCEL",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate44 :=

-    {

-        op := "CANCEL",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template TimeOutIndication TimeOutIndicationTemplate45 :=

-    {

-        

-    }

-    /* Generated test case #7 */

-    testcase Test_Case_7() runs on Qtronic_CT

-    {

-        var float oldtimer := 0.0;

-        var float SLACK := 10.0;

-        var default default_behaviour_ref;

-        f_MBT_Qtronic_Demo_beginTestCase();

-        default_behaviour_ref := activate(QtronicHarnessAlt());

-        qtronic_send_UserInput_to_userIn(UserInputTemplate46);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate47);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate48);

-        oldtimer := 0.0;

-        qtronic_send_SIPResp_to_netIn(SIPRespTemplate49);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate50);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        qtronic_send_UserInput_to_userIn(UserInputTemplate51);

-        oldtimer := 0.0;

-        harnessTimer.start((0.0 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate52);

-        harnessTimer.stop;

-        oldtimer := 0.0;

-        harnessTimer.start((0.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate53);

-        harnessTimer.stop;

-        oldtimer := 0.500000000;

-        harnessTimer.start((1.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate54);

-        harnessTimer.stop;

-        oldtimer := 1.500000000;

-        harnessTimer.start((3.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate55);

-        harnessTimer.stop;

-        oldtimer := 3.500000000;

-        harnessTimer.start((7.500000000 - oldtimer) + SLACK);

-        qtronic_receive_SIPReq_from_netOut(SIPReqTemplate56);

-        harnessTimer.stop;

-        oldtimer := 7.500000000;

-        harnessTimer.start((8.0 - oldtimer) + SLACK);

-        qtronic_receive_TimeOutIndication_from_userOut(TimeOutIndicationTemplate57);

-        harnessTimer.stop;

-        oldtimer := 8.0;

-        setverdict(pass);

-        deactivate(default_behaviour_ref);

-        f_MBT_Qtronic_Demo_endTestCase();

-    }

-    template UserInput UserInputTemplate46 :=

-    {

-        input1 := "invite",

-        input2 := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate47 :=

-    {

-        op := "INVITE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPResp SIPRespTemplate48 :=

-    {

-        status := 180,

-        cseq := ""

-    }

-    template SIPResp SIPRespTemplate49 :=

-    {

-        status := 200,

-        cseq := "INVITE"

-    }

-    template SIPReq SIPReqTemplate50 :=

-    {

-        op := "ACK",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template UserInput UserInputTemplate51 :=

-    {

-        input1 := "bye",

-        input2 := ""

-    }

-    template SIPReq SIPReqTemplate52 :=

-    {

-        op := "BYE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate53 :=

-    {

-        op := "BYE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate54 :=

-    {

-        op := "BYE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate55 :=

-    {

-        op := "BYE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template SIPReq SIPReqTemplate56 :=

-    {

-        op := "BYE",

-        param_ := "sip:127.0.0.1:5061"

-    }

-    template TimeOutIndication TimeOutIndicationTemplate57 :=

-    {

-        

-    }

-    control

-    {

-        execute(Test_Case_1());

-        execute(Test_Case_2());

-        execute(Test_Case_3());

-        execute(Test_Case_4());

-        execute(Test_Case_5());

-        execute(Test_Case_6());

-        execute(Test_Case_7());

-    }

-}

diff --git a/demo/mapped/MBT_Qtronic_Types.ttcn b/demo/mapped/MBT_Qtronic_Types.ttcn
deleted file mode 100644
index 3ebc47f..0000000
--- a/demo/mapped/MBT_Qtronic_Types.ttcn
+++ /dev/null
@@ -1,78 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////

-//

-//  File:     MBT_Qtronic_Types.ttcn

-//  Rev:      <RnXnn>

-//  Prodnr:   CNL 113 659

-//  Updated:  2010-04-14

-//  Contact:  http://ttcn.ericsson.se

-///////////////////////////////////////////////////////////////////////////////

-/* -*- ttcn3 -*- */

-

-/** @file C:\Users\eantwuh\workspace\SIPeval\MBT_Qtronic_Types.ttcn

- *

- * @author Conformiq TTCN3 Script Backend

- * @date Wed Apr 14 13:17:47 CEST 2010

- *

- * WARNING! This file has been automatically generated using

- * Ericsson Qtronic TTCN3 Script Backend (based on the original Conformiq Backend).DO NOT EDIT.

- */

-

-module MBT_Qtronic_Types

-{

-    /* User provided imports begin */

-    import from MBT_Qtronic_Demo all; import from EPTF_MBT_LGen_Definitions all;

-    /* User provided imports end */

-    type port netInPort message

-    {

-        inout SIPResp;

-        inout SIPReq;

-    } with {extension "internal"}

-    type port userInPort message

-    {

-        inout UserInput;

-    } with {extension "internal"}

-    type port netOutPort message

-    {

-        inout SIPResp;

-        inout SIPReq;

-    } with {extension "internal"}

-    type port userOutPort message

-    {

-        inout TimeOutIndication;

-    } with {extension "internal"}

-    type record SIPResp

-    {

-        integer status,

-        charstring cseq

-    }

-    type record UserInput

-    {

-        charstring input1,

-        charstring input2

-    }

-    type record TimeOutIndication

-    {

-        

-    }

-    type record SIPReq

-    {

-        charstring op,

-        charstring param_

-    }

-    type component Qtronic_CT extends MBT_Qtronic_Demo_Main_CT

-    {

-        port netInPort netIn;

-        port userInPort userIn;

-        port netOutPort netOut;

-        port userOutPort userOut;

-        timer harnessTimer := 0.0;

-    }

-}

diff --git a/demo/mapped/model/SIPClient.java b/demo/mapped/model/SIPClient.java
deleted file mode 100644
index 36c7abd..0000000
--- a/demo/mapped/model/SIPClient.java
+++ /dev/null
@@ -1,124 +0,0 @@
-// -*- cqa -*-

-

-

-/* System Description

- * Defines input/output ports,

- * and valid messages per port.

- */

-system

-{

-    Inbound userIn  : UserInput;

-    Inbound netIn   : SIPResp, SIPReq;

-    Outbound netOut : SIPResp, SIPReq;

-    Outbound userOut : TimeOutIndication;

-}

-

-

-/* ====================================================

- * Message Definitions

- */

-record TimeOutIndication { }

-

-record UserInput

-{

-    public String input1;

-    public String input2;

-}

-

-record SIPResp

-{

-    public int status;

-    public String cseq;

-}

-

-record SIPReq

-{

-    public String op;

-    public String param;

-}

-

-

-/* ====================================================

- * SIPClient

- */

-

-class SIPClient extends StateMachine {

-

-    const  float T1 = 0.5;		// For UDP transport

-

-    public float timeoutA = T1;		// 17.1.1.2

-    public float timeoutB = 16 * T1;	// 17.1.1.2

-    public float timeoutE = T1;		// 17.1.2.2

-    public float timeoutF = 16 * T1;	// 17.1.2.2

-

-

-    /* -----------------------------------------

-     * SIP addresses

-     * src = caller, dst = callee

-     */

-

-    public String src = "sip:127.0.0.1";

-    public String dst = "sip:127.0.0.1:5061";

-

-

-    /* -----------------------------------------

-     * Methods to send SIP messages to network.

-     */

-    public void Invite() {

-        SIPReq r;

-        r.op = "INVITE";

-        r.param = dst;

-        netOut.send(r, 1.0);

-    }

-

-    protected void Cancel() {

-        SIPReq r;

-        r.op = "CANCEL";

-        r.param = dst;

-        netOut.send(r, 1.0);

-    }

-

-    protected void Ack() {

-        SIPReq r;

-        r.op = "ACK";

-        r.param = dst;

-        netOut.send(r, 1.0);

-    }

-

-    protected void Bye() {

-        SIPReq r;

-        r.op = "BYE";

-        r.param = dst;

-        netOut.send(r, 1.0);

-    }

-

-    protected void SendOK(String cseq) {

-        SIPResp r;

-        r.status = 200;

-        r.cseq = cseq;

-        netOut.send(r, 1.0);

-    }

-

-

-    /* -----------------------------------------

-     * Methods to provide indications to the

-     * user interface.

-     */

-    private void TimeOut()

-    {

-        // Indicate timeout

-        TimeOutIndication timeout;

-        userOut.send(timeout);

-    }

-}

-

-

-/* ====================================================

- * main() - Starting Point

- */

-

-void main()

-{

-    var a = new SIPClient();

-    a.start();

-}

diff --git a/demo/mapped/model/SIPClient.xmi b/demo/mapped/model/SIPClient.xmi
deleted file mode 100644
index 86e3ceb..0000000
--- a/demo/mapped/model/SIPClient.xmi
+++ /dev/null
@@ -1,326 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

-<n1:Project xmlns:n1="http://www.conformiq.com/EMF/SimpleStatechart" xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

-

-  <statemachine name="SIPClient">

-    <transitions body="userIn:UserInput&#xA;[msg.input1==&quot;invite&quot; &amp;&amp; msg.input2==dst]&#xA;/&#xA;Invite();" from="//@statemachine.0/@states.0" to="//@statemachine.0/@states.1"/>

-    <transitions body="netIn:SIPResp[msg.status==180]/&#xA;require true;" from="//@statemachine.0/@states.1" to="//@statemachine.0/@states.12"/>

-    <transitions body="netIn:SIPResp&#xA;[msg.status==200 &amp;&amp;&#xA; msg.cseq == &quot;INVITE&quot;]&#xA;/Ack();&#xA;requirement &quot;Acknowledge established call with ACK&quot;;" from="//@statemachine.0/@states.12" to="//@statemachine.0/@states.2"/>

-    <transitions body="after(timeoutB)/&#xA;requirement &quot;17.1.1.2 INVITE timers/Terminates INVITE cycle after B timeout&quot;;&#xA;TimeOut();" from="//@statemachine.0/@states.1" to="//@statemachine.0/@states.5"/>

-    <transitions body="userIn:UserInput&#xA;[msg.input1==&quot;bye&quot;]/" from="//@statemachine.0/@states.2" to="//@statemachine.0/@states.3"/>

-    <transitions body="netIn:SIPResp&#xA;[msg.status==200]/&#xA;requirement &quot;Terminating/Wait for OK in response to BYE&quot;;" from="//@statemachine.0/@states.3" to="//@statemachine.0/@states.10"/>

-    <transitions body="netIn:SIPReq&#xA;[msg.op==&quot;BYE&quot; &amp;&amp;&#xA; msg.param==src]&#xA;/SendOK(&quot;BYE&quot;);&#xA;requirement &quot;Terminating/Send OK in response to BYE&quot;;" from="//@statemachine.0/@states.2" to="//@statemachine.0/@states.8"/>

-    <transitions body="netIn:SIPResp&#xA;[msg.status==486 &amp;&amp;&#xA; msg.cseq == &quot;INVITE&quot;]&#xA;/Ack();" from="//@statemachine.0/@states.12" to="//@statemachine.0/@states.11"/>

-    <transitions body="netIn:SIPResp&#xA;[msg.status==487 &amp;&amp;&#xA;msg.cseq==&quot;INVITE&quot;]/&#xA;Ack();" from="//@statemachine.0/@states.13" to="//@statemachine.0/@states.9"/>

-    <transitions body="/ setThreadName(&quot;SIP UAC&quot;);" from="//@statemachine.0/@states.4" to="//@statemachine.0/@states.0"/>

-    <transitions body="netIn:SIPResp&#xA;[msg.status==200 &amp;&amp;&#xA;msg.cseq==&quot;CANCEL&quot;]/" from="//@statemachine.0/@states.6" to="//@statemachine.0/@states.13"/>

-    <transitions body="after(timeoutF)/&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Terminates BYE cycle after F timeout&quot;;&#xA;TimeOut();" from="//@statemachine.0/@states.3" to="//@statemachine.0/@states.5"/>

-    <transitions body="userIn:UserInput&#xA;[msg.input1==&quot;cancel&quot;]/" from="//@statemachine.0/@states.12" to="//@statemachine.0/@states.6"/>

-    <transitions body="after(timeoutF)/&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Terminates CANCEL cycle after F timeout&quot;;&#xA;TimeOut();" from="//@statemachine.0/@states.6" to="//@statemachine.0/@states.7"/>

-    <states internal="" name="Init" xsi:type="n1:BasicState"/>

-    <states internal="" name="Calling" xsi:type="n1:BasicState">

-      <transitions body="after(timeoutA)/&#xA;Invite();&#xA;timeoutA = timeoutA * 2.0;&#xA;requirement &quot;17.1.1.2 INVITE timers/Resends INVITE after A timeout&quot;;" from="//@statemachine.0/@states.1/@states.1" to="//@statemachine.0/@states.1/@states.2"/>

-      <transitions body="" from="//@statemachine.0/@states.1/@states.2" to="//@statemachine.0/@states.1/@states.1"/>

-      <transitions body="/timeoutA = T1;" from="//@statemachine.0/@states.1/@states.0" to="//@statemachine.0/@states.1/@states.1"/>

-      <states xsi:type="n1:InitialState"/>

-      <states internal="" name="Wait" xsi:type="n1:BasicState"/>

-      <states xsi:type="n1:Junction"/>

-    </states>

-    <states internal="" name="Ready" xsi:type="n1:BasicState"/>

-    <states internal="" name="Terminating" xsi:type="n1:BasicState">

-      <transitions body="/Bye();&#xA;timeoutE = T1;" from="//@statemachine.0/@states.3/@states.0" to="//@statemachine.0/@states.3/@states.1"/>

-      <transitions body="after(timeoutE)/&#xA;Bye();&#xA;timeoutE = timeoutE * 2.0;&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Resends BYE after E timeout&quot;;" from="//@statemachine.0/@states.3/@states.1" to="//@statemachine.0/@states.3/@states.2"/>

-      <transitions body="" from="//@statemachine.0/@states.3/@states.2" to="//@statemachine.0/@states.3/@states.1"/>

-      <states xsi:type="n1:InitialState"/>

-      <states internal="" name="Wait" xsi:type="n1:BasicState"/>

-      <states xsi:type="n1:Junction"/>

-    </states>

-    <states xsi:type="n1:InitialState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states internal="" name="Canceling" xsi:type="n1:BasicState">

-      <transitions body="/Cancel();&#xA;timeoutE = T1;" from="//@statemachine.0/@states.6/@states.0" to="//@statemachine.0/@states.6/@states.1"/>

-      <transitions body="after(timeoutE)/&#xA;Cancel();&#xA;timeoutE = timeoutE * 2.0;&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Resends CANCEL after E timeout&quot;;" from="//@statemachine.0/@states.6/@states.1" to="//@statemachine.0/@states.6/@states.2"/>

-      <transitions body="" from="//@statemachine.0/@states.6/@states.2" to="//@statemachine.0/@states.6/@states.1"/>

-      <states xsi:type="n1:InitialState"/>

-      <states internal="" name="Wait" xsi:type="n1:BasicState"/>

-      <states xsi:type="n1:Junction"/>

-    </states>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states xsi:type="n1:FinalState"/>

-    <states internal="" name="Ringing" xsi:type="n1:BasicState"/>

-    <states internal="" name="Waiting Response" xsi:type="n1:BasicState"/>

-  </statemachine>

-

-  <diagrams statemachine="//@statemachine.0">

-    <items height="50" state="//@statemachine.0/@states.0" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-600" y="-300"/>

-    </items>

-    <items height="50" state="//@statemachine.0/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-600" y="-100"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.2" width="200" xsi:type="n1:DiagramBasicState">

-      <location x="100" y="150"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.3" width="150" xsi:type="n1:DiagramBasicState">

-      <location x="-250" y="250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-540" y="-175"/>

-      <route x="-550" y="-250"/>

-      <route x="-550" y="-100"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-300" y="-85"/>

-      <route x="-500" y="-75"/>

-      <route x="-100" y="-75"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="0" x="417.917" y="3.888"/>

-      <route x="0" y="0"/>

-      <route x="200" y="0"/>

-      <route x="200" y="150"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.3" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-540" y="113.953"/>

-      <route x="-550" y="-50"/>

-      <route x="-550" y="277.906"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.4" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="230" constraintRight="80" valign="0" x="-37.5" y="210"/>

-      <route x="100" y="200"/>

-      <route x="-175" y="200"/>

-      <route x="-175" y="250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.5" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-172" y="416"/>

-      <route x="-182" y="350"/>

-      <route x="-182" y="482"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.6" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="210" y="315"/>

-      <route x="200" y="250"/>

-      <route x="200" y="380"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.7" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-215" y="40"/>

-      <route x="-100" y="50"/>

-      <route x="-330" y="50"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.8" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="685" y="202.5"/>

-      <route x="675" y="150"/>

-      <route x="675" y="255"/>

-    </items>

-    <items state="//@statemachine.0/@states.4" xsi:type="n1:DiagramInitialState">

-      <location x="-550" y="-350"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.9" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="-540" y="-315"/>

-      <route x="-550" y="-330"/>

-      <route x="-550" y="-300"/>

-    </items>

-    <items state="//@statemachine.0/@states.5" xsi:type="n1:DiagramFinalState">

-      <location x="-550" y="297.906"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.10" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="685" y="25"/>

-      <route x="675" y="-50"/>

-      <route x="675" y="100"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.11" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-425.57" y="400.906"/>

-      <route x="-250" y="298.763"/>

-      <route x="-530" y="297.963"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.6" width="150" xsi:type="n1:DiagramBasicState">

-      <location x="600" y="-150"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@transitions.12" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="300" y="-87.5"/>

-      <route x="0" y="-77.5"/>

-      <route x="600" y="-77.5"/>

-    </items>

-    <items state="//@statemachine.0/@states.7" xsi:type="n1:DiagramFinalState">

-      <location x="675" y="-275.13"/>

-    </items>

-    <items autolayout="false" transition="//@statemachine.0/@transitions.13" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0" valign="0.5" x="536.844" y="-195.261"/>

-      <route x="675" y="-150"/>

-      <route x="675" y="-255.13"/>

-    </items>

-    <items state="//@statemachine.0/@states.8" xsi:type="n1:DiagramFinalState">

-      <location x="200" y="400"/>

-    </items>

-    <items state="//@statemachine.0/@states.9" xsi:type="n1:DiagramFinalState">

-      <location x="675" y="275"/>

-    </items>

-    <items state="//@statemachine.0/@states.10" xsi:type="n1:DiagramFinalState">

-      <location x="-182" y="502"/>

-    </items>

-    <items state="//@statemachine.0/@states.11" xsi:type="n1:DiagramFinalState">

-      <location x="-350" y="50"/>

-    </items>

-    <items height="250" state="//@statemachine.0/@states.12" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-100" y="-150"/>

-    </items>

-    <items height="50" state="//@statemachine.0/@states.13" width="150" xsi:type="n1:DiagramBasicState">

-      <location x="600" y="100"/>

-    </items>

-    <items height="120" note="Triggered by user action, send INVITE request. (We are initiating a new call.)" width="161" xsi:type="n1:DiagramNote">

-      <location x="-838" y="-142"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.1" note="//@diagrams.0/@items.28" xsi:type="n1:DiagramNoteConnector">

-      <route x="-677" y="-75"/>

-      <route x="-600" y="-75"/>

-    </items>

-    <items height="76" note="21.1.2 180 Ringing&#xA;waiting for other end to answer" width="174" xsi:type="n1:DiagramNote">

-      <location x="-100" y="-300"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.26" note="//@diagrams.0/@items.30" xsi:type="n1:DiagramNoteConnector">

-      <route x="-50" y="-224"/>

-      <route x="-50" y="-150"/>

-    </items>

-    <items height="131" note="It is ringing, but we want to cancel (hang-up) before other end answers" width="169" xsi:type="n1:DiagramNote">

-      <location x="250" y="-321"/>

-    </items>

-    <items autolayout="false" note="//@diagrams.0/@items.32" xsi:type="n1:DiagramNoteConnector">

-      <route x="327" y="-190"/>

-      <route x="327" y="-80"/>

-    </items>

-    <items height="84" note="Now we can speak with other end" width="143" xsi:type="n1:DiagramNote">

-      <location x="-35" y="275"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.2" note="//@diagrams.0/@items.34" xsi:type="n1:DiagramNoteConnector">

-      <route x="88" y="275"/>

-      <route x="120" y="250"/>

-    </items>

-    <items height="66" note="21.4.24 486 Busy Here&#xA;Callee rejects call" width="179" xsi:type="n1:DiagramNote">

-      <location x="-494" y="-57"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.0/@items.25" note="//@diagrams.0/@items.36" xsi:type="n1:DiagramNoteConnector">

-      <route x="-350" y="9"/>

-      <route x="-350" y="30"/>

-    </items>

-    <items height="52" note="2.1.4.25 487 Request Terminated&#xA;call is now terminated" width="257" xsi:type="n1:DiagramNote">

-      <location x="370" y="168"/>

-    </items>

-    <items autolayout="false" note="//@diagrams.0/@items.38" xsi:type="n1:DiagramNoteConnector">

-      <route x="627" y="200"/>

-      <route x="675" y="202"/>

-    </items>

-    <items height="69" note="Paragraph numbers in comments and requiremnts refer to RFC 3261 SIP: Session Initiation Protocol" width="307" xsi:type="n1:DiagramNote">

-      <location x="-238" y="-433"/>

-    </items>

-  </diagrams>

-

-  <diagrams cursorItem="after(timeoutE)/&#xA;Bye();&#xA;timeoutE = timeoutE * 2.0;&#xA;requirement &quot;17.1.2.2 Non-INVITE timers/Resends BYE after E timeout&quot;;" cursorOffset="14" selected="//@diagrams.1/@items.4" substate="//@statemachine.0/@states.3">

-    <items state="//@statemachine.0/@states.3/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="-1200" y="-200"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.3/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-1000" y="-250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.3/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-1090" y="-210"/>

-      <route x="-1180" y="-200"/>

-      <route x="-1000" y="-200"/>

-    </items>

-    <items state="//@statemachine.0/@states.3/@states.2" xsi:type="n1:DiagramJunction">

-      <location x="-600" y="-100"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.3/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="-130" constraintLeft="-880" valign="0" x="-750" y="-190"/>

-      <route x="-900" y="-200"/>

-      <route x="-600" y="-200"/>

-      <route x="-600" y="-110"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.3/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintRight="-630" constraintTop="-130" valign="1" x="-780" y="-110"/>

-      <route x="-610" y="-100"/>

-      <route x="-950" y="-100"/>

-      <route x="-950" y="-150"/>

-    </items>

-    <items height="150" note="Re-send BYE message after time-out and increase value of timer E according to RFC 3261 17.1.2 Non-INVITE Client Transaction." width="350" xsi:type="n1:DiagramNote">

-      <location x="-1100" y="-50"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.1/@items.3" note="//@diagrams.1/@items.6" xsi:type="n1:DiagramNoteConnector">

-      <route x="-750" y="-30"/>

-      <route x="-609.062" y="-95.7711"/>

-    </items>

-  </diagrams>

-

-  <diagrams cursorItem="after(timeoutA)/&#xA;Invite();&#xA;timeoutA = timeoutA * 2.0;&#xA;requirement &quot;17.1.1.2 INVITE timers/Resends INVITE after A timeout&quot;;" cursorOffset="46" selected="//@diagrams.2/@items.3" substate="//@statemachine.0/@states.1">

-    <items state="//@statemachine.0/@states.1/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="-1200" y="-300"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.1/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-1000" y="-350"/>

-    </items>

-    <items state="//@statemachine.0/@states.1/@states.2" xsi:type="n1:DiagramJunction">

-      <location x="-600" y="-200"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.1/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="-230" constraintLeft="-880" valign="0" x="-750" y="-290"/>

-      <route x="-900" y="-300"/>

-      <route x="-600" y="-300"/>

-      <route x="-600" y="-210"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.1/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintRight="-630" constraintTop="-230" valign="1" x="-780" y="-210"/>

-      <route x="-610" y="-200"/>

-      <route x="-950" y="-200"/>

-      <route x="-950" y="-250"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.1/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-1090" y="-310"/>

-      <route x="-1180" y="-300"/>

-      <route x="-1000" y="-300"/>

-    </items>

-    <items height="150" note="Re-send INVITE message after time-out and increase value of timer A according to RFC 3261 17.1.1 INVITE Client Transaction." width="350" xsi:type="n1:DiagramNote">

-      <location x="-1100" y="-150"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.2/@items.2" note="//@diagrams.2/@items.6" xsi:type="n1:DiagramNoteConnector">

-      <route x="-750" y="-130"/>

-      <route x="-609.062" y="-195.771"/>

-    </items>

-  </diagrams>

-

-  <diagrams substate="//@statemachine.0/@states.6">

-    <items state="//@statemachine.0/@states.6/@states.0" xsi:type="n1:DiagramInitialState">

-      <location x="-1300" y="-300"/>

-    </items>

-    <items height="100" state="//@statemachine.0/@states.6/@states.1" width="100" xsi:type="n1:DiagramBasicState">

-      <location x="-1100" y="-350"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.6/@transitions.0" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" valign="1" x="-1190" y="-310"/>

-      <route x="-1280" y="-300"/>

-      <route x="-1100" y="-300"/>

-    </items>

-    <items state="//@statemachine.0/@states.6/@states.2" xsi:type="n1:DiagramJunction">

-      <location x="-700" y="-200"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.6/@transitions.1" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintBottom="-230" constraintLeft="-980" valign="0" x="-850" y="-290"/>

-      <route x="-1000" y="-300"/>

-      <route x="-700" y="-300"/>

-      <route x="-700" y="-210"/>

-    </items>

-    <items autolayout="true" transition="//@statemachine.0/@states.6/@transitions.2" xsi:type="n1:DiagramTransition">

-      <bodylocation align="0.5" constraintRight="-730" constraintTop="-230" valign="1" x="-880" y="-210"/>

-      <route x="-710" y="-200"/>

-      <route x="-1050" y="-200"/>

-      <route x="-1050" y="-250"/>

-    </items>

-    <items height="150" note="Re-send CANCEL message after time-out and increase value of timer E according to RFC 3261 17.1.2 Non-INVITE Client Transaction." width="350" xsi:type="n1:DiagramNote">

-      <location x="-1200" y="-150"/>

-    </items>

-    <items autolayout="false" item="//@diagrams.3/@items.3" note="//@diagrams.3/@items.6" xsi:type="n1:DiagramNoteConnector">

-      <route x="-850" y="-130"/>

-      <route x="-709.062" y="-195.771"/>

-    </items>

-  </diagrams>

-

-</n1:Project>

diff --git a/demo/sut/MBT_SUT_SIP_Phone.ttcn b/demo/sut/MBT_SUT_SIP_Phone.ttcn
deleted file mode 100644
index 504c2e6..0000000
--- a/demo/sut/MBT_SUT_SIP_Phone.ttcn
+++ /dev/null
@@ -1,403 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright (c) 2000-2018 Ericsson Telecom AB
-//
-// All rights reserved. This program and the accompanying materials
-// are made available under the terms of the Eclipse Public License v1.0
-// which accompanies this distribution, and is available at
-// http://www.eclipse.org/legal/epl-v10.html
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:     MBT_SUT_SIP_Phone.ttcn
-//  Rev:      <RnXnn>
-//  Prodnr:   CNL 113 659
-//  Updated:  2009-10-01
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-
-module MBT_SUT_SIP_Phone
-{
-import from MBT_Qtronic_Types all;
-
-import from EPTF_CLL_Common_Definitions all;
-import from EPTF_CLL_Base_Functions all;
-import from EPTF_CLL_RBTScheduler_Functions all;
-import from EPTF_CLL_LGenBase_Definitions all;
-import from EPTF_CLL_LGenBase_ConfigFunctions all;
-import from EPTF_CLL_LGenBase_EventHandlingFunctions all;
-
-import from EPTF_MBT_LGen_Definitions all;
-import from EPTF_MBT_LGen_Functions all;
-
-import from EPTF_SIP_LGen_Definitions all;
-import from EPTF_SIP_LGen_Functions all;
-import from EPTF_SIP_Common_Functions all;
-import from EPTF_SIP_UserDatabase_Functions all;
-import from EPTF_SIP_Transport_Definitions all;
-import from EPTF_SIP_Transport_Functions all;
-import from EPTF_SIP_MessageHandler_Functions all;
-
-import from EPTF_SIP_TestSteps all;
-import from EPTF_SIP_Templates all;
-import from EPTF_SIP_Events all;
-
-modulepar
-{
-  charstring tsp_MBT_SUT_LocalIP       := "159.107.193.33";
-  integer    tsp_MBT_SUT_LocalPort     := 20000;
-  charstring tsp_MBT_SUT_RemoteIP      := "159.107.193.33";
-  integer    tsp_MBT_SUT_RemotePort    := 15000;
-  
-  charstring tsp_MBT_SUT_SIP_Transport := "udp";
-}
-
-type component MBT_Qtronic_Demo_SUT_CT
-  extends 
-    EPTF_MBT_LGen_CT, 
-    EPTF_SIP_LGen_CT, EPTF_SIP_LocalTransport_CT
-{
-  port userInPort  userIn;
-  port userOutPort userOut;
-  
-  var integer v_SUT_myBIdx := -1;
-}
-
-function f_MBT_Qtronic_Demo_SUT_behavior() runs on MBT_Qtronic_Demo_SUT_CT
-{
- // map(self:IPL4_PCO, system:IPL4_PCO);
-  
-  activate(as_MBT_Qtronic_Demo_SUT_userMessageHandler());
-  
-  f_EPTF_MBT_init("MBT_Demo_SUT",0, "MBT_")
-  
-  f_SIP_applibInit("MBT_Demo_SUT");
- 
-  f_EPTF_SIP_LocalTransport_init(tsp_MBT_SUT_SIP_Transport);
-  vf_EPTF_SIP_LocalTransport_receive := refers(f_EPTF_SIP_Message_MsgHandler);    //receive callback function on LocalTransport
-  vf_EPTF_SIP_LGen_msgSender         := refers(f_EPTF_SIP_LocalTransport_sendSIPMessage);  //send callback function on LGen
-  v_removeUAS                        := refers(fcb_EPTF_SIP_LocalTransport_removeUAS);
-  
-  v_SUT_myBIdx := f_EPTF_LGenBase_declareBehaviorType("SUT_Behavior", -1, null, null, null);
-  
-  var integer vl_temp := -1;
-  vl_temp := f_EPTF_LGenBase_declareFsmEvent("SUT_Behavior", "SUT_INVITE");
-  f_EPTF_Base_assert(%definitionId&": Error during registration of SUT_INVITE", vl_temp == c_MBT_Qtronic_Demo_SUT_Event_invite);
-  vl_temp := f_EPTF_LGenBase_declareFsmEvent("SUT_Behavior", "SUT_CANCEL");
-  f_EPTF_Base_assert(%definitionId&": Error during registration of SUT_CANCEL", vl_temp == c_MBT_Qtronic_Demo_SUT_Event_cancel);
-  vl_temp := f_EPTF_LGenBase_declareFsmEvent("SUT_Behavior", "SUT_BYE");
-  f_EPTF_Base_assert(%definitionId&": Error during registration of SUT_BYE", vl_temp == c_MBT_Qtronic_Demo_SUT_Event_bye);
-
-
-  f_EPTF_LGenBase_declareCompactFsmTable(f_IMBT_Qtronic_Demo_SUT_getFSM());
-  
-  f_EPTF_MBT_initLGenFsm
-  (
-    refers(f_MBT_Qtronic_Demo_SUT_createUserMessage),
-    refers(f_MBT_Qtronic_Demo_SUT_fillInDB)
-  );
-  
-  EPTF_MBT_PCO.send(EPTF_MBT_CommandResponse:{ ready := {}}) to mtc;
-  
-  f_EPTF_Base_wait4Shutdown();
-}
-
-altstep as_MBT_Qtronic_Demo_SUT_userMessageHandler()
-runs on MBT_Qtronic_Demo_SUT_CT
-{
-  var UserInput vl_UserInput;
-  
-  [] userIn.receive(UserInput:?) -> value vl_UserInput
-    {
-      f_EPTF_SchedulerComp_refreshSnapshotTime();
-      action(%definitionId, " incoming: ", vl_UserInput);
-      
-      if (vl_UserInput.input1 == "invite")
-      {
-        f_EPTF_LGenBase_dispatchEvent({{v_SUT_myBIdx, c_MBT_Qtronic_Demo_SUT_Event_invite,{ 0, 0}, omit},{}});
-      }
-      else if (vl_UserInput.input1 == "cancel")
-      {
-        f_EPTF_LGenBase_dispatchEvent({{v_SUT_myBIdx, c_MBT_Qtronic_Demo_SUT_Event_cancel,{ 0, 0}, omit},{}});
-      }
-      else if (vl_UserInput.input1 == "bye")
-      {
-        f_EPTF_LGenBase_dispatchEvent({{v_SUT_myBIdx, c_MBT_Qtronic_Demo_SUT_Event_bye,{ 0, 0}, omit},{}});
-      }
-      else
-      {
-        action(%definitionId & "(): UserInput not recognized: ", vl_UserInput);
-      }
-      
-      repeat;
-    }
-}
-
-function f_MBT_Qtronic_Demo_SUT_createUserMessage(in EPTF_LGenBase_TestStepArgs pl_ptr) 
-runs on MBT_Qtronic_Demo_SUT_CT
-return boolean
-{
-  action(%definitionId & "(): creating message for: ", pl_ptr, "\n", pl_ptr.reportedEvent);
-  return true;
-}
-
-function f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication(in EPTF_LGenBase_TestStepArgs pl_ptr) 
-runs on MBT_Qtronic_Demo_SUT_CT
-{
-  userOut.send(TimeOutIndication:{});
-}
-
-function f_MBT_Qtronic_Demo_SUT_fillInDB(in EPTF_MBT_ConfigRequest p_req) runs on MBT_Qtronic_Demo_SUT_CT
-{
-  var integer vl_grpIdx := f_EPTF_LGenBase_entityGrpNameIndex(p_req.entityGroupName);
-  var integer vl_entityIdx := f_EPTF_LGenBase_getEGrpBaseOffset(vl_grpIdx);
-  
-  for (var integer i:=0; i<p_req.noEntities; i:=i+1)
-  {
-    var EPTF_IntegerList vl_bCtx := f_EPTF_LGenBase_getBehaviorCtx(i + vl_entityIdx, v_SIP_myBIdx);
-    f_EPTF_SIP_IPL4asp_SetUserData
-    ( 
-      vl_bCtx[0],
-      tsp_MBT_SUT_LocalIP, // local IP
-      {tsp_MBT_SUT_LocalPort, tsp_MBT_SUT_LocalPort+1},
-      tsp_MBT_SUT_SIP_Transport,
-      tsp_MBT_SUT_RemoteIP, // proxy ip
-      tsp_MBT_SUT_RemotePort // proxy port
-    );
-    
-    f_EPTF_SIP_User_SetUserData(
-      vl_bCtx[0],
-      {
-        {
-          addr := {
-            nameAddr := {
-              displayName := "titansim_user_7465001",
-              addrSpec := {
-                scheme := "sip",
-                userInfo := {
-                  userOrTelephoneSubscriber := "titansim_user_7465001",
-                  password := omit
-                },
-                hostPort := {
-                  host := "tcj.ics.se",
-                  portField := tsp_MBT_SUT_LocalPort
-                },
-                urlParameters := omit,
-                headers := omit
-              }
-            }
-          },
-          password := "pass2ICS"
-        }
-      },
-      tsp_MBT_SUT_LocalIP,
-      {tsp_MBT_SUT_LocalPort, tsp_MBT_SUT_LocalPort+1},
-      i + vl_entityIdx //entity index
-    );
-    
-    f_EPTF_SIP_Session_AddData(vl_bCtx[0], f_EPTF_SIP_getTransport(tsp_MBT_SUT_SIP_Transport),345600);
-
-    f_EPTF_SIP_Session_addCalledUser(
-      i,
-      {
-        nameAddr := {
-          displayName := "titansim_user_7465000",
-          addrSpec := {
-            scheme := "sip",
-            userInfo := {
-              userOrTelephoneSubscriber := "titansim_user_7465000",
-              password := omit
-            },
-            hostPort := {
-              host := "tcj.ics.se",
-              portField := tsp_MBT_SUT_RemotePort
-            },
-            urlParameters := omit,
-            headers := omit
-          }
-        }
-      }
-    );
-        
-    f_EPTF_SIP_IPL4asp_startListening(vl_bCtx[0], true); // Both UDP and TCP
-  }
-}
-
-const integer c_MBT_Qtronic_Demo_SUT_Event_invite       := 0;
-const integer c_MBT_Qtronic_Demo_SUT_Event_cancel       := 1;
-const integer c_MBT_Qtronic_Demo_SUT_Event_bye          := 2;
-
-const integer c_MBT_Qtronic_Demo_SUT_State_idle         := 0;
-const integer c_MBT_Qtronic_Demo_SUT_State_initiated    := 1;
-const integer c_MBT_Qtronic_Demo_SUT_State_canceling    := 2;
-const integer c_MBT_Qtronic_Demo_SUT_State_established  := 3;
-const integer c_MBT_Qtronic_Demo_SUT_State_closing      := 4;
-
-function f_IMBT_Qtronic_Demo_SUT_getFSM()
-  runs on MBT_Qtronic_Demo_SUT_CT 
-  return EPTF_LGenBase_CompactFsmTable 
-{
-  return
-  {
-    //DOT: digraph c_MBT_Qtronic_Demo_SUT_FSM {
-    name := "MBT_Qtronic_Demo_SUT_FSM",
-    stateList := {"idle", "initiated", "canceling", "established", "closing"},
-    timerList := {},
-    table := 
-    {
-      {eventToListen := {v_SUT_myBIdx, c_MBT_Qtronic_Demo_SUT_Event_invite, entity},
-        cellRow := {
-          //state=idle
-          { {
-              //DOT: idle -> initiated [label="i:invite\n o:INVITE"]
-              {refers(f_SIP_step_init), {}},
-              {refers(f_SIP_step_createINVITE),{0,0}}
-          },omit, c_MBT_Qtronic_Demo_SUT_State_initiated},
-          //state=initiated
-          { omit, omit, omit },
-          //state=canceling
-          { omit, omit, omit },
-          //state=established
-          { omit, omit, omit },
-          //state=closing
-          { omit, omit, omit }
-        }
-      },
-      {eventToListen := {v_SUT_myBIdx, c_MBT_Qtronic_Demo_SUT_Event_cancel, entity},
-        cellRow := {
-          //state=idle
-          { omit, omit, omit },
-          //state=initiated
-          { {
-              //DOT: initiated -> canceling [label="i:cancel\n o:CANCEL"]
-              {refers(f_SIP_step_createCANCEL),{}}
-          },omit, c_MBT_Qtronic_Demo_SUT_State_canceling},
-          //state=canceling
-          { omit, omit, omit },
-          //state=established
-          { omit, omit, omit },
-          //state=closing
-          { omit, omit, omit }
-        }
-      },
-      {eventToListen := {v_SUT_myBIdx, c_MBT_Qtronic_Demo_SUT_Event_bye, entity},
-        cellRow := {
-          //state=idle
-          { omit, omit, omit },
-          //state=initiated
-          { omit, omit, omit },
-          //state=canceling
-          { omit, omit, omit },
-          //state=established
-          { {
-              //DOT: established -> closing [label="i:bye\n o:BYE"]
-              {refers(f_SIP_step_createBYE),{}}
-          },omit, c_MBT_Qtronic_Demo_SUT_State_closing},
-          //state=closing
-          { omit, omit, omit }
-        }
-      },
-      {eventToListen := {v_SIP_myBIdx, 200, fsm},
-        cellRow := {
-          //state=idle
-          { omit, omit, omit },
-          //state=initiated
-          { {
-              //DOT: initiated -> established [label="i:200\n o:ACK"]
-              {refers(f_SIP_step_createACK),{}}
-          },omit, c_MBT_Qtronic_Demo_SUT_State_established},
-          //state=canceling
-          { omit, omit, omit },
-          //state=established
-          { omit, omit, omit },
-          //state=closing
-          { {
-              //DOT: closing -> idle [label="i:200"]
-          },omit, c_MBT_Qtronic_Demo_SUT_State_idle }
-        }
-      },
-      {eventToListen := {v_SIP_myBIdx, 486, fsm},
-        cellRow := {
-          //state=idle
-          { omit, omit, omit },
-          //state=initiated
-          { {
-              //DOT: initiated -> idle [label="i:486\n o:ACK"]
-              {refers(f_SIP_step_createACK),{}}
-          },omit, c_MBT_Qtronic_Demo_SUT_State_idle},
-          //state=canceling
-          { omit, omit, omit },
-          //state=established
-          { omit, omit, omit },
-          //state=closing
-          { omit, omit, omit }
-        }
-      },
-      {eventToListen := {v_SIP_myBIdx, 487, fsm},
-        cellRow := {
-          //state=idle
-          { omit, omit, omit },
-          //state=initiated
-          { omit, omit, omit },
-          //state=canceling
-          { {
-              //DOT: canceling -> idle [label="i:487\n o:ACK"]
-              {refers(f_SIP_step_createACK),{}}
-          },omit, c_MBT_Qtronic_Demo_SUT_State_idle},
-          //state=established
-          { omit, omit, omit },
-          //state=closing
-          { omit, omit, omit }
-        }
-      },
-      {eventToListen := {v_SIP_myBIdx, c_SIP_eventIdx_BYE, fsm},
-        cellRow := {
-          //state=idle
-          { omit, omit, omit },
-          //state=initiated
-          { omit, omit, omit },
-          //state=canceling
-          { omit, omit, omit },
-          //state=established
-          { {
-              //DOT: canceling -> idle [label="i:487\n o:ACK"]
-              {refers(f_SIP_step_handleBYE), {}},
-              {refers(f_SIP_step_createResponse),{c_status_200OK_idx}}
-          },omit, c_MBT_Qtronic_Demo_SUT_State_idle},
-          //state=closing
-          { omit, omit, omit }
-        }
-      },
-      {eventToListen := {v_SIP_myBIdx, c_SIP_eventIdx_UACTransactionTimeout, fsm},
-        cellRow := {
-          //state=idle
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=initiated
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=canceling
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=established
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=closing
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit }
-        }
-      },
-      {eventToListen := {v_SIP_myBIdx, c_SIP_eventIdx_UASTransactionTimeout, fsm},
-        cellRow := {
-          //state=idle
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=initiated
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=canceling
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=established
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit },
-          //state=closing
-          { { {refers(f_MBT_Qtronic_Demo_SUT_stepSendTimeoutIndication), {}} }, omit, omit }
-        }
-      }//row
-    }//table
-  }//fsm
-  //DOT: }
-}
-
-}