Remove BSSAPP, BSSGP, BSSMAP, GTP, GTPv2, ISUP, LLC, MobileL3, NS, SNDCP

All of those now have separate upstream repositories on git://git.eclipse.org/gitroot/titan
and we don't need to keep a copy around
diff --git a/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_FS.pdf b/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_FS.pdf
deleted file mode 100644
index 1cb938c..0000000
--- a/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_FS.pdf
+++ /dev/null
Binary files differ
diff --git a/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_PRI.pdf b/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_PRI.pdf
deleted file mode 100644
index b083d17..0000000
--- a/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_PRI.pdf
+++ /dev/null
Binary files differ
diff --git a/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_UG.pdf b/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_UG.pdf
deleted file mode 100644
index 16fb1a6..0000000
--- a/BSSAPP_v7.3.0_CNL113580_LATEST/doc/BSSAPP_v7.3.0_CNL113580_UG.pdf
+++ /dev/null
Binary files differ
diff --git a/BSSAPP_v7.3.0_CNL113580_LATEST/src/BSSAPp_Types.ttcn b/BSSAPP_v7.3.0_CNL113580_LATEST/src/BSSAPp_Types.ttcn
deleted file mode 100644
index e019f6a..0000000
--- a/BSSAPP_v7.3.0_CNL113580_LATEST/src/BSSAPp_Types.ttcn
+++ /dev/null
@@ -1,922 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2008                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               BSSAPp_Types.ttcn
-//  Rev:                R1A01
-//  Prodnr:             CNL 113 580
-//  Updated:            2008-01-24
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          BSSAP+, 3GPP TS 29.018 v7.3.0 (2006-12)
-
-module  BSSAPp_Types { // beginning of module
-
-// This module contains the BSSAP+ type definitions based on
-// 29.018 v7.3.0 (2006-12)
-// with attributes for RAW encoding/decoding.
-
-import from General_Types all;
-
-external function enc_PDU_BSSAPp(in PDU_BSSAPp pdu) return octetstring
-with { extension "prototype(convert)"
-       extension "encode(RAW)"
-     }         
-
-external function dec_PDU_BSSAPp(in octetstring stream) return PDU_BSSAPp
-with { extension "prototype(convert)"
-       extension "decode(RAW)"
-     }
-
-//====================================================================
-// Message type
-// Reference: 29.018 18.2
-//====================================================================
-
-type BIT8 ST_BSSAPp_Msg_type  with { variant "" };
-
-//====================================================================
-// IMSI
-// Reference: 29.018 18.4.10
-//====================================================================
-
-type hexstring IMSIDigits length(1..15)  with { variant "HEXORDER(low)" };
-
-type record STR_BSSAPp_IMSI {
-  BIT8        iEI,
-  LIN1        lengthIndicator,
-  BIT3        first_3_BIT,  //this is always '001'B
-  BIT1        parity,       // 0 - Even, 1 - Odd
-  IMSIDigits  iMSIdigits,
-  BIT4        fillerDigit  optional   // B'1111, fillerDigit is present 
-  // if oddevenIndicator=0
-}
-with { 
-  variant (lengthIndicator) 
-  "LENGTHTO (first_3_BIT, parity, iMSIdigits, fillerDigit)";
-  variant (fillerDigit) "PRESENCE (parity   = '0'B) ";
-};
-
-
-//====================================================================
-// Gs Cause
-// Reference: 29.018 18.4.7
-//====================================================================
-
-type record STR_BSSAPp_Gs_Cause {
-  BIT8  iEI,
-  LIN1  lengthIndicator,
-  OCT1  gsCauseValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (gsCauseValue)";
-};
-
-//====================================================================
-// VLR Number
-// Reference: 29.018 18.4.26
-//====================================================================
-
-type record STR_BSSAPp_VLR_Number {
-  BIT8        iEI,
-  LIN1        lengthIndicator,
-  BIT8        first_8_BIT, //this is always '10010001'B
-  IMSIDigits  vLRdigits
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (first_8_BIT, vLRdigits)";
-};
-
-//====================================================================
-// Downlink Tunnel Payload Control and Info
-// Reference: 29.018 18.4.3
-//====================================================================
-
-
-type record STR_BSSAPp_Downlink_Tunnel_Payload_Control_And_Info {
-  BIT8  iEI,
-  LIN1  lengthIndicator,
-  BIT2  tunnelPriority,
-  BIT1  e,
-  BIT4  protocolDiscriminator,
-  BIT1  spare,
-  octetstring tunnelPayload
-}
-with { 
-  variant (lengthIndicator) 
-  "LENGTHTO (tunnelPriority, e, protocolDiscriminator, spare, tunnelPayload)";
-};
-
-//====================================================================
-// SGSN Number 
-// Reference: 29.018 18.4.22
-//====================================================================
-
-type STR_BSSAPp_VLR_Number STR_BSSAPp_SGSN_Number with { variant "" };
-
-//====================================================================
-// IMSI Detach from GPRS Service Type
-// Reference: 29.018 18.4.11
-//====================================================================
-
-type record STR_BSSAPp_IMSI_Detach_from_GPRS_service_type {
-  BIT8  iEI,
-  LIN1  lengthIndicator,
-  BIT8  iMSIDetachFromGPRSServiceTypeValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (iMSIDetachFromGPRSServiceTypeValue)";
-};
-
-//====================================================================
-// Cell Global Identity
-// Reference: 29.018 18.4.1
-//====================================================================
-
-type record STR_BSSAPp_Cell_Global_Identity {
-  BIT8         iEI,
-  LIN1         lengthIndicator,
-  octetstring  cellGlobalIdentityValue length(8)
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (cellGlobalIdentityValue)";
-};
-
-//====================================================================
-// Service Area Identification
-// Reference: 29.018 18.4.21b
-//====================================================================
-
-type record STR_BSSAPp_Service_Area_Identification {
-  BIT8        iEI,
-  LIN1        lengthIndicator,
-  octetstring serviceAreaIdentificationValue length(7)
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (serviceAreaIdentificationValue)";
-};
-
-//====================================================================
-// IMSI Detach from Non-GPRS Service Type
-// Reference: 29.018 18.4.12
-//====================================================================
-
-type record STR_BSSAPp_IMSI_detach_from_non_GPRS_service_type {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  BIT8 iMSIDetachFromNonGPRSServiceTypeValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (iMSIDetachFromNonGPRSServiceTypeValue)";
-};
-
-//====================================================================
-// Location Information Age
-// Reference: 29.018 18.4.15
-//====================================================================
-
-type record STR_BSSAPp_Location_Information_Age {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  OCT2 locationInformationAge
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (locationInformationAge)";
-};
-
-//====================================================================
-// Location Area Identifier
-// Reference: 29.018 18.4.14
-//====================================================================
-
-type record STR_BSSAPp_Location_Area_Identifier {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  OCT5 locationAreaIdentifierValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (locationAreaIdentifierValue)";
-};
-
-//====================================================================
-// Mobile Identity
-// Reference: 29.018 18.4.17
-//====================================================================
-
-type record STR_BSSAPp_Mobile_Identity {
-  BIT8        iEI,
-  LIN1        lengthIndicator,
-  octetstring mobileIdentityValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (mobileIdentityValue)";
-};
-
-//====================================================================
-// Reject Cause
-// Reference: 29.018 18.4.21
-//====================================================================
-
-type record STR_BSSAPp_Reject_Cause {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  OCT1 rejectCauseValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (rejectCauseValue)";
-};
-
-//====================================================================
-// GPRS Location Update Type
-// Reference: 29.018 18.4.6
-//====================================================================
-
-type record STR_BSSAPp_GPRS_Location_Update_Type {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  BIT8 gPRSLocationUpdateTypeValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (gPRSLocationUpdateTypeValue)";
-};
-
-//====================================================================
-// Mobile Station Classmark 1
-// Reference: 29.018 18.4.18
-//====================================================================
-
-type record STR_BSSAPp_Mobile_Station_Classmark1 {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  OCT1 mobileStationClassmarkValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (mobileStationClassmarkValue)";
-};
-
-//====================================================================
-// TMSI Status
-// Reference: 29.018 18.4.24
-//====================================================================
-
-type record STR_BSSAPp_TMSI_Status {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  BIT1 tIMSIFlag,
-  BIT7 spare
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (tIMSIFlag, spare)";
-};
-
-//====================================================================
-// IMEISV
-// Reference: 29.018 18.4.9
-//====================================================================
-
-type record STR_BSSAPp_IMEISV {
-  BIT8      iEI,
-  LIN1      lengthIndicator,
-  hexstring digits length (16)
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (digits)";
-};
-
-
-//====================================================================
-// MM Information
-// Reference: 29.018 18.4.16
-//====================================================================
-
-type record STR_BSSAPp_MM_Information {
-  BIT8        iEI,
-  LIN1        lengthIndicator,
-  octetstring mMInformationValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (mMInformationValue)";
-};
-
-//====================================================================
-// Erroneous Message
-// Reference: 29.018 18.4.5
-//====================================================================
-
-type record STR_BSSAPp_Erroneous_Message {
-  BIT8        iEI,
-  LIN1        lengthIndicator,
-  octetstring erroneousMessageValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (erroneousMessageValue)";
-};
-
-//====================================================================
-// Information Requested
-// Reference: 29.018 18.4.13
-//====================================================================
-
-type record STR_BSSAPp_Information_Requested {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  BIT8 informationRequestedValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (informationRequestedValue)";
-};
-
-//====================================================================
-// TMSI
-// Reference: 29.018 18.4.23
-//====================================================================
-
-type record STR_BSSAPp_TMSI {
-  BIT8  iEI,
-  LIN1  lengthIndicator,
-  OCT4 tMSIoctets
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (tMSIoctets)";
-};
-
-//====================================================================
-// PTMSI
-// Reference: 29.018 18.4.20
-//====================================================================
-
-type STR_BSSAPp_TMSI STR_BSSAPp_PTMSI with { variant "" };
-
-//====================================================================
-// IMEI
-// Reference: 29.018 18.4.8
-//====================================================================
-
-type record STR_BSSAPp_IMEI {
-  BIT8  iEI,
-  LIN1  lengthIndicator,
-  hexstring digits length (14),
-  OCT1 lastOctet //should be 'F0'O
-} 
-with { 
-  variant (lengthIndicator) "LENGTHTO (digits, lastOctet)";
-};
-
-//====================================================================
-// Mobile Station State
-// Reference: 29.018 18.4.19
-//====================================================================
-
-type record STR_BSSAPp_Mobile_Station_State {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  BIT8 mobileStationStateValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (mobileStationStateValue)";
-};
-
-//====================================================================
-// Channel Needed
-// Reference: 29.018 18.4.2
-//====================================================================
-
-type record STR_BSSAPp_Channel_Needed {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  OCT1 channelNeededValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (channelNeededValue)";
-};
-
-//====================================================================
-// eMLPP Priority
-// Reference: 29.018 18.4.4
-//====================================================================
-
-type record STR_BSSAPp_eMLPP_Priority {
-  BIT8 iEI,
-  LIN1 lengthIndicator,
-  OCT1 eMLPPPriorityValue
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (eMLPPPriorityValue)";
-};
-
-//====================================================================
-// Global CN-Id
-// Reference: 29.018 18.4.27
-//====================================================================
-
-type record STR_BSSAPp_Global_CN_Id {
-  BIT8  iEI,
-  LIN1  lengthIndicator,
-  HEX6n pLMN_Id,
-  OCT2  CN_Id
-}
-with { 
-  variant (lengthIndicator) "LENGTHTO (pLMN_Id, CN_Id)";
-};
-
-//====================================================================
-// Downlink Tunnel Payload Control and Info
-// Reference: 29.018 18.4.25
-//====================================================================
-
-type STR_BSSAPp_Downlink_Tunnel_Payload_Control_And_Info
-  STR_BSSAPp_Uplink_Tunnel_Payload_Control_And_Info with { variant "" };
-
-//====================================================================
-// BSSAPp REJECT (Used for several IEs)
-// Reference: 29.018
-//====================================================================
-
-type record BSSAPp_REJECT {
-  ST_BSSAPp_Msg_type  messageType,
-  STR_BSSAPp_IMSI     iMSI,
-  STR_BSSAPp_Gs_Cause gsCause
-}
-with { 
-  variant "TAG (
-    iMSI,    iEI = '00000001'B;
-    gsCause, iEI = '00001000'B;
-  )" 
-};
-
-
-//--------------  PDUs  ----------------//
-
-
-//====================================================================
-// BSSAP+-ALERT-ACK
-// Reference: 29.018 17.1.1
-//====================================================================
-
-
-type record PDU_BSSAPp_ALERT_ACK {
-  ST_BSSAPp_Msg_type messageType,
-  STR_BSSAPp_IMSI    iMSI
-} 
-with {
-  variant "TAG (
-    iMSI, iEI = '00000001'B;
-  )" 
-};
-
-//====================================================================
-// BSSAP+-ALERT-REJECT
-// Reference: 29.018 17.1.2
-//====================================================================
-
-type BSSAPp_REJECT PDU_BSSAPp_ALERT_REJECT;
-
-//====================================================================
-// BSSAP+-ALERT-REQUEST
-// Reference: 29.018 17.1.3
-//====================================================================
-
-type record PDU_BSSAPp_ALERT_REQUEST {
-  ST_BSSAPp_Msg_type messageType,
-  STR_BSSAPp_IMSI    iMSI
-} 
-with {
-  variant "TAG(
-    iMSI, iEI = '00000001'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-DOWNLINK-TUNNEL-REQUEST
-// Reference: 29.018 17.1.4
-//====================================================================
-
-type record PDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST {
-  ST_BSSAPp_Msg_type    messageType,
-  STR_BSSAPp_IMSI       iMSI,
-  STR_BSSAPp_VLR_Number vLRnumber,
-  STR_BSSAPp_Downlink_Tunnel_Payload_Control_And_Info
-  downlinkTunnelPayloadControlAndInfo
-} 
-with {
-  variant "TAG (
-    iMSI,                                iEI = '00000001'B;
-    vLRnumber,                           iEI = '00000010'B;
-    downlinkTunnelPayloadControlAndInfo, iEI = '00011100'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-GPRS-DETACH-ACK
-// Reference: 29.018 17.1.5
-//====================================================================
-
-type record PDU_BSSAPp_GPRS_DETACH_ACK {
-  ST_BSSAPp_Msg_type messageType,
-  STR_BSSAPp_IMSI iMSI
-} with { variant "TAG(
-    iMSI, iEI = '00000001'B;
-  )" 
-};
-
-//====================================================================
-// BSSAP+-GPRS-DETACH-INDICATION
-// Reference: 29.018 17.1.6
-//====================================================================
-
-type record PDU_BSSAPp_GPRS_DETACH_INDICATION {
-  ST_BSSAPp_Msg_type                            messageType,
-  STR_BSSAPp_IMSI                               iMSI,
-  STR_BSSAPp_SGSN_Number                        sGSNnumber,
-  STR_BSSAPp_IMSI_Detach_from_GPRS_service_type iMSIdetachFromGPRSserviceType,
-  STR_BSSAPp_Cell_Global_Identity               cellGlobalIdentity optional,
-  STR_BSSAPp_Service_Area_Identification  serviceAreaIdentification optional
-} 
-with { 
-  variant "TAG (
-    iMSI,                          iEI = '00000001'B;
-    sGSNnumber,                    iEI = '00001001'B;
-    iMSIdetachFromGPRSserviceType, iEI = '00010000'B;
-    cellGlobalIdentity,            iEI = '00011000'B;
-    serviceAreaIdentification,     iEI = '00011110'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-GPRS-DETACH-ACK
-// Reference: 29.018 17.1.7
-//====================================================================
-
-type record PDU_BSSAPp_IMSI_DETACH_ACK {
-  ST_BSSAPp_Msg_type messageType,
-  STR_BSSAPp_IMSI    iMSI
-} 
-with {
-  variant "TAG(
-    iMSI, iEI = '00000001'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-IMSI-DETACH-INDICATION
-// Reference: 29.018 17.1.8
-//====================================================================
-type record PDU_BSSAPp_IMSI_DETACH_INDICATION {
-  ST_BSSAPp_Msg_type messageType,
-
-  STR_BSSAPp_IMSI                     iMSI,
-  STR_BSSAPp_SGSN_Number              sGSNnumber,
-  STR_BSSAPp_IMSI_detach_from_non_GPRS_service_type detachType,
-  STR_BSSAPp_Cell_Global_Identity     cellGlobalIdentity optional,
-  STR_BSSAPp_Location_Information_Age locationInformationAge optional,
-  STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
-} with { 
-  variant "TAG (
-    iMSI,                      iEI = '00000001'B;
-    sGSNnumber,                iEI = '00001001'B;
-    detachType,                iEI = '00010001'B;
-    cellGlobalIdentity,        iEI = '00011000'B;
-    locationInformationAge,    iEI = '00011001'B;
-    serviceAreaIdentification, iEI = '00011110'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-LOCATION-UPDATE-ACCEPT
-// Reference: 29.018 17.1.9
-//====================================================================
-
-type record PDU_BSSAPp_LOCATION_UPDATE_ACCEPT {
-  ST_BSSAPp_Msg_type                  messageType,
-  STR_BSSAPp_IMSI                     iMSI,
-  STR_BSSAPp_Location_Area_Identifier locationAreaIdentifier,
-  STR_BSSAPp_Mobile_Identity          newTMSIorIMSI optional
-} with { 
-  variant "TAG (
-    iMSI,                   iEI = '00000001'B;
-    locationAreaIdentifier, iEI = '00000100'B;
-    newTMSIorIMSI,          iEI = '00001110'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-LOCATION-UPDATE-REJECT
-// Reference: 29.018 17.1.10
-//====================================================================
-
-type record PDU_BSSAPp_LOCATION_UPDATE_REJECT {
-  ST_BSSAPp_Msg_type      messageType,
-  STR_BSSAPp_IMSI         iMSI,
-  STR_BSSAPp_Reject_Cause rejectCause
-} with {
-  variant "TAG(
-    iMSI,        iEI = '00000001'B;
-    rejectCause, iEI = '00001111'B
-  )" 
-};
-
-//====================================================================
-// BSSAP+-LOCATION-UPDATE-REQUEST
-// Reference: 29.018 17.1.11
-//====================================================================
-
-type record PDU_BSSAPp_LOCATION_UPDATE_REQUEST {
-  ST_BSSAPp_Msg_type                     messageType,
-  STR_BSSAPp_IMSI                        iMSI,
-  STR_BSSAPp_SGSN_Number                 sGSNnumber,
-  STR_BSSAPp_GPRS_Location_Update_Type   updateType,
-  STR_BSSAPp_Cell_Global_Identity        cellGlobalIdentity,
-  STR_BSSAPp_Mobile_Station_Classmark1   mobileStationClassmark,
-  STR_BSSAPp_Location_Area_Identifier    oldLocationAreaIdentifier optional,
-  STR_BSSAPp_TMSI_Status                 tMSIstatus optional,
-  STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional,
-  STR_BSSAPp_IMEISV                      iMEISV optional
-} with { 
-  variant "TAG (
-    iMSI,                      iEI = '00000001'B;
-    sGSNnumber,                iEI = '00001001'B;
-    updateType,                iEI = '00001010'B;
-    cellGlobalIdentity,        iEI = '00011000'B;
-    mobileStationClassmark,    iEI = '00001101'B;
-    oldLocationAreaIdentifier, iEI = '00000100'B;
-    tMSIstatus,                iEI = '00000111'B;
-    serviceAreaIdentification, iEI = '00011110'B;
-    iMEISV,                    iEI = '00010101'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-MM-INFORMATION-REQUEST
-// Reference: 29.018 17.1.12
-//====================================================================
-
-type record PDU_BSSAPp_MM_INFORMATION_REQUEST {
-  ST_BSSAPp_Msg_type        messageType,
-  STR_BSSAPp_IMSI           iMSI,
-  STR_BSSAPp_MM_Information mMinformation optional
-} with {
-  variant "TAG (
-    iMSI,          iEI = '00000001'B;
-    mMinformation, iEI = '00010111'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-MOBILE-STATUS
-// Reference: 29.018 17.1.13
-//====================================================================
-
-type record PDU_BSSAPp_MOBILE_STATUS {
-  ST_BSSAPp_Msg_type           messageType,
-  STR_BSSAPp_IMSI              iMSI optional,
-  STR_BSSAPp_Gs_Cause          gsCause,
-  STR_BSSAPp_Erroneous_Message erroneousMessage
-} with {
-  variant "TAG (
-    iMSI,             iEI = '00000001'B;
-    gsCause,          iEI = '00001000'B;
-    erroneousMessage, iEI = '00011011'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-MS-ACTIVITY-INDICATION
-// Reference: 29.018 17.1.14
-//====================================================================
-
-type record PDU_BSSAPp_MS_ACTIVITY_INDICATION {
-  ST_BSSAPp_Msg_type                     messageType,
-  STR_BSSAPp_IMSI                        iMSI,
-  STR_BSSAPp_Cell_Global_Identity        cellGlobalIdentity optional,
-  STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
-} with  { 
-  variant "TAG (
-    iMSI,                      iEI = '00000001'B;
-    cellGlobalIdentity,        iEI = '00011000'B;
-    serviceAreaIdentification, iEI = '00011110'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-MS-INFORMATION-REQUEST
-// Reference: 29.018 17.1.15
-//====================================================================
-
-type record PDU_BSSAPp_MS_INFORMATION_REQUEST {
-  ST_BSSAPp_Msg_type               messageType,
-  STR_BSSAPp_IMSI                  iMSI,
-  STR_BSSAPp_Information_Requested informationRequested
-} with {
-  variant "TAG(
-    iMSI,                 iEI = '00000001'B;
-    informationRequested, iEI = '00010010'B;
-  )" 
-};
-
-//====================================================================
-// BSSAP+-MS-INFORMATION-RESPONSE
-// Reference: 29.018 17.1.16
-//====================================================================
-
-type record PDU_BSSAPp_MS_INFORMATION_RESPONSE {
-  ST_BSSAPp_Msg_type                     messageType,
-  STR_BSSAPp_IMSI                        iMSI,
-  STR_BSSAPp_TMSI                        tMSI optional,
-  STR_BSSAPp_PTMSI                       pTMSI optional,
-  STR_BSSAPp_IMEI                        iMEI optional,
-  STR_BSSAPp_IMEISV                      iMEISV optional,
-  STR_BSSAPp_Cell_Global_Identity        cellGlobalIdentity optional,
-  STR_BSSAPp_Location_Information_Age    locationInformationAge optional,
-  STR_BSSAPp_Mobile_Station_State        mobileStationState optional,
-  STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
-} with { 
-  variant "TAG (
-    iMSI,                      iEI = '00000001'B;
-    tMSI,                      iEI = '00000011'B;
-    pTMSI,                     iEI = '00010011'B;
-    iMEI,                      iEI = '00010100'B;
-    iMEISV,                    iEI = '00010101'B;
-    cellGlobalIdentity,        iEI = '00011000'B;
-    locationInformationAge,    iEI = '00011001'B;
-    mobileStationState,        iEI = '00011010'B;
-    serviceAreaIdentification, iEI = '00011110'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-MS-UNREACHABLE
-// Reference: 29.018 17.1.17
-//====================================================================
-
-
-type BSSAPp_REJECT PDU_BSSAPp_MS_UNREACHABLE;
-
-//====================================================================
-// BSSAP+-PAGING-REJECT
-// Reference: 29.018 17.1.18
-//====================================================================
-
-type BSSAPp_REJECT PDU_BSSAPp_PAGING_REJECT;
-
-//====================================================================
-// BSSAP+-PAGING-REQUEST
-// Reference: 29.018 17.1.19
-//====================================================================
-
-
-type record PDU_BSSAPp_PAGING_REQUEST {
-  ST_BSSAPp_Msg_type                  messageType,
-  STR_BSSAPp_IMSI                     iMSI,
-  STR_BSSAPp_VLR_Number               vLRnumber,
-  STR_BSSAPp_TMSI                     tMSI optional,
-  STR_BSSAPp_Location_Area_Identifier locationAreaIdentifier optional,
-  STR_BSSAPp_Channel_Needed           channelNeeded optional,
-  STR_BSSAPp_eMLPP_Priority           eMLPPpriority optional,
-  STR_BSSAPp_Global_CN_Id             global_CN_Id optional
-} with { 
-  variant "TAG (
-    iMSI,                   iEI = '00000001'B; 
-    vLRnumber,              iEI = '00000010'B;
-    tMSI,                   iEI = '00000011'B;
-    locationAreaIdentifier, iEI = '00000100'B;
-    channelNeeded,          iEI = '00000101'B;
-    eMLPPpriority,          iEI = '00000110'B;
-    global_CN_Id,           iEI = '00001011'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-RESET-ACK
-// Reference: 29.018 17.1.20
-//====================================================================
-
-type record PDU_BSSAPp_RESET_ACK {
-  ST_BSSAPp_Msg_type     messageType,
-  STR_BSSAPp_SGSN_Number sGSNnumber optional,
-  STR_BSSAPp_VLR_Number  vLRnumber optional
-} with { 
-  variant "TAG (
-    sGSNnumber, iEI = '00001001'B;
-    vLRnumber,  iEI = '00000010'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-RESET-INDICATION
-// Reference: 29.018 17.1.21
-//====================================================================
-
-type record PDU_BSSAPp_RESET_INDICATION {
-  ST_BSSAPp_Msg_type     messageType,
-  STR_BSSAPp_SGSN_Number sGSNnumber optional,
-  STR_BSSAPp_VLR_Number  vLRnumber optional
-} with { 
-  variant "TAG (
-    sGSNnumber, iEI = '00001001'B;
-    vLRnumber,  iEI = '00000010'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-TMSI-REALLOCATION-COMPLETE
-// Reference: 29.018 17.1.22
-//====================================================================
-
-type record PDU_BSSAPp_TMSI_REALLOCATION_COMPLETE {
-  ST_BSSAPp_Msg_type                     messageType,
-  STR_BSSAPp_IMSI                        iMSI,
-  STR_BSSAPp_Cell_Global_Identity        cellGlobalIdentity optional,
-  STR_BSSAPp_Service_Area_Identification serviceAreaIdentification optional
-} with { 
-  variant "TAG (
-    iMSI,                      iEI = '00000001'B;
-    cellGlobalIdentity,        iEI = '00011000'B;
-    serviceAreaIdentification, iEI = '00011110'B;
-  )"
-};
-
-//====================================================================
-// BSSAP+-UPLINK-TUNNEL-REQUEST
-// Reference: 29.018 17.1.23
-//====================================================================
-
-
-type record PDU_BSSAPp_UPLINK_TUNNEL_REQUEST {
-  ST_BSSAPp_Msg_type     messageType,
-  STR_BSSAPp_IMSI        iMSI,
-  STR_BSSAPp_SGSN_Number sGSNnumber,
-  STR_BSSAPp_Uplink_Tunnel_Payload_Control_And_Info
-  uplinkTunnelPayloadControlAndInfo
-} with {  
-  variant "TAG(
-    iMSI,                              iEI = '00000001'B;
-    sGSNnumber,                        iEI = '00001001'B;
-    uplinkTunnelPayloadControlAndInfo, iEI = '00011101'B;
-  )" 
-};
-
-
-
-// ------------------ // ----PDU_BSSAPp---- // ------------------
-
-
-type union PDU_BSSAPp {
-  PDU_BSSAPp_PAGING_REJECT              pDU_BSSAPp_PAGING_REJECT,
-  PDU_BSSAPp_PAGING_REQUEST             pDU_BSSAPp_PAGING_REQUEST,
-  PDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST    pDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST,
-  PDU_BSSAPp_UPLINK_TUNNEL_REQUEST      pDU_BSSAPp_UPLINK_TUNNEL_REQUEST,
-  PDU_BSSAPp_LOCATION_UPDATE_REQUEST    pDU_BSSAPp_LOCATION_UPDATE_REQUEST,
-  PDU_BSSAPp_LOCATION_UPDATE_ACCEPT     pDU_BSSAPp_LOCATION_UPDATE_ACCEPT,
-  PDU_BSSAPp_LOCATION_UPDATE_REJECT     pDU_BSSAPp_LOCATION_UPDATE_REJECT,
-  PDU_BSSAPp_TMSI_REALLOCATION_COMPLETE pDU_BSSAPp_TMSI_REALLOCATION_COMPLETE,
-  PDU_BSSAPp_ALERT_REQUEST              pDU_BSSAPp_ALERT_REQUEST,
-  PDU_BSSAPp_ALERT_ACK                  pDU_BSSAPp_ALERT_ACK,
-  PDU_BSSAPp_ALERT_REJECT               pDU_BSSAPp_ALERT_REJECT,
-  PDU_BSSAPp_MS_ACTIVITY_INDICATION     pDU_BSSAPp_MS_ACTIVITY_INDICATION,
-  PDU_BSSAPp_GPRS_DETACH_INDICATION     pDU_BSSAPp_GPRS_DETACH_INDICATION,
-  PDU_BSSAPp_GPRS_DETACH_ACK            pDU_BSSAPp_GPRS_DETACH_ACK,
-  PDU_BSSAPp_IMSI_DETACH_INDICATION     pDU_BSSAPp_IMSI_DETACH_INDICATION,
-  PDU_BSSAPp_IMSI_DETACH_ACK            pDU_BSSAPp_IMSI_DETACH_ACK,
-  PDU_BSSAPp_RESET_INDICATION           pDU_BSSAPp_RESET_INDICATION,
-  PDU_BSSAPp_RESET_ACK                  pDU_BSSAPp_RESET_ACK,
-  PDU_BSSAPp_MS_INFORMATION_REQUEST     pDU_BSSAPp_MS_INFORMATION_REQUEST,
-  PDU_BSSAPp_MS_INFORMATION_RESPONSE    pDU_BSSAPp_MS_INFORMATION_RESPONSE,
-  PDU_BSSAPp_MM_INFORMATION_REQUEST     pDU_BSSAPp_MM_INFORMATION_REQUEST,
-  PDU_BSSAPp_MOBILE_STATUS              pDU_BSSAPp_MOBILE_STATUS,
-  PDU_BSSAPp_MS_UNREACHABLE             pDU_BSSAPp_MS_UNREACHABLE
-
-} with {
-  variant "TAG (
-    pDU_BSSAPp_PAGING_REQUEST,              messageType ='00000001'B;
-    pDU_BSSAPp_PAGING_REJECT,               messageType ='00000010'B;
-    pDU_BSSAPp_DOWNLINK_TUNNEL_REQUEST,     messageType ='00000111'B;
-    pDU_BSSAPp_UPLINK_TUNNEL_REQUEST,       messageType ='00001000'B;
-    pDU_BSSAPp_LOCATION_UPDATE_REQUEST,     messageType ='00001001'B;
-    pDU_BSSAPp_LOCATION_UPDATE_ACCEPT,      messageType ='00001010'B;
-    pDU_BSSAPp_LOCATION_UPDATE_REJECT,      messageType ='00001011'B;
-    pDU_BSSAPp_TMSI_REALLOCATION_COMPLETE,  messageType ='00001100'B;
-    pDU_BSSAPp_ALERT_REQUEST,               messageType ='00001101'B;
-    pDU_BSSAPp_ALERT_ACK,                   messageType ='00001110'B;
-    pDU_BSSAPp_ALERT_REJECT,                messageType ='00001111'B;
-    pDU_BSSAPp_MS_ACTIVITY_INDICATION,      messageType ='00010000'B;
-    pDU_BSSAPp_GPRS_DETACH_INDICATION,      messageType ='00010001'B;
-    pDU_BSSAPp_GPRS_DETACH_ACK,             messageType ='00010010'B;
-    pDU_BSSAPp_IMSI_DETACH_INDICATION,      messageType ='00010011'B;
-    pDU_BSSAPp_IMSI_DETACH_ACK,             messageType ='00010100'B;
-    pDU_BSSAPp_RESET_INDICATION,            messageType ='00010101'B;
-    pDU_BSSAPp_RESET_ACK,                   messageType ='00010110'B;
-    pDU_BSSAPp_MS_INFORMATION_REQUEST,      messageType ='00010111'B;
-    pDU_BSSAPp_MS_INFORMATION_RESPONSE,     messageType ='00011000'B;
-    pDU_BSSAPp_MM_INFORMATION_REQUEST,      messageType ='00011010'B;
-    pDU_BSSAPp_MOBILE_STATUS,               messageType ='00011101'B;
-    pDU_BSSAPp_MS_UNREACHABLE,              messageType ='00011111'B;
-  )"
-};
-
-} with{ encode "RAW"}//end of module  BSSAPp_Types
diff --git a/BSSGP_v13.0.0_CNL113833_LATEST/BSSGP_v13.0.0_CNL113833.tpd b/BSSGP_v13.0.0_CNL113833_LATEST/BSSGP_v13.0.0_CNL113833.tpd
deleted file mode 100644
index caee934..0000000
--- a/BSSGP_v13.0.0_CNL113833_LATEST/BSSGP_v13.0.0_CNL113833.tpd
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2016 Ericsson
-
-  The copyright to the computer  program(s) herein  is the property of Ericsson.
-  The program(s) may be used and/or copied only with the written permission
-  of Ericsson or in accordance with  the terms and conditions  stipulated in the
-  agreement/contract under which the program(s) has been supplied.
-
-
-   File:               BSSGP_v13.0.0_CNL113833.tpd
-   Description:        tpd project file
-   Rev:                R1A
-   Prodnr:             CNL 113 833
-
- -->
-<TITAN_Project_File_Information version="1.0">
-  <ProjectName>BSSGP_v13.0.0_CNL113833</ProjectName>
-  <ReferencedProjects>
-    <ReferencedProject name="ProtocolModules_Common" projectLocationURI="../COMMON/ProtocolModules_Common.tpd"/>
-  </ReferencedProjects>
-  <Files>
-    <FileResource projectRelativePath="src/BSSGP_EncDec.cc" relativeURI="src/BSSGP_EncDec.cc"/>
-    <FileResource projectRelativePath="src/BSSGP_Types.ttcn" relativeURI="src/BSSGP_Types.ttcn"/>
-  </Files>
-  <ActiveConfiguration>Default</ActiveConfiguration>
-  <Configurations>
-    <Configuration name="Default">
-      <ProjectProperties>
-        <MakefileSettings>
-          <generateInternalMakefile>true</generateInternalMakefile>
-          <GNUMake>true</GNUMake>
-          <incrementalDependencyRefresh>true</incrementalDependencyRefresh>
-          <targetExecutable>bin/BSSGP_v13.0.0_CNL113833</targetExecutable>
-          <buildLevel>Level 3 - Creating object files with dependency update</buildLevel>
-        </MakefileSettings>
-        <LocalBuildSettings>
-          <workingDirectory>bin</workingDirectory>
-        </LocalBuildSettings>
-      </ProjectProperties>
-      <FolderProperties>
-        <FolderResource>
-          <FolderPath>doc</FolderPath>
-          <FolderProperties>
-            <ExcludeFromBuild>true</ExcludeFromBuild>
-          </FolderProperties>
-        </FolderResource>
-      </FolderProperties>
-    </Configuration>
-  </Configurations>
-</TITAN_Project_File_Information>
diff --git a/BSSGP_v13.0.0_CNL113833_LATEST/doc/BSSGP_v13.0_Descr.doc b/BSSGP_v13.0.0_CNL113833_LATEST/doc/BSSGP_v13.0_Descr.doc
deleted file mode 100644
index 21c47b0..0000000
--- a/BSSGP_v13.0.0_CNL113833_LATEST/doc/BSSGP_v13.0_Descr.doc
+++ /dev/null
Binary files differ
diff --git a/BSSGP_v13.0.0_CNL113833_LATEST/doc/BSSGP_v13.0_PRI.doc b/BSSGP_v13.0.0_CNL113833_LATEST/doc/BSSGP_v13.0_PRI.doc
deleted file mode 100644
index d8251f5..0000000
--- a/BSSGP_v13.0.0_CNL113833_LATEST/doc/BSSGP_v13.0_PRI.doc
+++ /dev/null
Binary files differ
diff --git a/BSSGP_v13.0.0_CNL113833_LATEST/doc/documentation_note.txt b/BSSGP_v13.0.0_CNL113833_LATEST/doc/documentation_note.txt
deleted file mode 100644
index 6cec029..0000000
--- a/BSSGP_v13.0.0_CNL113833_LATEST/doc/documentation_note.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-Please note that the storage of the documentation of the product has been 
-moved to the eridoc.ericsson.se from the ClearCase.
-
-You can access the documentation of the product via the following links:
-
-The documentation belongs to the R1A revision of the product
-can be found here:
-http://document.internal.ericsson.com/Download?DocNo=1095-CNL113833&Rev=A&Lang=EN&PRev=Y
-
-The documentation belongs to the latest revision of the product
-can be found here:
-http://document.internal.ericsson.com/Download?DocNo=1095-CNL113833&Rev=HIGHEST&Lang=EN&Status=FREE&PRev=Y
-
diff --git a/BSSGP_v13.0.0_CNL113833_LATEST/src/BSSGP_EncDec.cc b/BSSGP_v13.0.0_CNL113833_LATEST/src/BSSGP_EncDec.cc
deleted file mode 100644
index b447a67..0000000
--- a/BSSGP_v13.0.0_CNL113833_LATEST/src/BSSGP_EncDec.cc
+++ /dev/null
@@ -1,145 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               BSSGP_EncDec.cc
-//  Rev:                R1A
-//  Prodnr:             CNL 113 833
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 48.018 13.0.0
-
-#include "BSSGP_Types.hh"
-
-//static TTCN_Module BSSGP_EndDec("BSSGP_EncDec", __DATE__, __TIME__);
-
-namespace BSSGP__Types {
-
-
-OCTETSTRING enc__PDU__BSSGP(const PDU__BSSGP& pdu)
-{
- TTCN_Buffer bb;
-
- // CALCULATE WHICH LENGTH FORMAT SHOULD BE USED AND CHANGE SHORT LENGTH FORM
- // TO LONG LENGTH FORM IF NECESSARY
- if (pdu.get_selection() == PDU__BSSGP::ALT_pDU__BSSGP__DL__UNITDATA)
- {
-  if( pdu.pDU__BSSGP__DL__UNITDATA().lLC__PDU().lLC__PDU().lengthof() > 127)
-    {
-      PDU__BSSGP pdu2(pdu);
-      pdu2.pDU__BSSGP__DL__UNITDATA().lLC__PDU().lengthIndicator().length2() =
-        pdu2.pDU__BSSGP__DL__UNITDATA().lLC__PDU().lLC__PDU().lengthof();
-      pdu2.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-
-    }
-    else
-      pdu.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-  }
-  else if(pdu.get_selection() == PDU__BSSGP::ALT_pDU__BSSGP__UL__UNITDATA)
-  {
-   if( pdu.pDU__BSSGP__UL__UNITDATA().lLC__PDU().lLC__PDU().lengthof() > 127)
-    {
-      PDU__BSSGP pdu2(pdu);
-      pdu2.pDU__BSSGP__UL__UNITDATA().lLC__PDU().lengthIndicator().length2() =
-        pdu2.pDU__BSSGP__UL__UNITDATA().lLC__PDU().lLC__PDU().lengthof();
-      pdu2.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-    }
-    else
-      pdu.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-  }
-
-  else if(pdu.get_selection() == PDU__BSSGP::ALT_pDU__BSSGP__DL__MBMS__UNITDATA)
-   {
-    if( pdu.pDU__BSSGP__DL__MBMS__UNITDATA().lLC__PDU().lLC__PDU().lengthof() > 127)
-     {
-       PDU__BSSGP pdu2(pdu);
-       pdu2.pDU__BSSGP__DL__MBMS__UNITDATA().lLC__PDU().lengthIndicator().length2() =
-         pdu2.pDU__BSSGP__DL__MBMS__UNITDATA().lLC__PDU().lLC__PDU().lengthof();
-       pdu2.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-     }
-     else
-       pdu.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-   }
-
-  else if(pdu.get_selection() == PDU__BSSGP::ALT_pDU__BSSGP__UL__MBMS__UNITDATA)
-   {
-    if( pdu.pDU__BSSGP__UL__MBMS__UNITDATA().lLC__PDU().lLC__PDU().lengthof() > 127)
-     {
-       PDU__BSSGP pdu2(pdu);
-       pdu2.pDU__BSSGP__UL__MBMS__UNITDATA().lLC__PDU().lengthIndicator().length2() =
-         pdu2.pDU__BSSGP__UL__MBMS__UNITDATA().lLC__PDU().lLC__PDU().lengthof();
-       pdu2.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-     }
-     else
-       pdu.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-   }
-
-  else
-    pdu.encode(PDU__BSSGP_descr_ ,bb, TTCN_EncDec::CT_RAW);
-
-  return OCTETSTRING (bb.get_len(), bb.get_data());
-}
-
-/*PDU__BSSGP dec__PDU__BSSGP(const OCTETSTRING& stream)
-{
-        PDU__BSSGP retv;
-        TTCN_Buffer bb;
-
-        bb.put_os(stream);
-
-        retv.decode(PDU__BSSGP_descr_, bb, TTCN_EncDec::CT_RAW);
-        return retv;
-}*/
-
-PDU__BSSGP dec__PDU__BSSGP(const OCTETSTRING& stream)
-{
-	if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC)) {
-		TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-		TTCN_Logger::log_event_str("dec_PDU_BSSGP(): Stream before decoding: ");
-		stream.log();
-		TTCN_Logger::end_event();
-	}
-	TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_DEFAULT);
-	TTCN_EncDec::clear_error();
-	TTCN_Buffer ttcn_buffer(stream);
-	PDU__BSSGP ret_val;
-	ret_val.decode(PDU__BSSGP_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
-
-	if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC)) {
-		TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-		TTCN_Logger::log_event_str("dec_PDU_BSSGP(): Decoded @BSSGP_Types.PDU_BSSGP: ");
-		ret_val.log();
-		TTCN_Logger::end_event();
-	}
-if (TTCN_EncDec::get_last_error_type() == TTCN_EncDec::ET_NONE) {
-	if (ttcn_buffer.get_pos() < ttcn_buffer.get_len() && TTCN_Logger::log_this_event(TTCN_WARNING)) {
-		ttcn_buffer.cut();
-		OCTETSTRING remaining_stream;
-		ttcn_buffer.get_string(remaining_stream);
-		TTCN_Logger::begin_event(TTCN_WARNING);
-		TTCN_Logger::log_event_str("dec_PDU_BSSGP(): Warning: Data remained at the end of the stream after successful decoding: ");
-		remaining_stream.log();
-		TTCN_Logger::end_event();
-	}
-	}
-if(ret_val.get_selection()== PDU__BSSGP::ALT_pDU__BSSGP__PS__HANDOVER__REQUEST)
-{
-	if(!ret_val.pDU__BSSGP__PS__HANDOVER__REQUEST().target__Cell__Identifier().ispresent()){
-		Cell__Identifier cell;
-		cell = ret_val.pDU__BSSGP__PS__HANDOVER__REQUEST().source__Cell__Identifier();
-		ret_val.pDU__BSSGP__PS__HANDOVER__REQUEST().target__Cell__Identifier() = cell;
-		//ret_val.pDU__BSSGP__PS__HANDOVER__REQUEST().source__Cell__Identifier().clean_up();
-		ret_val.pDU__BSSGP__PS__HANDOVER__REQUEST().source__Cell__Identifier()= OMIT_VALUE;
-
-	} }
-return ret_val;
-}
-
-
-}//namespace
diff --git a/BSSGP_v13.0.0_CNL113833_LATEST/src/BSSGP_Types.ttcn b/BSSGP_v13.0.0_CNL113833_LATEST/src/BSSGP_Types.ttcn
deleted file mode 100644
index 7172862..0000000
--- a/BSSGP_v13.0.0_CNL113833_LATEST/src/BSSGP_Types.ttcn
+++ /dev/null
@@ -1,4419 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               BSSGP_Types.ttcn
-//  Rev:                R1A
-//  Prodnr:             CNL 113 833
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 48.018 13.0.0
-
-
-module BSSGP_Types
-{    
-
-import from General_Types all;
-
-external function enc_PDU_BSSGP(in PDU_BSSGP pdu) return octetstring;
-
-external function dec_PDU_BSSGP(in octetstring stream) return PDU_BSSGP;
-
-external function enc_PDU_BSSGP_fast(in PDU_BSSGP pdu, out octetstring stream)
-with { extension "prototype(fast) encode(RAW)" }
-
-external function dec_PDU_BSSGP_backtrack(in octetstring stream, out PDU_BSSGP pdu) return integer
-with { extension "prototype(backtrack) decode(RAW)" }
-
-
-//-----------------------------------------------------------------------------
-// INFORMATION ELEMENTS
-//-----------------------------------------------------------------------------
-type union LIN2_2a
-{
-  integer length1,
-  integer length2
-} with {
-  variant (length1) "FIELDLENGTH(7)";
-  variant (length2) "FIELDLENGTH(15)";
-  variant (length2) "BYTEORDER(last)";
-  variant (length1,length2) "FIELDORDER(msb)";
-}   
-      
-// 11.3.1           
-type record Alignment_octets
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            spare_octet  length(0..3)
-} with {
-  variant "PRESENCE(iEI = '00'O)";
-  variant (lengthIndicator) "LENGTHTO (spare_octet)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.2
-type record Bmax_default_MS
-{
-  OCT1                    iEI,
-  BIT1                    ext,
-  LIN2_2a                 lengthIndicator, 
-  OCT2                    bmax  // could be changed to integer input if simpler
-} with { 
-  variant "PRESENCE(iEI = '01'O)";
-  variant (lengthIndicator) "LENGTHTO (bmax)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-// 11.3.3
-type record BSS_Area_Indication
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   bSS_indicator
-} with { 
-  variant "PRESENCE(iEI = '02'O)";
-  variant (lengthIndicator) "LENGTHTO (bSS_indicator)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.4
-type record Bucket_Leak_Rate
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT2                   r_Value // could be changed to integer input if simpler
-} with {
-  variant "PRESENCE(iEI = '03'O)";
-  variant (lengthIndicator) "LENGTHTO (r_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,   ext = '1'B;
-                                       length2,   ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.5
-type record BVC_Bucket_Size
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT2                   bmax  
-} with { 
-  variant "PRESENCE(iEI = '05'O)";
-  variant (lengthIndicator) "LENGTHTO (bmax)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.6
-type record BVCI
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT2                   unstructured_value
-} with { 
-  variant "PRESENCE(iEI = '04'O)";
-  variant (lengthIndicator) "LENGTHTO (unstructured_value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.7
-type record BVC_Measurement
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT2                   delay_Value  
-                                   
-} with { 
-  variant "PRESENCE(iEI = '06'O)";
-  variant (lengthIndicator) "LENGTHTO (delay_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
- 
-// 11.3.8
-type record Cause_BSSGP 
- {
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   cause_Value
- } with { 
-  variant "PRESENCE(iEI = '07'O)";
-  variant (lengthIndicator) "LENGTHTO (cause_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
- 
-// 11.3.9
-type record Cell_Identifier
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- HEX1                   mccDigit1 ,
- HEX1                   mccDigit2 ,
- HEX1                   mccDigit3 ,
- HEX1                   mncDigit3 ,
- HEX1                   mncDigit1 ,
- HEX1                   mncDigit2 ,
- OCT2                   lac,
- OCT1                   rac,    
- OCT2                   cI_value
-} with { 
-  variant "PRESENCE(iEI = '08'O)";
-      variant (lengthIndicator) 
-     "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3,mncDigit1,
-               mncDigit2,lac,rac,cI_value)";
-      variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                           length2,         ext = '0'B;)";
-      variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-type record Cell_Identifier_V
-{ 
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2,
- OCT2                   lac,
- OCT1                   rac,    
- OCT2                   cI_value
-};
-
-// 11.3.10
-// 29.018, 44.018
-type record Channel_needed
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- Channel_Needed_Value    channel_Needed_Value
-} with { 
-  variant "PRESENCE(iEI = '09'O)";
-  variant (lengthIndicator) "LENGTHTO (channel_Needed_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-type record Channel_Needed_Value
-{
-  BIT2   channel_1,
-  BIT2   channel_2,
-  BIT4   channelNeededIEI     //44.018
-}
-
-// 11.3.11
-type record DRX_Parameters
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- OCT1                    splitPG_CycleCode,
- BIT3                    nonDRXTimer,
- BIT1                    splitOnCCCH,
- BIT4                    cnSpecificDRXCycleLength
-} with { 
-  variant "PRESENCE(iEI = '0A'O)";
-  variant (lengthIndicator) 
-                "LENGTHTO (splitPG_CycleCode,nonDRXTimer,splitOnCCCH,
-                   cnSpecificDRXCycleLength)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-        };        
-
-// 11.3.12
-type record EMLPP_Priority_BSSGP
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- BIT3                    callPriority,
- BIT5                    spare
-} with { 
-  variant "PRESENCE(iEI = '0B'O)";
-  variant (lengthIndicator) "LENGTHTO (callPriority,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-        };
-        
-// 11.3.13
-type record Flush_Action
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- OCT1                    actionValue
-} with { 
-  variant "PRESENCE(iEI = '0C'O)";
-  variant (lengthIndicator) "LENGTHTO (actionValue)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-        };
-
-
-// 11.3.14
-type record IMSI_BSSGP
-{         
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- BIT3                    type_of_Identity,
- BIT1                    oddevenIndicator,      // '1'B or '0'B
- hexstring               digits     length(5..15)                                                                       
-} with { 
-  variant "PRESENCE(iEI = '0D'O)";
-  variant (lengthIndicator) "LENGTHTO (type_of_Identity,
-                                             oddevenIndicator,digits)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,   ext = '0'B;)"; 
-              //variant (fillerDigit) "PRESENCE (oddevenIndicator   = '0'B) ";
-  variant (digits) "HEXORDER(low)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  variant "PADDING(yes)";
-  variant "PADDING_PATTERN('1'B)"
-                
-        };
-                
-// 11.3.15
-//NOTE: lengthIndicator-short form will be converted to long form 
-// if needed during encoding
-type record LLC_PDU
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- octetstring            lLC_PDU  // Note: this is divided into 2 parts in spec!
-} with { 
-  variant "PRESENCE(iEI = '0E'O)";
-  variant (lengthIndicator) "LENGTHTO (lLC_PDU)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.16
-type record LLC_Frames_Discarded
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- hexstring               number_of_frames_discarded length (2)
- } with { 
-  variant "PRESENCE(iEI = '0F'O)";
-  variant (lengthIndicator) "LENGTHTO (number_of_frames_discarded)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-    
-// 11.3.17
-type record Location_Area
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2,
- OCT2                   lac
-} with { 
-  variant "PRESENCE(iEI = '10'O)";
-  variant (lengthIndicator) "LENGTHTO (mccDigit1,mccDigit2,mccDigit3,
-                                 mncDigit3,mncDigit1,mncDigit2,lac)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.18
-type record LSA_Identifier_List_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            lSA_Identifier_List   //  encoded LSA Identifier List
-} with { 
-  variant "PRESENCE(iEI = '26'O)";
-  variant (lengthIndicator) "LENGTHTO (lSA_Identifier_List)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.19
-type record LSA_Information_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  LSA_Information        lSA_Information   //  encoded LSA Information 48.008
-} with { 
-  variant "PRESENCE(iEI = '27'O)";
-  variant (lengthIndicator) "LENGTHTO (lSA_Information)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record LSA_Information     //  encoded LSA Information 48.008
-{
-  BIT1                                      lSA_Only,
-  BIT7                                      spare,
-  LSA_Identification_and_Attributes_List    lSA_Identification_and_Attributes_List
-}
-
-type record of LSA_Identification_and_Attributes LSA_Identification_and_Attributes_List; 
-
-type record LSA_Identification_and_Attributes
-{
-   BIT4                 priority,
-   BIT1                 pref,
-   BIT1                 act,
-   BIT2                 spare, 
-   OCT3                 lSA_ID
-}
-
-
-// 11.3.20
-type record Mobile_Id_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  MobileIdentityV_BSSGP  mobile_Identity
-} with { 
-  variant "PRESENCE(iEI = '11'O)";
-  variant (lengthIndicator) "LENGTHTO (mobile_Identity)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// MobileIdentityV structure copied from 24.008 MobileL3
-type record MobileIdentityV_BSSGP
-{
-  BIT3                               typeOfIdentity,
-  OddEvenInd_Identity_BSSGP          oddEvenInd_identity
-} with {
-  variant (oddEvenInd_identity) "CROSSTAG
-  (
-    imei,                     typeOfIdentity ='010'B;
-    imsi,                     typeOfIdentity ='001'B;
-    imei_sv,                  typeOfIdentity ='011'B;  
-  )"
-};
-
-type union OddEvenInd_Identity_BSSGP
-{
-  IMSI_MobileIdentityV                     imsi,  
-  IMEI_MobileIdentityV                     imei,     
-  IMEI_SV_MobileIdentityV                  imei_sv
-};
-
-type record IMSI_MobileIdentityV
-{
-  BIT1               oddevenIndicator,       // '1'B or '0'B
-  hexstring          digits  length(5..15),
-  BIT4               fillerDigit  optional   // B'1111, fillerDigit is present
-  // if oddevenIndicator=0
-}
-with
-{
-  variant (fillerDigit) "PRESENCE (oddevenIndicator   = '0'B) ";
-};
-
-type record IMEI_MobileIdentityV
-{
-  BIT1               oddevenIndicator,   // '1'B
-  hexstring          digits  length(15)
-};
-
-type record IMEI_SV_MobileIdentityV
-{
-  BIT1               oddevenIndicator,  // '0'B
-  hexstring          digits length(16),
-  BIT4               fillerDigit    // filler '1111'B
-};
-
-// 11.3.21
-type record MS_Bucket_Size
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- OCT2                    bmax
-} with { 
-  variant "PRESENCE(iEI = '12'O)";
-  variant (lengthIndicator) "LENGTHTO (bmax)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-// 11.3.22
-// Note : structure from 24.008 Mobile L3
-type record MS_Radio_Access_Capability
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- MSRadioAccessCapabilityV_BSSGP  mSRadioAccessCapabilityV_BSSGP
-} with { 
-  variant "PRESENCE(iEI = '13'O)";
-  variant (lengthIndicator) "LENGTHTO (mSRadioAccessCapabilityV_BSSGP)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant /*(ext,lengthIndicator)*/ "FIELDORDER(msb)";
-  variant "PADDING(yes)"
-};
-             
-type record of MSRACapabilityValuesRecord_BSSGP MSRadioAccessCapabilityV_BSSGP
-with { variant "EXTENSION_BIT(reverse)";variant "FIELDORDER(msb)" };
-
-
-type record MSRACapabilityValuesRecord_BSSGP
-{
-  MSRACapabilityValues_BSSGP   mSRACapabilityValues,
-  BIT1                         presenceBitMSRACap
-} with { variant "FIELDORDER(msb)" };
-
-
-type union MSRACapabilityValues_BSSGP
-{
-  MSRACapabilityValuesExclude1111_BSSGP        mSRACapabilityValuesExclude1111,
-  MSRACapabilityValues1111_BSSGP               mSRACapabilityValues1111
-} with { variant "FIELDORDER(msb)" };
-
-
-type record MSRACapabilityValuesExclude1111_BSSGP
-{
-  BIT4                               accessTechnType,
-  AccessCapabilitiesStruct_BSSGP     accessCapabilities
-} with {
-  variant "PRESENCE (
-      accessTechnType = '0000'B,     // GSM P
-      accessTechnType = '0001'B,     // GSM E
-      accessTechnType = '0010'B,     // GSM R
-      accessTechnType = '0011'B,     // GSM 1800
-      accessTechnType = '0100'B,     // GSM190
-      accessTechnType = '0101'B,     // GSM 450
-      accessTechnType = '0110'B,     // GSM480
-      accessTechnType = '0111'B,     // GSM 480
-      accessTechnType = '1000'B,     // GSM 700
-      accessTechnType = '1001'B,     // GSM T 310
-      accessTechnType = '1010'B,     // GSM T 410
-      accessTechnType = '1011'B      // GSM T 900
-  )"
-  variant "FIELDORDER(msb)"
-};
-
-
-// Access Capabilities Struct
-type record AccessCapabilitiesStruct_BSSGP
-{
-  integer                            lengthIndicator,
-  AccessCapabilities_BSSGP           accessCapabilities,
-  // spare_bits "expands to the indicated length",
-  // i.e. 24.008 spec puts no restriction on number
-  // of spare_bits.  The only restriction is that the whole
-  // MS Radio Access Capability  IE is less than 52 octets
-  bitstring                    spare_bits              optional
-} with {
-  variant (lengthIndicator) "FIELDLENGTH(7)";
-  variant (lengthIndicator) "LENGTHTO(accessCapabilities,spare_bits)";
-  variant (lengthIndicator) "UNIT(bits)";
-  variant "FIELDORDER(msb)";
-  variant (lengthIndicator) "BYTEORDER(last)";
-}
-
-
-//Access Capabilities
-type record AccessCapabilities_BSSGP
-{
-  BIT3                         rfPowerCapability,
-  BIT1                         presenceBitA5,
-  A5BITS_BSSGP                 a5bits               optional,
-  BIT1                         esind,
-  BIT1                         psbit,
-  BIT1                         vgcs,
-  BIT1                         vbs,
-  BIT1                         presenceBitMultislot,
-  MultislotCap_BSSGP           multislotcap         optional,
-  AccessCapAdditionsAfterRel97_BSSGP accessCapAdditionsAfterRel97 optional //opt because of V97
-  //Note: AccessCapAdditionsAfterRel97 can include:
-  // Rel99 or
-  // Rel99 + Rel4 or
-  // Rel99 + Rel4 + Rel5 or
-  // Rel99 + Rel4 + Rel5  + Rel6
-} with {
-  variant "FIELDORDER(msb)";
-  variant (a5bits)               "PRESENCE(presenceBitA5 = '1'B)";
-  variant (multislotcap)         "PRESENCE(presenceBitMultislot = '1'B)";
-}
-
-
-type record AccessCapAdditionsAfterRel97_BSSGP
-{
-  AccessCapAdditionsRel99_BSSGP                accessCapAdditionsRel99,
-  AccessCapAdditionsAfterRel99_BSSGP           accessCapAdditionsAfterRel99 optional
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-
-type record AccessCapAdditionsRel99_BSSGP
-{
-  BIT1               presenceBitPskpow,
-  BIT2               pskpowercap                     optional,
-  BIT1               compactIntMeasurCap,
-  BIT1               revisionLevelInd,
-  BIT1               umtsfddRadAccTechCap,
-  BIT1               umtstddRadAccTechCap,
-  BIT1               cdma2kRadAccTechCap
-} with {
-  variant "FIELDORDER(msb)";
-  variant (pskpowercap) "PRESENCE(presenceBitPskpow = '1'B)";
-}
-
-
-type record AccessCapAdditionsAfterRel99_BSSGP
-{
-  AccessCapAdditionsRel4_BSSGP       accessCapAdditionsRel4,
-  AccessCapAdditionsAfterRel4_BSSGP  accessCapAdditionsAfterRel4 optional
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-
-type record AccessCapAdditionsRel4_BSSGP
-{
-  BIT1                    umts128RadAccTechCap,
-  BIT1                    geranFeaturePackage,
-  BIT1                    presenceBitExtendedDTM,
-  ExtendedDTM_BSSGP       extendedDTM                       optional,
-  BIT1                    modulationBasedMultislotClass
-} with {
-  variant "FIELDORDER(msb)";
-  variant (extendedDTM)          "PRESENCE(presenceBitExtendedDTM = '1'B)";
-}
-
-
-type record AccessCapAdditionsAfterRel4_BSSGP
-{
-  AccessCapAdditionsRel5_BSSGP       accessCapAdditionsRel5, 
-  AccessCapAdditionsAfterRel5_BSSGP  accessCapAdditionsAfterRel5 optional
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-
-type record AccessCapAdditionsRel5_BSSGP
-{
-  BIT1                     presenceBitHighMultislotCapability,
-  BIT2                     highMultislotCapability            optional,
-  BIT1                     presenceBitGeranIuModeCapability,
-  GeranIuModeCap_BSSGP     geranIuModeCap                     optional,
-  BIT2                     gMSKMultislotPowerProfile,
-  BIT2                     eightPSKMultislotPowerProfile
-} with {
-  variant "FIELDORDER(msb)";
-  variant (highMultislotCapability)
-  "PRESENCE(presenceBitHighMultislotCapability = '1'B)"
-  variant (geranIuModeCap)"PRESENCE(presenceBitGeranIuModeCapability = '1'B)"
-}
-
-
-type record GeranIuModeCap_BSSGP
-{
-  integer                      lengthIndicator,
-  BIT1                         fLOIuCapability,
-  bitstring                    spare_bits
-  // spare_bits "expands to the indicated length",
-  // i.e. 24.008 spec puts no restriction on number
-  // of spare_bits.  The only restriction is that the whole
-  // MS Radio Access Capability  IE is less than 52 octets
-} with {
-  variant "FIELDORDER(msb)";
-  variant (lengthIndicator) "FIELDLENGTH(4)";
-  variant (lengthIndicator) "LENGTHTO(fLOIuCapability,spare_bits)";
-  variant (lengthIndicator) "UNIT(bits)";
-}
-
-type record AccessCapAdditionsAfterRel5_BSSGP
-{
-  AccessCapAdditionsRel6_BSSGP     accessCapAdditionsRel6,
-  AccessCapAdditionsRel7_BSSGP     accessCapAdditionsAfterRel6 optional  
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsRel6_BSSGP
-{
-  BIT1                              multipleTBFCapability,
-  BIT2                              downlinkAdvancedReceiverPerformance,
-  BIT1                              extendedRLCMACCtrlMsgSegmentationCap,
-  BIT1                              dTMEnhancementsCapability,
-  BIT1                              presenceBitDTMGPRSHighMultiSlotClass,
-  DTMGPRSHighMultiSlotClass_BSSGP   dTMGPRSHighMultiSlotClass optional,
-  BIT1                              pSHandoverCapability
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dTMGPRSHighMultiSlotClass)
-  "PRESENCE(presenceBitDTMGPRSHighMultiSlotClass = '1'B)"
-}
-
-
-type record DTMGPRSHighMultiSlotClass_BSSGP
-{
-  BIT3               dTMGPRSHighMultiSlotClassValue,
-  BIT1               presenceBitDTMEGPRSHighMultiSlotClass,
-  BIT3               dTMEGPRSHighMultiSlotClassValue optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dTMEGPRSHighMultiSlotClassValue)
-  "PRESENCE(presenceBitDTMEGPRSHighMultiSlotClass = '1'B)"
-
-}
-
-
-type record AccessCapAdditionsRel7_BSSGP
-{
-  BIT1                         dTMHandoverCapability,
-  BIT1                         presenceBitDownlinkDualCarrier, 
-  DownlinkDualCarrier_BSSGP    downlinkDualCarrier,
-  BIT1                         flexibleTimeslotAssignment,
-  BIT1                         gANPSHandoverCapability,
-  BIT1                         rLCNonPersistentMode,
-  BIT1                         reducedLatencyEGPRSCapability 
-} with {
-  variant "FIELDORDER(msb)";
-  variant (downlinkDualCarrier)
-  "PRESENCE(presenceBitDownlinkDualCarrier = '1'B)"
-}
-  
-
-type record DownlinkDualCarrier_BSSGP
-{
-  BIT3  multislotCapReductionforDownLinkDualCarrier,
-  BIT1  downlinkDualCarrierforDTMCapability
-} with { variant "FIELDORDER(msb)" };
-
-
-type record  ExtendedDTM_BSSGP
-{
-  BIT2               ExtendedDTM_GPRSMultislot,
-  BIT2               ExtendedDTM_EGPRSMultislot
-} with { variant "FIELDORDER(msb)" };
-
-
-//MultislotCap
-type record  MultislotCap_BSSGP
-{
-  BIT1                                   presenceBitHscsd,
-  BIT5                                   hscsdmultislotclass      optional,
-  BIT1                                   presenceBitGprs,
-  MultislotCap_GPRS_BSSGP                gprsmultislot           optional,
-  BIT1                                   presenceBitSms,
-  MultislotCap_SMS_BSSGP                 multislotCap_SMS        optional,
-  MultislotCapAdditionsAfterRel97_BSSGP  multislotCapAdditionsAfterRel97 optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (hscsdmultislotclass)     "PRESENCE(presenceBitHscsd = '1'B)";
-  variant (gprsmultislot)          "PRESENCE(presenceBitGprs = '1'B)";
-  variant (multislotCap_SMS)       "PRESENCE(presenceBitSms = '1'B)";
-
-}
-
-
-type record MultislotCapAdditionsAfterRel97_BSSGP
-{
-  BIT1                                   presenceBitEcsdmulti,
-  BIT5                                   ecsdmultislotclass      optional,
-  BIT1                                   presenceBitEgprsmulti,
-  MultislotCap_EGPRS_BSSGP               multislotCap_EGPRS      optional,
-  BIT1                                   presenceBitDtmGprsmulti,
-  MultislotCap_dtmgprsmultislotsubclass_BSSGP  
-                            multislotCapdtmgprsmultislotsubclass optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (ecsdmultislotclass)     "PRESENCE(presenceBitEcsdmulti = '1'B)";
-  variant (multislotCap_EGPRS)     "PRESENCE(presenceBitEgprsmulti = '1'B)" ;
-  variant (multislotCapdtmgprsmultislotsubclass)
-  "PRESENCE(presenceBitDtmGprsmulti = '1'B)"
-}
-
-
-type record MultislotCap_GPRS_BSSGP
-{
-  BIT5               gprsmultislotclass,
-  BIT1               gprsextendeddynalloccap
-} with { variant "FIELDORDER(msb)" };
-
-
-type record MultislotCap_SMS_BSSGP
-{
-  BIT4               smsValue,
-  BIT4               smValue
-} with { variant "FIELDORDER(msb)" };
-
-
-type record  MultislotCap_EGPRS_BSSGP
-{
-  BIT5               egprsmultislotclass,
-  BIT1               egprsextendeddynalloccap
-}  with { variant "FIELDORDER(msb)" };
-
-type record MultislotCap_dtmgprsmultislotsubclass_BSSGP
-{
-  BIT2               dtmgprsmultislotsubclass,
-  BIT1               singleSlotDTM,
-  BIT1               presenceBitDTM_EGPRSMultiSlot,
-  BIT2               dTM_EGPRSMultiSlot       optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dTM_EGPRSMultiSlot) "PRESENCE(presenceBitDTM_EGPRSMultiSlot = '1'B)"
-};
-
-
-//A5BITS
-
-type record  A5BITS_BSSGP
-{
-  BIT1       a51 ,
-  BIT1       a52 ,
-  BIT1       a53 ,
-  BIT1       a54 ,
-  BIT1       a55 ,
-  BIT1       a56 ,
-  BIT1       a57
-} with { variant "FIELDORDER(msb)" };
-
-
-type record MSRACapabilityValues1111_BSSGP
-{
-  BIT4               accessTechnType,    //1111
-  integer            lengthIndicator,
-  BIT1               presenceIndicator_AdditionalAccessTechnologiesRepetition,
-  AdditionalAccessTechnologiesRepetition_BSSGP // coded '1'B if list is not empty
-                  additionalAccessTechnologiesRepetition           optional,
-  bitstring          spare_bits
-} with {
-  variant "PRESENCE (accessTechnType = '1111'B)";
-  variant "FIELDORDER(msb)";
-  variant (lengthIndicator) "FIELDLENGTH(7)";
-  variant (lengthIndicator) "UNIT(bits)";
-  variant (lengthIndicator) "BYTEORDER(last)";
-  variant (additionalAccessTechnologiesRepetition)
-  "PRESENCE(presenceIndicator_AdditionalAccessTechnologiesRepetition = '1'B)";
-  variant (lengthIndicator)
-  "LENGTHTO(presenceIndicator_AdditionalAccessTechnologiesRepetition,
-             additionalAccessTechnologiesRepetition,spare_bits)";
-
-};
-
-type record of AdditionalAccessTechnologiesRecord_BSSGP
-                               AdditionalAccessTechnologiesRepetition_BSSGP
-with { variant "EXTENSION_BIT(reverse)" };
-
-
-type record AdditionalAccessTechnologiesRecord_BSSGP
-{
-  AdditionalAccessTechnologies_BSSGP additionalAccessTechnologies,
-  BIT1                               extensionBit
-} with { variant "FIELDORDER(msb)" };
-
-
-type record  AdditionalAccessTechnologies_BSSGP
-{
-  BIT4               accessTechnType,
-  BIT3               gMSKPowerClass,
-  BIT2               psk8PowerClass
-} with { variant "FIELDORDER(msb)" };
-
-
-
-// 11.3.23
-type record OMC_Id_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT20                  oMC_Identity
-} with { 
-  variant "PRESENCE(iEI = '14'O)";
-  variant (lengthIndicator) "LENGTHTO (oMC_Identity)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
- 
-// 11.3.24 
-//NOTE: lengthIndicator-short form will be converted to 
-// long form if needed during encoding
-type record PDU_in_Error
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- octetstring            erroneous_BSSGP_PDU
-} with { 
-  variant "PRESENCE(iEI = '15'O)";
-  variant (lengthIndicator) "LENGTHTO (erroneous_BSSGP_PDU)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.25
-type record  PDU_Lifetime
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT2                   delay_Value
-} with { 
-  variant "PRESENCE(iEI = '16'O)";
-  variant (lengthIndicator) "LENGTHTO (delay_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.27
-type record Priority_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   pvi,  
-  BIT1                   qa, 
-  BIT4                   priority_Level, //(1..14) 0: spare, 15: not used  
-  BIT1                   pci, 
-  BIT1                   spare        
-} with { 
-  variant "PRESENCE(iEI = '17'O)";
-  variant (lengthIndicator) "LENGTHTO (pvi,qa,priority_Level,pci,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.28
-type record QoS_Profile
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT2                   peak_Bit_Rate,
- BIT3                   precedence,
- BIT1                   a_bit,
- BIT1                   t_bit,
- BIT1                   c_r_bit,
- BIT2                   peakBitRateGranularity
-} with {  
-  variant "PRESENCE(iEI = '18'O)";
-  variant (lengthIndicator) "LENGTHTO (peak_Bit_Rate,precedence,
-                                       a_bit,t_bit,c_r_bit,peakBitRateGranularity)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-       
-       
-type record QoS_Profile_V
-{ 
- OCT2                   peak_Bit_Rate,
- BIT3                   precedence,
- BIT1                   a_bit,
- BIT1                   t_bit,
- BIT1                   c_r_bit,
- BIT2                   peakBitRateGranularity
-}
-                       
-// 11.3.29
-type record Radio_Cause
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   radio_Cause_Value
-} with { 
-  variant "PRESENCE(iEI = '19'O)";
-  variant (lengthIndicator) "LENGTHTO (radio_Cause_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.30
-type record  RA_Cap_UPD_CAUSE
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   rA_CAP_UPD_Cause_value
-} with { 
-  variant "PRESENCE(iEI = '1A'O)";
-  variant (lengthIndicator) "LENGTHTO (rA_CAP_UPD_Cause_value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.31
-type record  Routeing_Area
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2,
- OCT2                   lac,    
- OCT1                   rac    
-} with {
-  variant "PRESENCE(iEI = '1B'O)";
-  variant (lengthIndicator) "LENGTHTO (mccDigit1,mccDigit2,mccDigit3,mncDigit3,
-         mncDigit1,mncDigit2,lac,rac)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.32
-type record R_default_MS
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT2                   r_default_MS_value
-} with { 
-  variant "PRESENCE(iEI = '1C'O)";
-  variant (lengthIndicator) "LENGTHTO (r_default_MS_value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.33
-type record Suspend_Reference_Number
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- OCT1                    suspend_Reference_Number_value
-} with { 
-  variant "PRESENCE(iEI = '1D'O)";
-  variant (lengthIndicator) "LENGTHTO (suspend_Reference_Number_value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-// 11.3.34
-type record Tag
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   unstructured_Value
-} with { 
-  variant "PRESENCE(iEI = '1E'O)";
-  variant (lengthIndicator) "LENGTHTO (unstructured_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.35        
-type record TLLI_BSSGP
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT4                   tLLI_Value
-} with { 
-  variant "PRESENCE(iEI = '1F'O)";
-  variant (lengthIndicator) "LENGTHTO (tLLI_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";        
-};
-
-// 11.3.36
-// Note : reference in spec is to "TMSI/P-TMSI information element in 
-// 3GPP TS 24.008", however this specification has Mobile Identity 
-// IE which includes TMSI/P-TMSI
-type record TMSI_BSSGP
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT4                   tMSI_Value
-} with { 
-  variant "PRESENCE(iEI = '20'O)";
-  variant (lengthIndicator) "LENGTHTO (tMSI_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-// 11.3.37
-type record Trace_Reference_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT2                   trace_Reference
-} with { 
-  variant "PRESENCE(iEI = '21'O)";
-  variant (lengthIndicator) "LENGTHTO (trace_Reference)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.38
-type record Trace_Type_BSSGP
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   equipment_Trace
-} with { 
-  variant "PRESENCE(iEI = '22'O)";
-  variant (lengthIndicator) "LENGTHTO (equipment_Trace)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-
-};
-
-
-// 11.3.39
-type record TransactionId_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT2                   transaction_Id
-} with { 
-  variant "PRESENCE(iEI = '23'O)";
-  variant (lengthIndicator) "LENGTHTO (transaction_Id)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.40
-type record Trigger_Id_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT20                  entity_Identity
-} with { 
-  variant "PRESENCE(iEI = '24'O)";
-  variant (lengthIndicator) "LENGTHTO (entity_Identity)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.41
-type record Number_of_octets_affected
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT3                   number_of_octets_transfered_or_deleted 
-                              // could be changed to integer input if simpler
-} with { 
-  variant "PRESENCE(iEI = '25'O)";
-   variant (lengthIndicator) 
-        "LENGTHTO (number_of_octets_transfered_or_deleted)";        
-   variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                        length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";                
-};
-
-
-// 11.3.42
-type record PFI
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- BIT7                   pFI_Value,
- BIT1                   spare  //  '0'B according to 10.5.6.11 of 24.008
-
-} with { 
-  variant "PRESENCE(iEI = '28'O)";
-   variant (lengthIndicator) 
-        "LENGTHTO (pFI_Value,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";        
-};
-
-
-// 11.3.43
-// Note : structure from 24.008
-type record ABQP
-{
- OCT1                iEI,
- BIT1                ext,
- LIN2_2a             lengthIndicator,
- BIT3                reliabilityClass,
- BIT3                delayClass,
- BIT2                spare1,  // '00'B
- BIT3                precedenceClass,
- BIT1                spare2,
- BIT4                peakThroughput,
- BIT5                meanThroughput,
- BIT3                spare3,
- BIT3                deliverErroneusSDU optional, //opt because of V97
- BIT2                deliveryOrder optional, //opt because of V97
- BIT3                trafficClass optional, //opt because of V97
- OCT1                maxSDUSize optional, //opt because of V97
- OCT1                maxBitrateUplink optional, //opt because of V97
- OCT1                maxBitrateDownlink optional, //opt because of V97
- BIT4                sduErrorRatio optional, //opt because of V97
- BIT4                residualBER optional, //opt because of V97
- BIT2                trafficHandlingPriority optional, //opt because of V97
- BIT6                transferDelay optional, //opt because of V97
- OCT1                guaranteedBitRateUplink optional, //opt because of V97
- OCT1                guaranteedBitRateDownlink optional, //opt because of V97
- BIT4                sourceStatisticsDescriptor optional, //opt because of V97
- BIT1                signallingIndication optional, //opt because of V97
- BIT3                spare4 optional, //opt because of V97
- OCT1                maxBitRateDownlinkExtended optional,
- OCT1                guaranteedBitRateDownlinkExtended optional,
- OCT1                maxBitrateUplinkExtended           optional, //opt because of V97
- OCT1                guaranteedBitRateUplinkExtended    optional  //opt because of V97
-} with { 
-  variant "PRESENCE(iEI = '3A'O)";
-   variant (lengthIndicator) 
-        "LENGTHTO (reliabilityClass,delayClass,spare1,precedenceClass,
-               spare2,peakThroughput,
-         meanThroughput,spare3
-         ,deliverErroneusSDU,deliveryOrder,trafficClass,maxSDUSize,
-         maxBitrateUplink,maxBitrateDownlink,sduErrorRatio,residualBER,
-     trafficHandlingPriority,transferDelay,guaranteedBitRateUplink,
-     guaranteedBitRateDownlink,sourceStatisticsDescriptor,
-     signallingIndication,spare4,maxBitRateDownlinkExtended,
-     guaranteedBitRateDownlinkExtended,maxBitrateUplinkExtended,
-     guaranteedBitRateUplinkExtended)";        
-
-   variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,         ext = '0'B;)";  
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
- };
-
-
-// 11.3.44
-type record GPRS_Timer
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- BIT5                   timer_Value,
- BIT3                   unit_Value
-} with { 
-  variant "PRESENCE(iEI = '29'O)";
-   variant (lengthIndicator) 
-        "LENGTHTO (timer_Value,unit_Value)";
-   variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,         ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-// 11.3.45
-type record Feature_bitmap
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- BIT1                   pFC,
- BIT1                   cBL,
- BIT1                   iNR,
- BIT1                   lCS,
- BIT1                   rIM,
- BIT1                   pFC_FC,
- BIT1                   enhancedRadioStatus,
- BIT1                   mBMS
-} with { 
-  variant "PRESENCE(iEI = '3B'O)";
-  variant (lengthIndicator) "LENGTHTO (pFC,cBL,iNR,lCS,rIM,pFC_FC,
-                                             enhancedRadioStatus,mBMS)";
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                             length2,        ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.46
-type record Bucket_Full_Ratio
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   rate_of_the_Bucket 
-                        // could be changed to integer input if simpler
-} with { 
-  variant "PRESENCE(iEI = '3C'O)";
-   variant (lengthIndicator) "LENGTHTO (rate_of_the_Bucket)";
-   variant (lengthIndicator) "CROSSTAG( length1,       ext = '1'B;
-                                              length2,       ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-        }
-
-
-// 11.3.47
-type record Service_UTRAN_CCO
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- BIT3                   service_UTRAN_CCO_Value,
- BIT2					service_E_UTRAN_CCO_Value,
- BIT3                   spare
-} with { 
-  variant "PRESENCE(iEI = '3D'O)";
-  variant (lengthIndicator) "LENGTHTO (service_UTRAN_CCO_Value,service_E_UTRAN_CCO_Value,spare)";  
-   variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// new IE for Wendy Xiang and Freeman Feng
-type record Service_Class_Indicator {
-  OCT1                    iEI,
-  BIT1                    ext,
-  LIN2_2a                 lengthIndicator,
-  OCT1                    serviceClassIndicator
-} with { 
-  variant "PRESENCE(iEI = '99'O)";
-  variant (lengthIndicator) "LENGTHTO (serviceClassIndicator)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-  length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.48
-type record NSEI_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT2                   nSEI 
-} with { 
-  variant "PRESENCE(iEI = '3E'O)";
-  variant (lengthIndicator) "LENGTHTO (nSEI)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.49
-type record RRLP_APDU_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            rRLP_Message
-} with { 
-  variant "PRESENCE(iEI = '3F'O)";
-  variant (lengthIndicator) "LENGTHTO (rRLP_Message)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  //variant "PADDING(yes)";
-}
-
-
-// 11.3.50   
-// 24.008 -> 49.031
-type record LCS_QoS_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,  
-  BIT1                   vert,
-  BIT1                   vel,
-  BIT6                   spare1,  
-  BIT7                   horizontal_Accuracy,
-  BIT1                   hA_Indicator,         // 1: is specified  
-  BIT7                   vertical_Accuracy,
-  BIT1                   vA_Indicator,         // 1: is specified  
-  BIT6                   spare2,
-  BIT2                   response_Time_Category
-} with { 
-  variant "PRESENCE(iEI = '40'O)";
-  variant (lengthIndicator) "LENGTHTO (vert,vel,spare1,horizontal_Accuracy,hA_Indicator,vertical_Accuracy,vA_Indicator,spare2,response_Time_Category)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                         length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.51
-// 49.031
-type record LCS_Client_Type_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT4                   client_Subtype,
-  BIT4                   client_Category
-} with { 
-  variant "PRESENCE(iEI = '41'O)";
-  variant (lengthIndicator) "LENGTHTO (client_Subtype,client_Category)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.52
-// 49.031
-type record Requested_GPS_Assistance_Data_BSSGP
-{
-  OCT1                                  iEI,
-  BIT1                                  ext,
-  LIN2_2a                               lengthIndicator,
-  Requested_GPS_Assistance_Data_Value   requested_GPS_Assistance_Data   
-} with { 
-  variant "PRESENCE(iEI = '42'O)";
-  variant (lengthIndicator) "LENGTHTO (requested_GPS_Assistance_Data)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record Requested_GPS_Assistance_Data_Value
-{
- OCT1                    bits_H_to_A,
- OCT1                    bits_P_to_I,
- SatelliteRelatedData    satelliteRelatedData
-}
-
-type record SatelliteRelatedData
-{
-  BIT6                       spare,
-  BIT10                      gPS_Week,    
-  OCT1                       gPS_Toe,
-  BIT4                       t_Toe_Limit,
-  integer                    nSAT,
-  SatID_and_IODE_List        satID_and_IODE_List              
-} with { variant(nSAT) "FIELDLENGTH(4)";
-  variant(nSAT) "LENGTHTO(satID_and_IODE_List)";
-  variant(nSAT) "UNIT(elements)";
-}
-
-type record of SatID_and_IODE SatID_and_IODE_List;
-
-type record SatID_and_IODE
-{
-  BIT6      satID,
-  BIT2      spare,
-  OCT1      iODE
-}
-
-// 11.3.53
-// 49.031
-type record Location_Type_BSSGP
-{
-  OCT1                   iEI,                 
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   location_Information,
-  OCT1                   positioning_Method optional
-} with { 
-  variant "PRESENCE(iEI = '43'O)";
-  variant (lengthIndicator) "LENGTHTO (location_Information,positioning_Method)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.54
-// 48.008 -> 23.03
-type record Location_Estimate_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            location   //  encoded location information
-} with { 
-  variant "PRESENCE(iEI = '44'O)";
-  variant (lengthIndicator) "LENGTHTO (location)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.55
-// 49.031
-type record Positioning_Data_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  PositioningDataValue   positioningDataValue  //  encoded location data
-} with { 
-  variant "PRESENCE(iEI = '45'O)";
-  variant (lengthIndicator) "LENGTHTO (positioningDataValue)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record PositioningDataValue
-{
- BIT4                     positioningDataDiscriminator,
- BIT4                     spare,
- PositioningMethod_List   positioningMethod_List 
-}
-
-type record of PositioningMethodValue PositioningMethod_List;
-
-type record PositioningMethodValue
-{
-  BIT3     usage,
-  BIT5     positioningMethod
-}
-
-// 11.3.56
-type record Deciphering_Keys_BSSGP
-{
-  OCT1                            iEI,
-  BIT1                            ext,
-  LIN2_2a                         lengthIndicator,
-  DecipheringKeysValue            decipheringKeysValue   //  encoded deciphering keys data
-} with { 
-  variant "PRESENCE(iEI = '46'O)";
-  variant (lengthIndicator) "LENGTHTO (decipheringKeysValue)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record DecipheringKeysValue
-{
- BIT1                     cipheringkeyFlag,
- BIT7                     spare,
- OCT7                     currentDecipheringKeyValue,
- OCT7                     nextDecipheringKeyValue
-}
- 
-// 11.3.57
-// 49.031
-type record LCS_Priority_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   priority_Value   // 0: highest, other: normal
-} with { 
-  variant "PRESENCE(iEI = '47'O)";
-  variant (lengthIndicator) "LENGTHTO (priority_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.58
-// 49.031
-type record LCS_Cause_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   cause_Value,
-  OCT1                   diagnostic_Value optional
-} with { 
-  variant "PRESENCE(iEI = '48'O)";
-  variant (lengthIndicator) "LENGTHTO (cause_Value,diagnostic_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.59
-// 24.008
-type record LCS_Capability_BSSGP
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   gPS_C,
-  BIT1                   gPS_B,
-  BIT1                   gPS_A,
-  BIT1                   oTD_B,
-  BIT1                   oTD_A,
-  BIT3                   spare
-} with { 
-  variant "PRESENCE(iEI = '49'O)";
-  variant (lengthIndicator) "LENGTHTO (gPS_C,gPS_B,gPS_A,oTD_B,oTD_A,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.60
-type record RRLP_Flags_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   flag1,
-  BIT7                   spare
-} with { 
-  variant "PRESENCE(iEI = '4A'O)";
-  variant (lengthIndicator) "LENGTHTO (flag1,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-//11.3.61
-type record RIM_Application_Identity
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   rIMApplicationIdentity
-} with { 
-  variant "PRESENCE(iEI = '4B'O)";
-   variant (lengthIndicator) "LENGTHTO (rIMApplicationIdentity)";        
-   variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-//11.3.62
-type record RIM_Sequence_Number
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT4                   rIMSequenceNumber
-} with { 
-  variant "PRESENCE(iEI = '4C'O)";
-   variant (lengthIndicator) "LENGTHTO (rIMSequenceNumber)";        
-   variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,         ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-// Table 11.3.62a.1
-type record RAN_Information_Request_RIM_Container
-{
-OCT1                         iEI,
-BIT1                         ext,
-LIN2_2a                      lengthIndicator,
-RIM_Application_Identity     rIM_Application_Identity,
-RIM_Sequence_Number          rIM_Sequence_Number,
-RIM_PDU_Indications          rIM_PDU_Indications,
-RIM_Protocol_Version_Number  rIM_Protocol_Version_Number optional,
-RAN_Information_Request_Application_Container  application_Container optional,
-SON_Transfer_Application_Identity_TLV  sON_Transfer_Application_Identity_TLV optional
-} with { 
-  variant "PRESENCE(iEI = '57'O)";
-  variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-           rIM_Sequence_Number,rIM_PDU_Indications,rIM_Protocol_Version_Number,
-           application_Container,sON_Transfer_Application_Identity_TLV)";        
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,        ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)"; 
-  variant (application_Container) 
-     "PRESENCE
-        (rIM_Application_Identity.rIMApplicationIdentity = '01'O,
-         rIM_Application_Identity.rIMApplicationIdentity = '02'O,
-         rIM_Application_Identity.rIMApplicationIdentity = '03'O)";                           
-   variant (application_Container) 
-     "CROSSTAG 
-         (nacc,rIM_Application_Identity.rIMApplicationIdentity = '01'O;
-          si3,rIM_Application_Identity.rIMApplicationIdentity = '02'O;
-          mBMS_data_channel,rIM_Application_Identity.rIMApplicationIdentity = '03'O;)"       
-};
-
-
-// Table 11.3.62a.2
-type record RAN_Information_RIM_Container
-{
-OCT1                         iEI,
-BIT1                         ext,
-LIN2_2a                      lengthIndicator,  
-RIM_Application_Identity     rIM_Application_Identity,
-RIM_Sequence_Number          rIM_Sequence_Number,
-RIM_PDU_Indications          rIM_PDU_Indications,
-RIM_Protocol_Version_Number  rIM_Protocol_Version_Number optional,
-ApplContainer_or_ApplErrContainer  applContainer_or_ApplErrContainer optional,
-SON_Transfer_Application_Identity_TLV  sON_Transfer_Application_Identity optional
-}  with { 
-  variant "PRESENCE(iEI = '58'O)";
-      variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-           rIM_Sequence_Number,rIM_PDU_Indications,rIM_Protocol_Version_Number,
-           applContainer_or_ApplErrContainer,sON_Transfer_Application_Identity)";        
-      variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                           length2,        ext = '0'B;)";
-      variant (ext,lengthIndicator) "FIELDORDER(msb)";
-      variant (applContainer_or_ApplErrContainer)
-       "PRESENCE
-           (rIM_Application_Identity.rIMApplicationIdentity = '01'O,
-            rIM_Application_Identity.rIMApplicationIdentity = '02'O,
-            rIM_Application_Identity.rIMApplicationIdentity = '03'O)";                
-      variant (applContainer_or_ApplErrContainer) 
-       "CROSSTAG
-            (nacc,rIM_Application_Identity.rIMApplicationIdentity = '01'O;
-             si3,rIM_Application_Identity.rIMApplicationIdentity = '02'O;
-             mBMS_data_channel,rIM_Application_Identity.rIMApplicationIdentity = '03'O;)" 
-};         
-
-
-type union ApplContainer_or_ApplErrContainer
-{
-  ApplContainer_or_ApplErrContainer_NACC nacc,
-  ApplContainer_or_ApplErrContainer_SI3 si3,
-  ApplContainer_or_ApplErrContainer_MBMS_data_channel mBMS_data_channel 
-}
-
-type union ApplContainer_or_ApplErrContainer_NACC
-{
- RAN_Information_Application_Container_NACC   application_Container,
- Application_Error_Container_NACC             application_Error_Container
-};
-
-type union ApplContainer_or_ApplErrContainer_SI3
-{
- RAN_Information_Application_Container_SI3   application_Container,
- Application_Error_Container_SI3             application_Error_Container
-};
-
-type union ApplContainer_or_ApplErrContainer_MBMS_data_channel
-{
- RAN_Information_Application_Container_MBMS_data_channel   application_Container,
- Application_Error_Container_MBMS_data_channel             application_Error_Container
-};
-
-// Table 11.3.62a.3
-type record RAN_Information_Ack_RIM_Container
-{
-OCT1                         iEI,
-BIT1                         ext,
-LIN2_2a                      lengthIndicator,  
-RIM_Application_Identity     rIM_Application_Identity,
-RIM_Sequence_Number          rIM_Sequence_Number,
-RIM_Protocol_Version_Number  rIM_Protocol_Version_Number optional,
-SON_Transfer_Application_Identity_TLV  sON_Transfer_Application_Identity optional
-} with { 
-  variant "PRESENCE(iEI = '5A'O)";
-  variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-          rIM_Sequence_Number,rIM_Protocol_Version_Number,sON_Transfer_Application_Identity)";        
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,        ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-// Table 11.3.62a.4
-type record RAN_Information_Error_RIM_Container
-{
-OCT1                         iEI,
-BIT1                         ext,
-LIN2_2a                      lengthIndicator,  
-RIM_Application_Identity     rIM_Application_Identity,
-Cause_BSSGP                  rIM_cause,
-RIM_Protocol_Version_Number  rIM_Protocol_Version_Number optional,
-PDU_in_Error                 pDU_in_Error,
-SON_Transfer_Application_Identity_TLV  sON_Transfer_Application_Identity optional
-} with { 
-  variant "PRESENCE(iEI = '5B'O)";
-  variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-         rIM_cause,rIM_Protocol_Version_Number,pDU_in_Error,sON_Transfer_Application_Identity)";        
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,        ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-// Table 11.3.62a.5
-type record RAN_Information_Application_Error_RIM_Container
-{
-OCT1                         iEI,
-BIT1                         ext,
-LIN2_2a                      lengthIndicator,    
-RIM_Application_Identity     rIM_Application_Identity,
-RIM_Sequence_Number          rIM_Sequence_Number,
-RIM_PDU_Indications          rIM_PDU_Indications,
-RIM_Protocol_Version_Number  rIM_Protocol_Version_Number optional,
-Application_Error_Container  application_Error_Container,
-SON_Transfer_Application_Identity_TLV  sON_Transfer_Application_Identity optional
-} with { 
-  variant "PRESENCE(iEI = '59'O)";
-  variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-    rIM_Sequence_Number,rIM_PDU_Indications,rIM_Protocol_Version_Number,  
-    application_Error_Container,sON_Transfer_Application_Identity)";        
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,        ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  variant (application_Error_Container)
-   "CROSSTAG 
-      (nacc,rIM_Application_Identity.rIMApplicationIdentity = '01'O;
-       si3,rIM_Application_Identity.rIMApplicationIdentity = '02'O;
-       mBMS_data_channel,rIM_Application_Identity.rIMApplicationIdentity = '03'O;)" 
-};
-
-
-// 11.3.63.1
-type union RAN_Information_Request_Application_Container
-{
-RAN_Information_Request_Application_Container_NACC nacc,
-RAN_Information_Request_Application_Container_SI3 si3,  
-RAN_Information_Request_Application_Container_MBMS_data_channel mBMS_data_channel
-}
-
-
-//Table 11.3.63.1.1
-type record RAN_Information_Request_Application_Container_NACC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- Cell_Identifier        reporting_Cell_Identifier
-} with { 
-  variant "PRESENCE(iEI = '4D'O)";
-  variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                      length2,          ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-//Table 11.3.63.1.2
-type record RAN_Information_Request_Application_Container_SI3
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- Cell_Identifier        reporting_Cell_Identifier
-} with { 
-  variant "PRESENCE(iEI = '4D'O)";
-   variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-   variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,          ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-//Table 11.3.63.1.3
-type record RAN_Information_Request_Application_Container_MBMS_data_channel
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- Cell_Identifier        reporting_Cell_Identifier
-} with { 
-  variant "PRESENCE(iEI = '4D'O)";
-  variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//11.3.63.1.4
-type record RAN_Information_Request_Application_Container_SON_transfer
-{
-  OCT1                  iEI,
-  BIT1                  ext,
-  LIN2_2a               lengthIndicator,
-  Cell_Identifier       reporting_Cell_Identifier,
-  OCTN                  sON_Transfer_Request_Container
-} with { 
-  variant "PRESENCE(iEI = '4D'O)";
-  variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier,sON_Transfer_Request_Container)";     
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//11.3.63.1.5
-type record RAN_Information_Request_Application_Container_UTRA_SI
-{
-  OCT1                  iEI,
-  BIT1                  ext,
-  LIN2_2a               lengthIndicator,
-  Cell_Identifier       reporting_Cell_Identifier
-} with { 
-  variant "PRESENCE(iEI = '4D'O)";
-  variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//Table 11.3.63.2.1
-type record RAN_Information_Application_Container_NACC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- Cell_Identifier        reporting_Cell_Identifier,
- BIT1                   typeBit,
- BIT7                   number_of_SI_PSI,
- octetstring            sI_PSI
-} with { 
-  variant "PRESENCE(iEI = '4E'O)";
-  variant (lengthIndicator) 
-    "LENGTHTO (reporting_Cell_Identifier,typeBit,number_of_SI_PSI,sI_PSI)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};  
-
-//Table 11.3.63.2.2
-type record RAN_Information_Application_Container_SI3
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- Cell_Identifier        reporting_Cell_Identifier,
- SI3                    sI3
-} with { 
-  variant "PRESENCE(iEI = '4E'O)";
-  variant (lengthIndicator) 
-    "LENGTHTO (reporting_Cell_Identifier,sI3)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}; 
-
-//44.018 9.1.35
-type record SI3
-{
- OCT1                              sI3MessageType,    //'1B'O
- OCT2                              cellIdentity,               //10.5.1.1 -> 24.008 
- LocationAreaIdentification        locationAreaIdentification, //10.5.1.3 -> 24.008
- ControlChannelDescription         controlChannelDescription,  //10.5.2.11
- CellOptions                       cellOptions,                //10.5.2.3
- CellSelectionParameters           cellSelectionParameters,    //10.5.2.4
- RACHControlParameters             rACHControlParameters,      //10.5.2.29
- OCT4                              sI3RestOctets               //10.5.2.34, bit encoded
-}
-
-type record LocationAreaIdentification
-{
-  HEX1               mccDigit1,
-  HEX1               mccDigit2,
-  HEX1               mccDigit3,
-  HEX1               mncDigit3,
-  HEX1               mncDigit1,
-  HEX1               mncDigit2,
-  OCT2               lac
-}
-
-type record ControlChannelDescription
-{
- BIT3          cCCH_Conf,
- BIT3          bS_AG_BLKS_RES,
- BIT1          aTT,
- BIT1          mSCR,
- BIT3          bS_PA_MFRMS,
- BIT2          spare1,   //'00'B
- BIT2          cBQ3,
- BIT1          spare2,  //'0'B
- OCT1          t3212
-}
-
-type record CellOptions
-{
- BIT4          radioLinkTimeout,
- BIT2          dTX1,
- BIT1          pWRC,
- BIT1          dtx2
-}
-
-type record CellSelectionParameters
-{
- BIT5          mS_TXPWR_MAX_CCH,
- BIT3          cellReselectHysterisis,
- BIT6          rXLEV_Access_Min,
- BIT1          nECI,
- BIT1          aCS
-}
-
-type record RACHControlParameters 
-{
- BIT1          rE,
- BIT1          cellBarrAccess,
- BIT4          tX_Integer,
- BIT2          maxRetrans,
- OCT1          aC_15_to_8,
- OCT1          aC_7_to_0    
-}
-
-//Table 11.3.63.2.3
-type record RAN_Information_Application_Container_MBMS_data_channel
-{
- OCT1                      iEI,
- BIT1                      ext,
- LIN2_2a                   lengthIndicator,
- Cell_Identifier           reporting_Cell_Identifier,
- octetstring               mBMS_data_channel_report  //bit encoded
-} with { 
-  variant "PRESENCE(iEI = '4E'O)";
-  variant (lengthIndicator) 
-    "LENGTHTO (reporting_Cell_Identifier,mBMS_data_channel_report)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//11.3.63.2.4
-type record RAN_Information_Application_Container_SON_transfer
-{
-  OCT1                     iEI,
-  BIT1                     ext,
-  LIN2_2a                  lengthIndicator,
-  BIT4                     rAT_Discriminator,
-  BIT4                     spare,
-  Cell_Identifier          reporting_Cell_Identifier,
-  OCTN                     sON_Transfer_Response_Container
-} with { 
-  variant "PRESENCE(iEI = '4E'O)";
-  variant (lengthIndicator) 
-    "LENGTHTO (rAT_Discriminator,spare,reporting_Cell_Identifier,sON_Transfer_Response_Container)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//11.3.63.2.5
-type record RAN_Information_Application_Container_UTRA_SI
-{
-  OCT1                     iEI,
-  BIT1                     ext,
-  LIN2_2a                  lengthIndicator,
-  Cell_Identifier          reporting_Cell_Identifier,
-  OCTN                     uTRA_SI_Container
-} with { 
-  variant "PRESENCE(iEI = '4E'O)";
-  variant (lengthIndicator) 
-    "LENGTHTO (reporting_Cell_Identifier,uTRA_SI_Container)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-// 11.3.64
-type union Application_Error_Container
-{
- Application_Error_Container_NACC               nacc,
- Application_Error_Container_SI3                si3,
- Application_Error_Container_MBMS_data_channel  mBMS_data_channel 
-} 
-      
-//11.3.64.1 
-type record Application_Error_Container_NACC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   nACC_cause,
- Application_Container_IE_NACC  erroneousApplicationContainer
-} with { 
-  variant "PRESENCE(iEI = '56'O)";
-  variant (lengthIndicator)
-    "LENGTHTO (nACC_cause,erroneousApplicationContainer)"; 
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
- variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-       
-type union Application_Container_IE_NACC
-{
-  RAN_Information_Request_Application_Container_NACC 
-                        rAN_Information_Request_Application_Container,
-            
-  RAN_Information_Application_Container_NACC    
-                        rAN_Information_Application_Container
-};
-     
-//11.3.64.2 
-type record Application_Error_Container_SI3
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   sI3_cause,
- Application_Container_IE_SI3  erroneousApplicationContainer
-} with { 
-  variant "PRESENCE(iEI = '56'O)";
-  variant (lengthIndicator)
-    "LENGTHTO (sI3_cause,erroneousApplicationContainer)"; 
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
- variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};     
-
-type union Application_Container_IE_SI3
-{
-  RAN_Information_Request_Application_Container_SI3 
-                        rAN_Information_Request_Application_Container,
-            
-  RAN_Information_Application_Container_SI3    
-                        rAN_Information_Application_Container
-};
-
-
-//11.3.64.3 
-type record Application_Error_Container_MBMS_data_channel
-{
- OCT1                                        iEI,
- BIT1                                        ext,
- LIN2_2a                                     lengthIndicator,
- OCT1                                        mBMS_data_channel_cause,
- Application_Container_IE_MBMS_data_channel  erroneousApplicationContainer
-} with { 
-  variant "PRESENCE(iEI = '56'O)";
-  variant (lengthIndicator)
-    "LENGTHTO (mBMS_data_channel_cause,erroneousApplicationContainer)"; 
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
- variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};     
-
-type union Application_Container_IE_MBMS_data_channel
-{
-  RAN_Information_Request_Application_Container_MBMS_data_channel 
-                        rAN_Information_Request_Application_Container,
-            
-  RAN_Information_Application_Container_MBMS_data_channel    
-                        rAN_Information_Application_Container
-};
-
-//11.3.64.4
-type record Application_Error_Container_SON_transfer
-{
- OCT1                                        iEI,
- BIT1                                        ext,
- LIN2_2a                                     lengthIndicator,
- OCT1                                        sON_transfer_cause,
- Application_Container_IE_SON_transfer       erroneousApplicationContainer
-};
-
-type union Application_Container_IE_SON_transfer
-{
-  RAN_Information_Request_Application_Container_SON_transfer
-                        rAN_Information_Request_Application_Container,
-  RAN_Information_Application_Container_SON_transfer
-                        rAN_Information_Application_Container
-};
-
-//11.3.64.5
-type record Application_Error_Container_UTRA_SI
-{
- OCT1                                        iEI,
- BIT1                                        ext,
- LIN2_2a                                     lengthIndicator,
- OCT1                                        uTRA_SI_cause,
- Application_Container_IE_UTRA_SI            erroneousApplicationContainer
-};
-
-type union Application_Container_IE_UTRA_SI
-{
-  RAN_Information_Request_Application_Container_UTRA_SI
-                        rAN_Information_Request_Application_Container,
-  RAN_Information_Application_Container_UTRA_SI
-                        rAN_Information_Application_Container
-};
-
-//11.3.65
-type record RIM_PDU_Indications
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- BIT1                   ack,
- BIT3                   pDU_Type_Extension,
- BIT4                   reserved
-} with { 
-  variant "PRESENCE(iEI = '4F'O)";
-  variant (lengthIndicator) "LENGTHTO (ack,pDU_Type_Extension,reserved)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-
-//11.3.67
-type record RIM_Protocol_Version_Number
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- OCT1                   rIMProtocolVersionNumber
-} with {
-   variant "PRESENCE(iEI = '55'O)";
-   variant (lengthIndicator) "LENGTHTO (rIMProtocolVersionNumber)";   
-   variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                              length2,        ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-// 11.3.68
-type record PFC_flow_control_parameters
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- integer                number_of_PFC (0..11),
- PFCs                   pFCs
-} with {
-  variant "PRESENCE(iEI = '52'O)";
-  variant (lengthIndicator) "LENGTHTO (number_of_PFC,pFCs)"; 
-  variant (number_of_PFC) "LENGTHTO (pFCs)";
-  variant (number_of_PFC) "UNIT(elements)"
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-type record length(0..11) of  PFC PFCs;
-
-type record PFC
-{
-BIT7                    pFI_Value,
-BIT1                    spare,  //  '0'B according to 10.5.6.11 of 24.008
-OCT2                    bmax_PFC,
-OCT2                    r_PFC,
-OCT1                    b_PFC
-};
-
-// 11.3.69
-type record Global_CN_Id_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  Global_CN_Id_Value     global_CN_Id   //  encoded Global CN-Id
-} with { 
-  variant "PRESENCE(iEI = '53'O)";
-  variant (lengthIndicator) "LENGTHTO (global_CN_Id)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record Global_CN_Id_Value
-{
- HEX1                    mccDigit1,
- HEX1                    mccDigit2,
- HEX1                    mccDigit3,
- HEX1                    mncDigit3,
- HEX1                    mncDigit1,
- HEX1                    mncDigit2, 
- OCT2                    cN_Id
-}
-
-
-// 11.3.70
-type record RIM_Routing_Information
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- HEX1                   rIMRoutingAddressDiscriminator,
- HEX1                   spare,
- RIM_Routing_Address    rIM_Routing_Address 
-}  with { 
-  variant "PRESENCE(iEI = '54'O)";
-  variant (lengthIndicator) 
-    "LENGTHTO (rIMRoutingAddressDiscriminator,spare,rIM_Routing_Address)"; 
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  variant (rIM_Routing_Address) 
-    "CROSSTAG (cell_Identifier, rIMRoutingAddressDiscriminator = '0'H;
-               globalRNCID,     rIMRoutingAddressDiscriminator = '1'H;
-               eNB_Identifier,  rIMRoutingAddressDiscriminator = '2'H;
-               eHRPD_SectorID,  rIMRoutingAddressDiscriminator = '3'H
-               )" 
-};
-
-type union RIM_Routing_Address
-{
-  Cell_Identifier_V   cell_Identifier, 
-  GlobalRNC_ID_BSSGP  globalRNCID,
-  ENB_Identifier_V    eNB_Identifier,
-  octetstring         eHRPD_SectorID
-}
-
-type record GlobalRNC_ID_BSSGP
-{
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2,
- OCT2                   lac,
- OCT1                   rac, 
- HEX1                   spare,
- integer                rNC_ID
-}  with { 
-    variant (spare,rNC_ID) "FIELDORDER(msb)";
-    variant (rNC_ID) "BYTEORDER(last)";  
-    variant (rNC_ID) "FIELDLENGTH(12)";
-}
-
-type record  ENB_Identifier_V {
-  HEX1               mccDigit1,
-  HEX1               mccDigit2,
-  HEX1               mccDigit3,
-  HEX1               mncDigit3,
-  HEX1               mncDigit1,
-  HEX1               mncDigit2,
-  OCT2               tac,  
-  octetstring       globaleNBID
-}
-
-
-// 11.3.71 
-type record MBMS_Session_Identity
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- OCT1                    mBMS_Session_Identifier_Value
-} with { 
-  variant "PRESENCE(iEI = '5D'O)";
-  variant (lengthIndicator) "LENGTHTO (mBMS_Session_Identifier_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-
-// 11.3.72 
-// 29.061 
-
-type record MBMS_Session_Duration
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- octetstring            mBMS_Session_Duration_Value
-} with { 
-  variant "PRESENCE(iEI = '5E'O)";
-  variant (lengthIndicator) "LENGTHTO (mBMS_Session_Duration_Value)";  
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,         ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-
-// 11.3.73 
-type record MBMS_Service_Area_Identity_List
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- octetstring            mBMS_Service_Area_Identity_List_Value       
-} with { 
-  variant "PRESENCE(iEI = '5F'O)";
-  variant (lengthIndicator) 
-             "LENGTHTO (mBMS_Service_Area_Identity_List_Value)";        
-  variant (lengthIndicator) "CROSSTAG( length1,       ext = '1'B;
-                                       length2,       ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-
-// 11.3.74
-type record MBMS_Response
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a                lengthIndicator,
- HEX1                   causeValue,
- HEX1                   spare
-} with { 
-  variant "PRESENCE(iEI = '60'O)";
-  variant (lengthIndicator) "LENGTHTO (causeValue,spare)";        
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,        ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-
-// 11.3.75
-type record MBMS_Routing_Area_List
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- HEX1                    spare,
- HEX1                    number_of_Routing_Area_Identifications, 
- octetstring             routing_Area_Identifications optional 
-
-} with { 
-  variant "PRESENCE(iEI = '61'O)";
-   variant (lengthIndicator) 
-     "LENGTHTO (spare,number_of_Routing_Area_Identifications,
-      routing_Area_Identifications)";     
-   variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                        length2,         ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";        
-};
-
-
-// 11.3.76
-type record MBMS_Session_Information
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- BIT1                    bCMC,
- BIT7                    spare
-} with { 
-  variant "PRESENCE(iEI = '62'O)";
-  variant (lengthIndicator) "LENGTHTO (bCMC, spare)";        
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,        ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//11.3.77 
-// 24.008 10.5.6.13
-type record TMGI_BSSGP
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- OCT3                    mBMS_Service_ID,
- HEX1                    mccDigit1,
- HEX1                    mccDigit2,
- HEX1                    mccDigit3,
- HEX1                    mncDigit3,
- HEX1                    mncDigit1,
- HEX1                    mncDigit2 
-} with { 
-  variant "PRESENCE(iEI = '5C'O)";
-   variant (lengthIndicator) "LENGTHTO
-         (mBMS_Service_ID,mccDigit1,mccDigit2,mccDigit3,mncDigit3,
-      mncDigit1,mncDigit2)";        
-   variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                        length2,         ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-       
-// 11.3.78 MBMS Stop Cause
-type record MBMS_Stop_Cause
-{
- OCT1                    iEI,
- BIT1                    ext,
- LIN2_2a                 lengthIndicator,
- HEX1                    causeValue,
- HEX1                    spare
-} with { 
-  variant "PRESENCE(iEI = '63'O)";
-  variant (lengthIndicator) "LENGTHTO (causeValue, spare)";        
-  variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                       length2,        ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
- 
-// 11.3.79
-type record Source_BSS_to_Target_BSS_Transparent_Container_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  Source_BSS_to_Target_BSS_Transparent_Container_Contents
-      source_BSS_to_Target_BSS_Transparent_Container_Contents
-} with { 
-  variant "PRESENCE(iEI = '64'O)";
-  variant (lengthIndicator) "LENGTHTO (source_BSS_to_Target_BSS_Transparent_Container_Contents)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record Source_BSS_to_Target_BSS_Transparent_Container_Contents
-{
-  MS_Radio_Access_Capability        mS_Radio_Access_Capability,
-  Inter_RAT_Handover_Info_BSSGP     inter_RAT_Handover_Info optional,
-  Page_Mode_BSSGP                   page_Mode_BSSGP optional,
-  Container_ID_BSSGP                container_ID optional,
-  Global_TFI_BSSGP                  global_TFI optional,
-  PS_HandoverIndications            pS_HandoverIndications optional,
-  CS_Indication                     cS_Indication optional,
-  E_UTRAN_Inter_RAT_Handover_Info	e_UTRAN_Inter_RAT_Handover_Info optional,
-  IRAT_Measurement_Configuration    iRAT_Measurement_Configuration optional,
-  Source_Cell_ID                    source_Cell_ID optional,
-  IRAT_Measurement_Configuration_Extended_eARFCNs iRAT_Measurement_Configuration_Extended_eARFCNs optional
-};
-
-// 11.3.80
-type record Target_BSS_to_Source_BSS_Transparent_Container
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  Target_BSS_to_Source_BSS_Transparent_Container_Contents
-                         target_BSS_to_Source_BSS_Transparent_Container_Contents
-} with { 
-  variant "PRESENCE(iEI = '65'O)";
-  variant (lengthIndicator) "LENGTHTO (target_BSS_to_Source_BSS_Transparent_Container_Contents)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-//Note: Only  PS_Handover_Command_BSSGP or DTM_Handover_Command is present
-type record Target_BSS_to_Source_BSS_Transparent_Container_Contents
-{
-  PS_Handover_Command_BSSGP  pS_Handover_Command optional,
-  SI_PSI_Container           sI_PSI_Container optional,    //NEW  
-  DTM_Handover_Command       dTM_Handover_Command optional    //NEW  
-}
-
-// 11.3.81
-type record NAS_container_for_PS_Handover
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  NAS_Container_for_PS_HO            nAS_Container_for_PS_HO
-} with { 
-  variant "PRESENCE(iEI = '66'O)";
-  variant (lengthIndicator) "LENGTHTO (nAS_Container_for_PS_HO)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//24.008 10.5.1.14
-type record NAS_Container_for_PS_HO
-{
-  BIT3          typeOfCipheringAlgorithm,
-  BIT1          spare1,
-  BIT1          oldXID,
-  BIT3          spare2,
-  OCT4          iOV_UI
-}
-
-// 11.3.82
-type record PFCs_to_be_set_up_list
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  integer                number_of_PFCs (1..11),   // note: 0 and 12 .. 255 are reserved!!!
-  Multiple_PFCs_BSSGP    pFCs
-} with { 
-  variant "PRESENCE(iEI = '67'O)";
-  variant (lengthIndicator) "LENGTHTO (number_of_PFCs,pFCs)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  variant (number_of_PFCs) "UNIT(elements),LENGTHTO(pFCs),FIELDORDER(msb),FIELDLENGTH(8)";
-}
-
-type record Single_PFC_BSSGP
-{
-  PFI                               pFI,
-  GPRS_Timer                        pFT,
-  ABQP                              aBQP,
-  Priority_BSSGP                    allocation_Retention_Priority optional,
-  GPRS_Timer                        t10 optional
-}
-
-type record length (1..11) of Single_PFC_BSSGP Multiple_PFCs_BSSGP;
-
-
-// 11.3.83
-type record List_of_set_up_PFCs_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  integer                number_of_PFCs (0..11),   // note: 12 .. 255 are reserved!!!
-  Multiple_PFIs_BSSGP    pFIs
-} with { 
-  variant "PRESENCE(iEI = '68'O)";
-  variant (lengthIndicator) "LENGTHTO (number_of_PFCs,pFIs)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  variant (number_of_PFCs) "UNIT(elements),LENGTHTO(pFIs),FIELDORDER(msb),FIELDLENGTH(8)";
-}
-
-type record Single_PFI_BSSGP
-{
-  BIT7  pFI_Value,
-  BIT1  spare
-}
-
-type record length (0..11) of Single_PFI_BSSGP Multiple_PFIs_BSSGP;
-
-
-// 11.3.84 Extended Feature Bitmap
-type record Extended_Feature_Bitmap
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   pS_Handover,
-  BIT1                   gigabitInterface,
-  BIT1                   mOCN,
-  BIT1                   cS_PS_Coordination_Enhancements,
-  BIT4                   spare
-} with { 
-  variant "PRESENCE(iEI = '69'O)";
-  variant (lengthIndicator) "LENGTHTO (pS_Handover,gigabitInterface,mOCN,cS_PS_Coordination_Enhancements,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.85
-type record Source_to_Target_Transparent_Container
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring          source_to_Target_Transparent_Container_Contents //RANAP ASN.1 PER
-} with { 
-  variant "PRESENCE(iEI = '6A'O)";
-  variant (lengthIndicator) "LENGTHTO (source_to_Target_Transparent_Container_Contents)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.86
-type record Target_to_Source_Transparent_Container
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring          handover_to_UTRAN_or_Radio_Bearer_Reconfiguration_radio_interface_message //ASN.1
-} with { 
-  variant "PRESENCE(iEI = '6B'O)";
-  variant (lengthIndicator) "LENGTHTO (handover_to_UTRAN_or_Radio_Bearer_Reconfiguration_radio_interface_message)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-
-// 11.3.87
-type record RNC_Identifier_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  HEX1                   mccDigit1,
-  HEX1                   mccDigit2,
-  HEX1                   mccDigit3,
-  HEX1                   mncDigit3,
-  HEX1                   mncDigit1,
-  HEX1                   mncDigit2,
-  OCT2                   lac,
-  OCT1                   rac,    
-  OCT2               	 rNC_ID
-} with { 
-  variant "PRESENCE(iEI = '6C'O)";
-  variant (lengthIndicator) "LENGTHTO (mccDigit1, mccDigit2, mccDigit3, mncDigit3, mncDigit1, mncDigit2,
-                                        lac, rac, rNC_ID)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
- 
-// 11.3.88
-type record Page_Mode_BSSGP
-{
-  OCT1                            iEI,
-  BIT1                            ext,
-  LIN2_2a                         lengthIndicator,
-  BIT2                            page_mode,  // specified in 3GPP TS 44.060
-  BIT6                            reserved
-} with { 
-  variant "PRESENCE(iEI = '6D'O)";
-  variant (lengthIndicator) "LENGTHTO (page_mode,reserved)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-  
-// 11.3.89
-type record Container_ID_BSSGP
-{
-  OCT1                            iEI,
-  BIT1                            ext,
-  LIN2_2a                         lengthIndicator,
-  BIT2                            container_ID,   // specified in 3GPP TS 44.060
-  BIT6                            reserved
-} with { 
-  variant "PRESENCE(iEI = '6E'O)";
-  variant (lengthIndicator) "LENGTHTO (container_ID,reserved)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.90
-type record Global_TFI_BSSGP
-{
-  OCT1                            iEI,
-  BIT1                            ext,
-  LIN2_2a                         lengthIndicator,
-  BIT6                            global_TFI,   // specified in 3GPP TS 44.060
-  BIT2                            reserved  
-} with {
-  variant "PRESENCE(iEI = '6F'O)";
-  variant (lengthIndicator) "LENGTHTO (global_TFI,reserved)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.91
-type record IMEI_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  IMEI_Value             iMEI 
-} with { 
-  variant "PRESENCE(iEI = '70'O)";
-  variant (lengthIndicator) "LENGTHTO (iMEI)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record IMEI_Value
-{
- BIT3               typeOfIdentity,
- BIT1               oddevenIndicator,
- hexstring          digits  length(15)
-}
-
-
-// 11.3.92 Time to MBMS Data Transfer
-type record Time_To_MBMS_Data_Transfer
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   valuePart
-} with { 
-  variant "PRESENCE(iEI = '71'O)";
-  variant (lengthIndicator) "LENGTHTO (valuePart)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.93 MBMS Session Repetition Number
-type record MBMS_Session_Repetition_Number
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            repetitionNumber
-} with { 
-  variant "PRESENCE(iEI = '72'O)";
-  variant (lengthIndicator) "LENGTHTO (repetitionNumber)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.94
-type record Inter_RAT_Handover_Info_BSSGP
-{
-  OCT1                            iEI,
-  BIT1                            ext,
-  LIN2_2a                         lengthIndicator,
-  octetstring                     inter_RAT_Handover_Information //as specified in 3GPP TS 25.331
-} with { 
-  variant "PRESENCE(iEI = '73'O)";
-  variant (lengthIndicator) "LENGTHTO (inter_RAT_Handover_Information)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.95
-type record PS_Handover_Command_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            pS_Handover_Command_radio_interface_message
-} with { 
-  variant "PRESENCE(iEI = '74'O)";
-  variant (lengthIndicator) "LENGTHTO (pS_Handover_Command_radio_interface_message)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.95a
-type record PS_HandoverIndications
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   sI_PSI,
-  BIT2                   dMLC_Carriers,
-  BIT5                   spare
-} with { 
-  variant "PRESENCE(iEI = '75'O)";
-  variant (lengthIndicator) "LENGTHTO (sI_PSI,dMLC_Carriers,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-// 11.3.95b
-type record  SI_PSI_Container
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   typeField, 
-  SI_PSI_ContainerValue  sI_PSI_ContainerValue
-} with { 
-   variant "PRESENCE(iEI = '76'O)";  
-   variant (lengthIndicator) "LENGTHTO (typeField,sI_PSI_ContainerValue)";
-   variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                        length2,    ext = '0'B;)";
-   variant (ext,lengthIndicator) "FIELDORDER(msb)";
-   variant (sI_PSI_ContainerValue) "CROSSTAG 
-      (
-       sI_message_Container,          typeField ='0'B;
-       pSI_message_Container,         typeField ='1'B;
-      )"; 
- };   
-
-type union SI_PSI_ContainerValue
-{
-  SI_message_Container   sI_message_Container,
-  PSI_message_Container  pSI_message_Container
-}
-
-type record SI_message_Container 
-{
-  integer           number_of_SI,
-  SI_message_List   sI_message_List
-} with { 
-  variant (number_of_SI) "UNIT(elements),LENGTHTO(sI_message_List),FIELDORDER(msb),FIELDLENGTH(7)";
-}
-
-type record PSI_message_Container
-{
-  integer            number_of_PSI,
-  PSI_message_List   pSI_message_List
-} with { 
-   variant (number_of_PSI) "UNIT(elements),LENGTHTO(pSI_message_List),FIELDORDER(msb),FIELDLENGTH(7)";
-}
-
-type record of SI_message  SI_message_List;
-
-type record of PSI_message  PSI_message_List;
-
-type octetstring SI_message length (21);
-
-type octetstring PSI_message length (22);
-
-
-// 11.3.95c  48.008 CR 240
-type record Active_PFCs_List_BSSGP
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  integer                number_of_PFCs (0..11),   // note: 12 .. 255 are reserved!!!
-  Multiple_PFIs_BSSGP    pFIs
-} with {
-  variant "PRESENCE(iEI = '77'O)";
-  variant (lengthIndicator) "LENGTHTO (number_of_PFCs,pFIs)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  variant (number_of_PFCs) "UNIT(elements),LENGTHTO(pFIs),FIELDORDER(msb),FIELDLENGTH(8)";
-}
-
-//11.3.96
-type record VelocityData
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            velocityDataValue // 23.032
-}with { 
-  variant "PRESENCE(iEI = '78'O)";
-  variant (lengthIndicator) "LENGTHTO (velocityDataValue)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//11.3.97
-type record DTM_Handover_Command
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  octetstring            dTM_HandoverCommandValue // 44.060
-} with { 
-  variant "PRESENCE(iEI = '79'O)";
-  variant (lengthIndicator) "LENGTHTO (dTM_HandoverCommandValue)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-  
-//11.3.98
-type record CS_Indication 
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   cS_IndicationContents  //48.008
-}  with { 
-  variant "PRESENCE(iEI = '7A'O)";
-  variant (lengthIndicator) "LENGTHTO (cS_IndicationContents)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.99
-type record Requested_GANSS_Assistance_Data
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,  
-  octetstring            requested_GANSS_Assistance_Data_Value   //49.031
-} with { 
-  variant "PRESENCE(iEI = '7B'O)";
-  variant (lengthIndicator) "LENGTHTO (requested_GANSS_Assistance_Data_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.100
-type record GANSS_Location_Type
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,  
-  BIT1                   galileo, 
-  BIT7                   spare                                        
-} with { 
-  variant "PRESENCE(iEI = '7C'O)";
-  variant (lengthIndicator) "LENGTHTO (galileo,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-// 11.3.101
-//49.031
-type record GANSS_Positioning_Data
-{  
-  OCT1                         iEI,
-  BIT1                         ext,
-  LIN2_2a                      lengthIndicator,
-  GANSS_Positioning_DataList   gANSS_Positioning_DataList                                        
-} with { 
-  variant "PRESENCE(iEI = '7D'O)";
-  variant (lengthIndicator) "LENGTHTO (gANSS_Positioning_DataList)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record of GANSS_Positioning_DataValue GANSS_Positioning_DataList
-
-type record GANSS_Positioning_DataValue
-{
-  BIT3                   usage,
-  BIT3                   gANSS_ID,
-  BIT2                   method    
-}
-
-//11.3.102
-type record Flow_Control_Granularity
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT2                   granularity,
-  BIT6                   reserved                                           
-} with { 
-  variant "PRESENCE(iEI = '7E'O)";
-  variant (lengthIndicator) "LENGTHTO (granularity,reserved)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-//11.3.103
-type record ENB_Identifier
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  HEX1					 mccDigit1,
-  HEX1					 mccDigit2,
-  HEX1					 mccDigit3,
-  HEX1					 mncDigit3,
-  HEX1					 mncDigit1,
-  HEX1					 mncDigit2,
-  OCT2					 tac,
-  OCTN					 globalEnbID  
-                                      
-} with { 
-  variant "PRESENCE(iEI = '7F'O)";
-  variant (lengthIndicator) "LENGTHTO (mccDigit1, mccDigit2, mccDigit3, mncDigit3, mncDigit1,
-   										mncDigit2, tac, globalEnbID)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-//11.3.104
-type record E_UTRAN_Inter_RAT_Handover_Info
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCTN					 ue_EUTRA_Capability
-                                      
-} with { 
-  variant "PRESENCE(iEI = '80'O)";		
-  variant (lengthIndicator) "LENGTHTO (ue_EUTRA_Capability)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-
-//11.3.105
-type record Subscriber_Profile_ID_For_RAT_Priority
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT8					 profile_ID                                                    
-} with { 
-  variant "PRESENCE(iEI = '81'O)";
-  variant (lengthIndicator) "LENGTHTO (profile_ID)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//11.3.106
-type record Request_For_Inter_RAT_Handover_Info
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   interRATHandoverInfoRequest,
-  BIT1					 eUTRANinterRATHandoverInfoRequest,
-  BIT6                   spare                                           
-} with { 
-  variant "PRESENCE(iEI = '82'O)"; 
-  variant (lengthIndicator) "LENGTHTO (interRATHandoverInfoRequest,eUTRANinterRATHandoverInfoRequest,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//11.3.107
-type record Reliable_Inter_RAT_Handover_Info
-{  
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   reliableInterRATHandoverInfoIndicator,
-  BIT7                   spare                                           
-} with { 
-  variant "PRESENCE(iEI = '83'O)";	
-  variant (lengthIndicator) "LENGTHTO (reliableInterRATHandoverInfoIndicator,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//11.3.108
-type record SON_Transfer_Application_Identity_TLV
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCTN                   sON_Transfer_Application_Identity  //3GPP TS 36.413 [36]
-} with {
-  variant "PRESENCE(iEI = '84'O)";
-  variant (lengthIndicator) "LENGTHTO (sON_Transfer_Application_Identity)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//11.3.109
-type record CSG_Identifier_TLV
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  CSG_Identity           cSG_Identity,  //3GPP TS 23.003, bits 4 to 8 of octet 6 are spare
-  BIT1                   cell_Acces_Mode,
-  BIT7                   spare
-} with {
-  variant "PRESENCE(iEI = '85'O)";
-  variant (lengthIndicator) "LENGTHTO (cSG_Identity,cell_Acces_Mode,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-type record CSG_Identity
-{
-  OCT3					cSG_Id24, 
-  BIT3					cSG_Id3,
-  BIT5					spare // '0'B
-};
-
-//11.3.110
-type record Tracking_Area_Code_TLV
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT3                   valueField  //3GPP TS 24.301
-} with {
-  variant "PRESENCE(iEI = '86'O)";
-  variant (lengthIndicator) "LENGTHTO (valueField)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//11.3.111
-type record Redirect_Attempt_Flag
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   spare  
-} with {
-  variant "PRESENCE(iEI = '87'O)";
-  variant (lengthIndicator) "LENGTHTO (spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.112
-type record Redirection_Indication
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator, 
-  BIT8                   reroute_Reject_Cause_value
-} with {
-  variant "PRESENCE(iEI = '88'O)";
-  variant (lengthIndicator) "LENGTHTO (reroute_Reject_Cause_value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				       				       
-}
-
-//11.3.113
-type record Redirection_Completed
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,   
-  BIT8                   outcome_value
-} with {
-  variant "PRESENCE(iEI = '89'O)";
-  variant (lengthIndicator) "LENGTHTO (outcome_value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)";
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				                
-}
- 
-//11.3.114
-type record Unconfirmed_Send_State_Variable
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator, 
-  BIT7                   spare,           
-  integer                vU  
-} with {
-  variant "PRESENCE(iEI = '8A'O)";
-  variant (lengthIndicator) "LENGTHTO (spare,vU)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				       
-  variant (vU) "FIELDLENGTH(9)";
-  variant (vU) "BYTEORDER(last)";				       
-  variant (spare,vU) "FIELDORDER(msb)";				       				       
-}
-
-//11.3.115
-type record IRAT_Measurement_Configuration
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator, 
-  INT6b                  reportingThreshold,
-  BIT1                   repQuant,
-  BIT1                   spare,
-  INT1                   measurementDuration,   
-  Measurement_List       measurement_List
-} with {
-  variant "PRESENCE(iEI = '8B'O)";
-  variant (lengthIndicator) "LENGTHTO (reportingThreshold,repQuant,spare,measurementDuration,measurement_List)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				       
-}				      
-				      				      
-type record Measurement
-{
-  LIN2_BO_LAST           e_ARFCN,
-  BIT3                   measurementBandwidth,
-  BIT5                   spare
-}
-
-type record of Measurement Measurement_List;
-				       
-type record RNC_Id_with_Transparent_Container_BSSGP 
-{
-  RNC_Identifier_BSSGP  target_RNC_Identifier,
-  Source_to_Target_Transparent_Container
-                               source_to_Target_Transparent_Container
-}
-
-type union Cell_or_RNC_Id_with_Transparent_Container_BSSGP
-{
-  Cell_Id_with_Transparent_Container_BSSGP  cell_Id_with_Transparent_Container,
-  RNC_Id_with_Transparent_Container_BSSGP   rnc_Id_with_Transparent_Container
-}
-
-type record Cell_Id_with_Transparent_Container_BSSGP
-{
-  Cell_Identifier                target_Cell_Identifier,
-  Source_BSS_to_Target_BSS_Transparent_Container_BSSGP
-      source_BSS_to_Target_BSS_Transparent_Container
-}
-
-//11.3.116
-type record SCI
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   service_Class_Value
-} with {
-  variant "PRESENCE(iEI = '8c'O)";
-  variant (lengthIndicator) "LENGTHTO (service_Class_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.117
-type record GGSN_PGW_Location
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT3                   gGSN_PGW_Location_Value,
-  BIT5                   spare
-} with {
-  variant "PRESENCE(iEI = '8d'O)";
-  variant (lengthIndicator) "LENGTHTO (gGSN_PGW_Location_Value)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.118
-type record Selected_PLMN_ID
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  HEX1                   mccDigit1,
-  HEX1                   mccDigit2,
-  HEX1                   mccDigit3,
-  HEX1                   mncDigit3,
-  HEX1                   mncDigit1,
-  HEX1                   mncDigit2 
-} with {
-  variant "PRESENCE(iEI = '8e'O)";
-  variant (lengthIndicator) "LENGTHTO (mccDigit1,mccDigit2,mccDigit3,mncDigit3,mncDigit1,mncDigit2)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.119
-type record Priority_Class_Indicator
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT1                   priority_Class_Indicator_Value,
-  BIT7                   spare
-} with {
-  variant "PRESENCE(iEI = '8f'O)";
-  variant (lengthIndicator) "LENGTHTO (priority_Class_Indicator_Value,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.120
-type record Source_Cell_ID
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  TrackingAreaIdentity_BSSGP tracking_Area_Identity,
-  ECGI_BSSGP             eUTRAN_CGI,
-  octetstring            globaleNBID
-} with {
-  variant "PRESENCE(iEI = '90'O)";
-  variant (lengthIndicator) "LENGTHTO (tracking_Area_Identity,eUTRAN_CGI,globaleNBID)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-type record TrackingAreaIdentity_BSSGP
-{
-  HEX1               mccDigit1,
-  HEX1               mccDigit2,
-  HEX1               mccDigit3,
-  HEX1               mncDigit3,
-  HEX1               mncDigit1,
-  HEX1               mncDigit2,
-  OCT2               tAC
-} 
-
-type record ECGI_BSSGP
-{
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  HEX1                         spare,     
-  integer                      eCI
-} with {
-  variant (spare,eCI) "FIELDORDER(msb)";     
-  variant(eCI) "FIELDLENGTH(28)";
-  variant (eCI) "BYTEORDER(last)";
-};
-
-
-//11.3.121
-type record IRAT_Measurement_Configuration_Extended_eARFCNs
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  INT6b                  reportingThreshold,
-  BIT1                   repQuant,
-  BIT1                   spare,
-  INT1                   measurementDuration,   
-  Measurement_List_Extended measurement_List
-} with {
-  variant "PRESENCE(iEI = '91'O)";
-  variant (lengthIndicator) "LENGTHTO (reportingThreshold,repQuant,spare,measurementDuration,measurement_List)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-type record Measurement_Extended
-{
-  INT18b_BO_LAST         e_ARFCN,
-  BIT3                   spare,
-  BIT3                   measurementBandwidth
-} with {
-  variant (e_ARFCN,spare,measurementBandwidth) "FIELDORDER(msb)";				          
-}
-type record of Measurement_Extended Measurement_List_Extended;
-
-//11.3.122
-type record EDRX_Parameters
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  BIT4                   eDRX_Cycle_Value,
-  BIT4                   spare
-} with {
-  variant "PRESENCE(iEI = '92'O)";
-  variant (lengthIndicator) "LENGTHTO (eDRX_Cycle_Value,spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.123
-type record Time_Until_Next_Paging_Occasion
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  INT6b                  minutes,
-  BIT2                   spare,
-  INT6b                  seconds,
-  BIT2                   spare2
-} with {
-  variant "PRESENCE(iEI = '93'O)";
-  variant (lengthIndicator) "LENGTHTO (minutes,spare,seconds,spare2)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.124
-type record Old_Routing_Area_Identification
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  HEX1                   mccDigit1,
-  HEX1                   mccDigit2,
-  HEX1                   mccDigit3,
-  HEX1                   mncDigit3,
-  HEX1                   mncDigit1,
-  HEX1                   mncDigit2,
-  OCT2                   lac,
-  OCT1                   rac
-} with {
-  variant "PRESENCE(iEI = '94'O)";
-  variant (lengthIndicator) "LENGTHTO (mccDigit1,mccDigit2,mccDigit3,mncDigit3,mncDigit1,mncDigit2,lac,rac)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.125
-type record Attach_Indicator
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   spare
-} with {
-  variant "PRESENCE(iEI = '95'O)";
-  variant (lengthIndicator) "LENGTHTO (spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.126
-type record PLMN_Identity
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  HEX1                   mccDigit1,
-  HEX1                   mccDigit2,
-  HEX1                   mccDigit3,
-  HEX1                   mncDigit3,
-  HEX1                   mncDigit1,
-  HEX1                   mncDigit2 
-} with {
-  variant "PRESENCE(iEI = '96'O)";
-  variant (lengthIndicator) "LENGTHTO (mccDigit1,mccDigit2,mccDigit3,mncDigit3,mncDigit1,mncDigit2)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-//11.3.127
-type record MME_Query
-{
-  OCT1                   iEI,
-  BIT1                   ext,
-  LIN2_2a                lengthIndicator,
-  OCT1                   spare
-} with {
-  variant "PRESENCE(iEI = '97'O)";
-  variant (lengthIndicator) "LENGTHTO (spare)";
-  variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                       length2,    ext = '0'B;)"; 
-  variant (ext,lengthIndicator) "FIELDORDER(msb)";				          
-}
-
-
-//-----------------------------------------------------------------------------
-// PDUs
-//-----------------------------------------------------------------------------
-
-//10.2.1
-type record PDU_BSSGP_DL_UNITDATA 
-{
- OCT1                              bssgpPduType,
- OCT4                              tLLI_current,
- QoS_Profile_V                     qoS_Profile,
- PDU_Lifetime                      pDU_Lifetime,
- MS_Radio_Access_Capability        mS_Radio_Access_Capability optional,
- Priority_BSSGP                    priority optional,
- DRX_Parameters                    dRX_Parameters optional,
- IMSI_BSSGP                        iMSI optional,
- TLLI_BSSGP                        tLLI_old optional,
- PFI                               pFI optional,
- LSA_Information_BSSGP             lSA_Information optional,
- Service_UTRAN_CCO                 service_UTRAN_CCO optional,
- Service_Class_Indicator           service_Class_Indicator optional,
- Subscriber_Profile_ID_For_RAT_Priority  subscriber_Profile_ID_For_RAT_Priority optional,
- Redirection_Indication            redirection_Indication optional,
- Redirection_Completed             redirection_Completed optional, 
- Unconfirmed_Send_State_Variable   unconfirmed_Send_State_Variable optional,
- SCI                               sCI optional,
- GGSN_PGW_Location                 gGSN_PGW_Location optional,
- EDRX_Parameters                   eDRX_Paremeters optional,
- Old_Routing_Area_Identification   old_Routing_Area_Identification optional,
- Attach_Indicator                  attach_Indicator optional,
- Alignment_octets                  alignment_octets optional,
- LLC_PDU                           lLC_PDU,
- LLC_PDU                           initialLLC_PDU optional
-} with { variant "PRESENCE(bssgpPduType = '00'O)"; };
-
-//10.2.2
-type record PDU_BSSGP_UL_UNITDATA
-{
- OCT1                              bssgpPduType,
- OCT4                              tLLI,
- QoS_Profile_V                     qoS_Profile,
- Cell_Identifier                   cell_Identifier,
- PFI                               pFI optional,
- LSA_Identifier_List_BSSGP         lSA_Identifier_List optional,
- Redirect_Attempt_Flag             redirect_Attempt_Flag optional,
- IMSI_BSSGP                        iMSI_BSSGP optional,
- Unconfirmed_Send_State_Variable   unconfirmed_Send_State_Variable optional,
- Selected_PLMN_ID                  selected_PLMN_ID optional,
- PLMN_Identity                     selected_Operator optional,
- PLMN_Identity                     cS_Registered_Operator optional, 
- Alignment_octets                  alignment_octets optional,
- LLC_PDU                           lLC_PDU
-} with { variant "PRESENCE(bssgpPduType = '01'O)"; };
-
-//10.2.3
-type record PDU_BSSGP_RA_CAPABILITY
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,
- MS_Radio_Access_Capability        mS_Radio_Access_Capability
-} with { variant "PRESENCE(bssgpPduType = '02'O)"; };
-
-//10.2.5
-type record PDU_BSSGP_DL_MBMS_UNITDATA
-{
- OCT1                              bssgpPduType,
- PDU_Lifetime                      pDU_Lifetime,
- TMGI_BSSGP                        tMGI,
- MBMS_Session_Identity             mBMS_Session_Identity optional,
- Alignment_octets                  alignment_octets optional,
- LLC_PDU                           lLC_PDU
-} with { variant "PRESENCE(bssgpPduType = '04'O)"; };
-
-
-// 10.2.6; Deleted from spec 7.10.0,kept in prot module for backward compatibility
-type record PDU_BSSGP_UL_MBMS_UNITDATA
-{
- OCT1                              bssgpPduType,
- TMGI_BSSGP                        tMGI,
- MBMS_Session_Identity             mBMS_Session_Identity optional,
- Alignment_octets                  alignment_octets optional,
- LLC_PDU                           lLC_PDU
-} with { variant "PRESENCE(bssgpPduType = '05'O)"; };
-
-// 10.3.1
-type record PDU_BSSGP_PAGING_PS 
-{
- OCT1                              bssgpPduType,
- IMSI_BSSGP                        iMSI,
- DRX_Parameters                    dRX_Parameters optional,  
- Paging_Field4                     paging_Field4,
- PFI                               pFI optional,
- ABQP                              aBQP optional,
- QoS_Profile                       qoS_Profile,
- TMSI_BSSGP                        pTMSI optional,
- EDRX_Parameters                   eDRX_Paremeters optional
-} with { variant "PRESENCE(bssgpPduType = '06'O)"; };
-
-//10.3.2
-type record PDU_BSSGP_PAGING_CS
-{
- OCT1                              bssgpPduType,
- IMSI_BSSGP                        iMSI,
- DRX_Parameters                    dRX_Parameters,
- Paging_Field4                     paging_Field4,
- TLLI_BSSGP                        tLLI optional,
- Channel_needed                    channel_needed optional,
- EMLPP_Priority_BSSGP              eMLPP_Priority optional,
- TMSI_BSSGP                        tMSI optional,
- Global_CN_Id_BSSGP                global_CN_Id optional
-} with { variant "PRESENCE(bssgpPduType = '07'O)"; };
-
-
-type union Paging_Field4
-{
- BVCI                              bVCI,                                      
- Location_Area                     location_Area,                   
- Routeing_Area                     routeing_Area,                   
- BSS_Area_Indication               bSS_Area_Indication                 
-};
-
-//10.3.3
-type record PDU_BSSGP_RA_CAPABILITY_UPDATE
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,
- Tag                               tag
-} with { variant "PRESENCE(bssgpPduType = '08'O)"; };
-
-
-//10.3.4
-type record PDU_BSSGP_RA_CAPABILITY_UPDATE_ACK
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,
- Tag                               tag,
- IMSI_BSSGP                        iMSI optional,
- RA_Cap_UPD_CAUSE                  rA_Cap_UPDATE_CAUSE,
- MS_Radio_Access_Capability        mS_Radio_Access_Capability optional     
-} with { variant "PRESENCE(bssgpPduType = '09'O)"; };
-
-//10.3.5
-type record PDU_BSSGP_RADIO_STATUS
-{
-  OCT1                              bssgpPduType,
-  TLLI_BSSGP                        tLLI optional,
-  TMSI_BSSGP                        tMSI optional,
-  IMSI_BSSGP                        iMSI optional,
-  Radio_Cause                       radio_Cause
-} with { variant "PRESENCE(bssgpPduType = '0A'O)"; };
-
-//10.3.6
-type record PDU_BSSGP_SUSPEND
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,        
- Routeing_Area                     routeing_Area  
-} with { variant "PRESENCE(bssgpPduType = '0B'O)"; };
-
-// 10.3.7
-type record PDU_BSSGP_SUSPEND_ACK
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,        
- Routeing_Area                     routeing_Area ,
- Suspend_Reference_Number          suspend_Reference_Number
-} with { variant "PRESENCE(bssgpPduType = '0C'O)"; };
-
-// 10.3.8
-type record PDU_BSSGP_SUSPEND_NACK
-{
- OCT1                          bssgpPduType,
- TLLI_BSSGP                    tLLI,    
- Routeing_Area                 routeing_Area,
- Cause_BSSGP                   cause optional
-} with { variant "PRESENCE(bssgpPduType = '0D'O)"; };
-
-// 10.3.9
-type record PDU_BSSGP_RESUME
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,        
- Routeing_Area                     routeing_Area,
- Suspend_Reference_Number          suspend_Reference_Number
-} with { variant "PRESENCE(bssgpPduType = '0E'O)"; };
-
-//10.3.10
-type record PDU_BSSGP_RESUME_ACK
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,        
- Routeing_Area                     routeing_Area
-} with { variant "PRESENCE(bssgpPduType = '0F'O)"; };
-
-// 10.3.11
-type record PDU_BSSGP_RESUME_NACK
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,        
- Routeing_Area                     routeing_Area,
- Cause_BSSGP                       cause optional
-} with { variant "PRESENCE(bssgpPduType = '10'O)"; };
-
-// 10.3.12
-type record PDU_BSSGP_PAGING_PS_REJECT
-{
- OCT1                              bssgpPduType,
- IMSI_BSSGP                        iMSI,
- TMSI_BSSGP                        pTMSI optional,
- Time_Until_Next_Paging_Occasion   time_Until_Next_Paging_Occasion
-} with { variant "PRESENCE(bssgpPduType = '11'O)"; };
-
-// 10.3.13
-type record PDU_BSSGP_DUMMY_PAGING_PS
-{
- OCT1                              bssgpPduType,
- IMSI_BSSGP                        iMSI,
- Routeing_Area                     routeing_Area  optional,
- EDRX_Parameters                   eDRX_Paremeters optional
-} with { variant "PRESENCE(bssgpPduType = '12'O)"; };
-
-// 10.3.14
-type record PDU_BSSGP_DUMMY_PAGING_PS_RESPONSE
-{
- OCT1                              bssgpPduType,
- IMSI_BSSGP                        iMSI,
- Time_Until_Next_Paging_Occasion   time_Until_Next_Paging_Occasion
-} with { variant "PRESENCE(bssgpPduType = '13'O)"; };
-
-// 10.3.15
-type record PDU_BSSGP_MS_REGISTRATION_ENQUIRY_RESPONSE
-{
- OCT1                              bssgpPduType,
- IMSI_BSSGP                        iMSI,
- PLMN_Identity                     pS_Registered_Operator optional
-} with { variant "PRESENCE(bssgpPduType = '15'O)"; };
-
-// 10.3.15
-type record PDU_BSSGP_MS_REGISTRATION_ENQUIRY
-{
- OCT1                              bssgpPduType,
- IMSI_BSSGP                        iMSI,
- MME_Query                         mME_Query optional
-} with { variant "PRESENCE(bssgpPduType = '14'O)"; };
-
-// 10.4.1
-type record PDU_BSSGP_FLUSH_LL
-{
-  OCT1                              bssgpPduType,
-  TLLI_BSSGP                        tLLI,        
-  BVCI                              bVCI_old,
-  BVCI                              bVCI_new optional,
-  NSEI_BSSGP                        nSEI optional
-} with { variant "PRESENCE(bssgpPduType = '2A'O)"; };
-
-// 10.4.2 
-type record PDU_BSSGP_FLUSH_LL_ACK
-{
-  OCT1                              bssgpPduType,
-  TLLI_BSSGP                        tLLI,        
-  Flush_Action                      flush_Action,
-  BVCI                              bVCI_new optional,
-  Number_of_octets_affected         number_of_octets_affected,
-  NSEI_BSSGP                        nSEI optional
-} with { variant "PRESENCE(bssgpPduType = '2B'O)"; };
-
-// 10.4.3
-type record PDU_BSSGP_LLC_DISCARDED
-{
- OCT1                        bssgpPduType,
- TLLI_BSSGP                  tLLI,    
- LLC_Frames_Discarded        lLC_Frames_Discarded,
- BVCI                        bVCI,
- Number_of_octets_affected   number_of_octets_deleted,
- PFI                         pFI optional
-} with { variant "PRESENCE(bssgpPduType = '2C'O)"; };
-
-// 10.4.4
-type record PDU_BSSGP_FLOW_CONTROL_BVC
-{
- OCT1                       bssgpPduType,
- Tag                        tag,
- BVC_Bucket_Size            bVC_Bucket_Size,
- Bucket_Leak_Rate           bucket_Leak_Rate,
- Bmax_default_MS            bmax_default_MS,
- R_default_MS               r_default_MS,
- Bucket_Full_Ratio          bucket_Full_Ratio optional,  
- BVC_Measurement            bVC_Measurement optional,
- Flow_Control_Granularity   flow_Control_Granularity optional 
-} with { variant "PRESENCE(bssgpPduType = '26'O)"; };
-
-// 10.4.5
-type record PDU_BSSGP_FLOW_CONTROL_BVC_ACK
-{
- OCT1                        bssgpPduType,
- Tag                         tag
-} with { variant "PRESENCE(bssgpPduType = '27'O)"; };
-
-// 10.4.6
-type record PDU_BSSGP_FLOW_CONTROL_MS
-{
- OCT1                        bssgpPduType,
- TLLI_BSSGP                  tLLI,    
- Tag                         tag,
- MS_Bucket_Size              mS_Bucket_Size,
- Bucket_Leak_Rate            bucket_Leak_Rate,
- Bucket_Full_Ratio           bucket_Full_Ratio optional,
- Flow_Control_Granularity   flow_Control_Granularity optional 
-} with { variant "PRESENCE(bssgpPduType = '28'O)"; };        
-
-// 10.4.7
-type record PDU_BSSGP_FLOW_CONTROL_MS_ACK
-{
- OCT1                         bssgpPduType,
- TLLI_BSSGP                   tLLI,    
- Tag                          tag
-} with { variant "PRESENCE(bssgpPduType = '29'O)"; };
-
-
-// 10.4.8
-type record PDU_BSSGP_BVC_BLOCK        
-{
- OCT1                          bssgpPduType,
- BVCI                          bVCI,
- Cause_BSSGP                   cause 
-} with { variant "PRESENCE(bssgpPduType = '20'O)"; };
-
-// 10.4.9
-type record PDU_BSSGP_BVC_BLOCK_ACK
-{
- OCT1                         bssgpPduType,
- BVCI                         bVCI
-} with { variant "PRESENCE(bssgpPduType = '21'O)"; };
-
-// 10.4.10
-type record PDU_BSSGP_BVC_UNBLOCK
-{
- OCT1                         bssgpPduType,
- BVCI                         bVCI
-} with { variant "PRESENCE(bssgpPduType = '24'O)"; };
-
-// 10.4.11
-type record PDU_BSSGP_BVC_UNBLOCK_ACK
-{
- OCT1                         bssgpPduType,
- BVCI                         bVCI
-} with { variant "PRESENCE(bssgpPduType = '25'O)"; };
-
-// 10.4.12
-type record PDU_BSSGP_BVC_RESET
-{
- OCT1                              bssgpPduType,
- BVCI                              bVCI,
- Cause_BSSGP                       cause,
- Cell_Identifier                   cell_Identifier optional, 
- Feature_bitmap                    feature_bitmap optional,
- Extended_Feature_Bitmap           extended_Feature_Bitmap optional
-} with { variant "PRESENCE(bssgpPduType = '22'O)"; };
-
-// 10.4.13 
-type record PDU_BSSGP_BVC_RESET_ACK
-{
- OCT1                              bssgpPduType,
- BVCI                              bVCI,
- Cell_Identifier                   cell_Identifier optional,
- Feature_bitmap                    feature_bitmap optional,
- Extended_Feature_Bitmap           extended_Feature_Bitmap optional
-} with { variant "PRESENCE(bssgpPduType = '23'O)"; };
-
-// 10.4.14
-type record PDU_BSSGP_STATUS
-{
- OCT1                              bssgpPduType,
- Cause_BSSGP                       cause,
- BVCI                              bVCI optional,   
- PDU_in_Error                      pDU_in_Error optional 
-} with { variant "PRESENCE(bssgpPduType = '41'O)"; };
-
-// 10.4.15
-type record PDU_BSSGP_SGSN_INVOKE_TRACE
-{
-  OCT1                              bssgpPduType,
-  Trace_Type_BSSGP                  traceType,
-  Trace_Reference_BSSGP             traceReference,
-  Trigger_Id_BSSGP                  triggerId optional,
-  Mobile_Id_BSSGP                   mobileId optional,
-  OMC_Id_BSSGP                      omcId optional,
-  TransactionId_BSSGP               transactionId optional
-} with { variant "PRESENCE(bssgpPduType = '40'O)"; };
-
-// 10.4.16
-type record PDU_BSSGP_DOWNLOAD_BSS_PFC
-{
- OCT1                              bssgpPduType,
- TLLI_BSSGP                        tLLI,
- PFI                               pFI         
-} with { variant "PRESENCE(bssgpPduType = '50'O)"; };
-
-// 10.4.17
-type record PDU_BSSGP_CREATE_BSS_PFC
-{
-  OCT1                              		bssgpPduType,
-  TLLI_BSSGP                       		 	tLLI,
-  IMSI_BSSGP                        		iMSI optional,
-  PFI                               		pFI,         
-  GPRS_Timer                        		pFT,
-  ABQP                              		aBQP,
-  Service_UTRAN_CCO                 		service_UTRAN_CCO optional,
-  MS_Radio_Access_Capability        		mS_Radio_Access_Capability optional,
-  Priority_BSSGP                  	  		allocation_Retention_Priority optional, 
-  GPRS_Timer                        		t10 optional,
-  Inter_RAT_Handover_Info_BSSGP     		inter_RAT_Handover_Info optional,
-  E_UTRAN_Inter_RAT_Handover_Info		  	e_UTRAN_Inter_RAT_Handover_Info optional,
-  Subscriber_Profile_ID_For_RAT_Priority	subscriber_Profile_ID_For_RAT optional
-  
-  
-} with { variant "PRESENCE(bssgpPduType = '51'O)"; };
-
-// 10.4.18
-type record PDU_BSSGP_CREATE_BSS_PFC_ACK
-{
- OCT1                             bssgpPduType,
- TLLI_BSSGP                       tLLI,
- PFI                              pFI, 
- ABQP                             aBQP,
- Cause_BSSGP                      cause optional
-} with { variant "PRESENCE(bssgpPduType = '52'O)"; };
-
-// 10.4.19
-type record PDU_BSSGP_CREATE_BSS_PFC_NACK
-{
- OCT1                             bssgpPduType,
- TLLI_BSSGP                       tLLI,
- PFI                              pFI, 
- Cause_BSSGP                      cause
-} with { variant "PRESENCE(bssgpPduType = '53'O)"; };
-
-// 10.4.20        
-type record PDU_BSSGP_MODIFY_BSS_PFC
-{
- OCT1                         bssgpPduType,
- TLLI_BSSGP                   tLLI,
- PFI                          pFI, 
- ABQP                         aBQP
-} with { variant "PRESENCE(bssgpPduType = '54'O)"; };
-                
-// 10.4.21
-type record PDU_BSSGP_MODIFY_BSS_PFC_ACK
-{
- OCT1                           bssgpPduType,
- TLLI_BSSGP                     tLLI,
- PFI                            pFI, 
- GPRS_Timer                     pFT,
- ABQP                           aBQP
-} with { variant "PRESENCE(bssgpPduType = '55'O)"; };
-
-// 10.4.22
-type record PDU_BSSGP_DELETE_BSS_PFC
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  PFI                            pFI
-} with { variant "PRESENCE(bssgpPduType = '56'O)"; };
-
-// 10.4.23
-type record PDU_BSSGP_DELETE_BSS_PFC_ACK
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  PFI                            pFI
-} with { variant "PRESENCE(bssgpPduType = '57'O)"; };
-
-// 10.4.24
-type record PDU_BSSGP_FLOW_CONTROL_PFC        
-{
- OCT1                         bssgpPduType,
- TLLI_BSSGP                   tLLI,
- Tag                          tag,
- MS_Bucket_Size               mS_Bucket_Size optional,
- Bucket_Leak_Rate             bucket_Leak_Rate optional,
- Bucket_Full_Ratio            bucket_Full_Ratio optional,
- PFC_flow_control_parameters  pFC_flow_control_parameters,
- Flow_Control_Granularity     flow_Control_Granularity optional
-
-} with { variant "PRESENCE(bssgpPduType = '2D'O)"; };
-
-// 10.4.25        
-type record PDU_BSSGP_FLOW_CONTROL_PFC_ACK
-{
- OCT1                           bssgpPduType,
- TLLI_BSSGP                     tLLI,
- Tag                            tag
-} with { variant "PRESENCE(bssgpPduType = '2E'O)"; };
-
-// 10.4.26        
-type record PDU_BSSGP_DELETE_BSS_PFC_REQ
-{
-  OCT1                             bssgpPduType,
-  TLLI_BSSGP                       tLLI,
-  PFI                              pFI,
-  Cause_BSSGP                      cause
-} with { variant "PRESENCE(bssgpPduType = '58'O)"; };
-
-// 10.4.27
-type record PDU_BSSGP_PS_HANDOVER_REQUIRED
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  Cause_BSSGP                    cause,
-  Cell_Identifier                source_Cell_Identifier,
-  Cell_or_RNC_Id_with_Transparent_Container_BSSGP
-                                 cell_or_RNC_Id_with_Transparent_Container,
-  Active_PFCs_List_BSSGP         active_PFCs_List,
-  ENB_Identifier				 target_ENB_Identifier optional,
-  Reliable_Inter_RAT_Handover_Info
-  								 reliable_Inter_RAT_Handover_Info optional,
-  CSG_Identifier_TLV             cSG_Identifier optional,
-  Tracking_Area_Code_TLV         tracking_Area_Code optional
-  } with { variant "PRESENCE(bssgpPduType = '59'O)"; };
-
-
-// 10.4.28
-type record PDU_BSSGP_PS_HANDOVER_REQUIRED_ACK
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  List_of_set_up_PFCs_BSSGP      list_of_set_up_PFCs,
-  Target_BSS_to_Source_BSS_Transparent_Container
-                                 target_BSS_to_Source_BSS_Transparent_Container optional,
-  Target_to_Source_Transparent_Container
-                                 target_to_Source_Transparent_Container optional
-} with { variant "PRESENCE(bssgpPduType = '5A'O)"; };
-
-
-// 10.4.29
-type record PDU_BSSGP_PS_HANDOVER_REQUIRED_NACK
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  Cause_BSSGP                    cause
-} with { variant "PRESENCE(bssgpPduType = '5B'O)"; }; 
-
-
-// 10.4.30
-type record PDU_BSSGP_PS_HANDOVER_REQUEST
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  IMSI_BSSGP                     iMSI,
-  Cause_BSSGP                    cause,
-  Cell_Identifier                source_Cell_Identifier optional,
-  RNC_Identifier_BSSGP           source_RNC_Identifier optional,
-  Cell_Identifier                target_Cell_Identifier optional, // it is mandatory
-  Source_BSS_to_Target_BSS_Transparent_Container_BSSGP
-                                 source_BSS_to_Target_BSS_Transparent_Container_BSSGP,
-  PFCs_to_be_set_up_list         pFCs_to_be_set_up_list,
-  NAS_container_for_PS_Handover  nAS_container_for_PS_Handover optional,
-  Service_UTRAN_CCO              service_UTRAN_CCO optional,
-  Subscriber_Profile_ID_For_RAT_Priority
-  								 subscriber_Profile_ID_For_RAT_Priority optional,
-  Reliable_Inter_RAT_Handover_Info
-  								 reliable_Inter_RAT_Handover_Info optional
-}  with { variant "PRESENCE(bssgpPduType = '5C'O)"; };
-
-
-// 10.4.31
-type record PDU_BSSGP_PS_HANDOVER_REQUEST_ACK
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  List_of_set_up_PFCs_BSSGP      list_of_set_up_PFCs,
-  Target_BSS_to_Source_BSS_Transparent_Container
-                                 target_BSS_to_Source_BSS_Transparent_Container
-} with { variant "PRESENCE(bssgpPduType = '5D'O)"; };
-
-
-// 10.4.32
-type record PDU_BSSGP_PS_HANDOVER_REQUEST_NACK
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  Cause_BSSGP                    cause
-} with { variant "PRESENCE(bssgpPduType = '5E'O)"; };
-
-
-// 10.4.33
-type record PDU_BSSGP_PS_HANDOVER_COMPLETE
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  IMSI_BSSGP                     iMSI,
-  Cell_Identifier                target_Cell_Identifier optional,
-  Request_For_Inter_RAT_Handover_Info
-  								 request_For_Inter_RAT_Handover_Info optional
-} with { variant "PRESENCE(bssgpPduType = '91'O)"; };
-
-
-// 10.4.34
-type record PDU_BSSGP_PS_HANDOVER_CANCEL
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  Cause_BSSGP                    cause,
-  Cell_Identifier                source_Cell_Identifier,
-  Cell_Identifier                target_Cell_Identifier optional,
-  RNC_Identifier_BSSGP           target_RNC_Identifier optional,
-  ENB_Identifier				 target_Enb_Identifier optional
-} with { variant "PRESENCE(bssgpPduType = '92'O)"; };
-
-// 10.4.35
-type record PDU_BSSGP_PS_HANDOVER_COMPLETE_ACK
-{
-  OCT1                            bssgpPduType,
-  TLLI_BSSGP                      tLLI,
-  Inter_RAT_Handover_Info_BSSGP   inter_RAT_Handover_Info_BSSGP,
-  E_UTRAN_Inter_RAT_Handover_Info e_UTRAN_Inter_RAT_Handover_Info optional
-} with { variant "PRESENCE(bssgpPduType = '93'O)";};
-
-// 10.4.36
-type record PDU_BSSGP_OVERLOAD
-{
-  OCT1                            bssgpPduType,
-  Priority_Class_Indicator        priority_Class_Indicator
-} with { variant "PRESENCE(bssgpPduType = '42'O)";};
-
-// 10.5.1
-type record PDU_BSSGP_PERFORM_LOCATION_REQUEST
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  IMSI_BSSGP                     iMSI,
-  DRX_Parameters                 dRX_Parameters optional,
-  BVCI                           bVCI,
-  NSEI_BSSGP                     nSEI,
-  Location_Type_BSSGP            location_Type,
-  Cell_Identifier                cell_Identifier,
-  LCS_Capability_BSSGP           lCS_Capability optional,
-  LCS_Priority_BSSGP             lCS_Priority optional,
-  LCS_QoS_BSSGP                  lCS_QoS optional,
-  LCS_Client_Type_BSSGP          lCS_Client_Type optional,
-  Requested_GPS_Assistance_Data_BSSGP  requested_GPS_Assistance_Data optional,
-  IMEI_BSSGP                     iMEI optional,
-  GANSS_Location_Type            gANSS_Location_Type optional,
-  Requested_GANSS_Assistance_Data requested_GANSS_Assistance_Data optional,
-  EDRX_Parameters                eDRX_Parameters optional
-} with { variant "PRESENCE(bssgpPduType = '60'O)"; };
-
-
-// 10.5.2
-type record PDU_BSSGP_PERFORM_LOCATION_RESPONSE
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  BVCI                           bVCI,
-  Location_Estimate_BSSGP        location_Estimate optional,
-  Positioning_Data_BSSGP         positioning_Data optional,
-  Deciphering_Keys_BSSGP         deciphering_Keys optional,
-  LCS_Cause_BSSGP                lCS_Cause optional,
-  VelocityData                  velocityData optional,
-  GANSS_Positioning_Data         gANSS_Positioning_Data optional  
-} with { variant "PRESENCE(bssgpPduType = '61'O)"; };
-
-
-// 10.5.3
-type record PDU_BSSGP_PERFORM_LOCATION_ABORT
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  BVCI                           bVCI,
-  LCS_Cause_BSSGP                lCS_Cause
-} with { variant "PRESENCE(bssgpPduType = '62'O)"; };
-
-
-// 10.5.4
-type record PDU_BSSGP_POSITION_COMMAND
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  BVCI                           bVCI,
-  RRLP_Flags_BSSGP               rRLP_Flags,
-  RRLP_APDU_BSSGP                rRLP_APDU
-} with { variant "PRESENCE(bssgpPduType = '63'O)"; };
-
-
-// 10.5.5
-type record PDU_BSSGP_POSITION_RESPONSE
-{
-  OCT1                           bssgpPduType,
-  TLLI_BSSGP                     tLLI,
-  BVCI                           bVCI,
-  RRLP_Flags_BSSGP               rRLP_Flags optional,
-  RRLP_APDU_BSSGP                rRLP_APDU optional,
-  LCS_Cause_BSSGP                lCS_Cause optional  
-} with { variant "PRESENCE(bssgpPduType = '64'O)"; };
-
-// 10.6.1  
-type record PDU_BSSGP_RAN_INFORMATION_REQUEST
-{
- OCT1                            bssgpPduType,
- RIM_Routing_Information         destination_Cell_Identifier,
- RIM_Routing_Information         source_Cell_Identifier,
- RAN_Information_Request_RIM_Container  rIM_Container
-} with { variant "PRESENCE(bssgpPduType = '71'O)"; };
-      
-// 10.6.2
-type record PDU_BSSGP_RAN_INFORMATION
-{
- OCT1                              bssgpPduType,
- RIM_Routing_Information           destination_Cell_Identifier,
- RIM_Routing_Information           source_Cell_Identifier,
- RAN_Information_RIM_Container     rIM_Container
-} with { variant "PRESENCE(bssgpPduType = '70'O)"; };
-
-// 10.6.3
-type record PDU_BSSGP_RAN_INFORMATION_ACK
-{
- OCT1                              bssgpPduType,
- RIM_Routing_Information           destination_Cell_Identifier,
- RIM_Routing_Information           source_Cell_Identifier,
- RAN_Information_Ack_RIM_Container rIM_Container
-} with { variant "PRESENCE(bssgpPduType = '72'O)"; };
-
-// 10.6.4
-type record PDU_BSSGP_RAN_INFORMATION_ERROR
-{
- OCT1                              bssgpPduType,
- RIM_Routing_Information           destination_Cell_Identifier,
- RIM_Routing_Information           source_Cell_Identifier,
- RAN_Information_Error_RIM_Container  rIM_Container
-} with { variant "PRESENCE(bssgpPduType = '73'O)"; };
-
-// 10.6.5
-type record PDU_BSSGP_RAN_INFORMATION_APPLICATION_ERROR
-{
- OCT1                              bssgpPduType,
- RIM_Routing_Information           destination_Cell_Identifier,
- RIM_Routing_Information           source_Cell_Identifier,
- RAN_Information_Application_Error_RIM_Container  rIM_Container
-} with { variant "PRESENCE(bssgpPduType = '74'O)"; };
-
-// 10.7.1
-type record PDU_BSSGP_MBMS_SESSION_START_REQUEST
-{
- OCT1                        bssgpPduType,
- TMGI_BSSGP                  tMGI,
- MBMS_Session_Identity       mBMS_Session_Identity optional,
- ABQP                        aBQP,
- MBMS_Service_Area_Identity_List   mBMS_Service_Area_Identity_List,
- MBMS_Routing_Area_List      mBMS_Routing_Area_List,
- MBMS_Session_Duration       mBMS_Session_Duration,
- MBMS_Session_Information    mBMS_Session_Information,
- Time_To_MBMS_Data_Transfer  time_To_MBMS_Data_Transfer,
- Priority_BSSGP              allocation_Retention_Priority optional,
- MBMS_Session_Repetition_Number  mBMS_Session_Repetition_Number optional
-} with { variant "PRESENCE(bssgpPduType = '80'O)"; };
-
-// 10.7.2
-type record PDU_BSSGP_MBMS_SESSION_START_RESPONSE
-{
- OCT1                        bssgpPduType,
- TMGI_BSSGP                  tMGI,
- MBMS_Session_Identity       mBMS_Session_Identity optional,
- MBMS_Response               mBMS_Response
-} with { variant "PRESENCE(bssgpPduType = '81'O)"; };
-
-// 10.7.3
-type record PDU_BSSGP_MBMS_SESSION_STOP_REQUEST
-{
- OCT1                       bssgpPduType,
- TMGI_BSSGP                 tMGI,
- MBMS_Session_Identity      mBMS_Session_Identity optional,
- MBMS_Stop_Cause            mBMS_Stop_Cause
-} with { variant "PRESENCE(bssgpPduType = '82'O)"; };
-
-// 10.7.4
-type record PDU_BSSGP_MBMS_STOP_RESPONSE
-{
- OCT1                              bssgpPduType,
- TMGI_BSSGP                        tMGI,
- MBMS_Session_Identity             mBMS_Session_Identity optional,
- MBMS_Response                     mBMS_Response
-} with { variant "PRESENCE(bssgpPduType = '83'O)"; };
-
-
-// 10.7.5
-type record PDU_BSSGP_SESSION_UPDATE_REQUEST
-{
- OCT1                            bssgpPduType,
- TMGI_BSSGP                      tMGI,
- MBMS_Session_Identity           mBMS_Session_Identity optional,
- ABQP                            aBQP,
- MBMS_Service_Area_Identity_List mBMS_Service_Area_Identity_List,
- MBMS_Routing_Area_List          mBMS_Routing_Area_List,
- MBMS_Session_Duration           mBMS_Session_Duration,
- MBMS_Session_Information        mBMS_Session_Information,
- Time_To_MBMS_Data_Transfer      time_To_MBMS_Data_Transfer, 
- Priority_BSSGP                  allocation_Retention_Priority optional,
- MBMS_Session_Repetition_Number  mBMS_Session_Repetition_Number optional  
-} with { variant "PRESENCE(bssgpPduType = '84'O)"; };
-
-
-// 10.7.6
-type record PDU_BSSGP_SESSION_UPDATE_RESPONSE
-{
- OCT1                            bssgpPduType,
- TMGI_BSSGP                      tMGI,
- MBMS_Session_Identity           mBMS_Session_Identity optional, 
- MBMS_Response                   mBMS_Response 
-} with { variant "PRESENCE(bssgpPduType = '85'O)"; };
-
-
-
-type union PDU_BSSGP
-{
-
-  PDU_BSSGP_DL_UNITDATA                   pDU_BSSGP_DL_UNITDATA,
-  PDU_BSSGP_UL_UNITDATA                   pDU_BSSGP_UL_UNITDATA,
-  PDU_BSSGP_RA_CAPABILITY                 pDU_BSSGP_RA_CAPABILITY,
-  PDU_BSSGP_DL_MBMS_UNITDATA              pDU_BSSGP_DL_MBMS_UNITDATA,
-  PDU_BSSGP_UL_MBMS_UNITDATA              pDU_BSSGP_UL_MBMS_UNITDATA,
-  PDU_BSSGP_PAGING_PS                     pDU_BSSGP_PAGING_PS,
-  PDU_BSSGP_PAGING_CS                     pDU_BSSGP_PAGING_CS,
-  PDU_BSSGP_RA_CAPABILITY_UPDATE          pDU_BSSGP_RA_CAPABILITY_UPDATE,
-  PDU_BSSGP_RA_CAPABILITY_UPDATE_ACK      pDU_BSSGP_RA_CAPABILITY_UPDATE_ACK,
-  PDU_BSSGP_RADIO_STATUS                  pDU_BSSGP_RADIO_STATUS,
-  PDU_BSSGP_SUSPEND                       pDU_BSSGP_SUSPEND,
-  PDU_BSSGP_SUSPEND_ACK                   pDU_BSSGP_SUSPEND_ACK,
-  PDU_BSSGP_SUSPEND_NACK                  pDU_BSSGP_SUSPEND_NACK,
-  PDU_BSSGP_RESUME                        pDU_BSSGP_RESUME,
-  PDU_BSSGP_RESUME_ACK                    pDU_BSSGP_RESUME_ACK,
-  PDU_BSSGP_RESUME_NACK                   pDU_BSSGP_RESUME_NACK,
-  PDU_BSSGP_PAGING_PS_REJECT              pDU_BSSGP_PAGING_PS_REJECT,
-  PDU_BSSGP_DUMMY_PAGING_PS               pDU_BSSGP_DUMMY_PAGING_PS,
-  PDU_BSSGP_DUMMY_PAGING_PS_RESPONSE      pDU_BSSGP_DUMMY_PAGING_PS_RESPONSE,
-  PDU_BSSGP_MS_REGISTRATION_ENQUIRY_RESPONSE pDU_BSSGP_MS_REGISTRATION_ENQUIRY_RESPONSE,
-  PDU_BSSGP_MS_REGISTRATION_ENQUIRY       pDU_BSSGP_MS_REGISTRATION_ENQUIRY,
-  PDU_BSSGP_FLUSH_LL                      pDU_BSSGP_FLUSH_LL,
-  PDU_BSSGP_FLUSH_LL_ACK                  pDU_BSSGP_FLUSH_LL_ACK,
-  PDU_BSSGP_LLC_DISCARDED                 pDU_BSSGP_LLC_DISCARDED,
-  PDU_BSSGP_FLOW_CONTROL_BVC              pDU_BSSGP_FLOW_CONTROL_BVC,
-  PDU_BSSGP_FLOW_CONTROL_BVC_ACK          pDU_BSSGP_FLOW_CONTROL_BVC_ACK,
-  PDU_BSSGP_FLOW_CONTROL_MS               pDU_BSSGP_FLOW_CONTROL_MS,
-  PDU_BSSGP_FLOW_CONTROL_MS_ACK           pDU_BSSGP_FLOW_CONTROL_MS_ACK,
-  PDU_BSSGP_FLOW_CONTROL_PFC              pDU_BSSGP_FLOW_CONTROL_PFC,
-  PDU_BSSGP_FLOW_CONTROL_PFC_ACK          pDU_BSSGP_FLOW_CONTROL_PFC_ACK,
-  PDU_BSSGP_STATUS                        pDU_BSSGP_STATUS,
-  PDU_BSSGP_BVC_BLOCK                     pDU_BSSGP_BVC_BLOCK,
-  PDU_BSSGP_BVC_BLOCK_ACK                 pDU_BSSGP_BVC_BLOCK_ACK,
-  PDU_BSSGP_BVC_UNBLOCK                   pDU_BSSGP_BVC_UNBLOCK,
-  PDU_BSSGP_BVC_UNBLOCK_ACK               pDU_BSSGP_BVC_UNBLOCK_ACK,
-  PDU_BSSGP_BVC_RESET                     pDU_BSSGP_BVC_RESET,
-  PDU_BSSGP_BVC_RESET_ACK                 pDU_BSSGP_BVC_RESET_ACK,
-  PDU_BSSGP_SGSN_INVOKE_TRACE             pDU_BSSGP_SGSN_INVOKE_TRACE,
-  PDU_BSSGP_DOWNLOAD_BSS_PFC              pDU_BSSGP_DOWNLOAD_BSS_PFC,
-  PDU_BSSGP_CREATE_BSS_PFC                pDU_BSSGP_CREATE_BSS_PFC,
-  PDU_BSSGP_CREATE_BSS_PFC_ACK            pDU_BSSGP_CREATE_BSS_PFC_ACK,
-  PDU_BSSGP_CREATE_BSS_PFC_NACK           pDU_BSSGP_CREATE_BSS_PFC_NACK,
-  PDU_BSSGP_MODIFY_BSS_PFC                pDU_BSSGP_MODIFY_BSS_PFC,
-  PDU_BSSGP_MODIFY_BSS_PFC_ACK            pDU_BSSGP_MODIFY_BSS_PFC_ACK,
-  PDU_BSSGP_DELETE_BSS_PFC                pDU_BSSGP_DELETE_BSS_PFC,
-  PDU_BSSGP_DELETE_BSS_PFC_ACK            pDU_BSSGP_DELETE_BSS_PFC_ACK,
-  PDU_BSSGP_DELETE_BSS_PFC_REQ            pDU_BSSGP_DELETE_BSS_PFC_REQ,
-  PDU_BSSGP_PS_HANDOVER_REQUIRED          pDU_BSSGP_PS_HANDOVER_REQUIRED,
-  PDU_BSSGP_PS_HANDOVER_REQUIRED_ACK      pDU_BSSGP_PS_HANDOVER_REQUIRED_ACK,
-  PDU_BSSGP_PS_HANDOVER_REQUIRED_NACK     pDU_BSSGP_PS_HANDOVER_REQUIRED_NACK,
-  PDU_BSSGP_PS_HANDOVER_REQUEST           pDU_BSSGP_PS_HANDOVER_REQUEST,
-  PDU_BSSGP_PS_HANDOVER_REQUEST_ACK       pDU_BSSGP_PS_HANDOVER_REQUEST_ACK, 
-  PDU_BSSGP_PS_HANDOVER_REQUEST_NACK      pDU_BSSGP_PS_HANDOVER_REQUEST_NACK,
-  PDU_BSSGP_PS_HANDOVER_COMPLETE          pDU_BSSGP_PS_HANDOVER_COMPLETE,
-  PDU_BSSGP_PS_HANDOVER_COMPLETE_ACK      pDU_BSSGP_PS_HANDOVER_COMPLETE_ACK,
-  PDU_BSSGP_PS_HANDOVER_CANCEL            pDU_BSSGP_PS_HANDOVER_CANCEL,
-  PDU_BSSGP_OVERLOAD                      pDU_BSSGP_OVERLOAD,
-  PDU_BSSGP_PERFORM_LOCATION_REQUEST      pDU_BSSGP_PERFORM_LOCATION_REQUEST,
-  PDU_BSSGP_PERFORM_LOCATION_RESPONSE     pDU_BSSGP_PERFORM_LOCATION_RESPONSE,
-  PDU_BSSGP_PERFORM_LOCATION_ABORT        pDU_BSSGP_PERFORM_LOCATION_ABORT,
-  PDU_BSSGP_POSITION_COMMAND              pDU_BSSGP_POSITION_COMMAND,
-  PDU_BSSGP_POSITION_RESPONSE             pDU_BSSGP_POSITION_RESPONSE,
-  PDU_BSSGP_RAN_INFORMATION               pDU_BSSGP_RAN_INFORMATION,
-  PDU_BSSGP_RAN_INFORMATION_REQUEST       pDU_BSSGP_RAN_INFORMATION_REQUEST,
-  PDU_BSSGP_RAN_INFORMATION_ACK           pDU_BSSGP_RAN_INFORMATION_ACK,
-  PDU_BSSGP_RAN_INFORMATION_ERROR         pDU_BSSGP_RAN_INFORMATION_ERROR,
-  PDU_BSSGP_RAN_INFORMATION_APPLICATION_ERROR  
-                                    pDU_BSSGP_RAN_INFORMATION_APPLICATION_ERROR,
-  PDU_BSSGP_MBMS_SESSION_START_REQUEST    pDU_BSSGP_MBMS_SESSION_START_REQUEST,
-  PDU_BSSGP_MBMS_SESSION_START_RESPONSE   pDU_BSSGP_MBMS_SESSION_START_RESPONSE,
-  PDU_BSSGP_MBMS_SESSION_STOP_REQUEST     pDU_BSSGP_MBMS_SESSION_STOP_REQUEST,
-  PDU_BSSGP_MBMS_STOP_RESPONSE            pDU_BSSGP_MBMS_STOP_RESPONSE,
-  PDU_BSSGP_SESSION_UPDATE_REQUEST        pDU_BSSGP_SESSION_UPDATE_REQUEST,
-  PDU_BSSGP_SESSION_UPDATE_RESPONSE       pDU_BSSGP_SESSION_UPDATE_RESPONSE,
-  octetstring                             pDU_BSSGP_unknown
-} with { variant "" };
-
-}  with {encode "RAW"} // end of module
diff --git a/BSSMAP_v11.2.0_CNL113761_LATEST/BSSMAP_v11.2.0_CNL113761.tpd b/BSSMAP_v11.2.0_CNL113761_LATEST/BSSMAP_v11.2.0_CNL113761.tpd
deleted file mode 100644
index da7ed53..0000000
--- a/BSSMAP_v11.2.0_CNL113761_LATEST/BSSMAP_v11.2.0_CNL113761.tpd
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright Test Competence Center (TCC) ETH 2012
-
-  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) has been supplied.
-
-
-   File:               BSSMAP_v11.2.0_CNL113761.tpd
-   Description:        tpd project file
-   Rev:                R1A01
-   Prodnr:             CNL 113 761
-   Updated:            2012-11-09
-   Contact:            http://ttcn.ericsson.se
-
- -->
-<TITAN_Project_File_Information version="1.0">
-  <ProjectName>BSSMAP_v11.2.0_CNL113761</ProjectName>
-  <ReferencedProjects>
-    <ReferencedProject name="ProtocolModules_Common" projectLocationURI="../COMMON/ProtocolModules_Common.tpd"/>
-  </ReferencedProjects>
-  <Folders>
-    <FolderResource projectRelativePath="doc" relativeURI="doc"/>
-    <FolderResource projectRelativePath="src" relativeURI="src"/>
-  </Folders>
-  <Files>
-    <FileResource projectRelativePath="doc/BSSMAP_v11.2.0_CNL113761_FS.pdf" relativeURI="/doc/BSSMAP_v11.2.0_CNL113761_FS.pdf"/>
-    <FileResource projectRelativePath="doc/BSSMAP_v11.2.0_CNL113761_PRI.pdf" relativeURI="/doc/BSSMAP_v11.2.0_CNL113761_PRI.pdf"/>
-    <FileResource projectRelativePath="doc/BSSMAP_v11.2.0_CNL113761_UG.pdf" relativeURI="/doc/BSSMAP_v11.2.0_CNL113761_UG.pdf"/>
-    <FileResource projectRelativePath="src/BSSAP_Types.ttcn" relativeURI="/src/BSSAP_Types.ttcn"/>
-  </Files>
-  <ActiveConfiguration>Default</ActiveConfiguration>
-  <Configurations>
-    <Configuration name="Default">
-      <ProjectProperties>
-        <MakefileSettings>
-          <generateInternalMakefile>true</generateInternalMakefile>
-          <GNUMake>true</GNUMake>
-          <incrementalDependencyRefresh>true</incrementalDependencyRefresh>
-          <targetExecutable>bin/BSSMAP_v11.2.0_CNL113761</targetExecutable>
-          <buildLevel>Level 3 - Creating object files with dependency update</buildLevel>
-        </MakefileSettings>
-        <LocalBuildSettings>
-          <workingDirectory>bin</workingDirectory>
-        </LocalBuildSettings>
-      </ProjectProperties>
-      <FolderProperties>
-        <FolderResource>
-          <FolderPath>doc</FolderPath>
-          <FolderProperties>
-            <ExcludeFromBuild>true</ExcludeFromBuild>
-          </FolderProperties>
-        </FolderResource>
-      </FolderProperties>
-    </Configuration>
-  </Configurations>
-</TITAN_Project_File_Information>
diff --git a/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_FS.pdf b/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_FS.pdf
deleted file mode 100644
index ee85895..0000000
--- a/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_FS.pdf
+++ /dev/null
Binary files differ
diff --git a/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_PRI.pdf b/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_PRI.pdf
deleted file mode 100644
index 5958170..0000000
--- a/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_PRI.pdf
+++ /dev/null
Binary files differ
diff --git a/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_UG.pdf b/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_UG.pdf
deleted file mode 100644
index a5c8641..0000000
--- a/BSSMAP_v11.2.0_CNL113761_LATEST/doc/BSSMAP_v11.2.0_CNL113761_UG.pdf
+++ /dev/null
Binary files differ
diff --git a/BSSMAP_v11.2.0_CNL113761_LATEST/src/BSSAP_Types.ttcn b/BSSMAP_v11.2.0_CNL113761_LATEST/src/BSSAP_Types.ttcn
deleted file mode 100644
index 8c8b5dd..0000000
--- a/BSSMAP_v11.2.0_CNL113761_LATEST/src/BSSAP_Types.ttcn
+++ /dev/null
@@ -1,2984 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2012                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               BSSAP_Types.ttcn
-//  Rev:                R1A01
-//  Prodnr:             CNL 113 761
-//  Updated:            2012-10-30
-//  Contact:            http://ttcn.ericsson.se
-
-module  BSSAP_Types {
-
-// This module contains the type definitions and encoding attributes for
-// Base Station System. The signalling protocol reference model is based
-// on 48.008 V11.2.0 Figure 1.
-// 
-//    ------------------------------ 
-//    |  BSSAP                      |
-//    |                             |
-//    |  -------------------------  |   BSSMAP layer is defined in 48.008 v11.2.0
-//    |  |         |             |  |
-//    |  |  DTAP   |   BSSMAP    |  |
-//    |  |         |             |  |
-//    |  -------------------------  |
-//    |  | Distribution Function |  |
-//    |=============================|
-//    |          SCCP               |
-//    ------------------------------ 
-
-
-import from General_Types all;
-
-external function enc_PDU_BSSAP(in PDU_BSSAP pdu) return octetstring
-with { extension "prototype(convert) encode(RAW)" }
-external function dec_PDU_BSSAP(in octetstring stream) return PDU_BSSAP
-with { extension "prototype(convert) decode(RAW)" }
-
-external function enc_PDU_BSSAP_fast(in PDU_BSSAP pdu, out octetstring stream)
-with { extension "prototype(fast) encode(RAW)" }
-external function dec_PDU_BSSAP_backtrack(in octetstring stream, out PDU_BSSAP pdu) return integer
-with { extension "prototype(backtrack) decode(RAW)" }
-
-///////////////////////////////////////////
-//   BSSMAP information element definition
-///////////////////////////////////////////
-
-// Circuit Identity Code - 48.008 subclause 3.2.2.2 
-type record BSSMAP_IE_CircuitIdentityCode
-{
-  OCT1   elementIdentifier, // '01'O
-  OCT1   cicHigh,           // CIC = 11 bits of used  information 
-  OCT1   cicLow             //             (last 5 bits not used)
-} with { variant "PRESENCE (elementIdentifier = '01'O)" }
-
-
-// Connection Release Requested - 48.008 subclause 3.2.2.3
-type record BSSMAP_IE_ConnectionReleaseRequested
-{
-  OCT1   elementIdentifier  // '36'O
-} with { variant "PRESENCE (elementIdentifier = '36'O)" }
-
-
-// Resource Available - 48.008 subclause 3.2.2.4
-type record BSSMAP_IE_ResourceAvailable
-{  
-  OCT1   elementIdentifier, // '03'O
-  OCT4   band1,
-  OCT4   band2,
-  OCT4   band3,
-  OCT4   band4,
-  OCT4   band5 
-} with { variant "PRESENCE (elementIdentifier = '03'O)" }
-
-// Cause - 48.008 subclause 3.2.2.5 
-type record BSSMAP_IE_Cause
-{
-  OCT1   elementIdentifier, // '04'O
-  INT1   lengthIndicator, 
-  BIT7   causeValue,
-  BIT1   extensionCauseValue,
-  OCT1   spare1 optional
-} with { variant "PRESENCE (elementIdentifier = '04'O)"
-  variant (lengthIndicator) 
-  "LENGTHTO (causeValue,extensionCauseValue,spare1)";
-  variant (spare1) "PRESENCE(extensionCauseValue = '1'B)"}
-
-// IMSI - 48.008 subclause 3.2.2.6 
-type record BSSMAP_IE_IMSI
-{
-  OCT1   elementIdentifier, // '08'O
-  INT1   lengthIndicator,  
-  BIT3   typeOfIdentity,
-  BIT1   oddEvenIndicator,  // '0'B even / 1'B odd number of identity digits   
-  HEX5_16  digits           // if nr of digits is even, the last digit: '1111'B
-} with { variant "PRESENCE (elementIdentifier = '08'O)"
-  variant (lengthIndicator) 
-  "LENGTHTO (typeOfIdentity,oddEvenIndicator,digits)";
-  variant "PADDING(yes),PADDING_PATTERN('1'B)"}
-
-
-// TMSI - 48.008 subclause 3.2.2.7 
-type record BSSMAP_IE_TMSI
-{
-  OCT1   elementIdentifier, // '09'O
-  INT1   lengthIndicator,
-  OCT4   tmsiOctets        // octets 3-6 in real
-} with { variant "PRESENCE (elementIdentifier = '09'O)"
-  variant (lengthIndicator) "LENGTHTO (tmsiOctets)"}
-
-
-// Number Of MSs - 48.008 subclause 3.2.2.8 
-type record BSSMAP_IE_NumberOfMSs
-{
-  OCT1   elementIdentifier, // '0E'O
-  OCT1   NrOfHoCandidates
-}
-
-
-// Layer 3 Header Info - 48.008 subclause 3.2.2.9 
-type record BSSMAP_IE_Layer3HeaderInfo
-{
-  OCT1   elementIdentifier, //'07'O
-  INT1   lengthIndicator,   //'02'O
-  BIT4   pd,                // '0110'B
-  BIT4   spare1_4,          // '0000'B
-  BIT4   ti,                // '0000'B
-  BIT4   spare2_4           // '0000'B
-} with { variant "PRESENCE (elementIdentifier = '07'O)"
-  variant (lengthIndicator) "LENGTHTO (pd, spare1_4, ti, spare2_4)" }
-
-
-// Encryption Information - 48.008 subclause 3.2.2.10 
-type record BSSMAP_IE_EncryptionInformation
-{
-  OCT1   elementIdentifier,  // '0A'O
-  INT1   lengthIndicator,    // 1..9
-  OCT1   permittedAlgorithms,//        '1'B  encryption  no 
-  //       '0' B  GSM A5/1 not useable
-  //       '1' B  GSM A5/useable  1 
-  //      '0' B   GSM A5/2 not useable
-  //      '1' B   GSM A5/useable  2 
-  //     '0' B    GSM A5/3 not useable
-  //     '1' B    GSM A5/useable  3 
-  //    '0' B     GSM A5/4 not useable
-  //    '1' B     GSM A5/useable  4 
-  //   '0' B      GSM A5/5 useable  not 
-  //   '1' B      GSM A5/useable  5 
-  //  '0' B       GSM A5/6 useable  not 
-  //  '1' B       GSM A5/useable  6  
-  // '0' B        GSM A5/7 useable  not 
-  // '1' B        GSM A5/useable  7  
-  OCT8   key optional
-} with { variant "PRESENCE (elementIdentifier = '0A'O)"
-  variant (lengthIndicator) "LENGTHTO (permittedAlgorithms, key)" }
-
-
-// Channel Type - 48.008 subclause 3.2.2.11 
-type record BSSMAP_IE_ChannelType
-{
-  OCT1   elementIdentifier,      //'0B'O
-  INT1   lengthIndicator,        // 3..8
-  BIT4   speechOrDataIndicator,  //'0001'B Speech,'0010'B Data '0011'B Sign
-  BIT4   spare1_4,               // '0000'B
-  OCT1   channelRateAndType,     //  
-  octetstring  speechId_DataIndicator
-} with {variant (lengthIndicator) "LENGTHTO (speechOrDataIndicator,
-  spare1_4, channelRateAndType, speechId_DataIndicator)" }
-
-
-// Periodicity - 48.008 subclause 3.2.2.12 
-type record BSSMAP_IE_Periodicity
-{
-  OCT1   elementIdentifier,  //'0C'O
-  OCT1   periodicity
-}
-
-
-// Extended Resource Indicator - 48.008 subclause 3.2.2.13 
-type record BSSMAP_IE_ExtendedResourceInd
-{
-  OCT1   elementIdentifier,  //'0D'O
-  BIT1   TARR,
-  BIT1   SM,
-  BIT6   spare
-} with { variant "PRESENCE (elementIdentifier = '0D'O)" }
-
-
-// Total Resource Accessible - 48.008 subclause 3.2.2.14 
-type record BSSMAP_IE_TotalResourceAccessible
-{
-  OCT1   elementIdentifier,  //'22'O
-  OCT2   nrOfFullRateCh,
-  OCT2   nrOfHalfRateCh
-} with { variant "PRESENCE (elementIdentifier = '22'O)" }
-
-
-// LSA Identifier - 48.008 subclause 3.2.2.15
-type record BSSMAP_IE_LSAIdentifier
-{
-  OCT1   elementIdentifier,  //'3B'O
-  INT1   lengthIndicator,    // 3
-  BSSMAP_FIELD_LSAId lSAID
-} with { variant "PRESENCE (elementIdentifier = '3B'O)"
-  variant (lengthIndicator) "LENGTHTO (lSAID)"}
-
-type record BSSMAP_FIELD_LSAId
-{
-  OCT1   lSAID,
-  OCT1   lSAIDcont1,
-  OCT1   lSAIDcont2
-}
-
-
-// LSA Identifier List - 48.008 subclause 3.2.2.16
-type record BSSMAP_IE_LSAIdentifierList
-{
-  OCT1   elementIdentifier,  //'3C'O
-  INT1   lengthIndicator,    
-  BIT1   EP,
-  BIT7   spare,
-  BSSMAP_FIELD_LSAIdList   lSAIDlist
-} with {variant (lengthIndicator) "LENGTHTO (EP,spare,lSAIDlist)"}
-
-type record of BSSMAP_FIELD_LSAId BSSMAP_FIELD_LSAIdList
-
-
-// Cell Identifier - 48.008 subclause 3.2.2.17 
-type record BSSMAP_IE_CellIdentifier
-{
-  OCT1   elementIdentifier, // '05'O
-  INT1   lengthIndicator,
-  BIT4   cellIdentifierDiscriminator,
-  BIT4   spare1_4,          // '0000'B
-  BSSMAP_FIELD_CellIdentification  cellIdentification
-} with { variant "PRESENCE (elementIdentifier = '05'O)"
-  variant (lengthIndicator)
-  "LENGTHTO(cellIdentifierDiscriminator,spare1_4,cellIdentification)";
-  variant (cellIdentification) "CROSSTAG(
-  cI_CGI,          cellIdentifierDiscriminator='0000'B;  
-  cI_LAC_CI,       cellIdentifierDiscriminator='0001'B;  
-  cI_CI,           cellIdentifierDiscriminator='0010'B;  
-  cI_noCell,       cellIdentifierDiscriminator='0011'B;     
-  cI_PLMN_LAC_RNC, cellIdentifierDiscriminator='1000'B;
-  cI_RNC,          cellIdentifierDiscriminator='1001'B;  
-  cI_LAC_RNC,      cellIdentifierDiscriminator='1010'B;
-  cI_SAI,          cellIdentifierDiscriminator='1011'B;
-  ci_LAC_RNC_CI,   cellIdentifierDiscriminator='1100'B;  
-  )"}
-
-type union  BSSMAP_FIELD_CellIdentification
-{ 
-  BSSMAP_FIELD_CellIdentification_CGI    cI_CGI,     // discriminator = '0000'B
-  BSSMAP_FIELD_CellIdentification_LAC_CI cI_LAC_CI,  // discriminator = '0001'B
-  OCT2                      		 cI_CI,      // discriminator = '0010'B
-  OCT0                      		 cI_noCell,  // discriminator = '0011'B
-  BSSMAP_FIELD_CellIdentification_PLMN_LAC_RNC  cI_PLMN_LAC_RNC,// discriminator = '1000'B
-  OCT2                             	 cI_RNC,     // discriminator = '1001'B
-  BSSMAP_FIELD_CellIdentification_LAC_RNC cI_LAC_RNC,// discriminator = '1010'B
-  BSSMAP_FIELD_CellIdentification_SAI   cI_SAI,      // discriminator = '1011'B
-  BSSMAP_FIELD_LAC_RNC_CI               ci_LAC_RNC_CI       // discriminator = '1100'B
-}
-
-type record  BSSMAP_FIELD_CellIdentification_CGI
-{
-  OCT3   mcc_mnc, 
-  OCT2   lac,
-  OCT2   ci 
-}
-
-type record  BSSMAP_FIELD_CellIdentification_LAC_CI
-{
-  OCT2   lac,
-  OCT2   ci 
-}
-
-type record  BSSMAP_FIELD_CellIdentification_LAI
-{
-  OCT3   mcc_mnc, 
-  OCT2   lac 
-}
-
-type record  BSSMAP_FIELD_CellIdentification_PLMN_LAC_RNC
-{
-  OCT3   mcc_mnc, 
-  OCT2   lac,
-  OCT2   rncId
-} 
-
-type record  BSSMAP_FIELD_CellIdentification_LAC_RNC
-{
-  OCT2   lac,
-  OCT2   rncId 
-}
-
-type record  BSSMAP_FIELD_CellIdentification_SAI
-{
-  OCT3   mcc_mnc, 
-  OCT2   lac,
-  OCT2   sac 
-}
-
-type record  BSSMAP_FIELD_LAC_RNC_CI
-{
-  OCT3   mcc_mnc, 
-  OCT2   lac,
-  OCT2   rncId,   
-  OCT2   ci   
-}
-
-
-// Cell Identifier List - 48.008 subclause 3.2.2.27 
-type record BSSMAP_IE_CellIdentifierList
-{
-  OCT1   elementIdentifier, // '1A'O
-  INT1   lengthIndicator,
-  BIT4   cellIdentifierDiscriminator, 
-  BIT4   spare1_4,          // '0000'B
-  BSSMAP_FIELD_CellIdentificationList  cellIdentificationList 
-} with { variant "PRESENCE (elementIdentifier = '1A'O)"
-  variant (lengthIndicator)
-  "LENGTHTO(cellIdentifierDiscriminator,spare1_4,cellIdentificationList)";
-  variant (cellIdentificationList) "CROSSTAG(
-  cIl_CGI,          cellIdentifierDiscriminator='0000'B;
-  cIl_LAC_CI,       cellIdentifierDiscriminator='0001'B;
-  cIl_CI,           cellIdentifierDiscriminator='0010'B;
-  cIl_noCell,       cellIdentifierDiscriminator='0011'B;
-  cIl_LAI,          cellIdentifierDiscriminator='0100'B;
-  cIl_LAC,          cellIdentifierDiscriminator='0101'B;
-  cIl_allInBSS,     cellIdentifierDiscriminator='0110'B;
-  cIl_PLMN_LAC_RNC, cellIdentifierDiscriminator='1000'B;
-  cIl_RNC,          cellIdentifierDiscriminator='1001'B;
-  cIl_LAC_RNC,      cellIdentifierDiscriminator='1010'B;)"}
-
-type union  BSSMAP_FIELD_CellIdentificationList { 
-  BSSMAP_FIELD_CellIdentificationList_CGI	cIl_CGI,   // discr. = '0000'B
-  BSSMAP_FIELD_CellIdentificationList_LAC_CI	cIl_LAC_CI,// discr. = '0001'B
-  RecordOfOCT2                  		cIl_CI,    // discr. = '0010'B
-  OCT0  					cIl_noCell,// discr. = '0011'B
-  BSSMAP_FIELD_CellIdentificationList_LAI	cIl_LAI,   // discr. = '0100'B only paging
-  RecordOfOCT2                  cIl_LAC,      // discr. = '0101'B only paging
-  OCT0  			cIl_allInBSS, // discr. = '0110'B only paging
-  BSSMAP_FIELD_CellIdentificationList_PLMN_LAC_RNC  cIl_PLMN_LAC_RNC, // discr. = '1000'B
-  RecordOfOCT2                         		cIl_RNC,    // discr. = '1001'B
-  BSSMAP_FIELD_CellIdentificationList_LAC_RNC	cIl_LAC_RNC // discr. = '1010'B
-}
-
-
-type record of OCT2
-RecordOfOCT2
-
-type record of  BSSMAP_FIELD_CellIdentification_CGI 
-BSSMAP_FIELD_CellIdentificationList_CGI
-
-type record of  BSSMAP_FIELD_CellIdentification_LAC_CI
-BSSMAP_FIELD_CellIdentificationList_LAC_CI
-
-type record of  BSSMAP_FIELD_CellIdentification_LAI
-BSSMAP_FIELD_CellIdentificationList_LAI
-
-type record of  BSSMAP_FIELD_CellIdentification_PLMN_LAC_RNC
-BSSMAP_FIELD_CellIdentificationList_PLMN_LAC_RNC
-
-type record of  BSSMAP_FIELD_CellIdentification_LAC_RNC 
-BSSMAP_FIELD_CellIdentificationList_LAC_RNC
-
-type record of  BSSMAP_FIELD_CellIdentification_SAI 
-BSSMAP_FIELD_CellIdentificationList_SAI
-
-// 3.2.2.27a    Cell Identifier List Segment
-type record BSSMAP_IE_CellIdentifierListSegment
-{
-  OCT1   elementIdentifier, // '6D'O
-  INT1   lengthIndicator,
-  BIT4   sequenceNumber, 
-  BIT4   sequenceLength,
-  BIT4   cellIdentifierDiscriminator, 
-  BIT4   spare,
-  BSSMAP_FIELD_CellIdentificationListSegment  cellIdentificationListSegment 
-} with { variant "PRESENCE (elementIdentifier = '6D'O)"
-  variant (lengthIndicator)
-  "LENGTHTO(sequenceNumber, sequenceLength, cellIdentifierDiscriminator, spare, cellIdentificationListSegment)";
-  variant (cellIdentificationListSegment) "CROSSTAG(
-  cIl_CGI,          cellIdentifierDiscriminator='0000'B;  
-  cIl_LAC_CI,       cellIdentifierDiscriminator='0001'B;  
-  cIl_CI,           cellIdentifierDiscriminator='0010'B;     
-  cIl_noCell,       cellIdentifierDiscriminator='0011'B;    
-  cIl_LAI,          cellIdentifierDiscriminator='0100'B;    
-  cIl_LAC,          cellIdentifierDiscriminator='0101'B;    
-  cIl_allInBSS,     cellIdentifierDiscriminator='0110'B;
-  cIl_MCC_MNC,      cellIdentifierDiscriminator='0111'B;)"}
-
-
-
-type union  BSSMAP_FIELD_CellIdentificationListSegment
-{
-  BSSMAP_FIELD_CellIdentificationList_CGI                cIl_CGI,      // discr. ='0000'B;
-  BSSMAP_FIELD_CellIdentificationList_LAC_CI_Segment	 cIl_LAC_CI,   // discr. ='0001'B
-  BSSMAP_FIELD_CellIdentificationList_CIL_CI_Segment     cIl_CI,       // discr. ='0010'B; 
-  OCT0                                                   cIl_noCell,   // discr. ='0011'B;    
-  BSSMAP_FIELD_CellIdentificationList_LAI                cIl_LAI,      // discr. ='0100'B;
-  RecordOfOCT2                                           cIl_LAC,      // discr. ='0101'B;
-  OCT0                                                   cIl_allInBSS, // discr. ='0101'B;
-  RecordOfOCT3                                           cIl_MCC_MNC   // discr. ='0111'B;  
-}
-
-type record BSSMAP_FIELD_CellIdentificationList_LAC_CI_Segment
-{
-  OCT3                                                 mcc_mnc, 
-  BSSMAP_FIELD_CellIdentificationList_LAC_CI           lac_ci
-}
-
-type record BSSMAP_FIELD_CellIdentificationList_CIL_CI_Segment
-{
-  OCT3                                                 mcc_mnc, 
-  OCT2                                                 lac,
-  RecordOfOCT2                                         ci
-}
-
-type record of OCT3
-RecordOfOCT3
-
-
-// 3.2.2.27b    Cell Identifier List Segment for Established Cells
-type record BSSMAP_IE_CellIdentifierListSegmentEstCells
-{
-  OCT1   elementIdentifier, // '71'O
-  INT1   lengthIndicator,
-  BIT4   cellIdentifierDiscriminator, 
-  BIT4   spare1_4,          // '0000'B
-  BSSMAP_FIELD_CellIdentificationListEstablishment  cellIdentificationListEstCells 
-} with { variant "PRESENCE (elementIdentifier = '71'O)"
-  variant (lengthIndicator)
-  "LENGTHTO(cellIdentifierDiscriminator,spare1_4,cellIdentificationListEstCells)";
-  variant (cellIdentificationListEstCells) "CROSSTAG(
-  cIl_CGI,          cellIdentifierDiscriminator='0000'B;
-  cIl_LAC_CI,       cellIdentifierDiscriminator='0001'B;
-  cIl_CI,           cellIdentifierDiscriminator='0010'B; 
-  cIl_LAI,          cellIdentifierDiscriminator='0100'B; 
-  cIl_LAC,          cellIdentifierDiscriminator='0101'B; 
-  cIl_allInBSS,     cellIdentifierDiscriminator='0110'B;
-  cIl_MCC_MNC,      cellIdentifierDiscriminator='0111'B;)"}  
-  
-  
-type union  BSSMAP_FIELD_CellIdentificationListEstablishment
-{ 
- BSSMAP_FIELD_CellIdentificationList_CGI             cIl_CGI,      // discr. = '0000'B
- BSSMAP_FIELD_CellIdentificationList_LAC_CI_Segment  cIl_LAC_CI,   // discr. = '0001'B;
- BSSMAP_FIELD_CellIdentificationList_CIL_CI_Segment  cIl_CI,       // discr. = '0010'B;
- BSSMAP_FIELD_CellIdentificationList_LAI             cIl_LAI,      // discr. = '0100'B;  
- RecordOfOCT2                                        cIl_LAC,      // discr. = '0101'B;  
- OCT0                                                cIl_allInBSS, // discr. = '0110'B;
- RecordOfOCT3                                        cIl_MCC_MNC   // discr. = '0111'B;
- }
- 
-// 3.2.2.27c 
-type record BSSMAP_IE_CellIdentifierListSegmentCellsToEst
-{
-  OCT1   elementIdentifier, // '73'O
-  INT1   lengthIndicator,
-  BIT4   cellIdentifierDiscriminator, 
-  BIT4   spare1_4,          // '0000'B
-  BSSMAP_FIELD_CellIdentificationListEstablishment  cellIdentificationListCellsToEst 
-} with { variant "PRESENCE (elementIdentifier = '72'O)"
-  variant (lengthIndicator)
-  "LENGTHTO(cellIdentifierDiscriminator,spare1_4,cellIdentificationListCellsToEst)";
-  variant (cellIdentificationListCellsToEst) "CROSSTAG(
-  cIl_CGI,          cellIdentifierDiscriminator='0000'B;
-  cIl_LAC_CI,       cellIdentifierDiscriminator='0001'B;
-  cIl_CI,           cellIdentifierDiscriminator='0010'B; 
-  cIl_LAI,          cellIdentifierDiscriminator='0100'B; 
-  cIl_LAC,          cellIdentifierDiscriminator='0101'B; 
-  cIl_allInBSS,     cellIdentifierDiscriminator='0110'B;
-  cIl_MCC_MNC,      cellIdentifierDiscriminator='0111'B;)"}   
- 
-// 3.2.2.27e 
-type record BSSMAP_IE_CellIdentifierListSegmentReleasedCellsNoUserPresent
-{
-  OCT1   elementIdentifier, // '74'O
-  INT1   lengthIndicator,
-  BIT4   cellIdentifierDiscriminator, 
-  BIT4   spare1_4,          // '0000'B
-  BSSMAP_FIELD_CellIdentificationListEstablishment  cellIdentificationListReleasedCellsNoUserPresent 
-} with { variant "PRESENCE (elementIdentifier = '74'O)"
-  variant (lengthIndicator)
-  "LENGTHTO(cellIdentifierDiscriminator,spare1_4,cellIdentificationListReleasedCellsNoUserPresent)";
-  variant (cellIdentificationListReleasedCellsNoUserPresent) "CROSSTAG(
-  cIl_CGI,          cellIdentifierDiscriminator='0000'B;
-  cIl_LAC_CI,       cellIdentifierDiscriminator='0001'B;
-  cIl_CI,           cellIdentifierDiscriminator='0010'B; 
-  cIl_LAI,          cellIdentifierDiscriminator='0100'B; 
-  cIl_LAC,          cellIdentifierDiscriminator='0101'B; 
-  cIl_allInBSS,     cellIdentifierDiscriminator='0110'B;
-  cIl_MCC_MNC,      cellIdentifierDiscriminator='0111'B;)"}   
- 
- // 3.2.2.27f 
-type record BSSMAP_IE_CellIdentifierListSegmentNotEstablishedCellsNoEstPossible
-{
-  OCT1   elementIdentifier, // '73'O
-  INT1   lengthIndicator,
-  BIT4   cellIdentifierDiscriminator, 
-  BIT4   spare1_4,          // '0000'B
-  BSSMAP_FIELD_CellIdentificationListEstablishment  cellIdentificationListNotEstablishedCellsNoEstPossible 
-} with { variant "PRESENCE (elementIdentifier = '73'O)"
-  variant (lengthIndicator)
-  "LENGTHTO(cellIdentifierDiscriminator,spare1_4,cellIdentificationListNotEstablishedCellsNoEstPossible)";
-  variant (cellIdentificationListNotEstablishedCellsNoEstPossible) "CROSSTAG(
-  cIl_CGI,          cellIdentifierDiscriminator='0000'B;
-  cIl_LAC_CI,       cellIdentifierDiscriminator='0001'B;
-  cIl_CI,           cellIdentifierDiscriminator='0010'B; 
-  cIl_LAI,          cellIdentifierDiscriminator='0100'B; 
-  cIl_LAC,          cellIdentifierDiscriminator='0101'B; 
-  cIl_allInBSS,     cellIdentifierDiscriminator='0110'B;
-  cIl_MCC_MNC,      cellIdentifierDiscriminator='0111'B;)"}   
- 
-  
-// Priority - 48.008 subclause 3.2.2.18 
-type record BSSMAP_IE_Priority
-{
-  OCT1   elementIdentifier, //'06'O
-  INT1   lengthIndicator,   //'01'O
-  BIT1   pvi,  // '0'B connection canNOT be preempted by other allocation
-  // '1'B connection might  be preempted by other allocation
-  BIT1   qa,   // '0'B queuing not allowed - '1'B queuing allowed
-  BIT4   priorityLevel, // '0000'B spare 
-  // '0001'B priority 1  level  (highest) 
-  // '1110'B priority 14  level  (lowest) 
-  // '1111'B priority used  not 
-  BIT1   pci,           // '0'B  allocation canNOT preempt connection  other 
-  // '1'B  allocation might preempt other connection 
-  BIT1   spare1_1       // '0'B
-} with { variant "PRESENCE (elementIdentifier = '06'O)"
-  variant(lengthIndicator) "LENGTHTO(pvi,qa,priorityLevel,pci,spare1_1)" }
-
-
-// Classmark Information Type 2 - 48.008 subclause 3.2.2.19 
-type record BSSMAP_IE_ClassmarkInformationType2
-{
-  OCT1   elementIdentifier,  //'12'O
-  INT1   lengthIndicator,    // '02'O or '03'O
-  BIT3   rf_PowerCapability, // '000'B class1 (for GSM+DCS+PCS)
-  // '001'B class2 (for GSM+DCS+PCS)
-  //  '010'B class3 (for GSM+DCS+PCS)
-  //  '011'class4  B  (only for GSM) 
-  //  '100'class5  B  (only for GSM) 
-  BIT1   a5_1, //encryption algorithm A5/1 available ('1'B) or not ('0'B)
-  BIT1   esind,//controlled early classmark sending implemented ('1'B) or not ('0'B)
-  BIT2   revisionLevel,      //  '00'B reserved for phase1 (GSM+DCS)
-  //  '00'B reserved  (PCS) 
-  //  '01'B used by phase2 MSs  (GSM+DCS)
-  //  '01'B used by PCS1900 MSs  phase1  (PCS) 
-  BIT1   spare1_1,     //  '0'B
-  BIT1   fc,           //  MS' support of E/R_GSM ('1'B) or not ('0'B)
-  BIT1   vgcs, // VGCS capability or notification wanted ('1'B) or not ('0'B)
-  BIT1   vbs,  // VBS capability or notification wanted ('1'B) or not ('0'B)
-  BIT1   sm_Capability, // SM capbility present ('1'B) or not ('0'B) 
-  BIT2   ss_ScreenIndicator, //  '00'B default value of phase1 (GSM+DCS)
-  //  '00'reserved  B  (PCS) 
-  //  '01'B capability of notation  ellipsis 
-  //  '10'B for future use
-  //  '11'B for use  future 
-  BIT1   ps_Capability,      // ignored, if received
-  BIT1   spare2_1,           // '0'B
-  BSSMAP_FIELD_ClassmarkInformationType2_oct5  classmarkInformationType2_oct5
-} with { variant "PRESENCE (elementIdentifier = '12'O)";
-  variant (lengthIndicator) "LENGTHTO (rf_PowerCapability, a5_1,
-  esind, revisionLevel, spare1_1, fc, vgcs, vbs, sm_Capability,
-  ss_ScreenIndicator, ps_Capability, spare2_1, 
-  classmarkInformationType2_oct5)" }
-
-// Helper type for BSSMAP Applib
-type record BSSMAP_IE_ClassmarkInformationType2_V
-{
-  BIT3   rf_PowerCapability, // '000'B class1 (for GSM+DCS+PCS)
-  // '001'B class2 (for GSM+DCS+PCS)
-  //  '010'B class3 (for GSM+DCS+PCS)
-  //  '011'class4  B  (only for GSM) 
-  //  '100'class5  B  (only for GSM) 
-  BIT1   a5_1, //encryption algorithm A5/1 available ('1'B) or not ('0'B)
-  BIT1   esind,//controlled early classmark sending implemented ('1'B) or not ('0'B)
-  BIT2   revisionLevel,      //  '00'B reserved for phase1 (GSM+DCS)
-  //  '00'B reserved  (PCS) 
-  //  '01'B used by phase2 MSs  (GSM+DCS)
-  //  '01'B used by PCS1900 MSs  phase1  (PCS) 
-  BIT1   spare1_1,     //  '0'B
-  BIT1   fc,           //  MS' support of E/R_GSM ('1'B) or not ('0'B)
-  BIT1   vgcs, // VGCS capability or notification wanted ('1'B) or not ('0'B)
-  BIT1   vbs,  // VBS capability or notification wanted ('1'B) or not ('0'B)
-  BIT1   sm_Capability, // SM capbility present ('1'B) or not ('0'B) 
-  BIT2   ss_ScreenIndicator, //  '00'B default value of phase1 (GSM+DCS)
-  //  '00'reserved  B  (PCS) 
-  //  '01'B capability of notation  ellipsis 
-  //  '10'B for future use
-  //  '11'B for use  future 
-  BIT1   ps_Capability,      // ignored, if received
-  BIT1   spare2_1,           // '0'B
-  BSSMAP_FIELD_ClassmarkInformationType2_oct5  classmarkInformationType2_oct5
-}
-
-type record BSSMAP_FIELD_ClassmarkInformationType2_oct5
-{
-  BIT1   a5_2,//encryption algorithm A5/2 available ('0'B) or not ('1'B) 
-  BIT1   a5_3,//encryption algorithm A5/3 available ('0'B) or not ('1'B) 
-  BIT1   cmsp,//"Network initiated MO CM connectionrequest" not supported ('0'B)
-  //or supported for at least one CM protocol ('1'B)
-  BIT1   solsa,// The ME support SoLSA ('1'B) or not ('0'B)
-  BIT1   ucs2, // '0'B ME has a preference for the default alphabet over UCS2
-  // '1'B ME has no preference between the use of the default
-  //   alphabet and the use of UCS2
-  BIT1   lcsvacap, // LCS value added location request notification capability
-  // supported ('1'B) or not ('0'B)
-  BIT1   spare,// '0'B
-  BIT1   cm3   // '0'B Any additional capability info ('1'B) or not ('0'B)
-}
-
-
-// Classmark Information Type 3 - 48.008 subclause 3.2.2.20
-type record BSSMAP_IE_ClassmarkInformationType3
-{
-  OCT1   elementIdentifier, //'13'O
-  INT1   lengthIndicator,  // '01'O .. '0C'O
-  OCT1_32  classmark3ValuePart
-} with { variant "PRESENCE (elementIdentifier = '13'O)"
-  variant (lengthIndicator) "LENGTHTO (classmark3ValuePart)"}
-
-
-// Interference Band To Be Used - 48.008 subclause 3.2.2.21
-type record BSSMAP_IE_InterferenceBandToBeUsed
-{
-  OCT1   elementIdentifier, // '14'O
-  BIT5   band,
-  BIT3   spare
-} with { variant "PRESENCE (elementIdentifier = '14'O)" }
-
-
-// RR Cause - 48.008 subclause 3.2.2.22 
-type record BSSMAP_IE_RR_Cause
-{
-  OCT1   elementIdentifier, // '15'O
-  OCT1   rr_Cause
-} with { variant "PRESENCE (elementIdentifier = '15'O)" }
-
-
-// LSA Information - 48.008 subclause 3.2.2.23 
-type record BSSMAP_IE_LSAInformation
-{
-  OCT1   elementIdentifier, //'3D'O
-  INT1   lengthIndicator,
-  BIT1   lSAonly,
-  BIT7   spare,  
-  BSSMAP_FIELD_LSAIdAttrib_List  lSAIdAttrib_List 
-} with { variant "PRESENCE (elementIdentifier = '3D'O)"
-  variant (lengthIndicator) "LENGTHTO (lSAonly,spare,lSAIdAttrib_List)" }
-    
-type record BSSMAP_FIELD_LSAIdAttrib  
-{
- BIT4           priority,
- BIT1           pref,
- BIT1           act,
- BIT2           spare
-}  
- 
-type record of BSSMAP_FIELD_LSAIdAttrib BSSMAP_FIELD_LSAIdAttrib_List  
-
-
-// Layer 3 Information - 48.008 subclause 3.2.2.24
-type record BSSMAP_IE_Layer3Information
-{
-  OCT1   elementIdentifier, // '17'O
-  INT1   lengthIndicator,
-  octetstring layer3info
-} with { variant "PRESENCE (elementIdentifier = '17'O)"
-  variant (lengthIndicator) "LENGTHTO (layer3info)"}
-
-// DLCI - 48.008 subclause 3.2.2.25    (48006 v8.0.0 section 9.3.2)
-type record BSSMAP_IE_DLCI
-{
-  OCT1   elementIdentifier, // '18'O
-  BIT3   sapiValue, // '011'O Short Message Signalling  Service 
-  BIT3   spare,
-  BIT1   c1,
-  BIT1   c2 
-}
-
-
-// Downlink DTX Flag - 48.008 subclause 3.2.2.26 
-type record BSSMAP_IE_DownLinkDTXFlag
-{
-  OCT1   elementIdentifier, // '19'O
-  BIT1   dtx,     // DTX is disabled ('0'B) or enabled ('1'B) to downlink 
-  BIT7   spare1_7 // '0000000'B
-} with { variant "PRESENCE (elementIdentifier = '19'O)" }
-
-
-// Cell Identifier List - 48.008 subclause 3.2.2.27 
-// See above under Cell Identifier
-
-
-// Response Request - 48.008 subclause 3.2.2.28 
-type record BSSMAP_IE_ResponseRequest
-{
-  OCT1   elementIdentifier // '1B'O
-}  with { variant "PRESENCE (elementIdentifier = '1B'O)" }
-
-
-//  Resource Indication Method - 48.008 subclause 3.2.2.29
-type record BSSMAP_IE_ResourceIndMethod
-{
-  OCT1   elementIdentifier, // '1C'O
-  BIT4   resourceIndMethod,
-  BIT4   spare
-}
-
-
-// Classmark Information Type 1 - 48.008 subclause 3.2.2.30 
-type record BSSMAP_IE_ClassmarkInformationType1
-{
-  OCT1   elementIdentifier,  // '1D'O
-  BIT3   rf_PowerCapability, // '000'B class1 (for GSM+DCS+PCS)
-                             // '001'B class2 (for GSM+DCS+PCS)
-                             // '010'B class3 (for GSM+DCS+PCS)
-                             // '011'class4  B  (only for GSM) 
-                             // '100'class5  B  (only for GSM) 
-  BIT1   a5_1,               //encryption algorithm A5/1 available ('1'B) or not ('0'B)
-  BIT1   esind,              //controlled early classmark sending implemented (1) or not (0)
-  BIT2   revisionLevel,
-  BIT1   spare1_1   // '0'B
-} with { variant "PRESENCE(elementIdentifier = '1D'O)" }
-
-// Circuit Identity Code List - 48.008 subclause 3.2.2.31 
-type record BSSMAP_IE_CircuitIdentityCodeList
-{
-  OCT1   elementIdentifier, // '1E'O
-  INT1   lengthIndicator,
-  OCT1   range,   // A number in binary representation ranging from 2 to 255
-  OCTN   status   // status data of lengthIndicator 1_32    
-} with { variant "PRESENCE(elementIdentifier = '1E'O)"
-  variant (lengthIndicator) "LENGTHTO (range, status)" } ;
-
-
-// Diagnostics - 48.008 subclause 3.2.2.32 
-type record BSSMAP_IE_Diagnostics
-{
-  OCT1   elementIdentifier, // '1F'O
-  INT1   lengthIndicator,
-  OCT1   errorLocation,     // First octet of Error pointer
-  BIT4   bitPointer,
-  BIT4   spare,
-  OCTN   messageReceived   // The errorneous message   
-} with {variant (lengthIndicator) 
-  "LENGTHTO (errorLocation, bitPointer, spare, messageReceived)" } ;
-
-
-// Chosen Channel - 48.008 subclause 3.2.2.33 
-type record BSSMAP_IE_ChosenChannel
-{
-  OCT1   elementIdentifier,  // '21'O
-  BIT4   channel, 
-  BIT4   channelMode  
-} with { variant "PRESENCE (elementIdentifier = '21'O)" }
-
-
-// Cipher Response Mode - 48.008 subclause 3.2.2.34 
-type record BSSMAP_IE_CipherResponseMode
-{
-  OCT1   elementIdentifier,     // '23'O
-  BIT1   cipherResponseModeInfo,//IMEISV must be included by MS ('0') or not (1)
-  BIT7   spare1_7               // '0000000'B       
-} with { variant "PRESENCE (elementIdentifier = '23'O)" }
-
-
-// Layer 3 Message contents - 48.008 subclause 3.2.2.35
-type record BSSMAP_IE_Layer3MessageContents
-{
-  OCT1   elementIdentifier, // '20'O
-  INT1   lengthIndicator,
-  octetstring layer3MsgConents
-} with { variant "PRESENCE (elementIdentifier = '20'O)"
-  variant (lengthIndicator) "LENGTHTO (layer3MsgConents)"}
-
-
-// Channel Needed - 48.008 subclause 3.2.2.36 
-type record BSSMAP_IE_ChannelNeeded
-{
-  OCT1   elementIdentifier,     // '24'O
-  BIT2   channel, //00:any, 01:SDCCH, 10:Full TCH, 11:Dual TCH
-  BIT6   spare     
-} with { variant "PRESENCE (elementIdentifier = '24'O)" }
-
-
-// Trace Type - 48.008 subclause 3.2.2.37 
-type record BSSMAP_IE_TraceType
-{
-  OCT1   elementIdentifier, // '25'O
-  BIT2   e,//  Event  Invoking  
-  //  '00'B:  Mobile Originated Call, Mobile Call  Terminated,
-  //          Short Message Service Mobile Originated, Short
-  //          Message Service Mobile Terminated, Independent  Call 
-  //          Supplementary Services, Updates  Location,
-  //          IMSI attach, detach  IMSI 
-  //  '01'B:   Mobile Originated Call, Mobile Call  Terminated,
-  //           Short Message Service Mobile Originated, Short
-  //           Message Service Mobile Terminated, Independent  Call 
-  //           Supplementary Services only
-  //  '10'B:   Location Updates, IMSI attach, IMSI only  detach       
-  //  '11'B:   Operator definable 
-  BIT2   d,//  MSC Type  Record  
-  //  '00'B:   Basic 
-  //  '01'B:   Detailed (Optional)   
-  //  '00'B:   Spare 
-  //  '00'B:   No Trace  MSC 
-  BIT2   c,//  BSS Type  Record 
-  //  '00'B:   Basic 
-  //  '01'B:   Handover
-  //  '00'B:   Radio
-  //  '00'B:   No Trace  BSS   
-  BIT1   b,//  For expansion  future 
-  //  Set to '0'B
-  BIT1   a //  Priority Indication
-  //  '0'B:   Priority  No  
-  //  '1'B:   Priority
-}
-
-
-// Trigger ID - 48.008 subclause 3.2.2.38 
-type record BSSMAP_IE_TriggerId
-{
-  OCT1   elementIdentifier, //'26'O
-  INT1   lengthIndicator,
-  octetstring entityIdentity length(1..20)
-} with { variant "PRESENCE (elementIdentifier = '26'O)"
-  variant (lengthIndicator) "LENGTHTO (entityIdentity)" }
-
-
-// Trace Reference - 48.008 subclause 3.2.2.39
-type record BSSMAP_IE_TraceReference
-{
-  OCT1  elementIdentifier, // '27'O
-  OCT1  msb_TraceReference, // the most significant bit of trace reference  
-  OCT1  lsb_TraceReference  // the least significant bit of trace reference 
-} with { variant "PRESENCE (elementIdentifier = '27'O)" }
-
-
-// Transaction ID - 48.008 subclause 3.2.2.40 
-type record BSSMAP_IE_TransactionId
-{
-  OCT1   elementIdentifier, //'28'O
-  INT1   lengthIndicator,
-  octetstring transactionNumber length(1..2)
-} with { variant "PRESENCE (elementIdentifier = '28'O)"
-  variant (lengthIndicator) "LENGTHTO (transactionNumber)" }
-
-
-// Mobil Identity - 48.008 subclause 3.2.2.41 
-type record BSSMAP_IE_MobileIdentity 
-{
-  OCT1   elementIdentifier, // '29'O
-  INT1   lengthIndicator,  
-  BIT3   typeOfIdentity,
-  BIT1   oddEvenIndicator,  // '0'B even / 1'B odd number of identity digits   
-  HEX5_16  digits           // if nr of digits is even, the last digit: '1111'B
-} with { variant "PRESENCE (elementIdentifier = '29'O)"
-  variant (lengthIndicator) 
-  "LENGTHTO (typeOfIdentity,oddEvenIndicator,digits)";
-  variant "PADDING(yes),PADDING_PATTERN('1'B)"}
-
-
-// OMCID - 48.008 subclause 3.2.2.42 
-type record BSSMAP_IE_OMCId
-{
-  OCT1   elementIdentifier,  // '2A'O
-  INT1   lengthIndicator,  
-  BIT4   numberingPlanind,  // '0000'B unknown 
-  // '0001'B  ISDN/Telephony Numbering Plan (Rec CCITT E.164) 
-  // '0011'B  data numbering plan  (CCITT Rec X.121) 
-  // '0100'B  telex numbering plan  (CCITT Rec F.69) 
-  // '0110'B  land mobile numbering plan  (CCITT Rec E.212) 
-  // '1000'B  national numbering plan 
-  // '1001'B  private numbering plan
-  //  All other values are reserved 
-  BIT3   natureOfAddress, // '000'B  unknown 
-  // '001'B  international number
-  // '010'B  national significant number  
-  // '011'B  network specific number
-  // '100'B  subscriber number  
-  // '110'B  abbreviated number
-  //  All other values are reserved 
-  BIT1   ext,  
-  OCTN   digits// The digits are encoded  TBCD  (digit 0000 _ 1001 (0_9),
-  // 1010 = '*', 1011 = '#', 1100 = 'A', 1101 = 'B', 1110 = 'C').
-  // If the number of identity digits is odd bits then bit 5-8
-  // of the last octet is filled with '1111'
-} with { variant "PRESENCE (elementIdentifier = '2A'O)"
-  variant (lengthIndicator) "LENGTHTO (numberingPlanind, natureOfAddress,
-  ext, digits)"}
-
-
-// Forward Indicator - 48.008 subclause 3.2.2.43 
-type record BSSMAP_IE_ForwardIndicator
-{
-  OCT1   elementIdentifier, //'2B'O
-  BIT4   forwardIndicator,
-  BIT4   spare
-} with { variant "PRESENCE (elementIdentifier = '2B'O)" }
-
-
-// Choosen Encryption Algorithm - 48.008 subclause 3.2.2.44 
-type record BSSMAP_IE_ChosenEncryptionAlgorithm
-{
-  OCT1   elementIdentifier,  // '2C'O
-  OCT1   algorithmIdentifier // '00000001'B no encryption
-  // '00000010'B A5/1
-  // '00000011'B A5/2
-  // '00000100'B A5/3
-  // '00000101'B A5/4
-  // '00000110'B A5/5
-  // '00000111'B A5/6
-  // '00001000'B A5/7 
-} with { variant "PRESENCE (elementIdentifier = '2C'O)" }
-
-
-// Circuit Pool - 48.008 subclause 3.2.2.45 
-type record BSSMAP_IE_CircuitPool
-{
-  OCT1   elementIdentifier, // '2D'O
-  OCT1   circuitPoolNumber
-} with { variant "PRESENCE (elementIdentifier = '2D'O)" }
-
-
-// Circuit Pool List - 48.008 subclause 3.2.2.46 
-type record BSSMAP_IE_CircuitPoolList
-{
-  OCT1   elementIdentifier, // '2E'O
-  INT1   lengthIndicator,
-  octetstring  circuitPoolNumber
-} with { variant "PRESENCE (elementIdentifier = '2E'O)"
-  variant (lengthIndicator) "LENGTHTO (circuitPoolNumber)" } ;
-
-
-// Time Indication - 48.008 subclause 3.2.2.47
-type record BSSMAP_IE_TimeIndication
-{
-  OCT1   elementIdentifier, // '2F'O
-  OCT1   time
-}
-
-
-// Resource Situation - 48.008 subclause 3.2.2.48
-type record BSSMAP_IE_ResourceSituation
-{
-  OCT1   elementIdentifier, // '30'O
-  INT1   lengthIndicator,
-  BSSMAP_FIELD_ResourceList   resourceList
-} with {variant "PRESENCE (elementIdentifier = '30'O)"
-  variant (lengthIndicator) "LENGTHTO (resourceList)" }
-
-type record of BSSMAP_FIELD_Resource 
-BSSMAP_FIELD_ResourceList
-
-type record BSSMAP_FIELD_Resource
-{
-  BIT4   channelType,
-  BIT4   resourceAndBandInd,
-  OCT1   nrOfChannels,
-  OCT1   nrOfChannels7_15 optional
-} with {variant (nrOfChannels) "EXTENSION_BIT(reverse)"}
-
-
-// Current Channel Type 1 - 48.008 subclause 3.2.2.49 
-type record BSSMAP_IE_CurrentChannelType1
-{
-  OCT1   elementIdentifier, // '31'O
-  BIT4   channel,
-  BIT4   channelMode
-} with { variant "PRESENCE (elementIdentifier = '31'O)" }
-
-// Queueing Indicator - 48.008 subclause 3.2.2.50
-type record BSSMAP_IE_QueueingIndicator
-{
-  OCT1   elementIdentifier, //'32'O
-  BIT1   spare1, // '0'B
-  BIT1   qri,    // It is recommended to allow queueing ('1'B) or not ('0'B)
-  BIT6   spare2  // '000000'B
-} with { variant "PRESENCE (elementIdentifier = '32'O)" }
-
-// Speech Version - 48.008 subclause 3.2.2.51 
-type record BSSMAP_IE_SpeechVersion
-{
-  OCT1   elementIdentifier, // '40'O
-  BIT7   speechVersionIdentifier,//'0000001'B speech full rate version 1 (H'01)
-  //'0010001'B speech full rate version 2 (H'11)
-  //'0100001'B speech full rate version 3 (H'21)
-  //'0000101'B speech half rate version 1 (H'05)
-  //'0010101'B speech half rate version 2 (H'15)
-  //'0100101'B speech half rate version 3 (H'25)
-  BIT1   spare1_1                // '0'B
-} with { variant "PRESENCE (elementIdentifier = '40'O)" }
-
-
-// Assignment Requirement - 48.008 subclause 3.2.2.52 
-type record BSSMAP_IE_AssignmentRequirement
-{
-  OCT1   elementIdentifier, // '33'O
-  OCT1   assignmentRequirement
-} with { variant "PRESENCE (elementIdentifier = '33'O)" }
-
-
-// Talker Flag - 48.008 subclause 3.2.2.54
-type record BSSMAP_IE_TalkerFlag
-{
-  OCT1   elementIdentifier  // '35'O
-} with { variant "PRESENCE (elementIdentifier = '35'O)" }
-
-
-// Group Call Reference - 48.008 subclause 3.2.2.55 
-type record BSSMAP_IE_GroupCallReference
-{
-  OCT1   elementIdentifier, // '37'O
-  INT1   lengthIndicator,   // 1..6
-  octetstring  descrGroupbroadcastCallRef  length(1..5)  // never sent by MSC, ignored if received
-} with { variant "PRESENCE (elementIdentifier = '37'O)"
-  variant (lengthIndicator) "LENGTHTO (descrGroupbroadcastCallRef)" }
-
-
-// EMLPP Priority - 48.008 subclause 3.2.2.56
-type record BSSMAP_IE_EMLPP_Priority
-{
-  OCT1   elementIdentifier,// '38'O
-  BIT3   callPriority,     // '000'B  no  priority applied 
-  // '001'B call priority level 4
-  // '010'B call priority 3  level 
-  // '011'B call priority level 2
-  // '100'B call priority 1  level 
-  // '101'B call priority level 0
-  // '110'B call priority B  level 
-  // '111'B call priority level A
-  BIT5   spare1_5   // '00000'B
-} with { variant "PRESENCE (elementIdentifier = '38'O)" }
-
-
-// Configuration Evolution Indicator -  48.008 subclause 3.2.2.57
-type record BSSMAP_IE_ConfigurationEvolutionIndication
-{
-  OCT1   elementIdentifier,// H'39
-  BIT4   smi,              // '0000'B no modification is allowed
-  // '0001'B modification allowed <= 1 TCH/F
-  // '0010'B modification allowed <= 2 TCH/F
-  // '0011'B modification allowed <= 3 TCH/F
-  // '0100'B modification allowed <= 4 TCH/F
-  BIT4   spare1_4   // '0000'B
-} with { variant "PRESENCE (elementIdentifier = '39'O)" }
-
-
-// Old BSS to New BSS Information - 48.008 subclause 3.2.2.58
-type record BSSMAP_IE_OldToNewBSSInfo
-{
-  OCT1   elementIdentifier, //'3A'O
-  INT1   lengthIndicator,
-  octetstring oldToNewBSSIEs
-} with { variant "PRESENCE (elementIdentifier = '3A'O)"
-  variant (lengthIndicator) "LENGTHTO (oldToNewBSSIEs)" }
-
-
-// LCS QOS - 48.008 subclause 3.2.2.60 (and 49.031 10.16)
-type record BSSMAP_IE_LCSQOS {
-  OCT1   elementIdentifier, // '3E'O
-  INT1   lengthIndicator,
-  BIT1   vCI, //Vertical Coordinate Indicator: VC requested ('1'B) or not ('0'B)
-  BIT1   vEL, // report velocity if available (1) or not(0)
-  BIT6   spare_1_6, // '0000000'B
-  BIT7   horizontalAccuracy, // Accuracy  Horizontal  (HA) 
-  BIT1   hAI, // Horizontal Accuracy Indicator HA is specified (1) or not (0)
-  BIT7   verticalAccuracy,   // Accuracy  Vertical  (VA) 
-  BIT1   vAI, // Vertical Accuracy Indicator VA is specified (1) or not (0)
-  BIT6   spare_2_6, // '000000'B
-  BIT2   rTC        // '00'B Response Time is not specified
-  // '01'B delay Low 
-  // '10'B Delay tolerant
-  // '11'B Reserved 
-} with { variant "PRESENCE (elementIdentifier = '3E'O)"
-  variant (lengthIndicator) "LENGTHTO (vCI, vEL, spare_1_6, horizontalAccuracy,
-  hAI, verticalAccuracy, vAI, spare_2_6, rTC)"}
-
-
-// LSA Access Control Suppression - 48.008 subclause 3.2.2.61 
-type record BSSMAP_IE_LSAAccessControlSuppression
-{
-  OCT1   elementIdentifier, //'3F'O
-  BIT1   em,    // in emergency calls em = '1'B
-  BIT7   spare  // '0000000'B
-} with { variant "PRESENCE (elementIdentifier = '3F'O)" }
-
-
-// LCS Priority - 48.008 subclause 3.2.2.62 
-type record BSSMAP_IE_LCSPriority
-{
-  OCT1   elementIdentifier,// '43'O
-  INT1   lengthIndicator, 
-  OCT1   priority          // see "another FS" TS 29.002 for more detail
-} with { variant "PRESENCE (elementIdentifier = '43'O)"
-  variant (lengthIndicator) "LENGTHTO (priority)"}
-
-
-// Location Type - 48.008 subclause 3.2.2.63 
-type record BSSMAP_IE_LocationType
-{
-  OCT1   elementIdentifier,  // '44'O
-  INT1   lengthIndicator,    // 1 or 2 
-  OCT1   locationInformation,// '00000000'B current location  geographic 
-  // '00000001'B loc assistance info for target MS
-  // '00000010'B deciphering keys for broadcast
-  //             assistance data for MS  target 
-  //  all other values are reserved
-  OCT1   positioningMethod optional
-  // '00000000'B reserved
-  // '00000001'B Mobile E_OTD  Assisted 
-  // '00000010'B Mobile Based E_OTD
-  // '00000011'B GPS  Assisted 
-  // all other values are reserved
-} with {variant (lengthIndicator) "LENGTHTO (locationInformation, positioningMethod)"}
-
-
-// Location Estimate - 48.008 subclause 3.2.2.64 
-type record BSSMAP_IE_LocationEstimate
-{
-  OCT1   elementIdentifier, // '45'O
-  INT1   lengthIndicator,   // 1_22 on A_interface, 1_93 E_interface  on 
-  OCTN   geographicLocation 
-} with { variant "PRESENCE (elementIdentifier = '45'O)"
-  variant (lengthIndicator) "LENGTHTO (geographicLocation)"}
-
-
-// Positioning Data - 48.008 subclause 3.2.2.65 
-type record BSSMAP_IE_PositioningData
-{
-  OCT1   elementIdentifier, // '46'O
-  INT1   lengthIndicator, // 2_11 
-  BIT4   positioningDataDescriminator,  // '0000'B indicates usage of each  
-  //         positioning data method,
-  //         that was attempted
-  // all other values reserved  are 
-  BIT4   spare_1_4, // '0000'B
-  BSSMAP_FIELD_PositioningMethods  positioningMethod // of lengthIndicator 1_10
-} with { variant "PRESENCE (elementIdentifier = '46'O)"
-  variant (lengthIndicator) "LENGTHTO (positioningDataDescriminator, spare_1_4,positioningMethod)"}
-
-type record BSSMAP_FIELD_PositioningMethod
-{
-  BIT3  usage, // '000'B unsuccesful attempt due to failure or interruption  
-  // '001'B succesful attempt, results not used to generate location
-  // '010'B succesful attempt, results used to verify but not generate location
-  // '011'B succesful attempt, results used to generate location
-  // '100'B succesful attempt, MS supports multiple based positioning methods
-  BIT5  positioningMethod  // '00000'B Timing Advance
-  // '00001'B TOA
-  // '00010'B AOA     
-  // '00011'B Mobile EOTD  Assisted
-  // '00100'B Mobile Based E_OTD
-  // '00101'B Mobile GPS  Assisted
-  // '00110'B Mobile Based GPS
-  // '00111'B GPS  Conventional
-  // '01000'B _ '01111'B reserved for GSM         
-  // '10000'B _ '11111'B reserved for network
-  //                     specific positioning methods
-}
-
-type record  of BSSMAP_FIELD_PositioningMethod BSSMAP_FIELD_PositioningMethods 
-
-
-// LCS Cause - 48.008 subclause 3.2.2.66 
-type record BSSMAP_IE_LCSCause
-{
-  OCT1   elementIdentifier, // '47'O
-  INT1   lengthIndicator, // 1 (_> diagnosticValue invalid) 2  or 
-  BIT8   causeValue,   // '00000000'BUnspecified 
-  // '00000001'B System Failure
-  // '00000010'B Error  Protocol 
-  // '00000011'B Data missing in position request
-  // '00000100'B unexpected data value in request  position
-  // '00000101'B Position method failure
-  // '00000110'B Target unreachable  MS 
-  // '00000111'B Location request aborted
-  // '00001000'B Facility supported  not 
-  // '00001001'B intra_BSC_HO ongoing
-  // '00001010'B complete  intra_BSC_HO 
-  // '00001011'B congestion
-  //  all other values reserved  are 
-  OCT1   diagnosticValue optional
-} with { variant "PRESENCE (elementIdentifier = '47'O)"
-  variant (lengthIndicator) "LENGTHTO (causeValue, diagnosticValue)"}
-
-
-// LCS Client Type - 48.008 subclause 3.2.2.67
-type record BSSMAP_IE_LCSClientType
-{
-  OCT1   elementIdentifier, // '48'O
-  INT1   lengthIndicator, // 1 
-  BIT4   subtype, // all values unspecified/reserved except for:
-  // category = PLMN Operator:
-  // '0000'B Unspecified
-  // '0001'B Boradcast Service
-  // '0010'B O&M
-  // '0011'B Statistics  Anonymous 
-  // '0100'B Target MS Service Support
-  //  all other values reserved  are 
-  BIT4   category   // '0000'B Value added client
-  // '0010'B Operator  PLMN 
-  // '0011'B Emergency Services
-  // '0100'B Lawful Services  Intercept 
-  //  all other values are reserved
-} with { variant "PRESENCE (elementIdentifier = '48'O)"
-  variant (lengthIndicator) "LENGTHTO (subtype, category)"}
-
-
-// APDU - 48.008 subclause 3.2.2.68 (and 49.031 v5.3.0)
-type record BSSMAP_IE_APDU
-{
-  OCT1   elementIdentifier, //'49'O
-  LIN2_BO_LAST   lengthIndicator,
-  BIT7   protocolID optional, // '0000000'reserved  B 
-  // '0000001'BSSLAP  B  (the only currently supported) 
-  // '0000010'LLP  B 
-  // '0000011'B SMLCPP
-  BIT1   spare_1_1 optional,  // '0'B  
-  octetstring  embeddedMessage optional  // of length: 5_25
-} with { variant "PRESENCE (elementIdentifier = '49'O)"
-  variant (lengthIndicator)
-  "LENGTHTO (protocolID,spare_1_1,embeddedMessage)"}
-
-
-// Network Element Identity - 48.008 subclause 3.2.2.69 
-type record BSSMAP_IE_NetworkElementIdentity
-{
-  OCT1   elementIdentifier, //'4A'O
-  INT1   lengthIndicator,
-  BIT4   iDDiscriminator,
-  BIT4   spare,
-  OCTN   networkElementIdentity // Network Element Identity 
-} with {variant (lengthIndicator)
-  "LENGTHTO (iDDiscriminator,spare,networkElementIdentity)"}
-
-
-// GPS Assistant Data - 48.008 subclause 3.2.2.70 
-type record BSSMAP_IE_GPSAssistanceData
-{
-  OCT1   elementIdentifier, //'4B'O
-  INT1   lengthIndicator, // 1_38
-  OCT1   a_to_h,
-  OCT1   i_to_p,
-  OCTN   satellite_related_data // Satellite related data 
-} with { variant "PRESENCE (elementIdentifier = '4B'O)"
-  variant (lengthIndicator) "LENGTHTO (satellite_related_data,a_to_h,i_to_p)"}
-
-
-// Deciphering Key - 48.008 subclause 3.2.2.71 
-type record BSSMAP_IE_DecipheringKeys
-{
-  OCT1   elementIdentifier, // '4C'O
-  INT1   lengthIndicator,  // 1, 8, 15
-  BIT8   cipheringKeyFlag, // current ciphering key is used (1) or not (0)
-  BIT56  currentdecipheringKeyValue,
-  BIT56  nextdecipheringKeyValue optional
-} with { variant "PRESENCE (elementIdentifier = '4C'O)"
-  variant (lengthIndicator) "LENGTHTO (cipheringKeyFlag, 
-  currentdecipheringKeyValue, nextdecipheringKeyValue)"}
-
-
-// Return Error Request - 48.008 subclause 3.2.2.72 
-type record BSSMAP_IE_ReturnErrorRequest
-{
-  OCT1   elementIdentifier, //'4D'O
-  INT1   lengthIndicator,
-  OCT1   returnErrorType // Return Error Request 
-} with { variant "PRESENCE (elementIdentifier = '4D'O)"
-  variant (lengthIndicator) "LENGTHTO (returnErrorType)"}
-
-
-// Return Error Cause - 48.008 subclause 3.2.2.73 
-type record BSSMAP_IE_ReturnErrorCause
-{
-  OCT1   elementIdentifier, //'4E'O
-  INT1   lengthIndicator,
-  OCT1   returnErrorCause // Return Error Cause 
-} with { variant "PRESENCE (elementIdentifier = '4E'O)"
-  variant (lengthIndicator) "LENGTHTO (returnErrorCause)"}
-
-
-// Segmentation - 48.008 subclause 3.2.2.74 
-type record BSSMAP_IE_Segmentation
-{
-  OCT1   elementIdentifier, //'4F'O
-  INT1   lengthIndicator,
-  BIT4   segmentationNumber,
-  BIT1   segmentationBit,
-  BIT3   spare,
-  OCT2   messageID optional
-} with { variant "PRESENCE (elementIdentifier = '4F'O)"
-  variant (lengthIndicator)
-  "LENGTHTO (segmentationNumber,segmentationBit,spare,messageID)"}
-
-
-// Service Handover - 48.008 subclause 3.2.2.75 
-type record BSSMAP_IE_ServiceHandover
-{
-  OCT1   elementIdentifier, //'50'O
-  INT1   lengthIndicator,  
-  BIT3   serviceHandoverInfo,
-  BIT5   spare
-} with { variant "PRESENCE (elementIdentifier = '50'O)"
-  variant (lengthIndicator) "LENGTHTO (serviceHandoverInfo,spare)" }
-
-
-//Source RNC to Target RNC transparent information -48.008 subclause 3.2.2.76-77
-type record BSSMAP_IE_SourceToTargetRNCTransparentInfo
-{
-  OCT1   elementIdentifier, //'51'O or '52'O
-  INT1   lengthIndicator,
-  octetstring informationcontainer
-} with { variant (lengthIndicator) "LENGTHTO (informationcontainer)" }
-
-
-// GERAN Classmark - 48.008 subclause 3.2.2.78 
-type record BSSMAP_IE_GERANClassmark
-{
-  OCT1   elementIdentifier, //'53'O
-  INT1   lengthIndicator,
-  OCTN   GERANClassmark
-} with { variant "PRESENCE (elementIdentifier = '53'O)"
-  variant (lengthIndicator) "LENGTHTO (GERANClassmark)" }
-
-
-// GERAN BSC Container - 48.008 subclause 3.2.2.79
-type record BSSMAP_IE_GERANBSCContainer
-{
-  OCT1   elementIdentifier, //'54'O
-  INT1   lengthIndicator,
-  OCT1   codecType,
-  BIT3   maxNrofTCH,
-  BIT5   allowedRadioIFRates
-} with {variant (lengthIndicator) 
-  "LENGTHTO (codecType, maxNrofTCH, allowedRadioIFRates)" }
-
-
-// New BSS to Old BSS Information - 48.008 subclause 3.2.2.80 
-type record BSSMAP_IE_NewBSSToOldBSSInfo
-{
-  OCT1   elementIdentifier, //'61'O
-  INT1   lengthIndicator,
-  OCTN   newBSSToOldBSSIE optional
-} with { variant "PRESENCE (elementIdentifier = '61'O)"
-  variant (lengthIndicator) "LENGTHTO (newBSSToOldBSSIE)" }
-
-
-// Inter-System Information - 48.008 subclause 3.2.2.81 
-type record BSSMAP_IE_InterSystemInfo
-{
-  OCT1   elementIdentifier, //'63'O
-  INT1   lengthIndicator,
-  OCTN   interSystemInfoTranspCont
-} with { variant "PRESENCE (elementIdentifier = '63'O)"
-  variant (lengthIndicator) "LENGTHTO (interSystemInfoTranspCont)" }
-
-
-// SNA Access Information - 48.008 subclause 3.2.2.82 
-type record BSSMAP_IE_SNAAccessInfo
-{
-  OCT1   elementIdentifier, //'64'O
-  INT1   lengthIndicator,
-  AuthorisedPLMN_List   sNAAccessInfo
-} with { variant "PRESENCE (elementIdentifier = '64'O)"
-  variant (lengthIndicator) "LENGTHTO (sNAAccessInfo)" }
-
-type record of AuthorisedPLMN AuthorisedPLMN_List;
-
-type record AuthorisedPLMN
-{
-  INT1           lengthIndicator,
-  OCT3           mcc_mnc, 
-  RecordOfOCT2   authorisedSNA optional
-} with { variant (lengthIndicator) "LENGTHTO (mcc_mnc,authorisedSNA)" }
-
-
-// 3.2.2.83 VSTK_RAND Information
-type record BSSMAP_IE_VSTK_RAND
-{
-  OCT1   elementIdentifier,  // '65'
-  INT1   lengthIndicator,
-  OCT1   VSTK_RAND_1,
-  OCT2   VSTK_RAND_2,
-  OCT3   VSTK_RAND_3,
-  OCT4   VSTK_RAND_4,
-  BIT4   spare,
-  BIT4   VSTK_RAND_5
-} with { variant "PRESENCE (elementIdentifier = '65'O)"
-  variant (lengthIndicator) 
-  "LENGTHTO (VSTK_RAND_1, VSTK_RAND_2, VSTK_RAND_3, VSTK_RAND_4, spare, VSTK_RAND_5)"}
-
-
-// 3.2.2.84    VSTK information
-type record BSSMAP_IE_VSTK
-{
-  OCT1   elementIdentifier,  // '66'
-  INT1   lengthIndicator,
-  OCT16  VSTK
-} with { variant "PRESENCE (elementIdentifier = '66'O)"
-  variant (lengthIndicator) "LENGTHTO (VSTK)"}
-
-
-// 3.2.2.85 Paging Information
-type record BSSMAP_IE_PagingInformation
-{
-  OCT1   elementIdentifier,  // '67'
-  INT1   lengthIndicator,
-  BIT1   VGCS_or_VBS, // 0: not a member of any VGCS/VBS-group
-  BIT2   pagingCause, 
-  BIT5   spare
-} with { variant "PRESENCE (elementIdentifier = '67'O)"
-  variant (lengthIndicator) 
-  "LENGTHTO (VGCS_or_VBS, pagingCause, spare)"}
-
-
-// 3.2.2.86 IMEI
-type record BSSMAP_IE_IMEI
-{
-  OCT1   elementIdentifier,  // '68'
-  INT1   lengthIndicator,
-  BIT3   typeOfIdentity,
-  BIT1   oddEvenIndicator,  // '0'B even / 1'B odd number of identity digits   
-  HEX5_16  digits           // if nr of digits is even, the last digit: '1111'B
-} with { variant "PRESENCE (elementIdentifier = '68'O)"
-  variant (lengthIndicator) 
-  "LENGTHTO (typeOfIdentity,oddEvenIndicator,digits)";
-  variant "PADDING(yes),PADDING_PATTERN('1'B)"}
-
-
-// 3.2.2.87 Velocity Estimate
-type record BSSMAP_IE_VelocityEstimate
-{
-  OCT1   elementIdentifier,  // '55'
-  INT1   lengthIndicator,
-  OCTN   velocityEstimate
-} with { variant "PRESENCE (elementIdentifier = '55'O)"
-  variant (lengthIndicator) "LENGTHTO (velocityEstimate)"}
-
-
-// 3.2.2.88 VGCS Feature Flags
-type record BSSMAP_IE_VGCS_FeatureFlags
-{
-  OCT1   elementIdentifier,  // '69'
-  INT1   lengthIndicator,
-  BIT1   TP_Ind, // 0: Talker Priority not supported; 1: Talker Priority supported
-  BIT2   AS_Ind, // least sig. bit: 0: No A-interface circuit sharing; 1: A-interface circuit sharing;
-  // most sig. bit: 0: No A-interface link sharing; 1: A-interface link sharing
-  BIT1   BSS_Res, // 0: No re-establishment of the group or broadcast call by the BSS;
-  // 1:  Re-establishment of the group or broadcast call by the BSS
-  BIT1   tCP,
-  BIT3   spare
-} with { variant "PRESENCE (elementIdentifier = '69'O)"
-  variant (lengthIndicator)
-  "LENGTHTO (TP_Ind, AS_Ind, BSS_Res, tCP, spare)"}
-
-
-// Talker Priority - 48.008 subclause 3.2.2.89 
-type record BSSMAP_IE_TalkerPriority
-{
-  OCT1   elementIdentifier,  // '6A'O
-  BIT2   priority,
-  // 0 0         Normal Priority
-  // 0 1         Privileged Priority
-  // 1 0         Emergency Priority
-  // 1 1         reserved for future use
-  BIT6   spare    // 1..9
-} with { variant "PRESENCE (elementIdentifier = '6A'O)" }
-
-
-// 3.2.2.90 Emergency Set Indication
-type record BSSMAP_IE_EmergencySetIndication
-{
-  OCT1   elementIdentifier  // '6B'
-} with { variant "PRESENCE (elementIdentifier = '6B'O)" }
-
-
-// 3.2.2.91  Talker Identity
-type record BSSMAP_IE_TalkerIdentity
-{
-  OCT1   elementIdentifier,  // '6C'
-  INT1   lengthIndicator,
-  BIT3   fillerBits,
-  BIT5   spare,
-  OCT17  talkerIdentity
-} with { variant "PRESENCE (elementIdentifier = '6C'O)"
-  variant (lengthIndicator) 
-  "LENGTHTO (fillerBits, spare, talkerIdentity)"}
-
-
-// 3.2.2.92 SMS to VGCS
-type octetstring OCT248 length(0..248);
-
-type record BSSMAP_IE_SMS_to_VGCS
-{
-  OCT1    elementIdentifier,  // '6E'
-  INT1    lengthIndicator,
-  OCT248  SMS
-} with {variant (lengthIndicator) 
-  "LENGTHTO (SMS)"}
-
-
-// 3.2.2.93 VGCS talker mode
-type record BSSMAP_IE_VGCS_TalkerMode
-{
-  OCT1    elementIdentifier,  // '6F'
-  INT1    lengthIndicator,
-  BIT2    spare,
-  BIT4    groupCipherKeyNumber,
-  BIT2    RR_mode // 0 0: dedicated mode (i.e. dedicated channel)
-  // 0 1: group transmit mode (i.e. voice group channel)
-  // Other values are reserved for future use.
-} with {variant (lengthIndicator) 
-  "LENGTHTO (spare, groupCipherKeyNumber, RR_mode)"}
-
-
-// 3.2.2.94    VGCS/VBS Cell Status
-type record BSSMAP_IE_VGCS_VBS_CellStatus
-{
-  OCT1    elementIdentifier,  // '70'
-  INT1    lengthIndicator,
-  BIT3    status,  
-  BIT5    spare
-} with { variant "PRESENCE (elementIdentifier = '70'O)"
-  variant (lengthIndicator) "LENGTHTO (status, spare)"}
- 
-  
-// 3.2.2.95 GANSS Assistance Data 
-type record BSSMAP_IE_GANSS_AssistanceData  
-{  
-  OCT1    elementIdentifier,  //'75'   
-  INT1    lengthIndicator,
-  OCTN    gANSS_AssistanceDataInfo    // 49.031 Section 10.31  
-} with { variant "PRESENCE (elementIdentifier = '75'O)"
-  variant (lengthIndicator) "LENGTHTO (gANSS_AssistanceDataInfo)"}  
-
-  
-// 3.2.2.96 GANSS Positioning Data   
-type record BSSMAP_IE_GANSS_PositioningData  
-{    
-  OCT1    elementIdentifier, // '76' 
-  INT1    lengthIndicator,
-  GANSS_PositioningData    gANSS_PositioningDataInfo 
-} with { variant "PRESENCE (elementIdentifier = '76'O)"
-  variant (lengthIndicator) "LENGTHTO (gANSS_PositioningDataInfo)"}  
-
-type record GANSS_PositioningData // 49.031 Section 10.32
-{
- BIT3     usage,
- BIT3     gANSS_Id,
- BIT2     method
-}
-
-
-// 3.2.2.97 GANSS Location Type
-type record BSSMAP_IE_GANSS_LocationType
-{
- OCT1    elementIdentifier, // '77'
- INT1    lengthIndicator,
- GANSS_LocationType  gANSS_LocationTypeInfo
-} with { variant "PRESENCE (elementIdentifier = '77'O)"
-  variant (lengthIndicator) "LENGTHTO (gANSS_LocationTypeInfo)"}  
-
-type record GANSS_LocationType // 49.031 Section 10.33
-{
- BIT1      galileo,
- BIT1      sBAS,
- BIT1      modernizedGPS,
- BIT1      qZSS,
- BIT1      gLONASS,
- BIT3      spare
-}
-
-
-// 3.2.2.98 Application data 
-type record BSSMAP_IE_ApplicationData
-{
- OCT1    elementIdentifier, // '78'
- INT1    lengthIndicator,
- OCT9    applicationDataInfo   //  "implementation-specific" according to 44.018 v8.7.0 Section 10.5.2.72
-} with { variant "PRESENCE (elementIdentifier = '78'O)"
-  variant (lengthIndicator) "LENGTHTO (applicationDataInfo)"}  
-
-
-// 3.2.2.99 Data Identity
-type record BSSMAP_IE_DataIdentity
-{
- OCT1          elementIdentifier, // '79'  
- INT1          lengthIndicator, 
- DataIdentity  dataIdentityInfo
-} with { variant "PRESENCE (elementIdentifier = '79'O)"
-  variant (lengthIndicator) "LENGTHTO (dataIdentityInfo)"} 
-
- 
-type record DataIdentity  // 44.018 v8.7.0 Section 10.5.2.73 
-{
- BIT1     aI,
- BIT4     dI,
- BIT3     dP  
-}
-
-
-// 3.2.2.100 Application Data Information
-type record BSSMAP_IE_ApplicationDataInformation
-{
- OCT1          elementIdentifier, // 7A'
- INT1          lengthIndicator,
- BIT1          bT_Ind,
- BIT7          spare
-} with { variant "PRESENCE (elementIdentifier = '7A'O)"
-  variant (lengthIndicator) "LENGTHTO (bT_Ind, spare)"} 
-
-
-// 3.2.2.101 MSISDN
-type record BSSMAP_IE_MSISDN
-{
- OCT1          elementIdentifier, // '7B'
- INT1          lengthIndicator,
- octetstring   msisdn  
-} with { variant "PRESENCE (elementIdentifier = '7B'O)"
-  variant (lengthIndicator) "LENGTHTO (msisdn)"} 
- 
- 
-// 3.2.2.102    AoIP Transport Layer Address
-type record BSSMAP_IE_AoIP_TransportLayerAddress
-{
-  OCT1                    elementIdentifier,  // '7C'
-  INT1                    lengthIndicator,
-  BSSMAP_FIELD_IPAddress  ipAddress,
-  LIN2_BO_LAST            uDPPortValue
-} with { 
-  variant "PRESENCE (elementIdentifier = '7C'O)";
-  variant (lengthIndicator) "LENGTHTO (ipAddress, uDPPortValue)";
-  variant (ipAddress) "CROSSTAG(ipv4,lengthIndicator = 6;
-                                ipv6,lengthIndicator = 18)"
-}
-
-type union BSSMAP_FIELD_IPAddress
-{
-  OCT4    ipv4,
-  OCT16   ipv6
-}
-
-//3.2.2.103 Speech Codec List
-type record BSSMAP_IE_SpeechCodecList
-{
-  OCT1                       elementIdentifier,  // '7D'
-  INT1                       lengthIndicator,
-  BSSMAP_FIELD_CodecElements codecElements
-} with {
-  variant "PRESENCE (elementIdentifier = '7D'O)";
-  variant (lengthIndicator) "LENGTHTO (codecElements)"
-}
-
-type record of BSSMAP_FIELD_CodecElement BSSMAP_FIELD_CodecElements;
-
-type record BSSMAP_FIELD_CodecElement
-{
-  BSSMAP_FIELD_CodecType  codecType,
-  BIT1                    tF,
-  BIT1                    pT,
-  BIT1                    pI,
-  BIT1                    fI,
-  OCT1                    extendedCodecType optional,
-  BIT8                    s0_7 optional,
-  BIT8                    s8_15 optional
-} with { 
-  variant (extendedCodecType) "PRESENCE (codecType = CodecExtension)";
-  variant (s0_7) "PRESENCE  (codecType = FR_AMR, 
-                             codecType = HR_AMR,
-                             codecType = FR_AMR_WB,
-                             codecType = OHR_AMR,
-                             codecType = OFR_AMR_WB,
-                             codecType = OHR_AMR_WB,
-                             extendedCodecType = 'FD'O)";
-  variant (s8_15) "PRESENCE (codecType = FR_AMR, 
-                             codecType = HR_AMR,
-                             codecType = OHR_AMR)";
-}
-
-type enumerated BSSMAP_FIELD_CodecType
-{
-  GSM_FR(0),
-  GSM_HR(1),
-  GSM_EFR(2),
-  FR_AMR(3),
-  HR_AMR(4),
-  FR_AMR_WB(9),
-  OHR_AMR(11),
-  OFR_AMR_WB(12),
-  OHR_AMR_WB(13),
-  CodecExtension(15)
-}
-
-//3.2.2.104 Speech Codec
-type record BSSMAP_IE_SpeechCodec
-{
-  OCT1                       elementIdentifier,  // '7E'
-  INT1                       lengthIndicator,
-  BSSMAP_FIELD_CodecElements codecElements
-} with {
-  variant "PRESENCE (elementIdentifier = '7E'O)";
-  variant (lengthIndicator) "LENGTHTO (codecElements)"
-}
-
-//3.2.2.105 Call Identifier
-type record BSSMAP_IE_CallIdentifier
-{
- OCT1                       elementIdentifier, //'7F'
- OCT4                       callIdentifierInfo
-} with { variant "PRESENCE (elementIdentifier = '7F'O)";}
-
-//3.2.2.106 Call Identifier List
-type record BSSMAP_IE_CallIdentifierList
-{
- OCT1                       elementIdentifier, // '80'
- INT1                       lengthIndicator,
- OCT4List                   callIdentifierListInfo length (1..62)    
-} with { variant "PRESENCE (elementIdentifier = '80'O)";
-         variant (lengthIndicator) "LENGTHTO (callIdentifierListInfo)"}
-
-//3.2.2.107  A Interface Selector For Reset
-type record BSSMAP_IE_A_InterfaceSelectorForReset
-{
- OCT1                       elementIdentifier,  // '81'
- BIT1                       rTD,
- BIT1                       rIP,
- BIT6                       spare
-} with { variant "PRESENCE (elementIdentifier = '81'O)";} 
-
-
-//3.2.2.109 KC128
-type record BSSMAP_IE_KC128
-{
- OCT1                       elementIdentifier,  // '83'
- OCT16                      kC128_Value  
-} with { variant "PRESENCE (elementIdentifier = '83'O)";}
-
-
-//3.2.2.110 CSG Identifier
-type record BSSMAP_IE_CSG_Identifier
-{
- OCT1                       elementIdentifier,   //84
- INT1                       lengthIndicator,
- bitstring                  cSG_ID_Value length(27),
- BIT5                       spare1,
- BIT1                       cellAccessMode,
- BIT7                       spare2
-} with { variant "PRESENCE (elementIdentifier = '84'O)";
-         variant (lengthIndicator) "LENGTHTO (cSG_ID_Value,spare1,cellAccessMode,spare2)"}
-
-
-//3.2.2.111 Redirect Attempt Flag
-type record BSSMAP_IE_RedirectAttemptFlag
-{
- OCT1                       elementIdentifier   //85
-} with { variant "PRESENCE (elementIdentifier = '85'O)";}
-
-
-//3.2.2.112 Reroute Reject Cause
-type record BSSMAP_IE_RerouteRejectCause
-{
- OCT1                       elementIdentifier,   //86
- OCT1                       rerouteRejectCauseValue 
-} with { variant "PRESENCE (elementIdentifier = '86'O)";}
-
-
-//3.2.2.113 Send Sequence Number
-type record BSSMAP_IE_SendSequenceNumber
-{
- OCT1                       elementIdentifier,   //87
- BIT6                       spare,
- INT2b                      sendSequenceNumber
-} with { variant "PRESENCE (elementIdentifier = '87'O)";}
-
-
-//3.2.2.114 Reroute Complete Outcome
-type record BSSMAP_IE_RerouteCompleteOutcome
-{
- OCT1                       elementIdentifier,   //88
- OCT1                       rerouteCompleteOutcomeValue
-} with { variant "PRESENCE (elementIdentifier = '88'O)";}
-
-
-//3.2.2.115 Global Call Reference
-type record BSSMAP_IE_GlobalCallReference
-{
- OCT1                       elementIdentifier,  //89
- INT1                       lengthIndicator,
- GlobalCallReferenceValue   globalCallReferenceValue
-} with { variant "PRESENCE (elementIdentifier = '89'O)";
-         variant (lengthIndicator) "LENGTHTO (globalCallReferenceValue)"}
-
-//3GPP TS 29.205 B.2.1.9
-type record GlobalCallReferenceValue
-{
- INT1                       networkIDLengthIndicator,
- octetstring                networkID length (3..5), 
- INT1                       nodeIDLengthIndicator, 
- OCT2                       nodeID,
- INT1                       callReferenceIDLengthIndicator,  
- OCT5                       callReferenceID         
-} with { 
-  variant (networkIDLengthIndicator) "LENGTHTO (networkID)"
-  variant (nodeIDLengthIndicator) "LENGTHTO (nodeID)"  
-  variant (callReferenceIDLengthIndicator) "LENGTHTO (callReferenceID )" 
-  }
-
-
-//3.2.2.116 LCLS Configuration
-type record BSSMAP_IE_LCLS_Configuration
-{
- OCT1                       elementIdentifier,  //8A
- BIT4                       lCLS_ConfigurationValue,  
- BIT4                       spare
-} with { variant "PRESENCE (elementIdentifier = '8A'O)";}
-
-
-//3.2.2.117 LCLS Connection Status Control
-type record BSSMAP_IE_LCLS_ConnectionStatusControl
-{
- OCT1                       elementIdentifier,  //8B
- BIT4                       lCLS_ConnectionStatusControlValue,
- BIT4                       spare
-} with { variant "PRESENCE (elementIdentifier = '8B'O)";}
-
-
-//3.2.2.118 LCLS Correlation Not Needed 
-type record BSSMAP_IE_LCLS_CorrelationNotNeeded 
-{
- OCT1                       elementIdentifier  //8C
-} with { variant "PRESENCE (elementIdentifier = '8C'O)";}
-
-
-//3.2.2.119 LCLS BSS Status
-type record BSSMAP_IE_LCLS_BSS_Status
-{
- OCT1                       elementIdentifier,  //8D
- BIT4                       lCLS_BSS_StatusValue,
- BIT4 			    spare			    
-} with { variant "PRESENCE (elementIdentifier = '8D'O)";}
-
-
-//3.2.2.120 LCLS Break Request
-type record BSSMAP_IE_LCLS_BreakRequest
-{
- OCT1                       elementIdentifier  //8E
-} with { variant "PRESENCE (elementIdentifier = '8E'O)";}
-
-//3.2.2.121 CSFB Indication
-type record BSSMAP_IE_CSFB_Indication
-{
- OCT1                       elementIdentifier  //8F
-} with { variant "PRESENCE (elementIdentifier = '8F'O)";}
-
-
-
-///////////////////////////////////////////////////////
-// Used in HANDOVER REQUEST message
-type union BSSMAP_IE_ClassmarkInformationType 
-{
-  BSSMAP_IE_ClassmarkInformationType1  classmarkInformationType1,
-  BSSMAP_IE_ClassmarkInformationType2  classmarkInformationType2
-}
-
-
-///////////////////////////////////////////
-//   BSSMAP message definition
-///////////////////////////////////////////
-
-// ASSIGNMENT REQUEST - 48.008 subclause 3.2.1.1 
-type record PDU_BSSMAP_AssignmentRequest
-{
-  OCT1					messageType, // '01'O
-  BSSMAP_IE_ChannelType			channelType,
-  BSSMAP_IE_Layer3HeaderInfo		layer3HeaderInfo optional,
-  BSSMAP_IE_Priority			priority optional,
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode optional,
-  BSSMAP_IE_DownLinkDTXFlag		downLinkDTX_Flag optional,
-  BSSMAP_IE_InterferenceBandToBeUsed	interferenceBandToBeUsed optional,
-  BSSMAP_IE_ClassmarkInformationType2	classmarkInformationType2 optional,
-  BSSMAP_IE_GroupCallReference		groupCallReference optional,
-  BSSMAP_IE_TalkerFlag  		talkerFlag optional,
-  BSSMAP_IE_ConfigurationEvolutionIndication  configurationEvolutionIndication optional,
-  BSSMAP_IE_LSAAccessControlSuppression	lsaAccesControlSuppression optional,
-  BSSMAP_IE_ServiceHandover		serviceHandover optional,
-  BSSMAP_IE_EncryptionInformation       encryptionInformation optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_AoIP_TransportLayerAddress  aoIPTransportLayer optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional,
-  BSSMAP_IE_CallIdentifier              callIdentifier optional,
-  BSSMAP_IE_KC128                       kC128 optional,
-  BSSMAP_IE_GlobalCallReference         globalCallReference optional,
-  BSSMAP_IE_LCLS_Configuration          lCLS_Configuration optional,
-  BSSMAP_IE_LCLS_ConnectionStatusControl   lCLS_ConnectionStatusControl optional,
-  BSSMAP_IE_LCLS_CorrelationNotNeeded   lCLS_CorrelationNotNeeded optional
-} with { variant "PRESENCE (messageType = '01'O)" }
-
-
-// ASSIGNMENT COMPLETE - 48.008 subclause 3.2.1.2 
-type record PDU_BSSMAP_AssignmentComplete
-{
-  OCT1					messageType, // '02'O
-  BSSMAP_IE_RR_Cause			rR_Cause optional,
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode optional,
-  BSSMAP_IE_CellIdentifier		cellIdentifier optional,
-  BSSMAP_IE_ChosenChannel		chosenChannel optional,
-  BSSMAP_IE_ChosenEncryptionAlgorithm	chosenEncryptionAlgorithm optional,
-  BSSMAP_IE_CircuitPool			circuitPool optional,
-  BSSMAP_IE_SpeechVersion		speechVersion optional,
-  BSSMAP_IE_LSAIdentifier		lSAIdentifier optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_AoIP_TransportLayerAddress  aoIPTransportLayer optional,
-  BSSMAP_IE_SpeechCodec                 speechCodec optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional,
-  BSSMAP_IE_LCLS_BSS_Status             lCLS_BSS_Status optional
-} with { variant "PRESENCE (messageType = '02'O)" }
-
-// ASSIGNMENT FAILURE - 48.008 subclause 3.2.1.3
-type record PDU_BSSMAP_AssignmentFailure
-{
-  OCT1					messageType, // '03'O
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_RR_Cause			rR_Cause optional,
-  BSSMAP_IE_CircuitPool			circuitPool optional,
-  BSSMAP_IE_CircuitPoolList		circuitPoolList optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional
-} with { variant "PRESENCE (messageType = '03'O)" }
-
-// BLOCK - 48.008 subclause 3.2.1.4 
-type record PDU_BSSMAP_Block
-{
-  OCT1 					messageType, // H'40
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode, 
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_ConnectionReleaseRequested	connectionReleaseRequested optional
-} with { variant "PRESENCE (messageType = '40'O)" }
-
-
-// BLOCKING ACKNOWLEDGE - 48.008 subclause 3.2.1.5
-type record PDU_BSSMAP_BlockingAck
-{
-  OCT1					messageType, // H'41
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode 
-} with { variant "PRESENCE (messageType = '41'O)" }
-
-
-// UNBLOCK - 48.008 subclause 3.2.1.6
-type record PDU_BSSMAP_Unblock
-{
-  OCT1					messageType, // H'42
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode
-} with { variant "PRESENCE (messageType = '42'O)" }
-
-
-// UNBLOCKING ACKNOWLEDGE - 48.008 subclause 3.2.1.7
-type record PDU_BSSMAP_UnblockAck
-{
-  OCT1					messageType, // H'43
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode
-} with { variant "PRESENCE (messageType = '43'O)" }
-
-
-// HANDOVER REQUEST - 48.008 subclause 3.2.1.8
-type record PDU_BSSMAP_HandoverRequest
-{
-  OCT1				     	messageType, // '10'O
-  BSSMAP_IE_ChannelType		     	channelType,
-  BSSMAP_IE_EncryptionInformation    	encryptionInformation,
-  BSSMAP_IE_ClassmarkInformationType   	classmarkInformationType, //Type 1 or 2
-  BSSMAP_IE_CellIdentifier		cellIdentifierSource,
-  BSSMAP_IE_Priority			priority optional,
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode optional,
-  BSSMAP_IE_DownLinkDTXFlag		downLinkDTX_Flag optional,
-  BSSMAP_IE_CellIdentifier		cellIdentifierTarget,
-  BSSMAP_IE_InterferenceBandToBeUsed	interferenceBandToBeUsed optional,
-  BSSMAP_IE_Cause			cause optional,
-  BSSMAP_IE_ClassmarkInformationType3	classmarkInformationType3 optional,
-  BSSMAP_IE_CurrentChannelType1		currentChannelType1 optional,
-  BSSMAP_IE_SpeechVersion		speechVersion optional,
-  BSSMAP_IE_GroupCallReference		groupCallReference optional,
-  BSSMAP_IE_TalkerFlag			talkerFlag optional,
-  BSSMAP_IE_ConfigurationEvolutionIndication configurationEvolutionIndication optional,
-  BSSMAP_IE_ChosenEncryptionAlgorithm	chosenEncryptionAlgorithm optional,
-  BSSMAP_IE_OldToNewBSSInfo		oldToNewBSSInfo optional,
-  BSSMAP_IE_LSAInformation		lSAInformation optional,
-  BSSMAP_IE_LSAAccessControlSuppression	lSAAccessControlSuppression optional,
-  BSSMAP_IE_ServiceHandover		serviceHandover optional,
-  BSSMAP_IE_IMSI			iMSI_bssmap optional,
-  BSSMAP_IE_SourceToTargetRNCTransparentInfo sourceToTargetRNCTransparentInfo optional,
-  BSSMAP_IE_SourceToTargetRNCTransparentInfo sourceToTargetRNCTransparentInfoCDMA optional,
-  BSSMAP_IE_SNAAccessInfo		sNAAccessInformation optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_AoIP_TransportLayerAddress  aoIPTransportLayer optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional,
-  BSSMAP_IE_CallIdentifier              callIdentifier optional,              
-  BSSMAP_IE_KC128                       kC128 optional,
-  BSSMAP_IE_GlobalCallReference         globalCallReference optional,
-  BSSMAP_IE_LCLS_Configuration          lCLS_Configuration optional,
-  BSSMAP_IE_LCLS_ConnectionStatusControl     connectionStatusControl optional    
-} with { variant "PRESENCE (messageType = '10'O)"
-  variant "TAG (
-  sourceToTargetRNCTransparentInfo,	elementIdentifier = '51'O;
-  sourceToTargetRNCTransparentInfoCDMA,	elementIdentifier = '52'O)"}
-
-
-// HANDOVER REQUIRED - 48.008 subclause 3.2.1.9 
-type record PDU_BSSMAP_HandoverRequired
-{
-  OCT1					messageType, // '11'O
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_ResponseRequest		responseRequest optional,
-  BSSMAP_IE_CellIdentifierList		cellIdentifierList,
-  BSSMAP_IE_CircuitPoolList		circuitPoolList optional,
-  BSSMAP_IE_CurrentChannelType1		currentChannelType1 optional,
-  BSSMAP_IE_SpeechVersion		speechVersion optional,
-  BSSMAP_IE_QueueingIndicator		queueingIndicator optional,
-  BSSMAP_IE_OldToNewBSSInfo		oldToNewBSSInfo optional,
-  BSSMAP_IE_SourceToTargetRNCTransparentInfo sourceToTargetRNCTransparentInfo optional,
-  BSSMAP_IE_SourceToTargetRNCTransparentInfo sourceToTargetRNCTransparentInfoCDMA optional,
-  BSSMAP_IE_GERANClassmark		gERANClassmark optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_SpeechCodec                 speechCodec optional,
-  BSSMAP_IE_CSG_Identifier              cSG_Identifier optional
-} with { variant "PRESENCE (messageType = '11'O)"
-  variant "TAG (
-  sourceToTargetRNCTransparentInfo,	elementIdentifier = '51'O;
-  sourceToTargetRNCTransparentInfoCDMA,	elementIdentifier = '52'O)"}
-
-
-// HANDOVER REQUEST ACKNOWLEDGE - 48.008 subclause 3.2.1.10
-type record PDU_BSSMAP_HandoverRequestAck
-{
-  OCT1					messageType, // '12'O
-  BSSMAP_IE_Layer3Information	        layer3Information,
-  BSSMAP_IE_ChosenChannel		chosenChannel optional,
-  BSSMAP_IE_ChosenEncryptionAlgorithm	chosenEncryptionAlgorithm optional,
-  BSSMAP_IE_CircuitPool			circuitPool optional,
-  BSSMAP_IE_SpeechVersion		speechVersion optional,
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode optional,
-  BSSMAP_IE_LSAIdentifier		lSAIdentifier optional,
-  BSSMAP_IE_NewBSSToOldBSSInfo 		newBSSToOldBSSInfo optional,
-  BSSMAP_IE_InterSystemInfo 		interSystemInformation optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_AoIP_TransportLayerAddress  aoIPTransportLayer optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional,
-  BSSMAP_IE_SpeechCodec                 speechCodec optional,
-  BSSMAP_IE_LCLS_BSS_Status             lCLS_bSS_Status optional
-} with { variant "PRESENCE (messageType = '12'O)" }
-
-
-// HANDOVER COMMAND - 48.008 subclause 3.2.1.11
-type record PDU_BSSMAP_HandoverCommand
-{
-  OCT1					messageType, // '13'O
-  BSSMAP_IE_Layer3Information	layer3Information,
-  BSSMAP_IE_CellIdentifier		cellIdentifier optional,
-  BSSMAP_IE_NewBSSToOldBSSInfo		newBSSToOldBSSInfo optional,
-  BSSMAP_IE_TalkerPriority      talkerPriority optional
-} with { variant "PRESENCE (messageType = '13'O)" }
-
-
-// HANDOVER COMPLETE -  48.008 subclause 3.2.1.12
-type record PDU_BSSMAP_HandoverComplete
-{
-  OCT1					messageType,  // H'14
-  BSSMAP_IE_RR_Cause			rR_Cause optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_SpeechCodec                 speechCodec optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional,
-  BSSMAP_IE_ChosenEncryptionAlgorithm   chosenEncryptionAlgorithm optional,
-  BSSMAP_IE_ChosenChannel               chosenChannel optional,
-  BSSMAP_IE_LCLS_BSS_Status             lCLS_BSS_Status optional
-} with { variant "PRESENCE (messageType = '14'O)" }
-
-
-// HANDOVER SUCCEEDED -  48.008 subclause 3.2.1.13
-type record PDU_BSSMAP_HandoverSucceeded
-{
-  OCT1					messageType,  // H'15
-  BSSMAP_IE_TalkerPriority      talkerPriority optional
-} with { variant "PRESENCE (messageType = '15'O)" }
-
-
-// HANDOVER CANDIDATE ENQUIRE -  48.008 subclause 3.2.1.14
-type record PDU_BSSMAP_HandoverCandidateEnquire
-{
-  OCT1					messageType,  // H'18
-  BSSMAP_IE_NumberOfMSs    		numberOfMSs,
-  BSSMAP_IE_CellIdentifierList		cellIdentifierList,
-  BSSMAP_IE_CellIdentifier		cellIdentifier
-} with { variant "PRESENCE (messageType = '18'O)" }
-
-
-// HANDOVER CANDIDATE RESPONSE -  48.008 subclause 3.2.1.15
-type record PDU_BSSMAP_HandoverCandidateResponse
-{
-  OCT1					messageType,  // H'19
-  BSSMAP_IE_NumberOfMSs   		numberOfMSs,
-  BSSMAP_IE_CellIdentifier		cellIdentifier
-} with { variant "PRESENCE (messageType = '19'O)" }
-
-
-// HANDOVER FAILURE  - 48.008 subclause 3.2.1.16
-type record PDU_BSSMAP_HandoverFailure
-{
-  OCT1					messageType,
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_RR_Cause			rR_Cause optional,
-  BSSMAP_IE_CircuitPool			circuitPool optional,
-  BSSMAP_IE_CircuitPoolList		circuitPoolList optional,
-  BSSMAP_IE_GERANClassmark		gERANClassmark optional,
-  BSSMAP_IE_NewBSSToOldBSSInfo 		newBSSToOldBSSInfo optional,
-  BSSMAP_IE_InterSystemInfo 		interSystemInformation optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional  
-} with { variant "PRESENCE (messageType = '16'O)" }
-
-
-// RESOURCE REQUEST  - 48.008 subclause 3.2.1.17
-type record PDU_BSSMAP_ResourceRequest
-{
-  OCT1					messageType,
-  BSSMAP_IE_Periodicity			periodicity,
-  BSSMAP_IE_ResourceIndMethod		resourceIndicationMethod,
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_ExtendedResourceInd		extendedResourceIndicator optional
-} with { variant "PRESENCE (messageType = '50'O)" }
-
-
-// RESOURCE INDICATION  - 48.008 subclause 3.2.1.18
-type record PDU_BSSMAP_ResourceIndication
-{
-  OCT1					messageType,
-  BSSMAP_IE_ResourceIndMethod		resourceIndicationMethod,
-  BSSMAP_IE_ResourceAvailable		resourceAvailable optional,
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_TotalResourceAccessible	totalResourceAccessible optional
-} with { variant "PRESENCE (messageType = '51'O)" }
-
-// PAGING - 48.008 subclause 3.2.1.19
-type record PDU_BSSMAP_Paging
-{
-  OCT1					messageType, // '52'O
-  BSSMAP_IE_IMSI			iMSI,
-  BSSMAP_IE_TMSI			tMSI optional,
-  BSSMAP_IE_CellIdentifierList		cellIdentifierList,
-  BSSMAP_IE_ChannelNeeded		channelNeeded optional,
-  BSSMAP_IE_EMLPP_Priority		eMLPP_Priority optional,
-  BSSMAP_IE_PagingInformation   pagingInformation optional
-} with { variant "PRESENCE (messageType = '52'O)" }
-
-
-// CLEAR REQUEST - 48.008 subclause 3.2.1.20 
-type record PDU_BSSMAP_ClearRequest
-{
-  OCT1					messageType, // H'22
-  BSSMAP_IE_Cause			cause   
-} with { variant "PRESENCE (messageType = '22'O)" }
-
-
-// CLEAR COMMAND - 48.008 subclause 3.2.1.21
-type record PDU_BSSMAP_ClearCommand
-{
-  OCT1					messageType, // H'20
-  BSSMAP_IE_Layer3HeaderInfo		layer3HeaderInfo optional,
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_CSFB_Indication             cSFB_Indication optional
-} with { variant "PRESENCE (messageType = '20'O)" }
-
-
-// CLEAR COMPLETE - 48.008 subclause 3.2.1.22
-type record PDU_BSSMAP_ClearComplete
-{
-  OCT1					messageType   // H'21
-} with { variant "PRESENCE (messageType = '21'O)" }
-
-
-// RESET - 48.008 subclause 3.2.1.23
-type record PDU_BSSMAP_Reset
-{
-  OCT1					messageType, // H'30
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_A_InterfaceSelectorForReset a_InterfaceSelectorForReset optional
-} with { variant "PRESENCE (messageType = '30'O)" }
-
-
-// RESET ACKNOWLEDGE - 48.008 subclause 3.2.1.24
-type record PDU_BSSMAP_ResetAck
-{
-  OCT1					messageType,   // H'31
-  BSSMAP_IE_A_InterfaceSelectorForReset a_InterfaceSelectorForReset optional
-} with { variant "PRESENCE (messageType = '31'O)" }
-
-
-// HANDOVER PERFORMED - 48.008 subclause 3.2.1.25
-type record PDU_BSSMAP_HandoverPerformed
-{
-  OCT1					messageType,
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_ChosenChannel		chosenChannel optional,
-  BSSMAP_IE_ChosenEncryptionAlgorithm   chosenEncryptionAlgorithm optional,
-  BSSMAP_IE_SpeechVersion		speechVersion optional,
-  BSSMAP_IE_LSAIdentifier		lSAIdentifier optional,
-  BSSMAP_IE_TalkerPriority              talkerPriority optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional,
-  BSSMAP_IE_SpeechCodec                 speechCodec optional,
-  BSSMAP_IE_LCLS_BSS_Status             lCLS_BSS_Status optional
-} with { variant "PRESENCE (messageType = '17'O)" }
-
-// OVERLOAD - 48.008 subclause 3.2.1.26
-type record PDU_BSSMAP_Overload
-{
-  OCT1					messageType, // H'32
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_CellIdentifier		cellIdentifier optional
-} with { variant "PRESENCE (messageType = '32'O)" }
-
-
-// MSC INVOKE TRACE - 48.008 subclause 3.2.1.27
-type record PDU_BSSMAP_MSCInvokeTrace
-{
-  OCT1					messageType, // H'36
-  BSSMAP_IE_TraceType			traceType,       
-  BSSMAP_IE_TriggerId			triggerId optional,
-  BSSMAP_IE_TraceReference		traceReference,
-  BSSMAP_IE_TransactionId		transactionId optional,
-  BSSMAP_IE_MobileIdentity		mobileIdentity optional,
-  BSSMAP_IE_OMCId			oMCId optional
-} with { variant "PRESENCE (messageType = '36'O)" }
-
-
-// BSS INVOKE TRACE - 48.008 subclause 3.2.1.28
-type record PDU_BSSMAP_BSSInvokeTrace
-{
-  OCT1					messageType, // H'37
-  BSSMAP_IE_TraceType			traceType,       
-  BSSMAP_IE_ForwardIndicator		forwardIndicator optional,
-  BSSMAP_IE_TriggerId			triggerId optional,
-  BSSMAP_IE_TraceReference		traceReference,
-  BSSMAP_IE_TransactionId		transactionId optional,
-  BSSMAP_IE_OMCId			oMCId optional
-} with { variant "PRESENCE (messageType = '37'O)" }
-
-
-// CLASSMARK UPDATE - 48.008 subclause 3.2.1.29
-type record PDU_BSSMAP_ClassmarkUpdate
-{
-  OCT1					messageType,  // '54'O
-  BSSMAP_IE_ClassmarkInformationType2	classmarkInformationType2,
-  BSSMAP_IE_ClassmarkInformationType3	classmarkInformationType3 optional,
-  BSSMAP_IE_TalkerPriority      talkerPriority optional
-} with { variant "PRESENCE (messageType = '54'O)" }
-
-// CIPHER MODE COMMAND - 48.008 subclause 3.2.1.30 
-type record PDU_BSSMAP_CipherModeCommand
-{
-  OCT1  				messageType, // '53'O
-  BSSMAP_IE_Layer3HeaderInfo		layer3HeaderInfo optional,
-  BSSMAP_IE_EncryptionInformation	encryptionInformation,
-  BSSMAP_IE_CipherResponseMode		cipherResponseMode optional,
-  BSSMAP_IE_KC128                       kC128 optional 
-} with { variant "PRESENCE (messageType = '53'O)" }
-
-
-// CIPHER MODE COMPLETE - 48.008 subclause 3.2.1.31 
-type record PDU_BSSMAP_CipherModeComplete
-{
-  OCT1					messageType, // '55'O
-  BSSMAP_IE_Layer3MessageContents	layer3MessageContents optional,
-  BSSMAP_IE_ChosenEncryptionAlgorithm	chosenEncryptionAlgorithm optional
-} with { variant "PRESENCE (messageType = '55'O)" }
-
-
-// COMPLETE LAYER 3 INFORMATION - 48.008 subclause 3.2.1.32
-type record PDU_BSSMAP_CompleteLayer3Information
-{
-  OCT1					messageType, // '57'O
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_Layer3Information	layer3Information,
-  BSSMAP_IE_ChosenChannel		chosenChannel optional,
-  BSSMAP_IE_LSAIdentifier		lSAIdentifier optional,
-  BSSMAP_IE_APDU			aPDU optional,
-  BSSMAP_IE_SpeechCodecList             codecList optional,
-  BSSMAP_IE_RedirectAttemptFlag         redirectAttemptFlag optional,
-  BSSMAP_IE_SendSequenceNumber          sendSequenceNumber optional,
-  BSSMAP_IE_IMSI                        iMSI optional
-} with { variant "PRESENCE (messageType = '57'O)" }
-
-
-// QUEUEING INDICATION - 48.008 subclause 3.2.1.33
-type record PDU_BSSMAP_QueueingIndication
-{
-  OCT1					messageType  // H'56
-} with { variant "PRESENCE (messageType = '56'O)" }
-
-
-// SAPI "n" REJECT - 48.008 subclause 3.2.1.34
-type record PDU_BSSMAP_SAPInReject
-{
-  OCT1					messageType, // H'25
-  BSSMAP_IE_DLCI			dLCI,
-  BSSMAP_IE_Cause			cause    
-} with { variant "PRESENCE (messageType = '25'O)" }
-
-
-// HANDOVER REQUIRED REJECT - 48.008 subclause 3.2.1.37
-type record PDU_BSSMAP_HandoverRequiredReject
-{
-  OCT1					messageType,
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_NewBSSToOldBSSInfo		newBSSToOldBSSInfo optional,
-  BSSMAP_IE_TalkerPriority      talkerPriority optional
-} with { variant "PRESENCE (messageType = '1A'O)" }
-
-// RESET CIRCUIT - 48.008 subclause 3.2.1.38
-type record PDU_BSSMAP_ResetCircuit
-{
-  OCT1					messageType, // H'34
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode,
-  BSSMAP_IE_Cause			cause 
-} with { variant "PRESENCE (messageType = '34'O)" }
-
-
-// RESET CIRCUIT ACKNOWLEDGE - 48.008 subclause 3.2.1.39
-type record PDU_BSSMAP_ResetCircuitAck
-{
-  OCT1					messageType, // H'35
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode 
-} with { variant "PRESENCE (messageType = '35'O)" }
-
-
-// HANDOVER DETECT - 48.008 subclause 3.2.1.40
-type record PDU_BSSMAP_HandoverDetect
-{
-  OCT1					messageType,  // '1B'O
-  BSSMAP_IE_TalkerPriority      talkerPriority optional
-} with { variant "PRESENCE (messageType = '1B'O)" }
-
-
-// CIRCUIT GROUP BLOCK - 48.008 subclause 3.2.1.41 
-type record PDU_BSSMAP_CircuitGroupBlock
-{
-  OCT1					messageType, // H'44
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode,
-  BSSMAP_IE_CircuitIdentityCodeList	circuitIdentityCodeList   
-} with { variant "PRESENCE (messageType = '44'O)" }
-
-
-// CIRCUIT GROUP BLOCKING ACKNOWLEDGE - 48.008 subclause 3.2.1.42 
-type record PDU_BSSMAP_CircuitGroupBlockingAck
-{
-  OCT1					messageType, // H'45
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode,
-  BSSMAP_IE_CircuitIdentityCodeList	circuitIdentityCodeList   
-} with { variant "PRESENCE (messageType = '45'O)" }
-
-
-// CIRCUIT GROUP UNBLOCK - 48.008 subclause 3.2.1.43 
-type record PDU_BSSMAP_CircuitGroupUnblock
-{
-  OCT1					messageType, // H'46
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode,
-  BSSMAP_IE_CircuitIdentityCodeList	circuitIdentityCodeList   
-} with { variant "PRESENCE (messageType = '46'O)" }
-
-
-// CIRCUIT GROUP UNBLOCKING ACKNOWLEDGE - 48.008 subclause 3.2.1.44
-type record PDU_BSSMAP_CircuitGroupUnblockAck
-{
-  OCT1					messageType, // H'47
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode,
-  BSSMAP_IE_CircuitIdentityCodeList	circuitIdentityCodeList   
-} with { variant "PRESENCE (messageType = '47'O)" }
-
-
-// CONFUSION - 48.008 subclause 3.2.1.45
-type record PDU_BSSMAP_Confusion
-{
-  OCT1					messageType, // H'26
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_Diagnostics			diagnostics
-} with { variant "PRESENCE (messageType = '26'O)" }
-
-
-// CLASSMARK REQUEST - 48.008 subclause 3.2.1.46
-type record PDU_BSSMAP_ClassmarkRequest
-{
-  OCT1					messageType, // H'58
-  BSSMAP_IE_TalkerPriority      talkerPriority optional
-} with { variant "PRESENCE (messageType = '58'O)" }
-
-// UNEQUIPPED CIRCUIT - 48.008 subclause 3.2.1.47
-type record PDU_BSSMAP_UnequippedCircuit
-{
-  OCT1					messageType, // H'48
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode,
-  BSSMAP_IE_CircuitIdentityCodeList	circuitIdentityCodeList optional
-} with { variant "PRESENCE (messageType = '48'O)" }
-
-
-// CIPHER MODE REJECT - 48.008 subclause 3.2.1.48 
-type record PDU_BSSMAP_CipherModeReject
-{
-  OCT1					messageType, // H'59
-  BSSMAP_IE_Cause			cause   
-} with { variant "PRESENCE (messageType = '59'O)" }
-
-
-// LOAD INDICATION - 48.008 subclause 3.2.1.49
-type record PDU_BSSMAP_LoadIndication
-{
-  OCT1					messageType, // H'5A
-  BSSMAP_IE_TimeIndication		timeIndication,
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_CellIdentifierList		cellIdentifierList,
-  BSSMAP_IE_ResourceSituation		resourceSitation optional,
-  BSSMAP_IE_Cause			cause  optional   
-} with { variant "PRESENCE (messageType = '5A'O)" }
-
-
-// VGCS/VBS SETUP - 48.008 subclause 3.2.1.50
-type record PDU_BSSMAP_VGCS_VBSSetup
-{
-  OCT1					messageType, // H'04
-  BSSMAP_IE_GroupCallReference		groupCallReference,
-  BSSMAP_IE_Priority			priority optional,
-  BSSMAP_IE_VGCS_FeatureFlags   vGCS_FeatureFlags optional
-} with { variant "PRESENCE (messageType = '04'O)" }
-
-// VGCS/VBS SETUP ACK - 48.008 subclause 3.2.1.51
-type record PDU_BSSMAP_VGCS_VBSSetupAck
-{
-  OCT1					messageType, // H'05
-  BSSMAP_IE_VGCS_FeatureFlags   vGCS_FeatureFlags optional
-} with { variant "PRESENCE (messageType = '05'O)" }
-
-
-// VGCS/VBS SETUP REFUSE - 48.008 subclause 3.2.1.52
-type record PDU_BSSMAP_VGCS_VBSSetupRefuse
-{
-  OCT1					messageType, // H'06
-  BSSMAP_IE_Cause			cause   
-} with { variant "PRESENCE (messageType = '06'O)" }
-
-
-// VGCS/VBS ASSIGNMENT REQUEST - 48.008 subclause 3.2.1.53
-type record PDU_BSSMAP_VGCS_VBSAssignmentRequest
-{
-  OCT1					messageType, // H'07
-  BSSMAP_IE_ChannelType			channelType,
-  BSSMAP_IE_AssignmentRequirement	assignmentRequirement,
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_GroupCallReference		groupCallReference,
-  BSSMAP_IE_Priority			priority optional,
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode optional,
-  BSSMAP_IE_DownLinkDTXFlag		downLinkDTX_Flag optional,
-  BSSMAP_IE_EncryptionInformation	encryptionInformation optional,
-  BSSMAP_IE_VSTK_RAND           vSTK_RAND optional,
-  BSSMAP_IE_VSTK                vSTK optional,
-  BSSMAP_IE_CellIdentifierListSegment   cellIdentifierListSegment optional
-} with { variant "PRESENCE (messageType = '07'O)" }
-
-
-// VGCS/VBS ASSIGNMENT RESULT - 48.008 subclause 3.2.1.54
-type record PDU_BSSMAP_VGCS_VBSAssignmentResult
-{
-  OCT1					messageType, // H'1C
-  BSSMAP_IE_ChannelType			channelType,
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_ChosenChannel		chosenChannel optional,
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentityCode optional,
-  BSSMAP_IE_CircuitPool			circuitPool optional
-} with { variant "PRESENCE (messageType = '1C'O)" }
-
-
-// VGCS/VBS ASSIGNMENT FAILURE - 48.008 subclause 3.2.1.55
-type record PDU_BSSMAP_VGCS_VBSAssignmentFailure
-{
-  OCT1					messageType, // H'1D
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_CircuitPool			circuitPool optional,
-  BSSMAP_IE_CircuitPoolList		circuitPoolList optional
-} with { variant "PRESENCE (messageType = '1D'O)" }
-
-
-// VGCS/VBS QUEUING INDICATION - 48.008 subclause 3.2.1.56
-type record PDU_BSSMAP_VGCS_VBSQueuingIndication
-{
-  OCT1					messageType // H'1E
-} with { variant "PRESENCE (messageType = '1E'O)" }
-
-
-// UPLINK REQUEST - 48.008 subclause 3.2.1.57
-type record PDU_BSSMAP_UplinkRequest
-{
-  OCT1					messageType, // H'1F
-  BSSMAP_IE_TalkerPriority  talkerPriority optional,
-  BSSMAP_IE_CellIdentifier  cellIdentifier optional,
-  BSSMAP_IE_Layer3Information   layer3Information optional,
-  BSSMAP_IE_MobileIdentity  mobileIdentity optional
-} with { variant "PRESENCE (messageType = '1F'O)" }
-
-
-// UPLINK REQUEST ACK - 48.008 subclause 3.2.1.58
-type record PDU_BSSMAP_UplinkRequestAck
-{
-  OCT1					messageType, // H'27
-  BSSMAP_IE_TalkerPriority  talkerPriority optional,
-  BSSMAP_IE_EmergencySetIndication  emergencySetIndication optional,
-  BSSMAP_IE_TalkerIdentity  talkerIdentity optional
-} with { variant "PRESENCE (messageType = '27'O)" }
-
-
-// UPLINK REQUEST CONFIRMATION - 48.008 subclause 3.2.1.59
-type record PDU_BSSMAP_UplinkRequestConfirmation
-{
-  OCT1					messageType, // H'49
-  BSSMAP_IE_CellIdentifier		cellIdentifier,
-  BSSMAP_IE_TalkerIdentity  talkerIdentity optional,
-  BSSMAP_IE_Layer3Information	layer3Information
-} with { variant "PRESENCE (messageType = '49'O)" }
-
-
-// UPLINK APPLICATION DATA - 48.008 subclause 3.2.1.59a
-type record PDU_BSSMAP_UplinkApplicationData
-{
-  OCT1	                             messageType, 
-  BSSMAP_IE_CellIdentifier           cellIdentifier, 
-  BSSMAP_IE_Layer3Information        layer3Information,
-  BSSMAP_IE_ApplicationDataInformation  applicationDataInformation
-} with { variant "PRESENCE (messageType = '63'O)" }
-
-
-// UPLINK RELEASE INDICATION- 48.008 subclause 3.2.1.60
-type record PDU_BSSMAP_UplinkReleaseIndication
-{
-  OCT1					messageType, // H'4A
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_TalkerPriority  talkerPriority optional
-} with { variant "PRESENCE (messageType = '4A'O)" }
-
-
-// UPLINK REJECT COMMAND - 48.008 subclause 3.2.1.61
-type record PDU_BSSMAP_UplinkRejectCommand
-{
-  OCT1					messageType, // H'4B
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_TalkerPriority  currentTalkerPriority optional,
-  BSSMAP_IE_TalkerPriority  rejectedTalkerPriority optional,
-  BSSMAP_IE_TalkerIdentity  talkerIdentity optional
-} with { variant "PRESENCE (messageType = '4B'O)" }
-
-
-// UPLINK RELEASE COMMAND - 48.008 subclause 3.2.1.62
-type record PDU_BSSMAP_UplinkReleaseCommand
-{
-  OCT1					messageType, // H'4C
-  BSSMAP_IE_Cause			cause    
-} with { variant "PRESENCE (messageType = '4C'O)" }
-
-
-// UPLINK SEIZED COMMAND- 48.008 subclause 3.2.1.63
-type record PDU_BSSMAP_UplinkSeizedCommand
-{
-  OCT1					messageType, // H'4E
-  BSSMAP_IE_Cause			cause,
-  BSSMAP_IE_TalkerPriority  talkerPriority optional,
-  BSSMAP_IE_EmergencySetIndication  emergencySetIndication optional,
-  BSSMAP_IE_TalkerIdentity  talkerIdentity optional
-} with { variant "PRESENCE (messageType = '4E'O)" }
-
-
-
-// SUSPEND - 48.008 subclause 3.2.1.64
-type record PDU_BSSMAP_Suspend
-{
-  OCT1					messageType, // H'28
-  BSSMAP_IE_DLCI			dLCI
-} with { variant "PRESENCE (messageType = '28'O)" }
-
-
-// RESUME - 48.008 subclause 3.2.1.65
-type record PDU_BSSMAP_Resume
-{
-  OCT1					messageType, // H'29
-  BSSMAP_IE_DLCI			dLCI
-} with { variant "PRESENCE (messageType = '29'O)" }
-
-
-// CHANGE CIRCUIT - 48.008 subclause 3.2.1.66
-type record PDU_BSSMAP_ChangeCircuit
-{
-  OCT1					messageType, // H'4E
-  BSSMAP_IE_Cause			cause    
-} with { variant "PRESENCE (messageType = '4E'O)" }
-
-
-// CHANGE CIRCUIT ACKNOWLEDGE - 48.008 subclause 3.2.1.67
-type record PDU_BSSMAP_ChangeCircuitAck
-{
-  OCT1					messageType, // H'4F
-  BSSMAP_IE_CircuitIdentityCode		circuitIdentity   
-} with { variant "PRESENCE (messageType = '4F'O)" }
-
-
-// COMMON ID - 48.008 subclause 3.2.1.68
-type record PDU_BSSMAP_CommonID
-{
-  OCT1					messageType, // H'2F
-  BSSMAP_IE_IMSI			iMSI,
-  BSSMAP_IE_SNAAccessInfo		sNAAccessInformation optional
-} with { variant "PRESENCE (messageType = '2F'O)" }
-
-
-// LSA INFORMATION - 48.008 subclause 3.2.1.69
-type record PDU_BSSMAP_LSAInformation
-{
-  OCT1					messageType, // H'2C
-  BSSMAP_IE_LSAInformation		lSAInformation
-} with { variant "PRESENCE (messageType = '2C'O)" }
-
-
-// REFORM LOCATION REQUEST - 48.008 subclause 3.2.1.71
-type record PDU_BSSMAP_PerformLocationRequest
-{
-  OCT1					messageType, // '2B'O
-  BSSMAP_IE_LocationType		locationType,
-  BSSMAP_IE_CellIdentifier		cellIdentifier optional,
-  BSSMAP_IE_ClassmarkInformationType3	classmarkInformationType3 optional,
-  BSSMAP_IE_LCSClientType		lCS_ClientType optional,
-  BSSMAP_IE_ChosenChannel		chosenChannel optional,
-  BSSMAP_IE_LCSPriority			lCS_Priority optional,
-  BSSMAP_IE_LCSQOS			lCS_QOS optional,
-  BSSMAP_IE_GPSAssistanceData		gPS_AssistanceData optional,
-  BSSMAP_IE_APDU			aPDU optional,
-  BSSMAP_IE_IMSI                        iMSI optional,
-  BSSMAP_IE_IMEI                        iMEI optional,
-  BSSMAP_IE_GANSS_LocationType          gANSS_LocationType optional,
-  BSSMAP_IE_GANSS_AssistanceData        gANSS_AssistanceData optional
-} with { variant "PRESENCE (messageType = '2B'O)" }
-
-
-// REFORM LOCATION RESPONSE - 48.008 subclause 3.2.1.72
-type record PDU_BSSMAP_PerformLocationResponse
-{
-  OCT1					messageType, // '2D'O
-  BSSMAP_IE_LocationEstimate		locationEstimate optional,
-  BSSMAP_IE_PositioningData		positioningData optional,
-  BSSMAP_IE_DecipheringKeys		decipheringKeys optional,
-  BSSMAP_IE_LCSCause			lCS_Cause optional,
-  BSSMAP_IE_VelocityEstimate            velocityEstimate optional,
-  BSSMAP_IE_GANSS_PositioningData       gANSS_PositioningData optional
-} with { variant "PRESENCE (messageType = '2D'O)" }
-
-
-// REFORM LOCATION ABORT - 48.008 subclause 3.2.1.73
-type record PDU_BSSMAP_PerformLocationAbort
-{
-  OCT1					messageType, // '2E'O
-  BSSMAP_IE_LCSCause			lCS_Cause
-} with { variant "PRESENCE (messageType = '2E'O)" }
-
-
-// CONNECTIONLESS INFORMATION - 48.008 subclause 3.2.1.74
-type record PDU_BSSMAP_ConnectionlessInformation
-{
-  OCT1					messageType, // '3A'O
-  BSSMAP_IE_NetworkElementIdentity	networkElementIdentitySource,
-  BSSMAP_IE_NetworkElementIdentity	networkElementIdentityTarget,
-  BSSMAP_IE_APDU			aPDU,
-  BSSMAP_IE_Segmentation		segmentation optional,
-  BSSMAP_IE_ReturnErrorRequest		returnErrorRequest optional,
-  BSSMAP_IE_ReturnErrorCause		returnErrorCause optional
-} with { variant "PRESENCE (messageType = '3A'O)" }
-
-// 3.2.1.75    CHANNEL MODIFY REQUEST
-type record PDU_BSSMAP_ChannelModifyRequest
-{
-  OCT1                  messageType, // '08'O
-  BSSMAP_IE_Cause       cause
-} with { variant "PRESENCE (messageType = '08'O)" }
-
-// FIXME: these two message type codes are not specified in the standard
-/*// 3.2.1.76 EMERGENCY RESET INDICATION
-type record PDU_BSSMAP_EmergencyResetIndication
-{
-OCT1                  messageType, // 'X'O
-BSSMAP_IE_CellIdentifier        cellIdentifier optional,
-BSSMAP_IE_Layer3Information   layer3Information optional,
-BSSMAP_IE_MobileIdentity      mobileIdentity optional
-} with {variant "TAG (
-// layer3Information?}
-
-// 3.2.1.77 EMERGENCY RESET COMMAND
-type record PDU_BSSMAP_EmergencyResetCommand
-{
-OCT1                  messageType // 'X'O
-}*/
-
-// 3.2.1.78 VGCS ADDITIONAL INFORMATION
-type record PDU_BSSMAP_VGCS_AdditionalInformation
-{
-  OCT1                  messageType, // '60'O
-  BSSMAP_IE_TalkerIdentity  talkerIdentity
-} with { variant "PRESENCE (messageType = '60'O)" }
-
-
-// 3.2.1.79 VGCS/VBS AREA CELL INFO
-type record PDU_BSSMAP_VGCS_VBS_AreaCellInfo
-{
-  OCT1                  messageType, // '3C'O
-  BSSMAP_IE_CellIdentifierListSegment   cellIdentifierListSegment,
-  BSSMAP_IE_AssignmentRequirement   assignmentRequirement optional
-} with { variant "PRESENCE (messageType = '3C'O)" }
-
-
-// 3.2.1.80 VGCS/VBS ASSIGNMENT STATUS
-type record PDU_BSSMAP_VGCS_VBS_AssignmentStatus
-{
-  OCT1                  messageType, // '3B'O   
-  BSSMAP_IE_CellIdentifierListSegmentEstCells                          cellIdentifierListForEstablishedCells optional,
-  BSSMAP_IE_CellIdentifierListSegmentCellsToEst                        cellIdentifierListForCellsToEstablish optional,  
-  BSSMAP_IE_CellIdentifierListSegmentReleasedCellsNoUserPresent        cellIdentifierListSegmentReleasedCellsNoUserPresent optional,
-  BSSMAP_IE_CellIdentifierListSegmentNotEstablishedCellsNoEstPossible  cellIdentifierListSegmentNotEstablishedCellsNoEstPossible optional,
-  BSSMAP_IE_VGCS_VBS_CellStatus       vGCS_VBS_CellStatus optional
-} with { variant "PRESENCE (messageType = '3B'O)" }
-
-
-// 3.2.1.81 VGCS SMS
-type record PDU_BSSMAP_VGCS_SMS
-{
-  OCT1                      messageType, // '61'O
-  BSSMAP_IE_SMS_to_VGCS     sMS_to_VGCS
-} with { variant "PRESENCE (messageType = '61'O)" }
-
-
-// 3.2.1.82 NOTIFICATION DATA
-type record PDU_BSSMAP_NotificationData
-{
-  OCT1                      messageType, // '62'
-  BSSMAP_IE_ApplicationData applicationData,
-  BSSMAP_IE_DataIdentity    dataIdentity,
-  BSSMAP_IE_MSISDN          mSISDN optional
-} with { variant "PRESENCE (messageType = '62'O)" }
-
-
-// 3.2.1.83 INTERNAL HANDOVER REQUIRED
-type record PDU_BSSMAP_InternalHandoverRequired
-{
-  OCT1                                 messageType, // '70'
-  BSSMAP_IE_Cause                      cause,
-  BSSMAP_IE_CellIdentifier             cellIdentifier,
-  BSSMAP_IE_AoIP_TransportLayerAddress aoIPTransportLayer optional,
-  BSSMAP_IE_SpeechCodecList            codecList    
-} with { variant "PRESENCE (messageType = '70'O)" }
-
-
-// 3.2.1.84 INTERNAL HANDOVER REQUIRED REJECT
-type record PDU_BSSMAP_InternalHandoverRequiredReject
-{
-  OCT1                                 messageType, // '71' 
-  BSSMAP_IE_Cause                      cause,
-  BSSMAP_IE_SpeechCodecList            codecList optional  
-} with { variant "PRESENCE (messageType = '71'O)" }
-
-
-// 3.2.1.85 INTERNAL HANDOVER COMMAND
-type record PDU_BSSMAP_InternalHandoverCommand
-{
-  OCT1                                 messageType, // '72'
-  BSSMAP_IE_SpeechCodec                speechCodec,
-  BSSMAP_IE_CircuitIdentityCode        circuitIdentityCode optional,
-  BSSMAP_IE_AoIP_TransportLayerAddress aoIPTransportLayer optional,  
-  BSSMAP_IE_CallIdentifier             callIdentifier optional, 
-  BSSMAP_IE_DownLinkDTXFlag            downLinkDTX_Flag optional,
-  BSSMAP_IE_LCLS_ConnectionStatusControl lCLS_ConnectionStatusControl optional           
-} with { variant "PRESENCE (messageType = '72'O)" }
-
-// 3.2.1.86 INTERNAL HANDOVER ENQUIRY
-type record PDU_BSSMAP_InternalHandoverEnquiry
-{
-  OCT1                                 messageType, //'73'
-  BSSMAP_IE_SpeechCodec                speechCodec
-} with { variant "PRESENCE (messageType = '73'O)" }
-
-
-// 3.2.1.87 RESET IP RESOURCE
-type record PDU_BSSMAP_ResetIPResource
-{
-  OCT1                                 messageType, //'3D'
-  BSSMAP_IE_Cause                      cause,
-  BSSMAP_IE_CallIdentifierList         callIdentifierList    
-} with { variant "PRESENCE (messageType = '3D'O)" }
-
-
-// 3.2.1.88 RESET IP RESOURCE ACK
-type record PDU_BSSMAP_ResetIPResourceAck
-{
-  OCT1                                 messageType, //'3E'
-  BSSMAP_IE_CallIdentifierList         callIdentifierList    
-} with { variant "PRESENCE (messageType = '3E'O)" }
-
-
-// 3.2.1.89 REROUTE COMMAND
-type record PDU_BSSMAP_RerouteCommand
-{
-  OCT1                                 messageType, //'78'
-  BSSMAP_IE_Layer3Information          initialLayer3Information,                 
-  BSSMAP_IE_RerouteRejectCause         rerouteRejectCause,
-  BSSMAP_IE_Layer3Information          layer3Information optional,
-  BSSMAP_IE_SendSequenceNumber         sendSequenceNumber optional,
-  BSSMAP_IE_IMSI                       iMSI optional  
-} with { variant "PRESENCE (messageType = '78'O)" }
-
-// 3.2.1.90 REROUTE COMPLETE
-type record PDU_BSSMAP_RerouteComplete
-{
-  OCT1                                 messageType, //'79'
-  BSSMAP_IE_RerouteCompleteOutcome     rerouteCompleteOutcome  
-} with { variant "PRESENCE (messageType = '79'O)" }
-
-// 3.2.1.91 LCLS CONNECT CONTROL
-type record PDU_BSSMAP_LCLS_ConnectControl
-{
-  OCT1                                 messageType,  //'74'
-  BSSMAP_IE_LCLS_Configuration                   lCLS_Configuration optional,
-  BSSMAP_IE_LCLS_ConnectionStatusControl         lCLS_ConnectionStatusControl optional
-} with { variant "PRESENCE (messageType = '74'O)" }
-
-// 3.2.1.92 LCLS CONNECT CONTROL ACK
-type record PDU_BSSMAP_LCLS_ConnectControlAck
-{
-  OCT1                                 messageType,  //'75'
-  BSSMAP_IE_LCLS_BSS_Status                      lCLS_BSS_Status  
-} with { variant "PRESENCE (messageType = '75'O)" }
-
-// 3.2.1.93 LCLS NOTIFICATION
-type record PDU_BSSMAP_LCLS_Notification
-{
-  OCT1                                 messageType, //'76'
-  BSSMAP_IE_LCLS_BSS_Status                      lCLS_BSS_Status optional,
-  BSSMAP_IE_LCLS_BreakRequest                    lCLS_BreakRequest optional
-} with { variant "PRESENCE (messageType = '76'O)" }
-
-
-//The container type of all BSSMAP messages
-type union PDU_BSSMAP 
-{
-  PDU_BSSMAP_AssignmentRequest		assignmentRequest,
-  PDU_BSSMAP_AssignmentComplete		assignmentComplete,
-  PDU_BSSMAP_AssignmentFailure      assignmentFailure,
-  PDU_BSSMAP_ChannelModifyRequest   channelModifyRequest,
-  PDU_BSSMAP_Block			block,
-  PDU_BSSMAP_BlockingAck		blockingAck,
-  PDU_BSSMAP_BSSInvokeTrace		bSSInvokeTrace,
-  PDU_BSSMAP_ChangeCircuit		changeCircuit,
-  PDU_BSSMAP_ChangeCircuitAck		changeCircuitAck,
-  PDU_BSSMAP_CipherModeCommand		cipherModeCommand,
-  PDU_BSSMAP_CipherModeComplete		cipherModeComplete,
-  PDU_BSSMAP_CipherModeReject		cipherModeReject,
-  PDU_BSSMAP_CircuitGroupBlock		circuitGroupBlock,
-  PDU_BSSMAP_CircuitGroupBlockingAck	circuitGroupBlockingAck,
-  PDU_BSSMAP_CircuitGroupUnblock	circuitGroupUnblock,
-  PDU_BSSMAP_CircuitGroupUnblockAck	circuitGroupUnblockAck,
-  PDU_BSSMAP_ClassmarkRequest		classmarkRequest,
-  PDU_BSSMAP_ClassmarkUpdate		classmarkUpdate,
-  PDU_BSSMAP_ClearCommand		clearCommand,
-  PDU_BSSMAP_ClearComplete		clearComplete,
-  PDU_BSSMAP_ClearRequest		clearRequest,
-  PDU_BSSMAP_CommonID			commonID,
-  PDU_BSSMAP_CompleteLayer3Information	completeLayer3Information,
-  PDU_BSSMAP_Confusion			confusion,
-  PDU_BSSMAP_ConnectionlessInformation	connectionlessInformation,
-  PDU_BSSMAP_HandoverCandidateEnquire	handoverCandidateEnquire,
-  PDU_BSSMAP_HandoverCandidateResponse	handoverCandidateResponse,
-  PDU_BSSMAP_HandoverCommand		handoverCommand,
-  PDU_BSSMAP_HandoverComplete		handoverComplete,
-  PDU_BSSMAP_HandoverDetect		handoverDetect,
-  PDU_BSSMAP_HandoverFailure		handoverFailure,
-  PDU_BSSMAP_HandoverPerformed		handoverPerformed,
-  PDU_BSSMAP_HandoverRequest		handoverRequest,
-  PDU_BSSMAP_HandoverRequestAck		handoverRequestAck,
-  PDU_BSSMAP_HandoverRequired		handoverRequired,
-  PDU_BSSMAP_HandoverRequiredReject	handoverRequiredReject,
-  PDU_BSSMAP_HandoverSucceeded      handoverSucceeded,
-  PDU_BSSMAP_LoadIndication		loadIndication,
-  PDU_BSSMAP_LSAInformation		lSAInformation,
-  PDU_BSSMAP_MSCInvokeTrace		mSCInvokeTrace,
-  PDU_BSSMAP_Overload			overload,
-  PDU_BSSMAP_Paging			paging,
-  PDU_BSSMAP_PerformLocationAbort	performLocationAbort,
-  PDU_BSSMAP_PerformLocationRequest	performLocationRequest,
-  PDU_BSSMAP_PerformLocationResponse	performLocationResponse,
-  PDU_BSSMAP_QueueingIndication		queueingIndication,
-  PDU_BSSMAP_Reset			reset,
-  PDU_BSSMAP_ResetAck			resetAck,
-  PDU_BSSMAP_ResetCircuit		resetCircuit,
-  PDU_BSSMAP_ResetCircuitAck		resetCircuitAck,
-  PDU_BSSMAP_ResourceIndication		resourceIndication,
-  PDU_BSSMAP_ResourceRequest		resourceRequest,
-  PDU_BSSMAP_SAPInReject		sAPInReject,
-  PDU_BSSMAP_Suspend			suspend,
-  PDU_BSSMAP_Resume			resume,
-  PDU_BSSMAP_Unblock			unblock,
-  PDU_BSSMAP_UnblockAck			unblockAck,
-  PDU_BSSMAP_UnequippedCircuit		unequippedCircuit,
-  PDU_BSSMAP_UplinkRequest		uplinkRequest,
-  PDU_BSSMAP_UplinkRequestAck		uplinkRequestAck,
-  PDU_BSSMAP_UplinkRequestConfirmation	uplinkRequestConfirmation,
-  PDU_BSSMAP_UplinkReleaseIndication	uplinkReleaseIndication,
-  PDU_BSSMAP_UplinkRejectCommand	uplinkRejectCommand,
-  PDU_BSSMAP_UplinkReleaseCommand	uplinkReleaseCommand,
-  PDU_BSSMAP_UplinkSeizedCommand	uplinkSeizedCommand,
-  PDU_BSSMAP_VGCS_VBSSetup		vGCS_VBSSetup,
-  PDU_BSSMAP_VGCS_VBSSetupAck		vGCS_VBSSetupAck,
-  PDU_BSSMAP_VGCS_VBSSetupRefuse	vGCS_VBSSetupRefuse,
-  PDU_BSSMAP_VGCS_VBSAssignmentRequest	vGCS_VBSAssignmentRequest,
-  PDU_BSSMAP_VGCS_VBSAssignmentResult	vGCS_VBSAssignmentResult,
-  PDU_BSSMAP_VGCS_VBSAssignmentFailure	vGCS_VBSAssignmentFailure,
-  PDU_BSSMAP_VGCS_VBSQueuingIndication	vGCS_VBSQueuingIndication,
-  // FIXME: these 2 message type codes are not specified in the standard
-  //  PDU_BSSMAP_EmergencyResetIndication   emergencyResetIndication,
-  //  PDU_BSSMAP_EmergencyResetCommand      emergencyResetCommand,
-  PDU_BSSMAP_VGCS_AdditionalInformation vGCS_AdditionalInformation,
-  PDU_BSSMAP_VGCS_VBS_AreaCellInfo      vGCS_VBS_AreaCellInfo,
-  PDU_BSSMAP_VGCS_VBS_AssignmentStatus  vGCS_VBS_AssignmentStatus,
-  PDU_BSSMAP_VGCS_SMS                   vGCS_SMS,
-  PDU_BSSMAP_UplinkApplicationData      uplinkApplicationData,
-  PDU_BSSMAP_NotificationData           notificationData,
-  PDU_BSSMAP_InternalHandoverRequired   internalHandoverRequired,
-  PDU_BSSMAP_InternalHandoverRequiredReject   internalHandoverRequiredReject,
-  PDU_BSSMAP_InternalHandoverCommand    internalHandoverCommand,
-  PDU_BSSMAP_InternalHandoverEnquiry    internalHandoverEnquiry,
-  PDU_BSSMAP_ResetIPResource            resetIPResource,
-  PDU_BSSMAP_ResetIPResourceAck         resetIPResourceAck,
-  PDU_BSSMAP_RerouteCommand             rerouteCommand,
-  PDU_BSSMAP_RerouteComplete            rerouteComplete,
-  PDU_BSSMAP_LCLS_ConnectControl        lCLS_ConnectControl,
-  PDU_BSSMAP_LCLS_ConnectControlAck     lCLS_connectControlAck,
-  PDU_BSSMAP_LCLS_Notification          lCLS_Notification
-}
-
-
-
-///////////////////////////////////////////
-//   BSSAP message definition
-///////////////////////////////////////////
-
-type union BSSMAPorDTAP
-{
-  PDU_BSSMAP		bssmap,
-  octetstring  		dtap
-}
-
-
-type record PDU_BSSAP
-{
-  BIT1			discriminator, // 0= BSSMAP ; 1 = DTAP
-  BIT7			spare, // always '0000000'B
-  OCT1			dlci optional,
-  LIN1			lengthIndicator,
-  BSSMAPorDTAP   pdu
-} with {variant (lengthIndicator)"LENGTHTO (pdu)";
-  variant (pdu)"CROSSTAG( bssmap,  discriminator='0'B;
-  dtap,    discriminator='1'B)";
-  variant (dlci)"PRESENCE(discriminator='1'B)"}
-
-
-} with { encode "RAW"} // End of module BSSMAP_typedefs 
diff --git a/BSSMAP_v11.2.0_CNL113761_LATEST/src/BSSMAP_V11.2.0.grp b/BSSMAP_v11.2.0_CNL113761_LATEST/src/BSSMAP_V11.2.0.grp
deleted file mode 100644
index 02e3cd3..0000000
--- a/BSSMAP_v11.2.0_CNL113761_LATEST/src/BSSMAP_V11.2.0.grp
+++ /dev/null
@@ -1,27 +0,0 @@
-<!--
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2012                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               BSSMAP_V11.2.0.grp
-//  Description:        BSSMAP_V11.2.0 Protocol Module group file
-//  Rev:                R1A01
-//  Prodnr:             CNL 113 761
-//  Updated:            2012-11-06
-//  Contact:            http://ttcn.ericsson.se
-//
--->
-
-<!DOCTYPE TITAN_GUI_FileGroup_file>
-<FileGroup TITAN_version="1.10.pl0" >
-    <File_Group name="BSSMAP_V11.2.0" >
-        <File path="BSSAP_Types.ttcn" />
-    </File_Group>
-</FileGroup>
diff --git a/GTP_v13.5.0_CNL113843_LATEST/GTP_v13.5.0_CNL113843.tpd b/GTP_v13.5.0_CNL113843_LATEST/GTP_v13.5.0_CNL113843.tpd
deleted file mode 100644
index 62620ee..0000000
--- a/GTP_v13.5.0_CNL113843_LATEST/GTP_v13.5.0_CNL113843.tpd
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2016 Ericsson
-
-  The copyright to the computer  program(s) herein  is the property of Ericsson.
-  The program(s) may be used and/or copied only with the written permission
-  of Ericsson or in accordance with  the terms and conditions  stipulated in the
-  agreement/contract under which the program(s) has been supplied.
-
-
-   File:               GTP_v13.5.0_CNL113843.tpd
-   Description:        tpd project file
-   Rev:                R1B
-   Prodnr:             CNL 113 843
-
- -->
-<TITAN_Project_File_Information version="1.0">
-  <ProjectName>GTP_v13.5.0_CNL113843</ProjectName>
-  <ReferencedProjects>
-    <ReferencedProject name="ProtocolModules_Common" projectLocationURI="../COMMON/ProtocolModules_Common.tpd"/>
-  </ReferencedProjects>
-  <Folders>
-    <FolderResource projectRelativePath="src" relativeURI="src"/>
-  </Folders>
-  <Files>
-    <FileResource projectRelativePath="src/GTPC_EncDec.cc" relativeURI="src/GTPC_EncDec.cc"/>
-    <FileResource projectRelativePath="src/GTPC_Types.ttcn" relativeURI="src/GTPC_Types.ttcn"/>
-    <FileResource projectRelativePath="src/GTPU_EncDec.cc" relativeURI="src/GTPU_EncDec.cc"/>
-    <FileResource projectRelativePath="src/GTPU_Types.ttcn" relativeURI="src/GTPU_Types.ttcn"/>
-  </Files>
-  <ActiveConfiguration>Default</ActiveConfiguration>
-  <Configurations>
-    <Configuration name="Default">
-      <ProjectProperties>
-        <MakefileSettings>
-          <generateInternalMakefile>true</generateInternalMakefile>
-          <GNUMake>true</GNUMake>
-          <incrementalDependencyRefresh>true</incrementalDependencyRefresh>
-          <targetExecutable>bin/GTP_v13.5.0_CNL113843</targetExecutable>
-        </MakefileSettings>
-        <LocalBuildSettings>
-          <workingDirectory>bin</workingDirectory>
-        </LocalBuildSettings>
-      </ProjectProperties>
-    </Configuration>
-  </Configurations>
-</TITAN_Project_File_Information>
diff --git a/GTP_v13.5.0_CNL113843_LATEST/doc/GTP_v13.5_Descr.doc b/GTP_v13.5.0_CNL113843_LATEST/doc/GTP_v13.5_Descr.doc
deleted file mode 100644
index 06749f8..0000000
--- a/GTP_v13.5.0_CNL113843_LATEST/doc/GTP_v13.5_Descr.doc
+++ /dev/null
Binary files differ
diff --git a/GTP_v13.5.0_CNL113843_LATEST/doc/GTP_v13.5_PRI.doc b/GTP_v13.5.0_CNL113843_LATEST/doc/GTP_v13.5_PRI.doc
deleted file mode 100644
index f8a42fd..0000000
--- a/GTP_v13.5.0_CNL113843_LATEST/doc/GTP_v13.5_PRI.doc
+++ /dev/null
Binary files differ
diff --git a/GTP_v13.5.0_CNL113843_LATEST/src/GTPC_EncDec.cc b/GTP_v13.5.0_CNL113843_LATEST/src/GTPC_EncDec.cc
deleted file mode 100644
index d3548e7..0000000
--- a/GTP_v13.5.0_CNL113843_LATEST/src/GTPC_EncDec.cc
+++ /dev/null
@@ -1,216 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               GTPC_EncDec.cc
-//  Rev:                R1B
-//  Prodnr:             CNL 113 843
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 29.060 v13.5.0
-
-#include "GTPC_Types.hh"
-
-namespace GTPC__Types {
-
-
-// find the length of the optional part and decode optional part into OPT_PART   
-int find_optpart_length(const unsigned char * opt_part_ptr,GTPC__Header__optional__part& OPT_PART)// pointer to opt part start
-{
-  int opt_part_length = 4; // mandatory minimum length of opt_part  
-  OPT_PART.sequenceNumber() = OCTETSTRING(2,opt_part_ptr);
-  OPT_PART.npduNumber() = OCTETSTRING(1,opt_part_ptr+2);
-  OPT_PART.nextExtHeader() = OCTETSTRING(1,opt_part_ptr+3);
-  OPT_PART.gTPC__extensionHeader__List() = OMIT_VALUE; 
-   
-      int i = 0;    
-      bool opt_part_end = false;
-      while(!opt_part_end) 
-      {                  
-        if (opt_part_ptr[opt_part_length-1] != 0x00) // 0x00 means end of optional part
-            {
-             unsigned char lengthfield = opt_part_ptr[opt_part_length];
-             
-             OPT_PART.gTPC__extensionHeader__List()()[i].lengthfield() = lengthfield;
-             OPT_PART.gTPC__extensionHeader__List()()[i].content() = 
-               OCTETSTRING(4*lengthfield-2,opt_part_ptr + opt_part_length +1);
-             OPT_PART.gTPC__extensionHeader__List()()[i].nextExtHeader() = 
-               OCTETSTRING(1,opt_part_ptr + opt_part_length + 4*lengthfield - 1);
-                   
-             opt_part_length = opt_part_length + 4*lengthfield;
-             i++;
-            }
-        else            
-            {opt_part_end = true;}                         
-      }
-         
-  return  opt_part_length;
-}
-
-
-void dec__PDU__GTPC_no_optional_part(const unsigned char * udp__pdu,const int pl_udp_pdu_length, const SystemUnderTest& pl__SystemUnderTest,PDU__GTPC& pdu)
-{
-  TTCN_Buffer buf;
-  
- if ((pl__SystemUnderTest == SystemUnderTest::GGSN) || (pl__SystemUnderTest == SystemUnderTest::CGW))
-  // testing GGSN or CGW (not default)
-  {
-    const unsigned char *gtpc_message = (const unsigned char *) udp__pdu;
-    if ((gtpc_message[1] == 0x12) || (gtpc_message[1] == 0x13))  
-    // if updatePDPContextRequest or updatePDPContextResponse message is received from GGSN or C-GW
-    {   
-      unsigned char pn = gtpc_message[0] & 0x01;
-      pdu.pn__bit() = BITSTRING(1,&pn);
-    
-      unsigned char s = (gtpc_message[0] & 0x02) >> 1;
-      pdu.s__bit() =  BITSTRING(1,&s);
-      
-      unsigned char e = (gtpc_message[0] & 0x04) >> 2;
-      pdu.e__bit() = BITSTRING(1,&e);
-
-      unsigned char spare = (gtpc_message[0] & 0x08) >> 3;
-      pdu.spare() = BITSTRING(1,&spare ); 
-        
-      unsigned char pt = (gtpc_message[0] & 0x10) >> 4;
-      pdu.pt() = BITSTRING(1,&pt );  
-        
-      unsigned char version = ((gtpc_message[0] & 0x80) >> 7) |
-                            ((gtpc_message[0] & 0x40) >> 5) |
-                            ((gtpc_message[0] & 0x20) >> 3) ;    
-      pdu.version() =  BITSTRING(3,&version); 
-    
-      pdu.messageType() = OCTETSTRING(1,gtpc_message+1); 
-    
-      pdu.lengthf() = (gtpc_message[2] << 8) + gtpc_message[3];
-    
-      pdu.teid() = OCTETSTRING(4,gtpc_message+4); 
-          
-      pdu.opt__part() = OMIT_VALUE;           
-
-      if (gtpc_message[1] == 0x12) //updatePDPContextRequest
-      {
-        if(pl__SystemUnderTest == SystemUnderTest::GGSN) // from GGSN
-        {
-         UpdatePDPContextRequestGGSN updatePDPContextRequestGGSN;           
-         OCTETSTRING updatePDPContextRequestGGSN_string = OCTETSTRING(pl_udp_pdu_length-8,udp__pdu+8 );      
-         buf.put_os(updatePDPContextRequestGGSN_string);      
-         updatePDPContextRequestGGSN.decode(UpdatePDPContextRequestGGSN_descr_,buf,TTCN_EncDec::CT_RAW);    
-         pdu.gtpc__pdu().updatePDPContextRequest().updatePDPContextRequestGGSN() = updatePDPContextRequestGGSN;
-        } 
-        else   // from CGW
-        {
-         UpdatePDPContextRequestCGW updatePDPContextRequestCGW;
-         OCTETSTRING updatePDPContextRequestCGW_string = OCTETSTRING(pl_udp_pdu_length-8,udp__pdu+8 );       
-         buf.put_os(updatePDPContextRequestCGW_string);        
-         updatePDPContextRequestCGW.decode(UpdatePDPContextRequestCGW_descr_,buf,TTCN_EncDec::CT_RAW);         
-         pdu.gtpc__pdu().updatePDPContextRequest().updatePDPContextRequestCGW() = updatePDPContextRequestCGW;        
-        }  
-      } 
-      else //updatePDPContextResponse  
-      { 
-        if(pl__SystemUnderTest == SystemUnderTest::GGSN) // from GGSN
-        {                  
-         UpdatePDPContextResponseGGSN updatePDPContextResponseGGSN;           
-         OCTETSTRING updatePDPContextResponseGGSN_string = OCTETSTRING(pl_udp_pdu_length-8,udp__pdu+8 );    
-         buf.put_os(updatePDPContextResponseGGSN_string);      
-         updatePDPContextResponseGGSN.decode(UpdatePDPContextResponseGGSN_descr_,buf,TTCN_EncDec::CT_RAW);    
-         pdu.gtpc__pdu().updatePDPContextResponse().updatePDPContextResponseGGSN() = updatePDPContextResponseGGSN;
-        }
-        else   // from CGW
-        {        
-         UpdatePDPContextResponseCGW updatePDPContextResponseCGW;
-         OCTETSTRING updatePDPContextResponseCGW_string = OCTETSTRING(pl_udp_pdu_length-8,udp__pdu+8 );  
-         buf.put_os(updatePDPContextResponseCGW_string);  
-         updatePDPContextResponseCGW.decode(UpdatePDPContextResponseCGW_descr_,buf,TTCN_EncDec::CT_RAW);
-         pdu.gtpc__pdu().updatePDPContextResponse().updatePDPContextResponseCGW() = updatePDPContextResponseCGW;                
-        } 
-      }
-        
-      buf.clear();  
-      return;      
-    }
-    else // if message not equal to updatePDPContextRequest or updatePDPContextResponse is received from GGSN or C-GW
-    {
-      buf.put_s(pl_udp_pdu_length,udp__pdu);
-      pdu.decode(PDU__GTPC_descr_, buf, TTCN_EncDec::CT_RAW);
-      buf.clear(); 
-      return;
-    } 
-  }
-  else  //pl__SystemUnderTest is SGSN or MME (this is default)
-  {
-    buf.put_s(pl_udp_pdu_length,udp__pdu);
-    pdu.decode(PDU__GTPC_descr_, buf, TTCN_EncDec::CT_RAW);
-    buf.clear();  
-    return;
-  }
-}
-
-//////////////////////////////////
-// Decoding function for GTPC__DialoguePDU
-//////////////////////////////////
-
-PDU__GTPC dec__PDU__GTPC(const OCTETSTRING& udp__pdu,const SystemUnderTest& pl__SystemUnderTest)
-{  
-      PDU__GTPC pdu;  
-       
-      const unsigned char *gtpc_message = (const unsigned char *) udp__pdu;
-       
-      int opt_part_length = 0;
-      if  ( gtpc_message[0] & 0x07 ) // opt_part is present 
-      { 
-         GTPC__Header__optional__part    OPT_PART;
-         
-         // find the length of the optional part and decode optional part into OPT_PART                       
-         opt_part_length = find_optpart_length(gtpc_message+8,OPT_PART);                               
-         if(  ((gtpc_message[2] << 8) + gtpc_message[3] - opt_part_length) < 0  )
-           {TTCN_error("Decoding error, lengthf field is shorter that decoded length of opt_part");}  
-                      
-         // build PDU without optional part                  
-         unsigned int gtpc_IEs_length = (gtpc_message[2] << 8) + gtpc_message[3] - opt_part_length;
-         unsigned char gtpcBuf[8 + gtpc_IEs_length];
-         memcpy(gtpcBuf,gtpc_message,8);
-         memcpy(gtpcBuf+8,gtpc_message+8+opt_part_length,gtpc_IEs_length);
-         
-         // substitute dummy bits (indicating there is no optional part)
-         gtpcBuf[0] = gtpcBuf[0] & 0xf8;
-         
-         // substitute dummy length (not including optional part)
-         gtpcBuf[2] = (gtpc_IEs_length & 0xff00) >> 8;
-         gtpcBuf[3] =  gtpc_IEs_length & 0xff;
-
-         // call decoding function                 
-         dec__PDU__GTPC_no_optional_part(gtpcBuf,udp__pdu.lengthof() - opt_part_length,pl__SystemUnderTest,pdu);
-             
-         // put back the original values               
-         unsigned char pn = gtpc_message[0] & 0x01;
-         pdu.pn__bit() = BITSTRING(1,&pn);
-    
-         unsigned char s = (gtpc_message[0] & 0x02) >> 1;
-         pdu.s__bit() =  BITSTRING(1,&s);
-      
-         unsigned char e = (gtpc_message[0] & 0x04) >> 2;
-         pdu.e__bit() = BITSTRING(1,&e);
-         
-         pdu.lengthf() = (gtpc_message[2] << 8) + gtpc_message[3];
-         
-         pdu.opt__part() = OPT_PART;
-                
-         return pdu;                 
-      }   
-      else // opt_part is not present 
-      {       
-         dec__PDU__GTPC_no_optional_part(gtpc_message,udp__pdu.lengthof(),pl__SystemUnderTest,pdu);
-         return pdu;             
-      }                  
-}  // end of function
-
-
-
-}//namespace
diff --git a/GTP_v13.5.0_CNL113843_LATEST/src/GTPC_Types.ttcn b/GTP_v13.5.0_CNL113843_LATEST/src/GTPC_Types.ttcn
deleted file mode 100644
index 8370f26..0000000
--- a/GTP_v13.5.0_CNL113843_LATEST/src/GTPC_Types.ttcn
+++ /dev/null
@@ -1,3958 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               GTPC_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 843
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 29.060 v13.5.0
- 
-module GTPC_Types {
-
-import from General_Types all;
-
-// external encoding/decoding functions
-external function enc_PDU_GTPC(in PDU_GTPC gtpc_pdu) return octetstring
-with { extension "prototype(convert)"
-       extension "encode(RAW)"
-     }        
-
-external function dec_PDU_GTPC(in octetstring udp_pdu, SystemUnderTest pl_SystemUnderTest := SGSN) return PDU_GTPC
-// for SGSN testing pl_SystemUnderTest is SGSN (default value)
-// for GGSN testing pl_SystemUnderTest is GGSN 
-// for CGW testing pl_SystemUnderTest is CGW 
-// for MME testing pl_SystemUnderTest is MME  
-// in current implementation the decoder behavior is identical for
-// SGSN and MME
-
-// determines SUT, needed for decoding updatePDPContextRequest
-// and updatePDPContextResponse messages
-type enumerated SystemUnderTest{SGSN(0),GGSN(1),CGW(2),MME(3)};
-/////////////////////////////
-// Information Elements
-/////////////////////////////
-//Information Element with an IE Type Extension field - 7.7.0A
-//for future use
-type record IE_Type_Extension {
- OCT1                    type_gtpc,
- LIN2_BO_LAST            lengthf, //16 bits
- IE_Extension_UnionType  iE_Type_Extension
-
-} with {  
-  variant (lengthf) "LENGTHTO(iE_Type_Extension)"; 
-  variant "PRESENCE( type_gtpc = 'EE'O)";
-};
-
-type union IE_Extension_UnionType
-{
-  IE_Extension_Type  iE_Type_Extension
-}
-
-type record IE_Extension_Type
-{
-  OCT2                         elementIdentifier,
-  octetstring                  valueField
-}
-
-
-//Cause - 7.7.1
-type record Cause_gtpc {
- OCT1                   type_gtpc,
- OCT1                   causevalue
-} with { variant "PRESENCE( type_gtpc = '01'O)"; };
-
-//IMSI - 7.7.2
-type record IMSI_gtpc {
- OCT1                   type_gtpc,
- hexstring              digits length(15),
- HEX1                   padding
-} with { variant "PRESENCE( type_gtpc = '02'O)"; };
-
-//Routing Area ID - 7.7.3
-// Note : the order of MNC digits is 
-// MNC digit 3, MNC digit 1, MNC digit 2
-type record RoutingAreaIdentity {
- OCT1                   type_gtpc,
- hexstring              mcc_digits length(3),
- hexstring              mnc_digits length(3),
- OCT2                   lac,
- OCT1                   rac
-} with { variant "PRESENCE( type_gtpc = '03'O)"; };
-
-//TLLI - 7.7.4
-type record TLLI {
- OCT1                   type_gtpc,
- OCT4                   tlli_element
-} with { variant "PRESENCE( type_gtpc = '04'O)"; };
-
-//Packet TMSI - 7.7.5
-type record PacketTMSI {
- OCT1                   type_gtpc,
- OCT4                   p_tmsi
-} with { variant "PRESENCE( type_gtpc = '05'O)"; };
-
-//Reordering Required - 7.7.6
-type record ReorderingRequired {
- OCT1                   type_gtpc,
- BIT1                   reordreq,
- BIT7                   spare
-} with { variant "PRESENCE( type_gtpc = '08'O)"; };
-
-//Authentication Triplet - 7.7.7
-type record AuthenticationTriplet_GTPC {
- OCT1                    type_gtpc,
- OCT16                   rand,
- OCT4                    sres,
- OCT8                    kc
-} with { variant "PRESENCE( type_gtpc = '09'O)"; };
-
-type set of AuthenticationTriplet_GTPC AuthenticationTriplet_GTPC_SetOf;
-
-//MAP Cause - 7.7.8
-type record MAP_Cause {
- OCT1                    type_gtpc,
- OCT1                    mapCauseValue
-} with { variant "PRESENCE( type_gtpc = '0B'O)"; };
-
-//PTMSI Signature - 7.7.9
-type record PTMSI_Signature {
- OCT1                    type_gtpc,
- OCT3                    ptmsi_Signature
-} with { variant "PRESENCE( type_gtpc = '0C'O)"; };
-
-//MS Validated - 7.7.10
-type record MS_Validated {
- OCT1                    type_gtpc,
- BIT1                    msValidated,
- BIT7                    spare
-} with { variant "PRESENCE( type_gtpc = '0D'O)"; };
-
-//Recovery - 7.7.11
-type record Recovery_gtpc {
- OCT1                   type_gtpc,
- OCT1                   restartCounter
-} with { variant "PRESENCE(type_gtpc = '0E'O)";};
-
-//Selection Mode - 7.7.12
-type record SelectionMode {
- OCT1                   type_gtpc,
- BIT2                   selectModeValue,
- BIT6                   spare
-} with { variant "PRESENCE(type_gtpc = '0F'O)"; };
-
-//TEI Data I - 7.7.13
-type record TeidDataI {
- OCT1                   type_gtpc,
- OCT4                   teidDataI
-} with { variant "PRESENCE(type_gtpc = '10'O)"; };
-
-//TEI Control Plane - 7.7.14
-type record TeidControlPlane {
- OCT1                   type_gtpc,
- OCT4                   teidControlPlane
-} with { variant "PRESENCE(type_gtpc = '11'O)"; };
-
-//TEI Data II - 7.7.15
-type record of TeidDataII TeidDataII_List
-
-type record TeidDataII {
- OCT1                    type_gtpc,
- BIT4                    nsapi,
- BIT4                    unused,
- OCT4                    teidDataII
-} with { variant "PRESENCE(type_gtpc = '12'O)"; };
-
-//Teardown Ind -7.7.16
-type record TearDownInd {
- OCT1                    type_gtpc,
- BIT1                    tdInd,
- BIT7                    spare
-} with { variant "PRESENCE(type_gtpc = '13'O)"; };
-
-//NSAPI - 7.7.17
-type record NSAPI_GTPC {
- OCT1                    type_gtpc,
- BIT4                    nsapi,
- BIT4                    unused
-} with { variant "PRESENCE(type_gtpc = '14'O)"; };
-
-//RANAP Cause - 7.7.18
-type record RANAPCause {
- OCT1                    type_gtpc,
- OCT1                    ranapCause
-} with { variant "PRESENCE(type_gtpc = '15'O)"; };
-
-//RAB Context - 7.7.19
-type record of RABContext RABContext_List;
-
-type record RABContext {
- OCT1                    type_gtpc,
- BIT4                    nsapi,
- BIT4                    spare,
- OCT2                    dlgtp_u,
- OCT2                    ulgtp_u,
- OCT2                    dl_pdcp,
- OCT2                    ul_pdcp
-} with {variant "PRESENCE( type_gtpc = '16'O)";};
-
-//Radio Priority SMS - 7.7.20
-type record RadioPrioritySMS {
- OCT1                    type_gtpc,
- BIT3                    radioprioritySMS,
- BIT5                    reserved
-} with {variant "PRESENCE( type_gtpc = '17'O)";};
-
-//RadioPriority - 7.7.21
-
-type record of RadioPriority RadioPriority_List;
-
-type record RadioPriority {
- OCT1                    type_gtpc,
- BIT3                    radiopriority, 
- BIT1                    reserved,
- BIT4                    nsapi
-} with {variant "PRESENCE( type_gtpc = '18'O)";};
-
-//Packet Flow Id - 7.7.22
-type record of PacketFlowID PacketFlowID_List
-
-type record PacketFlowID {
- OCT1                    type_gtpc,
- BIT4                    nsapi,
- BIT4                    reserved,
- OCT1                    packflowID
-} with {variant "PRESENCE( type_gtpc = '19'O)";};
-
-//Charging Characteristics - 7.7.23
-type record of ChargingCharacteristics_GTPC
-                      ChargingCharacteristics_List_GTPC;
-
-type record ChargingCharacteristics_GTPC {
- OCT1                    type_gtpc,
- OCT2                    chargingChar
-} with {variant "PRESENCE( type_gtpc = '1A'O)";};
-
-//Trace Reference - 7.7.24
-type record TraceRef {
- OCT1                    type_gtpc,
- OCT2                    trace_ref
-} with {variant "PRESENCE( type_gtpc = '1B'O)";};
-
-//Trace Type - 7.7.25
-type record GTP_TraceType {
- OCT1                    type_gtpc,
- OCT2                    trace_type
-} with {variant "PRESENCE( type_gtpc = '1C'O)";};
-
-//MS Not Reachable Reason - 7.7.25A
-type record MSNotReachableReason {
- OCT1                    type_gtpc,
- OCT1                    reason_for_absence
-} with {variant "PRESENCE( type_gtpc = '1D'O)";};
-
-//Radio Priority LCS - 7.7.25B
-type record RadioPriorityLCS{
- OCT1                    type_gtpc,
- LIN2_BO_LAST            lengthf, //16 bits
- BIT3                    radioPriorityLCS,
- BIT5                    reserved
-}  with { variant "PRESENCE( type_gtpc = '96'O)";
-          variant (lengthf) "LENGTHTO(radioPriorityLCS,reserved)"; };
-
-//Charging ID - 7.7.26
-type record ChargingID {
- OCT1                    type_gtpc,
- OCT4                    chargingID
-}  with { variant "PRESENCE( type_gtpc = '7F'O)";};
-
-//End User Address ID - 7.7.27
-type record EndUserAddress{
- OCT1                    type_gtpc,
- EndUserAddress_types    endUserAddress 
-}  with { variant "PRESENCE( type_gtpc = '80'O)";};
-
-type union EndUserAddress_types {
- EndUserAddressIPv4          endUserAddressIPv4,
- EndUserAddressIPv6          endUserAddressIPv6,
- EndUserAddressPPP           endUserAddressPPP,
- EndUserAddressIPv4andIPv6   endUserAddressIPv4andIPv6,
- EndUserAddressOSPIHOS       endUserAddressOSPIHOS
-} with { variant "TAG(endUserAddressIPv4, pdp_typenum = '21'O;
-                      endUserAddressIPv6, pdp_typenum = '57'O;
-                      endUserAddressPPP,  pdp_typenum = '01'O;
-                      endUserAddressIPv4andIPv6, pdp_typenum = '8D'O;
-                      endUserAddressOSPIHOS, OTHERWISE;)" };
-                      
-type record  EndUserAddressIPv4 {
- LIN2_BO_LAST             lengthf, //16 bits
- BIT4                     pdp_typeorg,
- BIT4                     spare, 
- OCT1                     pdp_typenum,
- OCT4                     ipv4_address optional 
-} with { variant (lengthf) "LENGTHTO(pdp_typeorg, spare, pdp_typenum, 
-                                     ipv4_address)"; };
-
-type record EndUserAddressIPv6 {
- LIN2_BO_LAST             lengthf, //16 bits
- BIT4                     pdp_typeorg,
- BIT4                     spare,
- OCT1                     pdp_typenum,
- OCT16                    ipv6_address optional
-} with { variant (lengthf) "LENGTHTO(pdp_typeorg, spare, pdp_typenum, 
-                                     ipv6_address)"; };
-
-type record  EndUserAddressPPP {
- LIN2_BO_LAST            lengthf, //16 bits
- BIT4                    pdp_typeorg,
- BIT4                    spare,
- OCT1                    pdp_typenum
-} with { variant (lengthf) "LENGTHTO(pdp_typeorg, spare, pdp_typenum)"; };
-
-type record EndUserAddressIPv4andIPv6 {
- LIN2_BO_LAST             lengthf, //16 bits
- BIT4                     pdp_typeorg,
- BIT4                     spare,
- OCT1                     pdp_typenum,
- OCT4                     ipv4_address optional,
- OCT16                    ipv6_address optional
-} with { variant (lengthf) "LENGTHTO(pdp_typeorg, spare, pdp_typenum,ipv4_address, 
-                                     ipv6_address)"; 
-         variant(ipv4_address) "PRESENCE(lengthf = 6,lengthf = 22)"                                            
-         variant(ipv6_address) "PRESENCE(lengthf = 18,lengthf = 22)"                                      
-};
-
-// ETHECS: specification not found in Technical Specification
-type record  EndUserAddressOSPIHOS {
- LIN2_BO_LAST            lengthf, //16 bits 
- BIT4                    pdp_typeorg,
- BIT4                    spare,
- OCT1                    pdp_typenum
-} with { variant (lengthf) "LENGTHTO(pdp_typeorg, spare, pdp_typenum)"; };
-
-//MM Context  -  7.7.28
-type record MM_Context {
- OCT1                    type_gtpc,
- MM_ContextU             context
-}  with { variant "PRESENCE( type_gtpc = '81'O)";};
-
-type union MM_ContextU {
- MM_ContextGSM           mmcontGSM,
- MM_ContextUMTS          mmcontUMTS,
- MM_ContextGSMUMTS       mmcontGSMUMTS,
- MM_ContextUMTSReceive   mmcontUMTSReceive
-} with { variant "TAG(mmcontGSM, security = '01'B;
-                      mmcontUMTS, security = '10'B;
-                      mmcontGSMUMTS, security = '11'B;
-                      mmcontUMTSReceive, security = '00'B;)"; };
-
-
-type record  MM_ContextGSM {
- LIN2_BO_LAST            lengthf,//16 bits
- BIT3                    cksn,
- BIT5                    spare,
- BIT3                    usedCipher,
- integer                 noofVectors,
- BIT2                    security, 
- OCT8                    kc,
- octetstring             triplet,
- OCT2                    drx_par,
- integer                 msNetW_cap_length,
- octetstring             msNetw_cap optional,
- LIN2_BO_LAST            containerLength,
- octetstring             container optional 
-} with { variant (lengthf) "LENGTHTO(cksn, spare, usedCipher, noofVectors,
-                                     security, kc, triplet, drx_par, 
-                                     msNetW_cap_length, msNetw_cap, 
-                                     containerLength, container
-                                     )";
-         variant (msNetW_cap_length) "LENGTHTO(msNetw_cap)";
-         variant (containerLength) "LENGTHTO(container)";
-         variant (noofVectors) "FIELDLENGTH(3)";
-         variant (noofVectors) "LENGTHTO(triplet)";
-         variant (noofVectors) "UNIT(224)";    
-};
-
-type record  MM_ContextUMTS {
- LIN2_BO_LAST            lengthf,
- BIT3                    ksi,
- BIT3                    usedGPRSIntegrityAlgorithm,
- BIT1                    ugipai,
- BIT1                    gupii,
- BIT3                    spare1,
- integer                 noofVectors ,
- BIT2                    security,
- OCT16                   ck,
- OCT16                   ik,
- LIN2_BO_LAST            quintupletlength,
- octetstring             quintuplet,
- OCT2                    drx_par,
- integer                 msNetW_cap_length,
- octetstring             msNetw_cap optional,
- LIN2_BO_LAST            containerLength,
- octetstring             container optional
-} with { variant (lengthf) "LENGTHTO(ksi, usedGPRSIntegrityAlgorithm, ugipai, gupii, spare1, noofVectors, security,
-                                     ck, ik, quintupletlength, quintuplet, 
-                                     drx_par, msNetW_cap_length, msNetw_cap,
-                                     containerLength, container
-                                     )";
-         variant (quintupletlength) "LENGTHTO(quintuplet)"; 
-         variant (msNetW_cap_length) "LENGTHTO(msNetw_cap)";
-         variant (containerLength) "LENGTHTO(container)";
-         variant (noofVectors) "FIELDLENGTH(3)"; 
-};
-
-type record  MM_ContextGSMUMTS {
- LIN2_BO_LAST            lengthf,
- BIT3                    cksn,
- BIT5                    spare,
- BIT3                    usedCipher,
- integer                 noofVectors,
- BIT2                    security,
- OCT8                    kc,
- LIN2_BO_LAST            quintupletlength,
- octetstring             quintuplet,
- OCT2                    drx_par,
- integer                 msNetW_cap_length,
- octetstring             msNetw_cap optional,
- LIN2_BO_LAST            containerLength,
- octetstring             container optional
-} with { variant (lengthf) "LENGTHTO(cksn, spare, usedCipher, noofVectors,
-                                    security, kc, quintupletlength, quintuplet,
-                                    drx_par, msNetW_cap_length, msNetw_cap,
-                                     containerLength, container
-                                     )";
-         variant (quintupletlength) "LENGTHTO(quintuplet)"; 
-         variant (msNetW_cap_length) "LENGTHTO(msNetw_cap)";
-         variant (containerLength) "LENGTHTO(container)";
-         variant (noofVectors) "FIELDLENGTH(3)"; 
-};
-
-type record  MM_ContextUMTSReceive {
- LIN2_BO_LAST            lengthf,
- BIT3                    ksi,
- BIT3                    usedGPRSIntegrityAlgorithm,
- BIT1                    ugipai,
- BIT1                    gupii,
- BIT3                    usedCipher,
- integer                 noofVectors,
- BIT2                    security,
- OCT16                   ck,
- OCT16                   ik,
- LIN2_BO_LAST            quintupletlength,
- octetstring             quintuplet,
- OCT2                    drx_par,
- integer                 msNetW_cap_length,
- octetstring             msNetw_cap optional,
- LIN2_BO_LAST            containerLength,
- octetstring             container optional
-} with { variant (lengthf) "LENGTHTO(ksi,  usedGPRSIntegrityAlgorithm, ugipai, gupii,
-                                     usedCipher, noofVectors,
-                                     security, ck, ik,  quintupletlength,
-                                     quintuplet, drx_par,msNetW_cap_length,
-                                     msNetw_cap, containerLength, container
-                                     )";
-         variant (quintupletlength) "LENGTHTO(quintuplet)"; 
-         variant (msNetW_cap_length) "LENGTHTO(msNetw_cap)";
-         variant (containerLength) "LENGTHTO(container)";
-         variant (noofVectors) "FIELDLENGTH(3)"; 
-};
-         
-//From 9.9.3.34 of 3GPP 24.301 according to Req. Spec. 4/1056-LPA 107 579/1 Rev D 
-type record GTPC_UENetworkCapabilityV
-{
-  BIT8     eEA,
-  BIT7     eIA,  
-  BIT1     spare,  
-  BIT8     uEA      optional,  
-  BIT7     uIA      optional,
-  BIT1     uCS2     optional, 
-  BIT1     spare2   optional,
-  BIT1     vCC      optional,
-  BIT6     spare3   optional,
-  octetstring     spare4 length (0..8) optional
-}
-
-//PDP context - 7.7.29
-type record of PDP_Context_GTPC PDP_Context_GTPC_List;
-
-type record  PDP_Context_GTPC {
- OCT1                    type_gtpc,
- LIN2_BO_LAST            lengthf,
- BIT4                    nsapi,
- BIT1                    order,
- BIT1                    asi,
- BIT1                    vaa,
- BIT1                    ea,
- BIT4                    sapi,
- BIT4                    spare1,
- integer                 qos_subLength,
- QualityOfServiceProfile_Value qos_sub,
- integer                 qos_reqLength,
- QualityOfServiceProfile_Value qos_req,
- integer                 qos_negLength,
- QualityOfServiceProfile_Value qos_neg,
- OCT2                    snd,
- OCT2                    snu,
- OCT1                    sendNPDUnum,
- OCT1                    receiveNPDUnum,
- OCT4                    uteidControlPlane,
- OCT4                    uteidData1,
- OCT1                    pdpcontext,
- BIT4                    pdp_typeorg,
- BIT4                    spare2,
- OCT1                    pdp_typenum,
- integer                 pdp_addressLength,
- octetstring             pdp_address length (0..63),
- integer                 ggsn_addressControlPlaneLength,
- octetstring             ggsn_addressControlPlane length (4..16),
- integer                 ggsn_addressUserPlaneLength,
- octetstring             ggsn_addressUserPlane length (4..16),
- integer                 apnLength,
- octetstring             apn,
- BIT4                    transactionId ,
- BIT4                    spare3,
- OCT1                    transactionID_cont,
- OCT1                    pdp_typenum2 optional,              
- LIN1                    pdp_addresslength2 optional,        
- octetstring             pdp_Address2 length (0..63) optional  
-} with {variant "PRESENCE( type_gtpc = '82'O)";
-        variant (lengthf) "LENGTHTO(nsapi, order, asi, vaa, ea,
-          sapi, spare1, qos_subLength, qos_sub, qos_reqLength, qos_req,
-          qos_negLength, qos_neg, snd, snu, sendNPDUnum, receiveNPDUnum,
-          uteidControlPlane, uteidData1,pdpcontext, pdp_typeorg, spare2,
-          pdp_typenum, pdp_addressLength, pdp_address,
-          ggsn_addressControlPlaneLength, ggsn_addressControlPlane,
-          ggsn_addressUserPlaneLength, ggsn_addressUserPlane, apnLength, apn,
-          transactionId, spare3, transactionID_cont, pdp_typenum2,pdp_addresslength2,pdp_Address2)";
-        variant (qos_subLength) "LENGTHTO(qos_sub)";
-        variant (qos_reqLength) "LENGTHTO(qos_req)"; 
-        variant (qos_negLength) "LENGTHTO(qos_neg)";
-        variant (pdp_addressLength) "LENGTHTO(pdp_address)";
-        variant (ggsn_addressControlPlaneLength) 
-          "LENGTHTO(ggsn_addressControlPlane)";
-        variant (ggsn_addressUserPlaneLength) "LENGTHTO(ggsn_addressUserPlane)";
-        variant (apnLength) "LENGTHTO(apn)"; 	
-        variant (pdp_typenum2,pdp_addresslength2,pdp_Address2) "PRESENCE( ea = '1'B)";
-        variant (pdp_addresslength2) "LENGTHTO(pdp_Address2)";
-	};
-
-//Access Point Name - 7.7.30
-type record  AccessPointName  {
- OCT1                    type_gtpc,
- LIN2_BO_LAST            lengthf,
- octetstring             apn_value
-}with { variant "PRESENCE( type_gtpc = '83'O)";
-        variant (lengthf) "LENGTHTO(apn_value)"; };
-
-//Protocol Configuration Options -  7.7.31
-// 24.008 10.5.6.3
-type record  ProtConfigOptions {
- OCT1                     type_gtpc,
- LIN2_BO_LAST             lengthf,
- BIT3                     configProtocol,
- BIT4                     spare,
- BIT1                     extension0,
- ProtocolIDList           protocols
-} with { variant "PRESENCE( type_gtpc = '84'O)";
-         variant (lengthf) "LENGTHTO(configProtocol, spare, extension0,
-                                     protocols)"; };
-
-type set of ProtocolElement ProtocolIDList;
-
-type record ProtocolElement {
- OCT2                            protocolID,
- integer                         lengthProtoID,
- octetstring                     protoIDContents
-} with { variant (lengthProtoID) "LENGTHTO(protoIDContents)" };
-
-//GSN Address  -  7.7.32
-type record  GSN_Address_GTPC {
- OCT1                     type_gtpc,
- LIN2_BO_LAST             lengthf,
- octetstring              addressf
-} with { variant "PRESENCE( type_gtpc = '85'O)";
-         variant (lengthf) "LENGTHTO(addressf)"; };
-
-//MS International PSTN/ISDN Num.(MSISDN) -  7.7.33
-type record  MSISDN {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- octetstring               msisdn             
-} with { variant "PRESENCE( type_gtpc = '86'O)";
-         variant (lengthf) "LENGTHTO(msisdn)"; };
-
-type record QoSV_GTPC 
-{
- BIT3               reliabilityClass,
- BIT3               delayClass,
- BIT2               spare1,  // '00'B
- BIT3               precedenceClass,
- BIT1               spare2, //'0'B
- BIT4               peakThroughput,
- BIT5               meanThroughput,
- BIT3               spare3, //'000'B
- BIT3               deliverErroneusSDU            optional, //opt because of V97
- BIT2               deliveryOrder                 optional, //opt because of V97
- BIT3               trafficClass                  optional, //opt because of V97
- OCT1               maxSDUSize                    optional, //opt because of V97
- OCT1               maxBitrateUplink              optional, //opt because of V97
- OCT1               maxBitrateDownlink            optional, //opt because of V97
- BIT4               sduErrorRatio                 optional, //opt because of V97
- BIT4               residualBER                   optional, //opt because of V97
- BIT2               trafficHandlingPriority       optional, //opt because of V97
- BIT6               transferDelay                 optional, //opt because of V97
- OCT1               guaranteedBitRateUplink       optional, //opt because of V97
- OCT1               guaranteedBitRateDownlink     optional, //opt because of V97
- BIT4               sourceStatisticsDescriptor    optional, //opt because of V97
- BIT1               signallingIndication          optional, //opt because of V97
- BIT3               spare4                        optional, //opt because of V97
-                    // '000'B
- OCT1               maxBitrateDownlinkExt         optional, //opt because of V97
- OCT1               guaranteedBitRateDownlinkExt  optional, //opt because of V97
- OCT1               maxBitrateUplinkExt           optional, //opt because of V97
- OCT1               guaranteedBitRateUplinkExt    optional  //opt because of V97
-};
-
-//Quality Of Service Profile -  7.7.34
-type record  QualityOfServiceProfile {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- OCT1                      allocRetensionPrio,
- QoSV_GTPC                 qos_ProfileValue 
-} with { variant "PRESENCE( type_gtpc = '87'O)";
-         variant (lengthf) "LENGTHTO(allocRetensionPrio, qos_ProfileValue)";};
-
-type record  QualityOfServiceProfile_Value {
- OCT1                      allocRetensionPrio,
- QoSV_GTPC                 qos_ProfileValue 
-} 
-
-//Authentication Quituplet  -   7.7.35
-type record  AuthenticationQuintuplet_GTPC {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- OCT16                     rand,
- integer                   xresLength,
- octetstring               xres,
- OCT16                     ck,
- OCT16                     ik,
- integer                   autnLength,
- octetstring               autn 
-} with { variant "PRESENCE( type_gtpc = '88'O)";
-         variant (lengthf) "LENGTHTO(rand, xresLength, xres, ck, ik, 
-                                     autnLength, autn)";
-         variant (xresLength) "LENGTHTO(xres)";
-         variant (autnLength) "LENGTHTO(autn)"; };
-
-//Traffic Flow Template (TFT)  -   7.7.36
-// 24.008 10.5.6.12
-type record  TrafficFlowTemplate {
- OCT1                           type_gtpc,
- LIN2_BO_LAST                   lengthf,
- TrafficFlowTemplateV_GTPC      tft               
-} with { variant "PRESENCE( type_gtpc = '89'O)";
-         variant (lengthf) "LENGTHTO(tft)"; };
-
-
-type union TrafficFlowTemplateV_GTPC
-{
-  TrafficFlowTemplateV_CreateAddReplaceTFT_GTPC
-              trafficFlowTemplateV_CreateAddReplaceTFT,
-  TrafficFlowTemplateV_DeletePacketFilter_GTPC
-              trafficFlowTemplateV_DeletePacketFilter,
-  TrafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation_GTPC
-              trafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation
-};
-
-
-type record TrafficFlowTemplateV_CreateAddReplaceTFT_GTPC
-{
-  integer                                numberOfPacketFilters,
-  BIT1                                   eBIT,
-  BIT3                                   operationCodeTFT,  //'001'B or
-  PacketFilterList_CreateAddReplaceTFT_GTPC   packetFilterList_CreateAddReplaceTFT,
-  ParametersList_GTPC                         parametersList            optional
-} with {
-  variant "PRESENCE (operationCodeTFT  = '001'B, //  Create New TFT
-                     operationCodeTFT  = '011'B, //  Add packet filters to existing TFT
-                     operationCodeTFT  = '100'B  //  Replace packet filters in existing TFT
-  )";
-  variant(parametersList)       "PRESENCE(eBIT = '1'B)";
-  variant(numberOfPacketFilters)"FIELDLENGTH(4)";
-  variant(numberOfPacketFilters)"LENGTHTO(packetFilterList_CreateAddReplaceTFT)";
-  variant(numberOfPacketFilters)"UNIT(elements)";
-};
-
-
-type record TrafficFlowTemplateV_DeletePacketFilter_GTPC
-{
-  integer                                numberOfPacketFilters,
-  BIT1                                   eBIT,
-  BIT3                                   operationCodeTFT,
-  //'101'B or '011'B or '100'B
-  PacketFilterList_DeletePacketFilter_GTPC    packetFilterList_DeletePacketFilter,
-  ParametersList_GTPC                         parametersList         optional
-} with {
-  variant "PRESENCE (operationCodeTFT = '101'B)"  // Delete packet filters from existing TFT
-  variant(parametersList) "PRESENCE(eBIT = '1'B)";
-  variant(numberOfPacketFilters)"FIELDLENGTH(4)";
-  variant(numberOfPacketFilters)"LENGTHTO(packetFilterList_DeletePacketFilter)";
-  variant  (numberOfPacketFilters)"UNIT(elements)";
-};
-
-
-type record TrafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation_GTPC
-{
-  BIT4                         numberOfPacketFilters, //'0000'B
-  // numberOfPacketFilters is meaningless here since there is no PacketFilterList
-  BIT1                         eBIT,
-  BIT3                         operationCodeTFT,      // '010'B  or '110'B
-  ParametersList_GTPC               parametersList   optional
-} with {
-  variant "PRESENCE (operationCodeTFT = '010'B,  // delete existing TFT
-                     operationCodeTFT = '110'B   // No TFT Operation
-  )";
-  variant (parametersList) "PRESENCE(eBIT = '1'B)"
-};
-
-
-type record of PacketFilter_GTPC PacketFilterList_CreateAddReplaceTFT_GTPC;
-
-
-type record PacketFilter_GTPC
-{
-  PacketFilterIdentifier_GTPC       identifier,
-  OCT1                         evaluationPrecedence,
-  LIN1                         lengthIndicator,
-  octetstring                  contents
-} with { variant (lengthIndicator) "LENGTHTO (contents)"};
-
-
-type record of PacketFilterIdentifier_GTPC  PacketFilterList_DeletePacketFilter_GTPC;
-
-
-type OCT1  PacketFilterIdentifier_GTPC;
-
-
-type record of Parameter_GTPC ParametersList_GTPC;
-
-
-type record Parameter_GTPC
-{
-  OCT1               parameterIdentifier,
-  LIN1               lengthIndicator,
-  octetstring        contents
-} with { variant (lengthIndicator) "LENGTHTO (contents)"};
-
-
-//Target Identification  -   7.7.37
-type record  TargetIdentification {
- OCT1                      type_gtpc,        
- LIN2_BO_LAST              lengthf,
- HEX1                      mcc1 optional,            
- HEX1                      mcc2 optional,            
- HEX1                      mcc3 optional,            
- HEX1                      mnc3 optional,            
- HEX1                      mnc1 optional,            
- HEX1                      mnc2 optional,
- OCT2                      lac optional,
- OCT1                      rac optional,
- OCT2                      rnc_id optional,
- octetstring               extended_rnc_id optional        
-} with { variant "PRESENCE( type_gtpc = '8A'O)";
-         variant (lengthf) "LENGTHTO(mcc1, mcc2, mcc3, mnc3, mnc1, mnc2,
-                                     lac, rac, rnc_id, extended_rnc_id)"; };
-
-//UTRAN Transparent container  -   7.7.38
-type record  UTRANTransparentContainer {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- octetstring               transparentfield
-} with { variant "PRESENCE( type_gtpc = '8B'O)";
-         variant (lengthf) "LENGTHTO(transparentfield)";};
-
-//RAB Setup Information  -   7.7.39
-type record of RABSetupInformation RABSetupInformation_List
-
-type record RABSetupInformation{
- OCT1                       type_gtpc, 
- LIN2_BO_LAST               lengthf,
- BIT4                       nsapi,
- BIT4                       unused,
- OCT4                       teidData optional,
- octetstring                rncIpAddress optional
- } with { variant "PRESENCE( type_gtpc = '8C'O)"; 
-          variant (lengthf) "LENGTHTO(nsapi,unused,teidData,rncIpAddress)";}; 
-
-//Extension Header Type List  -  7.7.40
-type record  ExtensionHeaderTypeList_gtpc {
- OCT1                       type_gtpc,
- integer                    lengthf,
- octetstring                extensionTypesList
-} with { variant "PRESENCE( type_gtpc = '8D'O)"; 
-         variant (lengthf) "LENGTHTO(extensionTypesList)"; };
-
-//Trigger ID  -  7.7.41
-type record  GTP_TriggerID {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- octetstring                triggerID 
-} with { variant "PRESENCE( type_gtpc = '8E'O)"; 
-         variant (lengthf) "LENGTHTO(triggerID)";};
-
-//OMC Identity  -  7.7.42
-type record  OMCIdentity {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- octetstring                omcID
-} with { variant "PRESENCE( type_gtpc = '8F'O)";
-         variant (lengthf) "LENGTHTO(omcID)"; };
-
-//BSSGP RAN Information needed for RAN Transparent Container 
-//From BSSGP specification 48.018 v9.3.0 according to CR 8446
-
-type union LIN2_2a_GTPC
-{
-integer length1,
-integer length2
-} with {
-        variant (length1) "FIELDLENGTH(7)";
-        variant (length2) "FIELDLENGTH(15)";
-        variant (length2) "BYTEORDER(last)";
-        variant (length1,length2) "FIELDORDER(msb)";
-      }   
-
-type record  PDU_in_Error_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- octetstring            erroneous_BSSGP_PDU
-} with { 
-        variant (lengthIndicator) "LENGTHTO (erroneous_BSSGP_PDU)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       };
-
-type record Cell_Identifier_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- HEX1                   mccDigit1 ,
- HEX1                   mccDigit2 ,
- HEX1                   mccDigit3 ,
- HEX1                   mncDigit3 ,
- HEX1                   mncDigit1 ,
- HEX1                   mncDigit2 ,
- OCT2                   lac,
- OCT1                   rac,    
- OCT2                   cI_value
-} with { 
-      variant (lengthIndicator) 
-     "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3,mncDigit1,
-               mncDigit2,lac,rac,cI_value)";
-      variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                           length2,         ext = '0'B;)";
-      variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-type record Cause_BSSGP_GTPC 
- {
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   cause_Value
- } with { 
-                variant (lengthIndicator) "LENGTHTO (cause_Value)";
-                variant (lengthIndicator) "CROSSTAG( length1,    ext = '1'B;
-                                                     length2,    ext = '0'B;)";
-                variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
- 
-//48.018 v9.3.0 11.3.61
-type record RIM_Application_Identity_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   rIMApplicationIdentity
-} with { 
-         variant (lengthIndicator) "LENGTHTO (rIMApplicationIdentity)";        
-         variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//48.018 v9.3.0 11.3.62
-type record RIM_Sequence_Number_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT4                   rIMSequenceNumber
-} with { 
-         variant (lengthIndicator) "LENGTHTO (rIMSequenceNumber)";        
-         variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                             length2,         ext = '0'B;)";
-         variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//48.018 v9.3.0  Table 11.3.62a.1
-type record RAN_Information_Request_RIM_Container_GTPC
-{
-OCT1                              iEI,
-BIT1                              ext,
-LIN2_2a_GTPC                      lengthIndicator,
-RIM_Application_Identity_GTPC     rIM_Application_Identity,
-RIM_Sequence_Number_GTPC          rIM_Sequence_Number,
-RIM_PDU_Indications_GTPC          rIM_PDU_Indications,
-RIM_Protocol_Version_Number_GTPC  rIM_Protocol_Version_Number optional,
-RAN_Information_Request_Application_Container_GTPC  
-                                        application_Container optional,
-SON_TransferApplicationIdentity   sON_TransferApplicationIdentity optional                                         
-} with { 
-        variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-           rIM_Sequence_Number,rIM_PDU_Indications,rIM_Protocol_Version_Number,
-           application_Container,sON_TransferApplicationIdentity)";        
-        variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)"; 
-        variant "TAG (rIM_Protocol_Version_Number,   iEI = '55'O)";               
-        variant (application_Container) "PRESENCE (rIM_Application_Identity.rIMApplicationIdentity = '01'O;)";  
-        variant (application_Container) "PRESENCE (rIM_Application_Identity.rIMApplicationIdentity = '02'O;)";
-        variant (application_Container) "PRESENCE (rIM_Application_Identity.rIMApplicationIdentity = '03'O;)";
-        variant (application_Container) "PRESENCE (rIM_Application_Identity.rIMApplicationIdentity = '04'O;)";
-        variant (application_Container) "PRESENCE (rIM_Application_Identity.rIMApplicationIdentity = '05'O;)";                                
-        variant (application_Container) 
-	 "CROSSTAG 
-	     (nacc,rIM_Application_Identity.rIMApplicationIdentity = '01'O;
-              si3 ,rIM_Application_Identity.rIMApplicationIdentity = '02'O;
-              mBMS,rIM_Application_Identity.rIMApplicationIdentity = '03'O;
-              sON, rIM_Application_Identity.rIMApplicationIdentity = '04'O;
-              uTRA_SI,rIM_Application_Identity.rIMApplicationIdentity = '05'O;
-             )"                                  
-        variant (sON_TransferApplicationIdentity) 
-	 "PRESENCE
-	    (rIM_Application_Identity.rIMApplicationIdentity = '04'O;)";                  
-};
-
-//48.018 v9.3.0 Table 11.3.62a.2
-type record RAN_Information_RIM_Container_GTPC
-{
-OCT1                              iEI,
-BIT1                              ext,
-LIN2_2a_GTPC                      lengthIndicator,  
-RIM_Application_Identity_GTPC     rIM_Application_Identity,
-RIM_Sequence_Number_GTPC          rIM_Sequence_Number,
-RIM_PDU_Indications_GTPC          rIM_PDU_Indications,
-RIM_Protocol_Version_Number_GTPC  rIM_Protocol_Version_Number   optional,
-ApplContainer_or_ApplErrContainer_GTPC 
-                              applContainer_or_ApplErrContainer optional,
-SON_TransferApplicationIdentity   sON_TransferApplicationIdentity optional                              
-}  with { 
-      variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-           rIM_Sequence_Number,rIM_PDU_Indications,rIM_Protocol_Version_Number,
-           applContainer_or_ApplErrContainer,sON_TransferApplicationIdentity)";        
-      variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                           length2,        ext = '0'B;)";
-      variant (ext,lengthIndicator) "FIELDORDER(msb)";
-      variant 
-       "TAG (rIM_Protocol_Version_Number,   iEI = '55'O;)";        
-      variant (applContainer_or_ApplErrContainer) "PRESENCE(rIM_Application_Identity.rIMApplicationIdentity = '01'O;)"; 
-      variant (applContainer_or_ApplErrContainer) "PRESENCE(rIM_Application_Identity.rIMApplicationIdentity = '02'O;)"; 
-      variant (applContainer_or_ApplErrContainer) "PRESENCE(rIM_Application_Identity.rIMApplicationIdentity = '03'O;)"; 
-      variant (applContainer_or_ApplErrContainer) "PRESENCE(rIM_Application_Identity.rIMApplicationIdentity = '04'O;)"; 
-      variant (applContainer_or_ApplErrContainer) "PRESENCE(rIM_Application_Identity.rIMApplicationIdentity = '05'O;)"; 
-      variant (applContainer_or_ApplErrContainer) 
-       "CROSSTAG(nacc,rIM_Application_Identity.rIMApplicationIdentity = '01'O;
-                 si3,rIM_Application_Identity.rIMApplicationIdentity = '02'O;
-                 mBMS,rIM_Application_Identity.rIMApplicationIdentity = '03'O;
-                 sON,rIM_Application_Identity.rIMApplicationIdentity = '04'O;
-                 uTRA_SI,rIM_Application_Identity.rIMApplicationIdentity = '05'O)"; 
-                 
-                       
-      variant (sON_TransferApplicationIdentity) 
-	 "PRESENCE
-	    (rIM_Application_Identity.rIMApplicationIdentity = '04'O;)";                           
-};         
-
-type union ApplContainer_or_ApplErrContainer_GTPC
-{
- ApplContainer_or_ApplErrContainer_NACC_GTPC       nacc,
- ApplContainer_or_ApplErrContainer_SI3_GTPC        si3,
- ApplContainer_or_ApplErrContainer_MBMS_GTPC       mBMS,
- ApplContainer_or_ApplErrContainer_SON_GTPC        sON,
- ApplContainer_or_ApplErrContainer_UTRA_SI_GTPC    uTRA_SI
-}
-
-type union ApplContainer_or_ApplErrContainer_NACC_GTPC
-{
- RAN_Information_Application_Container_NACC_GTPC   application_Container,
- Application_Error_Container_NACC_GTPC             application_Error_Container
-} with { 
-         variant "TAG (
-                        application_Container,  iEI = '4E'O;
-                        application_Error_Container, iEI = '56'O;)";   
-}
-
-type union ApplContainer_or_ApplErrContainer_SI3_GTPC
-{
- RAN_Information_Application_Container_SI3_GTPC   application_Container,
- Application_Error_Container_SI3_GTPC             application_Error_Container
-} with { 
-         variant "TAG (
-                        application_Container,  iEI = '4E'O;
-                        application_Error_Container, iEI = '56'O;)";   
-}
-
-type union ApplContainer_or_ApplErrContainer_MBMS_GTPC
-{
- RAN_Information_Application_Container_MBMS_GTPC   application_Container,
- Application_Error_Container_MBMS_GTPC             application_Error_Container
-} with { 
-         variant "TAG (
-                        application_Container,  iEI = '4E'O;
-                        application_Error_Container, iEI = '56'O;)";   
-}
-
-type union ApplContainer_or_ApplErrContainer_SON_GTPC
-{
- RAN_Information_Application_Container_SON_GTPC   application_Container,
- Application_Error_Container_SON_GTPC             application_Error_Container
-} with { 
-         variant "TAG (
-                        application_Container,  iEI = '4E'O;
-                        application_Error_Container, iEI = '56'O;)";   
-}
-
-type union ApplContainer_or_ApplErrContainer_UTRA_SI_GTPC
-{
- RAN_Information_Application_Container_UTRA_SI_GTPC   application_Container,
- Application_Error_Container_UTRA_SI_GTPC             application_Error_Container
-} with { 
-         variant "TAG (
-                        application_Container,  iEI = '4E'O;
-                        application_Error_Container, iEI = '56'O;)";   
-}
-
-
-//48.018 v9.3.0 Table 11.3.62a.3
-type record RAN_Information_Ack_RIM_Container_GTPC
-{
-OCT1                              iEI,
-BIT1                              ext,
-LIN2_2a_GTPC                      lengthIndicator,  
-RIM_Application_Identity_GTPC     rIM_Application_Identity,
-RIM_Sequence_Number_GTPC          rIM_Sequence_Number,
-RIM_Protocol_Version_Number_GTPC  rIM_Protocol_Version_Number   optional,
-SON_TransferApplicationIdentity   sON_TransferApplicationIdentity optional
-} with { 
-        variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-          rIM_Sequence_Number,rIM_Protocol_Version_Number)";        
-        variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                           length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-  
-        variant "TAG (rIM_Protocol_Version_Number,   iEI = '55'O;)"; 
-        variant (sON_TransferApplicationIdentity) 
-	 "PRESENCE
-	    (rIM_Application_Identity.rIMApplicationIdentity = '04'O;)";                 
-};
-
-//48.018 v9.3.0 Table 11.3.62a.4
-type record RAN_Information_Error_RIM_Container_GTPC
-{
-OCT1                              iEI,
-BIT1                              ext,
-LIN2_2a_GTPC                      lengthIndicator,  
-RIM_Application_Identity_GTPC     rIM_Application_Identity,
-Cause_BSSGP_GTPC                  rIM_cause,
-RIM_Protocol_Version_Number_GTPC  rIM_Protocol_Version_Number   optional,
-PDU_in_Error_GTPC                 pDU_in_Error,
-SON_TransferApplicationIdentity   sON_TransferApplicationIdentity optional     
-} with { 
-        variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-         rIM_cause,rIM_Protocol_Version_Number,pDU_in_Error)";        
-        variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                           length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-        variant "TAG (rIM_Protocol_Version_Number,   iEI = '55'O)"; 
-        variant (sON_TransferApplicationIdentity) 
-	 "PRESENCE
-	    (rIM_Application_Identity.rIMApplicationIdentity = '04'O;)";         
-};
-
-//48.018 v9.3.0 Table 11.3.62a.5
-type record RAN_Information_Application_Error_RIM_Container_GTPC
-{
-OCT1                              iEI,
-BIT1                              ext,
-LIN2_2a_GTPC                      lengthIndicator,    
-RIM_Application_Identity_GTPC     rIM_Application_Identity,
-RIM_Sequence_Number_GTPC          rIM_Sequence_Number,
-RIM_PDU_Indications_GTPC          rIM_PDU_Indications,
-RIM_Protocol_Version_Number_GTPC  rIM_Protocol_Version_Number   optional,
-Application_Error_Container_GTPC  application_Error_Container,
-SON_TransferApplicationIdentity   sON_TransferApplicationIdentity optional
-} with { 
-     variant (lengthIndicator) "LENGTHTO (rIM_Application_Identity,
-       rIM_Sequence_Number,rIM_PDU_Indications,rIM_Protocol_Version_Number,  
-       application_Error_Container)";        
-     variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                          length2,         ext = '0'B;)";
-     variant (ext,lengthIndicator) "FIELDORDER(msb)";
- 
-     variant "TAG (rIM_Protocol_Version_Number,   iEI = '55'O)"; 
-          
-     variant (application_Error_Container)
-      "CROSSTAG (nacc,rIM_Application_Identity.rIMApplicationIdentity = '01'O;
-                 si3,rIM_Application_Identity.rIMApplicationIdentity = '02'O;
-                 mBMS,rIM_Application_Identity.rIMApplicationIdentity = '03'O;
-                 sON,rIM_Application_Identity.rIMApplicationIdentity = '04'O;
-                 uTRA_SI,rIM_Application_Identity.rIMApplicationIdentity = '05'O)"; 
-                        
-     variant (sON_TransferApplicationIdentity) 
-	 "PRESENCE
-	    (rIM_Application_Identity.rIMApplicationIdentity = '04'O;)";        
-};
-
-//48.018 v9.3.0 Table 11.3.64
-type union Application_Error_Container_GTPC
-{
- Application_Error_Container_NACC_GTPC     nacc,
- Application_Error_Container_SI3_GTPC      si3,
- Application_Error_Container_MBMS_GTPC     mBMS,
- Application_Error_Container_SON_GTPC      sON,
- Application_Error_Container_UTRA_SI_GTPC  uTRA_SI
-}
-
-//48.018 v9.3.0 Table 11.3.63.1
-type union RAN_Information_Request_Application_Container_GTPC
-{
- RAN_Information_Request_Application_Container_NACC_GTPC      nacc,
- RAN_Information_Request_Application_Container_SI3_GTPC       si3, 
- RAN_Information_Request_Application_Container_MBMS_GTPC      mBMS,
- RAN_Information_Request_Application_Container_SON_GTPC       sON,
- RAN_Information_Request_Application_Container_UTRA_SI_GTPC   uTRA_SI
-}
-
-//48.018 v9.3.0 Table 11.3.63.1.1
-type record RAN_Information_Request_Application_Container_NACC_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier
-} with { 
-         variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-         variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-         variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-//48.018 v9.3.0 Table 11.3.63.1.2
-type record RAN_Information_Request_Application_Container_SI3_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier
-} with { 
-         variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-         variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-         variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//48.018 v9.3.0 Table 11.3.63.1.3
-type record RAN_Information_Request_Application_Container_MBMS_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier
-} with { 
-         variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-         variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-         variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//48.018 v9.3.0 Table 11.3.63.1.4
-type record RAN_Information_Request_Application_Container_SON_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier,
- octetstring                 sON_TransferRequestContainer   // 3GPP TS 36.413
-} with { 
-         variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier,sON_TransferRequestContainer)";     
-         variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-         variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//48.018 v9.3.0 Table 11.3.63.1.5
-type record RAN_Information_Request_Application_Container_UTRA_SI_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier
-} with { 
-         variant (lengthIndicator) "LENGTHTO (reporting_Cell_Identifier)";     
-         variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-         variant (ext,lengthIndicator) "FIELDORDER(msb)";
-}
-
-//48.018 v9.3.0 Table 11.3.108
-type record SON_TransferApplicationIdentity
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator, 
- octetstring         sON_TransferApplicationIdentityValue  
-}
-
-//48.018 v9.3.0 Table 11.3.63.2.1
-type record RAN_Information_Application_Container_NACC_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier,
- BIT1                        typeBit,
- BIT7                        number_of_SI_PSI,
- octetstring                 sI_PSI     // 3GPP TS 44.018, 44.060
-} with { 
-       variant (lengthIndicator) 
-        "LENGTHTO (reporting_Cell_Identifier,typeBit,number_of_SI_PSI,sI_PSI)";
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-//48.018 v9.3.0 Table 11.3.63.2.2
-type record RAN_Information_Application_Container_SI3_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier,
- octetstring                 sI3 length (21)       // 3GPP TS 44.018
-} with { 
-       variant (lengthIndicator) 
-        "LENGTHTO (reporting_Cell_Identifier,sI3)";
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)"; 
-       variant (sI3)"FIELDLENGTH(21)" ;      
-};        
-
-//48.018 v9.3.0 Table 11.3.63.2.3
-type record RAN_Information_Application_Container_MBMS_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier,
- octetstring                 mBMS_ChannelReport
-} with { 
-       variant (lengthIndicator) 
-        "LENGTHTO (reporting_Cell_Identifier,mBMS_ChannelReport)";
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";          
-};        
-
-//48.018 v9.3.0 Table 11.3.63.2.4
-type record RAN_Information_Application_Container_SON_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier,
- octetstring                 sON_TransferResponseContainer // 3GPP TS 36.413
-
-
-} with { 
-       variant (lengthIndicator) 
-        "LENGTHTO (reporting_Cell_Identifier,sON_TransferResponseContainer)";
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";          
-};        
-
-//48.018 v9.3.0 Table 11.3.63.2.5
-type record RAN_Information_Application_Container_UTRA_SI_GTPC
-{
- OCT1                        iEI,
- BIT1                        ext,
- LIN2_2a_GTPC                lengthIndicator,
- Cell_Identifier_GTPC        reporting_Cell_Identifier,
- octetstring                 uTRA_SI_Container   // 3GPP TS25.331
-
-
-} with { 
-       variant (lengthIndicator) 
-        "LENGTHTO (reporting_Cell_Identifier,uTRA_SI_Container)";
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";          
-};        
-
-
-//48.018 v9.3.0 11.3.64.1 
-type record Application_Error_Container_NACC_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   nACC_cause,
- Application_Container_IE_NACC_GTPC  erroneousApplicationContainer
-} with { 
-       variant (lengthIndicator)
-          "LENGTHTO (nACC_cause,erroneousApplicationContainer)"; 
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-type union Application_Container_IE_NACC_GTPC
-{
-RAN_Information_Request_Application_Container_NACC_GTPC 
-                        rAN_Information_Request_Application_Container,
-			
-RAN_Information_Application_Container_NACC_GTPC    
-                        rAN_Information_Application_Container
-}        
-with { 
-         variant "TAG (
-                  rAN_Information_Request_Application_Container,  iEI = '4D'O;
-                  rAN_Information_Application_Container, iEI = '4E'O)";  
-}
-
-
-//48.018 v9.3.0 11.3.64.2 
-type record Application_Error_Container_SI3_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   sI3_cause,
- Application_Container_IE_SI3_GTPC  erroneousApplicationContainer
-} with { 
-       variant (lengthIndicator)
-          "LENGTHTO (sI3_cause,erroneousApplicationContainer)"; 
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};  
-
-
-type union Application_Container_IE_SI3_GTPC
-{
-RAN_Information_Request_Application_Container_SI3_GTPC 
-                        rAN_Information_Request_Application_Container,
-			
-RAN_Information_Application_Container_SI3_GTPC    
-                        rAN_Information_Application_Container
-}        
-with { 
-         variant "TAG (
-                  rAN_Information_Request_Application_Container,  iEI = '4D'O;
-                  rAN_Information_Application_Container, iEI = '4E'O)";  
-}
-
-//48.018 v9.3.0 11.3.64.3 
-type record Application_Error_Container_MBMS_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   mBMS_cause,
- Application_Container_IE_MBMS_GTPC  erroneousApplicationContainer
-} with { 
-       variant (lengthIndicator)
-          "LENGTHTO (mBMS_cause,erroneousApplicationContainer)"; 
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};  
-
-
-type union Application_Container_IE_MBMS_GTPC
-{
-RAN_Information_Request_Application_Container_MBMS_GTPC 
-                        rAN_Information_Request_Application_Container,
-			
-RAN_Information_Application_Container_MBMS_GTPC    
-                        rAN_Information_Application_Container
-}        
-with { 
-         variant "TAG (
-                  rAN_Information_Request_Application_Container,  iEI = '4D'O;
-                  rAN_Information_Application_Container, iEI = '4E'O)";  
-}
-
-//48.018 v9.3.0 11.3.64.4 
-type record Application_Error_Container_SON_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   sON_cause,
- Application_Container_IE_SON_GTPC  erroneousApplicationContainer
-} with { 
-       variant (lengthIndicator)
-          "LENGTHTO (sON_cause,erroneousApplicationContainer)"; 
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};  
-
-
-type union Application_Container_IE_SON_GTPC
-{
-RAN_Information_Request_Application_Container_SON_GTPC 
-                        rAN_Information_Request_Application_Container,
-			
-RAN_Information_Application_Container_SON_GTPC    
-                        rAN_Information_Application_Container
-}        
-with { 
-         variant "TAG (
-                  rAN_Information_Request_Application_Container,  iEI = '4D'O;
-                  rAN_Information_Application_Container, iEI = '4E'O)";  
-}
-
-
-//48.018 v9.3.0 11.3.64.5 
-type record Application_Error_Container_UTRA_SI_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   uTRA_SI_cause,
- Application_Container_IE_SON_GTPC  erroneousApplicationContainer
-} with { 
-       variant (lengthIndicator)
-          "LENGTHTO (uTRA_SI_cause,erroneousApplicationContainer)"; 
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                            length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};  
-
-
-type union Application_Container_IE_UTRA_SI_GTPC
-{
-RAN_Information_Request_Application_Container_UTRA_SI_GTPC 
-                        rAN_Information_Request_Application_Container,
-			
-RAN_Information_Application_Container_UTRA_SI_GTPC    
-                        rAN_Information_Application_Container
-}        
-with { 
-         variant "TAG (
-                  rAN_Information_Request_Application_Container,  iEI = '4D'O;
-                  rAN_Information_Application_Container, iEI = '4E'O)";  
-}
-
-
-//48.018 v9.3.0 11.3.65
-type record RIM_PDU_Indications_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- BIT1                   ack,
- BIT3                   pDU_Type_Extension,
- BIT4                   reserved
-} with { 
-        variant (lengthIndicator) "LENGTHTO (ack,pDU_Type_Extension,reserved)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};
-
-//48.018 v9.3.0 11.3.67
-type record RIM_Protocol_Version_Number_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- OCT1                   rIMProtocolVersionNumber
-} with { 
-         variant (lengthIndicator) "LENGTHTO (rIMProtocolVersionNumber)";   
-         variant (lengthIndicator) "CROSSTAG( length1,        ext = '1'B;
-                                              length2,        ext = '0'B;)";
-         variant (ext,lengthIndicator) "FIELDORDER(msb)";
-};        
-
-//48.018 v9.3.0  11.3.70
-type record RIM_Routing_Information_GTPC
-{
- OCT1                   iEI,
- BIT1                   ext,
- LIN2_2a_GTPC           lengthIndicator,
- HEX1                   rIMRoutingAddressDiscriminator,
- HEX1                   spare,
- RIM_Routing_Address_GTPC    rIM_Routing_Address 
-}  with { 
-       variant (lengthIndicator) 
-	"LENGTHTO (rIMRoutingAddressDiscriminator,spare,rIM_Routing_Address)"; 
-       variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-       variant (ext,lengthIndicator) "FIELDORDER(msb)";
-
-       variant (rIM_Routing_Address) 
-	 "CROSSTAG (cell_Identifier,rIMRoutingAddressDiscriminator = '0'H;
-                    rNCID,          rIMRoutingAddressDiscriminator = '1'H;
-                    eNB_Identifier, rIMRoutingAddressDiscriminator = '2'H;)" 
-};
-
-type record Cell_Identifier_V_GTPC
-{ 
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2,
- OCT2                   lac,
- OCT1                   rac,    
- OCT2                   cI_value
-};
-
-type union RIM_Routing_Address_GTPC
-{
- Cell_Identifier_V_GTPC   cell_Identifier, 
- RNC_ID_BSSGP_GTPC        rNCID,
- ENB_Identifier           eNB_Identifier
- }
-
-type record RNC_ID_BSSGP_GTPC
-{
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2,
- OCT2                   lAC,
- OCT1                   rAC,
- HEX1                   spare,
- integer                rNC_ID
-}  with { 
-          variant (spare,rNC_ID) "FIELDORDER(msb)";
-          variant (rNC_ID) "BYTEORDER(last)";  
-          variant (rNC_ID) "FIELDLENGTH(12)";
-} 
-
-type record ENB_Identifier
-{
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2,
- OCT2                   tAC,
- octetstring            globalENB_ID
-}
-
-//Note: the following structure is outdated
-/*
-type record GlobalRNC_ID_BSSGP_GTPC
-{
- HEX1                   mccDigit1,
- HEX1                   mccDigit2,
- HEX1                   mccDigit3,
- HEX1                   mncDigit3,
- HEX1                   mncDigit1,
- HEX1                   mncDigit2, 
-
- integer                rNC_ID
-}  with { 
-          variant (spare,rNC_ID) "FIELDORDER(msb)";
-          variant (rNC_ID) "BYTEORDER(last)";  
-          variant (rNC_ID) "FIELDLENGTH(12)";
-}
-*/
-
-//48.018 v9.3.0  10.6.1
-type record PDU_BSSGP_RAN_INFORMATION_REQUEST_GTPC
-{
- OCT1			  	   bssgpPduType,
- RIM_Routing_Information_GTPC  	   destination_Cell_Identifier,
- RIM_Routing_Information_GTPC  	   source_Cell_Identifier,
- RAN_Information_Request_RIM_Container_GTPC  rIM_Container
-};
-      
-//48.018 v9.3.0  10.6.2
-type record PDU_BSSGP_RAN_INFORMATION_GTPC
-{
- OCT1			                bssgpPduType,
- RIM_Routing_Information_GTPC           destination_Cell_Identifier,
- RIM_Routing_Information_GTPC           source_Cell_Identifier,
- RAN_Information_RIM_Container_GTPC     rIM_Container
-};
-
-//48.018 v9.3.0  10.6.3
-type record PDU_BSSGP_RAN_INFORMATION_ACK_GTPC
-{
- OCT1				   bssgpPduType,
- RIM_Routing_Information_GTPC	   destination_Cell_Identifier,
- RIM_Routing_Information_GTPC	   source_Cell_Identifier,
- RAN_Information_Ack_RIM_Container_GTPC rIM_Container
-};
-
-//48.018 v9.3.0  10.6.4
-type record PDU_BSSGP_RAN_INFORMATION_ERROR_GTPC
-{
- OCT1			                bssgpPduType,
- RIM_Routing_Information_GTPC           destination_Cell_Identifier,
- RIM_Routing_Information_GTPC           source_Cell_Identifier,
- RAN_Information_Error_RIM_Container_GTPC  rIM_Container
-};
-
-//48.018 v9.3.0  10.6.5
-type record PDU_BSSGP_RAN_INFORMATION_APPLICATION_ERROR_GTPC
-{
- OCT1			                bssgpPduType,
- RIM_Routing_Information_GTPC           destination_Cell_Identifier,
- RIM_Routing_Information_GTPC           source_Cell_Identifier,
- RAN_Information_Application_Error_RIM_Container_GTPC  rIM_Container
-};
-
-type union RANTransparentContainerField  
-{    
-PDU_BSSGP_RAN_INFORMATION_REQUEST_GTPC       pDU_BSSGP_RAN_INFORMATION_REQUEST,
-PDU_BSSGP_RAN_INFORMATION_GTPC               pDU_BSSGP_RAN_INFORMATION,
-PDU_BSSGP_RAN_INFORMATION_ACK_GTPC           pDU_BSSGP_RAN_INFORMATION_ACK,
-PDU_BSSGP_RAN_INFORMATION_ERROR_GTPC         pDU_BSSGP_RAN_INFORMATION_ERROR,
-PDU_BSSGP_RAN_INFORMATION_APPLICATION_ERROR_GTPC  
-                                  pDU_BSSGP_RAN_INFORMATION_APPLICATION_ERROR
-} with { variant "TAG (        
-  pDU_BSSGP_RAN_INFORMATION_REQUEST,           bssgpPduType ='71'O;
-  pDU_BSSGP_RAN_INFORMATION,       bssgpPduType ='70'O;
-  pDU_BSSGP_RAN_INFORMATION_ACK,   bssgpPduType ='72'O;
-  pDU_BSSGP_RAN_INFORMATION_ERROR, bssgpPduType ='73'O;
-  pDU_BSSGP_RAN_INFORMATION_APPLICATION_ERROR, bssgpPduType ='74'O  
-  )"  
-};
-  
-//RAN Transparent Container 7.7.43
-type record RANTransparentContainer{
- OCT1                                 type_gtpc,
- LIN2_BO_LAST                         lengthf,
- RANTransparentContainerField         rANTransparentContainerField
-} with { variant "PRESENCE( type_gtpc = '90'O)";
-         variant (lengthf) "LENGTHTO(rANTransparentContainerField)"; };
-
-//Charging Gateway Address  - 7.7.44
-type record  ChargingGatewayAddress {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- iPv4_iPv6_Address          ipv_address
-} with { variant "PRESENCE( type_gtpc = 'FB'O)";
-         variant (lengthf) "LENGTHTO(ipv_address)";};
-
-type union iPv4_iPv6_Address{
- OCT4                       iPv4_Address,
- OCT16                      iPv6_Address
-}
-
-//PDP Context Priorization  - 7.7.45
-type record PDPContextPriorization {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf
-} with { variant "PRESENCE( type_gtpc = '91'O)";};
-
-//Addititonal RAB Setup Information  -   7.7.45A
-
-type record of AdditionalRABSetupInformation AdditionalRABSetupInformation_List
-
-type record AdditionalRABSetupInformation {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- BIT4                       nsapi,
- BIT4                       unused,
- OCT4                       teidData optional,
- octetstring                rncIpAddress optional
-} with {variant "PRESENCE( type_gtpc = '92'O)"; 
-        variant (lengthf) "LENGTHTO(nsapi,unused,teidData,rncIpAddress)"; };
-
-//Private Extension  -  7.7.46
-type record of PrivateExtension_gtpc PrivateExtension_gtpc_List;
-
-type record  PrivateExtension_gtpc {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- OCT2                       extensionID,
- octetstring                extensionValue
-} with {variant "PRESENCE( type_gtpc = 'FF'O)"; 
-        variant (lengthf) "LENGTHTO(extensionID, extensionValue)"; };
-
-//SGSN Number - 7.7.47
-type record SGSN_Number {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- octetstring                sGSN_NumberValue
-} with { variant "PRESENCE( type_gtpc = '93'O)"; 
-         variant (lengthf) "LENGTHTO(sGSN_NumberValue)"; };
-
-//Common Flags - 7.7.48
-type record CommonFlags {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- BIT1                       prohibitPayloadCompression,
- BIT1                       mBMS_ServiceType,
- BIT1                       rAN_ProceduresReady,
- BIT1                       mBMS_CountingInformation,
- BIT1                       nO_QoS_Negotiation,
- BIT1                       nRSN,
- BIT1                       upgradeQoS_Supported,
- BIT1                       dualAddressBearerFlag
-} with { variant "PRESENCE( type_gtpc = '94'O)";
-         variant (lengthf) "LENGTHTO(prohibitPayloadCompression,mBMS_ServiceType,
-                                     rAN_ProceduresReady,mBMS_CountingInformation,
-                                     nO_QoS_Negotiation,nRSN,upgradeQoS_Supported,dualAddressBearerFlag)"; }; 
-
-//APN Restriction - 7.7.49
-type record APN_Restriction  {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- OCT1                       restrictionTypeValue
-} with { variant "PRESENCE( type_gtpc = '95'O)";
-         variant (lengthf) "LENGTHTO(restrictionTypeValue)"; }; 
-  
-// RAT Type  -  7.7.50
-type record RATType {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- OCT1                       ratTypeValue
-} with { variant "PRESENCE( type_gtpc = '97'O)";
-         variant (lengthf) "LENGTHTO(ratTypeValue)"; }; 
-
-// User Location Information  -  7.7.51
-type record UserLocationInformation {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- OCT1                       geographicLocationType,
- GeographicLocation_gtpc    geographicLocation
-} with { variant "PRESENCE( type_gtpc = '98'O)";
-  variant (lengthf) "LENGTHTO(geographicLocationType, geographicLocation)";
-  variant (geographicLocation) "CROSSTAG(geographicLocationCGI, geographicLocationType='00'O;
-                                         geographicLocationSAI, geographicLocationType='01'O;
-                                         geographicLocationRAI, geographicLocationType='02'O)";};
-
-type union GeographicLocation_gtpc {
-  GeographicLocationCGI     geographicLocationCGI,
-  GeographicLocationSAI     geographicLocationSAI,
-  GeographicLocationRAI     geographicLocationRAI
-}
-
-// Figure 7.7.51.2: Geographic Location field for CGI
-type record GeographicLocationCGI {
- HEX1                       mccDigit1,
- HEX1                       mccDigit2,
- HEX1                       mccDigit3,
- HEX1                       mncDigit3,
- HEX1                       mncDigit1,
- HEX1                       mncDigit2,
- OCT2                       lac,
- OCT2                       cI_value
-}
-
-// Figure 7.7.51.3: Geographic Location field for SAI
-type record GeographicLocationSAI {
- HEX1                       mccDigit1,
- HEX1                       mccDigit2,
- HEX1                       mccDigit3,
- HEX1                       mncDigit3,
- HEX1                       mncDigit1,
- HEX1                       mncDigit2,
- OCT2                       lac,
- OCT2                       sac
-}
-
-// Figure 7.7.51.4: Geographic Location field for RAI
-type record GeographicLocationRAI {
- HEX1                       mccDigit1,
- HEX1                       mccDigit2,
- HEX1                       mccDigit3,
- HEX1                       mncDigit3,
- HEX1                       mncDigit1,
- HEX1                       mncDigit2,
- OCT2                       lac,
- OCT2                       rac
-}
-
-// MS Time Zone  -  7.7.52
-type record MS_TimeZone {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- OCT1                       timeZone,
- BIT2                       daylightSavingTime,
- BIT3                       spare1,
-// This bit is proprietary, compared to the 3GPP definition of
-// the Time Zone information element.
-// The new field "SGSN Attempts to Update MS" is described in 
-// the following CPI documentation: GSN CDR Format, 
-// 1/190 83-AXB 250 05/6 Uen A.
-// Web link to CPI: http://cpi2.al.sw.ericsson.se/alex?pr=PDU+PCN
- BIT1                       sgsnAttempsToUpdateMS,
- BIT2                       spare2
-} with { variant "PRESENCE( type_gtpc = '99'O)";
-         variant (lengthf) "LENGTHTO(timeZone, daylightSavingTime, spare1,
-                                     sgsnAttempsToUpdateMS, spare2)"; };
-
-// IMEISV - 7.7.53
-type record IMEISV_gtpc {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- OCT8                      imeisv
-} with { variant "PRESENCE( type_gtpc = '9A'O)";
-         variant (lengthf) "LENGTHTO(imeisv)"; };
-
-// Camel Charging Information Container - 7.7.54
-type record CamelChargingInformationContainer {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- octetstring               camelInformationPDP_IE
-} with { variant "PRESENCE( type_gtpc = '9B'O)";
-         variant (lengthf) "LENGTHTO(camelInformationPDP_IE)"; };
-
-// MBMS UE Context Container - 7.7.55
-type record of MBMS_UE_ContextContainer MBMS_UE_Context_List;
-
-type record MBMS_UE_ContextContainer {
- OCT1                    type_gtpc,
- LIN2_BO_LAST            lengthf,
- BIT4                    spare1,
- BIT4                    linkedNSAPI,
- OCT4                    uteidControlPlane,
- OCT1                    enhancedNSAPI,
- BIT4                    pdp_typeorg,
- BIT4                    spare2,
- OCT1                    pdp_typenum,
- integer                 pdp_addressLength,
- octetstring             pdp_address length (0..63),
- integer                 ggsn_addressControlPlaneLength,
- octetstring             ggsn_addressControlPlane length (4..16),
- integer                 apnLength,
- octetstring             apn,
- BIT4                    transactionId,
- BIT4                    spare3,
- OCT1                    transactionID
-} with {variant "PRESENCE( type_gtpc = '9C'O)";
-        variant (lengthf) "LENGTHTO(spare1, linkedNSAPI,
-          uteidControlPlane, enhancedNSAPI, pdp_typeorg, spare2,
-          pdp_typenum, pdp_addressLength, pdp_address,
-          ggsn_addressControlPlaneLength, ggsn_addressControlPlane,
-          apnLength, apn, transactionId, spare3, transactionID)";
-        variant (pdp_addressLength) "LENGTHTO(pdp_address)";
-        variant (ggsn_addressControlPlaneLength) 
-          "LENGTHTO(ggsn_addressControlPlane)";
-        variant (apnLength) "LENGTHTO(apn)"; 	
-	};
-
-// Temporary Mobile Group Identity - 7.7.56
-type record TMGI_gtpc {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- OCT6                       tMGIValue
-} with { variant "PRESENCE( type_gtpc = '9D'O)";
-         variant (lengthf) "LENGTHTO(tMGIValue)"; };
-
-// RIM Routing Address - 7.7.57
-type record RIM_RoutingAddress {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- octetstring               rIM_RoutingAddressValue
-   //Left as octetstring because GTP spec does not include the RIM Routing 
-   // Address Discriminator and therefore decoding is not possible as in 48.018
-   //CR 544 states that "The RIM Routing Address contains the destination RNC 
-   // Identity from the RAN INFORMATION message when the source is GERAN and 
-   // the target is UTRAN.
-   //The RIM Routing Address contains the destination Cell Identifier from the 
-   // RAN INFORMATION message when the source is GERAN and the target ir GERAN.
-} with { variant "PRESENCE( type_gtpc = '9E'O)";
-         variant (lengthf) "LENGTHTO(rIM_RoutingAddressValue)"; };
-
-//MBMS Protocol Configuration Options - 7.7.58
-type record MBMS_ProtocolConfigurationOptions {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- octetstring               mBMS_ProtocolConfigurationOptions
-} with { variant "PRESENCE( type_gtpc = '9F'O)";
-         variant (lengthf) "LENGTHTO(mBMS_ProtocolConfigurationOptions)"; };
-
-// MBMS Session Duration - 7.7.59
-type record MBMS_SessionDuration {
- OCT1                       type_gtpc,
- LIN2_BO_LAST               lengthf,
- OCT3                       mBMS_SessionDurationValue
-} with { variant "PRESENCE( type_gtpc = 'A8'O)";
-         variant (lengthf) "LENGTHTO(mBMS_SessionDurationValue)"; };
-
-
-// MBMS Service Area - 7.7.60
-type record MBMS_ServiceArea {
- OCT1                       type_gtpc, 
- LIN2_BO_LAST               lengthf,
- octetstring                mBMS_ServiceAreaValue
-} with { variant "PRESENCE( type_gtpc = 'A0'O)";
-         variant (lengthf) "LENGTHTO(mBMS_ServiceAreaValue)"; };
-
-// Source RNC PDCP context info - 7.7.61
-type record SourceRNC_PDCP_ContextInfo {
- OCT1                       type_gtpc, 
- LIN2_BO_LAST               lengthf,
- octetstring                rRC_Container
-} with { variant "PRESENCE( type_gtpc = 'A1'O)";
-         variant (lengthf) "LENGTHTO(rRC_Container)"; };
-
-// Additional Trace Info - 7.7.62
-type record AdditionalTraceInfo {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT3                      traceReference2,
- OCT2                      traceRecordingSessionReference,
- OCT1                      triggeringEvents_GGSN,
- OCT1                      traceDepth,
- OCT1                      listOfInterfaces_GGSN,
- OCT1                      traceActivityControl
-} with { variant "PRESENCE( type_gtpc = 'A2'O)";
-         variant (lengthf) "LENGTHTO(traceReference2,
-          traceRecordingSessionReference, triggeringEvents_GGSN,
-          traceDepth, listOfInterfaces_GGSN, traceActivityControl)";
-    };
-
-// Hop Counter - 7.7.63
-type record HopCounter_gtpc {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- integer                   hopCounter
-} with { variant "PRESENCE( type_gtpc = 'A3'O)";
-         variant (lengthf) "LENGTHTO(hopCounter)"; };
-
-// Selected PLMN ID - 7.7.64
-type record Selected_PLMN_ID {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT3                      selected_PLMN_Identity
-} with { variant "PRESENCE( type_gtpc = 'A4'O)";
-         variant (lengthf) "LENGTHTO(selected_PLMN_Identity)"; };
-
-// MBMS Session Identifier - 7.7.65
-type record MBMS_SessionIdentifier {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT1                      mBMS_SessionIdentifier
-} with { variant "PRESENCE( type_gtpc = 'A5'O)";
-         variant (lengthf) "LENGTHTO(mBMS_SessionIdentifier)"; };
-
-// MBMS 2G/3G Indicator - 7.7.66
-type record MBMS_2G_3G_Indicator {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT1                      mBMS_2G_3G_Indicator
-} with { variant "PRESENCE( type_gtpc = 'A6'O)";
-         variant (lengthf) "LENGTHTO(mBMS_2G_3G_Indicator)"; };
-
-// Enhanced NSAPI - 7.7.67
-type record Enhanced_NSAPI {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT1                      enhanced_NSAPI
-} with { variant "PRESENCE( type_gtpc = 'A7'O)";
-         variant (lengthf) "LENGTHTO(enhanced_NSAPI)"; };
-
-// Additional MBMS Trace Info - 7.7.68
-type record AdditionalMBMSTraceInfo {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT3                      traceReference2,
- OCT2                      traceRecordingSessionReference,
- OCT2                      triggeringEvents_BM_SC,
- OCT1                      traceDepth_BM_SC,
- OCT1                      listOfInterfaces_BM_SC,
- OCT1                      traceActivityControl_BM_SC
-} with { variant "PRESENCE( type_gtpc = 'A9'O)";
-         variant (lengthf) "LENGTHTO(traceReference2, traceRecordingSessionReference,
-                                     triggeringEvents_BM_SC, traceDepth_BM_SC, 
-                                     listOfInterfaces_BM_SC, traceActivityControl_BM_SC)";
-  };
-
-// MBMS Session Repetition Number - 7.7.69
-type record MBMS_SessionRepetitionNumber {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT1                      mBMS_SessionRepetitionNumber
-} with { variant "PRESENCE( type_gtpc = 'AA'O)";
-         variant (lengthf) "LENGTHTO(mBMS_SessionRepetitionNumber)"; };
-
-// MBMS Time To Data Transfer - 7.7.70
-type record MBMS_TimeToDataTransfer {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT1                      mBMS_TimeToDataTransfer
-} with { variant "PRESENCE( type_gtpc = 'AB'O)";
-         variant (lengthf) "LENGTHTO(mBMS_TimeToDataTransfer)"; };
-
-// BSS Container - 7.7.72
-type record BSS_Container {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- octetstring               bSS_Container  // TODO FIXME: which Container is the BSS Container?
-} with { variant "PRESENCE( type_gtpc = 'AD'O)";
-         variant (lengthf) "LENGTHTO(bSS_Container)"; };
-
-
-// Cell Identification - 7.7.73
-
-// Routing Area identification - from 24.008 10.5.5.15
-type record RoutingAreaIdentificationV_gtpc  
-{  
- HEX1               mccDigit1,
- HEX1               mccDigit2,
- HEX1               mccDigit3,
- HEX1               mncDigit3,
- HEX1               mncDigit1,
- HEX1               mncDigit2,
- OCT2               lac,
- OCT1               rac               
-};
-
-type record RNC_Identifier_gtpc {
- RoutingAreaIdentificationV_gtpc   routingAreaIdentificationV_gtpc, 
- integer                           rNC_ID,
- HEX1                              spare
-}  with { 
-          variant (spare,rNC_ID) "FIELDORDER(msb)";
-          variant (rNC_ID) "BYTEORDER(last)";  
-          variant (rNC_ID) "FIELDLENGTH(12)";
-}
-   
-type union Cell_ID_or_RNC_ID {
- Cell_Identifier_V_GTPC   cell_Identifier,
- RNC_Identifier_gtpc      rNC_Identifier
-}   
-
-type record Cell_Identification_gtpc {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- Cell_Identifier_V_GTPC    targetCell_ID,
- OCT1                      sourceType,  //0 - Source Cell ID / 1- Source RNC ID in next field
- Cell_ID_or_RNC_ID         source_Cell_ID_or_RNC_ID  
-} with {variant "PRESENCE( type_gtpc = 'AE'O)"; 
-        variant (lengthf) "LENGTHTO(targetCell_ID,sourceType,source_Cell_ID_or_RNC_ID)"; 
-        variant (source_Cell_ID_or_RNC_ID) "CROSSTAG ( cell_Identifier, sourceType = '00'O;
-                                                     rNC_Identifier, sourceType = '01'O)"; };
-
-// PDU Numbers - 7.7.74
-type record of PDU_Numbers PDU_Numbers_List;
-
-type record PDU_Numbers {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT4                      nsapi,
- BIT4                      spare,
- OCT2                      dL_GTPU_SequenceNumber,
- OCT2                      uL_GTPU_SequenceNumber,
- OCT2                      sendNPDUnum,    
- OCT2                      receiveNPDUnum  
-} with {variant "PRESENCE( type_gtpc = 'AF'O)"; 
-        variant (lengthf) "LENGTHTO(nsapi, spare, dL_GTPU_SequenceNumber, uL_GTPU_SequenceNumber,
-              sendNPDUnum, receiveNPDUnum)"; };
-
-// BSSGP Cause - 7.7.75
-type record BSSGP_Cause_gtpc {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT1                      bSSGP_Cause
-} with { variant "PRESENCE( type_gtpc = 'B0'O)";
-         variant (lengthf) "LENGTHTO(bSSGP_Cause)"; };
-
-// Required MBMS Bearer Capabilities - 7.7.76
-type record RequiredMBMS_BearerCapabilities {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- octetstring               reqMBMS_BearerCapValue
-} with { variant "PRESENCE( type_gtpc = 'B1'O)";
-         variant (lengthf) "LENGTHTO(reqMBMS_BearerCapValue)"; }; 
-
-// RIM Routing Address Discriminator 7.7.77
-type record RIM_RoutingAddress_Discriminator {
- OCT1                      type_gtpc,
- LIN2_BO_LAST              lengthf,
- BIT4                      rra_discriminator,
- BIT4                      spare
-} with { variant "PRESENCE( type_gtpc = 'B2'O)";
-         variant (lengthf) "LENGTHTO(rra_discriminator,spare)"; };
-
-// ListOfSetupPFCs - 7.7.78
-
-// PFC/PFI as defined in BSSGP (48.018 - 11.3.83) which refers to L3 (24.008 - 10.5.6.11)
-type record Single_PFI_gtpc
-{
-  BIT7  pFI_Value,
-  BIT1  spare
-}
-
-type record length (0..11) of Single_PFI_gtpc Multiple_PFIs_gtpc;
-
-type record ListOfSetupPFCsValue_gtpc
-{
-  integer                number_of_PFCs (0..11),   // note: 12 .. 255 are reserved!!!
-  Multiple_PFIs_gtpc     pFIs
-} with 
-{   
-  variant (number_of_PFCs) "UNIT(elements),LENGTHTO(pFIs),FIELDLENGTH(8)";
-}
-
-type record ListOfSetupPFCs_gtpc {
- OCT1                        type_gtpc, 
- LIN2_BO_LAST                lengthf,
- ListOfSetupPFCsValue_gtpc   listOfSetupPFCs    
-} with { variant "PRESENCE( type_gtpc = 'B3'O)";
-         variant (lengthf) "LENGTHTO(listOfSetupPFCs)"; };
-
-// PS Handover XID Parameters 7.7.79
-type record of PS_HandoverXIDParameters PS_HandoverXIDParameters_List;
-
-type record PS_HandoverXIDParameters {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT4                      sapi,
- BIT4                      spare,
- LIN1                      xID_ParametersLength,
- XID_Information_GTPC      xID_Parameters optional  
-} with {
-         variant (lengthf) "LENGTHTO(sapi,spare,xID_ParametersLength,xID_Parameters)";
-         variant (xID_ParametersLength) "LENGTHTO(xID_Parameters)";
-         variant "PRESENCE(type_gtpc = 'B4'O)" 
-       };
-
-//The following types are based on types in LLC_Types.ttcn 
-
-type record of XID_GTPC XID_Information_GTPC;
-
-type record XID_GTPC
-{
-  BIT1	             xl,
-  BIT5               typefield,
-  XID_length_GTPC    xID_length,
-  //Header_XID      header_XID,
-  XID_Data_GTPC	     xID_Data      
-} with { 
-  variant (xID_Data) "CROSSTAG( version, 	typefield = '00000'B;
-				     iOV_UI, 	typefield = '00001'B;
-				     iOV_I, 	typefield = '00010'B;
-				     t200, 	typefield = '00011'B;
-				     n200, 	typefield = '00100'B;
-				     n201_U, 	typefield = '00101'B;
-				     n201_I, 	typefield = '00110'B;
-				     mD, 	typefield = '00111'B;
-				     mU, 	typefield = '01000'B;
-				     kD, 	typefield = '01001'B;
-				     kU, 	typefield = '01010'B;
-				     l3param, 	typefield = '01011'B;
-				     reset, 	typefield = '01100'B;
-				     
-					 )";
-  variant  "FIELDORDER(msb)";
-  variant (xID_length) "CROSSTAG( short_len, 	xl = '0'B;
-				                long_len, 	xl = '1'B;)";
-  variant (xID_length) "LENGTHTO (xID_Data)"
-
-  variant (xID_length) "PADDING(yes)" 
-};
-
-type union  XID_length_GTPC
-{
-  integer short_len,
-  integer long_len
-}with {
-  variant (short_len) "FIELDLENGTH(2)";
-  variant (long_len)  "FIELDLENGTH(8)";
-  variant (long_len)  "BYTEORDER(last)";
-  variant (short_len) "FIELDORDER(msb)";
-  variant (long_len)  "FIELDORDER(msb)";
-
-}
-
-type union XID_Data_GTPC
-{
-  Version_GTPC		version,
-  IOV_UI_GTPC		iOV_UI,
-  IOV_I_GTPC		iOV_I,
-  T200_GTPC		t200,
-  N200_GTPC		n200,
-  N201_U_GTPC		n201_U,
-  N201_I_GTPC		n201_I,
-  MD_GTPC		mD,	
-  MU_GTPC		mU,
-  KD_GTPC		kD,
-  KU_GTPC		kU,
-  L3param_GTPC		l3param,
-  Reset_LLC_GTPC	reset    	
-}
-
-type record Version_GTPC
-{
-  integer 	version_value (0..15),
-  BIT4		spare
-
-} with {
-  variant (version_value) "FIELDLENGTH(4)";
-}
-
-type octetstring IOV_UI_GTPC length(4) 
-
-
-type octetstring IOV_I_GTPC length(4)
- 
-
-type record T200_GTPC
-{
-  BIT4		spare,
-  integer 	t200Value
-} with {
-  variant (t200Value) "FIELDLENGTH(12)";
-  variant (t200Value) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-
-type record N200_GTPC
-{
-  integer 	retransmissions (0..15),
-  BIT4		spare
-} with {
-  variant (retransmissions) "FIELDLENGTH(4)";
-}     
-
-
-type record N201_U_GTPC
-{
-  BIT5		spare,
-  integer 	n201UValue
-} with {
-  variant (n201UValue) "FIELDLENGTH(11)";
-  variant (n201UValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-
-type record N201_I_GTPC
-{
-  BIT5		spare,
-  integer 	n201IValue
-}
-with {
-  variant (n201IValue) "FIELDLENGTH(11)";
-  variant (n201IValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-type record MD_GTPC
-{
-  BIT1		spare,
-  integer 	mDValue
-} with {
-  variant (mDValue) "FIELDLENGTH(15)";
-  variant (mDValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-
-type record MU_GTPC
-{
-  BIT1		spare,
-  integer 	mUValue
-} with {
-  variant (mUValue) "FIELDLENGTH(15)";
-  variant (mUValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-type integer KD_GTPC with {variant  "FIELDLENGTH(8)";};	
-
-type integer KU_GTPC with {variant  "FIELDLENGTH(8)";};	
-
-type octetstring L3param_GTPC;
-
-type octetstring Reset_LLC_GTPC length(0);
-// end of types copied from LLC_Types.ttcn
- 
-     
-//  MS Info Change reporting Action 7.7.80
-type record MS_InfoChangeReportingAction {
- OCT1                       type_gtpc, 
- LIN2_BO_LAST               lengthf,
- OCT1                       actionfield      
-} with { variant "PRESENCE( type_gtpc = 'B5'O)";
-         variant (lengthf) "LENGTHTO(actionfield)"; };
-
-// Direct Tunnel Flags - 7.7.81
-type record DirectTunnelFlags {
- OCT1                       type_gtpc, 
- LIN2_BO_LAST               lengthf,
- BIT1                       dTI,
- BIT1                       gCSI,  
- BIT1                       eI,
- BIT5                       spare
-} with { variant "PRESENCE( type_gtpc = 'B6'O)";
-         variant (lengthf) "LENGTHTO(dTI,gCSI,eI,spare)";};
-
-// Correlation ID - 7.7.82
-type record CorrelationID {
- OCT1                       type_gtpc, 
- LIN2_BO_LAST               lengthf,
- OCT1                       correlationIDValue                  
-} with { variant "PRESENCE( type_gtpc = 'B7'O)";
-         variant (lengthf) "LENGTHTO(correlationIDValue)"; };
-
-// BearerControlMode - 7.7.83
-type record BearerControlMode {
- OCT1                       type_gtpc, 
- LIN2_BO_LAST               lengthf,
- OCT1                       bearerControlModeValue
-} with { variant "PRESENCE( type_gtpc = 'B8'O)";
-         variant (lengthf) "LENGTHTO(bearerControlModeValue)"; };
-   
-// MBMS Flow ID - 7.7.84
-type record MBMS_FlowID {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- octetstring               mBMS_FlowIDValue
-} with { variant "PRESENCE( type_gtpc = 'B9'O)";
-         variant (lengthf) "LENGTHTO(mBMS_FlowIDValue)"; };
-
-// MBMS IP Multicast Distribution - 7.7.85
-type record MBMS_IPMulticastDistribution {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- OCT4                      commonTEID, 
- GSNAddress                iPmulticastDistributionAddress,
- GSNAddress                iPmulticastSourceAddress,
- OCT1                      mBMS_HCIndicator
-} with { variant "PRESENCE( type_gtpc = 'BA'O)";
-         variant (lengthf) "LENGTHTO(commonTEID,iPmulticastDistributionAddress,
-                                     iPmulticastSourceAddress,mBMS_HCIndicator)"; };
-
-// GSNAddress
-type record  GSNAddress {
- INT6b                      lengthf,
- BIT2                       address_type,
- iPv4_iPv6_Address          ipv_address
-} with { variant (lengthf) "LENGTHTO(ipv_address)";};
-
-// MBMS Distribution Acknowledgement - 7.7.86
-type record MBMS_DistributionAcknowledgement {
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT2                      distributionIndication,
- BIT6                      spare
-} with { variant "PRESENCE( type_gtpc = 'BB'O)";
-         variant (lengthf) "LENGTHTO(distributionIndication,spare)"; };
-
-// ReliableInterRATHandoverInfo - 7.7.87 - from 48.018 11.3.107
-type record ReliableInterRATHandoverInfo
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT1                      reliableInterRATHandoverInfoIndicator,
- BIT7                      spare           
-} with { variant "PRESENCE( type_gtpc = 'BC'O)";
-         variant (lengthf) "LENGTHTO(reliableInterRATHandoverInfoIndicator,spare)"; };
-
-//7.7.88
-type record RFSP_Index
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- LIN2_BO_LAST              rFSPIndexValue (1..256)
-} with { variant "PRESENCE( type_gtpc = 'BD'O)";
-         variant (lengthf) "LENGTHTO(rFSPIndexValue)"; };
-
-//7.7.90
-type record of FullyQualifiedDomainName FullyQualifiedDomainName_List;
-
-type record FullyQualifiedDomainName
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- octetstring               fQDN_Value
-} with { variant "PRESENCE( type_gtpc = 'BE'O)";
-         variant (lengthf) "LENGTHTO(fQDN_Value)"; };
-
-//7.7.91
-type record EvolvedAllocationRetentionPriorityI
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT1                      pVI,
- BIT1                      spare1,
- integer                   pL,
- BIT1                      pCI,
- BIT1                      spare2
-} with { variant "PRESENCE( type_gtpc = 'BF'O)";
-         variant (lengthf) "LENGTHTO(pVI,spare1,pL,pCI,spare2)"; 
-         variant (pL) "FIELDLENGTH(4)";};
-
-//7.7.92
-type record of EvolvedAllocationRetentionPriorityII EvolvedAllocationRetentionPriorityII_List
-
-type record EvolvedAllocationRetentionPriorityII
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT4                      nsapi,
- BIT4                      unused, 
- BIT1                      pVI, 
- BIT1                      spare1,
- integer                   pL,
- BIT1                      pCI,
- BIT1                      spare2 
-} with { variant "PRESENCE( type_gtpc = 'C0'O)";
-         variant (lengthf) "LENGTHTO(nsapi,unused,pVI,spare1,pL,pCI,spare2)"; 
-         variant (pL) "FIELDLENGTH(4)";};
-
-//7.7.93
-type record ExtendedCommonFlags
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT1                      unauthenticatedIMSI,
- BIT1                      cCRSI, 
- BIT1                      cPSR, 
- BIT1                      retLoc, 
- BIT1                      vB, 
- BIT1                      pCRI, 
- BIT1                      bDWI, 
- BIT1                      uASI 
-} with { variant "PRESENCE(type_gtpc = 'C1'O)";
-         variant (lengthf) "LENGTHTO(unauthenticatedIMSI,cCRSI,cPSR,retLoc,vB,pCRI,bDWI,uASI)";};
-                  
-//7.7.94 
-type record UserCSGInformation
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,  
- HEX1                      mccDigit1,
- HEX1                      mccDigit2,
- HEX1                      mccDigit3,
- HEX1                      mncDigit3,
- HEX1                      mncDigit1,
- HEX1                      mncDigit2, 
- BIT5                      spare1,
- bitstring                 cSG_ID length(27), // "The coding ... is the responsibility of the operator..."   
- BIT1                      cMI,               
- BIT5                      spare2,
- integer                   accessMode (0..3)
-} with { variant "PRESENCE( type_gtpc = 'C2'O)";
-         variant (lengthf) "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3,
-                            mncDigit1,mncDigit2,spare1,cSG_ID,
-                            cMI,spare2,accessMode)";                             
-         variant (spare1,cSG_ID) "FIELDORDER(msb)";                                              
-         variant (cSG_ID) "FIELDLENGTH(27)";
-         variant (accessMode) "FIELDLENGTH(2)";         
-};
-
-//7.7.95 
-type record CSGInfoReportingAction
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,  
- BIT1                      uCCSG,
- BIT1                      uCSHC,
- BIT1                      uCUHC,
- BIT5                      spare
-} with { variant "PRESENCE( type_gtpc = 'C3'O)";
-         variant (lengthf) "LENGTHTO(uCCSG,uCSHC,uCUHC,spare)";         
-};
-
-//7.7.96
-type record CSG_Id
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf, 
- BIT5                      spare,
- bitstring                 cSG_ID length(27) // "The coding ... is the responsibility of the operator..."    
-} with { variant "PRESENCE(type_gtpc = 'C4'O)";
-         variant (lengthf) "LENGTHTO(spare,cSG_ID)";      
-         variant (spare,cSG_ID) "FIELDORDER(msb)";   
-         variant (cSG_ID) "FIELDLENGTH(27)";
-};
-
-//7.7.97
-type record CSG_MembershipIndication
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- BIT1                      cMI_Value,
- BIT7                      spare 
-} with { variant "PRESENCE(type_gtpc = 'C5'O)";
-         variant (lengthf) "LENGTHTO(cMI_Value,spare)";      
-}
-
-//7.7.98
-type record APN_AMBR 
-{
- OCT1                      type_gtpc, 
- LIN2_BO_LAST              lengthf,
- LIN4_BO_LAST              aPN_AMBR_Uplink,
- LIN4_BO_LAST              aPN_AMBR_Downlink
-} with { variant "PRESENCE(type_gtpc = 'C6'O)";
-         variant (lengthf) "LENGTHTO(aPN_AMBR_Uplink,aPN_AMBR_Downlink)";      
-}
-
-//7.7.99
-type record UE_Network_Capability {
-  OCT1               type_gtpc,
-  LIN2_BO_LAST       lengthf,
-  octetstring        ue_network_capability
-} with {
-  variant "PRESENCE(type_gtpc = 'C7'O)";
-  variant (lengthf) "LENGTHTO(ue_network_capability)";
-}
-
-//7.7.100
-type record UE_AMBR {
-  OCT1              type_gtpc,
-  LIN2_BO_LAST      lengthf,
-  LIN4_BO_LAST      subscribed_ue_ambr_uplink,
-  LIN4_BO_LAST      subscribed_ue_ambr_downlink,
-  LIN4_BO_LAST      authorized_ue_ambr_uplink optional,
-  LIN4_BO_LAST      authorized_ue_ambr_downlink optional
-} with {
-  variant "PRESENCE(type_gtpc = 'C8'O)";
-  variant (lengthf) "LENGTHTO(subscribed_ue_ambr_uplink,subscribed_ue_ambr_downlink,authorized_ue_ambr_uplink,authorized_ue_ambr_downlink)";
-}
-
-//7.7.101
-type record APN_AMBR_NSAPI {
-  OCT1              type_gtpc,
-  LIN2_BO_LAST      lengthf (9),
-  HEX1              nsapi,
-  HEX1              spare,
-  LIN4_BO_LAST      authorized_apn_ambr_uplink,
-  LIN4_BO_LAST      authorized_apn_ambr_downlink
-} with {
-   variant "PRESENCE(type_gtpc = 'C9'O)";
-   variant (lengthf) "LENGTHTO(spare, nsapi,authorized_apn_ambr_uplink,authorized_apn_ambr_downlink)";
-}
-
-//7.7.102
-type record GGSN_BackOffTime {
-  OCT1              type_gtpc,
-  LIN2_BO_LAST      lengthf,
-  BIT5              timerValue,
-  BIT3              timerUnit,
-  octetstring       explicitly_specified optional
-} with {
-   variant "PRESENCE(type_gtpc = 'CA'O)";
-   variant (lengthf) "LENGTHTO(timerValue, timerUnit, explicitly_specified)";
-}
-
-//7.7.103
-type record SignallingPriorityIndication {
-  OCT1              type_gtpc,
-  LIN2_BO_LAST      lengthf,
-  BIT1              lapi,
-  BIT7              spare,
-  octetstring       explicitly_specified optional
-} with {
-   variant "PRESENCE(type_gtpc = 'CB'O)";
-   variant (lengthf) "LENGTHTO(lapi, spare, explicitly_specified)";
-}
-
-//7.7.104
-type record SignallingPriorityIndication_NSAPI {
-  OCT1              type_gtpc,
-  LIN2_BO_LAST      lengthf,
-  BIT1              nsapi,
-  BIT7              spare1,
-  BIT1              lapi,
-  BIT7              spare2,
-  octetstring       explicitly_specified optional
-} with {
-   variant "PRESENCE(type_gtpc = 'CC'O)";
-   variant (lengthf) "LENGTHTO(nsapi, spare1, lapi, spare2, explicitly_specified)";
-}
-
-//7.7.105   
-type record Higher_Bitrates_Than_16Mbps_Flag {
-  OCT1              type_gtpc,
-  LIN2_BO_LAST      lengthf (1),
-  LIN1              flag
-} with {
-  variant "PRESENCE(type_gtpc = 'CD'O)";
-  variant (lengthf) "LENGTHTO(flag)";
-}
-
-//7.7.106
-// (void)
-
-//7.7.107
-type record SRVCC_MM_Context {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  LIN1            mobile_station_classmark2_len,
-  octetstring     mobile_station_classmark2,
-  LIN1            mobile_station_classmark3_len,
-  octetstring     mobile_station_classmark3,
-  LIN1            supported_codec_list_len,
-  octetstring     supported_codec_list,
-  octetstring     explicitly_specified optional
-} with {
-  variant "PRESENCE(type_gtpc = 'CF'O)";
-  variant (lengthf) "LENGTHTO(mobile_station_classmark2_len, mobile_station_classmark2,
-                              mobile_station_classmark3_len, mobile_station_classmark3,
-                              supported_codec_list_len, supported_codec_list,
-                              explicitly_specified)";
-  variant (mobile_station_classmark2_len) "LENGTHTO(mobile_station_classmark2)";
-  variant (mobile_station_classmark3_len) "LENGTHTO(mobile_station_classmark3)";
-  variant (supported_codec_list_len) "LENGTHTO(supported_codec_list)";
-}
-
-
-//7.7.108
-type record SRVCC_Flags {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  BIT1            ics,
-  BIT7            spare,
-  octetstring     explicitly_specified optional
-} with {
-  variant "PRESENCE(type_gtpc = 'D0'O)";
-  variant (lengthf) "LENGTHTO(ics, spare, explicitly_specified)";
-}
-
-//7.7.109
-type record STN_SR {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  OCT1            nanpi,
-  Digits          digits
-} with {
-  variant "PRESENCE(type_gtpc = 'D1'O)";
-  variant (lengthf) "LENGTHTO(nanpi, digits)"; 
-}
-
-type record of HEX1 Digits;
-
-//7.7.110
-type record C_MSISDN {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  octetstring     msisdn
-} with {
-  variant "PRESENCE(type_gtpc = 'D2'O)";
-  variant (lengthf) "LENGTHTO(msisdn)";
-}
-
-//7.7.111
-type record Extended_RANAP_Cause {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  integer         extended_ranap_cause (1..512),
-  octetstring     explicitly_specified optional
-} with {
-  variant "PRESENCE(type_gtpc = 'D3'O)";
-  variant (lengthf) "LENGTHTO(extended_ranap_cause, explicitly_specified)";  
-  variant (extended_ranap_cause) "FIELDLENGTH(16), COMP(nosign), BYTEORDER(last)"
-}
-
-//7.7.112
-type record ENodeB_ID {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  OCT1            eNodeB_type,
-  ENodeB_IDs      eNodeB_ID 
-} with {
-  variant "PRESENCE(type_gtpc = 'D4'O)";
-  variant (lengthf) "LENGTHTO(eNodeB_type, eNodeB_ID)";
-  variant "CROSSTAG(macroENodeB_ID, eNodeB_type = '00'O;
-               homeENodeB_ID, eNodeB_type = '01'O;)"
-}
-
-type union ENodeB_IDs
-{
-  HomeENodeB_ID homeENodeB_ID,
-  MacroENodeB_ID macroENodeB_ID
-}
-
-type record MacroENodeB_ID
-{
- HEX1                      mcc1,            
- HEX1                      mcc2,            
- HEX1                      mcc3,            
- HEX1                      mnc3,            
- HEX1                      mnc1,            
- HEX1                      mnc2,
- BIT4                      spare,
- bitstring                 macroENodeB_ID length(20),
- OCT2                      tac
-} with {
-  variant (spare,macroENodeB_ID) "FIELDORDER(msb)";                                              
-  variant (macroENodeB_ID) "FIELDLENGTH(20)";
-}
-
-type record HomeENodeB_ID
-{
- HEX1                      mcc1,            
- HEX1                      mcc2,            
- HEX1                      mcc3,            
- HEX1                      mnc3,            
- HEX1                      mnc1,            
- HEX1                      mnc2,
- BIT4                      spare,
- bitstring                 homeENodeB_ID length(28),
- OCT2                      tac
-} with {
-  variant (spare,homeENodeB_ID) "FIELDORDER(msb)";                                              
-  variant (homeENodeB_ID) "FIELDLENGTH(28)";
-}
-
-//7.7.113
-type record SelectionMode_NSAPI {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  BIT4            nsapi,
-  BIT4            spare1,
-  BIT2            selectionMode,
-  BIT6            spare2
-} with {
-  variant "PRESENCE(type_gtpc = 'D5'O)";
-  variant (lengthf) "LENGTHTO(nsapi, spare1, selectionMode, spare2)";
-}
-
-//7.7.114
-type record ULI_Timestamp {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  OCT4            uliTimestampValue,
-  octetstring     explicitly_specified optional
-} with {
-  variant "PRESENCE(type_gtpc = 'D6'O)";
-  variant (lengthf) "LENGTHTO(uliTimestampValue, explicitly_specified)";
-}
-
-//7.7.115
-type record LHN_ID_NSAPI {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  BIT4            nsapi,
-  BIT4            spare,
-  octetstring     lHN_ID optional
-} with {
-  variant "PRESENCE(type_gtpc = 'D7'O)";
-  variant (lengthf) "LENGTHTO(nsapi, spare, lHN_ID)";
-}
-
-//7.7.116
-type record CN_OperatorSelectionEntity {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  BIT2            selectionEntity,
-  BIT6            spare,
-  octetstring     explicitly_specified optional
-} with {
-  variant "PRESENCE(type_gtpc = 'D8'O)";
-  variant (lengthf) "LENGTHTO(selectionEntity, spare, explicitly_specified)";
-}
-
-//7.7.117
-type record UE_UsageType {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  LIN4_BO_LAST    uE_UsageTypeValue
-  } with {
-  variant "PRESENCE(type_gtpc = 'D9'O)";
-  variant (lengthf) "LENGTHTO(uE_UsageTypeValue)";
-}
-
-//7.7.118
-type record ExtendedCommonFlagsII {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  BIT1            pnsi,
-  BIT1            dtci,
-  BIT6            spare,
-  octetstring     explicitly_specified optional
-  } with {
-  variant "PRESENCE(type_gtpc = 'DA'O)";
-  variant (lengthf) "LENGTHTO(pnsi, dtci, spare, explicitly_specified)";
-}
-
-//7.7.119
-type record NodeIdentifier {
-  OCT1            type_gtpc,
-  LIN2_BO_LAST    lengthf,
-  octetstring     nodeIdentifier
-  } with {
-  variant "PRESENCE(type_gtpc = 'DB'O)";
-  variant (lengthf) "LENGTHTO( nodeIdentifier)";
-}
-
-/////////////////////////////
-// Message Type Values
-// 7.1 Table 1
-/////////////////////////////
-type OCT1 MessageType_gtpc;
-
-// 0 For future use. Shall not be sent. If received, shall be treated as an
-// Unknown message
-
-const MessageType_gtpc echoRequest := '01'O;
-const MessageType_gtpc echoResponse := '02'O;
-const MessageType_gtpc versionNotSupported := '03'O;
-
-// 4 - 7: For GTP'
-
-// 8 - 15 for future use.  Shall not be sent. 
-// If received, shall be treated as an Unknown message
-
-const MessageType_gtpc createPDPContextRequest := '10'O;
-const MessageType_gtpc createPDPContextResponse := '11'O;
-const MessageType_gtpc updatePDPContextRequest := '12'O;
-const MessageType_gtpc updatePDPContextResponse := '13'O;
-const MessageType_gtpc deletePDPContextRequest := '14'O; 
-const MessageType_gtpc deletePDPContextResponse := '15'O;
-const MessageType_gtpc initiatePDPContextActivationRequest := '16'O;
-const MessageType_gtpc initiatePDPContextActivationResponse := '17'O;
-
-// 24 - 25 for future use.
-// Shall not be sent. If received, shall be treated as an Unknown message
-
-// 26      for GTP-U only
-
-const MessageType_gtpc pduNotificationRequest := '1B'O;
-const MessageType_gtpc pduNotificationResponse := '1C'O;
-const MessageType_gtpc pduNotificationRejectRequest := '1D'O;
-const MessageType_gtpc pduNotificationRejectResponse := '1E'O;
-
-const MessageType_gtpc supportedExtHeadersNotification := '1F'O;
-const MessageType_gtpc sendRoutingInfoForGPRSRequest := '20'O; 
-const MessageType_gtpc sendRoutingInfoForGPRSResponse := '21'O;
-const MessageType_gtpc failureReportRequest := '22'O;
-const MessageType_gtpc failureReportResponse := '23'O;
-const MessageType_gtpc noteMS_GPRSPresentRequest := '24'O;
-const MessageType_gtpc noteMS_GPRSPresentResponse := '25'O;
-
-// 38 - 47 for future use.  Shall not be sent. 
-// If received, shall be treated as an Unknown message
-
-const MessageType_gtpc identificationRequest := '30'O;  
-const MessageType_gtpc identificationResponse := '31'O;
-const MessageType_gtpc sgsnContextRequest := '32'O;
-const MessageType_gtpc sgsnContextResponse := '33'O;
-const MessageType_gtpc sgsnContextAcknowledge := '34'O;
-const MessageType_gtpc forwardRelocationRequest := '35'O;
-const MessageType_gtpc forwardRelocationResponse := '36'O;
-const MessageType_gtpc forwardRelocationComplete := '37'O;
-const MessageType_gtpc relocationCancelRequest := '38'O;
-const MessageType_gtpc relocationCancelResponse := '39'O;
-const MessageType_gtpc forwardSRNSContext := '3A'O;
-const MessageType_gtpc forwardRelocationCompleteAcknowledge := '3B'O;
-const MessageType_gtpc forwardSRNSContextAcknowledge := '3C'O; 
-const MessageType_gtpc ueRegistrationQueryRequest := '3D'O;
-const MessageType_gtpc ueRegistrationQueryResponse := '3E'O;
-
-// 63 - 69 for future use.  Shall not be sent. If received, shall be treated as
-// an Unknown message
-
-const MessageType_gtpc        rANInformationRelay :=  '46'O;
-
-// 71 -95 for future use.  Shall not be sent. If received, shall be treated as
-//  an Unknown message
-
-const MessageType_gtpc mBMSNotificationRequest := '60'O;
-const MessageType_gtpc mBMSNotificationResponse := '61'O;
-const MessageType_gtpc mBMSNotificationRejectRequest := '62'O;
-const MessageType_gtpc mBMSNotificationRejectResponse := '63'O;
-const MessageType_gtpc createMBMSContextRequest := '64'O;
-const MessageType_gtpc createMBMSContextResponse := '65'O;
-const MessageType_gtpc updateMBMSContextRequest := '66'O;
-const MessageType_gtpc updateMBMSContextResponse := '67'O;
-const MessageType_gtpc deleteMBMSContextRequest := '68'O;
-const MessageType_gtpc deleteMBMSContextResponse := '69'O;
-
-// 106-111 for future use. Shall not be sent. If received, shall be treated as 
-// an Unknown message
-
-const MessageType_gtpc mBMSRegistrationRequest :=  '70'O;
-const MessageType_gtpc mBMSRegistrationResponse :=  '71'O;
-const MessageType_gtpc mBMSDeRegistrationRequest :=  '72'O;
-const MessageType_gtpc mBMSDeRegistrationResponse :=  '73'O;
-
-const MessageType_gtpc mBMSSessionStartRequest :=  '74'O;
-const MessageType_gtpc mBMSSessionStartResponse := '75'O;
-const MessageType_gtpc mBMSSessionStopRequest :=  '76'O;
-const MessageType_gtpc mBMSSessionStopResponse := '77'O;
-
-const MessageType_gtpc mBMSSessionUpdateRequest := '78'O;           
-const MessageType_gtpc mBMSSessionUpdateResponse := '79'O;
-
-// 122 - 127 for future use. Shall not be sent. 
-// If received, shall be treated as an Unknown message
-
-const MessageType_gtpc mS_InfoChangeNotificationRequest := '80'O;
-const MessageType_gtpc mS_InfoChangeNotificationResponse := '81'O                      
-
-// 130 - 239 for future use. Shall not be sent. 
-// If received, shall be treated as an Unknown message
-
-// 240 - 241 not used in GTP-C
-
-// 242 - 254 for future use. Shall not be sent. 
-// If received, shall be treated as an Unknown message
-
-// 255      not used in GTP-C
-
-const MessageType_gtpc g_PDU := 'FF'O;
-
-
-/////////////////////////////
-// GTP-C messages
-/////////////////////////////
-// Echo Request -  7.2.1
-type record EchoRequest {
-  PrivateExtension_gtpc_List private_extension_gtpc optional
-}
-
-// Echo Response     -  7.2.2
-type record EchoResponse    {
- Recovery_gtpc   recovery,
- PrivateExtension_gtpc_List private_extension_gtpc optional
-}
-
-// Version Not Supported  -  7.2.3
-type record  VersionNotSupported {
-};
-
-// Supported Extension Headers Notification  - 7.2.4
-type record SupportedExtensionHeadersNotification   {
- ExtensionHeaderTypeList_gtpc     extensionHeaderTypeList  
-} with {variant ""};
-
-// Create PDP Context Request - 7.3.1
-type record CreatePDPContextRequest   {
- IMSI_gtpc                       imsi optional,        
- RoutingAreaIdentity             rai optional,        
- Recovery_gtpc                   recovery optional,
- SelectionMode                   selectionMode optional,     
- TeidDataI                       teidDataI,      
- TeidControlPlane                teidControlPlane optional,    
- NSAPI_GTPC                      nsapi,       
- NSAPI_GTPC                      linked_nsapi optional,      
- ChargingCharacteristics_GTPC    charging_char optional,       
- TraceRef                        trace_ref optional,
- GTP_TraceType                   trace_type optional,
- EndUserAddress                  endUserAddress optional,    
- AccessPointName                 accessPointName optional,    
- ProtConfigOptions               protConfigOptions optional,    
- GSN_Address_GTPC                sgsn_addr_signalling,     
- GSN_Address_GTPC                sgsn_addr_traffic,     
- MSISDN                          msisdn optional,     
- QualityOfServiceProfile         qualityOfServiceProfile,    
- TrafficFlowTemplate             tft optional,             
- GTP_TriggerID                   triggerId optional,
- OMCIdentity                     omcId optional,
- CommonFlags                     commonFlags  optional,   
- APN_Restriction                 aPN_Restriction optional,
- RATType                         ratType optional, 
- UserLocationInformation         userLocationInformation optional,
- MS_TimeZone                     mS_TimeZone optional,
- IMEISV_gtpc                     imeisv optional,            
- CamelChargingInformationContainer camelChargingInformationContainer optional,
- AdditionalTraceInfo             additionalTraceInfo optional,
- CorrelationID                   correlationID optional,
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional,
- ExtendedCommonFlags                    extendedCommonFlags optional,
- UserCSGInformation                     userCSGInformation optional, 
- APN_AMBR                        aPN_AMBR optional,
- SignallingPriorityIndication    signallingPriorityIndication optional,
- CN_OperatorSelectionEntity      cN_OperatorSelectionEntity optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Create PDP Context Response    -  7.3.2
-type record CreatePDPContextResponse {
- Cause_gtpc                      cause,
- ReorderingRequired              reorderingRequired optional,
- Recovery_gtpc                   recovery optional,
- TeidDataI                       teidDataI optional,   
- TeidControlPlane                teidControlPlane optional, 
- NSAPI_GTPC                      nsapi optional,    
- ChargingID                      chargingID optional,   
- EndUserAddress                  endUserAddress optional,  
- ProtConfigOptions               protConfigOptions optional,  
- GSN_Address_GTPC                ggsn_addr_controlPlane optional, 
- GSN_Address_GTPC                ggsn_addr_traffic optional,  
- GSN_Address_GTPC                alt_ggsn_addr_controlPane optional,
- GSN_Address_GTPC                alt_ggsn_addr_traffic optional,
- QualityOfServiceProfile         qualityOfServiceProfile optional,   
- CommonFlags                     commonFlags  optional,  
- APN_Restriction                 aPN_Restriction optional,
- MS_InfoChangeReportingAction    mS_InfoChangeReportingAction optional, 
- BearerControlMode               bearerControlMode optional, 
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional,
- ExtendedCommonFlags             extendedCommonFlag optional,
- CSGInfoReportingAction          csg_information_reporting_action optional,
- APN_AMBR                        aPN_AMBR optional,
- GGSN_BackOffTime                gGSN_BackOffTime optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional 
-};
-  
-
-// Update PDP Context Request -   7.3.3
-type union UpdatePDPContextRequest {
- UpdatePDPContextRequestSGSN    updatePDPContextRequestSGSN,
- UpdatePDPContextRequestGGSN    updatePDPContextRequestGGSN,
- UpdatePDPContextRequestCGW     updatePDPContextRequestCGW
-};
-
-//from SGSN
-type record UpdatePDPContextRequestSGSN   {
- IMSI_gtpc                       imsi optional,          
- RoutingAreaIdentity             rai optional,
- Recovery_gtpc                   recovery optional,
- TeidDataI                       teidDataI,     
- TeidControlPlane                teidControlPlane optional,
- NSAPI_GTPC                      nsapi, 
- TraceRef                        trace_ref optional,
- GTP_TraceType                   trace_type optional,
- ProtConfigOptions               protConfigOptions optional, 
- GSN_Address_GTPC                sgsn_addr_controlPlane, 
- GSN_Address_GTPC                sgsn_addr_traffic,
- GSN_Address_GTPC                alt_ggsn_addr_controlPane optional,
- GSN_Address_GTPC                alt_ggsn_addr_traffic optional,
- QualityOfServiceProfile         qualityOfServiceProfile,
- TrafficFlowTemplate             tft optional, 
- GTP_TriggerID                   triggerId optional,
- OMCIdentity                     omcId optional,
- CommonFlags                     commonFlags  optional,
- RATType                         ratType optional,
- UserLocationInformation         userLocationInformation optional,
- MS_TimeZone                     mS_TimeZone optional,
- AdditionalTraceInfo             additionalTraceInfo optional,
- DirectTunnelFlags               directTunnelFlags optional, 
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional, 
- ExtendedCommonFlags             extendedCommonFlags optional, 
- UserCSGInformation              userCSGInformation optional, 
- APN_AMBR                        aPN_AMBR optional,
- SignallingPriorityIndication    signallingPriorityIndication optional,
- CN_OperatorSelectionEntity      cN_OperatorSelectionEntity optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}; 
-
-//from GGSN
-type record UpdatePDPContextRequestGGSN   {
- IMSI_gtpc                       imsi optional,      
- Recovery_gtpc                   recovery optional,
- NSAPI_GTPC                      nsapi,
- EndUserAddress                  endUserAddress optional, 
- ProtConfigOptions               protConfigOptions optional,
- QualityOfServiceProfile         qualityOfServiceProfile optional,
- TrafficFlowTemplate             tft optional,  
- CommonFlags                     commonFlags optional,
- APN_Restriction                 aPN_Restriction optional,
- MS_InfoChangeReportingAction    mS_InfoChangeReportingAction optional,   
- DirectTunnelFlags               directTunnelFlags optional,
- BearerControlMode               bearerControlMode optional, 
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional, 
- ExtendedCommonFlags             extendedCommonFlags optional, 
- CSGInfoReportingAction                 cSGInfoReportingAction optional, 
- APN_AMBR                        aPN_AMBR optional, 
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-//from CGW
-type record UpdatePDPContextRequestCGW   {
- IMSI_gtpc                       imsi optional,      
- Recovery_gtpc                   recovery optional,
- NSAPI_GTPC                      nsapi,
- EndUserAddress                  endUserAddress optional, 
- ProtConfigOptions               protConfigOptions optional,
- QualityOfServiceProfile         qualityOfServiceProfile optional,
- TrafficFlowTemplate             tft optional,  
- CommonFlags                     commonFlags optional,
- APN_Restriction                 aPN_Restriction optional,
- MS_InfoChangeReportingAction    mS_InfoChangeReportingAction optional,  
- DirectTunnelFlags               directTunnelFlags optional,
- BearerControlMode               bearerControlMode optional,
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional,
- CSGInfoReportingAction                 cSGInfoReportingAction optional, 
- APN_AMBR                        aPN_AMBR optional,  
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Update PDP Context Response  -   7.3.4
-type union UpdatePDPContextResponse {
- UpdatePDPContextResponseSGSN updatePDPContextResponseSGSN,
- UpdatePDPContextResponseGGSN updatePDPContextResponseGGSN,
- UpdatePDPContextResponseCGW  updatePDPContextResponseCGW 
-};
-
-//from GGSN
-type record  UpdatePDPContextResponseGGSN    {
- Cause_gtpc                      cause,
- Recovery_gtpc                   recovery optional,
- TeidDataI                       teidDataI optional, 
- TeidControlPlane                teidControlPlane optional,
- ChargingID                      chargingID optional,
- ProtConfigOptions               protConfigOptions optional,
- GSN_Address_GTPC                ggsn_addr_controlPlane optional,
- GSN_Address_GTPC                ggsn_addr_traffic optional,
- GSN_Address_GTPC                alt_ggsn_addr_controlPane optional,
- GSN_Address_GTPC                alt_ggsn_addr_traffic optional,
- QualityOfServiceProfile         qualityOfServiceProfile optional,  
- CommonFlags                     commonFlags optional,
- APN_Restriction                 aPN_Restriction optional, 
- MS_InfoChangeReportingAction    mS_InfoChangeReportingAction optional, 
- BearerControlMode               bearerControlMode optional, 
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional,
- CSGInfoReportingAction          csg_information_reporting_action optional, 
- APN_AMBR                        aPN_AMBR optional,   
- PrivateExtension_gtpc_List      private_extension_gtpc optional 
-};
-
-//from CGW
-type record  UpdatePDPContextResponseCGW    {
- Cause_gtpc                      cause,
- Recovery_gtpc                   recovery optional,
- TeidDataI                       teidDataI optional, 
- TeidControlPlane                teidControlPlane optional,
- ChargingID                      chargingID optional,
- ProtConfigOptions               protConfigOptions optional,
- GSN_Address_GTPC                ggsn_addr_controlPlane optional,
- GSN_Address_GTPC                ggsn_addr_traffic optional,
- GSN_Address_GTPC                alt_ggsn_addr_controlPane optional,
- GSN_Address_GTPC                alt_ggsn_addr_traffic optional,
- QualityOfServiceProfile         qualityOfServiceProfile optional,
- CommonFlags                     commonFlags optional,
- APN_Restriction                 aPN_Restriction optional, 
- MS_InfoChangeReportingAction    mS_InfoChangeReportingAction optional,
- BearerControlMode               bearerControlMode optional, 
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional,  
- APN_AMBR                        aPN_AMBR optional,  
- ChargingGatewayAddress          chargingGatewayAddress optional,
- ChargingGatewayAddress          alt_chargingGatewayAddress optional,  
- PrivateExtension_gtpc_List      private_extension_gtpc optional 
-};
-
-//from SGSN
-type record UpdatePDPContextResponseSGSN    {
- Cause_gtpc                      cause,
- Recovery_gtpc                   recovery optional,
- TeidDataI                       teidDataI optional,
- ProtConfigOptions               protConfigOptions optional,
- GSN_Address_GTPC                sgsn_addr_traffic optional,
- QualityOfServiceProfile         qualityOfServiceProfile optional, 
- UserLocationInformation         userLocationInformation optional,  
- MS_TimeZone                     mS_TimeZone optional, 
- DirectTunnelFlags               directTunnelFlags optional, 
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional, 
- APN_AMBR                        aPN_AMBR optional,   
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-
-// Delete PDP Context Request   -   7.3.5 
-type record DeletePDPContextRequest   {
- Cause_gtpc                      cause optional,
- TearDownInd                     tearDownIndicator optional,
- NSAPI_GTPC                      nsapi,          
- ProtConfigOptions               protConfigOptions optional,     
- UserLocationInformation         userLocationInformation optional,  
- MS_TimeZone                     mS_TimeZone optional, 
- ExtendedCommonFlags             extendedCommonFlags optional,
- ULI_Timestamp                   uLI_Timestamp optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Delete PDP Context Response  - 7.3.6
-type record DeletePDPContextResponse    {
- Cause_gtpc                      cause,
- ProtConfigOptions               protConfigOptions optional,
- UserLocationInformation         userLocationInformation optional,
- MS_TimeZone                     mS_TimeZone optional,
- ULI_Timestamp                   uLI_Timestamp optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
- 
-// PDU Notification Request  -   7.3.8 
-type record PDU_NotificationRequest     {
- IMSI_gtpc                       imsi,
- TeidControlPlane                teidControlPlane,
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName,
- ProtConfigOptions               protConfigOptions optional,
- GSN_Address_GTPC                ggsn_addr_controlPlane,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// PDU Notification Response   -    7.3.9
-type record PDU_NotificationResponse   {
- Cause_gtpc                      cause,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-} 
-
-// PDU  Notification Reject Request  -   7.3.10
-type record PDU_NotificationRejectRequest    {
- Cause_gtpc                      cause,
- TeidControlPlane                teidControlPlane,
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName,
- ProtConfigOptions               protConfigOptions optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// PDU Notification Reject Response  -    7.3.11
-type record PDU_NotificationRejectResponse   {
- Cause_gtpc                      cause,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Initiate PDP Context Activation Request 7.3.12
-type record InitiatePDPContextActivationRequest
-{
- NSAPI_GTPC                      linkedNSAPI,
- ProtConfigOptions               protConfigOptions optional,
- QualityOfServiceProfile         qualityOfServiceProfile, 
- TrafficFlowTemplate             tft optional,
- CorrelationID                   correlationID,  
- EvolvedAllocationRetentionPriorityI    evolvedAllocationRetentionPriorityI optional,  
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Initiate PDP Context Activation Response 7.3.13
-type record InitiatePDPContextActivationResponse
-{
- Cause_gtpc                      cause,
- ProtConfigOptions               protConfigOptions optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Send Routeing Information for GPRS Request  -  7.4.1
-type record SendRouteingInformationForGPRSRequest    {
- IMSI_gtpc                       imsi,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Send Routeing Information for GPRS Response - 7.4.2
-type record SendRouteingInformationForGPRSResponse     {
- Cause_gtpc                      cause,
- IMSI_gtpc                       imsi,
- MAP_Cause                       map_Cause optional,
- MSNotReachableReason            mS_not_ReachableReason optional,
- GSN_Address_GTPC                gsn_Address optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Failure Report Request - 7.4.3
-type record FailureReportRequest     {
- IMSI_gtpc                       imsi,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Failure Report Response - 7.4.4
-type record FailureReportResponse    {
- Cause_gtpc                      cause,
- MAP_Cause                       map_Cause optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Note MS GPRS Present Request - 7.4.5 
-type record NoteMS_GPRSPresentRequest    {
- IMSI_gtpc                       imsi,
- GSN_Address_GTPC                gsn_Address,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Note MS GPRS Present Response - 7.4.6 
-type record NoteMS_GPRSPresentResponse    {
-  Cause_gtpc                     cause,
-  PrivateExtension_gtpc_List     private_extension_gtpc optional
-}
-
-// Identification Request - 7.5.1
-type record IdentificationRequest   {
- RoutingAreaIdentity             routingAreaIdentity,
- PacketTMSI                      packetTMSI,
- PTMSI_Signature                 ptmsi_Signature optional,
- GSN_Address_GTPC                sgsn_addr_controlPlane optional,
- HopCounter_gtpc                 hopCounter optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Identification Response - 7.5.2
-type record IdentificationResponse    {
- Cause_gtpc                      cause,
- IMSI_gtpc                       imsi optional,
- AuthenticationTriplet_GTPC_SetOf authenticationTriplet optional,
- AuthenticationQuintuplet_GTPC   authenticationQuintuplet optional,
- AuthenticationQuintuplet_GTPC   authenticationQuintuplet2 optional,
- AuthenticationQuintuplet_GTPC   authenticationQuintuplet3 optional,
- AuthenticationQuintuplet_GTPC   authenticationQuintuplet4 optional,
- AuthenticationQuintuplet_GTPC   authenticationQuintuplet5 optional,
- UE_UsageType                    uE_UsageType optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// SGSN Context Request - 7.5.3
-type record SGSN_ContextRequest   {
- IMSI_gtpc                       imsi optional,
- RoutingAreaIdentity             routingAreaIdentity ,
- TLLI                            tlli optional,
- PacketTMSI                      packetTMSI optional,
- PTMSI_Signature                 ptmsi_Signature optional,
- MS_Validated                    ms_Validated optional,
- TeidControlPlane                teidControlPlane,
- GSN_Address_GTPC                sgsn_addr_controlPlane,
- GSN_Address_GTPC                alternative_sgsn_addr_controlPlane optional,
- SGSN_Number                     sGSN_Number optional,
- RATType                         ratType optional,  
- HopCounter_gtpc                 hopCounter optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// SGSN Context Response - 7.5.4
- type record SGSN_ContextResponse
-{
- Cause_gtpc                      cause,
- IMSI_gtpc                       imsi optional,
- TeidControlPlane                teidControlPlane optional,
- RABContext_List                 rabContext optional,
- RadioPrioritySMS                radioPrioritySMS optional,
- RadioPriority_List              radioPriority optional,
- PacketFlowID_List               packetFlowID optional,
- ChargingCharacteristics_List_GTPC charging_char optional,
- MM_Context                      mm_Context optional,
- PDP_Context_GTPC_List           pdp_Context optional,
- GSN_Address_GTPC                sgsn_addr_controlPlane optional,
- PDPContextPriorization          pdpContextPriorization optional, 
- RadioPriorityLCS                radioPriority_LCS optional, 
- MBMS_UE_Context_List            mBMS_UE_Context optional,   
- RFSP_Index                      subscribedRFSP_Index optional,
- RFSP_Index                      rFSP_IndexInUse optional, 
- FullyQualifiedDomainName_List   colocatedGGSN_PGW_FQDN optional,  
- EvolvedAllocationRetentionPriorityII_List   evolvedAllocationRetentionPriorityII optional, 
- ExtendedCommonFlags             extendedCommonFlags optional,
- UE_Network_Capability           ue_network_capability optional,
- UE_AMBR                         ue_ambr optional,
- APN_AMBR_NSAPI                  apn_ambr_nsapi optional,
- SignallingPriorityIndication_NSAPI signallingPriorityIndication_nsapi optional,
- Higher_Bitrates_Than_16Mbps_Flag    higher_bitrates_than_16mbps_flag optional,
- SelectionMode_NSAPI             selectionMode_nsapi optional,
- LHN_ID_NSAPI                    localHomeNetworkID_nsapi optional,
- UE_UsageType                    uE_UsageType optional,
- ExtendedCommonFlagsII           extendedCommonFlagsII optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}; 
-
-
-// SGSN Context Acknowledge - 7.5.5
-type record SGSN_ContextAcknowledge {
- Cause_gtpc                      cause,
- TeidDataII_List                 teidDataII optional,
- GSN_Address_GTPC                sgsn_AddressForUserTraffic optional,
- SGSN_Number                     sgsn_Number optional,
- NodeIdentifier                  nodeIdentifier  optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Forward Relocation Request - 7.5.6
-type record ForwardRelocationRequest {
- IMSI_gtpc                       imsi optional,
- TeidControlPlane                teidControlPlane,
- RANAPCause                      ranapCause,
- PacketFlowID_List               packetFlowID optional,  
- ChargingCharacteristics_List_GTPC charging_char optional,
- MM_Context                      mmContext,
- PDP_Context_GTPC_List           pdpContext optional,
- GSN_Address_GTPC                sgsn_addr_controlPlane,
- TargetIdentification            targetId,
- UTRANTransparentContainer       transpContainer,
- PDPContextPriorization          pdpContextPriorization optional,
- MBMS_UE_Context_List            mBMS_UE_Context optional,
- Selected_PLMN_ID                selected_PLMN_ID optional,
- BSS_Container                   bSS_Container optional,
- Cell_Identification_gtpc        cell_Identification optional,
- BSSGP_Cause_gtpc                bSSGP_Cause_gtpc optional,
- PS_HandoverXIDParameters_List   pS_HandoverXIDParameters optional,
- DirectTunnelFlags               directTunnelFlags optional, 
- ReliableInterRATHandoverInfo    reliableInterRATHandoverInfo optional,
- RFSP_Index                      subscribedRFSP_Index optional,
- RFSP_Index                      rFSP_IndexInUse optional,
- FullyQualifiedDomainName_List   colocatedGGSN_PGW_FQDN optional,
- EvolvedAllocationRetentionPriorityII_List    evolvedAllocationRetentionPriorityII optional,
- ExtendedCommonFlags             extendedCommonFlags optional,
- CSG_Id                          cSG_Id optional, 
- CSG_MembershipIndication        cSG_MembershipIndication optional,
- UE_Network_Capability           ue_network_capability optional,
- UE_AMBR                         ue_ambr optional,
- APN_AMBR_NSAPI                  apn_ambr_nsapi optional,              
- SignallingPriorityIndication_NSAPI signallingPriorityIndication_nsapi optional,
- Higher_Bitrates_Than_16Mbps_Flag   higher_bitrates_than_16mbps_flag optional,
- SRVCC_MM_Context                srvcc_mm_context optional,
- SRVCC_Flags                     srvcc_flags optional,
- STN_SR                          stn_sr optional,
- C_MSISDN                        c_msisdn optional,
- Extended_RANAP_Cause            extended_ranap_cause optional,
- ENodeB_ID                       eNodeB_ID optional,
- SelectionMode_NSAPI             selectionMode_nsapi optional,
- UE_UsageType                    uE_UsageType optional,
- ExtendedCommonFlagsII           extendedCommonFlagsII optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional //to be compatible with GTP 9.11.0
-};
-
-
-
-
-// Forward Relocation Response - 7.5.7
-type record ForwardRelocationResponse {
- Cause_gtpc                      cause,
- TeidControlPlane                teidControlPlane optional,
- TeidDataII_List                 teidDataII optional,
- RANAPCause                      ranapCause optional,
- GSN_Address_GTPC                sgsn_addr_controlPlane optional,
- GSN_Address_GTPC                sgsn_addr_traffic optional,  
- UTRANTransparentContainer       transpContainer optional,
- RABSetupInformation_List        rabSetupInfo optional,
- AdditionalRABSetupInformation_List additionalRABSetupInfo optional,
- SGSN_Number                     sGSN_Number optional,
- BSS_Container                   bSS_Container optional,
- BSSGP_Cause_gtpc                bSSGP_Cause_gtpc optional,
- ListOfSetupPFCs_gtpc            listOfSetupPFCs_gtpc optional,
- Extended_RANAP_Cause            extended_ranap_cause optional,   
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Forward Relocation Complete - 7.5.8
-type record ForwardRelocationComplete {
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Relocation Cancel Request - 7.5.9
-type record RelocationCancelRequest {
- IMSI_gtpc                       imsi optional,
- IMEISV_gtpc                     imeisv_gtpc optional,
- ExtendedCommonFlags             extended_common_flags optional,
- Extended_RANAP_Cause            extended_ranap_cause optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Relocation Cancel Response - 7.5.10
-type record RelocationCancelResponse {
- Cause_gtpc                      cause,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Forward Relocation Complete Acknowledge - 7.5.11
-type record ForwardRelocationCompleteAcknowledge {
- Cause_gtpc                      cause,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// 60 Forward SRNS Context Acknowledge - 7.5.12
-type record ForwardSRNSContextAcknowledge {
- Cause_gtpc                      cause,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// Forward SRNS Context - 7.5.13
-type record ForwardSRNSContext {
- RABContext_List                 rabContext,
- SourceRNC_PDCP_ContextInfo      sourceRNC_PDCP_ContextInfo optional,
- PDU_Numbers_List                pDU_Numbers optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// RAN InformationRelay - 7.5.14.1
-type record RANInformationRelay{
- RANTransparentContainer         transparentContainer,
- RIM_RoutingAddress              rIM_RoutingAddress optional,
- RIM_RoutingAddress_Discriminator rIM_RoutingAddress_Discriminator optional,
- PrivateExtension_gtpc_List       private_extension_gtpc optional
-};
-
-// UE Registration Query Request - 7.5.15
-type record UERegistrationQueryRequest {
- IMSI_gtpc                       imsi,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// UE Registration Query Response - 7.5.16
-type record UERegistrationQueryResponse {
- Cause_gtpc                      cause,
- IMSI_gtpc                       imsi,
- Selected_PLMN_ID                selected_PLMN_ID optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// MBMS Notification Request - 7.5A.1.1
-type record MBMSNotificationRequest
-{
- IMSI_gtpc                          imsi,
- TeidControlPlane                   teidControlPlane,
- NSAPI_GTPC                         nsapi,          
- EndUserAddress                     endUserAddress,
- AccessPointName                    accessPointName,
- GSN_Address_GTPC                   ggsn_addr_controlPlane,
- MBMS_ProtocolConfigurationOptions  mBMS_ProtocolConfigurationOptions optional,
- PrivateExtension_gtpc_List         private_extension_gtpc optional
-};
-
-// MBMS Notification Response - 7.5A.1.2
-type record MBMSNotificationResponse
-{
- Cause_gtpc                         cause,
- PrivateExtension_gtpc_List         private_extension_gtpc optional
-}
-
-// MBMS Notification Reject Request - 7.5A.1.3
-type record MBMSNotificationRejectRequest
-{
- Cause_gtpc                         cause,
- TeidControlPlane                   teidControlPlane,
- NSAPI_GTPC                         nsapi,          
- EndUserAddress                     endUserAddress,
- AccessPointName                    accessPointName,
- GSN_Address_GTPC                   sgsn_addr_controlPlane optional, 
- PrivateExtension_gtpc_List         private_extension_gtpc optional
-};
-
-// MBMS Notification Reject Response - 7.5A.1.4
-type record MBMSNotificationRejectResponse
-{
- Cause_gtpc                         cause,
- PrivateExtension_gtpc_List         private_extension_gtpc optional
-}
-
-// Create MBMS Context Request - 7.5A.1.5
-type record CreateMBMSContextRequest
-{
- IMSI_gtpc                       imsi optional,
- RoutingAreaIdentity             rai,
- Recovery_gtpc                   recovery optional,
- SelectionMode                   selectionMode optional,     
- TeidControlPlane                teidControlPlane optional,
- TraceRef                        trace_ref optional,
- GTP_TraceType                   trace_type optional,
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName,
- GSN_Address_GTPC                sGSNAddressForSignalling,
- MSISDN                          msisdn optional,     
- GTP_TriggerID                   triggerId optional,
- OMCIdentity                     omcId optional,
- RATType                         ratType optional,
- UserLocationInformation         userLocationInformation optional,
- MS_TimeZone                     mS_TimeZone optional,
- IMEISV_gtpc                     imeisv optional,            
- MBMS_ProtocolConfigurationOptions  mBMS_ProtocolConfigurationOptions optional,
- AdditionalTraceInfo             additionalTraceInfo optional,
- Enhanced_NSAPI                  enhanced_NSAPI,
- AdditionalMBMSTraceInfo         additionalMBMSTraceInfo optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Create MBMS Context Response - 7.5A.1.6
-type record CreateMBMSContextResponse
-{
- Cause_gtpc                      cause,
- Recovery_gtpc                   recovery optional,
- TeidControlPlane                teidControlPlane optional,
- ChargingID                      chargingID optional,
- GSN_Address_GTPC                ggsn_addr_controlPlane optional,
- GSN_Address_GTPC                alternative_ggsn_addr_controlPlane optional, 
- MBMS_ProtocolConfigurationOptions  mBMS_ProtocolConfigurationOptions optional,
- ChargingGatewayAddress          chargingGatewayAddress optional,  
- ChargingGatewayAddress          alt_chargingGatewayAddress optional,  
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Update MBMS Context Request - 7.5A.1.7
-type record UpdateMBMSContextRequest
-{
- RoutingAreaIdentity             rai,
- Recovery_gtpc                   recovery optional,
- TeidControlPlane                teidControlPlane optional,
- TraceRef                        trace_ref optional,
- GTP_TraceType                   trace_type optional,
- GSN_Address_GTPC                sgsn_addr_controlPlane,
- GSN_Address_GTPC                alternative_sgsn_addr_controlPlane optional,
- GTP_TriggerID                   triggerId optional,
- OMCIdentity                     omcId optional,
- RATType                         ratType optional,
- UserLocationInformation         userLocationInformation optional,
- MS_TimeZone                     mS_TimeZone optional,
- AdditionalTraceInfo             additionalTraceInfo optional,
- Enhanced_NSAPI                  enhanced_NSAPI,
- AdditionalMBMSTraceInfo         additionalMBMSTraceInfo optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Update MBMS Context Response - 7.5A.1.8
-type record UpdateMBMSContextResponse
-{
- Cause_gtpc                      cause,
- Recovery_gtpc                   recovery optional,
- TeidControlPlane                teidControlPlane optional,
- ChargingID                      chargingID optional,
- GSN_Address_GTPC                ggsn_addr_controlPlane optional,
- GSN_Address_GTPC                alternative_ggsn_addr_controlPlane optional,
- ChargingGatewayAddress          chargingGatewayAddress optional,
- ChargingGatewayAddress          alt_chargingGatewayAddress optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Delete MBMS Context Request - 7.5A.1.9
-type record DeleteMBMSContextRequest
-{
- IMSI_gtpc                       imsi optional,
- TeidControlPlane                teidControlPlane optional,
- EndUserAddress                  endUserAddress optional,
- AccessPointName                 accessPointName optional,
- MBMS_ProtocolConfigurationOptions  mBMS_ProtocolConfigurationOptions optional,
- Enhanced_NSAPI                  enhanced_NSAPI optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// Delete MBMS Context Response - 7.5A.1.10
-type record DeleteMBMSContextResponse
-{
- Cause_gtpc                         cause,
- MBMS_ProtocolConfigurationOptions  mBMS_ProtocolConfigurationOptions optional,
- PrivateExtension_gtpc_List         private_extension_gtpc optional
-};
-
-// MBMS Registration Request - 7.5A.2.1
-type record MBMSRegistrationRequest_gtpc
-{
- TeidControlPlane                teidControlPlane optional,
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName,
- GSN_Address_GTPC                sgsn_addr_controlPlane optional,
- GSN_Address_GTPC                alternative_sgsn_addr_controlPlane optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// MBMS Registration Response - 7.5A.2.2
-type record MBMSRegistrationResponse_gtpc
-{
- Cause_gtpc                      cause,
- TeidControlPlane                teidControlPlane optional, 
- GSN_Address_GTPC                ggsn_addr_controlPlane optional, 
- TMGI_gtpc                       tMGI optional,
- RequiredMBMS_BearerCapabilities reqMBMS_BearerCapabilities optional, 
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// MBMS De-registration Request - 7.5A.2.3
-type record MBMSDeRegistrationRequest
-{
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-} 
-
-// MBMS De-Registration Response - 7.5A.2.4
-type record MBMSDeRegistrationResponse
-{
- Cause_gtpc                      cause,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-
-// MBMS Session Start Request 7.5A.2.5
-type record MBMSSessionStartRequest
-{
- Recovery_gtpc                   recovery optional,
- TeidControlPlane                teidControlPlane optional,
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName,
- GSN_Address_GTPC                ggsn_addr_controlPlane optional,
- GSN_Address_GTPC                alternative_ggsn_addr_controlPlane optional, 
- QualityOfServiceProfile         qualityOfServiceProfile,
- CommonFlags                     commonFlags,
- TMGI_gtpc                       tMGI,
- MBMS_ServiceArea                mBMS_ServiceArea,
- MBMS_SessionIdentifier          mBMS_SessionIdentifier optional,
- MBMS_2G_3G_Indicator            mBMS_2G_3G_Indicator,
- MBMS_SessionDuration            mBMS_SessionDuration,
- MBMS_SessionRepetitionNumber    mBMS_SessionRepetitionNumber optional,
- MBMS_TimeToDataTransfer         mBMS_TimeToDataTransfer,
- MBMS_FlowID                     mBMS_FlowID optional,
- MBMS_IPMulticastDistribution    mBMS_IPMulticastDistribution optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// 117 MBMS Session Start Response 7.5A.2.6
-type record MBMSSessionStartResponse_gtpc
-{
- Cause_gtpc                      cause,
- Recovery_gtpc                   recovery optional,
- TeidDataI                       teidDataI optional,
- TeidControlPlane                teidControlPlane optional,
- GSN_Address_GTPC                sgsn_addr_controlPlane optional,
- GSN_Address_GTPC                sgsn_addr_traffic optional,
- GSN_Address_GTPC                alt_sgsn_addr_traffic optional,
- MBMS_DistributionAcknowledgement mBMS_DistributionAcknowledgement optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// MBMS Session Stop Request - 7.5A.2.7
-type record MBMSSessionStopRequest
-{
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName,
- MBMS_FlowID                     mBMS_FlowID optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};
-
-// MBMS Session Stop Response - 7.5A.2.8
-type record MBMSSessionStopResponse_gtpc 
-{
- Cause_gtpc                      cause,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-}
-
-// MBMS Session Update Request - 7.5A.2.9
-type record MBMSSessionUpdateRequest
-{
- TeidControlPlane                teidControlPlane optional,
- EndUserAddress                  endUserAddress,
- AccessPointName                 accessPointName, 
- GSN_Address_GTPC                ggsn_addr_controlPlane optional,  
- TMGI_gtpc                       tMGI, 
- MBMS_ServiceArea                mBMS_ServiceArea, 
- MBMS_SessionIdentifier          mBMS_SessionIdentifier optional,
- MBMS_SessionDuration            mBMS_SessionDuration, 
- MBMS_SessionRepetitionNumber    mBMS_SessionRepetitionNumber optional,
- MBMS_FlowID                     mBMS_FlowID optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional  
-};                     
-
-// MBMS Session Update Response - 7.5A.2.10
-type record MBMSSessionUpdateResponse
-{
- Cause_gtpc                      cause,
- TeidDataI                       teidDataI optional,
- TeidControlPlane                teidControlPlane optional,
- GSN_Address_GTPC                sgsn_addr_DataI  optional,
- GSN_Address_GTPC                sgsn_addr_controlPlane optional,
- PrivateExtension_gtpc_List      private_extension_gtpc optional
-};                     
-
-// MS Info Change Notification Request 7.5B.1.1
-type record MS_InfoChangeNotificationRequest
-{
- IMSI_gtpc                       imsi optional,
- NSAPI_GTPC                      linkedNSAPI optional,
- RATType                         ratType,
- UserLocationInformation         userLocationInformation optional,
- IMEISV_gtpc                     imeisv_gtpc optional,
- ExtendedCommonFlags             extended_common_flags optional,  
- UserCSGInformation              userCSGInformation optional,   
- PrivateExtension_gtpc_List      private_extension_gtpc optional   
-};
-  
-// MS Info Change Notification Response 7.5B.1.2
-type record MS_InfoChangeNotificationResponse
-{
- Cause_gtpc                      cause,
- IMSI_gtpc                       imsi optional,
- NSAPI_GTPC                      linkedNSAPI optional,
- IMEISV_gtpc                     imeisv_gtpc optional, 
- MS_InfoChangeReportingAction    mS_InfoChangeReportingAction optional, 
- CSGInfoReportingAction          cSGInfoReportingAction optional,  
- PrivateExtension_gtpc_List      private_extension_gtpc optional     
-};
-
-type union GTPC_PDUs {
- EchoRequest                             echoRequest,
- EchoResponse                            echoResponse,
- VersionNotSupported                     versionNotSupported,
- CreatePDPContextRequest                 createPDPContextRequest,
- CreatePDPContextResponse                createPDPContextResponse,
- UpdatePDPContextRequest                 updatePDPContextRequest,
- UpdatePDPContextResponse                updatePDPContextResponse,
- DeletePDPContextRequest                 deletePDPContextRequest,
- DeletePDPContextResponse                deletePDPContextResponse, 
- PDU_NotificationRequest                 pdu_NotificationRequest,
- PDU_NotificationResponse                pdu_NotificationResponse,
- PDU_NotificationRejectRequest           pdu_NotificationRejectRequest,
- PDU_NotificationRejectResponse          pdu_NotificationRejectResponse,
- InitiatePDPContextActivationRequest     initiatePDPContextActivationRequest,
- InitiatePDPContextActivationResponse    initiatePDPContextActivationResponse, 
- SupportedExtensionHeadersNotification   supportedExtensionHeadersNotification,
- SendRouteingInformationForGPRSRequest   sendRouteingInformationForGPRSRequest,
- SendRouteingInformationForGPRSResponse  sendRouteingInformationForGPRSResponse,
- FailureReportRequest                    failureReportRequest,
- FailureReportResponse                   failureReportResponse,
- NoteMS_GPRSPresentRequest               noteMS_GPRSPresentRequest,
- NoteMS_GPRSPresentResponse              noteMS_GPRSPresentResponse,
- IdentificationRequest                   identificationRequest,
- IdentificationResponse                  identificationResponse,
- SGSN_ContextRequest                     sgsn_ContextRequest,
- SGSN_ContextResponse                    sgsn_ContextResponse,
- SGSN_ContextAcknowledge                 sgsn_ContextAcknowledge,
- ForwardRelocationRequest                forwardRelocationRequest,
- ForwardRelocationResponse               forwardRelocationResponse,
- ForwardRelocationComplete               forwardRelocationComplete,
- RelocationCancelRequest                 relocationCancelRequest,
- RelocationCancelResponse                relocationCancelResponse,
- ForwardSRNSContext                      forwardSRNSContext,
- ForwardRelocationCompleteAcknowledge    forwardRelocationCompleteAcknowledge,
- ForwardSRNSContextAcknowledge           forwardSRNSContextAcknowledge,
- UERegistrationQueryRequest              uERegistrationQueryRequest,
- UERegistrationQueryResponse             uERegistrationQueryResponse,
- RANInformationRelay                     ranInformationRelay,
- MBMSNotificationRequest                 mBMSNotificationRequest,
- MBMSNotificationResponse                mBMSNotificationResponse,
- MBMSNotificationRejectRequest           mBMSNotificationRejectRequest,
- MBMSNotificationRejectResponse          mBMSNotificationRejectResponse,
- CreateMBMSContextRequest                createMBMSContextRequest,
- CreateMBMSContextResponse               createMBMSContextResponse,
- UpdateMBMSContextRequest                updateMBMSContextRequest,
- UpdateMBMSContextResponse               updateMBMSContextResponse,
- DeleteMBMSContextRequest                deleteMBMSContextRequest,
- DeleteMBMSContextResponse               deleteMBMSContextResponse,
- MBMSRegistrationRequest_gtpc            mBMSRegistrationRequest,
- MBMSRegistrationResponse_gtpc           mBMSRegistrationResponse,
- MBMSDeRegistrationRequest               mBMSDeRegistrationRequest,
- MBMSDeRegistrationResponse              mBMSDeRegistrationResponse,
- MBMSSessionStartRequest                 mBMSSessionStartRequest,
- MBMSSessionStartResponse_gtpc           mBMSSessionStartResponse,
- MBMSSessionStopRequest                  mBMSSessionStopRequest,
- MBMSSessionStopResponse_gtpc            mBMSSessionStopResponse,
- MBMSSessionUpdateRequest                mBMSSessionUpdateRequest,
- MBMSSessionUpdateResponse               mBMSSessionUpdateResponse, 
- MS_InfoChangeNotificationRequest        mS_InfoChangeNotificationRequest,
- MS_InfoChangeNotificationResponse       mS_InfoChangeNotificationResponse 
-} with { variant ""};
-
-
-/////////////////////////////
-// PDU definition
-/////////////////////////////
-type record PDU_GTPC {
- BIT1                           pn_bit,
- BIT1                           s_bit,
- BIT1                           e_bit,
- BIT1                           spare,
- BIT1                           pt,
- BIT3                           version,
- OCT1                           messageType,
- LIN2_BO_LAST                   lengthf,
- OCT4                           teid,
- GTPC_Header_optional_part      opt_part optional,
- GTPC_PDUs                      gtpc_pdu
-} with { 
-    variant (lengthf) "LENGTHTO(opt_part, gtpc_pdu)";
-    variant (opt_part) "PRESENCE({pn_bit = '1'B, s_bit = '1'B, e_bit = '1'B})";
-    variant (gtpc_pdu) "CROSSTAG( echoRequest, messageType = '01'O;
-           echoResponse, messageType = '02'O;
-           versionNotSupported, messageType = '03'O;
-           createPDPContextRequest, messageType = '10'O;
-           createPDPContextResponse, messageType = '11'O;
-           updatePDPContextRequest, messageType = '12'O;
-           updatePDPContextResponse, messageType = '13'O;
-           deletePDPContextRequest, messageType = '14'O;
-           deletePDPContextResponse, messageType = '15'O; 
-           initiatePDPContextActivationRequest, messageType = '16'O;           
-           initiatePDPContextActivationResponse, messageType = '17'O;                     
-           pdu_NotificationRequest, messageType = '1B'O;
-           pdu_NotificationResponse, messageType = '1C'O;
-           pdu_NotificationRejectRequest, messageType = '1D'O;
-           pdu_NotificationRejectResponse, messageType = '1E'O;
-           supportedExtensionHeadersNotification, messageType ='1F'O;
-           sendRouteingInformationForGPRSRequest, messageType = '20'O;
-           sendRouteingInformationForGPRSResponse, messageType = '21'O;
-           failureReportRequest, messageType = '22'O; 
-           failureReportResponse, messageType = '23'O;
-           noteMS_GPRSPresentRequest, messageType = '24'O;
-           noteMS_GPRSPresentResponse, messageType = '25'O;
-           identificationRequest, messageType = '30'O;
-           identificationResponse, messageType = '31'O;
-           sgsn_ContextRequest, messageType = '32'O;
-           sgsn_ContextResponse, messageType = '33'O;
-           sgsn_ContextAcknowledge, messageType = '34'O;
-           forwardRelocationRequest, messageType = '35'O;
-           forwardRelocationResponse, messageType = '36'O;
-           forwardRelocationComplete, messageType = '37'O; 
-           relocationCancelRequest, messageType = '38'O;
-           relocationCancelResponse, messageType = '39'O; 
-           forwardSRNSContext, messageType = '3A'O; 
-           forwardRelocationCompleteAcknowledge, messageType = '3B'O; 
-           forwardSRNSContextAcknowledge, messageType = '3C'O;
-           uERegistrationQueryRequest, messageType = '3D'O;
-           uERegistrationQueryResponse, messageType = '3F'O;
-           ranInformationRelay, messageType = '46'O;
-           mBMSNotificationRequest, messageType = '60'O;
-           mBMSNotificationResponse, messageType = '61'O;
-           mBMSNotificationRejectRequest, messageType = '62'O;
-           mBMSNotificationRejectResponse, messageType = '63'O;
-           createMBMSContextRequest, messageType = '64'O;
-           createMBMSContextResponse, messageType = '65'O;
-           updateMBMSContextRequest, messageType = '66'O;
-           updateMBMSContextResponse, messageType = '67'O;
-           deleteMBMSContextRequest, messageType = '68'O;
-           deleteMBMSContextResponse, messageType = '69'O;
-           mBMSRegistrationRequest, messageType = '70'O;
-           mBMSRegistrationResponse, messageType = '71'O;
-           mBMSDeRegistrationRequest, messageType = '72'O;
-           mBMSDeRegistrationResponse, messageType = '73'O;
-           mBMSSessionStartRequest, messageType = '74'O;
-           mBMSSessionStartResponse, messageType = '75'O;
-           mBMSSessionStopRequest, messageType = '76'O;
-           mBMSSessionStopResponse, messageType = '77'O;
-           mBMSSessionUpdateRequest, messageType = '78'O;           
-           mBMSSessionUpdateResponse, messageType = '79'O;
-           mS_InfoChangeNotificationRequest, messageType = '80'O;
-           mS_InfoChangeNotificationResponse, messageType = '81'O                      
-           )";
-};
-
-type record GTPC_Header_optional_part {
- OCT2                       sequenceNumber,
- OCT1                       npduNumber,
- OCT1                       nextExtHeader,
- GTPC_ExtensionHeader_List  gTPC_extensionHeader_List optional
-} 
-
-type record of GTPC_ExtensionHeader GTPC_ExtensionHeader_List;
-
-type record GTPC_ExtensionHeader {
- integer               lengthfield, 
- octetstring           content,
- octetstring           nextExtHeader  length(1)
-} with { variant (lengthfield) "LENGTHTO(lengthfield,content,nextExtHeader)";
-         variant (lengthfield) "UNIT(32)";
-};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/GTP_v13.5.0_CNL113843_LATEST/src/GTPU_EncDec.cc b/GTP_v13.5.0_CNL113843_LATEST/src/GTPU_EncDec.cc
deleted file mode 100644
index a532eb7..0000000
--- a/GTP_v13.5.0_CNL113843_LATEST/src/GTPU_EncDec.cc
+++ /dev/null
@@ -1,119 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               GTPU_EncDec.cc
-//  Rev:                R1B
-//  Prodnr:             CNL 113 843
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 29.060 v13.5.0
-
-#include "GTPU_Types.hh"
-
-namespace GTPU__Types {
-
-// find the length of the optional part and decode optional part into OPT_PART   
-int find_optpart_length(const unsigned char * opt_part_ptr,GTPU__Header__optional__part& OPT_PART)// pointer to opt part start
-{
-  int opt_part_length = 4; // mandatory minimum length of opt_part  
-  OPT_PART.sequenceNumber() = OCTETSTRING(2,opt_part_ptr);
-  OPT_PART.npduNumber() = OCTETSTRING(1,opt_part_ptr+2);
-  OPT_PART.nextExtHeader() = OCTETSTRING(1,opt_part_ptr+3);
-  OPT_PART.gTPU__extensionHeader__List() = OMIT_VALUE; 
-   
-      int i = 0;    
-      bool opt_part_end = false;
-      while(!opt_part_end) 
-      {                  
-        if (opt_part_ptr[opt_part_length-1] != 0x00) // 0x00 means end of optional part
-            {
-             unsigned char lengthfield = opt_part_ptr[opt_part_length];
-             
-             OPT_PART.gTPU__extensionHeader__List()()[i].lengthfield() = lengthfield;
-             OPT_PART.gTPU__extensionHeader__List()()[i].content() = 
-               OCTETSTRING(4*lengthfield-2,opt_part_ptr + opt_part_length +1);
-             OPT_PART.gTPU__extensionHeader__List()()[i].nextExtHeader() = 
-               OCTETSTRING(1,opt_part_ptr + opt_part_length + 4*lengthfield - 1);
-                   
-             opt_part_length = opt_part_length + 4*lengthfield;
-             i++;
-            }
-        else            
-            {opt_part_end = true;}                         
-      }
-       
-  return  opt_part_length;
-}
-
-//////////////////////////////////
-// Decoding function for GTPC__DialoguePDU
-//////////////////////////////////
-PDU__GTPU dec__PDU__GTPU(const OCTETSTRING& udp__pdu)
-{
-  TTCN_Buffer buf;
-  PDU__GTPU pdu;  
-       
-      const unsigned char *gtpu_message = (const unsigned char *) udp__pdu;
-       
-      int opt_part_length = 0;
-      if  ( gtpu_message[0] & 0x07 ) // opt_part is present 
-      { 
-         GTPU__Header__optional__part    OPT_PART;
-         
-         // find the length of the optional part and decode optional part into OPT_PART                       
-         opt_part_length = find_optpart_length(gtpu_message+8,OPT_PART); 
-         if(  ((gtpu_message[2] << 8) + gtpu_message[3] - opt_part_length) < 0  )
-           {TTCN_error("Decoding error, lengthf field is shorter that decoded length of opt_part");};         
-                                                             
-         // build PDU without optional part 
-         unsigned int gtpu_IEs_length = (gtpu_message[2] << 8) + gtpu_message[3] - opt_part_length;
-         unsigned char gtpuBuf[8 + gtpu_IEs_length];
-         memcpy(gtpuBuf,gtpu_message,8);
-         memcpy(gtpuBuf+8,gtpu_message+8+opt_part_length,gtpu_IEs_length);
-         
-         // substitute dummy bits (indicating there is no optional part)
-         gtpuBuf[0] = gtpuBuf[0] & 0xf8;
-         
-         // substitute dummy length (not including optional part)
-         gtpuBuf[2] = (gtpu_IEs_length & 0xff00) >> 8;
-         gtpuBuf[3] =  gtpu_IEs_length & 0xff;
-         
-         // RAW decoding
-         buf.put_s(8 + gtpu_IEs_length,gtpuBuf);        
-         pdu.decode(PDU__GTPU_descr_, buf, TTCN_EncDec::CT_RAW);
-         buf.clear(); 
-         
-         // put back the original values               
-         unsigned char pn = gtpu_message[0] & 0x01;
-         pdu.pn__bit() = BITSTRING(1,&pn);
-    
-         unsigned char s = (gtpu_message[0] & 0x02) >> 1;
-         pdu.s__bit() =  BITSTRING(1,&s);
-      
-         unsigned char e = (gtpu_message[0] & 0x04) >> 2;
-         pdu.e__bit() = BITSTRING(1,&e);
-         
-         pdu.lengthf() = (gtpu_message[2] << 8) + gtpu_message[3];
-         
-         pdu.opt__part() = OPT_PART;
-                
-         return pdu;                 
-      }   
-      else // opt_part is not present 
-      {
-         buf.put_os(udp__pdu);
-         pdu.decode(PDU__GTPU_descr_, buf, TTCN_EncDec::CT_RAW);
-         buf.clear(); 
-         return pdu;             
-      }                  
-}  // end of function
-
-
-}//namespace
diff --git a/GTP_v13.5.0_CNL113843_LATEST/src/GTPU_Types.ttcn b/GTP_v13.5.0_CNL113843_LATEST/src/GTPU_Types.ttcn
deleted file mode 100644
index 2911b70..0000000
--- a/GTP_v13.5.0_CNL113843_LATEST/src/GTPU_Types.ttcn
+++ /dev/null
@@ -1,189 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               GTPU_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 843
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 29.060 v13.5.0, 3GPP TS 29.281 v13.2.0
-//
-//  This module contains the GTP-U (General Packet Radio Servive Protocol
-//   Tunnelling Protocol - User Plane)
-
-module GTPU_Types {
-
-import from General_Types all;
-
-// external encoding/decoding functions
-external function enc_PDU_GTPU(in PDU_GTPU gtpu_pdu) return octetstring
-with { extension "prototype(convert)"
-       extension "encode(RAW)"
-}
-
-external function dec_PDU_GTPU(in octetstring udp_pdu) return PDU_GTPU
-
-external function dec_PDU_GTPU_ext(in octetstring udp_pdu) return PDU_GTPU_ext
-with { extension "prototype(convert)"
-       extension "decode(RAW)"
-}
-
-
-     	
-//////////////////////////
-// IE definition
-//////////////////////////
-//Private Extension - 7.7.46
-type record of PrivateExtension_gtpu PrivateExtension_gtpu_List;
-
-type record PrivateExtension_gtpu {
-  OCT1             type_gtpu,
-  LIN2_BO_LAST     lengthf,
-  OCT2             extensionID,
-  octetstring      extensionValue
-} with { variant "PRESENCE( type_gtpu = 'FF'O)"; 
-         variant (lengthf) "LENGTHTO(extensionID, extensionValue)";};
-
-//Recovery - 7.7.11
-type record Recovery_gtpu {
-  OCT1           type_gtpu,
-  OCT1           restartCounter 
-};
-
-//Extension Header Type List - 7.7.40
-type record ExtensionHeaderTypeList_gtpu {
-  OCT1             type_gtpu,
-  integer          lengthf,
-  octetstring      extensionTypesList 
-} with { variant (lengthf) "LENGTHTO(extensionTypesList)"; }
-
-//Tunnel Endpoint Identifier Data I - 7.7.13
-type record TeidDataI_gtpu {
-  OCT1  type_gtpu,
-  OCT4  teidDataI 
-};
-
-//GSN Address - 7.7.32
-type record GSNAddress_gtpu
-{
-  OCT1            type_gtpu,
-  LIN2_BO_LAST	  lengthf,
-  octetstring     gSNAddressValue
-} with {variant (lengthf) "LENGTHTO(gSNAddressValue)";};
-
-//////////////////////////
-// Message definition
-//////////////////////////
-// Echo Request - 7.2.1
-type record EchoRequest_IEs {
-  PrivateExtension_gtpu_List  private_extension_gtpu  optional
-} 
-
-// Echo Response - 7.2.2
-type record EchoResponse_IEs {
-  Recovery_gtpu  	  recovery_gtpu,
-  PrivateExtension_gtpu_List   private_extension_gtpu  optional
-} 
-  
-//Error Indication -  3GPP TS 29.281 v13.2.0 - 7.3.1
-type record ErrorIndication_IEs {
-  TeidDataI_gtpu   	  teidDataI_gtpu,
-  GSNAddress_gtpu         gSNAddress_gtpu,
-  PrivateExtension_gtpu_List   private_extension_gtpu  optional
-}
-
-//Supported Extension Headers Notification - 7.2.4
-type record SupportedExtensionHeadersNotification_IEs {
-  ExtensionHeaderTypeList_gtpu extensionHeaderTypeList_gtpu
-};
-
-// 3GPP TS 29.281 v9.3.0 - 7.3.2
-type record EndMarker_IEs{
-  PrivateExtension_gtpu_List  private_extension_gtpu  optional
-} 
-
-//G PDU - 9.3.1
-type record G_PDU_IEs {
-  octetstring  data
-};
-
-
-type union GTPU_IEs {
-  EchoRequest_IEs                             echoRequest_IEs,
-  EchoResponse_IEs                            echoResponse_IEs,
-  ErrorIndication_IEs                         errorIndication_IEs,
-  SupportedExtensionHeadersNotification_IEs   suppExtHeadersNotif_IEs,
-  EndMarker_IEs                               endMarker_IEs,
-  G_PDU_IEs                                   g_PDU_IEs
-};
-
-
-//////////////////////////
-// Extension Header definition
-//////////////////////////
-type record GTPU_ExtensionHeader {
-  integer		lengthfield,
-  octetstring 		content,
-  OCT1            nextExtHeader
-} with {
-         variant (lengthfield) "LENGTHTO(lengthfield,content,nextExtHeader)";
-         variant (lengthfield) "UNIT(32)";        
-       }
-
-type record of GTPU_ExtensionHeader GTPU_ExtensionHeader_List;
-
-type record GTPU_Header_optional_part {
-  OCT2                       sequenceNumber,
-  OCT1                       npduNumber,
-  OCT1                       nextExtHeader,
-  GTPU_ExtensionHeader_List  gTPU_extensionHeader_List optional
-} 
-   
-
-//////////////////////////
-// PDU definition
-//////////////////////////
-type record PDU_GTPU {
-  BIT1             pn_bit,
-  BIT1             s_bit,
-  BIT1             e_bit,
-  BIT1             spare,
-  BIT1             pt,
-  BIT3             version,
-  OCT1             messageType,
-  LIN2_BO_LAST     lengthf,
-  OCT4             teid,
-  GTPU_Header_optional_part opt_part optional,
-  GTPU_IEs         gtpu_IEs
-} with { 
-    variant (lengthf)  "LENGTHTO(opt_part, gtpu_IEs)";
-    variant (opt_part) "PRESENCE({pn_bit = '1'B, s_bit = '1'B, e_bit = '1'B})";
-    variant (gtpu_IEs) "CROSSTAG( echoRequest_IEs,     messageType = '01'O;
-                                  echoResponse_IEs,    messageType = '02'O;
-                                  errorIndication_IEs, messageType = '1A'O;
-                                  suppExtHeadersNotif_IEs, messageType = '1F'O;
-                                  endMarker_IEs,       messageType = 'FE'O;
-                                  g_PDU_IEs,           messageType = 'FF'O)";
-       };
-
-
-type record PDU_GTPU_ext {
-  PDU_GTPU gtpu_pdu,
-  octetstring extraOctets
-} with {
-  variant "" ;
-};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/GTPv2_v13.7.0_CNL113846_LATEST/GTPv2_v13.7.0_CNL113846.tpd b/GTPv2_v13.7.0_CNL113846_LATEST/GTPv2_v13.7.0_CNL113846.tpd
deleted file mode 100644
index 51abbd2..0000000
--- a/GTPv2_v13.7.0_CNL113846_LATEST/GTPv2_v13.7.0_CNL113846.tpd
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2017 Ericsson
-
-  The copyright to the computer  program(s) herein  is the property of Ericsson.
-  The program(s) may be used and/or copied only with the written permission
-  of Ericsson or in accordance with  the terms and conditions  stipulated in the
-  agreement/contract under which the program(s) has been supplied.
-
-
-   File:               GTPv2_v13.7.0_CNL113846.tpd
-   Description:        tpd project file
-   Rev:                R1E
-   Prodnr:             CNL 113 846
-
- -->
-<TITAN_Project_File_Information version="1.0">
-  <ProjectName>GTPv2_v13.7.0_CNL113846</ProjectName>
-  <ReferencedProjects>
-    <ReferencedProject name="GTPv2_PrivateExtensions_CNL113798" projectLocationURI="../GTPv2_PrivateExtensions_CNL113798/GTPv2_PrivateExtensions_CNL113798.tpd"/>
-    <ReferencedProject name="ProtocolModules_Common" projectLocationURI="../COMMON/ProtocolModules_Common.tpd"/>
-  </ReferencedProjects>
-  <Files>
-    <FileResource projectRelativePath="GTPv2_Types.ttcn" relativeURI="src/GTPv2_Types.ttcn"/>
-  </Files>
-  <ActiveConfiguration>Default</ActiveConfiguration>
-  <Configurations>
-    <Configuration name="Default">
-      <ProjectProperties>
-        <MakefileSettings>
-          <generateInternalMakefile>true</generateInternalMakefile>
-          <GNUMake>true</GNUMake>
-          <incrementalDependencyRefresh>true</incrementalDependencyRefresh>
-          <targetExecutable>bin/GTPv2_v13.7.0_CNL113846</targetExecutable>
-          <buildLevel>Level3-Creatingobjectfileswithdependencyupdate</buildLevel>
-        </MakefileSettings>
-        <LocalBuildSettings>
-          <workingDirectory>bin</workingDirectory>
-        </LocalBuildSettings>
-      </ProjectProperties>
-    </Configuration>
-  </Configurations>
-</TITAN_Project_File_Information>
diff --git a/GTPv2_v13.7.0_CNL113846_LATEST/doc/GTPv2_v13.7_Descr.doc b/GTPv2_v13.7.0_CNL113846_LATEST/doc/GTPv2_v13.7_Descr.doc
deleted file mode 100644
index 7a6bf7f..0000000
--- a/GTPv2_v13.7.0_CNL113846_LATEST/doc/GTPv2_v13.7_Descr.doc
+++ /dev/null
Binary files differ
diff --git a/GTPv2_v13.7.0_CNL113846_LATEST/doc/GTPv2_v13.7_PRI.doc b/GTPv2_v13.7.0_CNL113846_LATEST/doc/GTPv2_v13.7_PRI.doc
deleted file mode 100644
index 39bf67f..0000000
--- a/GTPv2_v13.7.0_CNL113846_LATEST/doc/GTPv2_v13.7_PRI.doc
+++ /dev/null
Binary files differ
diff --git a/GTPv2_v13.7.0_CNL113846_LATEST/src/GTPv2_Types.ttcn b/GTPv2_v13.7.0_CNL113846_LATEST/src/GTPv2_Types.ttcn
deleted file mode 100644
index 1488f6c..0000000
--- a/GTPv2_v13.7.0_CNL113846_LATEST/src/GTPv2_Types.ttcn
+++ /dev/null
@@ -1,4801 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2017                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               GTPv2_Types.ttcn
-//  Description:        GTPv2 protocol module
-//  Rev:                R1E
-//  Prodnr:             CNL 113 846 
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 29.274 v13.7.0
-//                      
-
-
-module GTPv2_Types
-{
-import from General_Types all;
-import from GTPv2_PrivateExtensions all;
-
-external function enc_PDU_GTPCv2(in PDU_GTPCv2 pdu) return octetstring
-with { extension "prototype(convert)" extension "encode(RAW)" }
-
-external function dec_PDU_GTPCv2(in octetstring stream) return PDU_GTPCv2
-with { extension "prototype(convert)" extension "decode(RAW)" }
-
-external function enc_PDU_GTPCv2_fast(in PDU_GTPCv2 pdu, out octetstring stream)
-with { extension "prototype(fast) encode(RAW)" }
-
-external function dec_PDU_GTPCv2_backtrack(in octetstring stream, out PDU_GTPCv2 pdu) return integer
-with { extension "prototype(backtrack) decode(RAW)" }
-
-
-// Information Elements
-
-//8.2.1A For future use
-type record Special_IE_Type_Extension
-{
-  OCT1                         elementIdentifier,  // dec 254, 'FE'O;  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  IE_Extension_UnionType       iE_Type_Extension
-} with { 
-  variant (lengthIndicator) "LENGTHTO(iE_Type_Extension)"; 
-  variant "PRESENCE (elementIdentifier = 'FE'O; )";
-};
-
-type union IE_Extension_UnionType
-{
-  IE_Type_Extension  iE_Type_Extension
-}
-
-type record IE_Type_Extension
-{
-  OCT2                         elementIdentifier,
-  octetstring                  valueField
-}
-
-// 8.3
-type record IMSI
-{
-  OCT1              elementIdentifier,  //dec 1, '01'O  
-  LIN2_BO_LAST      lengthIndicator,
-  BIT4              instance,
-  BIT4              spare,
-  hexstring         iMSI_Value 
-} with { 
-  variant "PRESENCE (elementIdentifier = '01'O;)"   
-  variant (lengthIndicator) "LENGTHTO(iMSI_Value)" 
-  variant (iMSI_Value) "PADDING(yes)";
-  variant (iMSI_Value) "PADDING_PATTERN('1'B)"
-};
-
-// 8.4
-type record Cause
-{
-  OCT1              elementIdentifier, //dec 2, '02'O  
-  LIN2_BO_LAST      lengthIndicator,
-  BIT4              instance,
-  BIT4              spare,
-  OCT1              causeValue,
-  BIT1              cS,
-  BIT1              bCE,
-  BIT1              pCE,
-  BIT5              spare2,
-  OCT1              typeOfOffendingIE optional,
-  LIN2_BO_LAST      lengthIndicator2 optional,
-  BIT4              instanceOfOffendingIE optional,
-  BIT4              spare3 optional
-} with { 
-  variant "PRESENCE (elementIdentifier = '02'O; )" 
-  variant (lengthIndicator) "LENGTHTO(causeValue,cS,bCE,pCE,spare2,typeOfOffendingIE,
-  lengthIndicator2,instanceOfOffendingIE,spare3 )" 
-};
-
-// 8.5
-type record Recovery
-{
-  OCT1              elementIdentifier,  // dec 3, '03'O 
-  LIN2_BO_LAST      lengthIndicator,
-  BIT4              instance,
-  BIT4              spare,
-  integer           recoveryValue
-} with { 
-  variant (lengthIndicator) "LENGTHTO(recoveryValue)"
-  variant "PRESENCE (elementIdentifier = '03'O; )" 
-}; 
-
-// 8.6 
-type record AccessPointName
-{
-  OCT1              elementIdentifier, // dec 71, '47'O
-  LIN2_BO_LAST      lengthIndicator,
-  BIT4              instance,
-  BIT4              spare,
-  octetstring       aPN_Value 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(aPN_Value)"
-  variant "PRESENCE (elementIdentifier = '47'O; )"   
-}; 
-
-// 8.7 
-type record AggregateMaximumBitRate
-{
-  OCT1              elementIdentifier, // dec 72, '48'O  
-  LIN2_BO_LAST      lengthIndicator,
-  BIT4              instance,
-  BIT4              spare,
-  OCT4              aPN_AMBR_for_uplink, 
-  OCT4              aPN_AMBR_for_downlink
-} with { 
-  variant (lengthIndicator) "LENGTHTO(aPN_AMBR_for_uplink,aPN_AMBR_for_downlink)"
-  variant "PRESENCE (elementIdentifier = '48'O; )" 
-}; 
-
-//8.8
-type record EPS_BearerID
-{
-  OCT1              elementIdentifier, // dec 73, '49'O  
-  LIN2_BO_LAST      lengthIndicator,
-  BIT4              instance,
-  BIT4              spare,
-  integer           ePS_Bearer_ID_Value,
-  BIT4              spare2,   //'0000'B
-  octetstring       additionalOctets  optional 
-}with { 
-  variant (lengthIndicator) "LENGTHTO(ePS_Bearer_ID_Value,spare2,additionalOctets)"
-  variant "PRESENCE (elementIdentifier = '49'O; )"
-  variant(ePS_Bearer_ID_Value) "FIELDLENGTH(4)"; 
-};
-
-type set of EPS_BearerID EPS_BearerID_List;
-
-//8.9
-type union IPv4_IPv6_Address{
-  OCT4                       iPv4_Address,
-  OCT16                      iPv6_Address
-};
-
-type record IP_Address
-{
-  OCT1                elementIdentifier,  // dec 74, '4A'O   
-  LIN2_BO_LAST        lengthIndicator,
-  BIT4                instance,
-  BIT4                spare,
-  IPv4_IPv6_Address   iPv4_IPv6_Address
-} with { 
-  variant (lengthIndicator) "LENGTHTO(iPv4_IPv6_Address)"
-  variant "PRESENCE (elementIdentifier = '4A'O; )" 
-  variant (iPv4_IPv6_Address) "CROSSTAG( iPv4_Address, lengthIndicator = 4;
-  iPv6_Address, lengthIndicator = 16)"
-};
-
-type set of IP_Address IP_Address_List;
-
-//8.10
-type record MEI
-{
-  OCT1                elementIdentifier, // dec 75, '4B'O;
-  LIN2_BO_LAST        lengthIndicator,
-  BIT4                instance,
-  BIT4                spare,
-  octetstring         mEI_Value
-} with { 
-  variant (lengthIndicator) "LENGTHTO(mEI_Value)"
-  variant "PRESENCE (elementIdentifier = '4B'O; )" 
-};
-
-//8.11
-type record MSISDN
-{
-  OCT1                elementIdentifier,  // dec 76, '4C'O; 
-  LIN2_BO_LAST        lengthIndicator,
-  BIT4                instance,
-  BIT4                spare,
-  hexstring           mSISDN_Value 
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(mSISDN_Value)"
-  variant "PRESENCE (elementIdentifier = '4C'O; )" 
-  variant (mSISDN_Value) "PADDING(yes)";
-  variant (mSISDN_Value) "PADDING_PATTERN('1'B)"  
-
-};
-
-type set of MSISDN MSISDN_List;
-
-//8.12
-type record Indication
-{
-  OCT1                elementIdentifier,   // dec 77, '4D'O; 
-  LIN2_BO_LAST        lengthIndicator,
-  BIT4                instance,
-  BIT4                spare,
-  BIT1                sGWCI,
-  BIT1                iSRAI,
-  BIT1                iSRSI,
-  BIT1                oI,           
-  BIT1                dFI,
-  BIT1                hI,
-  BIT1                dTF,
-  BIT1                dAF,
-  BIT1                mSV,
-  BIT1                sI,
-  BIT1                pT,
-  BIT1                pBit,
-  BIT1                cRSI,
-  BIT1                cFSI,
-  BIT1                uIMSI,
-  BIT1                sQCI,
-  BIT1                cCRSI optional,
-  BIT1                iSRAU optional, 
-  BIT1                mBMDT optional,
-  BIT1                s4AF optional,
-  BIT1                s6AF optional,
-  BIT1                sRNI optional,
-  BIT1                pBIC optional,
-  BIT1                retLoc optional, 
-  BIT1                cPSR optional,
-  BIT1                cLII optional,
-  BIT1                cSFBI optional, 
-  BIT1                pPSI optional, 
-  BIT1                pPON_PPEI optional, 
-  BIT1                pPOF optional, 
-  BIT1                aRRL optional, 
-  BIT1                cPRAI optional, 
-  BIT1                aOPI optional, 
-  BIT1                aOSI optional, 
-  BIT1                pCRI optional,
-  BIT1                pSCI optional,
-  BIT1                bDWI optional,
-  BIT1                dTCI optional,
-  BIT1                uASI optional,
-  BIT1                nSI optional,
-  BIT1                wPMSI optional,
-  BIT1                uNACCSI optional,
-  BIT1                pNSI optional,
-  BIT1                s11TF optional,
-  BIT1                pMTSMI optional,
-  BIT1                cPOPCI optional,
-  BIT1                ePCOSI optional,
-  BIT1                rOAAI optional,
-  BIT1                tSPCMI optional,
-  BIT1                spare_1 optional,
-  BIT1                spare_2 optional,
-  BIT1                spare_3 optional,
-  BIT1                spare_4 optional,
-  BIT1                spare_5 optional,
-  BIT1                spare_6 optional,
-  BIT1                spare_7 optional,
-  octetstring         additionalOctets  optional   
-} with { 
-  variant (lengthIndicator) "LENGTHTO(sGWCI,iSRAI,iSRSI,oI,dFI,hI,dTF,dAF,
-  mSV,sI,pT,pBit,cRSI,cFSI,uIMSI,sQCI, 
-  cCRSI, iSRAU,mBMDT,s4AF,s6AF,sRNI,pBIC,retLoc,
-  cPSR,cLII,cSFBI,pPSI,pPON_PPEI,pPOF,aRRL,cPRAI,aOPI,aOSI,pCRI,pSCI,bDWI,dTCI,uASI,nSI,
-  wPMSI,uNACCSI,pNSI,s11TF,pMTSMI,cPOPCI,ePCOSI,rOAAI, tSPCMI, spare_1, spare_2, spare_3, spare_4, spare_5, spare_6, spare_7, additionalOctets)"
-  variant "PRESENCE (elementIdentifier = '4D'O; )"
-};
-
-type set of Indication Indication_List;
-
-//8.13
-// 24.301 (9.9.4.8) -> 24.008 (10.5.6.3)
-type set of  ProtocolID_or_ContainerID   ProtocolIDs_and_ContainerIDs;
-
-type record ProtocolID_or_ContainerID
-{
-  OCT2               protocolID_or_ContainerID,
-  LIN1               lengthIndicator,
-  octetstring        protID_orContID_Contents
-} with { variant (lengthIndicator) "LENGTHTO (protID_orContID_Contents)"};
-
-type record ProtocolConfigOptions
-{
-  OCT1                         elementIdentifier, // dec 78 '4E'O;
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT3                         configProtocol,
-  BIT4                         spare2,  //'0000'B
-  BIT1                         extensionField,   //'1'B
-  ProtocolIDs_and_ContainerIDs protocolIDs_and_ContainerIDs optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(configProtocol,spare2,extensionField,protocolIDs_and_ContainerIDs)"
-  variant "PRESENCE (elementIdentifier = '4E'O; )" 
-};
-
-//8.14 
-type union PDN_Address_and_Prefix{
-  OCT4                       iPv4_Address,
-  IPv6                       iPv6_Address,
-  IPv4_IPv6                  iPv4_IPv6 
-};
-
-type record IPv6
-{
-  integer   prefixLength, 
-  OCT16     iPv6_Address 
-};
-
-type record IPv4_IPv6
-{
-  integer          prefixLength, 
-  OCT16            iPv6_Address, 
-  OCT4             iPv4_Address
-};
-
-type record PDN_AddressAllocation
-{
-  OCT1                         elementIdentifier,  // dec 79 '4F'O;
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT3                         pDN_Type,
-  BIT5                         spare2,  //'00000'B
-  PDN_Address_and_Prefix       pDN_Address_and_Prefix optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pDN_Type,spare2,pDN_Address_and_Prefix)"
-  variant "PRESENCE (elementIdentifier = '4F'O; )"
-  variant (pDN_Address_and_Prefix) "CROSSTAG
-  (
-  iPv4_Address,             pDN_Type ='001'B;
-  iPv6_Address,             pDN_Type ='010'B;
-  iPv4_IPv6,                pDN_Type ='011'B;  
-  )"
-};
-
-//8.15
-type record Bearer_QoS
-{
-  OCT1                         elementIdentifier,  // dec 80 '50'O; 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT1                         pVI,
-  BIT1                         spare2,
-  BIT4                         pL,
-  BIT1                         pCI,
-  BIT1                         spare3,  
-  OCT1                         labelQCI,
-  OCT5                         maxBitrateUplink,
-  OCT5                         maxBitrateDownLink,
-  OCT5                         guaranteedBitrateUplink,
-  OCT5                         guaranteedBitrateDownLink,
-  octetstring                  additionalOctets optional  
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pVI,spare2,pL,pCI,spare3,
-  labelQCI,maxBitrateUplink,maxBitrateDownLink,
-  guaranteedBitrateUplink,guaranteedBitrateDownLink,additionalOctets)"
-  variant "PRESENCE (elementIdentifier = '50'O; )" 
-};
-
-//8.16
-type record FlowQoS
-{
-  OCT1                         elementIdentifier,  // dec 81 '51'O;  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT1                         labelQCI,
-  OCT5                         maxBitrateUplink,
-  OCT5                         maxBitrateDownLink,
-  OCT5                         guaranteedBitrateUplink,
-  OCT5                         guaranteedBitrateDownLink,
-  octetstring                  additionalOctets  optional  
-}with { 
-  variant (lengthIndicator) "LENGTHTO(labelQCI,maxBitrateUplink,maxBitrateDownLink,guaranteedBitrateUplink,guaranteedBitrateDownLink,additionalOctets)"
-  variant "PRESENCE (elementIdentifier = '51'O; )" 
-};
-
-//8.17
-type record RAT_Type
-{
-  OCT1                         elementIdentifier,  // dec 82, '52'O;   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      rAT_TypeValue,
-  octetstring                  additionalOctets  optional 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(rAT_TypeValue,additionalOctets)"
-  variant "PRESENCE (elementIdentifier = '52'O; )" 
-};
-
-//8.18
-type record ServingNetwork
-{
-  OCT1                         elementIdentifier,   // dec 83, '53'O;   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  HEX1                         mccDigit1,  
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  octetstring                  additionalOctets  optional 
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3,mncDigit1,mncDigit2,additionalOctets)"
-  variant "PRESENCE (elementIdentifier = '53'O; )" 
-};
-
-//8.19 24.008 10.5.6.12
-type union TrafficFlowTemplateV
-{
-  TrafficFlowTemplateV_CreateAddReplaceTFT
-  trafficFlowTemplateV_CreateAddReplaceTFT,
-  TrafficFlowTemplateV_DeletePacketFilter
-  trafficFlowTemplateV_DeletePacketFilter,
-  TrafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation
-  trafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation
-};
-
-
-type record TrafficFlowTemplateV_CreateAddReplaceTFT
-{
-  integer                                numberOfPacketFilters,
-  BIT1                                   eBIT,
-  BIT3                                   operationCodeTFT, 
-  PacketFilterList_CreateAddReplaceTFT   packetFilterList_CreateAddReplaceTFT,
-  ParametersList                         parametersList            optional
-} with {
-  variant "PRESENCE (operationCodeTFT  = '001'B, //  Create New TFT
-  operationCodeTFT  = '011'B, //  Add packet filters to existing TFT
-  operationCodeTFT  = '100'B  //  Replace packet filters in existing TFT
-  )";
-  variant(parametersList)       "PRESENCE(eBIT = '1'B)";
-  variant(numberOfPacketFilters)"FIELDLENGTH(4)";
-  variant(numberOfPacketFilters)"LENGTHTO(packetFilterList_CreateAddReplaceTFT)";
-  variant(numberOfPacketFilters)"UNIT(elements)";
-};
-
-
-type record TrafficFlowTemplateV_DeletePacketFilter
-{
-  integer                                numberOfPacketFilters,
-  BIT1                                   eBIT,
-  BIT3                                   operationCodeTFT,
-  //'101'B or '011'B or '100'B
-  PacketFilterList_DeletePacketFilter    packetFilterList_DeletePacketFilter,
-  ParametersList                         parametersList         optional
-} with {
-  variant "PRESENCE (operationCodeTFT = '101'B)"  // Delete packet filters from existing TFT
-  variant(parametersList) "PRESENCE(eBIT = '1'B)";
-  variant(numberOfPacketFilters)"FIELDLENGTH(4)";
-  variant(numberOfPacketFilters)"LENGTHTO(packetFilterList_DeletePacketFilter)";
-  variant  (numberOfPacketFilters)"UNIT(elements)";
-};
-
-
-type record TrafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation
-{
-  BIT4                         numberOfPacketFilters, //'0000'B
-  // numberOfPacketFilters is meaningless here since there is no PacketFilterList
-  BIT1                         eBIT,
-  BIT3                         operationCodeTFT,      // '010'B  or '110'B
-  ParametersList               parametersList   optional
-} with {
-  variant "PRESENCE (operationCodeTFT = '010'B,  // delete existing TFT
-  operationCodeTFT = '110'B   // No TFT Operation
-  )";
-  variant (parametersList) "PRESENCE(eBIT = '1'B)"
-};
-
-
-type record of PacketFilter PacketFilterList_CreateAddReplaceTFT;
-
-
-type record PacketFilter
-{
-  PacketFilterIdentifier       identifier,
-  OCT1                         evaluationPrecedence,
-  LIN1                         lengthIndicator,
-  octetstring                  contents
-} with { variant (lengthIndicator) "LENGTHTO (contents)"};
-
-
-type record of PacketFilterIdentifier  PacketFilterList_DeletePacketFilter;
-
-type record  PacketFilterIdentifier
-{
-  BIT4     identifier,
-  BIT2     direction,
-  BIT2     spare
-};
-
-
-type record of Parameter ParametersList;
-
-
-type record Parameter
-{
-  OCT1               parameterIdentifier,
-  LIN1               lengthIndicator,
-  octetstring        contents
-} with { variant (lengthIndicator) "LENGTHTO (contents)"};
-
-
-type record EPS_BearerLevel_TFT
-{
-  OCT1                         elementIdentifier,   // dec 84, '54'O;   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  TrafficFlowTemplateV         trafficFlowTemplateValue
-} with { 
-  variant (lengthIndicator) "LENGTHTO(trafficFlowTemplateValue)"
-  variant "PRESENCE (elementIdentifier = '54'O; )";  
-};
-
-type set of EPS_BearerLevel_TFT EPS_BearerLevel_TFT_List;
-
-//8.20
-type record TrafficAggregateDescription
-{
-  OCT1                         elementIdentifier,     // dec 85, '55'O; 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  octetstring                  trafficAggregateDescriptionValue          
-} with { 
-  variant (lengthIndicator) "LENGTHTO(trafficAggregateDescriptionValue)"
-  variant "PRESENCE (elementIdentifier = '55'O; )";  
-};
-
-//8.21
-type record UserLocationInfo
-{
-  OCT1                         elementIdentifier,   // dec 86, '56'O; 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT1                         cGI_Flag,
-  BIT1                         sAI_Flag,
-  BIT1                         rAI_Flag,
-  BIT1                         tAI_Flag,
-  BIT1                         eCGI_Flag, 
-  BIT1                         lAI_Flag, 
-  BIT2                         spare2,
-  CGI                          cGI optional,
-  SAI                          sAI optional,
-  RAI                          rAI optional,
-  TAI                          tAI optional,
-  ECGI                         eCGI optional,
-  LAI                          lAI optional,
-  octetstring                  additionalOctets  optional 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(cGI_Flag,sAI_Flag,rAI_Flag,tAI_Flag,eCGI_Flag,
-  lAI_Flag,spare2,cGI,sAI,rAI,tAI,eCGI,lAI,additionalOctets)"
-  variant(cGI)       "PRESENCE(cGI_Flag = '1'B)";
-  variant(sAI)       "PRESENCE(sAI_Flag = '1'B)";
-  variant(rAI)       "PRESENCE(rAI_Flag = '1'B)";
-  variant(tAI)       "PRESENCE(tAI_Flag = '1'B)";
-  variant(eCGI)      "PRESENCE(eCGI_Flag = '1'B)";
-  variant(lAI)       "PRESENCE(lAI_Flag = '1'B)";  
-  variant "PRESENCE (elementIdentifier = '56'O; )"   
-};
-
-//8.21.1
-type record CGI
-{  
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3, 
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  OCT2                         lAC,
-  OCT2                         cI
-};
-
-//8.21.2
-type record SAI
-{
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1, 
-  HEX1                         mncDigit2, 
-  OCT2                         lAC,
-  OCT2                         sAC  
-};
-
-//8.21.3
-type record RAI 
-{
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  OCT2                         lAC,
-  OCT2                         rAC  
-};  
-
-//8.21.4
-type record TAI
-{
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1, 
-  HEX1                         mncDigit2, 
-  OCT2                         tAC 
-};  
-
-//8.21.5
-type record ECGI
-{
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1, 
-  HEX1                         mncDigit2,
-  HEX1                         spare,                  
-  integer                      eCI    
-} with { 
-  variant (spare,eCI) "FIELDORDER(msb)";                  
-  variant(eCI) "FIELDLENGTH(28)";
-  variant (eCI) "BYTEORDER(last)";
-};  
-
-//8.21.6
-type record LAI
-{
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1, 
-  HEX1                         mncDigit2,
-  OCT2                         lAC
-}
-
-//8.22
-type record FullyQualifiedTEID
-{
-  OCT1                         elementIdentifier,   // dec 87, '57'O; 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      interfaceType, 
-  BIT1                         v6_Flag,
-  BIT1                         v4_Flag,
-  OCT4                         tEID_GRE_Key,
-  OCT4                         iPv4_Address optional,
-  OCT16                        iPv6_Address optional,
-  octetstring                  additionalOctets  optional    
-} with {   
-  variant "PRESENCE (elementIdentifier = '57'O; )" 
-  variant (lengthIndicator) "LENGTHTO(interfaceType,v6_Flag,v4_Flag,tEID_GRE_Key,
-  iPv4_Address,iPv6_Address,additionalOctets)" 
-  variant(interfaceType) "FIELDLENGTH(6)";
-  variant(iPv4_Address)  "PRESENCE(v4_Flag = '1'B)";
-  variant(iPv6_Address)  "PRESENCE(v6_Flag = '1'B)";
-}; 
-
-type set of FullyQualifiedTEID FullyQualifiedTEID_List;
-
-//8.23
-type record TMSI
-{
-  OCT1                         elementIdentifier,  // dec 88, '58'O;  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT4                         tMSI_Value 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(tMSI_Value)"; 
-  variant "PRESENCE (elementIdentifier = '58'O; )";
-};
-
-//8.24
-type record GlobalCN_ID
-{
-  OCT1                         elementIdentifier,  // dec 89, '59'O;  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3, 
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  octetstring                  cN_ID  
-} with { 
-  variant (lengthIndicator) "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3,mncDigit1,mncDigit2,cN_ID)"
-  variant "PRESENCE (elementIdentifier = '59'O; )";  
-};
-
-//8.25
-type record EPS_Bearer_ID
-{
-  integer   ePS_Bearer_ID_Value,
-  BIT4      spare    // '0000'B
-} with {
-  variant(ePS_Bearer_ID_Value) "FIELDLENGTH(4)";}
-
-type set of EPS_Bearer_ID EPS_Bearer_IDs;
-
-type record S103_PDF
-{
-  OCT1                         elementIdentifier,// dec 90, '5A'O; 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      hSGW_AddrForForwardingLength (4,16),
-  octetstring                  hSGW_AddrForForwarding length (4..16),
-  OCT4                         gRE_Key,
-  integer                      ePSBearerID_Number,
-  EPS_Bearer_IDs               ePS_Bearer_IDs  
-} with { 
-  variant (lengthIndicator) "LENGTHTO(hSGW_AddrForForwardingLength,hSGW_AddrForForwarding,gRE_Key,ePSBearerID_Number,ePS_Bearer_IDs)"; 
-  variant "PRESENCE (elementIdentifier = '5A'O; )";  
-  variant (hSGW_AddrForForwardingLength) "LENGTHTO(hSGW_AddrForForwarding)"; 
-  variant (ePSBearerID_Number) "LENGTHTO(ePS_Bearer_IDs)";
-  variant (ePSBearerID_Number) "UNIT (elements)";   
-};
-
-type set of S103_PDF S103_PDF_List
-
-//8.26
-type record S1_UDF
-{
-  OCT1                         elementIdentifier,  // dec 91, '5B'O; 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      ePS_Bearer_ID_Value,
-  BIT4                         spare2,    // '0000'B 
-  integer                      servingGWAddrLength (0,4,16),
-  octetstring                  servingGWAddr length (4..16) optional,    
-  OCT4                         servingGW_S1U_TEID    
-} with { 
-  variant (lengthIndicator) "LENGTHTO(ePS_Bearer_ID_Value,spare2,servingGWAddrLength,servingGWAddr,servingGW_S1U_TEID)";
-  variant "PRESENCE (elementIdentifier = '5B'O; )"; 
-  variant(ePS_Bearer_ID_Value) "FIELDLENGTH(4)";
-  variant (servingGWAddrLength) "LENGTHTO(servingGWAddr)";
-};
-
-type set of S1_UDF S1_UDF_List
-
-//8.27
-type record DelayValue
-{
-  OCT1                         elementIdentifier,   // dec 92 , '5C'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      delayValue, //(integer multiples of 50 millisec)
-  octetstring                  additionalOctets  optional 
-} 
-with { 
-  variant (lengthIndicator) "LENGTHTO(delayValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '5C'O; )";  
-};
-
-//8.28 - Grouped
-type set BearerContextIEs
-{
-  EPS_BearerID                     ePS_Bearer_ID optional,
-  Cause                            cause optional,
-  EPS_BearerLevel_TFT              ePS_Bearer_TFT optional,  
-  FullyQualifiedTEID_List          fullyQualifiedTEID optional, 
-  Bearer_QoS                       bearerLevel_QoS optional,
-  ChargingID                       chargingID optional,
-  BearerFlags                      bearerFlags optional,
-  TransactionIdentifier            transactionIdentifier optional,
-  ProtocolConfigOptions            protocolConfigOptions optional,
-  RAN_NASCause                     rAN_NASCause optional,
-  APCO                             additionalProtocolConfigOptions optional,
-  ExtendedProtocolConfigOptions    extendedProtocolConfigOptions optional
-}
-with { 
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)"; 
-};
-
-type record BearerContextGrouped
-{
-  OCT1                         elementIdentifier, // dec 93 , '5D'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,  
-  BIT4                         spare,
-  BearerContextIEs             bearerContextIEs
-} with { 
-  variant (lengthIndicator) "LENGTHTO(bearerContextIEs)"; 
-  variant "PRESENCE (elementIdentifier = '5D'O; )"; 
-};
-
-type set of BearerContextGrouped BearerContextGrouped_List;
-
-//8.29
-type record ChargingID
-{
-  OCT1                         elementIdentifier, // dec 94, '5E'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT4                         chargingID_Value,
-  octetstring                  additionalOctets  optional    
-} with { 
-  variant (lengthIndicator) "LENGTHTO(chargingID_Value,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '5E'O; )"; 
-};
-
-//8.30
-type record ChargingCharacteristics
-{
-  OCT1                         elementIdentifier, // dec 95, '5F'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT2                         chargingCharacteristicsValue,
-  octetstring                  additionalOctets  optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(chargingCharacteristicsValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '5F'O; )"; 
-};
-
-//8.31
-type record TraceInformation
-{
-  OCT1                         elementIdentifier, // dec 96, '60'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3, 
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  OCT3                         traceIDValue,
-  OCT9                         triggeringEvents,
-  OCT2                         listOfNE_Types,  
-  OCT1                         sessionTraceDepth, 
-  OCT12                        listOfInterfaces,
-  octetstring                  iPAddressOfTraceCollectionEntity 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3, mncDigit1,mncDigit2,
-  traceIDValue,triggeringEvents,listOfNE_Types,sessionTraceDepth,
-  listOfInterfaces,iPAddressOfTraceCollectionEntity)"; 
-  variant "PRESENCE (elementIdentifier = '60'O; )";        
-};
-
-//8.32
-type record BearerFlags
-{
-  OCT1                         elementIdentifier, // dec 97, '61'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT1                         pPC,
-  BIT1                         vB,
-  BIT1                          vind,
-  BIT1                          aSI,
-  BIT4                         spare2,
-  octetstring                  additionalOctets  optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pPC,vB,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '61'O; )"; 
-};
-
-//8.33
-//VOID
-
-//8.34
-type record PDN_Type
-{
-  OCT1                         elementIdentifier,   // dec 99, '63'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT3                         pDN_TypeValue,
-  BIT5                         spare2,
-  octetstring                  additionalOctets  optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pDN_TypeValue,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '63'O; )";  
-};
-
-//8.35
-type record ProcedureTransactionID
-{
-  OCT1                         elementIdentifier,  // dec 100, '64'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      pTI_Value,
-  octetstring                  additionalOctets  optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pTI_Value,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '64'O; )";      
-};
-
-//8.36 Void
-
-//8.37 Void
-
-//8.38
-type union MM_Context
-{
-  GSM_Key_and_Triplets                         gSM_Key_and_Triplets,
-  UMTS_Key_UsedCipher_and_Quintuplets          uMTS_Key_UsedCipher_and_Quintuplets,
-  GSM_Key_UsedCipher_and_Quintuplets           gSM_Key_UsedCipher_and_Quintuplets,
-  UMTS_key_and_Quintuplets                     uMTS_key_and_Quintuplets,
-  EPS_SecurityContext_and_Quadruplets          ePS_SecurityContext_and_Quadruplets,
-  UMTS_Key_Quadruplets_and_Quintuplets         uMTS_Key_Quadruplets_and_Quintuplets
-}
-
-type set of AuthTriplet AuthTriplets;
-
-type record AuthTriplet
-{
-  OCT16     rAND,
-  OCT4      sRES,
-  OCT8      kc
-};
-
-type set of AuthQuintuplet AuthQuintuplets;
-
-type record AuthQuintuplet { 
-  OCT16                     rand,
-  integer                   xresLength,
-  octetstring               xres,
-  OCT16                     ck,
-  OCT16                     ik,
-  integer                   autnLength,
-  octetstring               autn 
-} with {
-  variant (xresLength) "LENGTHTO(xres)";
-  variant (autnLength) "LENGTHTO(autn)"; 
-};
-
-type set of AuthQuadruplet AuthQuadruplets;
-
-type record AuthQuadruplet
-{
-  OCT16                     rand,
-  integer                   xresLength,
-  octetstring               xres,
-  integer                   autnLength,
-  octetstring               autn,
-  octetstring               k_asme length (32) 
-} with {
-  variant (xresLength) "LENGTHTO(xres)";
-  variant (autnLength) "LENGTHTO(autn)"; 
-};
-
-type record GSM_Key_and_Triplets
-{
-  OCT1                         elementIdentifier,  // dec 103, '67'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT3                         cksn,
-  BIT1                         dRXI,
-  BIT1                         spare2,
-  integer                      securityMode, 
-  BIT1                         sAMBRI,  
-  BIT1                         uAMBRI,
-  BIT3                         spare3,
-  integer                      noofTriplets, 
-  BIT3                         usedCipher,
-  BIT5                         spare4, 
-  OCT8                         kc, 
-  AuthTriplets                 triplets, 
-  OCT2                         drx_par optional,  
-  OCT4                         uplinkSubscribedUE_AMBR optional,
-  OCT4                         downlinkSubscribedUE_AMBR optional,
-  OCT4                         uplinkUsedUE_AMBR optional,
-  OCT4                         downlinkUsedUE_AMBR optional, 
-  integer                      lengthOfUE_NEtworkCapability,
-  octetstring                  uE_NEtworkCapability, 
-  integer                      lengthOfMS_NetworkCapability,
-  octetstring                  mS_NetworkCapability, 
-  integer                      lengthOfMobileEquipmentIdentity,
-  octetstring                  mobileEquipmentIdentity,
-  BIT1                         uNA,
-  BIT1                         gENA,
-  BIT1                         gANA,
-  BIT1                         iNA,
-  BIT1                         eNA,
-  BIT1                         hNNA,
-  BIT1                         nBNA,
-  BIT1                         spare5,  
-  integer                      lengthOfVoiceDomainPreferenceAndUEsUsageSetting optional, //"extendable" optional for backward compatibility
-  octetstring                  voiceDomainPreferenceAndUEsUsageSetting optional,         //"extendable" optional for backward compatibility
-  octetstring                  additionalOctets  optional                                //"extendable" optional for backward compatibility
-} with { 
-  variant (lengthIndicator) "LENGTHTO(cksn,dRXI,spare2,securityMode,sAMBRI,uAMBRI,spare3,noofTriplets,usedCipher,spare4, 
-  kc,triplets,drx_par,uplinkSubscribedUE_AMBR,downlinkSubscribedUE_AMBR,
-  uplinkUsedUE_AMBR,downlinkUsedUE_AMBR,lengthOfUE_NEtworkCapability,
-  uE_NEtworkCapability,lengthOfMS_NetworkCapability,mS_NetworkCapability,
-  lengthOfMobileEquipmentIdentity,mobileEquipmentIdentity,
-  uNA,gENA,gANA,iNA,eNA,hNNA,nBNA,spare5,
-  lengthOfVoiceDomainPreferenceAndUEsUsageSetting,
-  voiceDomainPreferenceAndUEsUsageSetting,
-  additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '67'O; )";   
-  variant (securityMode) "FIELDLENGTH(3)";  
-  variant (noofTriplets) "FIELDLENGTH(3)"; 
-  variant (noofTriplets) "LENGTHTO(triplets)";
-  variant (noofTriplets) "UNIT(elements)";  
-  variant (drx_par) "PRESENCE (dRXI = '1'B; )";  
-  variant (lengthOfUE_NEtworkCapability) "LENGTHTO(uE_NEtworkCapability)";  
-  variant (lengthOfMS_NetworkCapability) "LENGTHTO(mS_NetworkCapability)";  
-  variant (lengthOfMobileEquipmentIdentity) "LENGTHTO(mobileEquipmentIdentity)"; 
-  variant (lengthOfVoiceDomainPreferenceAndUEsUsageSetting) "LENGTHTO(voiceDomainPreferenceAndUEsUsageSetting)";  
-  variant (uplinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";  
-  variant (downlinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";    
-  variant (uplinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";  
-  variant (downlinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";           
-};
-
-type record UMTS_Key_UsedCipher_and_Quintuplets
-{
-  OCT1                         elementIdentifier,  // dec 104, '68'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT3                         cksn_ksi,
-  BIT1                         dRXI,
-  BIT1                         spare2,
-  integer                      securityMode, 
-  BIT1                         sAMBRI,
-  BIT1                         uAMBRI,
-  BIT1                         uGIPAI,
-  BIT1                         gUPII,
-  BIT1                         spare3,  
-  integer                      noofQuintuplets, 
-  BIT3                         usedCipher,
-  BIT3                         usedGPRSIntegrityProtectionAlgorithm,
-  BIT2                         spare4,  
-  OCT16                        ck,
-  OCT16                        ik, 
-  AuthQuintuplets              quintuplets, 
-  OCT2                         drx_par optional,    
-  OCT4                         uplinkSubscribedUE_AMBR optional,
-  OCT4                         downlinkSubscribedUE_AMBR optional,
-  OCT4                         uplinkUsedUE_AMBR optional,
-  OCT4                         downlinkUsedUE_AMBR optional, 
-  integer                      lengthOfUE_NEtworkCapability,
-  octetstring                  uE_NEtworkCapability, 
-  integer                      lengthOfMS_NetworkCapability,
-  octetstring                  mS_NetworkCapability, 
-  integer                      lengthOfMobileEquipmentIdentity,
-  octetstring                  mobileEquipmentIdentity,
-  BIT1                         uNA,
-  BIT1                         gENA,
-  BIT1                         gANA,
-  BIT1                         iNA,
-  BIT1                         eNA,
-  BIT1                         hNNA,
-  BIT1                         nBNA,
-  BIT1                         spare5,  
-  integer                      lengthOfVoiceDomainPreferenceAndUEsUsageSetting optional, //"extendable" optional for backward compatibility
-  octetstring                  voiceDomainPreferenceAndUEsUsageSetting optional,         //"extendable" optional for backward compatibility
-  integer                      lengthOfHigherBitratesThan16Mbpsflags optional,           //"extendable" optional for backward compatibility
-  octetstring                  higherBitratesThan16Mbpsflags optional,                   //"extendable" optional for backward compatibility
-  octetstring                  additionalOctets  optional                                //"extendable" optional for backward compatibility
-} with { 
-  variant (lengthIndicator) "LENGTHTO(cksn_ksi,dRXI,spare2,securityMode,sAMBRI,uAMBRI,uGIPAI,gUPII,spare3,noofQuintuplets, 
-  usedCipher,usedGPRSIntegrityProtectionAlgorithm,spare4,ck,ik,quintuplets,drx_par,uplinkSubscribedUE_AMBR,
-  downlinkSubscribedUE_AMBR,uplinkUsedUE_AMBR,downlinkUsedUE_AMBR, 
-  lengthOfUE_NEtworkCapability,uE_NEtworkCapability,lengthOfMS_NetworkCapability,
-  mS_NetworkCapability,lengthOfMobileEquipmentIdentity,mobileEquipmentIdentity,
-  uNA,gENA,gANA,iNA,eNA,hNNA,nBNA,spare5,
-  lengthOfVoiceDomainPreferenceAndUEsUsageSetting,
-  voiceDomainPreferenceAndUEsUsageSetting,
-  lengthOfHigherBitratesThan16Mbpsflags,
-  higherBitratesThan16Mbpsflags,
-  additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '68'O; )";   
-  variant (securityMode) "FIELDLENGTH(3)";  
-  variant (noofQuintuplets) "FIELDLENGTH(3)";
-  variant (noofQuintuplets) "LENGTHTO(quintuplets)";
-  variant (noofQuintuplets) "UNIT(elements)"; 
-  variant (drx_par) "PRESENCE (dRXI = '1'B; )";  
-  variant (lengthOfUE_NEtworkCapability) "LENGTHTO(uE_NEtworkCapability)";  
-  variant (lengthOfMS_NetworkCapability) "LENGTHTO(mS_NetworkCapability)";  
-  variant (lengthOfMobileEquipmentIdentity) "LENGTHTO(mobileEquipmentIdentity)"; 
-  variant (lengthOfVoiceDomainPreferenceAndUEsUsageSetting) "LENGTHTO(voiceDomainPreferenceAndUEsUsageSetting)";  
-  variant (lengthOfHigherBitratesThan16Mbpsflags) "LENGTHTO(higherBitratesThan16Mbpsflags)";  
-  variant (uplinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";  
-  variant (downlinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";    
-  variant (uplinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";  
-  variant (downlinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";       
-};
-
-type record GSM_Key_UsedCipher_and_Quintuplets
-{
-  OCT1                         elementIdentifier,  // dec 105, '69'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT3                         cksn_ksi,
-  BIT1                         dRXI,
-  BIT1                         spare2,
-  integer                      securityMode, 
-  BIT1                         sAMBRI,
-  BIT1                         uAMBRI,
-  BIT3                         spare3,  
-  integer                      noofQuintuplets,  
-  BIT3                         usedCipher,
-  BIT5                         spare4,  
-  OCT8                         kc, 
-  AuthQuintuplets              quintuplets, 
-  OCT2                         drx_par optional,     
-  OCT4                         uplinkSubscribedUE_AMBR optional,
-  OCT4                         downlinkSubscribedUE_AMBR optional,
-  OCT4                         uplinkUsedUE_AMBR optional,
-  OCT4                         downlinkUsedUE_AMBR optional, 
-  integer                      lengthOfUE_NEtworkCapability,
-  octetstring                  uE_NEtworkCapability, 
-  integer                      lengthOfMS_NetworkCapability,
-  octetstring                  mS_NetworkCapability, 
-  integer                      lengthOfMobileEquipmentIdentity,
-  octetstring                  mobileEquipmentIdentity,
-  BIT1                         uNA,
-  BIT1                         gENA,
-  BIT1                         gANA,
-  BIT1                         iNA,
-  BIT1                         eNA,
-  BIT1                         hNNA,
-  BIT1                         nBNA,
-  BIT1                         spare5,  
-  integer                      lengthOfVoiceDomainPreferenceAndUEsUsageSetting optional, //"extendable" optional for backward compatibility
-  octetstring                  voiceDomainPreferenceAndUEsUsageSetting optional,         //"extendable" optional for backward compatibility
-  integer                      lengthOfHigherBitratesThan16Mbpsflags optional,           //"extendable" optional for backward compatibility
-  octetstring                  higherBitratesThan16Mbpsflags optional,                   //"extendable" optional for backward compatibility
-  octetstring                  additionalOctets  optional                                //"extendable" optional for backward compatibility
-} with { 
-  variant (lengthIndicator) "LENGTHTO(cksn_ksi,dRXI,spare2,securityMode,sAMBRI,uAMBRI,spare3,  
-  noofQuintuplets,usedCipher,spare4,kc,quintuplets, 
-  drx_par,uplinkSubscribedUE_AMBR,downlinkSubscribedUE_AMBR,
-  uplinkUsedUE_AMBR,downlinkUsedUE_AMBR,lengthOfUE_NEtworkCapability,
-  uE_NEtworkCapability,lengthOfMS_NetworkCapability,mS_NetworkCapability, 
-  lengthOfMobileEquipmentIdentity,mobileEquipmentIdentity, 
-  uNA,gENA,gANA,iNA,eNA,hNNA,nBNA,spare5,
-  lengthOfVoiceDomainPreferenceAndUEsUsageSetting,
-  voiceDomainPreferenceAndUEsUsageSetting,
-  lengthOfHigherBitratesThan16Mbpsflags,
-  higherBitratesThan16Mbpsflags,
-  additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '69'O; )";   
-  variant (securityMode) "FIELDLENGTH(3)";  
-  variant (noofQuintuplets) "FIELDLENGTH(3)";
-  variant (noofQuintuplets) "LENGTHTO(quintuplets)";
-  variant (noofQuintuplets) "UNIT(elements)";
-  variant (drx_par) "PRESENCE (dRXI = '1'B; )";  
-  variant (lengthOfUE_NEtworkCapability) "LENGTHTO(uE_NEtworkCapability)";  
-  variant (lengthOfMS_NetworkCapability) "LENGTHTO(mS_NetworkCapability)";  
-  variant (lengthOfMobileEquipmentIdentity) "LENGTHTO(mobileEquipmentIdentity)"; 
-  variant (lengthOfVoiceDomainPreferenceAndUEsUsageSetting) "LENGTHTO(voiceDomainPreferenceAndUEsUsageSetting)";  
-  variant (lengthOfHigherBitratesThan16Mbpsflags) "LENGTHTO(higherBitratesThan16Mbpsflags)";  
-  variant (uplinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";  
-  variant (downlinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";    
-  variant (uplinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";  
-  variant (downlinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";         
-};
-
-type record UMTS_key_and_Quintuplets
-{
-  OCT1                         elementIdentifier,  // dec 106, '6A'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT3                         ksi,
-  BIT1                         dRXI,
-  BIT1                         spare2,
-  integer                      securityMode, 
-  BIT1                         sAMBRI,
-  BIT1                         uAMBRI,   
-  BIT1                         uGIPAI,   
-  BIT1                         gUPII,   
-  BIT1                         spare3,  
-  integer                      noofQuintuplets, 
-  BIT3                         usedGPRSIntegrityProtectionAlgorithm, 
-  BIT5                         spare4, 
-  OCT16                        ck,
-  OCT16                        ik,
-  AuthQuintuplets              quintuplets,     
-  OCT2                         drx_par optional,     
-  OCT4                         uplinkSubscribedUE_AMBR optional,
-  OCT4                         downlinkSubscribedUE_AMBR optional,
-  OCT4                         uplinkUsedUE_AMBR optional,
-  OCT4                         downlinkUsedUE_AMBR optional, 
-  integer                      lengthOfUE_NEtworkCapability,
-  octetstring                  uE_NEtworkCapability, 
-  integer                      lengthOfMS_NetworkCapability,
-  octetstring                  mS_NetworkCapability, 
-  integer                      lengthOfMobileEquipmentIdentity,
-  octetstring                  mobileEquipmentIdentity,
-  BIT1                         uNA,
-  BIT1                         gENA,
-  BIT1                         gANA,
-  BIT1                         iNA,
-  BIT1                         eNA,
-  BIT1                         hNNA,
-  BIT1                         nBNA,
-  BIT1                         spare5,  
-  integer                      lengthOfVoiceDomainPreferenceAndUEsUsageSetting optional, //"extendable" optional for backward compatibility
-  octetstring                  voiceDomainPreferenceAndUEsUsageSetting optional,         //"extendable" optional for backward compatibility
-  integer                      lengthOfHigherBitratesThan16Mbpsflags optional,           //"extendable" optional for backward compatibility
-  octetstring                  higherBitratesThan16Mbpsflags optional,                   //"extendable" optional for backward compatibility
-  octetstring                  additionalOctets  optional                                //"extendable" optional for backward compatibility
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(ksi,dRXI,spare2,securityMode,sAMBRI,uAMBRI,uGIPAI,gUPII,spare3,  
-  noofQuintuplets,usedGPRSIntegrityProtectionAlgorithm,spare4,ck,ik,quintuplets,     
-  drx_par,uplinkSubscribedUE_AMBR,downlinkSubscribedUE_AMBR,
-  uplinkUsedUE_AMBR,downlinkUsedUE_AMBR,lengthOfUE_NEtworkCapability,
-  uE_NEtworkCapability,lengthOfMS_NetworkCapability,mS_NetworkCapability, 
-  lengthOfMobileEquipmentIdentity,mobileEquipmentIdentity,
-  uNA,gENA,gANA,iNA,eNA,hNNA,nBNA,spare5,
-  lengthOfVoiceDomainPreferenceAndUEsUsageSetting,
-  voiceDomainPreferenceAndUEsUsageSetting,
-  lengthOfHigherBitratesThan16Mbpsflags,
-  higherBitratesThan16Mbpsflags,
-  additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '6A'O; )";   
-  variant (securityMode) "FIELDLENGTH(3)";  
-  variant (noofQuintuplets) "FIELDLENGTH(3)";
-  variant (noofQuintuplets) "LENGTHTO(quintuplets)";
-  variant (noofQuintuplets) "UNIT(elements)"; 
-  variant (drx_par) "PRESENCE (dRXI = '1'B; )";  
-  variant (lengthOfUE_NEtworkCapability) "LENGTHTO(uE_NEtworkCapability)";  
-  variant (lengthOfMS_NetworkCapability) "LENGTHTO(mS_NetworkCapability)";  
-  variant (lengthOfMobileEquipmentIdentity) "LENGTHTO(mobileEquipmentIdentity)";
-  variant (lengthOfVoiceDomainPreferenceAndUEsUsageSetting) "LENGTHTO(voiceDomainPreferenceAndUEsUsageSetting)";  
-  variant (lengthOfHigherBitratesThan16Mbpsflags) "LENGTHTO(higherBitratesThan16Mbpsflags)";  
-  variant (uplinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";  
-  variant (downlinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";    
-  variant (uplinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";  
-  variant (downlinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";             
-};
-
-
-type record OldEPS_SecurityContext
-{
-  BIT3                         oldNCC,
-  BIT3                         oldKSI,
-  BIT1                         spare,
-  BIT1                         nHI_old,
-  octetstring                  old_K_asme length (32), 
-  octetstring                  old_NH length (32) optional 
-} with { 
-  variant (old_NH)  "PRESENCE(nHI_old = '1'B )"; 
-};
-
-type record EPS_SecurityContext_and_Quadruplets
-{
-  OCT1                         elementIdentifier,  // dec 107, '6B'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT3                         ksi_asme,
-  BIT1                         dRXI,
-  BIT1                         nHI,
-  integer                      securityMode,  
-  BIT1                         osci,
-  BIT1                         uAMBRI,      
-  integer                      noofQuadruplets, 
-  integer                      noofQuintuplets, 
-  BIT4                         usedNAS_Cipher,
-  BIT3                         usedNAS_IntegrityAlgorithm,
-  BIT1                         sAMBRI,
-  integer                      nAS_DownlinkCount,
-  integer                      nAS_UplinkCount,
-  octetstring                  k_asme length (32), 
-  AuthQuadruplets              quadruplets,   
-  AuthQuintuplets              quintuplets,
-  OCT2                         drx_par optional, 
-  octetstring                  nH length (32) optional, 
-  BIT3                         nCC optional, 
-  BIT5                         spare4 optional,   
-  OCT4                         uplinkSubscribedUE_AMBR optional,
-  OCT4                         downlinkSubscribedUE_AMBR optional,
-  OCT4                         uplinkUsedUE_AMBR optional,
-  OCT4                         downlinkUsedUE_AMBR optional, 
-  integer                      lengthOfUE_NEtworkCapability,
-  octetstring                  uE_NEtworkCapability, 
-  integer                      lengthOfMS_NetworkCapability,
-  octetstring                  mS_NetworkCapability, 
-  integer                      lengthOfMobileEquipmentIdentity,
-  octetstring                  mobileEquipmentIdentity, 
-  BIT1                         uNA,
-  BIT1                         gENA,
-  BIT1                         gANA,
-  BIT1                         iNA,
-  BIT1                         eNA,
-  BIT1                         hNNA,
-  BIT1                         nBNA,
-  BIT1                         spare5, 
-  OldEPS_SecurityContext       oldEPS_SecurityContext optional,               
-  integer                      lengthOfVoiceDomainPreferenceAndUEsUsageSetting optional, //"extendable" optional for backward compatibility
-  octetstring                  voiceDomainPreferenceAndUEsUsageSetting optional,         //"extendable" optional for backward compatibility
-  LIN2_BO_LAST                 lengthOfUERadioCapabilityforPagingInformation optional,   //"extendable" optional for backward compatibility
-  octetstring                  uERadioCapabilityforPagingInformation optional,           //"extendable" optional for backward compatibility
-  octetstring                  additionalOctets  optional                                //"extendable" optional for backward compatibility   
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(ksi_asme,dRXI,nHI,securityMode,osci,uAMBRI,noofQuadruplets, 
-  noofQuintuplets,usedNAS_Cipher,usedNAS_IntegrityAlgorithm,sAMBRI,
-  nAS_DownlinkCount,nAS_UplinkCount,k_asme, 
-  quadruplets,quintuplets,drx_par,nH,nCC,spare4, 
-  uplinkSubscribedUE_AMBR,downlinkSubscribedUE_AMBR,
-  uplinkUsedUE_AMBR,downlinkUsedUE_AMBR,lengthOfUE_NEtworkCapability,
-  uE_NEtworkCapability,lengthOfMS_NetworkCapability,mS_NetworkCapability, 
-  lengthOfMobileEquipmentIdentity,mobileEquipmentIdentity,
-  uNA,gENA,gANA,iNA,eNA,hNNA,nBNA,spare5,
-  oldEPS_SecurityContext, 
-  lengthOfVoiceDomainPreferenceAndUEsUsageSetting,
-  voiceDomainPreferenceAndUEsUsageSetting,
-  lengthOfUERadioCapabilityforPagingInformation,
-  uERadioCapabilityforPagingInformation,
-  additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '6B'O; )";   
-  variant (securityMode) "FIELDLENGTH(3)";  
-  variant (noofQuadruplets) "FIELDLENGTH(3)";
-  variant (noofQuadruplets) "LENGTHTO(quadruplets)";
-  variant (noofQuadruplets) "UNIT(elements)";      
-  variant (noofQuintuplets) "FIELDLENGTH(3)";
-  variant (noofQuintuplets) "LENGTHTO(quintuplets)";
-  variant (noofQuintuplets) "UNIT(elements)";      
-  variant (nAS_DownlinkCount)  "FIELDLENGTH(24)";
-  variant (nAS_DownlinkCount) "BYTEORDER(last)";     
-  variant (nAS_UplinkCount) "FIELDLENGTH(24)"; 
-  variant (nAS_UplinkCount) "BYTEORDER(last)";       
-  variant (lengthOfUE_NEtworkCapability) "LENGTHTO(uE_NEtworkCapability)";  
-  variant (lengthOfMS_NetworkCapability) "LENGTHTO(mS_NetworkCapability)";  
-  variant (lengthOfMobileEquipmentIdentity) "LENGTHTO(mobileEquipmentIdentity)";
-  variant (lengthOfVoiceDomainPreferenceAndUEsUsageSetting) "LENGTHTO(voiceDomainPreferenceAndUEsUsageSetting)";  
-  variant (lengthOfUERadioCapabilityforPagingInformation) "LENGTHTO(uERadioCapabilityforPagingInformation)";  
-  variant (drx_par) "PRESENCE(dRXI = '1'B)";
-  variant (nH)      "PRESENCE(nHI = '1'B)";
-  variant (nCC)     "PRESENCE(nHI = '1'B)";
-  variant (spare4)  "PRESENCE(nHI = '1'B)";   
-  variant (uplinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";  
-  variant (downlinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";    
-  variant (uplinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";  
-  variant (downlinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";      
-  variant (oldEPS_SecurityContext)  "PRESENCE(osci = '1'B )";                   
-}; 
-
-type record UMTS_Key_Quadruplets_and_Quintuplets
-{
-  OCT1                         elementIdentifier,   // dec 108, '6C'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT3                         ksi_asme,
-  BIT1                         dRXI,
-  BIT1                         spare2,
-  integer                      securityMode, 
-  BIT1                         sAMBRI,
-  BIT1                         uAMBRI,
-  integer                      noofQuadruplets, 
-  integer                      noofQuintuplets,
-  OCT1                         spare4, 
-  OCT16                        ck,
-  OCT16                        ik,
-  AuthQuadruplets              quadruplets,   
-  AuthQuintuplets              quintuplets,  
-  OCT2                         drx_par optional,  
-  OCT4                         uplinkSubscribedUE_AMBR optional,
-  OCT4                         downlinkSubscribedUE_AMBR optional,
-  OCT4                         uplinkUsedUE_AMBR optional,
-  OCT4                         downlinkUsedUE_AMBR optional, 
-  integer                      lengthOfUE_NEtworkCapability,
-  octetstring                  uE_NEtworkCapability, 
-  integer                      lengthOfMS_NetworkCapability,
-  octetstring                  mS_NetworkCapability, 
-  integer                      lengthOfMobileEquipmentIdentity,
-  octetstring                  mobileEquipmentIdentity, 
-  BIT1                         uNA,
-  BIT1                         gENA,
-  BIT1                         gANA,
-  BIT1                         iNA,
-  BIT1                         eNA,
-  BIT1                         hNNA,
-  BIT1                         nBNA,
-  BIT1                         spare5,  
-  integer                      lengthOfVoiceDomainPreferenceAndUEsUsageSetting optional,  //"extendable" optional for backward compatibility
-  octetstring                  voiceDomainPreferenceAndUEsUsageSetting optional,          //"extendable" optional for backward compatibility
-  octetstring                  additionalOctets  optional                                 //"extendable" optional for backward compatibility 
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(ksi_asme,dRXI,spare2,securityMode,sAMBRI,uAMBRI, 
-  noofQuadruplets,noofQuintuplets,spare4,ck,
-  ik,quadruplets,quintuplets,drx_par,uplinkSubscribedUE_AMBR,
-  downlinkSubscribedUE_AMBR,uplinkUsedUE_AMBR,downlinkUsedUE_AMBR, 
-  lengthOfUE_NEtworkCapability,uE_NEtworkCapability, 
-  lengthOfMS_NetworkCapability,mS_NetworkCapability, 
-  lengthOfMobileEquipmentIdentity,mobileEquipmentIdentity,
-  uNA,gENA,gANA,iNA,eNA,hNNA,nBNA,spare5,
-  lengthOfVoiceDomainPreferenceAndUEsUsageSetting,
-  voiceDomainPreferenceAndUEsUsageSetting,
-  additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '6C'O; )";   
-  variant (securityMode) "FIELDLENGTH(3)";  
-  variant (noofQuadruplets) "FIELDLENGTH(3)";
-  variant (noofQuadruplets) "LENGTHTO(quadruplets)";
-  variant (noofQuadruplets) "UNIT(elements)";      
-  variant (noofQuintuplets) "FIELDLENGTH(3)";
-  variant (noofQuintuplets) "LENGTHTO(quintuplets)";
-  variant (noofQuintuplets) "UNIT(elements)";
-  variant (drx_par) "PRESENCE (dRXI = '1'B; )";
-  variant (lengthOfUE_NEtworkCapability) "LENGTHTO(uE_NEtworkCapability)";  
-  variant (lengthOfMS_NetworkCapability) "LENGTHTO(mS_NetworkCapability)";  
-  variant (lengthOfMobileEquipmentIdentity) "LENGTHTO(mobileEquipmentIdentity)";
-  variant (lengthOfVoiceDomainPreferenceAndUEsUsageSetting) "LENGTHTO(voiceDomainPreferenceAndUEsUsageSetting)";  
-  variant (uplinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";  
-  variant (downlinkSubscribedUE_AMBR) "PRESENCE (sAMBRI = '1'B; )";    
-  variant (uplinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )";  
-  variant (downlinkUsedUE_AMBR) "PRESENCE (uAMBRI = '1'B; )"; 
-};   
-
-//8.39
-type set PDN_Conn_BearerContext_IEs
-{
-  EPS_BearerID                ePS_BearerID optional,
-  EPS_BearerLevel_TFT         ePS_Bearer_TFT optional, 
-  FullyQualifiedTEID_List     fullyQualifiedTEID optional, 
-  Bearer_QoS                  bearerLevel_QoS optional,
-  FullyQualifiedContainer     container optional, 
-  TransactionIdentifier       transactionIdentifier optional,
-  BearerFlags                 bearerFlags optional 
-}with {         
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)";
-};         
-
-type record PDN_Conn_BearerContext
-{
-  OCT1                         elementIdentifier,// dec 93, '5D'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,  
-  PDN_Conn_BearerContext_IEs   bearerContext_IEs
-} with { 
-  variant (lengthIndicator) "LENGTHTO(bearerContext_IEs)"; 
-  variant "PRESENCE (elementIdentifier = '5D'O; )";      
-};
-
-type set of PDN_Conn_BearerContext PDN_Conn_BearerContext_List
-
-type set PDN_Connection_IEs
-{
-  AccessPointName             accessPointName optional,
-  IP_Address_List             iP_Address optional,
-  EPS_BearerID                linkedEPS_Bearer_ID optional,
-  FullyQualifiedTEID          fullyQualifiedTEID optional,  
-  FullyQualifiedDomainName_List fullyQualifiedDomainName optional,
-  PDN_Conn_BearerContext_List bearerContexts optional, 
-  AggregateMaximumBitRate     apn_ambr optional,
-  ChargingCharacteristics     chargingCharacteristics optional,
-  APN_Restriction             aPN_Restriction optional,
-  SelectionMode               selectionMode optional,
-  ChangeReportingAction       changeReportingAction optional,
-  CSG_InformationReportingAction cSG_InformationReportingAction optional,
-  HeNBInformationReporting    heNBInformationReporting optional,
-  Indication                  indicationFlags optional,
-  SignallingPriorityIndication signallingPriorityIndication optional,
-  ChangeToReportFlags	        changeToReportFlags optional,
-  PresenceReportingAreaAction presenceReportingAreaAction optional,
-  WLANOffloadabilityIndication wLANOffloadabilityIndication optional,
-  RemoteUEContextGrouped       remoteUEContext optional,
-  PDN_Type                     pDN_Type optional,
-  HeaderCompressionConfiguration headerCompressionConfiguration optional
-} with { 
-  variant(iP_Address) "REPEATABLE(yes)";
-  variant(fullyQualifiedDomainName) "REPEATABLE(yes)";
-  variant(bearerContexts) "REPEATABLE(yes)"  
-};    
-
-type record PDN_ConnectionGrouped
-{
-  OCT1                         elementIdentifier,  // dec 109, '6D'O   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,  
-  PDN_Connection_IEs           pDN_Connection_IEs
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pDN_Connection_IEs)";
-  variant "PRESENCE (elementIdentifier = '6D'O; )";      
-};         
-
-type set of PDN_ConnectionGrouped PDN_ConnectionGrouped_List    
-
-//8.40
-type record PDU_Numbers
-{
-  OCT1                         elementIdentifier,  // dec 110, '6E'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,  
-  BIT4                         nSAPI,
-  BIT4                         spare2,
-  integer                      dL_GTPU_SeqNumber, 
-  integer                      uL_GTPU_SeqNumber,
-  integer                      send_NPDU_Number,
-  integer                      receive_NPDU_Number, 
-  octetstring                  additionalOctets  optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(nSAPI,spare2,dL_GTPU_SeqNumber, 
-  uL_GTPU_SeqNumber,send_NPDU_Number,
-  receive_NPDU_Number,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '6E'O;)"; 
-  variant (dL_GTPU_SeqNumber) "FIELDLENGTH(16)";
-  variant (dL_GTPU_SeqNumber) "BYTEORDER(last)";  
-  variant (uL_GTPU_SeqNumber) "FIELDLENGTH(16)"; 
-  variant (uL_GTPU_SeqNumber) "BYTEORDER(last)";
-  variant (send_NPDU_Number) "FIELDLENGTH(16)";
-  variant (send_NPDU_Number) "BYTEORDER(last)";   
-  variant (receive_NPDU_Number) "FIELDLENGTH(16)"; 
-  variant (receive_NPDU_Number) "BYTEORDER(last)";         
-};
-
-//8.41
-type record Packet_TMSI
-{
-  OCT1                         elementIdentifier, // dec 111, '6F'O   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,  
-  OCT4                         pTMSI_Value
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pTMSI_Value)"; 
-  variant "PRESENCE (elementIdentifier = '6F'O; )";      
-};
-
-
-//8.42
-type record P_TMSI_Signature
-{
-  OCT1                         elementIdentifier, // dec 112, '70'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,  
-  OCT3                         p_TMSI_SignatureValue     
-} with { 
-  variant (lengthIndicator) "LENGTHTO(p_TMSI_SignatureValue)"; 
-  variant "PRESENCE (elementIdentifier = '70'O; )";      
-};
-
-//8.43
-type record Hop_Counter
-{
-  OCT1                         elementIdentifier,  //dec 113, '71'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,   
-  integer                      hopCounterValue,
-  octetstring                  additionalOctets  optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(hopCounterValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '71'O; )";      
-}; 
-
-//8.44
-type record UE_TimeZone
-{
-  OCT1                         elementIdentifier,  //dec 114, '72'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,   
-  OCT1                         timeZone,
-  BIT2                         daylightSavingTime,
-  BIT6                         spare2,
-  octetstring                  additionalOctets  optional 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(timeZone,daylightSavingTime,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '72'O; )";      
-}; 
-
-//8.45
-type record TraceReference
-{
-  OCT1                         elementIdentifier,  //dec 115, '73'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,   
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3, 
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  OCT3                         traceID_Value
-} with { 
-  variant (lengthIndicator) "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3,
-  mncDigit1,mncDigit2,traceID_Value)"; 
-  variant "PRESENCE (elementIdentifier = '73'O; )";      
-};
-
-//8.46
-type record CompleteRequestMessage 
-{ 
-  OCT1                         elementIdentifier,   //dec 116, '74'O   
-  LIN2_BO_LAST                 lengthIndicator, 
-  BIT4                         instance,
-  BIT4                         spare,    
-  integer                      completeRequestMessageType, 
-  octetstring                  completeRequestMessageValue 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(completeRequestMessageType,completeRequestMessageValue)"; 
-  variant "PRESENCE (elementIdentifier = '74'O; )";      
-}; 
-
-//8.47
-type record GUTI
-{
-  OCT1                         elementIdentifier,   //dec 117, '75'O    
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,    
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3, 
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  OCT2                         mME_GroupID,
-  OCT1                         mME_Code,
-  octetstring                  m_TMSI
-} with { 
-  variant (lengthIndicator) "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,mncDigit3, 
-  mncDigit1,mncDigit2,mME_GroupID,mME_Code,m_TMSI
-  )"; 
-  variant "PRESENCE (elementIdentifier = '75'O; )";        
-};
-
-//8.48
-type record FullyQualifiedContainer
-{
-  OCT1                         elementIdentifier,   //dec 118, '76'O     
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      containerType,
-  BIT4                         spare2,
-  F_ContainerField             f_ContainerField
-} with { 
-  variant (lengthIndicator) "LENGTHTO(containerType,spare2,f_ContainerField)"; 
-  variant "PRESENCE (elementIdentifier = '76'O; )"; 
-  variant (containerType) "FIELDLENGTH(4)";            
-  variant (f_ContainerField) "CROSSTAG(
-  uTRAN_TransparentContainer,    containerType = 1;
-  bSS_Container,                 containerType = 2; 
-  eUTRAN_TransparentContainer,   containerType = 3; 
-  nBIFOM_Container,              containerType = 4;
-  )";  
-};
-
-type union F_ContainerField
-{
-  BSS_Container_union bSS_Container,
-  octetstring uTRAN_TransparentContainer,
-  octetstring eUTRAN_TransparentContainer,
-  octetstring nBIFOM_Container
-}
-
-type set of FullyQualifiedContainer FullyQualifiedContainer_List;
-
-type union BSS_Container_union {
-  BSS_Container bSS_Container_structured,
-  octetstring bSS_Container_octet
-}
-
-//8.48-2
-type record BSS_Container
-{
-  BIT1    pFI,
-  BIT1    rP,
-  BIT1    sAPIflag,
-  BIT1    pHX,
-  BIT4    spare,
-  OCT1    packetFlowID optional,
-  BIT3    radioPriority optional,
-  BIT1    spare2 optional,
-  BIT4    sAPI optional,
-  integer xiDparametersLength optional,
-  octetstring xiDparameters optional
-} with {
-  variant "PRESENCE (spare = '0000'B; )";
-  variant (xiDparametersLength) "LENGTHTO(xiDparameters)"; 
-  variant (packetFlowID) "PRESENCE (pFI = '1'B; )";  
-  variant (radioPriority) "PRESENCE (rP = '1'B; )";  
-  variant (sAPI) "PRESENCE (sAPIflag = '1'B; )";  
-  variant (xiDparametersLength) "PRESENCE (pHX = '1'B; )";  
-  variant (xiDparameters) "PRESENCE (pHX = '1'B; )";  
-};
-
-//8.49
-type record FullyQualifiedCause
-{
-  OCT1                         elementIdentifier,   //dec 119, '77'O      
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT4                         causeType,
-  BIT4                         spare2,   
-  octetstring                  f_CauseFieldValue
-} with { 
-  variant (lengthIndicator) "LENGTHTO(causeType,spare2,f_CauseFieldValue)"; 
-  variant "PRESENCE (elementIdentifier = '77'O; )";            
-};
-
-type set of FullyQualifiedCause FullyQualifiedCause_List;
-
-//8.50
-type record PLMN_ID
-{
-  OCT1                         elementIdentifier,  //dec 120, '78'O    
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  OCT3                         pLMN_IdentityValue   
-}with { 
-  variant (lengthIndicator) "LENGTHTO(pLMN_IdentityValue)"; 
-  variant "PRESENCE (elementIdentifier = '78'O; )";            
-};
-
-//8.51
-type record TargetIdentification
-{
-  OCT1                         elementIdentifier,  //dec 121, '79'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  integer                      targetType,
-  TargetId                     targetID
-} with { 
-  variant (lengthIndicator) "LENGTHTO(targetType,targetID)";
-  variant "PRESENCE (elementIdentifier = '79'O; )";
-  variant (targetID) "CROSSTAG( rnc_ID, targetType = 0;
-  macro_eNodeB_ID, targetType = 1;
-  cell_ID, targetType = 2;
-  home_eNodeB_ID, targetType = 3;
-  unknown, OTHERWISE)"
-};
-
-type union TargetId {
-  RNC_ID rnc_ID,
-  Macro_eNodeB_ID macro_eNodeB_ID,
-  Cell_ID cell_ID,
-  Home_eNodeB_ID home_eNodeB_ID, 
-  octetstring unknown
-}
-
-type octetstring RNC_ID;
-type octetstring Cell_ID;
-
-type record Macro_eNodeB_ID {
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  BIT4                         spare2,
-  bitstring                    targetID length(20),
-  OCT2                         tac
-} with { 
-  variant (spare2,targetID) "FIELDORDER(msb)";
-  variant (targetID) "BYTEORDER(last)";
-}
-
-type record Home_eNodeB_ID {
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  BIT4                         spare2,
-  bitstring                    targetID length(28),
-  OCT2                         tac
-} with { 
-  variant (spare2,targetID) "FIELDORDER(msb)";
-  variant (targetID) "BYTEORDER(last)";
-}
-
-// In Presence Reporting Area Action it shall be encoded as per octets 6 to 11 of the Target ID 
-type record Macro_eNodeB_ID_spec {
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  BIT4                         spare2,
-  bitstring                    targetID length(20)
-} with { 
-  variant (spare2,targetID) "FIELDORDER(msb)";
-  variant (targetID) "BYTEORDER(last)";
-}
-
-// In Presence Reporting Area Action it shall be encoded as per octets 6 to 11 of the Target ID 
-type record Home_eNodeB_ID_spec {
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  BIT4                         spare2,
-  bitstring                    targetID length(28)
-} with { 
-  variant (spare2,targetID) "FIELDORDER(msb)";
-  variant (targetID) "BYTEORDER(last)";
-}
-
-//8.52
-//VOID
-
-//8.53
-type record PacketFlowID
-{
-  OCT1                         elementIdentifier,  // dec 123, '7B'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT4                         eBI,
-  BIT4                         spare2,
-  octetstring                  packetFlowIDValue
-} with { 
-  variant (lengthIndicator) "LENGTHTO(eBI,spare2,packetFlowIDValue)"; 
-  variant "PRESENCE (elementIdentifier = '7B'O;)";            
-};
-
-//8.54
-type record RAB_Context
-{
-  OCT1                         elementIdentifier,  // dec 124, '7C'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,   
-  BIT4                         nSAPI,
-  BIT4                         spare2,
-  integer                      dL_GTPU_SeqNumber,
-  integer                      uL_GTPU_SeqNumber,
-  integer                      dL_PDCP_SeqNumber,
-  integer                      uL_PDCP_SeqNumber
-}with { 
-  variant (lengthIndicator) "LENGTHTO(nSAPI,spare2,dL_GTPU_SeqNumber,uL_GTPU_SeqNumber,dL_PDCP_SeqNumber,uL_PDCP_SeqNumber)"; 
-  variant "PRESENCE (elementIdentifier = '7C'O;)"; 
-  variant (dL_GTPU_SeqNumber) "FIELDLENGTH(16)"; 
-  variant (dL_GTPU_SeqNumber) "BYTEORDER(last)";   
-  variant (uL_GTPU_SeqNumber) "FIELDLENGTH(16)";
-  variant (uL_GTPU_SeqNumber) "BYTEORDER(last)";    
-  variant (dL_PDCP_SeqNumber) "FIELDLENGTH(16)";  
-  variant (dL_PDCP_SeqNumber) "BYTEORDER(last)";   
-  variant (uL_PDCP_SeqNumber) "FIELDLENGTH(16)"; 
-  variant (uL_PDCP_SeqNumber) "BYTEORDER(last)";                 
-};
-
-type set of RAB_Context RAB_Context_List
-
-//8.55
-type record Source_RNC_PDCP_Context_Info
-{
-  OCT1                         elementIdentifier,  // dec 125, '7D'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  octetstring                  rRC_ContainerValue
-} with { 
-  variant (lengthIndicator) "LENGTHTO(rRC_ContainerValue)"; 
-  variant "PRESENCE (elementIdentifier = '7D'O;)";            
-};
-
-//8.56
-type record PortNumber
-{
-  OCT1                         elementIdentifier, // dec 126, '7E'O   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  integer                      PortNumberValue,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(PortNumberValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '7E'O;)";
-  variant (PortNumberValue) "FIELDLENGTH(16)"; 
-  variant (PortNumberValue) "BYTEORDER(last)";              
-};
-
-type set of PortNumber PortNumber_List
-
-//8.57
-type record APN_Restriction
-{
-  OCT1                         elementIdentifier,  // dec 127, '7F'O   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  integer                      restrictionTypeValue,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(restrictionTypeValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '7F'O;)";            
-};
-
-//8.58
-type record SelectionMode
-{
-  OCT1                         elementIdentifier,   // dec 128, '80'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  integer                      selectionModeValue,
-  BIT6                         spare2,
-  octetstring                  additionalOctets optional 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(selectionModeValue,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '80'O;)"; 
-  variant (selectionModeValue) "FIELDLENGTH(2)";              
-};
-
-//8.59
-type record SourceIdentification
-{
-  OCT1                         elementIdentifier,   // dec 129, '81'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  OCT8                         targetCellID,
-  OCT1                         sourceType,
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  BIT4                         spare2,
-  bitstring                    sourceID length(20),
-  OCT2                         tac
-} with { 
-  variant (lengthIndicator) "LENGTHTO(targetCellID,sourceType,mccDigit1,mccDigit2,mccDigit3,
-  mncDigit3,mncDigit1,mncDigit2,spare2,
-  sourceID,tac)"; 
-  variant "PRESENCE (elementIdentifier = '81'O;)";
-  variant (spare2,sourceID) "FIELDORDER(msb)";
-  variant (sourceID) "BYTEORDER(last)";
-};   
-
-//8.60
-//VOID
-
-//8.61
-type record ChangeReportingAction
-{
-  OCT1                         elementIdentifier, // dec 131, '83'O   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  octetstring                  actionValue
-} with { 
-  variant (lengthIndicator) "LENGTHTO(actionValue)"; 
-  variant "PRESENCE (elementIdentifier = '83'O;)";            
-};
-
-//8.62
-type set of OCT2 PDN_CSID_List;
-
-type union NodeID
-{
-  OCT4       globalUnicastIPv4,
-  OCT16      globalUnicastIPv6,
-  OCT4       fourOctets
-};
-
-type record FullyQualifiedPDN_ConnectionSetID   //FQ CSID
-{
-  OCT1                         elementIdentifier, // dec 132, '84'O 
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  integer                      nRofCSIDs,
-  integer                      nodeIDType,
-  NodeID                       nodeID,
-  PDN_CSID_List                pDN_CSID_List,
-  octetstring                  additionalOctets optional 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(nRofCSIDs,nodeIDType,nodeID,pDN_CSID_List,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '84'O;)";    
-  variant (nRofCSIDs) "FIELDLENGTH(4)"; 
-  variant (nRofCSIDs) "LENGTHTO(pDN_CSID_List)"; 
-  variant (nRofCSIDs) "UNIT(elements)";    
-  variant (nodeIDType) "FIELDLENGTH(4)";
-  variant (nodeID) "CROSSTAG(
-  globalUnicastIPv4,     nodeIDType = 0;
-  globalUnicastIPv6,     nodeIDType = 1; 
-  fourOctets,            nodeIDType = 2; 
-  )";  
-};
-
-type set of FullyQualifiedPDN_ConnectionSetID FullyQualifiedPDN_ConnectionSetID_List;
-
-//8.63
-type record ChannelNeeded
-{
-  OCT1                         elementIdentifier, // dec 133, '85'O  
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  octetstring                  channelNeededValue
-} with { 
-  variant (lengthIndicator) "LENGTHTO(channelNeededValue)"; 
-  variant "PRESENCE (elementIdentifier = '85'O;)";            
-};
-
-//8.64
-type record EMLPP_Priority
-{
-  OCT1                         elementIdentifier, // dec 134, '86'O   
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  octetstring                  eMLPP_PriorityValue               
-}with { 
-  variant (lengthIndicator) "LENGTHTO(eMLPP_PriorityValue)"; 
-  variant "PRESENCE (elementIdentifier = '86'O;)";            
-};
-
-//8.65
-type record NodeType
-{
-  OCT1                         elementIdentifier,// dec 135, '87'O    
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT1                         nodeTypeValue, 
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(nodeTypeValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '87'O;)";            
-};
-
-//8.66
-type record FullyQualifiedDomainName
-{
-  OCT1                         elementIdentifier,  // dec 136, '88'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,  
-  octetstring                  fQDN_Value
-} with { 
-  variant (lengthIndicator) "LENGTHTO(fQDN_Value)"; 
-  variant "PRESENCE (elementIdentifier = '88'O;)";
-};
-
-type set of FullyQualifiedDomainName FullyQualifiedDomainName_List;
-
-//8.67
-// Moved to GTPv2_PrivateExtensions.ttcn
-
-
-//8.68
-type record TransactionIdentifier
-{
-  OCT1                         elementIdentifier, // dec 137, '89'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT4                         spare2,                  
-  L3_TransactionId             transactionIdentifierValue  
-} with { 
-  variant (lengthIndicator) "LENGTHTO(spare2,transactionIdentifierValue)"; 
-  variant "PRESENCE (elementIdentifier = '89'O;)";
-};
-
-type record L3_TransactionId
-{
-  BIT3               tio,
-  BIT1               tiFlag ,
-  TI_Extension       tIExtension  optional     
-  // an extension octet (TI) can be used for session management messages
-  // not yet implemented (see 24.008 clause 10.3.2 for more detail
-} with { variant (tIExtension) "PRESENCE(tio = '111'B)"
-};  
-
-type record TI_Extension
-{
-  BIT7               tI_Value,
-  BIT1               tI_ExtBit         //'1'B
-};
-
-//8.69
-type record MBMS_SessionDuration
-{
-  OCT1                         elementIdentifier, // dec 138, '8A'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT3                         mBMS_SessionDurationValue,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mBMS_SessionDurationValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '8A'O;)";            
-};
-
-//8.70
-type record MBMS_ServiceArea
-{
-  OCT1                         elementIdentifier, // dec 139, '8B'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  octetstring                  mBMS_ServiceAreaValue
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mBMS_ServiceAreaValue)"; 
-  variant "PRESENCE (elementIdentifier = '8B'O;)";            
-};
-
-//8.71
-type record MBMS_SessionIdentifier
-{
-  OCT1                         elementIdentifier, // dec 140, '8C'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT1                         mBMS_SessionIdentifierValue,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mBMS_SessionIdentifierValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '8C'O;)";            
-};
-
-//8.72
-type record MBMS_FlowIdentifier
-{
-  OCT1                         elementIdentifier, // dec 141, '8D'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT2                         mBMS_FlowIdentifierValue,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mBMS_FlowIdentifierValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '8D'O;)";            
-};
-
-//8.73
-type record MBMS_IPMulticastDistribution
-{
-  OCT1                         elementIdentifier, // dec 142, '8E'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT4                         commonTunnelEndpointIdentifierData,
-  GSN_Address                  iP_MulticastDistributionAddress,
-  GSN_Address                  iP_MulticastSourceAddress,
-  OCT1                         mBMS_HCIndicator,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(commonTunnelEndpointIdentifierData,iP_MulticastDistributionAddress,
-  iP_MulticastSourceAddress,mBMS_HCIndicator,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '8E'O;)";            
-};
-
-type set of MBMS_IPMulticastDistribution MBMS_IPMulticastDistribution_List;
-
-type record GSN_Address
-{ 
-  INT6b        lengthIndicator,
-  BIT2         addressType,
-  octetstring  addressValue 
-}with { 
-  variant (lengthIndicator) "LENGTHTO(addressValue)"; 
-};
-
-//8.74
-type record MBMS_DistributionAcknowledge
-{
-  OCT1                         elementIdentifier, // dec 143, '8F'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT2                         distributionIndicationValue,
-  BIT6                         spare2,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(distributionIndicationValue,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '8F'O;)";            
-};
-
-//8.75
-type record User_CSG_Information
-{
-  OCT1                         elementIdentifier, // dec 145, '91'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  BIT5                         spare2,
-  bitstring                    cSG_ID length(27),
-  BIT1                         cMI,
-  BIT1                         lCSG,
-  BIT4                         spare3,
-  BIT2                         accessMode, 
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mccDigit1,mccDigit2,mccDigit3,
-  mncDigit3,mncDigit1,mncDigit2,
-  spare2,cSG_ID,cMI,lCSG,spare3,
-  accessMode,additionalOctets)"; 
-  variant (spare2,cSG_ID) "FIELDORDER(msb)";
-  variant (cSG_ID) "BYTEORDER(last)";
-  variant "PRESENCE (elementIdentifier = '91'O;)";            
-};
-
-//8.76
-type record CSG_InformationReportingAction
-{
-  OCT1                         elementIdentifier, // dec 146, '92'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT1                         uCIC_SG,
-  BIT1                         uCIS_HC,
-  BIT1                         uCIU_HC,
-  BIT5                         spare2,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(uCIC_SG,uCIS_HC,uCIU_HC,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '92'O;)";            
-};
-
-//8.77
-type record of RFSP_Index RFSP_Index_List;
-
-type record RFSP_Index
-{
-  OCT1                         elementIdentifier, // dec 144, '90'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  integer                      rFSP_IndexValue 
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(rFSP_IndexValue)"; 
-  variant "PRESENCE (elementIdentifier = '90'O;)"; 
-  variant (rFSP_IndexValue) "FIELDLENGTH(16)"; 
-  variant (rFSP_IndexValue) "BYTEORDER(last)";    
-};
-
-//8.78
-type record CSG_ID
-{
-  OCT1                         elementIdentifier, // dec 147, '93'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT5                         spare2,
-  bitstring                    cSG_ID length(27),
-  octetstring                  additionalOctets optional
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(spare2,cSG_ID,additionalOctets)"; 
-  variant (spare2,cSG_ID) "FIELDORDER(msb)";
-  variant (cSG_ID) "BYTEORDER(last)";
-  variant "PRESENCE (elementIdentifier = '93'O;)"; 
-};
-
-//8.79
-type record CSG_MembershipIndication
-{
-  OCT1                         elementIdentifier, // dec 148, '94'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT1                         cMI,
-  BIT7                         spare2,
-  octetstring                  additionalOctets optional
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(cMI,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '94'O;)"; 
-};
-
-//8.80
-type record ServiceIndicator
-{
-  OCT1                         elementIdentifier, // dec 149, '95'O
-  LIN2_BO_LAST                 lengthIndicator,  //=1
-  BIT4                         instance,
-  BIT4                         spare, 
-  INT1                         serviceIndicator
-}  with { 
-  variant (lengthIndicator) "LENGTHTO(serviceIndicator)"; 
-  variant "PRESENCE (elementIdentifier = '95'O;)"; 
-};
-
-//8.81
-type record DetachType
-{
-  OCT1                         elementIdentifier, // dec 150, '96'O
-  LIN2_BO_LAST                 lengthIndicator,  //=1
-  BIT4                         instance,
-  BIT4                         spare, 
-  INT1                         detachType
-} with { 
-  variant (lengthIndicator) "LENGTHTO(detachType)"; 
-  variant "PRESENCE (elementIdentifier = '96'O;)"; 
-};
-
-//8.82
-type record LocalDistinguishedName
-{
-  OCT1                         elementIdentifier, // dec 151 '97'O
-  LIN2_BO_LAST                 lengthIndicator, 
-  BIT4                         instance,
-  BIT4                         spare,
-  charstring                   lDN length (1..400) 
-} with { 
-  variant (lengthIndicator) "LENGTHTO(lDN)"; 
-  variant "PRESENCE (elementIdentifier = '97'O;)"; 
-};
-
-type set of LocalDistinguishedName LocalDistinguishedName_List
-
-//8.83
-type record NodeFeatures
-{
-  OCT1                         elementIdentifier, // dec 152, '98'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT1                         pRN,
-  BIT1                         mABR,
-  BIT1                         nTSR,
-  BIT1                         cIOT,
-  BIT4                         spare2,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(pRN,mABR,nTSR,cIOT,spare2,additionalOctets)";
-  variant "PRESENCE (elementIdentifier = '98'O;)"; 
-};
-
-//8.84
-type record MBMSTimetoDataTransfer
-{
-  OCT1                         elementIdentifier, // dec 153, '99'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  OCT1                         mBMSTimetoDataTransfervalue,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(mBMSTimetoDataTransfervalue, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '99'O;)"; 
-};
-
-//8.85
-type record Throttling
-{
-  OCT1                         elementIdentifier, // dec 154, '9A'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  INT5b                        throttlingDelayValue,
-  BIT3                         throttlingDelayUnit,
-  INT1                         throttlingfactor,
-  octetstring                  additionalOctets optional 
-}with { 
-  variant (lengthIndicator) "LENGTHTO(throttlingDelayValue,throttlingDelayUnit,throttlingfactor,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '9A'O;)";  
-};
-
-
-//8.86
-type record AllocationRetentionPriority
-{
-  OCT1                         elementIdentifier, // dec 155, '9B'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT1                         pVI,
-  BIT1                         spare2,
-  BIT4                         pL,
-  BIT1                         pCI,
-  BIT1                         spare3,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(pVI,spare2,pL,pCI,spare3,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '9B'O;)"; 
-};
-
-//8.87
-type record EPC_Timer
-{
-  OCT1                         elementIdentifier, // dec 156, '9C'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  INT5b                        timerValue,  
-  BIT3                         timerUnit,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(timerValue,timerUnit,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '9C'O;)"; 
-};
-
-//8.88
-type record SignallingPriorityIndication
-{
-  OCT1                         elementIdentifier, // dec 157, '9D'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT1                         lAPI,
-  BIT7                         spare2,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(lAPI,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '9D'O;)"; 
-};
-
-//8.89
-type record TMGI
-{
-  OCT1                         elementIdentifier, // dec 158, '9E'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  OCT3                         mBMSServiceID,
-  HEX1                         mccDigit1,
-  HEX1                         mccDigit2,
-  HEX1                         mccDigit3,
-  HEX1                         mncDigit3,
-  HEX1                         mncDigit1,
-  HEX1                         mncDigit2,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(mBMSServiceID, mccDigit1,
-  mccDigit2, mccDigit3, mncDigit1,
-  mncDigit2, mncDigit3,
-  additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = '9E'O;)"; 
-};
-
-//8.90
-type record AdditionalMMContextForSRVCC
-{
-  OCT1                         elementIdentifier, // dec 159, '9F'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  integer                      mobileStationClassmark2Length,
-  MobileStationClassmark2      mobileStationClassmark2,
-  integer                      mobileStationClassmark3Length,
-  octetstring                  mobileStationClassmark3,
-  integer                      supportedCodecListLength,
-  SupportedCodecList           supportedCodecList,
-  octetstring                  additionalOctets optional 
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mobileStationClassmark2Length,mobileStationClassmark2, 
-  mobileStationClassmark3Length,mobileStationClassmark3,
-  supportedCodecListLength,supportedCodecList,
-  additionalOctets)"; 
-  variant (mobileStationClassmark2Length) "LENGTHTO(mobileStationClassmark2)"; 
-  variant (mobileStationClassmark3Length) "LENGTHTO(mobileStationClassmark3)"; 
-  variant (supportedCodecListLength) "LENGTHTO(supportedCodecList)"; 
-  variant "PRESENCE (elementIdentifier = '9F'O;)";            
-};
-
-// 24.008/ 10.5.1.6 MobileStationClassmark2
-//4th octet:
-type record MobileStationClassmark2_oct4
-{
-  BIT1  fc,
-  BIT1  vgcs,
-  BIT1  vbs,
-  BIT1  sm_Capability,
-  BIT2  ss_ScreenIndicator,
-  BIT1  ps_Capability, 
-  BIT1  spare2_1 
-};
-
-
-//5th octet ( Table 10.5.6a ):
-type record MobileStationClassmark2_oct5
-{
-  BIT1  a5_2, 
-  BIT1  a5_3,
-  BIT1  cmsp,
-  BIT1  solsa,
-  BIT1  ucs2,
-  BIT1  lcsva_cap,
-  BIT1  spare5_7,
-  BIT1  cm3
-};
-
-type record MobileStationClassmark2
-{
-  BIT3  rf_PowerCapability,
-  BIT1  a5_1,
-  BIT1  esind,
-  BIT2  revisionLevel, 
-  BIT1  spare1_1, 
-  MobileStationClassmark2_oct4  mobileStationClassmark2_oct4    optional,
-  MobileStationClassmark2_oct5  mobileStationClassmark2_oct5    optional
-};
-
-
-// TS 24008/10.5.4.32 Supported Codec List
-type record Codec
-{
-  OCT1  systemIdentification,
-  integer  lengthOfBitmap,
-  OCT1  codecBitmap_bits1to8,
-  OCT1  codecBitmap_bits9to16 optional,
-  octetstring additional_codecs optional
-} with {
-  variant (lengthOfBitmap) "LENGTHTO(codecBitmap_bits1to8,codecBitmap_bits9to16,additional_codecs)"; 
-}; 
-
-type record of Codec SupportedCodecList; 
-
-//8.91
-type record AdditionalFlagsForSRVCC
-{
-  OCT1                         elementIdentifier, // dec 160, 'A0'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  BIT1                         iCS,
-  BIT7                         spare2,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO(iCS, spare2, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A0'O;)"; 
-};
-
-// Sv Information Elements
-// 3GPP TS 29.280 6.2
-type record STN_SR
-{
-  OCT1                         elementIdentifier, // dec 51, '33'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT1                         nanpi,
-  hexstring                    sTN_SR_Value
-}with { 
-  variant (lengthIndicator) "LENGTHTO(nanpi,sTN_SR_Value)";
-  variant "PRESENCE (elementIdentifier = '33'O;)";  
-  variant (sTN_SR_Value) "PADDING(yes)";
-  variant (sTN_SR_Value) "PADDING_PATTERN('1'B)";          
-};
-
-//8.92 Void
-/*type record MMBR
-{
-  OCT1                         elementIdentifier, // dec 161, 'A1'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT4                         maxMMBR_for_uplink, 
-  OCT4                         maxMMBR_for_downlink,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(maxMMBR_for_uplink,maxMMBR_for_downlink,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A1'O;)"; 
-};*/
-
-
-//8.93
-type record MDT_Configuration
-{
-  OCT1                         elementIdentifier, // dec 162, 'A2'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  OCT1                         jobType,
-  OCT4                         listOfmeasurements,
-  OCT1                         reportingTrigger,
-  OCT1                         reportInterval,
-  OCT1                         reportAmount,
-  OCT1                         eventThresholdforRSRP,  
-  OCT1                         eventThresholdforRSRQ,
-  INT1                         lengthOfAreaScope,
-  octetstring                  areaScope optional,
-  BIT1                         cRRMI,
-  BIT1                         mPI,
-  BIT1                         pMI,
-  BIT1                         pLI,
-  BIT4                         spare2,
-  CollectionPeriodforRRMmeasurementsLTE collectionPeriodforRRMmeasurementsLTE optional,
-  MeasurementPeriodLTE         measurementPeriodLTE optional,
-  PositioningMethod            positioningMethod optional,
-  INT1                         numberOfMDT_PLMNs optional,
-  MDT_PLMN_List                mDT_PLMN_List length(0..16) optional,
-  octetstring                  additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(jobType,listOfmeasurements,reportingTrigger,
-  reportInterval,reportAmount,eventThresholdforRSRP,
-  eventThresholdforRSRQ,lengthOfAreaScope,areaScope,
-  cRRMI,mPI,pMI,pLI,spare2,
-  collectionPeriodforRRMmeasurementsLTE,measurementPeriodLTE,positioningMethod,
-  numberOfMDT_PLMNs,mDT_PLMN_List,additionalOctets )"; 
-  variant "PRESENCE (elementIdentifier = 'A2'O;)"; 
-  variant (lengthOfAreaScope) "LENGTHTO(areaScope)";  
-  variant (collectionPeriodforRRMmeasurementsLTE) "PRESENCE(cRRMI = '1'B)";   
-  variant (measurementPeriodLTE) "PRESENCE(mPI = '1'B)";   
-  variant (positioningMethod) "PRESENCE(pMI = '1'B)";   
-  variant (mDT_PLMN_List) "PRESENCE(pLI = '1'B)";   
-  variant (numberOfMDT_PLMNs) "PRESENCE(pLI = '1'B)";   
-  variant (numberOfMDT_PLMNs) "LENGTHTO(mDT_PLMN_List)";  
-  variant (numberOfMDT_PLMNs) "UNIT(elements)"; 
-};
-
-//5.10.19 3GPP TS 32.422
-type record PositioningMethod
-{
-  BIT1 gNSS,
-  BIT1  eCellID,
-  BIT6  spare
-}
-//5.10.20 3GPP TS 32.422
-type enumerated CollectionPeriodforRRMmeasurementsLTE
-{
-  ms1024 (0),
-  ms1280 (1),
-  ms2048 (2),
-  ms2560 (3),
-  ms5120 (4),
-  ms10240 (5),
-  min1 (6)
-} with { variant "FIELDLENGTH(8)"; }
-
-//5.10.23 3GPP TS 32.422
-type enumerated MeasurementPeriodLTE
-{
-  ms1024 (0),
-  ms1280 (1),
-  ms2048 (2),
-  ms2560 (3),
-  ms5120 (4),
-  ms10240 (5),
-  min1 (6)
-} with { variant "FIELDLENGTH(8)"; }
-
-//9.2.1.89, 9.2.3.8 TS 32.422
-type record of OCT3 MDT_PLMN_List;
-
-//8.94
-type record APCO
-{
-  OCT1                         elementIdentifier, // dec 163, 'A3'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare,
-  BIT3                         configProtocol,
-  BIT4                         spare2,  //'0000'B
-  BIT1                         extensionField,   //'1'B
-  ProtocolIDs_and_ContainerIDs protocolIDs_and_ContainerIDs optional,
-  octetstring                  additionalOctets optional    
-}with { 
-  variant (lengthIndicator) "LENGTHTO(configProtocol,spare2,extensionField,protocolIDs_and_ContainerIDs,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A3'O;)";  
-};
-
-//8.95
-type record AbsoluteTimeofMBMSDataTransfer
-{
-  OCT1                         elementIdentifier, // dec 164, 'A4'O
-  LIN2_BO_LAST                 lengthIndicator,
-  BIT4                         instance,
-  BIT4                         spare, 
-  OCT8                         value_part,
-  octetstring                  additionalOctets optional
-} with { 
-  variant (lengthIndicator) "LENGTHTO( value_part, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A4'O;)"; 
-};
-
-//8.96
-type record HeNBInformationReporting
-{
-  OCT1            elementIdentifier, // dec 165, 'A5'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT1            FTI,
-  BIT7            spare2,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(FTI,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A5'O;)"; 
-};
-
-//8.97
-type record IPv4ConfigurationPrameters
-{
-  OCT1            elementIdentifier, // dec 166, 'A6'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  INT1            subnetPrefixLength,
-  OCT4            iPv4DefaultRouterAddress,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(subnetPrefixLength,iPv4DefaultRouterAddress,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A6'O;)"; 
-}
-
-//8.98
-type record ChangeToReportFlags
-{
-  OCT1            elementIdentifier, // dec 167, 'A7'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT1            servingNetworkChangeToReport,
-  BIT1            timeZoneChangeToReport,
-  BIT6            spare2, //'000000'B
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(servingNetworkChangeToReport,timeZoneChangeToReport,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A7'O;)"; 
-}
-
-
-//8.99
-type record ActionIndication
-{
-  OCT1            elementIdentifier, // dec 168, 'A8'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT3            indication,
-  BIT5            spare2,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(indication,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A8'O;)"; 
-}
-
-//8.100
-type record TrustedWLANAccessNetworkIdentifier
-{
-  OCT1            elementIdentifier,	//dec 169, 'A9'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT1            bssIdIndicator,
-  BIT1            cIVAI,
-  BIT1            pLMNI,
-  BIT1            oPNAI,
-  BIT1            lAAI,
-  BIT3            spare2,
-  INT1            lengthOfSSID,
-  octetstring     SSID,
-  OCT6            BSSID optional,
-  INT1            lengthOfCivicAddress optional,
-  octetstring     civicAddressInformation optional,
-  OCT4            tWAN_PLMNID optional,
-  INT1            lengthOfTWANOperatorName optional,
-  octetstring     tWANOperatorName optional,
-  INT1            relayIdentityType optional,
-  INT1            lengthOfRelayIdentity optional,
-  octetstring     relayIdentity optional,
-  INT1            lengthOfcircuitID optional,
-  octetstring     circuitID optional,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(bssIdIndicator,cIVAI,pLMNI,oPNAI,lAAI,spare2,
-  lengthOfSSID,SSID,BSSID,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'A9'O;)";
-  variant (lengthOfSSID) "LENGTHTO(SSID)"; 
-  variant (civicAddressInformation) "PRESENCE(cIVAI = '1'B)";   
-  variant (lengthOfCivicAddress) "PRESENCE(cIVAI = '1'B)";   
-  variant (lengthOfCivicAddress) "LENGTHTO(civicAddressInformation)"; 
-  variant (tWAN_PLMNID) "PRESENCE(pLMNI = '1'B)";   
-  variant (tWANOperatorName) "PRESENCE(oPNAI = '1'B)";   
-  variant (lengthOfTWANOperatorName) "PRESENCE(oPNAI = '1'B)";   
-  variant (lengthOfTWANOperatorName) "LENGTHTO(tWANOperatorName)"; 
-  variant (relayIdentityType) "PRESENCE(lAAI = '1'B)";   
-  variant (lengthOfRelayIdentity) "PRESENCE(lAAI = '1'B)";   
-  variant (relayIdentity) "PRESENCE(lAAI = '1'B)";   
-  variant (lengthOfcircuitID) "PRESENCE(lAAI = '1'B)";   
-  variant (circuitID) "PRESENCE(lAAI = '1'B)";   
-  variant (lengthOfRelayIdentity) "LENGTHTO(relayIdentity)"; 
-  variant (lengthOfcircuitID) "LENGTHTO(circuitID)";
-};
-
-type set of TrustedWLANAccessNetworkIdentifier TrustedWLANAccessNetworkIdentifier_List;
-
-//8.101
-type record UserLocationInformationTimestamp
-{
-  OCT1          elementIdentifier,	//dec 170, 'AA'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  OCT4          timestampValue,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(timestampValue, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'AA'O;)";
-}
-
-//8.102
-type record MBMSFlags
-{
-  OCT1          elementIdentifier,	//dec 171, 'AB'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  BIT1          mSRI,
-  BIT1          lMR,
-  BIT6          spare2,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(mSRI,lMR,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'AB'O;)";
-}
-
-//8.103
-type record RAN_NASCause
-{
-  OCT1          elementIdentifier,	//dec 172, 'AC'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  BIT4          causeType,
-  BIT4          protocolType,
-  OCT1          causeValue,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(causeType, protocolType, causeValue, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'AC'O;)";
-}
-
-//8.104
-type record CNOperatorSelectionEntity
-{
-  OCT1          elementIdentifier,	//dec 173, 'AD'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  BIT2          selectionEntity,
-  BIT6          spare2,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(selectionEntity, spare2, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'AD'O;)";
-}
-
-//8.105
-type record TrustedWLANModeIndication
-{
-  OCT1          elementIdentifier,	//dec 174, 'AE'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  BIT1          sCM,
-  BIT1          mCM,
-  BIT6          spare2,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(sCM, mCM, spare2, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'AE'O;)";
-}
-
-//8.106
-type record NodeNumber
-{
-  OCT1          elementIdentifier,	//dec 175, 'AF'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  LIN1          lenghOfNodeNumber,
-  octetstring   nodeNumber,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(lenghOfNodeNumber, nodeNumber, additionalOctets)"; 
-  variant (lenghOfNodeNumber) "LENGTHTO(nodeNumber)"; 
-  variant "PRESENCE (elementIdentifier = 'AF'O;)";
-}
-
-type set of NodeNumber NodeNumber_List;
-
-//8.107
-type record NodeIdentifier
-{
-  OCT1          elementIdentifier,	//dec 176, 'B0'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  LIN1          lenghOfNodeName,
-  octetstring   nodeName,
-  LIN1          lenghOfNodeRealm,
-  octetstring   nodeRealm,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(lenghOfNodeName,nodeName,lenghOfNodeRealm,nodeRealm, additionalOctets)"; 
-  variant (lenghOfNodeName) "LENGTHTO(nodeName)"; 
-  variant (lenghOfNodeRealm) "LENGTHTO(nodeRealm)"; 
-  variant "PRESENCE (elementIdentifier = 'B0'O;)";
-}
-
-type set of NodeIdentifier NodeIdentifier_List;
-  
-//8.108
-type record PresenceReportingAreaAction
-{
-  OCT1            elementIdentifier,	//dec 177, 'B1'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT3            actionField,
-  BIT5            spare2,
-  OCT3            presenceReportingAreaIdentifier optional,
-  INT4b           numberOfRAI (0..15) optional,
-  INT4b           numberOfTAI (0..15) optional,
-  INT6b           numberOfMacroENodeB (0..63) optional,
-  BIT2            spare3 optional,
-  INT6b           numberOfHomeENodeB (0..63) optional,
-  BIT2            spare4 optional,
-  INT6b           numberOfECGI (0..63) optional,
-  BIT2            spare5 optional,
-  INT6b           numberOfSAI (0..63) optional,
-  BIT2            spare6 optional,
-  INT6b           numberOfCGI (0..63) optional,
-  BIT2            spare7 optional,
-  TAIList         tAIs optional,
-  Macro_eNB_ID_List  macroENBIDs optional,
-  Home_eNB_ID_List  homeENBIDs optional,
-  ECGIList        eCGIs optional,
-  RAIList         rAIs optional,
-  SAIList         sAIs optional,
-  CGIList         cGIs optional,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(actionField,spare2,presenceReportingAreaIdentifier,numberOfRAI,numberOfTAI,numberOfMacroENodeB,
-  spare3,numberOfHomeENodeB,spare4,numberOfECGI,spare5,numberOfSAI,spare6,numberOfCGI,spare7,tAIs,macroENBIDs,homeENBIDs,
-  eCGIs,rAIs,sAIs,cGIs,additionalOctets)"; 
-  variant (numberOfRAI) "LENGTHTO(rAIs)";
-  variant (numberOfRAI) "UNIT(elements)"; 
-  variant (numberOfTAI) "LENGTHTO(tAIs)";
-  variant (numberOfTAI) "UNIT(elements)"; 
-  variant (numberOfMacroENodeB) "LENGTHTO(macroENBIDs)";
-  variant (numberOfMacroENodeB) "UNIT(elements)"; 
-  variant (numberOfHomeENodeB) "LENGTHTO(homeENBIDs)";
-  variant (numberOfHomeENodeB) "UNIT(elements)"; 
-  variant (numberOfECGI) "LENGTHTO(eCGIs)";
-  variant (numberOfECGI) "UNIT(elements)"; 
-  variant (numberOfSAI) "LENGTHTO(sAIs)";
-  variant (numberOfSAI) "UNIT(elements)"; 
-  variant (numberOfCGI) "LENGTHTO(cGIs)";
-  variant (numberOfCGI) "UNIT(elements)"; 
-  variant "PRESENCE (elementIdentifier = 'B1'O;)";
-}
-
-type set of TAI TAIList;
-type set of ECGI ECGIList;
-type set of RAI RAIList;
-type set of SAI SAIList;
-type set of CGI CGIList;
-type set of Macro_eNodeB_ID_spec Macro_eNB_ID_List;
-type set of Home_eNodeB_ID_spec Home_eNB_ID_List;
-
-//8.109
-type record PresenceReportingAreaInformation
-{
-  OCT1          elementIdentifier,	//dec 178, 'B2'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  OCT3          presenceReportingAreaIdentifier,
-  BIT1          iPRA,
-  BIT1          oPRA,
-  BIT6          spare2,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(presenceReportingAreaIdentifier,iPRA,oPRA, spare2, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'B2'O;)";
-}
-
-//8.110
-type record TWANIdentifierTimestamp
-{
-  OCT1          elementIdentifier,	//dec 179, 'B3'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  OCT4          tWANIdentifierTimestampValue,
-  octetstring   additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(tWANIdentifierTimestampValue, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'B3'O;)";
-}
-
-type set of TWANIdentifierTimestamp TWANIdentifierTimestamp_List
-  
-//8.111
-type record OverloadControlInformationGrouped
-{
-  OCT1          elementIdentifier,	//dec 180, 'B4'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  OverloadControlInformationIEs overloadControlInformationIEs
-}with { 
-  variant (lengthIndicator) "LENGTHTO(overloadControlInformationIEs)"; 
-  variant "PRESENCE (elementIdentifier = 'B4'O;)";
-}
-
-type set OverloadControlInformationIEs
-{
-  SequenceNumber  overloadControlSequenceNumber optional,
-  Metric          overloadReductionMetric optional,
-  EPC_Timer       periodOfValidity optional,
-  AccessPointName listOfAccessPointName optional
-} 
-
-type set of OverloadControlInformationGrouped OverloadControlInformationGrouped_List;
-
-//8.112
-type record LoadControlInformationGrouped
-{
-  OCT1          elementIdentifier,	//dec 181, 'B5'O
-  LIN2_BO_LAST  lengthIndicator,
-  BIT4          instance,
-  BIT4          spare,
-  LoadControlInformationIEs loadControlInformationIEs
-}with { 
-  variant (lengthIndicator) "LENGTHTO(loadControlInformationIEs)"; 
-  variant "PRESENCE (elementIdentifier = 'B5'O;)";
-}
-
-type set LoadControlInformationIEs
-{
-  SequenceNumber  loadControlSequenceNumber optional,
-  Metric          loadMetric optional,
-  APNandRelativeCapacity  listOfAPNandRelativeCapacity optional
-}
-
-type set of LoadControlInformationGrouped LoadControlInformationGrouped_List;
-
-//8.113
-type record Metric
-{
-  OCT1          elementIdentifier,	//dec 182, 'B6'O
-  LIN2_BO_LAST  lengthIndicator (1),
-  BIT4          instance,
-  BIT4          spare,
-  LIN1          metric (0..100)
-}with { 
-  variant (lengthIndicator) "LENGTHTO(metric)"; 
-  variant "PRESENCE (elementIdentifier = 'B6'O;)";
-}
-
-//8.114
-type record SequenceNumber
-{
-  OCT1          elementIdentifier,	//dec 183, 'B7'O
-  LIN2_BO_LAST  lengthIndicator (4),
-  BIT4          instance,
-  BIT4          spare,
-  LIN4_BO_LAST  sequenceNumber
-}with { 
-  variant (lengthIndicator) "LENGTHTO(sequenceNumber)"; 
-  variant "PRESENCE (elementIdentifier = 'B7'O;)";
-}
-
-//8.115
-type record APNandRelativeCapacity
-{
-  OCT1            elementIdentifier,	//dec 184, 'B8'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  LIN1            relativeCapacity (0..100),
-  LIN1            aPNLength,
-  AccessPointName accessPointName,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(relativeCapacity,aPNLength,accessPointName, additionalOctets)"; 
-  variant (aPNLength) "LENGTHTO(accessPointName)"; 
-  variant "PRESENCE (elementIdentifier = 'B8'O;)";
-}
-
-//8.116
-type record WLANOffloadabilityIndication
-{
-  OCT1            elementIdentifier,	//dec 185, 'B9'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT1            uTRANIndication,
-  BIT1            eUTRANIndication,
-  BIT6            spare2,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(uTRANIndication, eUTRANIndication, spare2, additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'B9'O;)";
-}
-
-//8.117
-type record PagingAndServiceInformation
-{
-  OCT1            elementIdentifier,	//dec 186, 'BA'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  integer         ePS_Bearer_ID_Value,
-  BIT4            spare2,
-  BIT1            pPI,
-  BIT7            spare3,
-  BIT6            pagingPolicyIndicationValue optional,
-  BIT2            spare4 optional,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(ePS_Bearer_ID_Value,spare2,pPI,spare3,pagingPolicyIndicationValue,spare4,additionalOctets)"; 
-  variant(ePS_Bearer_ID_Value) "FIELDLENGTH(4)"; 
-  variant "PRESENCE (elementIdentifier = 'BA'O;)";
-  variant (pagingPolicyIndicationValue) "PRESENCE(pPI = '1'B)";   
-  variant (spare4) "PRESENCE(pPI = '1'B)";   
-}
-
-//8.118
-type record IntegerNumber
-{
-  OCT1            elementIdentifier,	//dec 187, 'BB'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  IntegerNumberValue integerNumberValue optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(integerNumberValue)"; 
-  variant "PRESENCE (elementIdentifier = 'BB'O;)";
-  variant (integerNumberValue)"CROSSTAG(int1,lengthIndicator=1;
-  int2,lengthIndicator=2)"
-}
-
-type union IntegerNumberValue
-{
-  LIN1 int1,
-  LIN2_BO_LAST int2
-}
-
-//8.119
-type record MillisecondTimeStamp
-{
-  OCT1            elementIdentifier,	//dec 188, 'BC'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  OCT6            millisecondTimeStampValue,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(millisecondTimeStampValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'BC'O;)";
-}
-
-//8.120
-type record MonitoringEventInformation
-{
-  OCT1            elementIdentifier,	//dec 189, 'BD'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  OCT4            sCEFReferenceID,  //Unsigned32 ?
-  LIN1            sCEF_ID_length,
-  octetstring     sCEF_ID,
-  OCT2            remainingNumberOfReports, //Unsigned32 ?
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(sCEFReferenceID,sCEF_ID_length,sCEF_ID,remainingNumberOfReports,additionalOctets)"; 
-  variant (sCEF_ID_length) "LENGTHTO(sCEF_ID)"; 
-  variant "PRESENCE (elementIdentifier = 'BD'O;)";
-}
-
-//8.121
-type record ECGI_List
-{
-  OCT1            elementIdentifier,	//dec 190, 'BE'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  LIN2_BO_LAST    numberOfECGI,
-  ECGIs           eCGIs,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(numberOfECGI,eCGIs,additionalOctets)"; 
-  variant (numberOfECGI) "LENGTHTO(eCGIs)";
-  variant (numberOfECGI) "UNIT(elements)"; 
-  variant "PRESENCE (elementIdentifier = 'BE'O;)";
-}
-
-type set of ECGI ECGIs;
-
-//8.122
-type record RemoteUEContextGrouped
-{
-  OCT1            elementIdentifier,	//dec 191, 'BF'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  RemoteUEContextIEs remoteUEContextIEs
-}with { 
-  variant (lengthIndicator) "LENGTHTO(remoteUEContextIEs)"; 
-  variant "PRESENCE (elementIdentifier = 'BF'O;)";
-}
-
-type set RemoteUEContextIEs
-{
-  RemoteUserID          remoteUserID optional,
-  RemoteUEIPInformation remoteUEIPInformation optional
-}
-
-type set of RemoteUEContextGrouped RemoteUEContextGrouped_List;
-
-//8.123
-type record RemoteUserID
-{
-  OCT1            elementIdentifier,	//dec 192, 'C0'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT1            mSISDNF,
-  BIT1            iMEIF,
-  BIT6            spare2,
-  LIN1            lengthOfIMSI,
-  hexstring       iMSI,
-  LIN1            lengthOfMSISDN optional,
-  hexstring       mSISDN optional,
-  LIN1            lengthOfIMEI optional,
-  octetstring     iMEI optional,
-  octetstring     additionalOctets optional
-}with { 
-  variant "PRESENCE (elementIdentifier = 'C0'O;)";
-  variant (lengthIndicator) "LENGTHTO(mSISDNF,iMEIF,spare2,lengthOfIMSI,iMSI,lengthOfMSISDN,mSISDN,lengthOfIMEI,iMEI,additionalOctets)"; 
-  variant (lengthOfMSISDN) "PRESENCE(mSISDNF = '1'B)";   
-  variant (mSISDN) "PRESENCE(mSISDNF = '1'B)";   
-  variant (lengthOfIMEI) "PRESENCE(iMEIF = '1'B)";   
-  variant (iMEI) "PRESENCE(iMEIF = '1'B)";   
-  variant (lengthOfIMSI) "LENGTHTO(iMSI)";
-  variant (iMSI) "PADDING(yes)";
-  variant (iMSI) "PADDING_PATTERN('1'B)";
-  variant (lengthOfMSISDN) "LENGTHTO(mSISDN)"; 
-  variant (mSISDN) "PADDING(yes)";
-  variant (mSISDN) "PADDING_PATTERN('1'B)";
-  variant (lengthOfIMEI) "LENGTHTO(iMEI)" ;
-}
-
-//8.124
-type record RemoteUEIPInformation
-{
-  OCT1            elementIdentifier,	//dec 193, 'C1'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  octetstring     remoteUEIPInformation
-}with { 
-  variant (lengthIndicator) "LENGTHTO(remoteUEIPInformation)"; 
-  variant "PRESENCE (elementIdentifier = 'C1'O;)";
-}
-
-//8.125
-type record CIoT_OptimizationsSupportIndication
-{
-  OCT1            elementIdentifier,	//dec 194, 'C2'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  BIT1            sGNIPDN,
-  BIT1            sCNIPDN,
-  BIT1            aWOPDN,
-  BIT1            iHCSI,
-  BIT4            spare2,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(sGNIPDN,sCNIPDN,aWOPDN,iHCSI,spare2,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'C2'O;)";
-}
-
-//8.126
-type record SCEF_PDN_ConnectionGrouped
-{
-  OCT1            elementIdentifier,	//dec 195, 'C3'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  SCEF_PDN_ConnectionIEs sCEF_PDN_ConnectionIEs
-}with { 
-  variant (lengthIndicator) "LENGTHTO(sCEF_PDN_ConnectionIEs)"; 
-  variant "PRESENCE (elementIdentifier = 'C3'O;)";
-}
-
-type set SCEF_PDN_ConnectionIEs
-{
-  AccessPointName  accessPointName optional,
-  EPS_BearerID     ePS_BearerID optional,
-  NodeIdentifier   nodeIdentifier optional
-}
-
-type set of SCEF_PDN_ConnectionGrouped SCEF_PDN_ConnectionGrouped_List;
-
-//8.127
-type record HeaderCompressionConfiguration
-{
-  OCT1            elementIdentifier,	//dec 196, 'C4'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  OCT2            rOHC_Profiles,
-  LIN2_BO_LAST    maxCID (1..16383),
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(rOHC_Profiles,maxCID,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'C4'O;)";
-}
-
-//8.128
-type record ExtendedProtocolConfigOptions
-{
-  OCT1            elementIdentifier,	//dec 197, 'C5'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  octetstring     ePCO
-}with { 
-  variant (lengthIndicator) "LENGTHTO(ePCO)"; 
-  variant "PRESENCE (elementIdentifier = 'C5'O;)";
-}
-
-//8.129
-type record ServingPLMNRateControl
-{
-  OCT1            elementIdentifier,	//dec 197, 'C6'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  LIN2_BO_LAST    uplinkRateLimit,
-  LIN2_BO_LAST    downlinkRateLimit,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(uplinkRateLimit,downlinkRateLimit,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'C6'O;)";
-}
-
-//8.130
-type record Counter
-{
-  OCT1            elementIdentifier,	//dec 199, 'C7'O
-  LIN2_BO_LAST    lengthIndicator,
-  BIT4            instance,
-  BIT4            spare,
-  OCT4            timestampValue,
-  OCT1            counterValue,
-  octetstring     additionalOctets optional
-}with { 
-  variant (lengthIndicator) "LENGTHTO(timestampValue,counterValue,additionalOctets)"; 
-  variant "PRESENCE (elementIdentifier = 'C7'O;)";
-}
-
-// GTPC PDUs
-// Path Management messages
-//7.1.1
-type set EchoRequest
-{
-  Recovery                     recovery,
-  NodeFeatures                 sendingNodeFeatures optional,
-  PrivateExtension_List        privateExtension optional
-};
-
-//7.1.2
-type set EchoResponse
-{
-  Recovery                     recovery,
-  NodeFeatures                 sendingNodeFeatures optional,
-  PrivateExtension_List        privateExtension optional
-};
-
-//7.1.3
-type set VersionNotSupported  
-{};
-
-// Tunnel Management messages
-//7.2.1
-type set CreateSessionRequest
-{
-  IMSI                                    iMSI   optional,
-  MSISDN                                  mSISDN      optional,
-  MEI                                     mEI         optional,
-  UserLocationInfo                        userLocationInfo optional,
-  ServingNetwork                          servingNetwork   optional,
-  RAT_Type                                rAT_Type,
-  Indication                              indication optional,
-  FullyQualifiedTEID_List                 fullyQualifiedTEID,  
-  AccessPointName                         accessPointName,
-  SelectionMode                           selectionMode optional,
-  PDN_Type                                pDN_Type optional,
-  PDN_AddressAllocation                   pDN_AddressAllocation optional,
-  APN_Restriction                         maxAPN_Restriction optional,
-  AggregateMaximumBitRate                 ambr optional,
-  EPS_BearerID                            linkedEPS_Bearer_ID optional,
-  TrustedWLANModeIndication               trustedWLANModeIndication optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional, 
-  BearerContextGrouped_List               bearerContextGrouped,  
-  TraceInformation                        traceInformation optional, 
-  Recovery                                recovery optional, 
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional, 
-  UE_TimeZone                             uE_TimeZone optional,
-  User_CSG_Information                    user_CSG_Information optional,
-  ChargingCharacteristics                 chargingCharacteristics optional,
-  LocalDistinguishedName_List             lDN optional,
-  SignallingPriorityIndication            signallingPriorityIndication optional, 
-//  MMBR                                    maxMBR_APN_AMBR optional,
-  IP_Address_List			  iP_Addr optional,
-  PortNumber_List			  portNumber optional,	 
-  APCO                                    aPCO optional,
-  TrustedWLANAccessNetworkIdentifier_List trustedWLANAccessNetworkIdentifier optional,
-  CNOperatorSelectionEntity               cNOperatorSelectionEntity optional,
-  PresenceReportingAreaInformation        presenceReportingAreaInformation optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  MillisecondTimeStamp                    originationTimeStamp optional,
-  IntegerNumber                           maximumWaitTime optional,
-  TWANIdentifierTimestamp                 wLANLocationTimestamp optional,
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  RemoteUEContextGrouped_List             remoteUEContextGrouped optional,
-  NodeIdentifier_List                     nodeIdentifier optional,            
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  ServingPLMNRateControl                  servingPLMNRateControl optional,
-  Counter									counter optional,
-  PrivateExtension_List                   privateExtension optional 
-} with { 
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)";
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(csid) "REPEATABLE(yes)"; 
-  variant(lDN) "REPEATABLE(yes)"; 
-  variant(iP_Addr) "REPEATABLE(yes)"; 
-  variant(portNumber) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(remoteUEContextGrouped) "REPEATABLE(yes)";
-  variant(trustedWLANAccessNetworkIdentifier) "REPEATABLE(yes)";
-};
-
-
-//7.2.2 
-//6.1.1 - Only the Cause information element, optionally Protocol Configuration Options and optionally the Recovery information element 
-//shall be included in the response if the Cause contains a value indicating that the request is not accepted.
-type set CreateSessionResponse
-{
-  Cause                                   cause,
-  ChangeReportingAction                   changeReportingAction optional, 
-  CSG_InformationReportingAction          cSG_InformationReportingAction optional,
-  HeNBInformationReporting                heNBInformationReporting optional,
-  FullyQualifiedTEID_List                 fullyQualifiedTEID optional,
-  PDN_AddressAllocation                   pDN_AddressAllocation optional,
-  APN_Restriction                         aPN_Restriction optional,  
-  AggregateMaximumBitRate                 ambr optional,
-  EPS_BearerID                            linkedEPS_Bearer_ID optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional, 
-  BearerContextGrouped_List               bearerContextGrouped optional,
-  Recovery                                recovery optional,  
-  FullyQualifiedDomainName                chargingGatewayName optional,
-  IP_Address                              chargingGatewayAddress optional,
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional, 
-  LocalDistinguishedName_List             lDN optional, 
-  EPC_Timer                               pGW_Back_OffTime optional,
-  APCO                                    aPCO optional,
-  IPv4ConfigurationPrameters              trustedWLANIPv4Parameters optional,
-  Indication                              indicationFlags optional,
-  PresenceReportingAreaAction             presenceReportingAreaAction optional,
-  LoadControlInformationGrouped_List      loadControlInformationGrouped optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  ChargingID                              pDNConnectionChargingID optional,
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  PrivateExtension_List                   privateExtension optional
-} with { 
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)";
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(csid) "REPEATABLE(yes)";
-  variant(lDN) "REPEATABLE(yes)";    
-  variant(loadControlInformationGrouped) "REPEATABLE(yes)";    
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";    
-};
-
-//7.2.3
-type set CreateBearerRequest
-{
-  ProcedureTransactionID                  procedureTransactionID optional,
-  EPS_BearerID                            linkedEPS_BearerID,  
-  ProtocolConfigOptions                   protocolConfigOptions optional, 
-  BearerContextGrouped_List               bearerContextGrouped,
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional,  
-  ChangeReportingAction                   changeReportingAction optional,
-  CSG_InformationReportingAction          cSG_InformationReportingAction optional,
-  HeNBInformationReporting		            heNBInformationReporting optional,
-  PresenceReportingAreaAction             presenceReportingAreaAction optional,
-  Indication                              indicationFlags optional,
-  LoadControlInformationGrouped_List      loadControlInformationGrouped optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  PrivateExtension_List                   privateExtension optional 
-} with {
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(csid) "REPEATABLE(yes)";
-  variant(loadControlInformationGrouped) "REPEATABLE(yes)";    
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";    
-};
-
-//7.2.4
-//6.1.1 - Only the Cause information element, optionally Protocol Configuration Options and optionally the Recovery information element 
-//shall be included in the response if the Cause contains a value indicating that the request is not accepted.
-type set CreateBearerResponse
-{
-  Cause                                   cause,
-  BearerContextGrouped_List               bearerContextGrouped optional,
-  Recovery                                recovery optional,  
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional,  
-  UE_TimeZone                             uE_TimeZone optional,
-  UserLocationInfo                        uLI optional, 
-  TrustedWLANAccessNetworkIdentifier_List	trustedWLANAccessNetworkIdentifier optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  PresenceReportingAreaInformation        presenceReportingAreaInformation optional,
-  IP_Address_List                         iP_Addr optional,
-  TWANIdentifierTimestamp                 wLANLocationTimestamp optional,
-  PortNumber_List			  portNumber optional,
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  PrivateExtension_List                   privateExtension optional 
-} with {  
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(csid) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";    
-  variant(iP_Addr) "REPEATABLE(yes)";
-  variant(trustedWLANAccessNetworkIdentifier) "REPEATABLE(yes)";
-  variant(portNumber) "REPEATABLE(yes)"    
-};
-
-//7.2.5
-type set BearerResourceCommand
-{
-  EPS_BearerID_List                       epsBearerIdentity,
-  ProcedureTransactionID                  procedureTransactionID,
-  FlowQoS                                 flowQoS optional,
-  TrafficAggregateDescription             tAD optional, 
-  RAT_Type                                rAT_Type optional, 
-  ServingNetwork                          servingNetwork optional,
-  UserLocationInfo                        userLocationInfo optional,
-  // EBI is included in 1st field : EPS_BearerID_List
-  Indication                              indicationFlags optional,
-  FullyQualifiedTEID_List                 fullyQualifiedTEID optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional,
-  SignallingPriorityIndication            signallingPriorityIndication optional, 
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  PrivateExtension_List                   privateExtension optional 
-} with {  
-  variant(epsBearerIdentity) "REPEATABLE(yes)";
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";    
-};
-
-//7.2.6
-type set BearerResourceFailureIndication
-{
-  Cause                                   cause,
-  EPS_BearerID                            linkedBearerIdentity,
-  ProcedureTransactionID                  procedureTransactionID,
-  Indication                              indicationFlags optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  Recovery                                recovery optional, 
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  PrivateExtension_List                   privateExtension optional
-} with {  
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";    
-};
-
-//7.2.7
-type set ModifyBearerRequest
-{
-  MEI                                     mEI optional, 
-  UserLocationInfo                        userLocationInfo optional,
-  ServingNetwork                          servingNetwork optional, 
-  RAT_Type                                rAT_Type optional, 
-  Indication                              indicationFlags optional, 
-  FullyQualifiedTEID                      fullyQualifiedTEID optional,
-  AggregateMaximumBitRate                 ambr optional,  
-  DelayValue                              delayDownlinkPacketNotificationReq optional,  
-  BearerContextGrouped_List               bearerContextGrouped optional, 
-  Recovery                                recovery optional, 
-  UE_TimeZone                             uE_TimeZone optional, 
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional, 
-  User_CSG_Information                    user_CSG_Information optional,
-  IP_Address_List			  iP_Addr optional,
-  PortNumber_List			  portNumber optional,	 
-  LocalDistinguishedName_List             lDN optional,   
-//  MMBR                                    maxMBR_APN_AMBR optional,
-  CNOperatorSelectionEntity               cNOperatorSelectionEntity optional,
-  PresenceReportingAreaInformation        presenceReportingAreaInformation optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  ServingPLMNRateControl                  servingPLMNRateControl optional,
-  Counter									counter optional,
-  PrivateExtension_List                   privateExtension optional
-} with { 
-  variant(bearerContextGrouped) "REPEATABLE(yes)"; 
-  variant(csid) "REPEATABLE(yes)";
-  variant(lDN) "REPEATABLE(yes)"; 
-  variant(iP_Addr) "REPEATABLE(yes)";
-  variant(portNumber) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-};
-
-//7.2.8
-type set ModifyBearerResponse
-{
-  Cause                                   cause,
-  MSISDN                                  mSISDN optional,
-  EPS_BearerID                            linkedEPS_Bearer_ID optional,
-  APN_Restriction                         aPN_Restriction optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional,
-  BearerContextGrouped_List               bearerContextGrouped optional, 
-  ChangeReportingAction                   changeReportingAction optional,
-  CSG_InformationReportingAction          cSG_InformationReportingAction optional,
-  HeNBInformationReporting		  heNBInformationReporting optional,
-  FullyQualifiedDomainName                chargingGatewayName optional,
-  IP_Address                              chargingGatewayAddress optional, 
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional,
-  Recovery                                recovery optional,
-  LocalDistinguishedName_List             lDN optional, 
-  Indication                              indicationFlags optional, 
-  PresenceReportingAreaAction             presenceReportingAreaAction optional,
-  LoadControlInformationGrouped_List      loadControlInformationGrouped optional,     
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,     
-  ChargingID                              pDNConnectionChargingID optional,
-  PrivateExtension_List                   privateExtension optional 
-} with { 
-  variant(bearerContextGrouped) "REPEATABLE(yes)"; 
-  variant(csid) "REPEATABLE(yes)";
-  variant(lDN) "REPEATABLE(yes)";      
-  variant(loadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-};
-
-//7.2.9.1
-type set DeleteSessionRequest
-{
-  Cause                                   cause optional,
-  EPS_BearerID                            linkedEPS_Bearer_ID optional, 
-  UserLocationInfo                        uLI optional, 
-  Indication                              indicationFlags optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional, 
-  NodeType                                originatingNode optional, 
-  FullyQualifiedTEID                      fullyQualifiedTEID optional, 
-  UE_TimeZone                             uE_TimeZone optional,
-  UserLocationInformationTimestamp	      uLITimestamp optional,
-  RAN_NASCause                            rANNASReleaseCause optional,
-  TrustedWLANAccessNetworkIdentifier_List trustedWLANAccessNetworkIdentifier optional,
-  TWANIdentifierTimestamp_List            tWANIdentifierTimestamp optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,     
-  IP_Address			                        uELocalIP_Addr optional,
-  PortNumber_List			  portNumber optional,
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  PrivateExtension_List                   privateExtension optional
-} with { 
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(trustedWLANAccessNetworkIdentifier) "REPEATABLE(yes)";    
-  variant(tWANIdentifierTimestamp) "REPEATABLE(yes)";
-  variant(portNumber) "REPEATABLE(yes)";     
-};
-//7.2.9.2
-type set DeleteBearerRequest
-{
-  EPS_BearerID_List                       epsBearerIdentity optional, //LBI , EBI
-  BearerContextGrouped_List               bearerContextGrouped optional,  
-  ProcedureTransactionID                  procedureTransactionID optional, 
-  ProtocolConfigOptions                   protocolConfigOptions optional, 
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional, 
-  Cause                                   cause optional, 
-  Indication                              indicationFlags optional, 
-  LoadControlInformationGrouped_List      loadControlInformationGrouped optional,     
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,     
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  PrivateExtension_List                   privateExtension optional
-} with { 
-  variant(epsBearerIdentity) "REPEATABLE(yes)";
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(csid) "REPEATABLE(yes)"  
-  variant(loadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-};
-
-//7.2.10.1
-type set DeleteSessionResponse
-{
-  Cause                                   cause,
-  Recovery                                recovery optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional, 
-  Indication                              indicationFlags optional, 
-  LoadControlInformationGrouped_List      loadControlInformationGrouped optional,     
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,     
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  PrivateExtension_List                   privateExtension optional
-} with { 
-  variant(loadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-};
-
-//7.2.10.2
-type set DeleteBearerResponse
-{
-  Cause                                   cause,
-  EPS_BearerID                            linkedBearerIdentity optional,
-  BearerContextGrouped_List               bearerContextGrouped optional, 
-  Recovery                                recovery optional,
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional,  
-  UE_TimeZone                             uE_TimeZone optional,
-  UserLocationInfo                        uLI optional,
-  UserLocationInformationTimestamp        uLITimestamp optional,
-  TrustedWLANAccessNetworkIdentifier	    trustedWLANAccessNetworkIdentifier optional,
-  TWANIdentifierTimestamp                 tWANIdentifierTimestamp optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,     
-  IP_Address_List                         iP_Addr optional,
-  PortNumber_List			  portNumber optional,
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  PrivateExtension_List                   privateExtension optional
-} with { 
-  variant(bearerContextGrouped) "REPEATABLE(yes)"; 
-  variant(csid) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(iP_Addr) "REPEATABLE(yes)";
-  variant(portNumber) "REPEATABLE(yes)"; 
-};
-
-//7.2.11.1
-type set DownlinkDataNotification
-{
-  Cause                                   cause optional,
-  EPS_BearerID_List                       epsBearerIdentity optional,
-  AllocationRetentionPriority             aRP optional,
-  IMSI                                    iMSI optional,
-  FullyQualifiedTEID                      fullyQualifiedTEID optional,
-  Indication                              indicationFlags optional, 
-  LoadControlInformationGrouped           loadControlInformationGrouped optional,     
-  OverloadControlInformationGrouped       overloadControlInformationGrouped optional,     
-  PagingAndServiceInformation             pagingAndServiceInformation optional,
-  PrivateExtension_List                   privateExtension optional   
-}with { 
-  variant(epsBearerIdentity) "REPEATABLE(yes)";
-}; 
-
-
-//7.2.11.2
-type set DownlinkDataNotificationAcknowledgement
-{
-  Cause                                   cause,
-  DelayValue                              dataNotificationDelay optional,  
-  Recovery                                recovery optional, 
-  Throttling                              dL_LowPriorityTrafficThrottling optional, 
-  IMSI                                    iMSI optional,
-  EPC_Timer                               dLBufferingDuration optional,
-  IntegerNumber                           dLBufferingSuggestedPacketCount optional,
-  PrivateExtension_List                   privateExtension optional
-};
-
-//7.2.11.3
-type set DownlinkDataNotificationFailureIndication
-{
-  Cause                                   cause,
-  NodeType                                originatingNode optional,
-  IMSI                                    iMSI optional, 
-  PrivateExtension_List                   privateExtension optional
-};
-
-//7.2.12
-type set DeleteIndirectDataForwardingTunnelRequest
-{
-  PrivateExtension_List                   privateExtension optional
-};
-
-//7.2.13
-type set DeleteIndirectDataForwardingTunnelResponse
-{
-  Cause                                   cause,
-  Recovery                                recovery optional, 
-  PrivateExtension_List                   privateExtension optional
-}
-
-//7.2.14.1
-type set ModifyBearerCommand
-{
-  AggregateMaximumBitRate                 ambr,   
-  BearerContextGrouped                    bearerContextGrouped,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  FullyQualifiedTEID                      fullyQualifiedTEID optional,      
-  PrivateExtension_List                   privateExtension optional 
-}with { 
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-}; 
-
-//7.2.14.2
-type set ModifyBearerFailureIndication
-{
-  Cause                                   cause,
-  Recovery                                recovery optional, 
-  Indication                              indicationFlags optional, 
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,     
-  PrivateExtension_List                   privateExtension optional 
-}with { 
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-}; 
-
-//7.2.15
-type set UpdateBearerRequest
-{
-  BearerContextGrouped_List               bearerContextGrouped, 
-  ProcedureTransactionID                  procedureTransactionID optional, 
-  ProtocolConfigOptions                   protocolConfigOptions optional, 
-  AggregateMaximumBitRate                 apn_ambr, 
-  ChangeReportingAction                   changeReportingAction optional,  
-  CSG_InformationReportingAction          cSG_InformationReportingAction optional,
-  Indication                              indicationFlags optional,
-  HeNBInformationReporting		            heNBInformationReporting optional,
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional,
-  PresenceReportingAreaAction             presenceReportingAreaAction optional,
-  LoadControlInformationGrouped_List      loadControlInformationGrouped optional,     
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional, 
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  PrivateExtension_List                   privateExtension optional  
-} with {   
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(csid) "REPEATABLE(yes)";     
-  variant(loadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-};
-
-//7.2.16
-//6.1.1 - Only the Cause information element, optionally Protocol Configuration Options and optionally the Recovery information element 
-//shall be included in the response if the Cause contains a value indicating that the request is not accepted.
-type set UpdateBearerResponse
-{
-  Cause                                   cause,
-  BearerContextGrouped_List               bearerContextGrouped optional,
-  ProtocolConfigOptions                   protocolConfigOptions optional,
-  Recovery                                recovery optional, 
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional, 
-  Indication                              indicationFlags optional,
-  UE_TimeZone                             uE_TimeZone optional,
-  UserLocationInfo                        uLI optional,
-  TrustedWLANAccessNetworkIdentifier	    trustedWLANAccessNetworkIdentifier optional,
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,     
-  PresenceReportingAreaInformation        presenceReportingAreaInformation optional,
-  IP_Address_List                         iP_Addr optional,
-  TWANIdentifierTimestamp                 tWANIdentifierTimestamp optional,
-  PortNumber_List			  portNumber optional,
-  FullyQualifiedContainer                 nBIFOMContainer optional,
-  ExtendedProtocolConfigOptions           extendedProtocolConfigOptions optional,
-  PrivateExtension_List                   privateExtension optional    
-} with {  
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(csid) "REPEATABLE(yes)";     
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-  variant(iP_Addr) "REPEATABLE(yes)";
-  variant(portNumber) "REPEATABLE(yes)";      
-};
-
-//7.2.17.1
-type set DeleteBearerCommand
-{
-  BearerContextGrouped_List               bearerContextGrouped,
-  UserLocationInfo                        uli optional,
-  UserLocationInformationTimestamp        uli_timestamp optional,
-  UE_TimeZone                             ue_timezone optional, 
-  OverloadControlInformationGrouped_List  overloadControlInformationGrouped optional,
-  FullyQualifiedTEID                      fullyQualifiedTEID optional,      
-  PrivateExtension_List                   privateExtension optional 
-} with {  
-  variant(bearerContextGrouped) "REPEATABLE(yes)";
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-};
-
-//7.2.17.2
-type set DeleteBearerFailureIndication
-{
-  Cause                                  cause,
-  BearerContextGrouped_List              bearerContextGrouped, 
-  Recovery                               recovery optional, 
-  Indication                             indicationFlags optional,
-  OverloadControlInformationGrouped_List overloadControlInformationGrouped optional,     
-  PrivateExtension_List                  privateExtension optional 
-} with {   
-  variant(bearerContextGrouped) "REPEATABLE(yes)";   
-  variant(overloadControlInformationGrouped) "REPEATABLE(yes)";
-};
-
-//7.2.18
-type set CreateIndirectDataForwardingTunnelRequest
-{
-  IMSI                                   iMSI optional,
-  MEI                                    mEI optional,  
-  Indication                             indicationFlags optional, 
-  FullyQualifiedTEID                     fullyQualifiedTEID optional,
-  BearerContextGrouped_List              bearerContextGrouped, 
-  Recovery                               recovery optional,   
-  PrivateExtension_List                  privateExtension optional 
-} with {   
-  variant(bearerContextGrouped) "REPEATABLE(yes)";   
-};
-
-//7.2.19
-//6.1.1 - Only the Cause information element, optionally Protocol Configuration Options and optionally the Recovery information element 
-//shall be included in the response if the Cause contains a value indicating that the request is not accepted.
-type set CreateIndirectDataForwardingTunnelResponse
-{
-  Cause                                  cause,
-  FullyQualifiedTEID                     fullyQualifiedTEID optional, 
-  BearerContextGrouped_List              bearerContextGrouped optional,
-  Recovery                               recovery optional,    
-  PrivateExtension_List                  privateExtension optional 
-} with {   
-  variant(bearerContextGrouped) "REPEATABLE(yes)";   
-};
-
-//7.2.20
-// VOID
-
-//7.2.21
-type set ReleaseAccessBearersRequest
-{
-  EPS_BearerID_List                      listOfRABs optional,
-  NodeType                               originatingNode optional,
-  Indication                             indicationFlags optional,
-  PrivateExtension_List                  privateExtension optional   
-} with { 
-  variant(listOfRABs) "REPEATABLE(yes)";
-};
-
-//7.2.22
-type set ReleaseAccessBearersResponse
-{
-  Cause                                 cause,
-  Recovery                              recovery optional, 
-  Indication                            indicationFlags optional,
-  LoadControlInformationGrouped         loadControlInformationGrouped optional,     
-  OverloadControlInformationGrouped     overloadControlInformationGrouped optional,     
-  PrivateExtension_List                 privateExtension optional  
-}
-
-//7.2.23
-type set StopPagingIndication
-{
-  IMSI                                   iMSI optional,
-  PrivateExtension_List                  privateExtension optional
-}
-
-//7.2.24
-type set ModifyAccessBearersRequest
-{
-  Indication                             indicationFlags optional, 
-  FullyQualifiedTEID                     fullyQualifiedTEID optional, 
-  DelayValue                             delayDownlinkPacketNotifReq optional,
-  BearerContextGrouped_List              bearerContextGrouped optional,
-  Recovery                               recovery optional,    
-  PrivateExtension_List                  privateExtension optional 
-} with {   
-  variant(bearerContextGrouped) "REPEATABLE(yes)";   
-};
-
-
-//7.2.25
-type set ModifyAccessBearersResponse
-{
-  Cause                                 cause,
-  BearerContextGrouped_List             bearerContextGrouped optional,
-  Recovery                              recovery optional,    
-  Indication                            indicationFlags optional,
-  LoadControlInformationGrouped         loadControlInformationGrouped optional,     
-  OverloadControlInformationGrouped     overloadControlInformationGrouped optional,     
-  PrivateExtension_List                 privateExtension optional  
-} with {   
-  variant(bearerContextGrouped) "REPEATABLE(yes)";   
-};
-
-
-//7.2.26
-type set RemoteUEReportNotification
-{
-  RemoteUEContextGrouped_List           remoteUEContextGrouped optional,
-  PrivateExtension_List                 privateExtension optional  
-} with {   
-  variant(remoteUEContextGrouped) "REPEATABLE(yes)";   
-};
-
-//7.2.27
-type set RemoteUEReportAcknowledge
-{
-  Cause                                 cause,
-  PrivateExtension_List                 privateExtension optional  
-};
-
-// Mobility Management messages
-//7.3.1
-type set ForwardRelocationRequest
-{
-  IMSI                                 iMSI optional,
-  FullyQualifiedTEID_List              fullyQualifiedTEID,
-  PDN_ConnectionGrouped_List           pDN_Connection,
-  FullyQualifiedDomainName_List        nodeName optional,
-  MM_Context                           mM_Context,
-  Indication                           indication optional,
-  FullyQualifiedContainer_List         containers optional,
-  TargetIdentification                 targetIdentification optional,
-  IP_Address_List                      iP_Addr optional,
-  FullyQualifiedCause_List             cause optional,
-  SourceIdentification                 sourceIdentification optional,
-  PLMN_ID           	                 selected_PLMN_ID optional,
-  Recovery                             recovery optional, 
-  TraceInformation                     traceInformation optional,
-  RFSP_Index_List                      rFSP_Index optional, 
-  CSG_ID                               cSG_ID optional,
-  CSG_MembershipIndication             cSG_MembershipIndication optional,
-  UE_TimeZone                          uE_TimeZone      optional,
-  ServingNetwork                       servingNetwork optional,
-  LocalDistinguishedName               lDN optional,
-  AdditionalMMContextForSRVCC          additionalMMContextForSRVCC optional,
-  AdditionalFlagsForSRVCC              additionalFlagsForSRVCC optional,
-  STN_SR                               sTN_SR optional,
-  MSISDN_List                          mSISDN optional,
-  MDT_Configuration                    mDT_Configuration optional,
-  User_CSG_Information                 user_CSG_Information optional,
-  MonitoringEventInformation           monitoringEventInformation optional,
-  IntegerNumber                        uEUsageType optional,
-  SCEF_PDN_ConnectionGrouped           mME_UE_SCEF_PDN_Connection optional,
-  PortNumber                           sourceUDPPortNumber optional,
-  ServingPLMNRateControl               servingPLMNRateControl optional,
-  PrivateExtension_List                privateExtension optional
-} with {      
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)";
-  variant(pDN_Connection) "REPEATABLE(yes)";
-  variant(containers) "REPEATABLE(yes)"; 
-  variant(iP_Addr) "REPEATABLE(yes)"; 
-  variant(cause) "REPEATABLE(yes)"; 
-  variant(rFSP_Index) "REPEATABLE(yes)";
-  variant(nodeName) "REPEATABLE(yes)"; 
-  variant(mSISDN) "REPEATABLE(yes)"; 
-}
-
-//7.3.2
-type set ForwardRelocationResponse
-{
-  Cause                                cause,
-  FullyQualifiedTEID                   fullyQualifiedTEID optional,
-  Indication                           indication optional,
-  BearerContextGrouped_List            bearerContextGrouped optional, 
-  FullyQualifiedCause_List             fullyQualifiedCause optional, 
-  FullyQualifiedContainer_List         transparentContainer optional,
-  LocalDistinguishedName               lDN optional,
-  FullyQualifiedDomainName_List	       nodeName optional,
-  NodeNumber_List                      nodeNumber optional,
-  NodeIdentifier_List                  nodeIdentifier optional,
-  PrivateExtension_List                privateExtension optional
-} with {   
-  variant(bearerContextGrouped) "REPEATABLE(yes)"; 
-  variant(fullyQualifiedCause) "REPEATABLE(yes)";       
-  variant(transparentContainer) "REPEATABLE(yes)";      
-  variant(nodeName) "REPEATABLE(yes)";   
-  variant(nodeIdentifier) "REPEATABLE(yes)";   
-  variant(nodeNumber) "REPEATABLE(yes)";   
-};
-
-//7.3.3
-type set ForwardRelocationCompleteNotification
-{
-  Indication                           indication optional,
-  PrivateExtension_List                privateExtension optional
-};
-
-//7.3.4
-type set ForwardRelocationCompleteAcknowledge
-{
-  Cause                                cause,
-  Recovery                             recovery optional, 
-  PrivateExtension_List                     privateExtension optional
-};
-
-//7.3.5
-type set ContextRequest
-{
-  IMSI                                 iMSI optional,
-  GUTI                                 gUTI optional,
-  UserLocationInfo                     uLI optional,
-  Packet_TMSI                          pTMSI optional,
-  P_TMSI_Signature                     pTMSI_Signature optional,
-  CompleteRequestMessage               complete_TAU_RequestMessage optional,
-  FullyQualifiedTEID                   address_and_TEID_for_ControlPlane optional,
-  PortNumber                 	         portNumber optional,
-  RAT_Type                             rAT_Type optional, 
-  Indication                           indication optional,
-  Hop_Counter                          hop_Counter optional,
-  ServingNetwork                       target_PLMN_ID optional,
-  LocalDistinguishedName               lDN optional,
-  FullyQualifiedDomainName_List	       nodeName optional,
-  NodeNumber                           sGSNNumber optional,
-  NodeIdentifier_List                  nodeIdentifier optional,
-  CIoT_OptimizationsSupportIndication  cIoT_OptimizationsSupportIndication optional,
-  PrivateExtension_List                privateExtension optional  
-} with {   
-  variant(nodeName) "REPEATABLE(yes)"; 
-  variant(nodeIdentifier) "REPEATABLE(yes)";   
-}; 
-
-//7.3.6
-type set ContextResponse
-{
-  Cause                                cause,
-  IMSI                                 iMSI optional,
-  MM_Context                           mM_Context optional,
-  PDN_ConnectionGrouped_List           pDN_Connection optional,
-  FullyQualifiedTEID_List              fullyQualifiedTEID optional,
-  FullyQualifiedDomainName_List        nodeName optional,
-  Indication                           indication optional,
-  TraceInformation                     traceInformation optional,
-  IP_Address_List                      iP_Addr optional,
-  RFSP_Index_List                      rFSP_Index optional,               
-  UE_TimeZone                          uE_TimeZone optional,
-  LocalDistinguishedName               lDN optional,
-  MDT_Configuration                    mDT_Configuration optional,
-  User_CSG_Information                 user_CSG_Information optional,
-  MonitoringEventInformation           monitoringEventInformation optional,
-  IntegerNumber                        uEUsageType optional,
-  SCEF_PDN_ConnectionGrouped           mME_US_SCEF_PDN_Connection optional,
-  RAT_Type                             rAT_Type optional,
-  ServingPLMNRateControl               servingPLMNRateControl optional,
-  Counter								counter optional,
-  PrivateExtension_List                privateExtension optional 
-}with {    
-  variant(pDN_Connection) "REPEATABLE(yes)";
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)";
-  variant(iP_Addr) "REPEATABLE(yes)";
-  variant(rFSP_Index) "REPEATABLE(yes)";    
-  variant(nodeName) "REPEATABLE(yes)";     
-};
-
-//7.3.7
-type set ContextAcknowledge
-{
-  Cause                                cause,
-  Indication                           indication optional,  //SGW change ind, israi
-  FullyQualifiedTEID                   fullyQualifiedTEID optional,
-  NodeNumber_List                      nodeNumber optional,
-  NodeIdentifier_List                  nodeIdentifier optional,
-  PrivateExtension_List                privateExtension optional
-}with {    
-  variant(nodeNumber) "REPEATABLE(yes)";     
-  variant(nodeIdentifier) "REPEATABLE(yes)";     
-};
-
-//7.3.8
-type set IdentificationRequest
-{
-  GUTI                                 gUTI optional,
-  UserLocationInfo                     uLI optional,
-  Packet_TMSI                          pTMSI optional,
-  P_TMSI_Signature                     pTMSI_Signature optional,
-  CompleteRequestMessage               complete_AttachRequestMessage optional, 
-  IP_Address                           addressForControlPlane optional,
-  PortNumber                 	       portNumber optional,
-  Hop_Counter                          hop_Counter optional,
-  ServingNetwork                       target_PLMN_ID optional, 
-  PrivateExtension_List                privateExtension optional
-};
-
-//7.3.9
-type set IdentificationResponse
-{
-  Cause                                cause,
-  IMSI                                 iMSI optional,
-  MM_Context                           mM_Context optional,
-  TraceInformation                     traceInformation optional,
-  IntegerNumber                        uEUsageType optional,
-  MonitoringEventInformation           monitoringEventInformation optional,
-  PrivateExtension_List                privateExtension optional
-};
-
-//7.3.10
-type set ForwardAccessContextNotification
-{
-  RAB_Context_List                     rAB_Contexts optional,      
-  Source_RNC_PDCP_Context_Info         source_RNC_PDCP_Context_Info optional,    
-  PDU_Numbers                          pDU_Numbers optional,
-  FullyQualifiedContainer              eUTRAN_TransparentContainer optional,
-  PrivateExtension_List                privateExtension optional
-}with {    
-  variant(rAB_Contexts) "REPEATABLE(yes)";    
-};
-
-
-//7.3.11
-type set ForwardAccessContextAcknowledge
-{
-  Cause                                cause,
-  PrivateExtension_List                privateExtension optional 
-}
-
-//7.3.12
-type set DetachNotification
-{
-  Cause                               cause,
-  DetachType                          detachType optional,
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.3.13
-type set DetachAcknowledge
-{
-  Cause                               cause,
-  Recovery                            recovery optional, 
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.3.14
-type set ChangeNotificationRequest
-{
-  IMSI                                iMSI optional,
-  MEI                                 mEI optional,  
-  Indication                          indication optional,
-  RAT_Type                            rAT_Type, 
-  UserLocationInfo                    uLI optional, 
-  User_CSG_Information                user_CSG_Information optional,
-  IP_Address                          gTPC_IP_Address optional,
-  EPS_BearerID                        linkedBearerIdentity optional,
-  PresenceReportingAreaInformation    presenceReportingAreaInformation optional,
-  Counter								counter optional,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.3.15
-//6.1.1 - Only the Cause information element, optionally Protocol Configuration Options and optionally the Recovery information element 
-//shall be included in the response if the Cause contains a value indicating that the request is not accepted.
-type set ChangeNotificationResponse
-{
-  IMSI                                iMSI optional,
-  MEI                                 mEI optional,  
-  Cause                               cause,
-  ChangeReportingAction               changeReportingAction optional,  
-  CSG_InformationReportingAction      cSG_InformationReportingAction optional,
-  PresenceReportingAreaAction         presenceReportingAreaAction optional,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.3.16
-type set RelocationCancelRequest
-{
-  IMSI                                iMSI optional,
-  MEI                                 mEI optional,   
-  Indication                          indication optional, 
-  FullyQualifiedCause                 ranapCause optional,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.3.17
-type set RelocationCancelResponse
-{
-  Cause                               cause,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.3.18
-type set ConfigurationTransferTunnel
-{
-  FullyQualifiedContainer              eUTRAN_TransparentContainer, 
-  TargetIdentification                 targetENB_ID
-}
-
-//7.3.19
-type set RAN_InformationRelay
-{
-  FullyQualifiedContainer              bSS_Container,
-  TargetIdentification                 rIM_RoutingAddress optional,
-  PrivateExtension_List                privateExtension optional
-}
-
-//7.3.20
-type set ISR_StatusIndication
-{
-  ActionIndication                    actionIndication,
-  PrivateExtension_List               privateExtension optional 
-}
-
-//7.3.21
-type set UE_RegistrationQueryRequest
-{
-  IMSI                                iMSI,
-  PrivateExtension_List               privateExtension optional 
-}
-
-//7.3.22
-type set UE_RegistrationQueryResponse
-{
-  Cause                               cause,
-  IMSI                                iMSI,
-  PLMN_ID                             selectedCoreNetworkOperatorIdenifier,
-  PrivateExtension_List               privateExtension optional 
-}
-
-//7.4 Fallback Related messages
-
-//7.4.1
-type set SuspendNotification
-{
-  IMSI                                iMSI optional,
-  UserLocationInfo                    uLI optional,                
-  EPS_BearerID                        linkedEPS_BearerID optional,
-  Packet_TMSI                         pTMSI optional,
-  NodeType                            originatingNode optional,
-  IP_Address                          addressForControlPlane optional,
-  PortNumber                          uDPSourcePortNumber optional,
-  Hop_Counter                         hopCounter optional,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.4.2
-type set SuspendAcknowledge
-{
-  Cause                               cause,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.4.3
-type set ResumeNotification
-{
-  IMSI                                iMSI,
-  EPS_BearerID                        linkedEPS_BearerID optional,
-  NodeType                            originatingNode optional,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.4.4 
-type set ResumeAcknowledge
-{
-  Cause                               cause,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.4.5
-type set CSPagingIndication
-{
-  IMSI                                iMSI,
-  FullyQualifiedDomainName            vLR_Name,
-  TMSI                                tMSI optional,
-  UserLocationInfo                    locationAreaIdentifier optional,
-  GlobalCN_ID                         globalCN_ID optional, 
-  ChannelNeeded                       channelNeeded optional,
-  EMLPP_Priority                      eMLPP_Priority optional,
-  ServiceIndicator                    serviceIndicator optional,
-  PrivateExtension_List               privateExtension optional
-}; 
-
-//7.4.6
-type set AlertMMENotification
-{
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.4.7 
-type set AlertMMEAcknowledge
-{
-  Cause                               cause,
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.4.8
-type set UEActivityNotification
-{
-  PrivateExtension_List               privateExtension optional
-};
-
-//7.4.9 
-type set UEActivityAcknowledge
-{
-  Cause                               cause,
-  PrivateExtension_List               privateExtension optional
-};
-
-//Non-3GPP access related messages
-//7.5.1
-type set CreateForwardingTunnelRequest
-{
-  S103_PDF_List                       s103_PDF,
-  PrivateExtension_List               privateExtension optional
-} with {    
-  variant(s103_PDF) "REPEATABLE(yes)";    
-};
-
-//7.5.2   
-type set CreateForwardingTunnelResponse
-{
-  Cause                               cause,
-  S1_UDF_List                         s1_UDF optional,
-  PrivateExtension_List               privateExtension optional
-} with {    
-  variant(s1_UDF) "REPEATABLE(yes)";    
-}; 
-
-//Restoration and recovery
-//7.9.1
-type set DeletePDN_ConnectionSetRequest
-{
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional, //MME, SGW, PGW, ePDG, TWAN
-  PrivateExtension_List                   privateExtension optional 
-} with {    
-  variant(csid) "REPEATABLE(yes)";     
-};
-
-//7.9.2
-type set DeletePDN_ConnectionSetResponse
-{
-  Cause                               cause,
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.9.3
-type set UpdatePDN_ConnectionSetRequest
-{
-  FullyQualifiedPDN_ConnectionSetID_List  csid optional, //MME, SGW
-  PrivateExtension_List                   privateExtension optional
-} with {    
-  variant(csid) "REPEATABLE(yes)";     
-};
-
-
-//7.9.4
-type set UpdatePDN_ConnectionSetResponse
-{
-  Cause                               cause,
-  FullyQualifiedPDN_ConnectionSetID   csid optional, //PGW
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.9.5
-type set PGW_RestartNotification
-{
-  IP_Address_List                        iP_Addr,//PGW, SGW
-  Cause					 cause optional,
-  PrivateExtension_List                  privateExtension optional
-}
-with {    
-  variant(iP_Addr) "REPEATABLE(yes)"; 
-};
-
-//7.9.6
-type set PGW_RestartNotificationAcknowledge
-{
-  Cause                               cause,
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.9.7
-type set PGW_DownlinkTriggeringNotification
-{
-  IMSI                                iMSI,
-  IP_Address			      mME_S4_SGSN_Identifier optional,
-  FullyQualifiedTEID                  senderF_TEIDForControlPlane optional,
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.9.8
-type set PGW_DownlinkTriggeringAcknowledge
-{
-  Cause				      cause,
-  IMSI                                iMSI optional,
-  IP_Address			      mME_S4_SGSN_Identifier optional,
-  PrivateExtension_List               privateExtension optional
-}
-
-
-// Trace Management Messages
-//7.12.1 
-type set TraceSessionActivation
-{
-  IMSI                                iMSI optional,
-  TraceInformation                    traceInformation,
-  MEI                                 mEI optional
-}
-
-//7.12.2
-type set TraceSessionDeactivation
-{
-  TraceReference                      traceReference
-}
-
-
-// MBMS Messages
-//7.13.1
-type set MBMSSessionStartRequest
-{
-  FullyQualifiedTEID                  fullyQualifiedTEID,
-  TMGI                                tMGI,
-  MBMS_SessionDuration                mBMS_SessionDuration,
-  MBMS_ServiceArea                    mBMS_ServiceArea,
-  MBMS_SessionIdentifier              mBMS_SessionIdentifier optional,
-  MBMS_FlowIdentifier                 mBMS_FlowIdentifier optional,
-  Bearer_QoS                          QoS_Profile,
-  MBMS_IPMulticastDistribution_List   mBMS_IPMulticastDistribution,
-  Recovery                            recovery optional,
-  MBMSTimetoDataTransfer              mBMSTimetoDataTransfer optional,
-  AbsoluteTimeofMBMSDataTransfer      mBMS_Data_Transfer_Start optional,
-  MBMSFlags                           mBMSFlags optional,
-  ECGI_List                           mBMSCellList optional,
-  PrivateExtension_List               privateExtension optional
-} with {    
-  variant(mBMS_IPMulticastDistribution) "REPEATABLE(yes)";     
-};
-
-//7.13.2
-type set MBMSSessionStartResponse
-{
-  Cause                               cause,
-  FullyQualifiedTEID_List             fullyQualifiedTEID optional,
-  MBMS_DistributionAcknowledge        mBMS_DistributionAcknowledge optional,
-  Recovery                            recovery optional,
-  PrivateExtension_List               privateExtension optional
-} with { 
-  variant(fullyQualifiedTEID) "REPEATABLE(yes)"; 
-};
-
-//7.13.3
-type set MBMSSessionUpdateRequest
-{
-  MBMS_ServiceArea                    mBMS_ServiceArea optional,
-  TMGI                                tMGI,
-  FullyQualifiedTEID                  fullyQualifiedTEID optional,
-  MBMS_SessionDuration                mBMS_SessionDuration,
-  Bearer_QoS                          QoS_Profile,
-  MBMS_SessionIdentifier              mBMS_SessionIdentifier optional,
-  MBMS_FlowIdentifier                 mBMS_FlowIdentifier optional,
-  MBMSTimetoDataTransfer              mBMSTimetoDataTransfer optional,
-  AbsoluteTimeofMBMSDataTransfer      mBMS_Data_Transfer_Start optional,  
-  ECGI_List                           mBMSCellList optional,
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.13.4
-type set MBMSSessionUpdateResponse
-{
-  Cause                               cause,
-  MBMS_DistributionAcknowledge        mBMS_DistributionAcknowledge optional,
-  FullyQualifiedTEID                  fullyQualifiedTEID optional,
-  Recovery                            recovery optional,
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.13.5
-type set MBMSSessionStopRequest
-{
-  MBMS_FlowIdentifier                 mBMS_FlowIdentifier optional,
-  AbsoluteTimeofMBMSDataTransfer      mBMS_Data_Transfer_Stop optional,   
-  PrivateExtension_List               privateExtension optional
-}
-
-//7.13.6
-type set MBMSSessionStopResponse
-{
-  Cause                               cause,
-  Recovery                            recovery optional, 
-  PrivateExtension_List               privateExtension optional
-}
-
-
-type union GTPCv2_PDUs {
-  EchoRequest                                  echoRequest,
-  EchoResponse                                 echoResponse,
-  VersionNotSupported                          versionNotSupported,
-  CreateSessionRequest                         createSessionRequest, 
-  CreateSessionResponse                        createSessionResponse,
-  CreateBearerRequest                          createBearerRequest,
-  CreateBearerResponse                         createBearerResponse,
-  BearerResourceCommand                        bearerResourceCommand,
-  BearerResourceFailureIndication              bearerResourceFailureIndication,
-  ModifyBearerRequest                          modifyBearerRequest,
-  ModifyBearerResponse                         modifyBearerResponse,
-  DeleteSessionRequest                         deleteSessionRequest,   
-  DeleteBearerRequest                          deleteBearerRequest,
-  DeleteSessionResponse                        deleteSessionResponse,
-  DeleteBearerResponse                         deleteBearerResponse,
-  DownlinkDataNotification                     downlinkDataNotification,
-  DownlinkDataNotificationAcknowledgement      downlinkDataNotificationAcknowledgement,
-  DownlinkDataNotificationFailureIndication    downlinkDataNotificationFailureIndication,
-  DeleteIndirectDataForwardingTunnelRequest    deleteIndirectDataForwardingTunnelRequest,
-  DeleteIndirectDataForwardingTunnelResponse   deleteIndirectDataForwardingTunnelResponse,
-  ModifyBearerCommand                          modifyBearerCommand,
-  ModifyBearerFailureIndication                modifyBearerFailureIndication,
-  UpdateBearerRequest                          updateBearerRequest,
-  UpdateBearerResponse                         updateBearerResponse,
-  DeleteBearerCommand                          deleteBearerCommand,
-  DeleteBearerFailureIndication                deleteBearerFailureIndication,  
-  CreateIndirectDataForwardingTunnelRequest    createIndirectDataForwardingTunnelRequest,
-  CreateIndirectDataForwardingTunnelResponse   createIndirectDataForwardingTunnelResponse,
-  ReleaseAccessBearersRequest                  releaseAccessBearersRequest,
-  ReleaseAccessBearersResponse                 releaseAccessBearersResponse,
-  StopPagingIndication                         stopPagingIndication,
-  ModifyAccessBearersRequest                   modifyAccessBearersRequest,
-  ModifyAccessBearersResponse                  modifyAccessBearersResponse,
-  RemoteUEReportNotification                   remoteUEReportNotification,
-  RemoteUEReportAcknowledge                    remoteUEReportAcknowledge,
-  ForwardRelocationRequest                     forwardRelocationRequest,
-  ForwardRelocationResponse                    forwardRelocationResponse,
-  ForwardRelocationCompleteNotification        forwardRelocationCompleteNotification,
-  ForwardRelocationCompleteAcknowledge         forwardRelocationCompleteAcknowledge,
-  ContextRequest                               contextRequest,
-  ContextResponse                              contextResponse,
-  ContextAcknowledge                           contextAcknowledge, 
-  IdentificationRequest                        identificationRequest,
-  IdentificationResponse                       identificationResponse,
-  ForwardAccessContextNotification             forwardAccessContextNotification,
-  ForwardAccessContextAcknowledge              forwardAccessContextAcknowledge,
-  DetachNotification                           detachNotification,
-  DetachAcknowledge                            detachAcknowledge,
-  ChangeNotificationRequest                    changeNotificationRequest,
-  ChangeNotificationResponse                   changeNotificationResponse,
-  RelocationCancelRequest                      relocationCancelRequest,
-  RelocationCancelResponse                     relocationCancelResponse,
-  ConfigurationTransferTunnel                  configurationTransferTunnel,
-  RAN_InformationRelay                         rAN_InformationRelay,
-  SuspendNotification                          suspendNotification,
-  SuspendAcknowledge                           suspendAcknowledge,
-  ResumeNotification                           resumeNotification,
-  ResumeAcknowledge                            resumeAcknowledge,
-  CSPagingIndication                           cSPagingIndication,
-  CreateForwardingTunnelRequest                createForwardingTunnelRequest,
-  CreateForwardingTunnelResponse               createForwardingTunnelResponse,
-  DeletePDN_ConnectionSetRequest               deletePDN_ConnectionSetRequest,
-  DeletePDN_ConnectionSetResponse              deletePDN_ConnectionSetResponse,
-  TraceSessionActivation                       traceSessionActivation,
-  TraceSessionDeactivation                     traceSessionDeactivation,
-  UpdatePDN_ConnectionSetRequest               updatePDN_ConnectionSetRequest,
-  UpdatePDN_ConnectionSetResponse              updatePDN_ConnectionSetResponse,
-  PGW_RestartNotification                      pGW_RestartNotification,
-  PGW_RestartNotificationAcknowledge           pGW_RestartNotificationAcknowledge,
-  PGW_DownlinkTriggeringNotification           pGW_DownlinkTriggeringNotification,
-  PGW_DownlinkTriggeringAcknowledge	           pGW_DownlinkTriggeringAcknowledge,
-  AlertMMENotification                         alertMMENotification,
-  AlertMMEAcknowledge                          alertMMEAcknowledge,
-  UEActivityNotification                       uEActivityNotification,
-  UEActivityAcknowledge                        uEActivityAcknowledge,
-  MBMSSessionStartRequest                      mBMSSessionStartRequest,
-  MBMSSessionStartResponse                     mBMSSessionStartResponse,
-  MBMSSessionUpdateRequest                     mBMSSessionUpdateRequest,
-  MBMSSessionUpdateResponse                    mBMSSessionUpdateResponse,
-  MBMSSessionStopRequest                       mBMSSessionStopRequest,
-  MBMSSessionStopResponse                      mBMSSessionStopResponse,
-  ISR_StatusIndication			                   iSR_StatusIndication,
-  UE_RegistrationQueryRequest                  uE_RegistrationQueryRequest,
-  UE_RegistrationQueryResponse                 uE_RegistrationQueryResponse
-}
-
-// TOP LEVEL GTPC PDU
-type record PDU_GTPCv2
-{
-  BIT3                           spare,   //0 
-  BIT1                           t_Bit,
-  BIT1                           p_Bit,
-  BIT3                           version,  //'010'B
-  OCT1                           messageType,
-  LIN2_BO_LAST                   lengthf, 
-  OCT4                           tEID optional,
-  OCT3                           sequenceNumber,
-  OCT1                           spare3, // 0
-  GTPCv2_PDUs                    gtpcv2_pdu,
-  PDU_GTPCv2                     piggybackPDU_GTPCv2 optional
-}  with { 
-  variant (tEID) "PRESENCE(t_Bit = '1'B)";
-  variant (piggybackPDU_GTPCv2) "PRESENCE(p_Bit = '1'B)";   
-  variant (lengthf) "LENGTHTO(tEID,sequenceNumber,spare3,gtpcv2_pdu)";
-  variant (gtpcv2_pdu) "CROSSTAG( 
-  echoRequest,                                       messageType = '01'O; 
-  echoResponse,                                      messageType = '02'O; 
-  versionNotSupported,                               messageType = '03'O; 
-  createSessionRequest,                              messageType = '20'O;  //32 
-  createSessionResponse,                             messageType = '21'O;  //33  
-  createBearerRequest,                               messageType = '5F'O;  //95 
-  createBearerResponse,                              messageType = '60'O;  //96 
-  bearerResourceCommand,                             messageType = '44'O;  //68 
-  bearerResourceFailureIndication,                   messageType = '45'O;  //69 
-  modifyBearerRequest,                               messageType = '22'O;  //34
-  modifyBearerResponse,                              messageType = '23'O;  //35
-  deleteSessionRequest,                              messageType = '24'O;  //36    
-  deleteBearerRequest,                               messageType = '63'O;  //99
-  deleteSessionResponse,                             messageType = '25'O;  //37 
-  deleteBearerResponse,                              messageType = '64'O;  //100 
-  downlinkDataNotification,                          messageType = 'B0'O;  //176
-  downlinkDataNotificationAcknowledgement,           messageType = 'B1'O;  //177 
-  downlinkDataNotificationFailureIndication,         messageType = '46'O;  //70 
-  deleteIndirectDataForwardingTunnelRequest,         messageType = 'A8'O;  //168 
-  deleteIndirectDataForwardingTunnelResponse,        messageType = 'A9'O;  //169  
-  modifyBearerCommand,                               messageType = '40'O;  //64
-  modifyBearerFailureIndication,                     messageType = '41'O;  //65
-  updateBearerRequest,                               messageType = '61'O;  //97 
-  updateBearerResponse,                              messageType = '62'O;  //98 
-  deleteBearerCommand,                               messageType = '42'O;  //66
-  deleteBearerFailureIndication,                     messageType = '43'O;  //67 
-  createIndirectDataForwardingTunnelRequest,         messageType = 'A6'O;  //166 
-  createIndirectDataForwardingTunnelResponse,        messageType = 'A7'O;  //167 
-  releaseAccessBearersRequest,                       messageType = 'AA'O;  //170
-  releaseAccessBearersResponse,                      messageType = 'AB'O;  //171 
-  stopPagingIndication,                              messageType = '49'O;  //73 
-  modifyAccessBearersRequest,                        messageType = 'D3'O;  //211
-  modifyAccessBearersResponse,                       messageType = 'D4'O;  //212
-  remoteUEReportNotification,                        messageType = '28'O;  //40
-  remoteUEReportAcknowledge,                         messageType = '29'O;  //41
-  forwardRelocationRequest,                          messageType = '85'O;  //133
-  forwardRelocationResponse,                         messageType = '86'O;  //134
-  forwardRelocationCompleteNotification,             messageType = '87'O;  //135 
-  forwardRelocationCompleteAcknowledge,              messageType = '88'O;  //136 
-  contextRequest,                                    messageType = '82'O;  //130 
-  contextResponse,                                   messageType = '83'O;  //131
-  contextAcknowledge,                                messageType = '84'O;  //132 
-  identificationRequest,                             messageType = '80'O;  //128
-  identificationResponse,                            messageType = '81'O;  //129
-  forwardAccessContextNotification,                  messageType = '89'O;  //137
-  forwardAccessContextAcknowledge,                   messageType = '8A'O;  //138 
-  detachNotification,                                messageType = '95'O;  //149 
-  detachAcknowledge,                                 messageType = '96'O;  //150 
-  changeNotificationRequest,                         messageType = '26'O;  //38
-  changeNotificationResponse,                        messageType = '27'O;  //39
-  relocationCancelRequest,                           messageType = '8B'O;  //139
-  relocationCancelResponse,                          messageType = '8C'O;  //140
-  configurationTransferTunnel,                       messageType = '8D'O;  //141
-  rAN_InformationRelay,                              messageType = '98'O;  //152 
-  suspendNotification,                               messageType = 'A2'O;  //162 
-  suspendAcknowledge,                                messageType = 'A3'O;  //163 
-  resumeNotification,                                messageType = 'A4'O;  //164
-  resumeAcknowledge,                                 messageType = 'A5'O;  //165
-  cSPagingIndication,                                messageType = '97'O;  //151 
-  createForwardingTunnelRequest,                     messageType = 'A0'O;  //160 
-  createForwardingTunnelResponse,                    messageType = 'A1'O;  //161 
-  deletePDN_ConnectionSetRequest,                    messageType = '65'O;  //101
-  deletePDN_ConnectionSetResponse,                   messageType = '66'O;  //102
-  traceSessionActivation,                            messageType = '47'O;  //71
-  traceSessionDeactivation,                          messageType = '48'O;  //72 
-  updatePDN_ConnectionSetRequest,                    messageType = 'C8'O;  //200
-  updatePDN_ConnectionSetResponse,                   messageType = 'C9'O;  //201
-  pGW_RestartNotification,                           messageType = 'B3'O;  //179
-  pGW_RestartNotificationAcknowledge,                messageType = 'B4'O;  //180
-  pGW_DownlinkTriggeringNotification,                messageType = '67'O;  //103
-  pGW_DownlinkTriggeringAcknowledge,                 messageType = '68'O;  //104
-  alertMMENotification,                              messageType = '99'O;  //153
-  alertMMEAcknowledge,                               messageType = '9A'O;  //154
-  uEActivityNotification,                            messageType = '9B'O;  //155
-  uEActivityAcknowledge,                             messageType = '9C'O;  //156
-  iSR_StatusIndication,				                       messageType = '9D'O;  //157
-  uE_RegistrationQueryRequest,				               messageType = '9E'O;  //158
-  uE_RegistrationQueryResponse,				               messageType = '9F'O;  //159
-  mBMSSessionStartRequest,                           messageType = 'E7'O;  //231
-  mBMSSessionStartResponse,                          messageType = 'E8'O;  //232
-  mBMSSessionUpdateRequest,                          messageType = 'E9'O;  //233
-  mBMSSessionUpdateResponse,                         messageType = 'EA'O;  //234
-  mBMSSessionStopRequest,                            messageType = 'EB'O;  //235
-  mBMSSessionStopResponse,                           messageType = 'EC'O;  //236
-  )";                          
-};
-
-
-
-} with { encode "RAW"} // End of module
diff --git a/ISUP_Q.762_CNL113365_LATEST/ISUP_Q.762_CNL113365.tpd b/ISUP_Q.762_CNL113365_LATEST/ISUP_Q.762_CNL113365.tpd
deleted file mode 100644
index 7b64c3d..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/ISUP_Q.762_CNL113365.tpd
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2017 Ericsson
-
-  The copyright to the computer  program(s) herein  is the property of Ericsson.
-  The program(s) may be used and/or copied only with the written permission
-  of Ericsson or in accordance with  the terms and conditions  stipulated in the
-  agreement/contract under which the program(s) has been supplied.
-
-
-   File:               ISUP_Q.762_CNL113365.tpd
-   Description:        tpd project file
-   Rev:                R7D
-   Prodnr:             CNL 113 365
-
- -->
-<TITAN_Project_File_Information version="1.0">
-  <ProjectName>ISUP_Q.762_CNL113365</ProjectName>
-  <ReferencedProjects>
-    <ReferencedProject name="ProtocolModules_Common" projectLocationURI="../COMMON/ProtocolModules_Common.tpd"/>
-  </ReferencedProjects>
-  <Folders>
-    <FolderResource projectRelativePath="src" relativeURI="src"/>
-  </Folders>
-  <Files>
-    <FileResource projectRelativePath="src/ISUP_EncDec.cc" relativeURI="src/ISUP_EncDec.cc"/>
-    <FileResource projectRelativePath="src/ISUP_Types.ttcn" relativeURI="src/ISUP_Types.ttcn"/>
-  </Files>
-  <ActiveConfiguration>Default</ActiveConfiguration>
-  <Configurations>
-    <Configuration name="Default">
-      <ProjectProperties>
-        <MakefileSettings>
-          <generateInternalMakefile>true</generateInternalMakefile>
-          <GNUMake>true</GNUMake>
-          <incrementalDependencyRefresh>true</incrementalDependencyRefresh>
-          <targetExecutable>bin/ISUP_Q.762_CNL113365</targetExecutable>
-        </MakefileSettings>
-        <LocalBuildSettings>
-          <workingDirectory>bin</workingDirectory>
-        </LocalBuildSettings>
-        <NamingCoventions>
-          <moduleParameter>tsp.*</moduleParameter>
-        </NamingCoventions>
-      </ProjectProperties>
-    </Configuration>
-  </Configurations>
-</TITAN_Project_File_Information>
diff --git a/ISUP_Q.762_CNL113365_LATEST/demo/ISUP_Mapping.ttcn b/ISUP_Q.762_CNL113365_LATEST/demo/ISUP_Mapping.ttcn
deleted file mode 100644
index a29603e..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/demo/ISUP_Mapping.ttcn
+++ /dev/null
@@ -1,128 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright Test Competence Center (TCC) ETH 2006
-//                                                                           //
-// 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:     ISUP_Mapping.ttcn
-//  Rev:      R7D
-//  Prodnr:   CNL 113 365
-//  Updated:  2006-05-10
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-module ISUP_Mapping
-{
- import from MTP3asp_PortType all;
- import from MTP3asp_Types all;
- import from ISUP_Types all;
-
-group Types
-{
-  type record MSC_ISUP_MTP3_parameters
-    {
-     MTP3_Field_sio    sio,
-     integer           opc,
-     integer           dpc,
-     integer           sls
-    }
-
-group PortTypes
-{
-  //*************************************************************************
-  //*                      ISUP port types                                  *
-  //*************************************************************************
-  type port MTP3asp_ISUP_PT message
-    {
-     inout    PDU_ISUP;
-    } with {extension "internal"}
-
-  type port MTC_ISUP_PT message    //  Coordination message
-    {
-     inout    charstring;
-     inout    octetstring;
-    } with {extension "internal"}
-}//end group PortTypes
-
-
-group ComponentTypes
-{
-  //*************************************************************************
-  //*                       ISUP Component types                            *
-  //*************************************************************************
-  type component ISUP_CT
-    {
-    //========================Component constants===========================
-
-    //========================Component variables===========================
-     var PDU_ISUP           v_PDU_ISUP;
-
-    //========================Component Timers-=============================
-
-    //========================Component Port Declarations====================
-     port MTC_ISUP_PT       MTC_ISUP_PORT;      //up
-     port MTP3asp_ISUP_PT   MTP3_ISUP_PORT;     //down
-    } // end component type definition
-
-  //*************************************************************************
-  //*                       ISUP EncDec component                           *
-  //*************************************************************************
-  type component ISUP_EncDec_CT
-    {
-    //========================Component Port Declarations====================
-     port MTP3asp_ISUP_PT   MTP3_ISUP_PORT;  //<= SP_PT=_PT
-     port MTP3asp_PT        MTP3_PORT;
-    } // end component type definition
-}//end group ComponentTypes
-
-}//end group Types
-
-
-//*************************************************************************
-//*                       ISUP EncDec component behaviour                 *
-//*************************************************************************
-function f_ISUP_EncDecComp_Behaviour
-     ( MSC_ISUP_MTP3_parameters pl_address_ISUP )  runs on ISUP_EncDec_CT
-  {
-  var  ASP_MTP3_TRANSFERind   vl_ASP_MTP3_TRANSFERind;
-  var  PDU_ISUP               vl_PDU_ISUP;
-  pl_address_ISUP.sio.si := '0101'B;
-
-  while (true)
-    {
-    alt
-      {
-      [] MTP3_ISUP_PORT.receive ( PDU_ISUP : ?) -> value vl_PDU_ISUP
-        {
-        MTP3_PORT.send (t_ASP_MTP3_TRANSFERreq
-                        (pl_address_ISUP.sio,
-                         pl_address_ISUP.opc,
-                         pl_address_ISUP.dpc,
-                         pl_address_ISUP.sls,
-                         enc_PDU_ISUP(vl_PDU_ISUP)));
-        repeat;
-        }
-
-      // receive message from below (to be decoded)
-      [] MTP3_PORT.receive (tr_ASP_MTP3_TRANSFERind_sio
-                            (pl_address_ISUP.sio.ni,
-                             ?,          //priority: no filtering
-                             pl_address_ISUP.sio.si,
-                             ?,
-                             ?,
-                             ?,
-                             ? )) -> value  vl_ASP_MTP3_TRANSFERind
-        {
-        MTP3_ISUP_PORT.send (dec_PDU_ISUP(vl_ASP_MTP3_TRANSFERind.data));
-        repeat;
-        }
-
-      [] MTP3_PORT.receive (t_ASP_MTP3_TRANSFERind( ?, ?, ?, ?, ? ))
-        { log("Invalid SIO:  MESSAGE dropped!!!"); }
-      }   //end of alt
-    } // end while
-  }  // end of f_ISUP_EncDecComp_Behaviour
-}
diff --git a/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_FS.pdf b/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_FS.pdf
deleted file mode 100644
index adae942..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_FS.pdf
+++ /dev/null
Binary files differ
diff --git a/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_Q_PRI.doc b/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_Q_PRI.doc
deleted file mode 100644
index 3906228..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_Q_PRI.doc
+++ /dev/null
Binary files differ
diff --git a/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_Q_UG.doc b/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_Q_UG.doc
deleted file mode 100644
index d70488d..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/doc/ISUP_Q_UG.doc
+++ /dev/null
Binary files differ
diff --git a/ISUP_Q.762_CNL113365_LATEST/src/ISUP_EncDec.cc b/ISUP_Q.762_CNL113365_LATEST/src/ISUP_EncDec.cc
deleted file mode 100644
index ea18af6..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/src/ISUP_EncDec.cc
+++ /dev/null
@@ -1,465 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright Test Competence Center (TCC) ETH 2011
-//                                                                           //
-// 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:		ISUP_EncDec.cc
-//  Rev:                R7D
-//  Prodnr:             CNL 113 365
-//  Updated:            2011-05-10
-//  Contact:            http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-#include "ISUP_Types.hh"
-
-namespace ISUP__Types {
-
-OCTETSTRING enc__PDU__ISUP(const PDU__ISUP& pdu)
-{
-    if (TTCN_Logger::log_this_event(TTCN_DEBUG)) {
-	TTCN_Logger::begin_event(TTCN_DEBUG);
-	TTCN_Logger::log_event("Encoding PDU_ISUP: ");
-	pdu.log();
-	TTCN_Logger::end_event();
-    }
-    
-    TTCN_Buffer buf;
-    pdu.encode(PDU__ISUP_descr_, buf, TTCN_EncDec::CT_RAW);
-    OCTETSTRING ret_val(buf.get_len(), buf.get_data());
-    
-    if (TTCN_Logger::log_this_event(TTCN_DEBUG)) {
-	TTCN_Logger::begin_event(TTCN_DEBUG);
-	TTCN_Logger::log_event("PDU_ISUP after encoding: ");
-	ret_val.log();
-	TTCN_Logger::end_event();
-    }
-    return ret_val;
-}
-
-PDU__ISUP dec__PDU__ISUP(const OCTETSTRING& stream)
-{
-    if (TTCN_Logger::log_this_event(TTCN_DEBUG)) {
-	TTCN_Logger::begin_event(TTCN_DEBUG);
-	TTCN_Logger::log_event("Decoding PDU_ISUP: ");
-	stream.log();
-	TTCN_Logger::end_event();
-    }
-
-    TTCN_Buffer buf;
-    buf.put_os(stream);
-    PDU__ISUP ret_val;
-    ret_val.decode(PDU__ISUP_descr_, buf, TTCN_EncDec::CT_RAW);
-
-    if (TTCN_Logger::log_this_event(TTCN_DEBUG)) {
-	TTCN_Logger::begin_event(TTCN_DEBUG);
-	TTCN_Logger::log_event("Decoded PDU_ISUP: ");
-	ret_val.log();
-	TTCN_Logger::end_event();
-    }
-    return ret_val;
-}
-
-PDU__ISUP dec__PDU__ISUP__noCIC(const OCTETSTRING& stream)
-{
-    if (TTCN_Logger::log_this_event(TTCN_DEBUG)) {
-	TTCN_Logger::begin_event(TTCN_DEBUG);
-	TTCN_Logger::log_event("Decoding PDU_ISUP: ");
-	stream.log();
-	TTCN_Logger::end_event();
-    }
-
-    OCTETSTRING mod_stream (int2oct(0,2) + stream);
-    TTCN_Buffer buf;
-    buf.put_os(mod_stream);
-    PDU__ISUP ret_val;
-    ret_val.decode(PDU__ISUP_descr_, buf, TTCN_EncDec::CT_RAW);
-    PDU__ISUP::union_selection_type msg_type = ret_val.get_selection();
-    switch (msg_type)
-    {
-      case PDU__ISUP::ALT_ISUP__ACM:
-      {
-        ret_val.ISUP__ACM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__ANM:
-      {
-        ret_val.ISUP__ANM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__APM:
-      {
-        ret_val.ISUP__APM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__BLO:
-      {
-        ret_val.ISUP__BLO().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__BLA:
-      {
-        ret_val.ISUP__BLA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CPG:
-      {
-        ret_val.ISUP__CPG().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CGB:
-      {
-        ret_val.ISUP__CGB().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CGBA:
-      {
-        ret_val.ISUP__CGBA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CQM:
-      {
-        ret_val.ISUP__CQM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CQR:
-      {
-        ret_val.ISUP__CQR().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__GRS:
-      {
-        ret_val.ISUP__GRS().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__GRA:
-      {
-        ret_val.ISUP__GRA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CGU:
-      {
-        ret_val.ISUP__CGU().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CGUA:
-      {
-        ret_val.ISUP__CGUA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CRG:
-      {
-        ret_val.ISUP__CRG().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CFN:
-      {
-        ret_val.ISUP__CFN().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CON:
-      {
-        ret_val.ISUP__CON().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__COT:
-      {
-        ret_val.ISUP__COT().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__CCR:
-      {
-        ret_val.ISUP__CCR().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__FAC:
-      {
-        ret_val.ISUP__FAC().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__FAA:
-      {
-        ret_val.ISUP__FAA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__FRJ:
-      {
-        ret_val.ISUP__FRJ().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__FAR:
-      {
-        ret_val.ISUP__FAR().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__FOT:
-      {
-        ret_val.ISUP__FOT().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__IDR:
-      {
-        ret_val.ISUP__IDR().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__IRS:
-      {
-        ret_val.ISUP__IRS().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__INF:
-      {
-        ret_val.ISUP__INF().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__INR:
-      {
-        ret_val.ISUP__INR().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__IAM:
-      {
-        ret_val.ISUP__IAM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__LPA:
-      {
-        ret_val.ISUP__LPA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__LOP:
-      {
-        ret_val.ISUP__LOP().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__NRM:
-      {
-        ret_val.ISUP__NRM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__OLM:
-      {
-        ret_val.ISUP__OLM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__OPR:
-      {
-        ret_val.ISUP__OPR().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__PAM:
-      {
-        ret_val.ISUP__PAM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__PRI:
-      {
-        ret_val.ISUP__PRI().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__REL:
-      {
-        ret_val.ISUP__REL().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__RLC:
-      {
-        ret_val.ISUP__RLC().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__RSC:
-      {
-        ret_val.ISUP__RSC().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__RES:
-      {
-        ret_val.ISUP__RES().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__SGM:
-      {
-        ret_val.ISUP__SGM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__SAM:
-      {
-        ret_val.ISUP__SAM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__SCB:
-      {
-        ret_val.ISUP__SCB().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__SDM:
-      {
-        ret_val.ISUP__SDM().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__SUS:
-      {
-        ret_val.ISUP__SUS().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__UBL:
-      {
-        ret_val.ISUP__UBL().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__UBA:
-      {
-        ret_val.ISUP__UBA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__UCIC:
-      {
-        ret_val.ISUP__UCIC().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__UPA:
-      {
-        ret_val.ISUP__UPA().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__UPT:
-      {
-        ret_val.ISUP__UPT().cic() = OMIT_VALUE; break;
-      }
-      case PDU__ISUP::ALT_ISUP__USR:
-      {
-        ret_val.ISUP__USR().cic() = OMIT_VALUE; break;
-      }
-      default:
-        break;
-    }
-    if (TTCN_Logger::log_this_event(TTCN_DEBUG)) {
-	TTCN_Logger::begin_event(TTCN_DEBUG);
-	TTCN_Logger::log_event("Decoded PDU_ISUP: ");
-	ret_val.log();
-	TTCN_Logger::end_event();
-    }
-    return ret_val;
-}
-
-INTEGER dec__PDU__ISUP__backtrack__noCIC(const OCTETSTRING& stream, PDU__ISUP& pdu)
-{
-	if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC)) {
-		TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-		TTCN_Logger::log_event_str("dec_PDU_ISUP_backtrack(): Stream before decoding: ");
-		stream.log();
-		TTCN_Logger::end_event();
-	}
-	TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING);
-	TTCN_EncDec::clear_error();
-	OCTETSTRING mod_stream (int2oct(0,2) + stream);
-    TTCN_Buffer ttcn_buffer;
-    ttcn_buffer.put_os(mod_stream);
-    pdu.decode(PDU__ISUP_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
-    	
-	
-	if (TTCN_EncDec::get_last_error_type() == TTCN_EncDec::ET_NONE) {
-		
-		PDU__ISUP::union_selection_type msg_type = pdu.get_selection();
-	    switch (msg_type)
-	    {
-	      case PDU__ISUP::ALT_ISUP__ACM:
-	      {
-	    	  pdu.ISUP__ACM().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__ANM:
-	      {
-	    	  pdu.ISUP__ANM().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__BLO:
-	      {
-	    	  pdu.ISUP__BLO().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__BLA:
-	      {
-	    	  pdu.ISUP__BLA().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CPG:
-	      {
-	    	  pdu.ISUP__CPG().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CGB:
-	      {
-	    	  pdu.ISUP__CGB().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CGBA:
-	      {
-	    	  pdu.ISUP__CGBA().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__GRS:
-	      {
-	    	  pdu.ISUP__GRS().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__GRA:
-	      {
-	    	  pdu.ISUP__GRA().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CGU:
-	      {
-	    	  pdu.ISUP__CGU().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CGUA:
-	      {
-	    	  pdu.ISUP__CGUA().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CQM:
-	      {
-	    	  pdu.ISUP__CQM().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CQR:
-	      {
-	    	  pdu.ISUP__CQR().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CFN:
-	      {
-	    	  pdu.ISUP__CFN().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__COT:
-	      {
-	    	  pdu.ISUP__COT().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__CCR:
-	      {
-	    	  pdu.ISUP__CCR().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__FAC:
-	      {
-	    	  pdu.ISUP__FAC().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__FOT:
-	      {
-	    	  pdu.ISUP__FOT().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__INF:
-	      {
-	    	  pdu.ISUP__INF().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__INR:
-	      {
-	    	  pdu.ISUP__INR().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__IAM:
-	      {
-	    	  pdu.ISUP__IAM().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__LPA:
-	      {
-	    	  pdu.ISUP__LPA().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__REL:
-	      {
-	    	  pdu.ISUP__REL().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__RLC:
-	      {
-	    	  pdu.ISUP__RLC().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__RSC:
-	      {
-	    	  pdu.ISUP__RSC().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__RES:
-	      {
-	    	  pdu.ISUP__RES().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__SUS:
-	      {
-	    	  pdu.ISUP__SUS().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__UBL:
-	      {
-	    	  pdu.ISUP__UBL().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__UBA:
-	      {
-	    	  pdu.ISUP__UBA().cic() = OMIT_VALUE; break;
-	      }
-	      case PDU__ISUP::ALT_ISUP__UCIC:
-	      {
-	    	  pdu.ISUP__UCIC().cic() = OMIT_VALUE; break;
-	      }
-	      default:
-	        break;
-	    }
-		
-		
-		if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC)) {
-			TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-			TTCN_Logger::log_event_str("dec_PDU_ISUP_backtrack_noCIC(): Decoded @ISUP_Types.PDU_ISUP: ");
-			pdu.log();
-			TTCN_Logger::end_event();
-		}
-		
-		if (ttcn_buffer.get_pos() < ttcn_buffer.get_len() && TTCN_Logger::log_this_event(TTCN_WARNING)) {
-			ttcn_buffer.cut();
-			OCTETSTRING remaining_stream;
-			ttcn_buffer.get_string(remaining_stream);
-			TTCN_Logger::begin_event(TTCN_WARNING);
-			TTCN_Logger::log_event_str("dec_PDU_ISUP_backtrack(): Warning: Data remained at the end of the stream after successful decoding: ");
-			remaining_stream.log();
-			TTCN_Logger::end_event();
-		}
-		return 0;
-	} else return 1;
-}
-
-}//namespace
diff --git a/ISUP_Q.762_CNL113365_LATEST/src/ISUP_Q.762_CNL113365.grp b/ISUP_Q.762_CNL113365_LATEST/src/ISUP_Q.762_CNL113365.grp
deleted file mode 100644
index 828a298..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/src/ISUP_Q.762_CNL113365.grp
+++ /dev/null
@@ -1,26 +0,0 @@
-<!--
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright Test Competence Center (TCC) ETH 2012
-//                                                                           //
-// 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:     ISUP_Q.762_CNL113365.grp
-//  Rev:      R7D
-//  Prodnr:   CNL 113 365
-//  Updated:  2012-11-08
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
--->
-
-<!DOCTYPE TITAN_GUI_FileGroup_file>
-<FileGroup TITAN_version="2.2.pl0" >
-    <File_Group name="ISUP_Q.762_CNL113365" >
-        <File path="ISUP_EncDec.cc" />
-        <File path="ISUP_Types.ttcn" />
-    </File_Group>
-</FileGroup>
diff --git a/ISUP_Q.762_CNL113365_LATEST/src/ISUP_Types.ttcn b/ISUP_Q.762_CNL113365_LATEST/src/ISUP_Types.ttcn
deleted file mode 100644
index 26f794b..0000000
--- a/ISUP_Q.762_CNL113365_LATEST/src/ISUP_Types.ttcn
+++ /dev/null
@@ -1,4092 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//
-// Copyright Test Competence Center (TCC) ETH 2011
-//                                                                           //
-// 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:     ISUP_Types.ttcn
-//  Rev:      R7D
-//  Prodnr:   CNL 113 365
-//  Updated:  2011-05-10
-//  Contact:  http://ttcn.ericsson.se
-///////////////////////////////////////////////////////////////////////////////
-//
-// This product is based on the following documents:
-//************************************************************************
-// Ericsson  Reference for ITU-T : 2/155 17-FAY 112 020/4 Uen, ITU-T ISDN User
-//                                 Part, Section A:Formats and Codes
-// Standard ITU-T Reference ISUP : Q.763, Signaling System No. 7 - ISDN User
-//                                 Part formats and codes
-//************************************************************************
-// EED/X 1056-174 Uen - Global Call reference for ISUP and BICC, MSC R12
-
-///////////////////////////////////////////////////////////////////////////////
-//     ! ! ! ! ! ! !        W A R N I N G         ! ! ! ! ! ! !              //
-// From R2A02 the parameters are in 'set' and not in 'set of'. It has the    //
-// consequence, that the parameters will be sent out in fix order (as defined//
-// in set) so the tester cannot modify the order of the parameters with      //
-// modification the order in the template. If the order is important, then   //
-// the previous version of this protocol module should be used.              //
-///////////////////////////////////////////////////////////////////////////////
-
-//----------------------------------------------------------
-//----------------------------------------------------------
-//The following modification were done from R1A03 to R2A02:
-//----------------------------------------------------------
-//----------------------------------------------------------
-// New parameter:
-//Calling_name_identity
-//Global_call_reference
-//-------------------------------------------------
-// Modified parameter:
-//Calling_geodetic_location: Polygon updated
-//CCSS_parameter : replaces CCBS_parameter
-//Charged_party_identification : converted into record
-//Forward_GVNS: TNRN_Spare->BIT1, lengths->INT4b, RAW coding attributes
-//Loop_prevention_indicators : field splitted
-//Message_compatibility_information: field name updated
-//Network_routing_number: incorrect fields
-//Network_specific_facility : was not possible to decode
-//Optional_backward_call_indicators: field name updated
-//Pivot_counter: PivCount->BIT5
-//Pivot_routing_backward_information : converted into record
-//Pivot_routing_forward_information : converted into record
-//Redirect_backward_information : converted into record
-//Redirect_forward_information : converted into record
-//Redirecting_number : field name updated
-//Redirection_information : optional keywords added
-//Tariff_indicator : optional keywords added
-//User_service_information: redesigned
-//User_service_information_prime: redesigned
-//User_teleservice_information : optional keywords added
-//-------------------------------------------------
-// Hexorder modified in parameter:
-//Call_transfer_number
-//Called_IN_number
-//Called_directory_number
-//Called_party_number
-//Calling_party_number
-//Connected_number
-//Forward_GVNS
-//Generic_number
-//HTR_information
-//Location_number
-//Network_routing_number
-//Original_called_number
-//Original_called_IN_number
-//Redirecting_number
-//Redirection_number
-//Subsequent_number
-//-------------------------------------------------
-// Parameter, which should be modified, but due to backward compatibility
-// it is not modified:
-//Parameter_compatibility_information
-//-------------------------------------------------
-//"set of" was changed to "set" with the following consequence in parameter:
-//-Every optional parameter is extended the id and length.
-//-The multiple parameters are put into a set with name <parameter_name>_set
-//-The optional parameters of the messages are put into set where every field
-// is optional.
-//-For mandatory fix long parameters new type is created via removing id and
-// length
-//-For mandatory variable long parameters new type is created via removing id
-//-For parameters which can be also mandatory and optional, the end of name of
-// the optional version is extended with an _OPT
-
-module  ISUP_Types
-{
- import from General_Types all;
-
- external function enc_PDU_ISUP(in PDU_ISUP pdu) return octetstring;
- external function dec_PDU_ISUP(in octetstring stream) return PDU_ISUP;
- external function dec_PDU_ISUP_noCIC(in octetstring stream) return PDU_ISUP;
- external function enc_PDU_ISUP_fast(in PDU_ISUP pdu, out octetstring stream)
- with { extension "prototype(fast) encode(RAW)" };
- external function dec_PDU_ISUP_backtrack(in octetstring stream, out PDU_ISUP pdu) return integer
- with { extension "prototype(backtrack) decode(RAW)" };
- external function dec_PDU_ISUP_backtrack_noCIC(in octetstring stream, out PDU_ISUP pdu) return integer;
-
-//************************************************************************
-//  ISUP parameters
-//************************************************************************
-group ISUP_parameters
-{
-
-//************************************************************************
-// Circuit Identification Code
-// Ericsson Specification Reference: Chapter 2.1.3
-// Standard Reference ISUP         : Chapter 1.2
-//************************************************************************
-  type record Circuit_identification_code
-    {
-     BIT12 CIC, // Circuit identification code
-     BIT4 Spare // Spare
-    } with { variant "" };
-
-
-//************************************************************************
-// Message Type
-// Ericsson Specification Reference: Chapter 2.1.3
-// Standard Reference ISUP         : Chapter 1.3
-//************************************************************************
-  type bitstring ISUP_Message_type length(8)
-    with { variant "FIELDLENGTH(8)" };
-
-
-//************************************************************************
-// Pointer
-// Ericsson Specification Reference: Chapter 2.1.7
-// Standard Reference ISUP         : Chapter 1.9
-//************************************************************************
-  type integer Pointer (0..255)
-    with { variant "FIELDLENGTH(8)" };
-	
-
-//************************************************************************
-// End Of Optional Parameters Indicator
-// Ericsson Specification Reference: Chapter 2.3.3.30
-// Standard Reference ISUP         : Chapter 3.20
-//************************************************************************
-  type octetstring End_of_optional_parameters_indicator length(1)
-    with { variant "FIELDLENGTH(1)" };
-
-
-//************************************************************************
-// Access Delivery Information
-// Ericsson Specification Reference: Chapter 2.3.3.1
-// Standard Reference ISUP         : Chapter 3.2
-//************************************************************************
-  type record Access_delivery_information       // 3.2 / Q.763
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 AccessDel, // Access delivery indicator
-     BIT7 Spare      // Spare
-    } with { variant "PRESENCE( id = '00101110'B)";
-             variant (lengthField)"LENGTHTO(AccessDel,Spare)";
-           };
-
-
-//************************************************************************
-// Access Transport
-// Ericsson Specification Reference: Chapter 2.3.3.2
-// Standard Reference ISUP         : Chapter 3.3
-//************************************************************************
-  type record Access_transport
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCTN ATP_field
-    } with { variant "PRESENCE( id = '00000011'B)";
-             variant (lengthField)"LENGTHTO(ATP_field)";
-           };
-
-
-//************************************************************************
-// Additional Charging Information
-// Ericsson Specification Reference: Chapter 2.3.3.3
-//************************************************************************
-  type record Additional_charging_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 AddChargeInfo // Additional charging information
-    } with { variant "PRESENCE( id = '11111010'B)";
-             variant (lengthField)"LENGTHTO(AddChargeInfo)";
-           };
-
-
-//************************************************************************
-// Additional Routing Information
-// Ericsson Specification Reference: Chapter 2.3.3.4
-//************************************************************************
-  type record Additional_routing_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT2 AddRoutInfo // Additional routing information
-    } with { variant "PRESENCE( id = '11111011'B)";
-             variant (lengthField)"LENGTHTO(AddRoutInfo)";
-           };
-
-
-//************************************************************************
-// Application Transport Parameter
-// Standard Reference ISUP         : Chapter 3.82
-//************************************************************************
-  type record Application_transport_parameter
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 applicationContextIdOct1, // Application context identifier
-     BIT1 extInd1,                  // Extension indicator
-     BIT7 applicationContextIdOct1a optional, // Application context identifier
-     BIT1 extInd1a optional,                  // Extension indicator
-     BIT1 releaseCallInd,      // Release call indicator
-     BIT1 sendNotificationInd, // Send notification indicator
-     BIT5 spare,               // Spare
-     BIT1 extInd2,             // Extension indicator
-     BIT6 aPMSegmentationInd,    // APM segmentation indicator
-     BIT1 sequenceInd,           // Sequence indicator
-     BIT1 extInd3,               // Extension indicator
-     BIT7 segmentationLocalRef optional, // Segmentation local reference
-     BIT1 extInd3a optional,             // Extension indicator
-     OCTN aPMUserInfo // Encapsulated application information
-    } with { variant "EXTENSION_BIT_GROUP (yes, applicationContextIdOct1,
-                                                extInd1a)";
-             variant "EXTENSION_BIT_GROUP (yes, aPMSegmentationInd,
-                                                extInd3a)";
-             variant "PRESENCE( id = '01111000'B)";
-             variant (lengthField)"LENGTHTO(applicationContextIdOct1,extInd1,
-                                            applicationContextIdOct1a,extInd1a,
-                                            releaseCallInd,sendNotificationInd,
-                                            spare,extInd2,aPMSegmentationInd,
-                                            sequenceInd,extInd3,
-                                            segmentationLocalRef,extInd3a,
-                                            aPMUserInfo)";
-           };
-
-  type set of Application_transport_parameter
-                         Application_transport_parameter_set
-      with { variant "" };
-
-
-//************************************************************************
-// Automatic Congestion Level
-// Ericsson Specification Reference: Chapter 2.3.3.5
-// Standard Reference ISUP         : Chapter 3.4
-//************************************************************************
-  type record Automatic_congestion_level
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 CongLevel
-    } with { variant "PRESENCE( id = '00100111'B)";
-             variant (lengthField)"LENGTHTO(CongLevel)";
-           };
-
-
-//************************************************************************
-// Backward Call Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.6
-// Standard Reference ISUP         : Chapter 3.5
-//************************************************************************
-  type record Backward_call_indicators_OPT
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 ChargeInd,            // Charge indicator
-     BIT2 CalledPartyStatusInd, // Called party's status indicator
-     BIT2 CalledPartyCatInd,    // Called party's category indicator
-     BIT2 EndToEndInd,          // End-to-end method indicator
-     BIT1 InterworkingInd,   // Interworking indicator
-     BIT1 EndToEndInfoInd,   // End-to-end INFormation indicator
-     BIT1 ISUPInd,           // ISDN User Part indicator
-     BIT1 HoldingInd,        // Holding indicator
-     BIT1 ISDNAccessInd,     // ISDN access indicator
-     BIT1 EchoControlDevInd, // Echo CONtrol device indicator
-     BIT2 SCCPMethodInd      // SCCP method indicator
-    } with { variant "PRESENCE( id = '00010001'B)";
-             variant (lengthField)"LENGTHTO(ChargeInd,CalledPartyStatusInd,
-                                            CalledPartyCatInd,EndToEndInd,
-                                            InterworkingInd,EndToEndInfoInd,
-                                            ISUPInd,HoldingInd,ISDNAccessInd,
-                                            EchoControlDevInd,SCCPMethodInd)";
-           };
-
-  type record Backward_call_indicators    
-    {
-     BIT2 ChargeInd,            // Charge indicator
-     BIT2 CalledPartyStatusInd, // Called party's status indicator
-     BIT2 CalledPartyCatInd,    // Called party's category indicator
-     BIT2 EndToEndInd,          // End-to-end method indicator
-     BIT1 InterworkingInd,   // Interworking indicator
-     BIT1 EndToEndInfoInd,   // End-to-end INFormation indicator
-     BIT1 ISUPInd,           // ISDN User Part indicator
-     BIT1 HoldingInd,        // Holding indicator
-     BIT1 ISDNAccessInd,     // ISDN access indicator
-     BIT1 EchoControlDevInd, // Echo CONtrol device indicator
-     BIT2 SCCPMethodInd      // SCCP method indicator
-    } with { variant ""};
-
-//************************************************************************
-// Backward GVNS
-// Ericsson Specification Reference: Chapter 2.3.3.7
-// Standard Reference ISUP         : Chapter 3.62
-//************************************************************************
-  type record Backward_GVNS
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 TerminatingAccessInd, // Terminating access indicator
-     BIT5 Spare,                // Spare
-     BIT1 ExtensionInd          // Extension indicator
-    } with { variant "PRESENCE( id = '01001101'B)";
-             variant (lengthField)"LENGTHTO(TerminatingAccessInd,Spare,
-                                            ExtensionInd)";
-           };
-
-
-//************************************************************************
-// Call Diversion Information
-// Ericsson Specification Reference: Chapter 2.3.3.8
-// Standard Reference ISUP         : Chapter 3.6
-//************************************************************************
-  type record Call_diversion_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT3 NotificationSubscriptionOptions, // Notification subscription options
-     BIT4 RedirectionReason,               // Redirecting reason
-     BIT1 Spare                            // Spare
-    } with { variant "PRESENCE( id = '00110110'B)";
-             variant (lengthField)"LENGTHTO(NotificationSubscriptionOptions,
-                                            RedirectionReason,Spare)";
-           };
-
-
-//************************************************************************
-// Call Diversion Treatment Information
-// Ericsson Specification Reference: Chapter 2.3.3.9
-// Standard Reference ISUP         : Chapter 3.72
-//************************************************************************
-  type record Call_diversion_treatment_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 CallDivertedInd, // Call to be diverted indicator
-     BIT5 Spare,           // Spare
-     BIT1 ExtensionInd     // Extension indicator
-    } with { variant "PRESENCE( id = '01101110'B)";
-             variant(lengthField)"LENGTHTO(CallDivertedInd,Spare,ExtensionInd)";
-           };
-
-
-//************************************************************************
-// Call History Information
-// Ericsson Specification Reference: Chapter 2.3.3.10
-// Standard Reference ISUP         : Chapter 3.7
-//************************************************************************
-  type record Call_history_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT2 PropagatDelayValue
-    } with { variant "PRESENCE( id = '00101101'B)";
-             variant (lengthField)"LENGTHTO(PropagatDelayValue)";
-           };
-
-
-//************************************************************************
-// Call Offering Treatment Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.11
-// Standard Reference ISUP         : Chapter 3.74
-//************************************************************************
-  type record Call_offering_treatment_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 CallOfferedInd, // Call to be offered indicator
-     BIT5 Spare,          // Spare
-     BIT1 ExtensionInd    // Extension indicator
-    } with { variant "PRESENCE( id = '01110000'B)";
-             variant (lengthField)"LENGTHTO(CallOfferedInd,Spare,ExtensionInd)";
-           };
-
-
-//************************************************************************
-// Call Reference
-// Standard Reference ISUP         : Chapter 3.8
-//************************************************************************
-  type record Call_reference
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT5 CRef_contents // Call identity
-    } with { variant "PRESENCE( id = '00000001'B)";
-             variant (lengthField)"LENGTHTO(CRef_contents)";
-           };
-
-
-//************************************************************************
-// Call Transfer Number
-// Ericsson Specification Reference: Chapter 2.3.3.12
-// Standard Reference ISUP         : Chapter 3.64
-//************************************************************************
-  type record Call_transfer_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT2 ScreeningInd,       // Screening indicator
-     BIT2 AddrPresentRestInd, // Address presentation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 Spare,              // Spare
-     HEX1_32 AddrSignals optional,  // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '01000101'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            ScreeningInd,AddrPresentRestInd,
-                                            NumberingPlanInd,Spare,
-                                            AddrSignals,Filler)";
-           };
-
-
-//************************************************************************
-// Call Transfer Reference
-// Ericsson Specification Reference: Chapter 2.3.3.13
-// Standard Reference ISUP         : Chapter 3.65
-//************************************************************************
-  type record Call_transfer_reference
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 CallTransferId // Call transfer identity
-    } with { variant "PRESENCE( id = '01000011'B)";
-             variant (lengthField)"LENGTHTO(CallTransferId)";
-           };
-
-
-//************************************************************************
-// Call Transfer Treatment Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.14
-//************************************************************************
-  type record Call_transfer_treatment_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 CallTransferredInd, // Call to be transferred indicator
-     BIT5 Spare,              // Spare
-     BIT1 ExtensionInd        // Extension indicator
-    } with { variant "PRESENCE( id = '11110011'B)";
-             variant (lengthField)"LENGTHTO(CallTransferredInd,Spare,
-                                            ExtensionInd)";
-           };
-
-
-//************************************************************************
-// Called IN Number
-// Standard Reference ISUP         : Chapter 3.73
-//************************************************************************
-  type record Called_IN_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT2 spare_1,
-     BIT2 AddrPresentRestInd, // Address presentation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 spare_2,            // Numbering plan indicator
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '01101111'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            spare_1,AddrPresentRestInd,
-                                            NumberingPlanInd,spare_2,
-                                            AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Called Directory Number
-// Standard Reference ISUP         : Chapter 3.86
-//************************************************************************
-  type record Called_directory_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT4 spare,             // spare
-     BIT3 NumberingPlanInd,  // Numbering plan indicator
-     BIT1 INNInd,            // Internal network number indicator
-     HEX1_32 AddrSignals, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '01111101'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            spare,NumberingPlanInd,
-                                            INNInd,AddrSignals,Filler)";
-           };
-
-
-
-//************************************************************************
-// Called Party Number
-// Ericsson Specification Reference: Chapter 2.3.3.15
-// Standard Reference ISUP         : Chapter 3.9
-//************************************************************************
-  type record Called_party_number    
-    {
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT4 Spare,             // spare
-     BIT3 NumberingPlanInd,  // Numbering plan indicator
-     BIT1 INNInd,            // Internal network number indicator
-     HEX1_32 AddrSignals, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            Spare,NumberingPlanInd,
-                                            INNInd,AddrSignals,Filler)";
-           };
-
-
-//************************************************************************
-// Calling Geodetic Location
-// Standard Reference ISUP         : Chapter 3.88
-//************************************************************************
-  type record Ellipsoid_point
-    {
-     OCT3 DgrLat, // Degrees of latitude with sign
-     OCT3 DgrLong // Degrees of longitude
-    } with { variant "" };
-
-  type record Ellipsoid_point_with_uncertainty
-    {
-     OCT3 DgrLat,  // Degrees of latitude with sign
-     OCT3 DgrLong, // Degrees of longitude
-     BIT7 UncCode, // Uncertainty code
-     BIT1 spare_1, // Spare
-     BIT7 Conf,    // Confidence
-     BIT1 spare_2  // Spare
-    } with { variant "" };
-
-  type record Point_with_altitude_and_uncertainty
-    {
-     OCT3 DgrLat,    // Degrees of latitude with sign
-     OCT3 DgrLong,   // Degrees of longitude
-     BIT7 UncCode_1, // Uncertainty code
-     BIT1 spare_1,   // Spare
-     OCT2 Alt,       // Altitude with sign
-     BIT7 UncCode_2, // Uncertainty code
-     BIT1 spare_2,   // Spare
-     BIT7 Conf,      // Confidence
-     BIT1 spare_3    // Spare
-    } with { variant "" };
-
-  type record Ellipse_on_the_ellipsoid
-    {
-     OCT3 DgrLat,  // Degrees of latitude with sign
-     OCT3 DgrLong, // Degrees of longitude
-     BIT7 MajRad,  // Major radius
-     BIT1 spare_1, // Spare
-     BIT7 MinRad,  // Minor radius
-     BIT1 spare_2, // Spare
-     OCT1 orient,  // Orientation
-     BIT7 Conf,    // Confidence
-     BIT1 spare_3  // Spare
-    } with { variant "" };
-
-  type record Ellipsoid_circle_sector
-    {
-     OCT3 DgrLat,  // Degrees of latitude with sign
-     OCT3 DgrLong, // Degrees of longitude
-     BIT7 Rad,     // Radius
-     BIT1 spare_1, // Spare
-     OCT1 Offset,  // Offset
-     OCT1 IncAng,  // Included angle
-     BIT7 Conf,    // Confidence
-     BIT1 spare_2  // Spare
-    } with { variant "" };
-
-  type record Polygon
-    {
-     integer NumPoints, // Number of points
-     BIT4 spare_1,      // Spare
-     DgrLat_longs DgrLat_Longs, // Degrees of latitude / logitude
-     BIT7 Conf,         // Confidence
-     BIT1 spare_2       // Spare
-    } with { variant (NumPoints)"LENGTHTO(DgrLat_Longs)";
-             variant (NumPoints)"UNIT(elements)";
-	     variant (NumPoints) "FIELDLENGTH(4)";
-	   };
-
-  type record of DgrLat_long DgrLat_longs// Degrees of latitude / logitude
-
-  type record DgrLat_long
-    {
-     OCT3 DgrLat, // Degrees of latitude with sign
-     OCT3 DgrLong // Degrees of longitude
-    } with { variant "" };
-
-  type union Shape_description_union
-    {
-     Ellipsoid_point                     EP,
-     Ellipsoid_point_with_uncertainty    EPU,
-     Point_with_altitude_and_uncertainty PAU,
-     Ellipse_on_the_ellipsoid            EonE,
-     Ellipsoid_circle_sector             ECS,
-     Polygon                             Pol
-    } with { variant "" };
-
-  type record Calling_geodetic_location
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 Scr,    // Screening
-     BIT2 LPRI,   // Location presentation REStricted indicator
-     BIT4 Spare,  // Spare
-     BIT7 typeSh, // Type of shape
-     BIT1 ExtI,   // Extension indicator
-     Shape_description_union ShapeDes
-    } with { variant (ShapeDes) "CROSSTAG(
-                        EP,   typeSh = '0000000'B;
-                        EPU,  typeSh = '0000001'B;
-                        PAU,  typeSh = '0000010'B;
-                        EonE, typeSh = '0000011'B;
-                        ECS,  typeSh = '0000100'B;
-                        Pol,  typeSh = '0000101'B
-                        )";
-             variant "PRESENCE( id = '10000001'B)";
-             variant (lengthField)"LENGTHTO(Scr,LPRI,Spare,typeSh,ExtI,
-                                            ShapeDes)";
-           };
-
-//************************************************************************
-// Calling name identity
-// Ericsson Specification Reference: Chapter 2.3.3.16
-//************************************************************************
-  type record Calling_name_identity
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 namePresentationRestrictedInd, // Name presentation restricted ind.
-     BIT2 screeningIndicator, // Screening indicator
-     BIT1 availabilityInd, // Availability indicator
-     BIT3 typeOfName, // Type of name
-     BIT8 encodingInd, // Encoding identification
-     OCT1_50 characterSubfield // Character
-    } with { variant "PRESENCE( id = '11110010'B)";
-             variant (lengthField)"LENGTHTO(namePresentationRestrictedInd,
-                                            screeningIndicator,availabilityInd,
-                                            typeOfName,encodingInd,
-                                            characterSubfield)";
-           };
-
-
-//************************************************************************
-// Calling Party Number
-// Ericsson Specification Reference: Chapter 2.3.3.17
-// Standard Reference ISUP         : Chapter 3.10
-//************************************************************************
-  type record Calling_party_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd,  // Nature of address indicator
-     BIT1 OddEven,          // Odd/even indicator
-     BIT2 ScreeningInd,       // Screening indicator
-     BIT2 AddrPresentRestInd, // Address presentation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 NIInd,              // Calling party number incomplete indicator
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '00001010'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            ScreeningInd,AddrPresentRestInd,
-                                            NumberingPlanInd,NIInd,
-                                            AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Calling Party Number
-// Ericsson Specification Reference: Chapter 2.3.3.18
-// Standard Reference ISUP         : Chapter 3.11
-//************************************************************************
-  type record Calling_partys_category_OPT
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 CallingPartysCategory  // Calling party's category
-    } with { variant "PRESENCE( id = '00001001'B)";
-             variant (lengthField)"LENGTHTO(CallingPartysCategory)";
-           };
-
-  type record Calling_partys_category    
-    {
-     BIT8 CallingPartysCategory  // Calling party's category
-    } with { variant "" };
-
-//************************************************************************
-// Cause Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.19
-// Standard Reference ISUP         : Chapter 3.12
-//************************************************************************
-  type record Cause_indicators_OPT
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT4 Location,         // Location
-     BIT1 Spare,            // Spare
-     BIT2 CodingStandard,   // Coding standard
-     BIT1 Ext1,             // Extension indicator
-     BIT7 CauseValue,       // Vause value
-     BIT1 Ext2,             // Extension indicator
-     OCTN Diagnostics optional // Diagnostic(s)   (if any)
-    } with { variant "PRESENCE( id = '00010010'B)";
-             variant (lengthField)"LENGTHTO(Location,Spare,CodingStandard,
-                                            Ext1,CauseValue,
-                                            Ext2,Diagnostics)";
-           };
-
-  type record Cause_indicators    
-    {
-     INT1 lengthField,
-
-     BIT4 Location,         // Location
-     BIT1 Spare,            // Spare
-     BIT2 CodingStandard,   // Coding standard
-     BIT1 Ext1,             // Extension indicator
-     BIT7 Reserved optional,   // National Recommendation
-     BIT1 Ext1a optional,      // Present when Reserved field is present
-     BIT7 CauseValue,       // Vause value
-     BIT1 Ext2,             // Extension indicator
-     OCTN Diagnostics optional // Diagnostic(s)   (if any)
-    } with { variant (Reserved) "PRESENCE (Ext1='0'B)";
-             variant (Ext1a) "PRESENCE (Ext1='0'B)";
-             variant (lengthField)"LENGTHTO(Location,Spare,CodingStandard,
-                                            Ext1,Reserved,Ext1a,CauseValue,
-                                            Ext2,Diagnostics)";
-           };
-
-
-//************************************************************************
-// CCNR Possible Indicator
-// Standard Reference ISUP         : Chapter 3.83
-//************************************************************************
-  type record CCNR_possible_indicator
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 CCNRPInd, // CCNR possible indicator
-     BIT7 spare     // Spare
-    } with { variant "PRESENCE( id = '01111010'B)";
-             variant (lengthField)"LENGTHTO(CCNRPInd,spare)";
-           };
-
-
-//************************************************************************
-// CCSS
-// Ericsson Specification Reference: Chapter 2.3.3.20
-// Standard Reference ISUP         : Chapter 3.63
-//************************************************************************
-  type record CCSS_parameter
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 CCSSCallInd,  // CCSS call indicator
-     BIT7 Spare
-    } with { variant "PRESENCE( id = '01001011'B)";
-             variant (lengthField)"LENGTHTO(CCSSCallInd,Spare)";
-           };
-
-
-//************************************************************************
-// Charged Party Identification
-// Standard Reference ISUP         : Chapter 3.75
-//************************************************************************
-  type record Charged_party_identification
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCTN ChargedPartyId
-    } with { variant "PRESENCE( id = '01110001'B)";
-             variant (lengthField)"LENGTHTO(ChargedPartyId)";
-           };
-
-
-//************************************************************************
-// Circuit Assignment Map
-// Standard Reference ISUP         : Chapter 3.69
-//************************************************************************
-  type record Circuit_assignment_map
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT6 MapType,  // Map type
-     BIT2 spare_1,  // Spare
-     BIT31 MapFormat,  // Map format
-     BIT1  spare_2     // spare
-    } with { variant "PRESENCE( id = '00100101'B)";
-             variant (lengthField)"LENGTHTO(MapType,spare_1,MapFormat,spare_2)";
-           };
-
-
-//************************************************************************
-// Circuit Group Supervision Message Type Indicator
-// Ericsson Specification Reference: Chapter 2.3.3.21
-// Standard Reference ISUP         : Chapter 3.13
-//************************************************************************
-  type record Circuit_group_supervision_message_type_indicator    
-    {
-     BIT2 Type, // Type indicator
-     BIT6 Spare // Spare
-    } with { variant "" };
-
-
-//************************************************************************
-// Circuit State Indicator
-// Ericsson Specification Reference: Chapter 2.3.3.22
-// Standard Reference ISUP         : Chapter 3.14
-//************************************************************************
-  type record Circuit_state_indicator    
-    {
-     INT1 lengthField,
-
-     OCTN CircuitStateIndicator
-    } with { variant (lengthField)"LENGTHTO(CircuitStateIndicator)";
-           };
-
-
-//************************************************************************
-// Closed User Group Interlock Code
-// Ericsson Specification Reference: Chapter 2.3.3.23
-// Standard Reference ISUP         : Chapter 3.15
-//************************************************************************
-// The contents of this parameter are not subdivided because values
-//are easy to give as hexnumbers.
-  type record Closed_user_group_interlock_code
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT4 CUGIC_contents // CUGIC
-    } with { variant "PRESENCE( id = '00011010'B)";
-             variant (lengthField)"LENGTHTO(CUGIC_contents)";
-           };
-
-
-//************************************************************************
-// Collect Call Request
-// Standard Reference ISUP         : Chapter 3.81
-//************************************************************************
-  type record Collect_call_request
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 CCReqInd, // Collect call request indicator
-     BIT7 spare     // Spare
-    } with { variant "PRESENCE( id = '01111001'B)";
-             variant (lengthField)"LENGTHTO(CCReqInd,spare)";
-           };
-
-
-//************************************************************************
-// Conference Treatment Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.24
-// Standard Reference ISUP         : Chapter 3.76
-//************************************************************************
-  type record Conference_treatment_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 ConfAcceptanceInd, // Conference acceptance indicator
-     BIT5 Spare,             // Spare
-     BIT1 ExtensionInd       // Extension indicator
-    } with { variant "PRESENCE( id = '01110010'B)";
-             variant (lengthField)"LENGTHTO(ConfAcceptanceInd,Spare,
-                                            ExtensionInd)";
-           };
-
-
-//************************************************************************
-// Connected Number
-// Ericsson Specification Reference: Chapter 2.3.3.25
-// Standard Reference ISUP         : Chapter 3.16
-//************************************************************************
-  type record Connected_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicators
-     BIT1 OddEven,         // Odd/even indicator
-     BIT2 ScreeningInd,       // Screening indicator
-     BIT2 AddrPresentRestInd, // Address presentation REStriction indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 Spare,              // Spare
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '00100001'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            ScreeningInd,AddrPresentRestInd,
-                                            NumberingPlanInd,Spare,
-                                            AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Connection Request
-// Standard Reference ISUP         : Chapter 3.17
-//************************************************************************
-  type record Connection_request
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT3 LocRef,       // Local reference
-     OCT2 SPC_contents, // Signalling point code
-     BIT8 PC,           // Protocol class
-     BIT8 credit        // Credit
-    } with { variant "PRESENCE( id = '00001101'B)";
-             variant (lengthField)"LENGTHTO(LocRef,SPC_contents,PC,credit)";
-           };
-
-
-//************************************************************************
-// Continuity Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.26
-// Standard Reference ISUP         : Chapter 3.18
-//************************************************************************
-  type record Continuity_indicators
-    {
-     BIT1 ContInd_field, // Continuity indicator
-     BIT7 Spare // Spare
-    } with { variant "" };
-
-
-//************************************************************************
-// Correlation Id
-// Ericsson Specification Reference: Chapter 2.3.3.27
-// Standard Reference ISUP         : Chapter 3.70
-//************************************************************************
-  type record Correlation_id
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCTN  CorrelationId
-    } with { variant "PRESENCE( id = '01100101'B)";
-             variant (lengthField)"LENGTHTO(CorrelationId)";
-           };
-
-
-//************************************************************************
-// Display Information
-// Ericsson Specification Reference: Chapter 2.3.3.28
-// Standard Reference ISUP         : Chapter 3.77
-//************************************************************************
-  type record Display_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCTN DisplayInfo
-    } with { variant "PRESENCE( id = '01110011'B)";
-             variant (lengthField)"LENGTHTO(DisplayInfo)";
-           };
-
-
-//************************************************************************
-// Distributed Dynamic Routing Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.29
-//************************************************************************
-  type record Distributed_dynamic_routing_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 AutoReroutingInd,   // Automatic re-routing indicator
-     BIT1 EventDepRoutingInd, // Event dependent routing indicator
-     BIT6 Spare               // Spare
-    } with { variant "PRESENCE( id = '11111000'B)";
-             variant (lengthField)"LENGTHTO(AutoReroutingInd,EventDepRoutingInd,
-                                            Spare)";
-           };
-
-
-//************************************************************************
-// Echo Control Information
-// Standard Reference ISUP         : Chapter 3.19
-//************************************************************************
-  type record Echo_control_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 OEchoRsI, // Outgoing echo CONtrol device INFormation indicator
-     BIT2 IEchoRsI, // Incoming echo CONtrol device INFormation indicator
-     BIT2 OEchoRqI, // Outgoing echo CONtrol device request indicator
-     BIT2 IEchoRqI  // Incoming echo CONtrol device request indicator
-    } with { variant "PRESENCE( id = '00110111'B)";
-             variant (lengthField)"LENGTHTO(OEchoRsI,IEchoRsI,OEchoRqI,
-                                            IEchoRqI)";
-           };
-
-
-//************************************************************************
-// Event Information
-// Ericsson Specification Reference: Chapter 2.3.3.31
-// Standard Reference ISUP         : Chapter 3.21
-//************************************************************************
-  type record Event_information    
-    {
-     BIT7 EventInd,            // Event indicator
-     BIT1 EventPresentRestrInd // Event presentation retriction indicator
-    } with { variant ""};
-
-
-//************************************************************************
-// Facility Indicator
-// Ericsson Specification Reference: Chapter 2.3.3.32
-// Standard Reference ISUP         : Chapter 3.22
-//************************************************************************
-  type record Facility_indicator    
-    {
-     OCT1 FacilityInd  // Facility indicator
-    } with { variant "" };
-
-
-//************************************************************************
-// Forward Call Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.33
-// Standard Reference ISUP         : Chapter 3.23
-//************************************************************************
-  type record Forward_call_indicators    
-    {
-     BIT1 NatIntCallInd,     // National/international call indicator
-     BIT2 EndToEndMethInd,   // End-to-end method indicator
-     BIT1 InterworkInd,      // Interworking indicator
-     BIT1 EndToEndInfoInd,   // End-to-end INFormation indicator
-     BIT1 ISUPInd,           // ISDN User Part indicator
-     BIT2 ISUPPreferenceInd, // ISDN User Part preference indicator
-     BIT1 ISDNAccessInd, // ISDN access indicator
-     BIT2 SCCPMethodInd, // SCCP method indicator
-     BIT1 Spare,         // Spare
-     BIT2 Reserved,      // Reserved
-     BIT2 VPNCallInd     // VPN call indicator (national use)
-    } with { variant "" };
-
-
-//************************************************************************
-// Forward GVNS
-// Ericsson Specification Reference: Chapter 2.3.3.34
-// Standard Reference ISUP         : Chapter 3.66
-//************************************************************************
- type record Forward_GVNS
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     INT4b OPSP_Len,        // OPSP length indicator
-     BIT3 OPSP_Spare,      // Spare
-     BIT1 OPSP_OddEven,    // Odd/even indicator
-     HEX1_32 OPSP_AddSign optional, // Digits and Filler if odd digits
-     HEX1 OPSP_Filler optional,
-     INT4b GUG_Len,           // GUG length indicator
-     BIT3 GUG_Spare,         // Spare
-     BIT1 GUG_OddEven,       // Odd/even indicator
-     HEX1_32 GUG_AddSign optional,    // Digits and Filler if odd digits
-     HEX1 GUG_Filler optional,
-     INT4b TNRN_Len,        // TNRN length indicator
-     BIT3 TNRN_NumPlanInd, // Numbering plan indicator
-     BIT1 TNRN_OddEven,    // Odd/even indicator
-     BIT7 TNRN_NatOfAddInd optional, // Nature of address indicator
-     BIT1 TNRN_Spare       optional, // Spare
-     HEX1_32 TNRN_AddSign  optional, // Digits and Filler if odd digits
-     HEX1 TNRN_Filler optional
-    } with { variant (OPSP_Len) "LENGTHTO(OPSP_AddSign,OPSP_Filler)";
-             variant (GUG_Len)  "LENGTHTO(GUG_AddSign,GUG_Filler)";
-             variant (TNRN_Len) "LENGTHTO(TNRN_NatOfAddInd,TNRN_Spare,
-                                          TNRN_AddSign,TNRN_Filler)";
-             variant (OPSP_AddSign) "HEXORDER(low)";
-             variant (GUG_AddSign)  "HEXORDER(low)";
-             variant (TNRN_AddSign) "HEXORDER(low)";
-             variant "PRESENCE( id = '01001100'B)";
-             variant (lengthField)"LENGTHTO(OPSP_Len,OPSP_Spare,OPSP_OddEven,
-                                            OPSP_AddSign,OPSP_Filler,GUG_Len,
-                                            GUG_Spare,GUG_OddEven,GUG_AddSign,
-                                            GUG_Filler,TNRN_Len,TNRN_NumPlanInd,
-                                            TNRN_OddEven,TNRN_NatOfAddInd,
-                                            TNRN_Spare,TNRN_AddSign,
-                                            TNRN_Filler)";
-           };
-
-
-//************************************************************************
-// Freephone Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.35
-//************************************************************************
-  type record Freephone_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 FreephoneInd, // Freephone indicator
-     BIT7 Spare         // Spare
-    } with { variant "PRESENCE( id = '01000001'B)";
-             variant (lengthField)"LENGTHTO(FreephoneInd,Spare)";
-           };
-
-
-//************************************************************************
-// Generic Digits
-// Ericsson Specification Reference: Chapter 2.3.3.36
-// Standard Reference ISUP         : Chapter 3.24
-//************************************************************************
-  type record Generic_digits
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT5 TypeOfDigits,   // Type of digits
-     BIT3 EncodingScheme, // Encoding scheme
-     HEX1_32 Digits       // Digits
-    } with { variant "PRESENCE( id = '11000001'B)";
-             variant (lengthField)"LENGTHTO(TypeOfDigits,EncodingScheme,
-                                            Digits)";
-           };
-
-  type set of Generic_digits Generic_digits_set
-      with { variant "" };
-
-
-//************************************************************************
-// Generic Notification Indicator
-// Ericsson Specification Reference: Chapter 2.3.3.37
-// Standard Reference ISUP         : Chapter 3.25
-//************************************************************************
-  type record Generic_notification_indicator
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NotificationInd, // Notification indicator
-     BIT1 ExtInd           // Extension indicator
-    } with { variant "PRESENCE( id = '00101100'B)";
-             variant (lengthField)"LENGTHTO(NotificationInd,ExtInd)";
-           };
-
-  type set of Generic_notification_indicator 
-                 Generic_notification_indicator_set
-      with { variant "" };
-
-
-//************************************************************************
-// Generic Number
-// Ericsson Specification Reference: Chapter 2.3.3.38
-// Standard Reference ISUP         : Chapter 3.26
-//************************************************************************
-  type record Generic_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 NumQualifier,   // Number qualifier indicator
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 Odd_Even,        // Odd/even indicator
-     BIT2 ScreeningInd,       // Screening indicator
-     BIT2 AddrPresentRestInd, // Address presesntation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 NIInd,              // Number incomplete indicator
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '11000000'B)";
-             variant (lengthField)"LENGTHTO(NumQualifier,NatureOfAddrInd,
-                                            Odd_Even,ScreeningInd,
-                                            AddrPresentRestInd,NumberingPlanInd,
-                                            NIInd,AddrSignals,Filler)";
-           };
-
-  type set of Generic_number Generic_number_set
-      with { variant "" };
-
-
-  //************************************************************************
-// HTR Information
-// Standard Reference ISUP         : Chapter 3.89
-//************************************************************************
-  type record HTR_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT4 spare_1,           // Spare
-     BIT3 NumberingPlanInd,  // Numbering plan indicator
-     BIT1 spare_2,           // Spare
-     HEX1_32 AddrSignals, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '10000010'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,spare_1,
-                                            NumberingPlanInd,spare_2,
-                                            AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Hop Counter
-// Ericsson Specification Reference: Chapter 2.3.3.39
-// Standard Reference ISUP         : Chapter 3.80
-//************************************************************************
-  type record Hop_counter
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT5 HopCount, // Hop counter
-     BIT3 spare // Spare
-    } with { variant "PRESENCE( id = '00111101'B)";
-             variant (lengthField)"LENGTHTO(HopCount,spare)";
-           };
-
-
-//************************************************************************
-// Information Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.40
-// Standard Reference ISUP         : Chapter 3.28
-//************************************************************************
-  type record Information_indicators    
-    {
-     BIT2 CallingPartyAddrRespInd, // Calling party address RESponse indicator
-     BIT1 HoldProvidedInd,         // Hold provided indicator
-     BIT2 Spare1,                  // Spare
-     BIT1 CallingPartyCatRespInd,  // Calling party's category RESponse ind.
-     BIT1 Reserved1,               // Reserved
-     BIT1 SolicitedInfoInd,        // Solicited INFormation indicator
-     BIT4 Spare2,   // Spare
-     BIT4 Reserved2 // Reserved 2
-    } with { variant "" };
-
-
-//************************************************************************
-// Information Request Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.41
-// Standard Reference ISUP         : Chapter 3.29
-//************************************************************************
-  type record Information_request_indicators    
-    {
-     BIT1 CallingPartyAddrRequestInd,// Calling party address request ind.
-     BIT1 HoldingInd_or_Spare,       // Holding indicator
-     BIT1 Spare1,                    // Spare
-     BIT1 CallingPartyCatRequestInd, // Calling party's category request ind.
-     BIT1 Reserved1,                 // Charge INFormation request ind.
-     BIT2 Spare2,                    // Spare
-     BIT1 MCIDReqInd_or_Spare, // Malicious call identification request ind.
-     BIT4 Spare3,   // Spare
-     BIT4 Reserved2 // Reserved
-    } with { variant "" };
-
-
-//************************************************************************
-// Location Number
-// Ericsson Specification Reference: Chapter 2.3.3.42
-// Standard Reference ISUP         : Chapter 3.30
-//************************************************************************
-  type record Location_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/Even indicator
-     BIT2 ScreeningInd,       // Screening indicator
-     BIT2 AddrPresentRestInd, // Address presentation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 INNInd,             // Internal network number indicator
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '00111111'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            ScreeningInd,AddrPresentRestInd,
-                                            NumberingPlanInd,INNInd,
-                                            AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Loop Prevention Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.43
-// Standard Reference ISUP         : Chapter 3.67
-//************************************************************************
-  type record Loop_prevention_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 Type,                 // Type
-     BIT2 ResponseInd_or_Spare, // Response indicator or Spare
-     BIT5 Spare
-    } with { variant "PRESENCE( id = '01000100'B)";
-             variant (lengthField)"LENGTHTO(Type,ResponseInd_or_Spare,Spare)";
-           };
-
-//************************************************************************
-// MCID Request Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.44
-// Standard Reference ISUP         : Chapter 3.31
-//************************************************************************
-  type record MCID_request_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 MCIDReqInd, // MCID request indicator
-     BIT1 HoldingInd, // Holding indicator
-     BIT6 Spare       // Spare
-    } with { variant "PRESENCE( id = '00111011'B)";
-             variant (lengthField)"LENGTHTO(MCIDReqInd,HoldingInd,Spare)";
-           };
-
-
-//************************************************************************
-// MCID Response Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.45
-// Standard Reference ISUP         : Chapter 3.32
-//************************************************************************
-  type record MCID_response_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 MCIDRespInd,    // MCID RESponse indicator
-     BIT1 HoldingProvInd, // Hold provided indicator
-     BIT6 Spare           // Spare
-    } with { variant "PRESENCE( id = '00111100'B)";
-             variant (lengthField)"LENGTHTO(MCIDRespInd,HoldingProvInd,Spare)";
-           };
-
-
-//************************************************************************
-// Message Compatibility Information
-// Ericsson Specification Reference: Chapter 2.3.3.46
-// Standard Reference ISUP         : Chapter 3.33
-//************************************************************************
-  type record Message_compatibility_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 TransitIntermedExchInd, // Transit at intermediate exchange ind.
-     BIT1 ReleaseCallInd,         // Release call indicator
-     BIT1 SendNotificationInd,    // Send notification indicator
-     BIT1 DiscardMessageInd,      // Discard message indicator
-     BIT1 PassOnNotPossibleInd,   // Pass on not possible indicator
-     BIT2 BroadNarrowbandIwInd,   // Broadband/narrowband interworking ind.
-     BIT1 ExtInd1,                // Extension indicator
-     OCTN Spare2  optional
-    } with { variant "EXTENSION_BIT_GROUP (yes,TransitIntermedExchInd,Spare2)";
-             variant "PRESENCE( id = '00111000'B)";
-             variant (lengthField)"LENGTHTO(TransitIntermedExchInd,
-                                            ReleaseCallInd,SendNotificationInd,
-                                            DiscardMessageInd,
-                                            PassOnNotPossibleInd,
-                                            BroadNarrowbandIwInd,
-                                            ExtInd1,Spare2)";
-           };
-
-
-
-
-//************************************************************************
-// Meter Pulse Indicator
-// Ericsson Specification Reference: Chapter 2.3.3.47
-//************************************************************************
-  type record Meter_pulse_indicator
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT1 MeterPulse, // Meter pulse indicator
-     OCT1 Reserved    // Reserved
-    } with { variant "PRESENCE( id = '11111110'B)";
-             variant (lengthField)"LENGTHTO(MeterPulse,Reserved)";
-           };
-
-//************************************************************************
-// MLPP Precedence
-// Ericsson Specification Reference: Chapter 2.3.3.48
-// Standard Reference ISUP         : Chapter 3.34
-//************************************************************************
-  type record MLPP_precedence
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT4 PreLev,  // Precedence level
-     BIT1 spare_1, // Spare
-     BIT2 LFB,     // Look ahead for busy
-     BIT1 spare_2, // Spare
-     OCT2 NI,       // Network identity
-     OCT3 ServDom   // MLPP service domain
-    } with { variant "PRESENCE( id = '00111010'B)";
-             variant (lengthField)"LENGTHTO(PreLev,spare_1,LFB,spare_2,NI,
-                                            ServDom)";
-           };
-
-
-//************************************************************************
-// Nature Of Connection Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.49
-// Standard Reference ISUP         : Chapter 3.35
-//************************************************************************
-  type record Nature_of_connection_indicators    
-    {
-     BIT2 SatelliteInd,       // Satellite indicator
-     BIT2 ContinuityCheckInd, // Continuity check indicator
-     BIT1 EchoControlDevInd,  // Echo CONtrol device indicator
-     BIT3 Spare               // Spare
-    } with { variant "" };
-
-
-//************************************************************************
-// Network Call Reference
-// Ericsson Specification Reference: Chapter 2.3.3.50
-//************************************************************************
-  type record Network_call_reference
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT3 CallIdentity, // Call identity
-     BIT14 SwitchId, // Switch identity
-     BIT2 Spare // Spare
-    } with { variant "PRESENCE( id = '11110100'B)";
-             variant (lengthField)"LENGTHTO(CallIdentity,SwitchId,Spare)";
-           };
-
-
-//************************************************************************
-// Network Management Controls
-// Standard Reference ISUP         : Chapter 3.68
-//************************************************************************
-  type record Network_management_controls
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 TAR_indicator, // Temporary alternate routing indicator
-     BIT6 spare,         // Temporary alternate routing indicator
-     BIT1 ExtI           // Extension indicator
-    } with { variant "PRESENCE( id = '01011011'B)";
-             variant (lengthField)"LENGTHTO(TAR_indicator,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// Network Routing Number
-// Standard Reference ISUP         : Chapter 3.90
-//************************************************************************
-  type record Network_routing_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT4 NatureOfAddrInd,  // Nature of address indicator
-     BIT3 NumberingPlanInd, // Numbering plan indicator
-     BIT1 OddEven,          // Odd/even indicator
-     HEX1_32 AddrSignals, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '10000100'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,NumberingPlanInd,
-                                            OddEven,AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Network Specific Facility
-// Ericsson Specification Reference: Chapter 2.3.3.51
-// Standard Reference ISUP         : Chapter 3.36
-//************************************************************************
-  type record Network_specific_facility
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     INT1 LenOfNetwId, // Length of network identification
-     BIT4 NetworkIdPlan optional,   // Network identification plan
-     BIT3 TypeofNetworkId optional, // Type of network identification
-     BIT1 One optional,
-     OCTN NetworkId optional,   // Network id. First bit in octets is 0
-     OCTN NetworkSpecificFacility // network-specific FACility indicator
-    } with { variant (LenOfNetwId) "LENGTHTO(NetworkIdPlan,TypeofNetworkId,
-                                             One,NetworkId)";
-             variant "PRESENCE( id = '00101111'B)";
-             variant (lengthField)"LENGTHTO(LenOfNetwId,NetworkIdPlan,
-                                            TypeofNetworkId,One,NetworkId,
-                                            NetworkSpecificFacility)";
-           };
-
-
-//************************************************************************
-// Number Portability Forward Information
-// Standard Reference ISUP         : Chapter 3.101
-//************************************************************************
-  type record Number_portability_forward_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT4 NbPStInd, // Number portability status indicator
-     BIT3 spare,    // Spare
-     BIT1 ExtI      // Extension indicator
-    } with { variant "PRESENCE( id = '10001101'B)";
-             variant (lengthField)"LENGTHTO(NbPStInd,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// Optional Backward Call Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.52
-// Standard Reference ISUP         : Chapter 3.37
-//************************************************************************
-  type record Optional_backward_call_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 InBandInfoInd,            // In-band INFormation indicator
-     BIT1 CallDiversionMayOccurInd, // Call diversion may occur indicator
-     BIT1 SimpleSegmentationInd,    // Simple segmentation indicator
-     BIT1 MLPPUserInd,              // MLPP User Indicator
-     BIT2 Reserved,                 // Reserved
-     BIT1 TimeSupervBeforeAnsInd,   // Time supervision before answerind.
-     BIT1 LastPartyRelInd           // Last party release indicator
-    } with { variant "PRESENCE( id = '00101001'B)";
-             variant (lengthField)"LENGTHTO(InBandInfoInd,
-                                            CallDiversionMayOccurInd,
-                                            SimpleSegmentationInd,MLPPUserInd,
-                                            Reserved,TimeSupervBeforeAnsInd,
-                                            LastPartyRelInd)";
-           };
-
-
-//************************************************************************
-// Optional Forward Call Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.53
-// Standard Reference ISUP         : Chapter 3.38
-//************************************************************************
-  type record Optional_forward_call_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 CUGCallInd,            // Closed user group call indicator
-     BIT1 SimpleSegmentationInd, // Simple segmentation indicator
-     BIT4 Spare,                 // Spare
-     BIT1 ConnLineReqInd         // Connected line identity request indicator
-    } with { variant "PRESENCE( id = '00001000'B)";
-             variant (lengthField)"LENGTHTO(CUGCallInd,SimpleSegmentationInd,
-                                            Spare,ConnLineReqInd)";
-           };
-
-
-//************************************************************************
-// Original Called Number
-// Ericsson Specification Reference: Chapter 2.3.3.54
-// Standard Reference ISUP         : Chapter 3.39
-//************************************************************************
-  type record Original_called_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT2 Spare_1,            // Spare
-     BIT2 AddrPresentRestInd, // Address presentation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 Spare_2,            // Spare
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '00101000'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,Spare_1,
-                                            AddrPresentRestInd,NumberingPlanInd,
-                                            Spare_2,AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Original Called IN Number
-// Standard Reference ISUP         : Chapter 3.87
-//************************************************************************
-  type record Original_called_IN_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT2 spare_1,            // Spare
-     BIT2 AddrPresentRestInd, // Address presentation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 spare_2,            // Spare
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '01111111'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,spare_1,
-                                            AddrPresentRestInd,NumberingPlanInd,
-                                            spare_2,AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Origination ISC Point Code
-// Ericsson Specification Reference: Chapter 2.3.3.55
-// Standard Reference ISUP         : Chapter 3.40
-//************************************************************************
-  type record Origination_ISC_point_code
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT2 OriISC_contents // Signalling point code
-    } with { variant "PRESENCE( id = '00101011'B)";
-             variant (lengthField)"LENGTHTO(OriISC_contents)";
-           };
-
-
-//************************************************************************
-// Parameter Compatibility Information
-// Ericsson Specification Reference: Chapter 2.3.3.56
-// Standard Reference ISUP         : Chapter 3.41
-//************************************************************************
-  type record Parameter_compatibility_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 FirstUpgradParam, // Upgraded parameter name
-     BIT7 InstructIndFirst, // all instruction indicators for parameter 1
-     BIT1 ExtInd1, // Extension indicator
-     BIT8 SecondUpgradParam optional,
-     BIT7 InstructIndSecond optional, // all instruction indicators for param. 2
-     BIT1 ExtInd2 optional, // Extension indicator
-     BIT8 ThirdUpgradParam optional,
-     BIT7 InstructIndThird optional, // all instruction indicators for param. 3
-     BIT1 ExtInd3 optional, // Extension indicator
-     BIT8 FourthUpgradParam optional,
-     BIT7 InstructIndFourth optional, // all instruction indicators for param. 4
-     BIT1 ExtInd4 optional, // Extension indicator
-     BIT8 FifthUpgradParam optional,
-     BIT7 InstructIndFifth optional, // all instruction indicators for param. 5
-     BIT1 ExtInd5 optional// Extension indicator
-    } with { variant "PRESENCE( id = '00111001'B)";
-             variant (lengthField)"LENGTHTO(FirstUpgradParam,InstructIndFirst,
-                                            ExtInd1,SecondUpgradParam,
-                                            InstructIndSecond,ExtInd2,
-                                            ThirdUpgradParam,InstructIndThird,
-                                            ExtInd3,FourthUpgradParam,
-                                            InstructIndFourth,ExtInd4,
-                                            FifthUpgradParam,InstructIndFifth,
-                                            ExtInd5)";
-           };
-
-
-//************************************************************************
-// Pivot Capability
-// Standard Reference ISUP         : Chapter 3.84
-//************************************************************************
-  type record Pivot_capability
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT3 PivPosInd,  // Pivot possible indicator
-     BIT3 spare,      // Spare
-     BIT1 IwRedirInd, // Interworking to redirection indicator
-     BIT1 ExtI        // Extension indicator
-    } with { variant "PRESENCE( id = '01111011'B)";
-             variant (lengthField)"LENGTHTO(PivPosInd,spare,IwRedirInd,ExtI)";
-           };
-
-
-//************************************************************************
-// Pivot Counter
-// Standard Reference ISUP         : Chapter 3.93
-//************************************************************************
-  type record Pivot_counter
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT5 PivCount, // Pivot counter
-     BIT3 spare // spare
-    } with { variant "PRESENCE( id = '10000111'B)";
-             variant (lengthField)"LENGTHTO(PivCount,spare)";
-           };
-
-
-//************************************************************************
-// Pivot Routing Backward Information
-// Standard Reference ISUP         : Chapter 3.95
-//************************************************************************
-  type record Pivot_routing_backward_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     ISUP_Information_type_set PivotInfo
-    } with { variant "PRESENCE( id = '10001001'B)";
-             variant (lengthField)"LENGTHTO(PivotInfo)";
-           };
-
-  type record ISUP_Information_type
-    {
-     BIT8 infoTypeTag,
-     INT1 infoTypeLength,
-     OCTN infoTypeValue
-    } with { variant (infoTypeLength)"LENGTHTO(infoTypeValue)";
-           };
-
-  type set of ISUP_Information_type ISUP_Information_type_set
-      with { variant "" };
-
-
-//************************************************************************
-// Pivot Routing Forward Information
-// Standard Reference ISUP         : Chapter 3.94
-//************************************************************************
-  type record Pivot_routing_forward_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     ISUP_Information_type_set PivotInfo
-    } with { variant "PRESENCE( id = '10001000'B)";
-             variant (lengthField)"LENGTHTO(PivotInfo)";
-           };
-
-
-//************************************************************************
-// Pivot Routing Indicators
-// Standard Reference ISUP         : Chapter 3.85
-//************************************************************************
-  type record Pivot_routing_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 PivRoutInd, // Pivot routing indicators
-     BIT1 ExtI        // Extension indicator
-    } with { variant "PRESENCE( id = '01111100'B)";
-             variant (lengthField)"LENGTHTO(PivRoutInd,ExtI)";
-           };
-
-
-//************************************************************************
-// Pivot Status
-// Standard Reference ISUP         : Chapter 3.92
-//************************************************************************
-  type record Pivot_status
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 PivStInd, // Pivot status indicator
-     BIT5 spare, // Spare
-     BIT1 ExtI // Extension indicator
-    } with { variant "PRESENCE( id = '10000110'B)";
-             variant (lengthField)"LENGTHTO(PivStInd,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// Propagation Delay Counter
-// Ericsson Specification Reference: Chapter 2.3.3.57
-// Standard Reference ISUP         : Chapter 3.42
-//************************************************************************
-  type record Propagation_delay_counter
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT2 PropagationDelayValue
-    } with { variant "PRESENCE( id = '00110001'B)";
-             variant (lengthField)"LENGTHTO(PropagationDelayValue)";
-           };
-
-
-//************************************************************************
-// Query On Release Capability
-// Standard Reference ISUP         : Chapter 3.91
-//************************************************************************
-  type record Query_on_release_capability
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 QoRCapInd, // Query on RELease capability indicator
-     BIT6 spare,     // Spare
-     BIT1 ExtI       // Extension indicator
-    } with { variant "PRESENCE( id = '10000101'B)";
-             variant (lengthField)"LENGTHTO(QoRCapInd,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// Range And Status
-// Ericsson Specification Reference: Chapter 2.3.3.58
-// Standard Reference ISUP         : Chapter 3.43
-//************************************************************************
-  type record Range_and_status    
-    {
-     INT1 lengthField,
-
-     OCT1 Range,         // Range
-     OCTN Status optional// Status
-    } with { variant (lengthField)"LENGTHTO(Range,Status)";
-           };
-
-
-//************************************************************************
-// Redirect Backward Information
-// Standard Reference ISUP         : Chapter 3.100
-//************************************************************************
-  type record Redirect_backward_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     ISUP_Information_type_set RedirInfo
-    } with { variant "PRESENCE( id = '10001100'B)";
-             variant (lengthField)"LENGTHTO(RedirInfo)";
-           };
-
-
-//************************************************************************
-// Redirect Capability
-// Standard Reference ISUP         : Chapter 3.96
-//************************************************************************
-  type record Redirect_capability
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT3 RedirPosInd, // Redirect possible indicator
-     BIT4 spare,       // Spare
-     BIT1 ExtI         // Extension indicator
-    } with { variant "PRESENCE( id = '01001110'B)";
-             variant (lengthField)"LENGTHTO(RedirPosInd,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// Redirect Counter
-// Standard Reference ISUP         : Chapter 3.97
-//************************************************************************
-  type record Redirect_counter
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT5 RedirCount, // Redirect counter
-     BIT3 spare       // Spare
-    } with { variant "PRESENCE( id = '01110111'B)";
-             variant (lengthField)"LENGTHTO(RedirCount,spare)";
-           };
-
-
-//************************************************************************
-// Redirect Forward Information
-// Standard Reference ISUP         : Chapter 3.99
-//************************************************************************
-  type record Redirect_forward_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     ISUP_Information_type_set RedirInfo
-    } with { variant "PRESENCE( id = '10001011'B)";
-             variant (lengthField)"LENGTHTO(RedirInfo)";
-           };
-
-
-//************************************************************************
-// Redirect Status
-// Standard Reference ISUP         : Chapter 3.98
-//************************************************************************
-  type record Redirect_status
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 RedirStInd, // Redirect status indicator
-     BIT5 spare,      // Spare
-     BIT1 ExtI        // Extension indicator
-    } with { variant "PRESENCE( id = '10001010'B)";
-             variant (lengthField)"LENGTHTO(RedirStInd,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// Redirecting Number
-// Ericsson Specification Reference: Chapter 2.3.3.59
-// Standard Reference ISUP         : Chapter 3.44
-//************************************************************************
-  type record Redirecting_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT2 Spare1,              // Spare
-     BIT2 AddrPresentRestInd, // Address presentation REStricted indicator
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 Spare,              // Spare
-     HEX1_32 AddrSignals optional, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '00001011'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,
-                                            Spare1,AddrPresentRestInd,
-                                            NumberingPlanInd,Spare,AddrSignals,
-                                            Filler)";
-           };
-
-
-
-//************************************************************************
-// Redirection Information
-// Ericsson Specification Reference: Chapter 2.3.3.60
-// Standard Reference ISUP         : Chapter 3.45
-//************************************************************************
-  type record Redirection_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT3 RedirectionInd,            // Redirecting indicator
-     BIT1 Spare1,                    // Redirecting indicator
-     BIT4 OriginalRedirectionReason, // Original redirection reason
-     BIT3 RedirectionCounter optional, // Redirection counter
-     BIT1 Spare2 optional,             // Spare
-     BIT4 RedirectingReason optional   // Redirecting reason
-    } with { variant "PRESENCE( id = '00010011'B)";
-             variant (lengthField)"LENGTHTO(RedirectionInd,Spare1,
-                                            OriginalRedirectionReason,
-                                            RedirectionCounter,Spare2,
-                                            RedirectingReason)";
-           };
-
-
-//************************************************************************
-// Redirection Number
-// Ericsson Specification Reference: Chapter 2.3.3.61
-// Standard Reference ISUP         : Chapter 3.46
-//************************************************************************
-  type record Redirection_number
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 NatureOfAddrInd, // Nature of address indicator
-     BIT1 OddEven,         // Odd/even indicator
-     BIT4 Spare,              // spare
-     BIT3 NumberingPlanInd,   // Numbering plan indicator
-     BIT1 INNInd,             // Internal network number indicator
-     HEX1_32 AddrSignals, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '00001100'B)";
-             variant (lengthField)"LENGTHTO(NatureOfAddrInd,OddEven,Spare,
-                                            NumberingPlanInd,INNInd,
-                                            AddrSignals,Filler)";
-           };
-
-//************************************************************************
-// Redirection Number Restriction
-// Ericsson Specification Reference: Chapter 2.3.3.62
-// Standard Reference ISUP         : Chapter 3.47
-//************************************************************************
-  type record Redirection_number_restriction
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 PresRestInd, // Presentation REStricted indicator
-     BIT6 Spare        // Spare
-    } with { variant "PRESENCE( id = '01000000'B)";
-             variant (lengthField)"LENGTHTO(PresRestInd,Spare)";
-           };
-
-
-//************************************************************************
-// Remote Operations
-// Standard Reference ISUP         : Chapter 3.48
-//************************************************************************
-  type record Remote_operations
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT5 ProtProf, // Protocol profile
-     BIT2 spare,    //  Spare
-     BIT1 ExtI,     // Extension indicator
-     OCTN Comp      // Components
-    } with { variant "PRESENCE( id = '00110010'B)";
-             variant (lengthField)"LENGTHTO(ProtProf,spare,ExtI,Comp)";
-           };
-
-
-//************************************************************************
-// Route Identity
-// Ericsson Specification Reference: Chapter 2.3.3.63
-//************************************************************************
-  type record Route_identity
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT2 RouteIdentity
-    } with { variant "PRESENCE( id = '11111100'B)";
-             variant (lengthField)"LENGTHTO(RouteIdentity)";
-           };
-
-
-//************************************************************************
-// SCF Id
-// Ericsson Specification Reference: Chapter 2.3.3.64
-// Standard Reference ISUP         : Chapter 3.71
-//************************************************************************
-  type record SCF_id
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCTN SCFId
-    } with { variant "PRESENCE( id = '01100110'B)";
-             variant (lengthField)"LENGTHTO(SCFId)";
-           };
-
-
-//************************************************************************
-// Service Activation
-// Ericsson Specification Reference: Chapter 2.3.3.65
-// Standard Reference ISUP         : Chapter 3.49
-//************************************************************************
-  type record Service_activation
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCTN ServAct_contents
-    } with { variant "PRESENCE( id = '00110011'B)";
-             variant (lengthField)"LENGTHTO(ServAct_contents)";
-           };
-
-
-//************************************************************************
-// Signalling Point Code
-// Standard Reference ISUP         : Chapter 3.50
-//************************************************************************
-  type record Signalling_point_code
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT2 SPC_contents // Signalling point code
-    } with { variant "PRESENCE( id = '00011110'B)";
-             variant (lengthField)"LENGTHTO(SPC_contents)";
-           };
-
-
-//************************************************************************
-// Subsequent Number
-// Ericsson Specification Reference: Chapter 2.3.3.66
-// Standard Reference ISUP         : Chapter 3.51
-//************************************************************************
-  type record Subsequent_number_OPT
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT7 Spare,   // Spare
-     BIT1 OddEven, // Odd/even inicator
-     HEX1_32 AddrSignals, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant "PRESENCE( id = '00000101'B)";
-             variant (lengthField)"LENGTHTO(Spare,OddEven,AddrSignals,Filler)";
-           };
-
-  type record Subsequent_number    
-    {
-     INT1 lengthField,
-
-     BIT7 Spare,   // Spare
-     BIT1 OddEven, // Odd/even inicator
-     HEX1_32 AddrSignals, // Address signals and Filler if odd addr.signals
-     HEX1 Filler optional
-    } with { variant (AddrSignals) "HEXORDER(low)";
-             variant (lengthField)"LENGTHTO(Spare,OddEven,AddrSignals,Filler)";
-           };
-
-
-//************************************************************************
-// Suspend Resume Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.67
-// Standard Reference ISUP         : Chapter 3.52
-//************************************************************************
-  type record Suspend_resume_indicators    
-    {
-     BIT1 SUSRESInd, // Suspend/resume indicator
-     BIT7 Spare      // Spare
-    } with { variant "" };
-
-
-//************************************************************************
-// Tariff Indicator
-// Ericsson Specification Reference: Chapter 2.3.3.68
-//************************************************************************
-  type record Tariff_indicator
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCT1 TariffInd, // Tariff indicator
-     OCT1 Reserved optional// Reserved
-    } with { variant "PRESENCE( id = '11111101'B)";
-             variant (lengthField)"LENGTHTO(TariffInd,Reserved)";
-           };
-
-
-//************************************************************************
-// Transit Network Selection
-// Ericsson Specification Reference: Chapter 2.3.3.69
-// Standard Reference ISUP         : Chapter 3.53
-//************************************************************************
-  type record Transit_network_selection
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT4 NetIdPlan,   //  Network identification plan
-     BIT3 TypeOfNetId, // Type of network identification
-     BIT1 OddEvenInd,  // Odd/even inicator
-     OCTN NetId // Network identification
-    } with { variant "PRESENCE( id = '00100011'B)";
-             variant (lengthField)"LENGTHTO(NetIdPlan,TypeOfNetId,OddEvenInd,
-                                            NetId)";
-           };
-
-
-//************************************************************************
-// Transmission Medium Requirement
-// Ericsson Specification Reference: Chapter 2.3.3.70
-// Standard Reference ISUP         : Chapter 3.54
-//************************************************************************
-  type record Transmission_medium_requirement    
-    {
-     BIT8 TMR
-    } with { variant "" };
-
-//************************************************************************
-// Transmission Medium Requirement Prime
-// Ericsson Specification Reference: Chapter 2.3.3.71
-// Standard Reference ISUP         : Chapter 3.55
-//************************************************************************
-  type record Transmission_medium_requirement_prime
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 TMRp_field
-    } with { variant "PRESENCE( id = '00111110'B)";
-             variant (lengthField)"LENGTHTO(TMRp_field)";
-           };
-
-//************************************************************************
-// Transmission Medium Used
-// Ericsson Specification Reference: Chapter 2.3.3.72
-// Standard Reference ISUP         : Chapter 3.56
-//************************************************************************
-  type record Transmission_medium_used
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT8 TMU_field
-    } with { variant "PRESENCE( id = '00110101'B)";
-             variant (lengthField)"LENGTHTO(TMU_field)";
-           };
-
-
-//************************************************************************
-// UID Action Indicators
-// Standard Reference ISUP         : Chapter 3.78
-//************************************************************************
-  type record UID_action_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 ThConInsInd, // Through CONnection instruction indicator
-     BIT1 T9InsInd,    // T9 timer instruction indicator
-     BIT5 spare,       // Spare
-     BIT1 ExtI         // Extension indicator
-    } with { variant "PRESENCE( id = '01110100'B)";
-             variant (lengthField)"LENGTHTO(ThConInsInd,T9InsInd,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// UID Capability Indicators
-// Standard Reference ISUP         : Chapter 3.79
-//************************************************************************
-  type record UID_capability_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 through_connection_indicator, // Through CONnection indicator
-     BIT1 T9_timer_indicator, // T9 timer indicator
-     BIT5 spare, // T9 timer indicator
-     BIT1 ExtI // Extension indicator
-    } with { variant "PRESENCE( id = '01110101'B)";
-             variant (lengthField)"LENGTHTO(through_connection_indicator,
-                                            T9_timer_indicator,spare,ExtI)";
-           };
-
-
-//************************************************************************
-// User Service Information
-// Ericsson Specification Reference: Chapter 2.3.3.73
-// Standard Reference ISUP         : Chapter 3.57
-//************************************************************************
-  type record User_service_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT5 InfTrC, // Information transfer capability
-     BIT2 CodS,   // Coding standard
-     BIT1 ExtI_1, // Extension indicator (1)
-  //EXT GR1 start
-     BIT5 infTR,    // Information transfer rate
-     BIT2 TrMod,    // Transfer mode
-     BIT1 ExtI_2,   // Extension indicator (0/1)
-
-     BIT2 establishment optional, // demand
-     BIT2 configuration optional, // point-to-point
-     BIT3 structure optional,     // default
-     BIT1 ext2a optional,
-
-     BIT5 infoTransRate optional, //used for packet-mode calls
-     BIT2 symmetry optional,      // bi-directional symmetric
-     BIT1 ext2b optional,
-   //EXT GR1 end
-     BIT7 RatMul optional,   // Rate multiplier
-     BIT1 ExtI_2_1 optional, // Extension indicator (1)
-
-     Layer1_info  layer1 optional,
-     Layer2_info  layer2 optional,
-     Layer3_info  layer3 optional
-    } with { variant "EXTENSION_BIT_GROUP(yes,infTR,ext2b)";
-             variant (RatMul) "PRESENCE(infTR = '11000'B)";
-             variant (ExtI_2_1) "PRESENCE(infTR = '11000'B)";
-             variant "TAG ( layer1, layer_id = '01'B;	
-                            layer2, layer_id = '10'B;	
-                            layer3, layer_id = '11'B;)"
-             variant "PRESENCE( id = '00011101'B)";
-             variant (lengthField)"LENGTHTO(InfTrC,CodS,ExtI_1,infTR,TrMod,
-                                            ExtI_2,establishment,configuration,
-                                            structure,ext2a,infoTransRate,
-                                            symmetry,ext2b,RatMul,ExtI_2_1,
-                                            layer1,layer2,layer3)";
-           };
-
-  type record Layer1_info
-    {
-     BIT5 UInf1,    // User INFormation layer 1 protocol
-     BIT2 layer_id, // Layer identification
-     BIT1 ExtI_3,   // Extension indicator (0/1)
-
-     BIT5 UsrRate optional, // User rate
-     BIT1 Negot optional,   // Negotiation
-     BIT1 SynAsyn optional, // Synchronous/Asynchronous
-     BIT1 ExtI_3a optional, // Extension indicator (0/1)
-
-     //Note: the content of this field depends on field UInf1 - see Q.931 4.5.5
-     BIT7 Bits_3b optional,  // info bits in octet 3b
-     BIT1 ExtI_3b optional,    // Extension indicator (0/1)
-
-     //BIT1 Spare_1 optional, // Spare
-     //BIT1 FlCtrRx optional, // Flow control on Rx
-     //BIT1 FlCtrTx optional, // Flow control on Tx
-     //BIT1 NICRx optional,   // Network independent clock on RX
-     //BIT1 NICTx optional,   // Network independent clock on TX
-     //BIT2 IntRate optional, // Intermediate rate
-     //BIT1 ExtI_6 optional,  // Extension indicator (0/1)
-
-     //BIT1 Spare_2 optional,  // Spare
-     //BIT1 InBndNeg optional, // In-band/out-band negotiation
-     //BIT1 Ass optional,      // Assignor/assignee
-     //BIT1 LLINeg optional,   // Logical link identifier negotiation
-     //BIT1 Mode optional,     // Mode of operation
-
-     //BIT1 MultFr optional,// Multiple frame establishment support in data link
-     //BIT1 Hdr optional,   // Rate adaption header/no header
-     //BIT1 ExtI_7 optional,// Extension indicator (0/1)
-
-     BIT3 Prty optional,    // Parity INFormation
-     BIT2 NDatBit optional, // Number of data bits excluding parity bit if pres.
-     BIT2 NStpBit optional, // Number of stop bits
-     BIT1 ExtI_3c optional,  // Extension indicator (0/1)
-
-     BIT6 MdmTyp optional, // Modem type
-     BIT1 DupMod optional, // Mode duplex
-     BIT1 ExtI_3d optional  // Extension indicator (1)
-     } with { variant "EXTENSION_BIT(yes)"}
-
-  type record Layer2_info
-    {
-     BIT5 uInf2,    // User information layer 2 protocol
-     BIT2 layer_id, // Layer identification
-     BIT1 extI_10   // Extension indicator (1)
-    } with { variant "" };
-
-  type record Layer3_info
-    {
-     BIT5 uInf3,    // User information layer 3 protocol
-     BIT2 layer_id, // Layer identification
-     BIT1 extI_11   // Extension indicator (1)
-    } with { variant "" };
-
-
-//************************************************************************
-// User Service Information Prime
-// Ericsson Specification Reference: Chapter 2.3.3.74
-// Standard Reference ISUP         : Chapter 3.58
-//************************************************************************
-  type record User_service_information_prime
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT5 InfTrC, // Information transfer capability
-     BIT2 CodS,   // Coding standard
-     BIT1 ExtI_1, // Extension indicator (1)
-  //EXT GR1 start
-     BIT5 infTR,    // Information transfer rate
-     BIT2 TrMod,    // Transfer mode
-     BIT1 ExtI_2,   // Extension indicator (0/1)
-
-     BIT2 establishment optional, // demand
-     BIT2 configuration optional, // point-to-point
-     BIT3 structure optional,     // default
-     BIT1 ext2a optional,
-
-     BIT5 infoTransRate optional, //used for packet-mode calls
-     BIT2 symmetry optional,      // bi-directional symmetric
-     BIT1 ext2b optional,
-   //EXT GR1 end
-     BIT7 RatMul optional,   // Rate multiplier
-     BIT1 ExtI_2_1 optional, // Extension indicator (1)
-
-     Layer1_info  layer1 optional,
-     Layer2_info  layer2 optional,
-     Layer3_info  layer3 optional
-    } with { variant "EXTENSION_BIT_GROUP(yes,infTR,ext2b)";
-             variant (RatMul) "PRESENCE(infTR = '11000'B)";
-             variant (ExtI_2_1) "PRESENCE(infTR = '11000'B)";
-             variant "TAG ( layer1, layer_id = '01'B;	
-                            layer2, layer_id = '10'B;	
-                            layer3, layer_id = '11'B;)"
-             variant "PRESENCE( id = '00110000'B)";
-             variant (lengthField)"LENGTHTO(InfTrC,CodS,ExtI_1,infTR,TrMod,
-                                            ExtI_2,establishment,configuration,
-                                            structure,ext2a,infoTransRate,
-                                            symmetry,ext2b,RatMul,ExtI_2_1,
-                                            layer1,layer2,layer3)";
-            };
-/* The old version is commented out because it could cause decoding problems.
-  type record User_service_information    // 3.57 / Q.763
-    {
-     BIT5 InfTrC, // Information transfer capability
-     BIT2 CodS, // Coding standard
-     BIT1 ExtI_1, // Extension indicator (1)
-     BIT5 InfTR, // Information transfer rate
-     BIT2 TrMod, // Transfer mode
-     BIT1 ExtI_2, // Extension indicator (0/1)
-     BIT8 RatMul optional, // Rate multiplier
-     BIT1 ExtI_3 optional, // Extension indicator (1)
-     BIT5 UInf1 optional, // User INFormation layer 1 protocol
-     BIT2 Lay1 optional, // Layer identification
-     BIT1 ExtI_4 optional, // Extension indicator (0/1)
-     BIT5 UsrRate optional, // User rate
-     BIT1 Negot optional, // Negotiation
-     BIT1 SynAsyn optional, // Synchronous/Asynchronous
-     BIT1 ExtI_5 optional, // Extension indicator (0/1)
-     BIT1 Spare_1 optional, // Spare
-     BIT1 FlCtrRx optional, // Flow control on Rx
-     BIT1 FlCtrTx optional, // Flow control on Tx
-     BIT1 NICRx optional, // Network independent clock on RX
-     BIT1 NICTx optional, // Network independent clock on TX
-     BIT2 IntRate optional, // Intermediate rate
-     BIT1 ExtI_6 optional, // Extension indicator (0/1)
-     BIT1 Spare_2 optional, // Spare
-     BIT1 InBndNeg optional, // In-band/out-band negotiation
-     BIT1 Ass optional, // Assignor/assignee
-     BIT1 LLINeg optional, // Logical link identifier negotiation
-     BIT1 Mode optional, // Mode of operation
-     BIT1 MultFr optional, // Multiple frame establishment support in data link
-     BIT1 Hdr optional, // Rate adaption header/no header
-     BIT1 ExtI_7 optional, // Extension indicator (0/1)
-     BIT3 Prty optional, // Parity INFormation
-     BIT2 NDatBit optional, // Number of data bits excluding parity bit if pres.
-     BIT2 NStpBit optional, // Number of stop bits
-     BIT1 ExtI_8 optional, // Extension indicator (1)
-     BIT6 MdmTyp optional, // Modem type
-     BIT1 DupMod optional, // Mode duplex
-     BIT1 ExtI_9 optional, // Extension indicator (1)
-     BIT5 UInf2 optional, // User INFormation layer 2 protocol
-     BIT2 Lay2 optional, // Layer identification
-     BIT1 ExtI_10 optional, // Extension indicator (1)
-     BIT5 UInf3 optional, // User INFormation layer 3 protocol
-     BIT2 Lay3 optional, // Layer identification
-     BIT1 ExtI_11 optional // Extension indicator (1)
-    } with { variant "" };
-
-
-  type record User_service_information_prime    // 3.58 / Q.763
-    {
-     BIT5 InfTrC, // Information transfer capability
-     BIT2 CodS, // Coding standard
-     BIT1 ExtI_1, // Extension indicator (1)
-     BIT5 InfTR, // Information transfer rate
-     BIT2 TrMod, // Transfer mode
-     BIT1 ExtI_2, // Extension indicator (0/1)
-     BIT8 RatMul optional, // Rate multiplier
-     BIT1 ExtI_3 optional, // Extension indicator (1)
-     BIT5 UInf1 optional, // User INFormation layer 1 protocol
-     BIT2 Lay1 optional, // Layer identification
-     BIT1 ExtI_4 optional, // Extension indicator (0/1)
-     BIT5 UsrRate optional, // User rate
-     BIT1 Negot optional, // Negotiation
-     BIT1 SynAsyn optional, // Synchronous/Asynchronous
-     BIT1 ExtI_5 optional, // Extension indicator (0/1)
-     BIT1 Spare_1 optional, // Spare
-     BIT1 FlCtrRx optional, // Flow control on Rx
-     BIT1 FlCtrTx optional, // Flow control on Tx
-     BIT1 NICRx optional, // Network independent clock on RX
-     BIT1 NICTx optional, // Network independent clock on TX
-     BIT2 IntRate optional, // Intermediate rate
-     BIT1 ExtI_6 optional, // Extension indicator (0/1)
-     BIT1 Spare_2 optional, // Spare
-     BIT1 InBndNeg optional, // In-band/out-band negotiation
-     BIT1 Ass optional, // Assignor/assignee
-     BIT1 LLINeg optional, // Logical link identifier negotiation
-     BIT1 Mode optional, // Mode of operation
-     BIT1 MultFr optional, // Multiple frame establishment support in data link
-     BIT1 Hdr optional, // Rate adaption header/no header
-     BIT1 ExtI_7 optional, // Extension indicator (0/1)
-     BIT3 Prty optional, // Parity INFormation
-     BIT2 NDatBit optional, // Number of data bits excluding parity bit if pres.
-     BIT2 NStpBit optional, // Number of stop bits
-     BIT1 ExtI_8 optional, // Extension indicator (1)
-     BIT6 MdmTyp optional, // Modem type
-     BIT1 DupMod optional, // Mode duplex
-     BIT1 ExtI_9 optional, // Extension indicator (1)
-     BIT5 UInf2 optional, // User INFormation layer 2 protocol
-     BIT2 Lay2 optional, // Layer identification
-     BIT1 ExtI_10 optional, // Extension indicator (1)
-     BIT5 UInf3 optional, // User INFormation layer 3 protocol
-     BIT2 Lay3 optional, // Layer identification
-     BIT1 ExtI_11 optional // Extension indicator (1)
-    } with { variant "" };
-*/
-
-
-//************************************************************************
-// User Teleservice Information
-// Ericsson Specification Reference: Chapter 2.3.3.75
-// Standard Reference ISUP         : Chapter 3.59
-//************************************************************************
-  type record User_teleservice_information
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT2 Pres,     // Presentation
-     BIT3 Interpr,  // Interpretation
-     BIT2 CodS,     // Coding standard
-     BIT1 ExtI_1,   // Extention indicator, always 1
-     BIT7 HLChrInf,   // High layer characteristics identification
-     BIT1 ExtI_2,     // Extension indicator, (0/1)
-     BIT7 ExHLChrInf optional, // Extended high layer characteristics id.
-     BIT1 ExtI_3 optional      // Extention indicator, always 1
-    } with { variant (ExHLChrInf) "PRESENCE(ExtI_2 = '0'B)";
-             variant (ExtI_3) "PRESENCE(ExtI_2 = '0'B)";
-             variant "PRESENCE( id = '00110100'B)";
-             variant (lengthField)"LENGTHTO(Pres,Interpr,CodS,ExtI_1,HLChrInf,
-                                            ExtI_2,ExHLChrInf,ExtI_3)";
-           };
-
-//************************************************************************
-// User To User Indicators
-// Ericsson Specification Reference: Chapter 2.3.3.76
-// Standard Reference ISUP         : Chapter 3.60
-//************************************************************************
-  type record User_to_user_indicators
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     BIT1 Type, //  type
-     BIT2 Service1, // Service 1
-     BIT2 Service2, // Service 2
-     BIT2 Service3, // Service 3
-     BIT1 NetworkDiscardInd //Network discard ind. (spare if Type = request)
-    } with { variant "PRESENCE( id = '00101010'B)";
-             variant (lengthField)"LENGTHTO(Type,Service1,Service2,Service3,
-                                            NetworkDiscardInd)";
-           };
-
-
-//************************************************************************
-// User To User Information
-// Ericsson Specification Reference: Chapter 2.3.3.77
-// Standard Reference ISUP         : Chapter 3.61
-//************************************************************************
-  type record User_to_user_information_OPT
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     OCTN UserInfo
-    } with { variant "PRESENCE( id = '00100000'B)";
-             variant (lengthField)"LENGTHTO(UserInfo)";
-           };
-
-  type record User_to_user_information    
-    {
-     INT1 lengthField,
-
-     OCTN UserInfo
-    } with { variant (lengthField)"LENGTHTO(UserInfo)";
-           };
-
-
-//************************************************************************
-// Global Call Reference
-// GCR included in ISUP market variants based on EED/X 1056-174 Uen - Global
-// Call reference for ISUP and BICC, MSC R12.
-// It is used in the IAM message.  See section 3.1.1 for details.
-//************************************************************************
-  type record Global_call_reference
-    {
-     BIT8 id,
-     INT1 lengthField,
-
-     INT1 netwIdLenInd, // Network ID length indicator
-     OCTN netwId, // Network ID
-     INT1 nodeIdLenInd, // Node ID length indicator
-     OCTN nodeId, // Node ID
-     INT1 callRefLenInd, // Call Reference length indicator
-     OCTN callRefId // Call Reference ID
-    } with { variant (netwIdLenInd) "LENGTHTO (netwId)";
-             variant (nodeIdLenInd) "LENGTHTO(nodeId)";
-             variant (callRefLenInd) "LENGTHTO (callRefId)";
-             variant "PRESENCE( id = '10100100'B)";
-             variant (lengthField)"LENGTHTO(netwIdLenInd,netwId,nodeIdLenInd,
-                                            nodeId,callRefLenInd,callRefId)";
-           };
-} // END Group ISUP_parameters
-
-
-//************************************************************************
-//************************************************************************
-//************************************************************************
-//************************************************************************
-//************************************************************************
-
-
-//************************************************************************
-// ACM - Address complete
-// Ericsson Specification Reference: Chapter 2.2.2.1
-// Standard Reference ISUP         : Chapter 4, Table 21
-//************************************************************************
-  type set ACM_optional_part
-    {
-     Optional_backward_call_indicators      optBackwardCallInd optional,
-     Cause_indicators_OPT                   causeInd optional,
-     User_to_user_indicators                userToUserInd optional,
-     User_to_user_information_OPT           userToUserInfo optional,
-     Access_transport                       accessTransport optional,
-     Generic_notification_indicator_set     genericNotificationInd optional,
-     Transmission_medium_used               transMediumUsed optional,
-     Access_delivery_information            accessDeliveryInfo optional,
-     Redirection_number                     redirectionNum optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Call_diversion_information             callDiversionInfo optional,
-     Network_specific_facility              networkFacility optional,
-     Redirection_number_restriction         redirectionNumRest optional,
-     Route_identity                         routeIdentity optional,
-     Call_transfer_treatment_indicators     callTransferTreatmentInd optional,
-     Conference_treatment_indicators        conferenceTreatmentInd optional,
-
-     Call_reference                         callReference optional,
-     Echo_control_information               echoControlInfo optional,
-     Remote_operations                      remoteOperations optional,
-     Service_activation                     serviceActivation optional,
-     UID_action_indicators                  UIDAcInd optional,
-     Application_transport_parameter_set    ATPP optional,
-     CCNR_possible_indicator                CCNRP optional,
-     HTR_information                        HTRInfo optional,
-     Pivot_routing_backward_information     PRBI optional,
-     Redirect_status                        RedirSt optional
-    } with { variant (ATPP,genericNotificationInd) "REPEATABLE(yes)";};
-
-
-  type record ACM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Backward_call_indicators       backwardCallInd,
-     Pointer                        opt_part_ptr,
-     ACM_optional_part              acmOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (acmOptionals)"};
-
-
-//************************************************************************
-// ANM - Answer
-// Ericsson Specification Reference: Chapter 2.2.2.2
-// Standard Reference ISUP         : Chapter 4, Table 22
-//************************************************************************
-  type set ANM_optional_part
-    {
-     Backward_call_indicators_OPT           backwardCallInd optional,
-     Optional_backward_call_indicators      optBackwardCallInd optional,
-     User_to_user_indicators                userToUserInd optional,
-     User_to_user_information_OPT           userToUserInfo optional,
-     Connected_number                       connectedNum optional,
-     Access_transport                       accessTransport optional,
-     Access_delivery_information            accessDeliveryInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Backward_GVNS                          backwardGVNS optional,
-     Call_history_information               callHistoryInfo optional,
-     Generic_number_set                     genericNum optional,
-     Transmission_medium_used               transMediumUsed optional,
-     Network_specific_facility              networkFacility optional,
-     Redirection_number_restriction         redirectionNumRest optional,
-     Call_transfer_treatment_indicators     callTransferTreatmentInd optional,
-     Conference_treatment_indicators        conferenceTreatmentInd optional,
-
-     Call_reference                         callReference optional,
-     Generic_notification_indicator_set     genericNotificationInd optional,
-     Remote_operations                      remoteOperations optional,
-     Redirection_number                     redirectionNum optional,
-     Service_activation                     serviceActivation optional,
-     Echo_control_information               echoControlInfo optional,
-     Display_information                    DisInf optional,
-     Application_transport_parameter_set    ATPP optional,
-     Pivot_routing_backward_information     PRBI optional,
-     Redirect_status                        RedirSt optional
-    } with { variant (ATPP,genericNotificationInd,genericNum) "REPEATABLE(yes)";};
-
-
-  type record ANM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     ANM_optional_part              anmOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr)"POINTERTO (anmOptionals)";
-           };
-
-
-//************************************************************************
-// APM - Application Transport
-// Standard Reference ISUP         : Chapter 4, Table 51
-//************************************************************************
-  type set APM_optional_part
-    {
-     Message_compatibility_information      MCI optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Application_transport_parameter_set    ATPP optional
-    } with { variant (ATPP) "REPEATABLE(yes)";};
-
-
-  type record APM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     APM_optional_part              apmOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (apmOptionals)";
-           };
-
-
-//************************************************************************
-// BLO - Blocking
-// Ericsson Specification Reference: Chapter 2.2.2.3
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record BLO_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//************************************************************************
-// BLA - Blocking Acknowledgement
-// Ericsson Specification Reference: Chapter 2.2.2.4
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record BLA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//************************************************************************
-// CPG - Call Progress
-// Ericsson Specification Reference: Chapter 2.2.2.5
-// Standard Reference ISUP         : Chapter 4, Table 23
-//************************************************************************
-  type set CPG_optional_part
-    {
-     Cause_indicators_OPT                   causeInd optional,
-     Backward_call_indicators_OPT           backwardCallInd optional,
-     Optional_backward_call_indicators      optBackwardCallInd optional,
-     Access_transport                       accessTransport optional,
-     User_to_user_indicators                userToUserInd optional,
-     Redirection_number                     redirectionNum optional,
-     User_to_user_information_OPT           userToUserInfo optional,
-     Generic_notification_indicator_set     genericNotificationInd optional,
-     Network_specific_facility              networkFacility optional,
-     Transmission_medium_used               transMediumUsed optional,
-     Access_delivery_information            accessDeliveryInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Call_diversion_information             callDiversionInfo optional,
-     Redirection_number_restriction         redirectionNumRest optional,
-     Call_transfer_number                   callTransferNumber optional,
-     Call_transfer_treatment_indicators     callTransferTreatmentInd optional,
-     Conference_treatment_indicators        conferenceTreatmentInd optional,
-
-     Call_reference                         callReference optional,
-     Remote_operations                      remoteOperations optional,
-     Service_activation                     serviceActivation optional,
-     Echo_control_information               echoControlInfo optional,
-     Connected_number                       connectedNum optional,
-     Backward_GVNS                          backwardGVNS optional,
-     Generic_number_set                     genericNum optional,
-     Call_history_information               callHistoryInfo optional,
-     UID_action_indicators                  UIDAcInd optional,
-     Application_transport_parameter_set    ATPP optional,
-     CCNR_possible_indicator                CCNRP optional,
-     Pivot_routing_backward_information     PRBI optional,
-     Redirect_status                        RedirSt optional
-    } with { variant (ATPP,genericNotificationInd,genericNum) "REPEATABLE(yes)";};
-
-
-  type record CPG_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Event_information              eventInfo,
-     Pointer                        opt_part_ptr,
-     CPG_optional_part              cpgOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (cpgOptionals)";
-           };
-
-
-//************************************************************************
-// CRG - Charge Information
-// Ericsson Specification Reference: Chapter 2.2.2.6
-//************************************************************************
-  type set CRG_optional_part
-    {
-     Meter_pulse_indicator                  meterPulseInd optional,
-     Tariff_indicator                       tariffInd optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional
-    } with { variant "" };
-
-
-  type record CRG_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     CRG_optional_part              crgOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr)"POINTERTO (crgOptionals)";
-           };
-
-
-//************************************************************************
-// CGB - Circuit Group Blocking
-// Ericsson Specification Reference: Chapter 2.2.2.7
-// Standard Reference ISUP         : Chapter 4, Table 40
-//************************************************************************
-  type record CGB_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Circuit_group_supervision_message_type_indicator  circuitGroupSupervMsgInd,
-     Pointer                        var_part_ptr,
-     Range_and_status               rangeAndStatus
-    } with { variant (var_part_ptr) "POINTERTO (rangeAndStatus)";
-           };
-
-
-//************************************************************************
-// CGBA - Circuit Group Blocking Acknowledgement
-// Ericsson Specification Reference: Chapter 2.2.2.8
-// Standard Reference ISUP         : Chapter 4, Table 40
-//************************************************************************
-  type record CGBA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Circuit_group_supervision_message_type_indicator  circuitGroupSupervMsgInd,
-     Pointer                        var_part_ptr,
-     Range_and_status               rangeAndStatus
-    } with { variant (var_part_ptr) "POINTERTO (rangeAndStatus)";
-           };
-
-
-//************************************************************************
-// CQM - Circuit Group Query
-// Ericsson Specification Reference: Chapter 2.2.2.9
-// Standard Reference ISUP         : Chapter 4, Table 41
-//************************************************************************
-  type record CQM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var_part_ptr,
-     Range_and_status               rangeAndStatus
-     } with { variant (var_part_ptr) "POINTERTO (rangeAndStatus)";
-            };
-
-
-//************************************************************************
-// CQR - Circuit Group Query Response
-// Ericsson Specification Reference: Chapter 2.2.2.10
-// Standard Reference ISUP         : Chapter 4, Table 24
-//************************************************************************
-  type record CQR_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var1_part_ptr,
-     Pointer                        var2_part_ptr,
-     Range_and_status               rangeAndStatus,
-     Circuit_state_indicator        circuitStateInd
-     } with { variant (var1_part_ptr) "POINTERTO (rangeAndStatus)";
-              variant (var2_part_ptr) "POINTERTO (circuitStateInd)";
-            };
-
-
-//************************************************************************
-// GRS - Circuit Group Reset
-// Ericsson Specification Reference: Chapter 2.2.2.11
-// Standard Reference ISUP         : Chapter 4, Table 41
-//************************************************************************
-  type record GRS_parameters
-     {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var_part_ptr,
-     Range_and_status               rangeAndStatus
-     } with { variant (var_part_ptr) "POINTERTO (rangeAndStatus)";
-            };
-
-
-//************************************************************************
-// GRA - Circuit Group Reset Acknowledgement
-// Ericsson Specification Reference: Chapter 2.2.2.12
-// Standard Reference ISUP         : Chapter 4, Table 25
-//************************************************************************
-  type record GRA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var_part_ptr,
-     Range_and_status               rangeAndStatus
-     } with { variant (var_part_ptr) "POINTERTO (rangeAndStatus)";
-            };
-
-//************************************************************************
-// GGU - Circuit Group Unblocking
-// Ericsson Specification Reference: Chapter 2.2.2.13
-// Standard Reference ISUP         : Chapter 4, Table 40
-//************************************************************************
-  type record CGU_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Circuit_group_supervision_message_type_indicator  circuitGroupSupervMsgInd,
-     Pointer                        var_part_ptr,
-     Range_and_status               rangeAndStatus
-    } with { variant (var_part_ptr) "POINTERTO (rangeAndStatus)";
-           };
-
-
-//************************************************************************
-// CGUA - Circuit Group Unblocking Acknowledgement
-// Ericsson Specification Reference: Chapter 2.2.2.14
-// Standard Reference ISUP         : Chapter 4, Table 40
-//************************************************************************
-  type record CGUA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Circuit_group_supervision_message_type_indicator  circuitGroupSupervMsgInd,
-     Pointer                        var_part_ptr,
-     Range_and_status               rangeAndStatus
-    } with { variant (var_part_ptr)"POINTERTO (rangeAndStatus)";
-           };
-
-
-//************************************************************************
-// CFN - Confusion
-// Ericsson Specification Reference: Chapter 2.2.2.15
-// Standard Reference ISUP         : Chapter 4, Table 26
-//************************************************************************
-  type record CFN_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var_part_ptr,
-     Pointer                        opt_part_ptr,
-     Cause_indicators               causeInd,
-     End_of_optional_parameters_indicator endOfOp
-    } with { variant (var_part_ptr)"POINTERTO (causeInd)";
-             variant (opt_part_ptr)"POINTERTO (endOfOp)";
-           };
-
-
-//************************************************************************
-// CON - Connect
-// Ericsson Specification Reference: Chapter 2.2.2.16
-// Standard Reference ISUP         : Chapter 4, Table 27
-//************************************************************************
-  type set CON_optional_part
-    {
-     Optional_backward_call_indicators      optBackwardCallInd optional,
-     Backward_GVNS                          backwardGVNS optional,
-     Connected_number                       connectedNum optional,
-     User_to_user_indicators                userToUserInd optional,
-     User_to_user_information_OPT           userToUserInfo optional,
-     Access_transport                       accessTransport optional,
-     Network_specific_facility              networkFacility optional,
-     Transmission_medium_used               transMediumUsed optional,
-     Access_delivery_information            accessDeliveryInfo optional,
-     Call_history_information               callHistoryInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Generic_number_set                     genericNum optional,
-     Route_identity                         routeIdentity optional,
-     Redirection_number_restriction         redirectionNumRest optional,
-     Call_transfer_treatment_indicators     callTransferTreatmentInd optional,
-     Conference_treatment_indicators        conferenceTreatmentInd optional,
-
-     Call_reference                         callReference optional,
-     Generic_notification_indicator_set     genericNotificationInd optional,
-     Remote_operations                      remoteOperations optional,
-     Echo_control_information               echoControlInfo optional,
-     Service_activation                     serviceActivation optional,
-     Application_transport_parameter_set    ATPP optional,
-     HTR_information                        HTRInfo optional,
-     Pivot_routing_backward_information     PRBI optional,
-     Redirect_status                        RedirSt optional
-    } with { variant (ATPP,genericNotificationInd,genericNum) "REPEATABLE(yes)";};
-
-
-  type record CON_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Backward_call_indicators       backwardCallInd,
-     Pointer                        opt_part_ptr,
-     CON_optional_part              conOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (conOptionals)";
-           };
-
-
-//************************************************************************
-// COT - Continuity
-// Ericsson Specification Reference: Chapter 2.2.2.17
-// Standard Reference ISUP         : Chapter 4, Table 28
-//************************************************************************
-  type record COT_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Continuity_indicators          continuityInd
-    } with { variant "" };
-
-
-//************************************************************************
-// CCR - Continuity Check Request
-// Ericsson Specification Reference: Chapter 2.2.2.18
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record CCR_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//************************************************************************
-// FAC - Facility
-// Ericsson Specification Reference: Chapter 2.2.2.19
-// Standard Reference ISUP         : Chapter 4, Table 45
-//************************************************************************
-  type set FAC_optional_part
-    {
-     Message_compatibility_information      messageCompatibilityInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Service_activation                     serviceActivation optional,
-     Call_transfer_number                   callTransferNumber optional,
-     Access_transport                       accessTransport optional,
-     Generic_notification_indicator_set     genericNotificationInd optional,
-
-     Remote_operations                      remoteOperations optional,
-     Redirection_number                     redirectionNum optional,
-     Pivot_routing_indicators               PRInd optional,
-     Pivot_status                           PSts optional,
-     Pivot_counter                          PCount optional,
-     Pivot_routing_backward_information     PRBI optional,
-     Redirect_status                        RedirSt optional
-    } with { variant (genericNotificationInd) "REPEATABLE(yes)";};
-
-
-  type record FAC_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     FAC_optional_part              facOptionals optional,
-     End_of_optional_parameters_indicator endOfOp   optional
-    } with { variant (opt_part_ptr)"POINTERTO (facOptionals)";
-           };
-
-
-//************************************************************************
-// FAA - Facility Accepted
-// Ericsson Specification Reference: Chapter 2.2.2.20
-// Standard Reference ISUP         : Chapter 4, Table 42
-//************************************************************************
-  type set FAA_optional_part
-    {
-     User_to_user_indicators                userToUserInd optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-
-     Call_reference                         callReference optional,
-     Connection_request                     connectionRequest optional
-    } with { variant "" };
-
-
-  type record FAA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Facility_indicator             facilityInd,
-     Pointer                        opt_part_ptr,
-     FAA_optional_part              faaOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (faaOptionals)";
-           };
-
-
-//************************************************************************
-// FRJ - Facility Reject
-// Ericsson Specification Reference: Chapter 2.2.2.21
-// Standard Reference ISUP         : Chapter 4, Table 29
-//************************************************************************
-  type set FRJ_optional_part
-    {
-     User_to_user_indicators                userToUserInd optional
-    }  with { variant "" };
-
-
-  type record FRJ_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Facility_indicator             facilityInd,
-     Pointer                        var_part_ptr,
-     Pointer                        opt_part_ptr,
-     Cause_indicators               causeInd,
-     FRJ_optional_part              frjOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (var_part_ptr) "POINTERTO (causeInd)";
-             variant (opt_part_ptr) "POINTERTO (frjOptionals)";
-           };
-
-
-//************************************************************************
-// FAR - Facility Request
-// Ericsson Specification Reference: Chapter 2.2.2.22
-// Standard Reference ISUP         : Chapter 4, Table 42
-//************************************************************************
-  type set FAR_optional_part
-    {
-     User_to_user_indicators                userToUserInd optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-
-     Call_reference                         callReference optional,
-     Connection_request                     connectionRequest optional
-    } with { variant "" };
-
-
-  type record FAR_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Facility_indicator             facilityInd,
-     Pointer                        opt_part_ptr,
-     FAR_optional_part              farOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (farOptionals)";
-           };
-
-
-//************************************************************************
-// FOT - Forward Transfer
-// Ericsson Specification Reference: Chapter 2.2.2.23
-// Standard Reference ISUP         : Chapter 4, Table 37
-//************************************************************************
-  type set FOT_optional_part
-    {
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-
-     Call_reference                         callReference optional
-    } with { variant "" };
-
-
-  type record FOT_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     FOT_optional_part              fotOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (fotOptionals)";
-           };
-
-
-//************************************************************************
-// IDR - Identification Request
-// Ericsson Specification Reference: Chapter 2.2.2.24
-// Standard Reference ISUP         : Chapter 4, Table 47
-//************************************************************************
-  type set IDR_optional_part
-    {
-     MCID_request_indicators                MCIDReqInd optional,
-     Message_compatibility_information      messageCompatibilityInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional
-    } with { variant "" };
-
-
-  type record IDR_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     IDR_optional_part              idrOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (idrOptionals)";
-           };
-
-
-//************************************************************************
-// IRS - Identification Response
-// Ericsson Specification Reference: Chapter 2.2.2.25
-// Standard Reference ISUP         : Chapter 4, Table 48
-//************************************************************************
-  type set IRS_optional_part
-    {
-     MCID_response_indicators               MCIDRpInd optional,
-     Message_compatibility_information      messageCompatibilityInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Calling_party_number                   callingPartyNum optional,
-     Access_transport                       accessTransport optional,
-     Generic_number_set                     genericNum optional,
-     Charged_party_identification           ChPId optional
-    } with { variant (genericNum) "REPEATABLE(yes)";};
-
-
-  type record IRS_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     IRS_optional_part              irsOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (irsOptionals)";
-           };
-
-
-//************************************************************************
-// INF - Information
-// Ericsson Specification Reference: Chapter 2.2.2.26
-// Standard Reference ISUP         : Chapter 4, Table 30
-//************************************************************************
-  type set INF_optional_part
-    {
-     Calling_partys_category_OPT            callingPartyCat optional,
-     Calling_party_number                   callingPartyNum optional,
-     Access_transport                       accessTransport optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Network_specific_facility              networkFacility optional,
-     Display_information                    displayInfo optional,
-
-     Call_reference                         callReference optional,
-     Connection_request                     connectionRequest optional
-    } with { variant "" };
-
-
-  type record  INF_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Information_indicators         informationInd,
-     Pointer                        opt_part_ptr,
-     INF_optional_part              infOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (infOptionals)";
-           };
-
-
-//************************************************************************
-// INR - Information Request
-// Ericsson Specification Reference: Chapter 2.2.2.27
-// Standard Reference ISUP         : Chapter 4, Table 31
-//************************************************************************
-  type set INR_optional_part
-    {
-     Network_specific_facility              networkFacility optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-
-     Call_reference                         callReference optional
-    } with { variant "" };
-
-
-  type record  INR_parameters
-    {
-     Circuit_identification_code        cic optional,
-     ISUP_Message_type                  messageType,
-     Information_request_indicators     InfRqInd,
-     Pointer                            opt_part_ptr,
-     INR_optional_part                  inrOptionals optional,
-     End_of_optional_parameters_indicator endOfOp   optional
-    } with { variant (opt_part_ptr) "POINTERTO (inrOptionals)";
-           };
-
-
-//************************************************************************
-// IAM - Initial Address Message
-// Ericsson Specification Reference: Chapter 2.2.2.28
-// Standard Reference ISUP         : Chapter 4, Table 32
-//************************************************************************
-  type set IAM_optional_part
-    {
-     Transit_network_selection              transitNetworkSel optional,
-     Calling_party_number                   callingPartyNum optional,
-     Optional_forward_call_indicators       optForwardCallInd optional,
-     Redirecting_number                     redirectingNum optional,
-     Redirection_information                redirectionInfo optional,
-     Closed_user_group_interlock_code       cUGInterlockCode optional,
-     Original_called_number                 originalCalledNum optional,
-     User_to_user_information_OPT           userToUserInfo optional,
-     Access_transport                       accessTransport optional,
-     User_service_information               userServiceInfo optional,
-     User_to_user_indicators                userToUserInd optional,
-     Generic_number_set                     genericNum optional,
-     Propagation_delay_counter              propDelayCounter optional,
-     User_service_information_prime         userServiceInfoPrime optional,
-     Network_specific_facility              networkFacility optional,
-     Generic_digits_set                     genericDigits optional,
-     Origination_ISC_point_code             origISCPointCode optional,
-     User_teleservice_information           userTeleServiceInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     MLPP_precedence                        mLPPprecedence optional,
-     Route_identity                         routeIdentity optional,
-     Transmission_medium_requirement_prime  transMediumReqPrime optional,
-     Location_number                        locationNum optional,
-     Forward_GVNS                           forwardGVNS optional,
-     Freephone_indicators                   freePhoneInd optional,
-     CCSS_parameter                         ccssPar optional,
-     Distributed_dynamic_routing_indicators distrDynRoutInd optional,
-     Additional_charging_information        addChargeInfo optional,
-     Additional_routing_information         addRoutInfo optional,
-     Correlation_id                         correlationId optional,
-     SCF_id                                 SCFId optional,
-     Call_transfer_treatment_indicators     callTransferTreatmentInd optional,
-     Conference_treatment_indicators        conferenceTreatmentInd optional,
-     Call_offering_treatment_indicators     callOfferingTreatmentInd optional,
-     Call_diversion_treatment_indicators    callDiversionTreatmentInd optional,
-     Network_call_reference                 netwCallRef optional,
-     Calling_name_identity                  cgNameId optional,
-     Hop_counter                            HopCnt optional,
-
-     Call_reference                         callReference optional,
-     Connection_request                     connectionRequest optional,
-     Remote_operations                      remoteOperations optional,
-     Generic_notification_indicator_set     genericNotificationInd optional,
-     Service_activation                     serviceActivation optional,
-     Network_management_controls            NetManCon optional,
-     Circuit_assignment_map                 CctAssMap optional,
-     Called_IN_number                       CdINnum optional,
-     UID_capability_indicators              UIDcapInd optional,
-     Echo_control_information               echoControlInfo optional,
-     Collect_call_request                   ColCReq optional,
-     Application_transport_parameter_set    ATPP optional,
-     Pivot_capability                       PivCap optional,
-     Called_directory_number                CDirNb optional,
-     Original_called_IN_number              OCINNb optional,
-     Calling_geodetic_location              CGeoLoc optional,
-     Network_routing_number                 NRNb optional,
-     Query_on_release_capability            QoRCap optional,
-     Pivot_counter                          PCount optional,
-     Pivot_routing_forward_information      PRFI optional,
-     Redirect_capability                    RedirCap optional,
-     Redirect_counter                       RedirCount optional,
-     Redirect_status                        RedirSt optional,
-     Redirect_forward_information           RedirFI optional,
-     Number_portability_forward_information NPFI optional,
-     Global_call_reference                  GCRef optional
-    } with { variant (ATPP,genericNotificationInd,genericNum,genericDigits) 
-                      "REPEATABLE(yes)";};
-
-
-  type record IAM_parameters
-    {
-     Circuit_identification_code          cic optional,
-     ISUP_Message_type                    messageType,
-     Nature_of_connection_indicators      natureOfConnInd,
-     Forward_call_indicators              forwardCallInd,
-     Calling_partys_category              callingPartyCat,
-     Transmission_medium_requirement      transmissionMediumReq,
-     Pointer                              var_part_ptr,
-     Pointer                              opt_part_ptr,
-     Called_party_number                  calledPartyNum,
-     IAM_optional_part                    iamOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (var_part_ptr) "POINTERTO (calledPartyNum)";
-             variant (opt_part_ptr) "POINTERTO (iamOptionals)";
-           };
-
-
-//************************************************************************
-// IAM_PTSO - Initial Address Message
-// Ericsson Specification Reference: Chapter 2.2.2.28
-// Standard Reference ISUP         : Chapter 4, Table 32
-//************************************************************************
-/*
-  type record PAR_GD
-    {
-     OCT1 parameter_type,
-     OCT1 lengthf,
-     Generic_digits parameter_contents
-    } with { variant "" };
-
-
-  type record PAR_OISCP
-    {
-     OCT1 parameter_type,
-     OCT1 lengthf,
-     Origination_ISC_point_code parameter_contents
-    } with { variant "" };
-
-
-  type record PAR_AT
-    {
-     OCT1 parameter_type,
-     OCT1 lengthf,
-     Access_transport parameter_contents
-    } with { variant "" };
-
-
-  type record PAR_CPN
-    {
-     OCT1 parameter_type,
-     OCT1 lengthf,
-     Called_party_number parameter_contents
-    } with { variant "" };
-
-
-  type record PAR_CGPN
-    {
-     OCT1 parameter_type,
-     OCT1 lengthf,
-     Called_party_number parameter_contents
-    } with { variant "" };
-
-
-
-  type set IAM_PTSO_optional_part
-    {
-     PAR_CGPN  callingPartyNum,
-     PAR_AT    accessTransport,
-     PAR_GD    genericDigits,
-     PAR_OISCP origISCPointCode
-    } with { variant "" };
-
-
-type record IAM_PTSO_parameters
-    {
-     Circuit_identification_code     cic optional,
-     ISUP_Message_type               messageType,
-     Nature_of_connection_indicators natureOfConnInd,
-     Forward_call_indicators             forwardCallInd,
-     Calling_partys_category             callingPartyCat,
-     Transmission_medium_requirement     transmissionMediumReq,
-     Pointer                         var_part_ptr,
-     Pointer                         opt_part_ptr,
-     INT1                            calledPartyNum_length,
-     PAR_CPN                         calledPartyNum,
-     IAM_PTSO_optional_part          iamOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (var_part_ptr) "POINTERTO (calledPartyNum_length)";
-             variant (opt_part_ptr) "POINTERTO (iamOptionals)";
-             variant (calledPartyNum_length) "LENGTHTO (calledPartyNum)";
-           };
-
-*/
-
-
-//************************************************************************
-// LPA - Loop Back Acknowledgement
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record LPA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//************************************************************************
-// LOP - Loop Prevention
-// Ericsson Specification Reference: Chapter 2.2.2.29
-// Standard Reference ISUP         : Chapter 4, Table 50
-//************************************************************************
-  type set LOP_optional_part
-    {
-     Message_compatibility_information      messageCompatibilityInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Call_transfer_reference                callTransferReference optional,
-     Loop_prevention_indicators             loopPreventionInd optional
-    } with { variant "" };
-
-
-  type record LOP_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     LOP_optional_part              lopOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (lopOptionals)";
-           };
-
-
-//************************************************************************
-// NRM - Network Resource Management
-// Standard Reference ISUP         : Chapter 4, Table 46
-//************************************************************************
-  type set NRM_optional_part
-    {
-     Message_compatibility_information      messageCompatibilityInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Echo_control_information               echoControlInfo optional
-    } with { variant "" };
-
-
-  type record NRM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     NRM_optional_part              nrmOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (nrmOptionals)";
-           };
-
-
-//************************************************************************
-// OLM - Overload
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record OLM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-
-//************************************************************************
-// OPQ - Operator Queue   FS: 2.2.2.32 / 61/15517-CRT 212 31 Uen Rev. A
-//************************************************************************
-/*
-  type set OPQ_optional_part
-    {
-     Message_compatibility_information messageCompatibilityInfo optional
-    } with { variant "" };
-
-  type record OPQ_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     OPQ_optional_part           opqOptionals optional,
-     End_of_optional_parameters_indicator endOfOp   optional
-    } with { variant (opt_part_ptr) "POINTERTO (opqOptionals)" };
-
-*/
-
-
-//************************************************************************
-// OPR - Operator
-// Ericsson Specification Reference: Chapter 2.2.2.30
-//************************************************************************
-  type set OPR_optional_part
-    {
-     Message_compatibility_information      messageCompatibilityInfo optional
-    } with { variant "" };
-
-
-  type record OPR_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     OPR_optional_part              oprOptionals optional,
-     End_of_optional_parameters_indicator endOfOp   optional
-    } with { variant (opt_part_ptr) "POINTERTO (oprOptionals)";
-           };
-
-
-//************************************************************************
-// PAM - Pass-along
-// Standard Reference ISUP         : Chapter 4, Table 43
-//************************************************************************
-  type record PAM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     OCTN                           contents optional
-    } with { variant (opt_part_ptr) "POINTERTO (contents)";
-           };
-
-
-//************************************************************************
-// PRI - Pre-release Information
-// Standard Reference ISUP         : Chapter 4, Table 52
-//************************************************************************
-  type set PRI_optional_part
-    {
-     Message_compatibility_information      messageCompatibilityInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-     Optional_forward_call_indicators       optForwardCallInd optional,
-     Optional_backward_call_indicators      optBackwardCallInd optional,
-     Application_transport_parameter_set    ATPP optional
-    } with { variant (ATPP)"REPEATABLE(yes)";};
-
-
-  type record PRI_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     PRI_optional_part              priOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (priOptionals)";
-           };
-
-
-//************************************************************************
-// REL - Release
-// Ericsson Specification Reference: Chapter 2.2.2.31
-// Standard Reference ISUP         : Chapter 4, Table 33
-//************************************************************************
-  type set REL_optional_part
-    {
-     Access_transport                       accessTransport optional,
-     User_to_user_indicators                userToUserInd optional,
-     User_to_user_information_OPT           userToUserInfo optional,
-     Automatic_congestion_level             autCongLevel optional,
-     Network_specific_facility              networkFacility optional,
-     Access_delivery_information            accessDeliveryInfo optional,
-     Redirection_number                     redirectionNum optional,
-     Redirection_information                redirectionInfo optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-
-     Signalling_point_code                  sigPointCode optional,
-     Display_information                    displayInfo optional,
-     Remote_operations                      remoteOperations optional,
-     HTR_information                        HTRInfo optional,
-     Redirect_counter                       RedirCount optional,
-     Redirection_number_restriction         redirectionNumRest optional,
-     Redirect_backward_information          RedirBI optional
-    } with { variant "" };
-
-  type record REL_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var_part_ptr,
-     Pointer                        opt_part_ptr,
-     Cause_indicators               causeInd,
-     REL_optional_part              relOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (var_part_ptr) "POINTERTO (causeInd)";
-             variant (opt_part_ptr) "POINTERTO (relOptionals)";
-           };
-
-
-//************************************************************************
-// RLC - Release Complete
-// Ericsson Specification Reference: Chapter 2.2.2.32
-// Standard Reference ISUP         : Chapter 4, Table 34
-//************************************************************************
-  type set RLC_optional_part
-    {
-     Cause_indicators_OPT                   causeInd optional
-    } with { variant "" };
-
-
-  type record RLC_parameters
-     {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     RLC_optional_part              rlcOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (rlcOptionals)";
-           };
-
-
-//************************************************************************
-// RSC - Reset Circuit
-// Ericsson Specification Reference: Chapter 2.2.2.33
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record RSC_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//************************************************************************
-// RES - Resume
-// Ericsson Specification Reference: Chapter 2.2.2.34
-// Standard Reference ISUP         : Chapter 4, Table 38
-//************************************************************************
-  type set RES_optional_part
-    {
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-
-     Call_reference                         callReference optional
-    } with { variant "" };
-
-
-  type record RES_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Suspend_resume_indicators      SUSRESInd,
-     Pointer                        opt_part_ptr,
-     RES_optional_part              resOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (resOptionals)";
-           };
-
-
-//************************************************************************
-// SGM - Segmentation
-// Ericsson Specification Reference: Chapter 2.2.2.35
-// Standard Reference ISUP         : Chapter 4, Table 49
-//************************************************************************
-  type set SGM_optional_part
-    {
-     Access_transport                       accessTransport optional,
-     User_to_user_information_OPT           userToUserInfo optional,
-     Message_compatibility_information      messageCompatibilityInfo optional,
-     Generic_digits_set                     genericDigits optional,
-     Generic_notification_indicator_set     genericNotificationInd optional,
-     Generic_number_set                     genericNum optional,
-     Calling_name_identity                  cgNameId optional
-    } with { variant (genericNotificationInd,genericNum,genericDigits) 
-                      "REPEATABLE(yes)";};
-
-
-  type record SGM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     SGM_optional_part              sgmOptionals optional,
-     End_of_optional_parameters_indicator endOfOp   optional
-    } with { variant (opt_part_ptr) "POINTERTO (sgmOptionals)";
-           };
-
-
-//************************************************************************
-// SCB - Special Clear Back
-// Ericsson Specification Reference: Chapter 2.2.2.36
-//************************************************************************
-  type set SCB_optional_part
-    {
-     Message_compatibility_information      messageCompatibilityInfo optional
-    } with { variant "" };
-
-
-  type record SCB_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     SCB_optional_part              scbOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (scbOptionals)";
-           };
-
-
-//************************************************************************
-// SAM - Subsequent Address
-// Ericsson Specification Reference: Chapter 2.2.2.37
-// Standard Reference ISUP         : Chapter 4, Table 35
-//************************************************************************
-  type record SAM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var_part_ptr,
-     Pointer                        opt_part_ptr,
-     Subsequent_number              subsequentNum,
-     End_of_optional_parameters_indicator endOfOp
-    } with { variant (var_part_ptr) "POINTERTO (subsequentNum)";
-             variant (opt_part_ptr) "POINTERTO (endOfOp)";
-           };
-
-
-//************************************************************************
-// SDM - Subsequent Directory Number
-// Standard Reference ISUP         : Chapter 4, Table 53
-//************************************************************************
-  type set SDM_optional_part
-    {
-     Subsequent_number_OPT                  subsequentNum optional,
-     Message_compatibility_information      messageCompatibilityInfo optional
-    } with { variant "" };
-
-
-  type record SDM_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     SDM_optional_part              sdmOptionals optional,
-     End_of_optional_parameters_indicator endOfOp  optional
-    } with { variant (opt_part_ptr) "POINTERTO (sdmOptionals)";
-           };
-
-
-//************************************************************************
-// SUS - Suspend
-// Ericsson Specification Reference: Chapter 2.2.2.38
-// Standard Reference ISUP         : Chapter 4, Table 38
-//************************************************************************
-  type set SUS_optional_part
-    {
-     Parameter_compatibility_information    paramCompatibilityInfo optional,
-
-     Call_reference                         callReference optional
-    } with { variant "" };
-
-
-  type record SUS_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Suspend_resume_indicators      SUSRESInd,
-     Pointer                        opt_part_ptr,
-     SUS_optional_part              susOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (susOptionals)";
-           };
-
-
-//************************************************************************
-// UBL - Unblocking
-// Ericsson Specification Reference: Chapter 2.2.2.39
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record UBL_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//************************************************************************
-// UBA - Unblocking Acknowledgement
-// Ericsson Specification Reference: Chapter 2.2.2.40
-// Standard Reference ISUP         : Chapter 4, Table 39
-//************************************************************************
-  type record UBA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//***************************************************************************
-// UCIC - Unequipped Circuit Identification Code
-// Ericsson Specification Reference: Chapter 2.2.2.41
-// Standard Reference ISUP         : Chapter 4, Table 39
-//***************************************************************************
-  type record UCIC_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType
-    } with { variant "" };
-
-
-//************************************************************************
-// UPA - User Part Available
-// Ericsson Specification Reference: Chapter 2.2.2.42
-// Standard Reference ISUP         : Chapter 4, Table 44
-//************************************************************************
-  type set UPA_optional_part
-    {
-     Parameter_compatibility_information    paramCompatibilityInfo optional
-    } with { variant ""};
-
-
-  type record UPA_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     UPA_optional_part              upaOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (upaOptionals)";
-           };
-
-
-//************************************************************************
-// UPT - User Part Test
-// Ericsson Specification Reference: Chapter 2.2.2.43
-// Standard Reference ISUP         : Chapter 4, Table 44
-//************************************************************************
-  type set UPT_optional_part
-    {
-     Parameter_compatibility_information    paramCompatibilityInfo optional
-    } with { variant "" };
-
-
-  type record UPT_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        opt_part_ptr,
-     UPT_optional_part              uptOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (opt_part_ptr) "POINTERTO (uptOptionals)";
-           };
-
-
-//************************************************************************
-// USR - User-to-user Information
-// Ericsson Specification Reference: Chapter 2.2.2.44
-// Standard Reference ISUP         : Chapter 4, Table 36
-//************************************************************************
-  type set USR_optional_part
-    {
-     Access_transport                       accessTransport optional,
-     Parameter_compatibility_information    paramCompatibilityInfo optional
-    } with { variant "" };
-
-
-  type record USR_parameters
-    {
-     Circuit_identification_code    cic optional,
-     ISUP_Message_type              messageType,
-     Pointer                        var_part_ptr,
-     Pointer                        opt_part_ptr,
-     User_to_user_information       userToUserInfo,
-     USR_optional_part              usrOptionals optional,
-     End_of_optional_parameters_indicator endOfOp optional
-    } with { variant (var_part_ptr) "POINTERTO (userToUserInfo)";
-             variant (opt_part_ptr) "POINTERTO (usrOptionals)";
-           };
-
-
-//************************************************************************
-//************************************************************************
-//************************************************************************
-//************************************************************************
-//************************************************************************
-
-//************************************************************************
-// Top level PDU
-//************************************************************************
-  type union PDU_ISUP
-    {
-     ACM_parameters  ISUP_ACM,   //Address complete
-     ANM_parameters  ISUP_ANM,   //Answer
-     APM_parameters  ISUP_APM,   //Application transport
-     BLO_parameters  ISUP_BLO,   //Blocking
-     BLA_parameters  ISUP_BLA,   //Blocking acknowledgement
-     CPG_parameters  ISUP_CPG,   //Call progress
-     CGB_parameters  ISUP_CGB,   //Circuit group BLOcking
-     CGBA_parameters ISUP_CGBA,  //Circuit group BLOcking acknowledgement
-     CQM_parameters  ISUP_CQM,   //Circuit group query
-     CQR_parameters  ISUP_CQR,   //Circuit group query RESponse
-     GRS_parameters  ISUP_GRS,   //Circuit group RESet
-     GRA_parameters  ISUP_GRA,   //Circuit group RESet acknowledge
-     CGU_parameters  ISUP_CGU,   //Circuit group unblocking
-     CGUA_parameters ISUP_CGUA,  //Circuit group unblocking acknowledgement
-     CRG_parameters  ISUP_CRG,   //Charge INFormation
-     CFN_parameters  ISUP_CFN,   //Confusion
-     CON_parameters  ISUP_CON,   //Connect
-     COT_parameters  ISUP_COT,   //Continuity
-     CCR_parameters  ISUP_CCR,   //Continuity check request
-     FAC_parameters  ISUP_FAC,   //Facility
-     FAA_parameters  ISUP_FAA,   //Facility accepted
-     FRJ_parameters  ISUP_FRJ,   //Facility reject
-     FAR_parameters  ISUP_FAR,   //Facility request
-     FOT_parameters  ISUP_FOT,   //Forward transfer
-     IDR_parameters  ISUP_IDR,   //Identification request
-     IRS_parameters  ISUP_IRS,   //Identification RESponse
-     INF_parameters  ISUP_INF,   //Information
-     INR_parameters  ISUP_INR,   //Information request
-     IAM_parameters  ISUP_IAM,   //Initial address
-//     IAM_PTSO_parameters  ISUP_IAM_PTSO,   //Modified Initial address
-     LPA_parameters  ISUP_LPA,   //Loop back acknowlwdgement
-     LOP_parameters  ISUP_LOP,   //Loop prevention
-     NRM_parameters  ISUP_NRM,   //Network RESource management
-     OLM_parameters  ISUP_OLM,   //Overload
-//     OPQ_parameters  ISUP_OPQ,   //Operator Queue
-     OPR_parameters  ISUP_OPR,   //Operator
-     PAM_parameters  ISUP_PAM,   //Pass-along
-     PRI_parameters  ISUP_PRI,   //Pre-release INFormation
-     REL_parameters  ISUP_REL,   //Release
-     RLC_parameters  ISUP_RLC,   //Release complete
-     RSC_parameters  ISUP_RSC,   //Reset circuit
-     RES_parameters  ISUP_RES,   //Resume
-     SGM_parameters  ISUP_SGM,   //Segmentation
-     SAM_parameters  ISUP_SAM,   //Subsequent
-     SCB_parameters  ISUP_SCB,   //Special Clear Back
-     SDM_parameters  ISUP_SDM,   //Subsequent Directory Number
-     SUS_parameters  ISUP_SUS,   //Suspend
-     UBL_parameters  ISUP_UBL,   //Unblocking
-     UBA_parameters  ISUP_UBA,   //Unblocking acknowledge
-     UCIC_parameters ISUP_UCIC,  //Unequipped cic
-     UPA_parameters  ISUP_UPA,   //User part available
-     UPT_parameters  ISUP_UPT,   //User part test
-     USR_parameters  ISUP_USR    //User-to-user INFormation
-    } with { variant "TAG(
-                       ISUP_ACM,   messageType = '00000110'B;
-                       ISUP_ANM,   messageType = '00001001'B;
-                       ISUP_APM,   messageType = '01000001'B;
-                       ISUP_BLO,   messageType = '00010011'B;
-                       ISUP_BLA,   messageType = '00010101'B;
-                       ISUP_CPG,   messageType = '00101100'B;
-                       ISUP_CGB,   messageType = '00011000'B;
-                       ISUP_CGBA,  messageType = '00011010'B;
-                       ISUP_CQM,   messageType = '00101010'B;
-                       ISUP_CQR,   messageType = '00101011'B;
-                       ISUP_GRS,   messageType = '00010111'B;
-                       ISUP_GRA,   messageType = '00101001'B;
-                       ISUP_CGU,   messageType = '00011001'B;
-                       ISUP_CGUA,  messageType = '00011011'B;
-                       ISUP_CRG,   messageType = '00110001'B;
-                       ISUP_CFN,   messageType = '00101111'B;
-                       ISUP_CON,   messageType = '00000111'B;
-                       ISUP_COT,   messageType = '00000101'B;
-                       ISUP_CCR,   messageType = '00010001'B;
-                       ISUP_FAC,   messageType = '00110011'B;
-                       ISUP_FAA,   messageType = '00100000'B;
-                       ISUP_FRJ,   messageType = '00100001'B;
-                       ISUP_FAR,   messageType = '00011111'B;
-                       ISUP_FOT,   messageType = '00001000'B;
-                       ISUP_IDR,   messageType = '00110110'B;
-                       ISUP_IRS,   messageType = '00110111'B;
-                       ISUP_INF,   messageType = '00000100'B;
-                       ISUP_INR,   messageType = '00000011'B;
-                       ISUP_IAM,   messageType = '00000001'B;
-//                       ISUP_IAM_PTSO,   messageType = '00000001'B;
-                       ISUP_LPA,   messageType = '00100100'B;
-                       ISUP_LOP,   messageType = '01000000'B;
-                       ISUP_NRM,   messageType = '00110010'B;
-                       ISUP_OLM,   messageType = '00110000'B;
-//                       ISUP_OPQ,   messageType = '11111110'B;
-                       ISUP_OPR,   messageType = '11111111'B;
-                       ISUP_PAM,   messageType = '00101000'B;
-                       ISUP_PRI,   messageType = '01000010'B;
-                       ISUP_REL,   messageType = '00001100'B;
-                       ISUP_RLC,   messageType = '00010000'B;
-                       ISUP_RSC,   messageType = '00010010'B;
-                       ISUP_RES,   messageType = '00001110'B;
-                       ISUP_SGM,   messageType = '00111000'B;
-                       ISUP_SAM,   messageType = '00000010'B;
-                       ISUP_SCB,   messageType = '11111001'B;
-                       ISUP_SDM,   messageType = '01000011'B;
-                       ISUP_SUS,   messageType = '00001101'B;
-                       ISUP_UBL,   messageType = '00010100'B;
-                       ISUP_UBA,   messageType = '00010110'B;
-                       ISUP_UCIC,  messageType = '00101110'B;
-                       ISUP_UPA,   messageType = '00110101'B;
-                       ISUP_UPT,   messageType = '00110100'B;
-                       ISUP_USR,   messageType = '00101101'B)"
-           };
-
-
-//************************************************************************
-//************************************************************************
-//************************************************************************
-//************************************************************************
-//************************************************************************
-}with{ encode "RAW"}//end module
diff --git a/LLC_v7.1.0_CNL113577_LATEST/doc/LLC_v7.1.0_CNL113577_PRI.pdf b/LLC_v7.1.0_CNL113577_LATEST/doc/LLC_v7.1.0_CNL113577_PRI.pdf
deleted file mode 100644
index f834e6a..0000000
--- a/LLC_v7.1.0_CNL113577_LATEST/doc/LLC_v7.1.0_CNL113577_PRI.pdf
+++ /dev/null
Binary files differ
diff --git a/LLC_v7.1.0_CNL113577_LATEST/doc/LLC_v7.1.0_CNL113577_UG.pdf b/LLC_v7.1.0_CNL113577_LATEST/doc/LLC_v7.1.0_CNL113577_UG.pdf
deleted file mode 100644
index a61bf2e..0000000
--- a/LLC_v7.1.0_CNL113577_LATEST/doc/LLC_v7.1.0_CNL113577_UG.pdf
+++ /dev/null
Binary files differ
diff --git a/LLC_v7.1.0_CNL113577_LATEST/src/LLC_EncDec.cc b/LLC_v7.1.0_CNL113577_LATEST/src/LLC_EncDec.cc
deleted file mode 100644
index 8fe0f08..0000000
--- a/LLC_v7.1.0_CNL113577_LATEST/src/LLC_EncDec.cc
+++ /dev/null
@@ -1,318 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2008                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               LLC_EncDec.cc
-//  Rev:                R1A0
-//  Prodnr:             CNL 113 577
-//  Updated:            2008-01-22
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 44.064 7.1.0
- 
-#include "LLC_Types.hh"
-#include <string.h>
-
-// GIVEN IN CODE RECEIVED FROM ERV
-#define CRC_POLY_LLC2  0xad85dd
-
-// GIVEN IN SPECIFICATION
-//#define CRC_POLY_LLC2  0xbba1b5
-
-#define TABLE_LENGTH  256
-
-// For UI frames if PM bit is 0 (unprotected) then CRC will be calculated over Header + N202 octets
-#define N202 4
-
-unsigned int mCRCTable[TABLE_LENGTH];
-
-
-static void BuildCrc24Table()
-{
- unsigned int i,j;
- unsigned int reg;
-
-  //TRACE_FUNC( "BuildCrc24Table" );
-
-  for( i = 0; i < TABLE_LENGTH; i++ )
-  {
-    reg = i;
-    for( j = 8; j > 0; j-- )
-    {
-      if( reg & 1 )
-      {
-        
-	reg = (reg>>1) ^ (unsigned int) CRC_POLY_LLC2;
-      }
-      else
-      {
-        reg >>= 1;
-      }
-    }
-    reg &= 0x00ffffffL;
-   
-      mCRCTable[i] = (unsigned int)reg;
-      //TTCN_Logger::begin_event(TTCN_DEBUG);
-     
-      //TTCN_Logger::log_event("mCRCTable[%d]= %d",i,mCRCTable[i]);
-  
-     // TTCN_Logger::end_event();
-
-  }
-}
-
-//---------------------------------------------------------------------------------------
-
-unsigned int  Calculate_CRC(TTCN_Buffer& pdu)
-{
-
-const unsigned char* loc_pdu = pdu.get_data();
-
- //TTCN_Logger::begin_event(TTCN_DEBUG);
-     
-     //for (size_t i =0; i< pdu.get_len();i++)
-    // {
-     // TTCN_Logger::log_event("%02x ",loc_pdu[i]);
-    // }
-     
-//TTCN_Logger::log_event("\n");      
-     
-//TTCN_Logger::end_event();
-
-BuildCrc24Table();
-
-//TTCN_Logger::begin_event(TTCN_DEBUG);
-//TTCN_Logger::log_event("mCRCTable[%d]= %d\n",255,mCRCTable[255]);
-//TTCN_Logger::log_event("mCRCTable[%d]= 0x%08x (%u)",255,mCRCTable[255]);
-//TTCN_Logger::log_event("\n");      
-//TTCN_Logger::end_event();
-
-unsigned int reg = 0xFFFFFF;
-
-unsigned int length = pdu.get_len();
-
-
-      
-if (  ((loc_pdu[1] >>5) & 0x07) == 0x06 )      //UI frame
-{ 
- if ((loc_pdu[2] & 0x01) == 0x00)              // PM bit is 0 (unprotected)         
-  { 
-     if(length  > 3 + N202)                     // pdu length is longer than header + N202    
-     {
-     length = 3 + N202;                         // length = header length + N202    
-          
-     }	
-   }              
-}
-
-   
-
-while ( length--)
-  {
-    reg =
-      ((reg>>8) & 0x00ffff)^mCRCTable[(reg^*((unsigned char*)loc_pdu++)) & 0xffL];
-  }
-   //TTCN_Logger::log(TTCN_DEBUG, "reg:%08x\n",reg);	
-   // 1's complement of FCS 
-  reg ^= 0xffffffL;
-  
-  reg = ((reg >> 16) & 0x000000ff)+ ((reg)  & 0x0000ff00) + ((reg <<16 )& 0x00ff0000);
- //unsigned int tempint = *(unsigned int*)loc_crcBuffer;
- //reg =  (unsigned int*)loc_crcBuffer ;
- //TTCN_Logger::log(TTCN_DEBUG, "reg:%08x\n",reg);	
-	
-return  reg & 0x00ffffffL;	
-}
-//---------------------------------------------------------------------------------------
-
-namespace LLC__Types {
-
-OCTETSTRING enc__PDU__LLC(const PDU__LLC& pdu)
-{
-	TTCN_Buffer bb;
-	PDU__LLC pdu2(pdu);
-	
-	if (pdu2.get_selection() == PDU__LLC::ALT_pDU__LLC__U)
-	{
-
-          if (pdu2.pDU__LLC__U().information__field__U().get_selection() ==  Information__field__U::ALT_uA)
-           {int record_of_size = pdu2.pDU__LLC__U().information__field__U().uA().size_of();
-       
-            for (int  i = 0; i < (record_of_size) ; i++)
-	      { 
-	      // AUTOMATICALLY CALCULATE WHICH LENGTH FORMAT SHOULD BE USED AND CHANGE SHORT LENGTH FORM 
-	      // TO LONG LENGTH FORM IF NECESSARY WHEN L3 PDU IS INCLUDED
-	         if ( pdu2.pDU__LLC__U().information__field__U().uA()[i].typefield() == int2bit(11,5) )
-	          {  
-		   if( pdu2.pDU__LLC__U().information__field__U().uA()[i].xID__Data().l3param().lengthof() > 3)
-		   {		  
-		   pdu2.pDU__LLC__U().information__field__U().uA()[i].xID__length().long__len() = 
-		   pdu2.pDU__LLC__U().information__field__U().uA()[i].xID__Data().l3param().lengthof();		   
-		   }		 		 		  
-		  }
-	      } 
-           }
-
-           if (pdu2.pDU__LLC__U().information__field__U().get_selection() ==  Information__field__U::ALT_sABM)
-        {int record_of_size = pdu2.pDU__LLC__U().information__field__U().sABM().size_of();
-       
-            for (int  i = 0; i < (record_of_size) ; i++)
-	      { 
-	      // AUTOMATICALLY CALCULATE WHICH LENGTH FORMAT SHOULD BE USED AND CHANGE SHORT LENGTH FORM 
-	      // TO LONG LENGTH FORM IF NECESSARY WHEN L3 PDU IS INCLUDED
-	         if ( pdu2.pDU__LLC__U().information__field__U().sABM()[i].typefield() == int2bit(11,5) )
-	          {  
-		   if( pdu2.pDU__LLC__U().information__field__U().sABM()[i].xID__Data().l3param().lengthof() > 3)
-		   {		  
-		   pdu2.pDU__LLC__U().information__field__U().sABM()[i].xID__length().long__len() = 
-		   pdu2.pDU__LLC__U().information__field__U().sABM()[i].xID__Data().l3param().lengthof();		   
-		   }		 		 		  
-		  }
-	      } 
-           }
-		
-            if (pdu2.pDU__LLC__U().information__field__U().get_selection() ==  Information__field__U::ALT_xID)
-       {int record_of_size = pdu2.pDU__LLC__U().information__field__U().xID().size_of();
-       
-            for (int  i = 0; i < (record_of_size) ; i++)
-	      { 
-	      // AUTOMATICALLY CALCULATE WHICH LENGTH FORMAT SHOULD BE USED AND CHANGE SHORT LENGTH FORM 
-	      // TO LONG LENGTH FORM IF NECESSARY WHEN L3 PDU IS INCLUDED
-	         if ( pdu2.pDU__LLC__U().information__field__U().xID()[i].typefield() == int2bit(11,5) )
-	          {  
-		   if( pdu2.pDU__LLC__U().information__field__U().xID()[i].xID__Data().l3param().lengthof() > 3)
-		   {		  
-		   pdu2.pDU__LLC__U().information__field__U().xID()[i].xID__length().long__len() = 
-		   pdu2.pDU__LLC__U().information__field__U().xID()[i].xID__Data().l3param().lengthof();		   
-		   }		 		 		  
-		  }
-	      } 
-           }			
-	}
-	
-	
-	if (pdu2.get_selection() == PDU__LLC::ALT_pDU__LLC__U)
-	 {
-	    if ( pdu2.pDU__LLC__U().fCS().ispresent())
-	    {
-	        if ( pdu2.pDU__LLC__U().fCS() == int2oct(0,3) )  // IF ENCODER NEEDS TO GENERATE CRC
-	          {      
-                    pdu2.pDU__LLC__U().fCS() = OMIT_VALUE;
-	            pdu2.encode(PDU__LLC_descr_ ,bb, TTCN_EncDec::CT_RAW);
-	            unsigned int crcBuffer = Calculate_CRC(bb);
-		    bb.put_os(int2oct(crcBuffer,3));		
-	            return OCTETSTRING (bb.get_len(), bb.get_data());
-	
-		  }
-	    
-	     else {	// IF ENCODER SENDS OUT NONZERO CRC GIVEN IN TTCN TEMPLATE
-	         pdu2.encode(PDU__LLC_descr_ ,bb, TTCN_EncDec::CT_RAW);	
-	         return OCTETSTRING (bb.get_len(), bb.get_data());
-	          }    	    
-	    }	
-	    else {	//FCS OMIT
-	            pdu2.encode(PDU__LLC_descr_ ,bb, TTCN_EncDec::CT_RAW);
-	            unsigned int crcBuffer = Calculate_CRC(bb);
-		    bb.put_os(int2oct(crcBuffer,3));		
-	            return OCTETSTRING (bb.get_len(), bb.get_data());
-		    
-	         }
-	 }
-	
-	
-	
-	else if (pdu2.get_selection() == PDU__LLC::ALT_pDU__LLC__UI)
-	    {
-	      if ( pdu2.pDU__LLC__UI().fCS().ispresent())
-	       {
-	          if ( pdu2.pDU__LLC__UI().fCS() == int2oct(0,3) )   // IF ENCODER NEEDS TO GENERATE CRC 
-	          {      
-		    pdu2.pDU__LLC__UI().fCS() = OMIT_VALUE;
-	            pdu2.encode(PDU__LLC_descr_ ,bb, TTCN_EncDec::CT_RAW);
-	            unsigned int crcBuffer = Calculate_CRC(bb);
-		    bb.put_os(int2oct(crcBuffer,3));		
-	            return OCTETSTRING (bb.get_len(), bb.get_data()); 
-		  
-		  }
-		  
-	     else {	// IF ENCODER SENDS OUT NONZERO CRC GIVEN IN TTCN TEMPLATE
-	          pdu2.encode(PDU__LLC_descr_ ,bb, TTCN_EncDec::CT_RAW); 	
-	          return OCTETSTRING (bb.get_len(), bb.get_data());	    
-	          }
-	       }
-	     else {	//FCS OMIT
-	            pdu2.encode(PDU__LLC_descr_ ,bb, TTCN_EncDec::CT_RAW);
-	            unsigned int crcBuffer = Calculate_CRC(bb);
-		    bb.put_os(int2oct(crcBuffer,3));		
-	            return OCTETSTRING (bb.get_len(), bb.get_data()); 
-	          }		
-	    }
-	else {TTCN_error("Can not encode LLC PDU");  //Neither UI NOR U
-	
-	      return  OCTETSTRING (bb.get_len(), bb.get_data()); // this is dummy to avoid warning during compilation
-	    }
-	//pdu2.encode(PDU__LLC_descr_ ,bb, TTCN_EncDec::CT_RAW);	
-	//unsigned int crcBuffer = Calculate_CRC(bb);
-		
-	//bb.put_os( int2oct(crcBuffer,3));
-	
-	
-	//return OCTETSTRING (bb.get_len(), bb.get_data());
-		
-}
-
-
-OCTETSTRING enc__PDU__LLC(const PDU__LLC_template& pdu)
-{
-  return enc__PDU__LLC(pdu.valueof());
-}
-
-
-PDU__LLC dec__PDU__LLC(const OCTETSTRING& stream)
-{
-	PDU__LLC retv;
-	TTCN_Buffer bb;
-        OCTETSTRING crc = int2oct(0,3);
-	
-	size_t datalength = stream.lengthof()-3;
-	const unsigned char * CRC_AS_RECEIVED = (const unsigned char *)stream+datalength;
-	bb.put_s(datalength,(const unsigned char *)stream);
-	
-	unsigned int CRC_CALCULATED = Calculate_CRC(bb);
-     
-      // COMPARE CRC RECEIVED IN LLC PDU WITH CRC CALCULATED FROM LLC PDU	
-	if(
-	  (CRC_AS_RECEIVED[ 0 ] != (CRC_CALCULATED & 0xff0000  ) >> 16) ||
-          (CRC_AS_RECEIVED[ 1 ] != (CRC_CALCULATED & 0xff00    ) >> 8) ||
-          (CRC_AS_RECEIVED[ 2 ] != (CRC_CALCULATED & 0xff      )     )
-	  ) 
-	{
-	     TTCN_warning("CRC ERROR IN LLC PDU");  // CRC IS NOT AS EXPECTED
-	     crc=OCTETSTRING(3,CRC_AS_RECEIVED);
-	}
-	 // CRC IS 
-         // FILL CRC octets with zeroes if CRC is OK
-	
-	retv.decode(PDU__LLC_descr_, bb, TTCN_EncDec::CT_RAW);
-	 
-	if (retv.get_selection() == PDU__LLC::ALT_pDU__LLC__UI){
-	   retv.pDU__LLC__UI().fCS() = crc;
-	} 
-	    
-	if (retv.get_selection() == PDU__LLC::ALT_pDU__LLC__U){
-	retv.pDU__LLC__U().fCS() = crc;
-	} 
-	
-	
-	return retv;
-	   
-
-}
-
-}//namespace
diff --git a/LLC_v7.1.0_CNL113577_LATEST/src/LLC_Types.ttcn b/LLC_v7.1.0_CNL113577_LATEST/src/LLC_Types.ttcn
deleted file mode 100644
index 7c537a8..0000000
--- a/LLC_v7.1.0_CNL113577_LATEST/src/LLC_Types.ttcn
+++ /dev/null
@@ -1,329 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2008                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               LLC_Types.ttcn
-//  Description:        This module contains the Logical Link Control protocol (LLC)
-//                      44.064 v7.1.0 with attributes for RAW encoding/decoding.
-//  Rev:                R1A0
-//  Prodnr:             CNL 113 577
-//  Updated:            2008-01-22
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 44.064 7.1.0
- 
-module LLC_Types
-{    
-
-import from General_Types all;
-
-external function enc_PDU_LLC(in PDU_LLC pdu) return octetstring;
-external function dec_PDU_LLC(in octetstring stream) return PDU_LLC;
-
-type record Version
-{
-  integer 	version_value (0..15),
-  BIT4		spare
-
-} with {
-  variant (version_value) "FIELDLENGTH(4)";
-}
-
-type octetstring IOV_UI length(4) 
-
-
-type octetstring IOV_I length(4)
-
-
-type record T200
-{
-  BIT4		spare,
-  integer 	t200Value
-} with {
-  variant (t200Value) "FIELDLENGTH(12)";
-  variant (t200Value) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-
-type record N200
-{
-  integer 	retransmissions (0..15),
-  BIT4		spare
-} with {
-  variant (retransmissions) "FIELDLENGTH(4)";
-}     
-
-
-type record N201_U
-{
-  BIT5		spare,
-  integer 	n201UValue
-} with {
-  variant (n201UValue) "FIELDLENGTH(11)";
-  variant (n201UValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-
-type record N201_I
-{
-  BIT5		spare,
-  integer 	n201IValue
-}
-with {
-  variant (n201IValue) "FIELDLENGTH(11)";
-  variant (n201IValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-type record MD
-{
-  BIT1		spare,
-  integer 	mDValue
-} with {
-  variant (mDValue) "FIELDLENGTH(15)";
-  variant (mDValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-
-type record MU
-{
-  BIT1		spare,
-  integer 	mUValue
-} with {
-  variant (mUValue) "FIELDLENGTH(15)";
-  variant (mUValue) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-type integer KD with {variant  "FIELDLENGTH(8)";};	
-
-type integer KU with {variant  "FIELDLENGTH(8)";};	
-
-type octetstring L3param;
-
-type octetstring Reset_LLC length(0);
-
-type union XID_Data
-{
-  Version		version,
-  IOV_UI		iOV_UI,
-  IOV_I		iOV_I,
-  T200		t200,
-  N200		n200,
-  N201_U		n201_U,
-  N201_I		n201_I,
-  MD		mD,	
-  MU		mU,
-  KD		kD,
-  KU		kU,
-  L3param		l3param,
-  Reset_LLC		reset    	
-}
-
-
-type union  XID_length
-{
-  integer short_len,
-  integer long_len
-}with {
-  variant (short_len) "FIELDLENGTH(2)";
-  variant (long_len)  "FIELDLENGTH(8)";
-  variant (long_len)  "BYTEORDER(last)";
-  variant (short_len) "FIELDORDER(msb)";
-  variant (long_len)  "FIELDORDER(msb)";
-
-}
-
-
-type record XID
-{
-  BIT1	  xl,
-  BIT5     typefield,
-  XID_length  xID_length,
-  //Header_XID      header_XID,
-  XID_Data	xID_Data      
-} with { 
-  variant (xID_Data) "CROSSTAG( version, 	typefield = '00000'B;
-				     iOV_UI, 	typefield = '00001'B;
-				     iOV_I, 	typefield = '00010'B;
-				     t200, 	typefield = '00011'B;
-				     n200, 	typefield = '00100'B;
-				     n201_U, 	typefield = '00101'B;
-				     n201_I, 	typefield = '00110'B;
-				     mD, 	typefield = '00111'B;
-				     mU, 	typefield = '01000'B;
-				     kD, 	typefield = '01001'B;
-				     kU, 	typefield = '01010'B;
-				     l3param, 	typefield = '01011'B;
-				     reset, 	typefield = '01100'B;
-				     
-					 )";
-  variant  "FIELDORDER(msb)";
-  variant (xID_length) "CROSSTAG( short_len, 	xl = '0'B;
-				                long_len, 	xl = '1'B;)";
-  variant (xID_length) "LENGTHTO (xID_Data)"
-
-  variant (xID_length) "PADDING(yes)" 
-};
-
-
-type record RejectedFrameControlField_UI
-{
-  Control_field_UI	control_field,
-  OCT4			spare
-}
-
-
-type record RejectedFrameControlField_U
-{
-  Control_field_U		control_field,
-  OCT5			spare
-}		
-
-
-type union RejectedFrameControlField 
-{
-  RejectedFrameControlField_UI 	rejectedFrameControlField_UI,
-  RejectedFrameControlField_U	rejectedFrameControlField_U
-} with {
-  variant "TAG(rejectedFrameControlField_UI,  control_field.format = '110'B;
-		     rejectedFrameControlField_U,   control_field.format = '111'B;
- 			)";
-};
-
-
-type record of XID UA_Information;
-
-type record of XID SABM_Information;
-
-type record of XID XID_Information;
-
-
-type octetstring DM_Information length(0);
-
-
-type record FRMR_Information
-{
-  RejectedFrameControlField   rejectedFrameControlField,
-  BIT4 			    spare1,
-  BIT9 			    vS,
-  BIT1			    spare2,
-  BIT9			    vR,
-  BIT1			    cR,
-  BIT4			    spare3,
-  BIT1			    w4,
-  BIT1			    w3,
-  BIT1			    w2,
-  BIT1			    w1
-} with {
-  variant (vS) "BYTEORDER(last)";
-  variant (vR) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-};
-
-
-type record Address_field
-{
-  BIT4		sAPI,
-  BIT2		spare,    // '00'B
-  BIT1		cR,      
-  BIT1		pD	  //'0' for LLC
-}
-
-type record Control_field_U
-{
-  BIT4		mBits,	
-  BIT1		pF,
-  BIT3 		format   // '111'B
-}
-
-
-
-type record Control_field_UI
-
-{
-  BIT3 		format,        // '110'B
-  BIT2 		spare, 
-  integer		nU,     //BIT9
-  BIT1		e,
-  BIT1		pM
-} with {
-
-  variant (nU) "FIELDLENGTH(9)";
-  variant (nU) "BYTEORDER(last)";
-  variant  "FIELDORDER(msb)";
-}
-
-
-type union Information_field_U
-{
-  UA_Information		uA,
-  SABM_Information	sABM,
-  FRMR_Information	fRMR,
-  DM_Information		dM,
-  XID_Information		xID  
-};
-
-
-type record PDU_LLC_UI
-{
-  Address_field 		address_field,
-  Control_field_UI 	control_field,
-  octetstring 		information_field_UI, 
-  OCT3			fCS    optional 
-  // fCS ENCODING:
-  //'000000'O in send template -> generate CRC, 
-  // omit in send template -> generate CRC, 
-  // otherwise send out fCS in send template
-  // 
-  // DECODING:
-  // decoder generates '000000'O if CRC OK
-}
-
-
-
-type record PDU_LLC_U
-{
-  Address_field 		address_field,
-  Control_field_U 	control_field,
-  Information_field_U	information_field_U,	
-  OCT3			fCS    optional  
-  // ENCODING:
-  //'000000'O in send template -> generate CRC, 
-  // omit in send template -> generate CRC, 
-  // otherwise send out fCS in send template
-  // 
-  // DECODING:
-  // decoder generates '000000'O if CRC OK
-} with { 
-  variant (information_field_U) "CROSSTAG( uA, 	control_field.mBits = '0110'B;
-				  	      	sABM, 	control_field.mBits = '0111'B;
-				   		fRMR, 	control_field.mBits = '1000'B;
-						dM, 	control_field.mBits = '0001'B;
-						xID, 	control_field.mBits = '1011'B;	
-					 )";
-};
-
-
-type union PDU_LLC
-{
-  PDU_LLC_UI pDU_LLC_UI,
-  PDU_LLC_U  pDU_LLC_U
-} with   { variant "TAG (              
-		pDU_LLC_UI,       		control_field.format ='110'B;	
-		pDU_LLC_U,       		control_field.format ='111'B;
-                         )"
-};
-
-
-
-}with{ encode "RAW"}// end of module
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/doc/MobileL3_v13.4_Descr.doc b/MobileL3_v13.4.0_CNL113832_LATEST/doc/MobileL3_v13.4_Descr.doc
deleted file mode 100644
index ddbcb2f..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/doc/MobileL3_v13.4_Descr.doc
+++ /dev/null
Binary files differ
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/doc/MobileL3_v13.4_PRI.doc b/MobileL3_v13.4.0_CNL113832_LATEST/doc/MobileL3_v13.4_PRI.doc
deleted file mode 100644
index c8358d1..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/doc/MobileL3_v13.4_PRI.doc
+++ /dev/null
Binary files differ
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CC_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CC_Types.ttcn
deleted file mode 100644
index d631abc..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CC_Types.ttcn
+++ /dev/null
@@ -1,1649 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_CC_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.008 v13.4.0
-
-
-module  MobileL3_CC_Types
-{
-
-import from General_Types           all;
-import from MobileL3_CommonIE_Types all;
-
-//============================================================================
-// 24.008/ 10.5.4 Call control information elements
-//============================================================================
-
-// 10.5.4.1 Extensions of codesets
-//--
-
-// 10.5.4.2 Locking shift procedure
-//--
-
-// 10.5.4.3 Non-locking shift procedure
-//--
-
-// 10.5.4.4 Auxiliary states
-type record AuxiliaryStates_TLV
-{
-  OCT1  elementIdentifier, //24'O
-  LIN1  lengthIndicator,
-  BIT2  mPTYAuxiliaryState,
-  BIT2  holdAuxState,
-  BIT3  spare_3,
-  BIT1  ext //'1'B
-} with { variant (lengthIndicator) "LENGTHTO(mPTYAuxiliaryState,holdAuxState,
-                                             spare_3,ext)"};
-
-type record AuxiliaryStates_LV
-{
-  LIN1  lengthIndicator,
-  BIT2  mPTYAuxState,
-  BIT2  holdAuxiliaryState,
-  BIT3  spare_3,
-  BIT1  ext //'1'B
-}with { variant (lengthIndicator) "LENGTHTO(mPTYAuxState,holdAuxiliaryState,
-                                            spare_3,ext)"};
-         
-//24.008/ 10.5.4.4a Backup Bearer Capacity (BBC)
-type record BBC_octet3
-{
-  BIT3  informationTransferCapability,  //     '000'speech  B
-                                        //     '001'B UDI
-                                        //     '010'B 3.audio  1kHz
-                                        //     '101'oITC B (see octet 5a)
-                                        //     '110'B speech  auxiliary
-                                        //     '111'B reserved
-  BIT1  transferMode, //    '0'B mode  circuit
-                      //    '1'B packet  mode
-  BIT1  codingStandard, //   '0'B GSM/PCS coding  standardized
-                        //   '1'B  reserved
-  BIT2  radioChannelRequirement, // '01'B MSC/VLR to MS;
-        // '00'B MS (supports) towards MSC/VLR rate dual (half preferred)
-        // '01'B MS (supports) towards MSC/VLR full only  rate
-                           // '10'B rate  dual  (half preferred)
-                           // '11'B rate  dual  (full preferred)
-  BIT1 extension_octet_3
-     //'0'B or '1'B (THe RAW encoder will overwrite this bit)
-} with { variant "EXTENSION_BIT (yes)"};
-
-// "type record BC_octet4" is the same as "type record BC_octet4"
-
-type record BBC_octet5
-{
-  BIT3  signallingAccessProtocol, //        '001'B I.440/450
-        //        '010'B X.21
-        //        '011'B X.28 dedicated PID, ind. NUI
-        //        '100'B X.28 dedicated PID, uni. NUI
-        //        '101'B X.28 PID  non_dedicated
-        //        '110'B X.32
-  BIT2  rateAdaptation, //     '00'B no adaptation  rate  (RA)
-        //     '01'B V.110/X.30 adaptation  rate
-        //     '10'B CCITT X.31 flag stuffing
-        //     '11'B RA  other  (see octet 5a)
-  BIT2  accessId, //  '00'B identifier  octet
-  BIT1  extension_octet_5, // '0'B or '1'B (if no octet 5A following)
-
-  //octet 5a
-  BIT3  spare2_3  optional, // B'...._000
-  BIT2  otherRateAdaptation  optional, // B'.._00.._ V.interworking  120
-  BIT2  otherInformationTransferCapability optional,
-                              // B'_00...._ interworking RDI
-  BIT1  extension_octet_5a  optional // '1'B 
-} with { variant "EXTENSION_BIT (yes)"};
-
-// BBC_octet6, BBC_octet7 not required
-
-type record BackupBearerCapacity
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,      
-  // the following octet fields representing an octet group
-  BBC_octet3 octet3,  // 1-
-  BC_octet4  octet4 optional, //1 octet; opt. by def, but always fill in!!!
-  BBC_octet5 octet5 optional, //1-2 octets
-  BC_octet6  octet6 optional, //1-8 octets
-  BC_octet7  octet7 optional  //1 octet
-} with { variant (lengthIndicator) "LENGTHTO(octet3,octet4,octet5,octet6,
-                                             octet7)"};
-
-// 10.5.4.5 Bearer Capacity
-type record BC_octet7
-{
-  BIT5  userInformationLayer2Protocol, //octet 7:
-                                      // '00110'B  rec. X.25, level link
-                                      // '01000'B  ISO 6429
-                                      // '01001'B  X.75 (teletex)
-                                      // '01010'B  profile  Videotext
-                                      // '01011'B  FAX group 3
-                                      // '01100'COPnoF1Ct  B
-                                      // '01101'B  X.75 (CAPI)
-  BIT2  layer2Id, // '10'B  identifier  octet
-  BIT1  extension_octet_7  // '1'B
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record BC_octet6
-{
-  BIT1  synchronous_asynchronous, //              '0'synchronous  B
-             //              '1'B asynchronous
-  BIT4  userInformationLayer1Protocol, // '0000'B default layer protocol 1
-  BIT2  layer1Id, //       '01'B identifier  octet
-  BIT1  extension_octet_6, // '0'B (octet 6a following) or '1'B
-
-  // OCTET 6a:
-  BIT4  userRate optional, //     '0001'B  0.kbps  3  (X.1 and V.110)
-                           //      '0010'B  1.kbps  2  (X.1 and V.110)
-                           //      '0011'B  2.kbps  4  (X.1 and V.110)
-                           //      '0100'B  4.kbps  8  (X.1 and V.110)
-                           //      '0101'B  9.kbps  6  (X.1 and V.110)
-                           //      '0110'B  12.0 transparent  kbps
-                           //      '0111'B  1.2 kbps/75bps asymmetric
-  BIT1  numberDataBits optional, //    '0'B bits  7  (data)
-                                 //    '1'B bits  8  (data)
-  BIT1  negotiation optional, // '0'B inband negotiation possible not
-  BIT1  numberStopBits optional, // '0'B bit 1
-                                 //   '1'B 2 bits
-  BIT1  extension_octet_6a optional, //   '0'B or '1'B
-
-  // OCTET 6b:
-  BIT3  parity optional, //      '000'odd  B  (number)
-                         //       '010'even  B
-                         //       '011'B  none
-                         //       '100'B  forced 0  to
-                         //       '101'B  forced to 1
-  BIT1  nicOnRX optional,   //     '0'B  no data accepted clock  with
-                            //     '1'B       data accepted with clock
-  BIT1  nicOnTX optional,   //     '0'B  no data required clock  with
-                            //     '1'B       data required with clock
-  BIT2  intermediateRate optional, //  '00'reserved  B
-                                   //  '01'B  reserved
-                                   //  '10'B  kbps  8
-                                   //  '11'B 16 kbps
-  BIT1  extension_octet_6b optional, // '0'B or '1'B
-
-  // OCTET 6c:
-  BIT5  modemType optional, //      '00000'none  B
-     //      '00001'B  V.21
-     //      '00010'B  V.22
-     //      '00011'B  V.22bis
-     //      '00100'B  V.23
-     //      '00101'B  V.26ter
-     //      '00110'B  V.32
-     //      '00111'B  modem for interfaces  undefined
-     //      '01000'B  autobauding type 1
-     //      '11111'B  V.42
-  BIT2  connectionElement optional, //   '00'transparent  B  (T)
-                                    //   '01'non_transparent  B  (NT)
-                                    //   '10'B  both,  preferred  T
-                                    //   '11'B  both, NT preferred
-  BIT1  extension_octet_6c optional,//'0'B or '1'B no octet following 6d
-
-  // OCTET 6d:
-  BIT5  fixedNetworkUserRate  optional, //  '00000'B  FNUR applicable not
-                      //     '00001'B   9.kbps  6  (X.1 and V.110)
-                      //     '00010'B  14.kbps  4  (X.1 and V.110)
-                      //     '00011'B  19.kbps  2  (X.1 and V.110)
-                      //     '00100'B  28.kbps  8  (X.1 and V.110)
-                      //     '00101'B  38.kbps  4  (X.1 and V.110)
-                      //     '00110'B  48.kbps  0  (X.1 and V.110)
-                      //     '00111'B  56.kbps  0  (X.1 and V.110)
-                      //     '01000'B  64.0 transparent  kbps
-  BIT2  otherModemType  optional, //'00'B  no other modem specified  type
-                                  // '11'B  V.34
-  BIT1  extension_octet_6d optional,//'0'B or '1'B no octet following 6e
-
-  // OCTET 6e:
-  BIT3  maxNumberOfTrafficChannels  optional, //         '000'B  TCH  1
-                                 //         '001'B  2 TCH
-                                 //         '010'B  TCH  3
-                                 //         '011'B  4 TCH
-                                 //         '100'B  TCH  5
-                                 //         '110'B  6 TCH
-                                 //         '101'B  TCH  7
-                                 //         '111'B  8 TCH
-  BIT4  acceptableChannelCodings  optional,//'0'B TCH/F4.8 not acceptable
-                                     // '1'B  TCH/F4.8      acceptable
-                                     // '0'B  TCH/F9.6  not acceptable
-                                     // '1'B  TCH/F9.6      acceptable
-                                     // '0'spare  B
-                                     // '0'B  TCH/F14.4 not acceptable
-                                     // '1'B  TCH/F14.acceptable  4
-  BIT1 extension_octet_6e optional,//'0'B or '1'B _ no octet following 6d
-
-  // OCTET 6f:
-  BIT4 wantedAirInterfaceUserRate optional,
-                                 //octet 6f (MS to MSC/VLR only):
-                                 // '0000'B  WAIUR applicable  not
-                                 // '0001'B   9.6 kbps
-                                 // '0010'B  14.kbps  4
-                                 // '0011'B  19.2 kbps
-                                 // '0100'B  19.kbps  2
-                                 // '0101'B  28.8 kbps
-                                 // '0110'B  38.kbps  4
-                                 // '0111'B  43.2 kbps
-                                 // '1000'B  57.kbps  6
-                                 // '1001'B  38.4 kbps
-                                 // '1010'B  38.kbps  4
-                                 // '1011'B  38.4 kbps
-                                 // '1101'B  38.kbps  4
-  BIT3  uimi optional,        //  '000'B  user initiated mod. allowed  not
-                     //       '001'B  UIMI allowed upto 1 TCH/F
-                     //       '010'B  UIMI allowed upto 2 TCH/F
-                     //       '011'B  UIMI allowed upto 3 TCH/F
-                     //       '100'B  UIMI allowed upto 4 TCH/F
-  BIT1  extension_octet_6f optional,// '0'B or '1'B _ no octet following 6f
-
-  BIT2  spare optional, //'00'B
-  BIT2  asymetryIndication optional, // spare
-  BIT3  acceptableChannelCodingsExt optional, // spare, set to 0
-  BIT1  extension_octet_6g optional // '1'B;               
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record BC_octet5
-{
-  BIT3  signallingAccessProtocol, //        '001'B I.440/450
-        //        '010'B X.21
-        //        '011'B X.28 dedicated PID, ind. NUI
-        //        '100'B X.28 dedicated PID, uni. NUI
-        //        '101'B X.28 PID  non_dedicated
-        //        '110'B X.32
-  BIT2  rateAdaptation, //     '00'B no adaptation  rate  (RA)
-        //     '01'B V.110/X.30 adaptation  rate
-        //     '10'B CCITT X.31 flag stuffing
-        //     '11'B RA  other  (see octet 5a)
-  BIT2  accessId, //  '00'B identifier  octet
-  BIT1  extension_octet_5, // '0'B or '1'B (if no octet 5A following)
-
-  BIT3  spare2_3  optional, // B'...._000
-  BIT2  otherRateAdaptation  optional, // B'.._00.._ V.interworking  120
-  BIT2  otherInformationTransferCapability optional,
-                              // B'_00...._ interworking RDI
-  BIT1  extension_octet_5a  optional, // B'x......_
-
-  BIT1  spare3_1  optional, // B'......_0
-  BIT1  inbandNegotiation  optional,
-  BIT1  assignor_assignee  optional,
-  BIT1  lli  optional,
-  BIT1  mode  optional,
-  BIT1  multiframe  optional,
-  BIT1  hdrNohdr  optional,
-  BIT1  extension_octet_5b  optional // B'x......_
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record BC_octet4
-{
-  BIT1  establishment, //            '0'demand  B
-  BIT1  nirr, //          '0'B no associated  meaning
-         //         '1'B data 4.8, FR, NT, 6.0
-  BIT1  configuration, //        '0'B point point  to
-  BIT1  duplexMode, //      '0'B duplex  half
-          //     '1'B full duplex
-  BIT2  structure, //   '00'B service data integrity  unit
-         //   '11'B unstructured
-  BIT1  compresion, //  '0'B no DC possible/allowed
-         //  '1'B    DC possible/allowed
-  BIT1  extension_octet_4 // '1'B
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record Speech_AuxiliarySpeech
-{
-   BIT4  speechVersionIndication, //octet 3a (speech MS to MSC/VLR):
-        // B'....0000 speech full rate 1  version
-        // B'....0010 speech full rate version 2
-        // B'....0100 speech full rate 3  version
-        // B'....0001 speech half rate version 1
-        // B'....0011 speech half rate 2  version
-        // B'....0101 speech half rate version 3
-  BIT1  spare1_1, // B'..00....
-  BIT1  cTM_or_Spare, // CTM text telephony supported '1'B, not supported '0'B, or spare
-  BIT1  coding, // B'_0...... extension octet  ITC
-       // B'_1...... other extension octet
-  BIT1  extension_octet_3a_3b   // B'x......_
-} with { variant "EXTENSION_BIT (yes)"};
-
-type set of Speech_AuxiliarySpeech Speech_AuxiliarySpeech_List with { variant "EXTENSION_BIT (yes)"};
- 
-type record BC_octet3
-{
-  BIT3  informationTransferCapability,  //     '000'speech  B
-                                        //     '001'B UDI
-                                        //     '010'B 3.audio  1kHz
-                                        //     '101'oITC B (see octet 5a)
-                                        //     '110'B speech  auxiliary
-                                        //     '111'B reserved
-  BIT1  transferMode, //    '0'B mode  circuit
-                      //    '1'B packet  mode
-  BIT1  codingStandard, //   '0'B GSM/PCS coding  standardized
-                        //   '1'B  reserved
-  BIT2  radioChannelRequirement, // '01'B MSC/VLR to MS;
-        // '00'B MS (supports) towards MSC/VLR rate dual (half preferred)
-        // '01'B MS (supports) towards MSC/VLR full only  rate
-                           // '10'B rate  dual  (half preferred)
-                           // '11'B rate  dual  (full preferred)
-  BIT1 extension_octet_3,
-     //'0'B or '1'B (THe RAW encoder will overwrite this bit)
-  Speech_AuxiliarySpeech_List  speech_aux_3a_3b     optional                
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record BearerCapability_TLV
-{
-  OCT1  elementIdentifier, // '04'O
-  LIN1  lengthIndicator,   // 1..12
-  // the following octet fields representing an octet group
-  BC_octet3 octet3,  // 1-
-  BC_octet4 octet4 optional,  // 1 octet
-  BC_octet5 octet5 optional,  // 1-3 octets
-  BC_octet6 octet6 optional,  // 1-8 octets
-  BC_octet7 octet7 optional   // 1 octet
-} with { variant (lengthIndicator) "LENGTHTO (octet3, octet4, octet5, octet6,
-                 octet7)"};
-
-type record BearerCapability_LV
-{
-  LIN1  lengthIndicator,   // 1..12
-  // the following octet fields representing an octet group
-  BC_octet3 octet3,  // 1-
-  BC_octet4 octet4 optional,  // 1 octet
-  BC_octet5 octet5 optional,  // 1-3 octets
-  BC_octet6 octet6 optional,  // 1-8 octets
-  BC_octet7 octet7 optional   // 1 octet
-} with { variant (lengthIndicator) "LENGTHTO (octet3, octet4, octet5, octet6,
-                 octet7)"};
-
-//10.5.4.5a Call Control Capabilities
-type record CallControlCapabilities
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,  
-  BIT1  dTMF,
-  BIT1  pCP,
-  BIT1  eNICM,
-  BIT1  mcat,
-  BIT4  maxNumberOfSupportedBearers,
-  BIT4  maxNumberOfSpeechBearers,
-  BIT4  spare2   // '0000'B
-} with { variant (lengthIndicator) "LENGTHTO (dTMF,pCP,eNICM,mcat,
-                                        maxNumberOfSupportedBearers,spare2)" };
-
-
-//10.5.4.6 Call State
-type record CallState_V
-{
-  BIT6  callStateValue,
-  BIT2  codingStd
-};
-   
-type record CallState_TV
-{
-  OCT1  elementIdentifier,
-  BIT6  callStateValue,
-  BIT2  codingStd
-};         
-
-//24.008/10.5.4.7 Called Party BCD Number
-type record CalledPartyBCD_Number
-{
-  OCT1  elementIdentifier, // '5E'O
-  LIN1  lengthIndicator, // 1..15
-  BIT4  numberingPlanIdentification, //       '0000'unknown  B
-              //       '0001'B ISDN/telephony
-              //       '0011'data  B
-              //       '0100'B telex
-              //       '1000'national  B
-              //       '1001'B private
-              //       '1111'B reserved extension  for
-  BIT3  typeOfNumber, //  '000'unknown  B
-              //  '001'B international number
-              //  '010'B        number  national
-              //  '011'B network specific number
-              //  '100'B dedicated access code  short
-              //  '101'B reserved
-              //  '110'reserved  B
-              //  '111'B reserved for extension
-  BIT1  ext1,  // '0'B or '1'B
-  hexstring   digits    optional
-} with { variant (lengthIndicator) "LENGTHTO (numberingPlanIdentification,
-                                       typeOfNumber, ext1, digits)";
-         variant (digits) "PADDING(yes)";
-         variant (digits) "PADDING_PATTERN('1'B)"};
-
-//24.008/10.5.4.8 Called Party SubAddress
-type record CalledPartySubAddress
-{
-  OCT1  elementIdentifier, // H'6D
-  LIN1  lengthIndicator, // 0..21
-  BIT3  spare1_3                optional, // B'...._000
-  BIT1  odd_evenIndicator       optional, 
-                        // B'....0.._ even number of digits  address
-                        // B'....1.._ odd  number of address digits
-  BIT3  typeOfSubAddress        optional, // B'_000.... NSAP
-                                    // B'_010.... specified  user
-  BIT1  ext1                    optional, // B'1......_
-  OCTN  subAddressInformation   optional
-} with { variant (lengthIndicator) "LENGTHTO (spare1_3, odd_evenIndicator,
-                        typeOfSubAddress, ext1, subAddressInformation)"};
-
-
-//10.5.4.9 Calling Party BCD Number
-type record CallingOrCalled_Number_oct3
-{
-  BIT4  numberingPlanIdentification, // Applies for type number  of
-                               // = 000, 001, 010 and 100
-                               // B'....Unknown  0000
-                               // B'....0001 ISDN/telephony number plan
-                               // B'....0011 data numbering plan
-                               // B'....0100 telex numbering plan
-                               // B'....1000 national numbering plan
-                               // B'....1001 private numbering plan
-                               // B'....1111 reserved for extension
-  BIT3  typeOfNumber, // B'_000.... Unknown
-                               // B'_001.... international number
-                               // B'_010.... national number
-                               // B'_011.... network specific number
-                               // B'_100.... dedicated access, short code
-                               // B'_101.... reserved
-                               // B'_110.... reserved
-                               // B'_111.... reserved for extension
-  BIT1  ext1, // B'1......_
-  BIT2  screeningIndicator  optional,
-      // B'......00 User_provided, not screened
-      // B'......01 User_provided, verified and passed
-      // B'......10 User_provided, verified and failed
-      // B'......11 Network provided
-  BIT3  spare1_3  optional, // B'.._000..
-  BIT2  presentationIndicator  optional,
-      // B'_00 Presentation allowed
-      // B'_01 Presentation restricted
-      // B'_10 Number not available due to interworking
-      // B'_11 Reserved
-  BIT1  ext2  optional // B'1......_
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record CallingPartyBCD_Number {
-  OCT1  elementIdentifier, // '5C'O -table 9.70
-  LIN1  lengthIndicator, // 1..12
-  CallingOrCalled_Number_oct3   oct3,
-  hexstring  digits  optional
-} with { variant (lengthIndicator) "LENGTHTO (oct3,digits)";
-         variant (digits) "PADDING(yes)";
-         variant (digits) "PADDING_PATTERN('1'B)"};
-
-//10.5.4.10 Calling Party SubAddress
-type record CallingPartySubAddress
-{
-  OCT1  elementIdentifier, // H'5D
-  LIN1  lengthIndicator, // 0..21
-  BIT3  spare1_3  optional, // B'...._000
-  BIT1  odd_evenIndicator  optional,
-     // B'....0.._ even number of digits  address
-     // B'....1.._ odd  number of address digits
-  BIT3  typeOfSubAddress  optional, // B'_000.... NSAP
-                    // B'_010.... specified  user
-  BIT1  ext1  optional, // B'1......_
-  OCTN  subAddressInformation  optional
-} with { variant (lengthIndicator) "LENGTHTO (spare1_3, odd_evenIndicator,
-                typeOfSubAddress, ext1, subAddressInformation)"};
-
-//24.008/10.5.4.11 Cause
-//moved into MobileL3_CommonIE_Types
-
-//24.008/10.5.4.11a/b
-type record CLIR
-{
-  OCT1  elementIdentifier
-};
-
-//24.008/10.5.4.12 Congestion level
-type record CongestionLevel
-{
-  BIT4 congestionLevel, // '0000'B receiver ready
-                        // '1111'B receiver not ready 
-  BIT4 elementIdentifier
-};
-
-type BIT4 CongestionLevelV;
-
-//24.008/10.5.4.13 Connected Number
-type record ConnectedNumber
-{
-  OCT1  elementIdentifier, // H'4C
-  LIN1  lengthIndicator, // 2..12
-  CallingOrCalled_Number_oct3   oct3,
-  hexstring    digits  optional
-} with { variant (lengthIndicator) "LENGTHTO (oct3,digits)";
-         variant (digits) "PADDING(yes)";
-         variant (digits) "PADDING_PATTERN('1'B)"};
-
-//****************************************************************************
-type record ConnectedSubAddress
-{
-  OCT1  elementIdentifier, // H'4D
-  LIN1  lengthIndicator, // 0..21
-  BIT3  spare1_3                optional, // B'...._000
-  BIT1  odd_evenIndicator       optional,
-    // B'....0.._ even number of digits address
-    // B'....1.._ odd  number of address digits
-  BIT3  typeOfSubAddress        optional, // B'_000.... NSAP
-                      // B'_010.... specified  user
-  BIT1  ext1                    optional, // B'1......_
-  OCTN  subAddressInformation   optional
-} with { variant (lengthIndicator) "LENGTHTO (spare1_3, odd_evenIndicator,
-                        typeOfSubAddress, ext1, subAddressInformation)" };
-
-//10.5.4.15 Facility IE (see also 24.080/3.6
-// moved to Mobile_L3_CommonIE_Types , because it is used by SS and CC
- 
-// 10.5.4.16 HighLayerCompatibility
-type record HLC_octet3
-{
-  BIT2  presentationMethod, 
-  BIT3  interpretation,
-  BIT2  codingStandard,
-  BIT1  extension_octet_3 //  '1'B  octet4 should follow
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record HLC_octet4
-{
-  BIT7 highLayerCharId,
-  BIT1 extension_octet_4,
-  //octet4a:
-  BIT7 extendedHighLayerCharId optional,
-  BIT1 extension_octet_4a      optional // '1'B
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record HighLayerCompatibility
-{
-  OCT1        elementIdentifier, // H'7D
-  LIN1        lengthIndicator, // 0..3
-  HLC_octet3  octet3 optional, 
-  HLC_octet4  octet4 optional // if octet3 used, octet4 should use, see 10.5.4.16.1
-  //replaced this: octetstring  highLayerCompatibilityContents  length(1..3) optional
-} with { variant (lengthIndicator) "LENGTHTO (octet3, octet4)"};
-
-//10.5.4.17 Keypad Facility
-type record KeypadFacility
-{
-  OCT1  elementIdentifier, //
-  BIT7  keypadInformation, //IA5 char
-  BIT1  spare_1
-};
-
-//10.5.4.18 Low Layer Compatibility
-// see also ITU Q.931
-type record LowLayerCompatibility
-{
-  OCT1         elementIdentifier, // H'7C
-  LIN1         lengthIndicator,   // 0..13
-  octetstring  lowLayerCompatibilityContents  length(2..16) optional
-
-//commented out to simplify the type
-/*  BIT5  informationTransferCapability  optional,
-  BIT2  codingStandard  optional,
-  BIT1  ext1  optional, // B'x........
-  BIT6  spare1_6  optional, // B'..0000000
-  BIT1  negotiationIndicator  optional,
-  BIT1  ext2  optional, // B'x........
-  BIT5  informationTransferRate  optional,
-  BIT2  transferMode  optional,
-  BIT1  ext3  optional, // B'x........
-  BIT2  establishment  optional,
-  BIT2  configuration  optional,
-  BIT3  structure  optional,
-  BIT1  ext4  optional, // B'x........
-  BIT5  informationTransferRateDestOrig  optional,
-  BIT2  symetry  optional,
-  BIT1  ext5  optional, // B'x........
-  BIT5  userInformationLayer1Protocol  optional,
-  BIT2  layer1Identity  optional,
-  BIT1  ext6  optional, // B'x........
-  BIT5  userRate  optional,
-  BIT1  negotiation  optional,
-  BIT1  synchronous_asynchronous  optional,
-  BIT1  ext7  optional, // B'x........
-  BIT1  spare2_1  optional, // B'........0
-  BIT1  flowControlOnRX  optional,
-  BIT1  flowControlOnTX  optional,
-  BIT1  nicOnRX  optional,
-  BIT1  nicOnTX  optional,
-  BIT2  intermediateRate  optional,
-  BIT1  ext8  optional, // B'x........
-  BIT1  spare3_1  optional, // B'........0
-  BIT1  inband_outbandNegotiation  optional,
-  BIT1  assignor_assignee  optional,
-  BIT1  lliNegotiation  optional,
-  BIT1  mode  optional,
-  BIT1  multiFrameSupport  optional,
-  BIT1  hdrNohdr  optional,
-  BIT1  ext9  optional, // B'x........
-  BIT3  parity  optional,
-  BIT2  numberDataBits  optional,
-  BIT2  numberStopBits  optional,
-  BIT1  ext10  optional, // B'x........
-  BIT6  modemType  optional,
-  BIT1  duplexMode  optional,
-  BIT1  ext11  optional, // B'x........
-  BIT5  userInformationLayer2Protocol  optional,
-  BIT2  layer2Id  optional,
-  BIT1  ext12  optional, // B'x........
-  BIT5  userInformationLayer3Protocol  optional,
-  BIT2  layer3Id  optional,
-  BIT1  ext13  optional, // B'x........
-  BIT7  optionalLayer3ProtocolInformation  optional,
-  BIT1  ext14  optional  // B'x........
-*/
-} with { variant (lengthIndicator) "LENGTHTO (lowLayerCompatibilityContents)"};
-
-//10.5.4.19 More Data
-/*
-type record MoreData
-{
-  OCT1  elementIdentifier //'A0'O
-};
-*/
-
-//10.5.4.20 NotificationIndicator
-type record NotificationIndicator
-{
-//  OCT1  elementIdentifier,
-  OCT1  notificationDescription // '80'O : user suspended
-                                // '81'O : user resumed
-                                // '82'O : bearer change
-};
-
-//10.5.4.21 Progress Indicator
-type record ProgressIndicator_LV
-{
-  LIN1  lengthIndicator, // '02'O
-  BIT4  location,          // '0000'user  B
-              // '0001'B private network, local user
-              // '0010'B public  network, user  local
-              // '0100'B public  network, remote user
-              // '0101'B private network, user  remote
-              // '1010'B Network beyond interworking pt.
-  BIT1  spare1_1, //      '0'B
-  BIT2  codingStandard, //  '00'B coding according Q.931
-      //  '01'B reserved for standards  other
-      //  '10'B National standard
-      //  '11'B standard  other
-  BIT1  ext1, // '1'B
-  BIT7  progressDescription, //'0000001'B call is not end_to_end PLMN/ISDN
-     //  '0000010'B destination address is not PLMN/ISDN
-     //  '0000011'B origination address is not PLMN/ISDN
-     //  '0000100'B call has returned to the PLMN/ISDN
-     //  '0001000'B inband info available PLMN/ISDN
-     //  '0100000'B call is end_to_end PLMN/ISDN
-  BIT1  ext2  // '1'B
-} with { variant (lengthIndicator) "LENGTHTO (location, spare1_1,
-                                              codingStandard, ext1, 
-                                              progressDescription, ext2)"};
-
-type record  ProgressIndicator_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator, // '02'O
-  BIT4  location,          // '0000'user  B
-              // '0001'B private network, local user
-              // '0010'B public  network, user  local
-              // '0100'B public  network, remote user
-              // '0101'B private network, user  remote
-              // '1010'B Network beyond interworking pt.
-  BIT1  spare1_1, //      '0'B
-  BIT2  codingStandard, //  '00'B coding according Q.931
-      //  '01'B reserved for standards  other
-      //  '10'B National standard
-      //  '11'B standard  other
-  BIT1  ext1, // '1'B
-  BIT7  progressDescription, //'0000001'B call is not end_to_end PLMN/ISDN
-     //  '0000010'B destination address is not PLMN/ISDN
-     //  '0000011'B origination address is not PLMN/ISDN
-     //  '0000100'B call has returned to the PLMN/ISDN
-     //  '0001000'B inband info available PLMN/ISDN
-     //  '0100000'B call is end_to_end PLMN/ISDN
-  BIT1  ext2  // '1'B
-  // removed by ethbaat:ProgressIndicator_LV  progressIndicator_LV
-} with { variant (lengthIndicator) "LENGTHTO (location, spare1_1,
-                                              codingStandard, ext1, 
-                                              progressDescription, ext2)"};
-
-//24.008/10.5.4.21a Recall Type
-type record RecallType
-{
-  OCT1  elementIdentifier,
-  BIT3  recallType,
-  BIT5  spare_5
-}; 
-
-//24.008/10.5.4.21b Redirecting party BCD number
-type record RedirectingPartyBCDNumberTLV
-{
-  OCT1                         elementIdentifier,
-  LIN1                         lengthIndicator,
-  CallingOrCalled_Number_oct3  oct3,  
-  hexstring                    digits  optional
-} with { variant (lengthIndicator) "LENGTHTO (oct3,digits)";
-         variant (digits) "PADDING(yes)";
-         variant (digits) "PADDING_PATTERN('1'B)"
-          
-};
-
-//24.008/10.5.4.21c Redirecting party Subaddress
-type record RedirectingPartySubaddressTLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  BIT3  spare1_3  optional, // B'...._000
-  BIT1  odd_evenIndicator  optional,
-     // B'....0.._ even number of digits  address
-     // B'....1.._ odd  number of address digits
-  BIT3  typeOfSubAddress  optional, // B'_000.... NSAP
-                    // B'_010.... specified  user
-  BIT1  ext1  optional, // B'1......_
-  OCTN  subAddressInformation  optional
-} with { variant (lengthIndicator) "LENGTHTO (spare1_3, odd_evenIndicator,
-                typeOfSubAddress, ext1, subAddressInformation)"};  
-
-//24.008/10.5.4.22 Repeat Indicator
-type record RepeatIndicator
-{
-  BIT4  RepeatIndication,
-  BIT4  elementIdentifier        
-};
-
-//10.5.4.22a Reverse Call Setup Direction
-type record ReverseCallSetupDirection
-{
-  OCT1  elementIdentifier
-}; 
-
-//10.5.4.22b Setup Contatiner CCBS
-type record SetupContatinerCCBS
-{
-  OCT1  elementIdentifier, 
-  LIN1  lengthIndicator, 
-  OCTN  setupMessage
-} with { variant (lengthIndicator) "LENGTHTO (setupMessage)"}; 
-
-type record SetupContatinerCCBS_LV
-{ 
-  LIN1  lengthIndicator, 
-  OCTN  setupMessage      
-} with { variant (lengthIndicator) "LENGTHTO (setupMessage)"}; 
-
-//10.5.4.23 Signal
-type record ML3_Signal
-{
-  OCT1  elementIdentifier, // H'34
-  OCT1  signalValue   // B'00000000  0. Dial tone on
-                      // B'00000001  1. Ring back on  tone
-                      // B'00000010  2. Intercept tone on
-                      // B'00000011  3. Network congestion on  tone
-                      // B'00000100  4. Busy tone on
-                      // B'00000101  5. Confirm on  tone
-                      // B'00000110  6. Answer tone on
-                      // B'00000111  7. Call waiting on  tone
-                      // B'00001001  9. Off_hook warning tone on
-                      // B'00111111 63. off  Tones
-                      // B'01001111 79. Alerting off
-};
-
-//10.5.4.24 SS Version Indicator
-//moved to MobileL3_CommonIE_Types
-
-//10.5.4.25 User-user
-type record User_user_LV
-{
-  LIN1 lengthIndicator,
-  OCT1  user_userProtocolDiscriminator,
-  octetstring user_userInformation length(0..129) //transparent
-} with { variant (lengthIndicator) "LENGTHTO(user_userInformation)" };
-
-type record User_user_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  OCT1  user_userProtocolDiscriminator,
-  octetstring user_userInformation length(0..128) //transparent
-} with { variant (lengthIndicator) "LENGTHTO(user_userInformation)" };
-
-type record User_userShort
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  OCT1  user_userProtocolDiscriminator,
-  octetstring user_userInformation length(0..32)
-} with { variant (lengthIndicator) "LENGTHTO(user_userInformation)" };
-
-//10.5.4.26 Alerting Pattern
-type record  AlertingPattern
-{
-  OCT1  elementIdentifier, //'19'O  
-  LIN1  lengthIndicator,
-  BIT4  alertingPattern_FIELD,
-  BIT4  spare
-} with { variant (lengthIndicator) "LENGTHTO (alertingPattern_FIELD,spare )"}; 
-
-//10.5.4.27 Allowed Actions
-type record AllowedActions
-{
-  OCT1  elementIdentifier, //'19'O  
-  LIN1  lengthIndicator,
-  BIT7  spare_7,
-  BIT1  ccbsActivation //'0'B activation is not possible
-                       //'1'B activation is possible
-} with { variant (lengthIndicator) "LENGTHTO (spare_7,ccbsActivation)"};
-
-//10.5.4.28 Stream Identifier
-type record StreamIdentifier
-{
-  OCT1     elementIdentifier, // '2D'O
-  integer  lengthf, // '01'O
-  OCT1     streamIdentifierValue  // value 0..255
-} with { variant (lengthf) "LENGTHTO (streamIdentifierValue)"};
-
-// 24.008/10.5.4.29 Network Call Control Capabilities
-type record NetworkCallControlCapabilities
-{
-  OCT1  elementIdentifier, //'2F'O
-  LIN1  lengthIndicator,  
-  BIT1  mcs, // multicall support '0'B: no support
-            //                   '1'B :support
-  BIT7  spare
-} with { variant (lengthIndicator) "LENGTHTO (mcs,spare)"};
-
-//10.5.4.30 CauseofNoCli
-type record CauseofNoCli
-{
-  OCT1  elementIdentifier,  //'3A'O
-  LIN1  lengthIndicator,
-  OCT1  causeofNoCli_FIELD  
-} with { variant (lengthIndicator) "LENGTHTO (causeofNoCli_FIELD)"};
-
-//10.5.4.31 Immediate Modification Indicator
-// VOID
-
-// 10.5.4.33 Service Category (TLV)
-type record ServiceCategory
-{
-  OCT1      elementIdentifier,
-  LIN1      lengthIndicator,
-  BIT7      emergencyServiceCategory,
-  BIT1      spare_1
-} with { variant (lengthIndicator) "LENGTHTO( emergencyServiceCategory, spare_1 )"}; 
-
-// 10.5.4.34 REDIAL (T)
-type Type2 Redial;
- 
-//10.5.4.35 Network Initiated Service Upgrade Indicator
-type record NetworkInitiatedServiceUpgradeIndicator
-{
-  OCT1  elementIdentifier
-}; 
-
-//============================================================================
-// 20.008/9.3 Messages for circuit-switched call control (CC)
-//============================================================================
-
-// 9.3.1.1 Alerting (NW->MS)
-//****************************************************************************
-type record PDU_ML3_Alerting_NW_MS
-{
-  BIT6  messageType, //     '000001'Alerting  B
-  BIT2  nsd,
-  Facility_TLV          facility            optional,
-  ProgressIndicator_TLV progressIndicator   optional,
-  User_user_TLV         user_user           optional
-} with { variant "TAG (
-                facility,           elementIdentifier = '1C'O;
-                progressIndicator,  elementIdentifier = '1E'O;
-                user_user,          elementIdentifier = '7E'O ) "}
-
-// 9.3.1.2 Alerting (MS->NW)
-//****************************************************************************
-type record PDU_ML3_Alerting_MS_NW
-{
-  BIT6  messageType, // B'..000001 (Alerting)
-  BIT2  nsd,
-  Facility_TLV          facility            optional,
-  User_user_TLV         user_user           optional,
-  SS_VersionIndicator   ss_VersionIndicator optional
-} with { variant "TAG (
-                facility,            elementIdentifier = '1C'O;
-                user_user,           elementIdentifier = '7E'O;
-                ss_VersionIndicator, elementIdentifier = '7F'O ) "};
-                
-// 9.3.2 Call confirmed (MS->NW)
-//****************************************************************************
-type record PDU_ML3_CallConfirmed
-{
-  BIT6  messageType, //    '001000'CallConfirmed  B
-  BIT2  nsd,
-  RepeatIndicator       repeatIndicator     optional, // successive selection:
-                                              //only present also  if
-                                              //BC1&BC2 are present
-                                              // H'circular  D1
-                                              // H'D3 sequential
-  BearerCapability_TLV  bearerCapability1   optional,
-  BearerCapability_TLV  bearerCapability2   optional,
-  ML3_Cause_TLV         cause               optional,
-  CallControlCapabilities cC_Capabilities   optional,
-  StreamIdentifier      streamIdentifier    optional,
-  SupportedCodecList    supportedCodecs     optional
-} with { variant "TAG (
-                repeatIndicator,   elementIdentifier = '1101'B;
-                bearerCapability1, elementIdentifier = '04'O;
-                bearerCapability2, elementIdentifier = '04'O;
-                cause,             elementIdentifier = '08'O;
-                cC_Capabilities,   elementIdentifier = '15'O;
-                streamIdentifier,  elementIdentifier = '2D'O;) "};
-
-// 9.3.3 Call Proceeding (NW->MS) 
-//****************************************************************************
-type record PDU_ML3_CallProceeding
-{
-  BIT6  messageType, //   '000010'CallProceeding  B
-  BIT2  nsd,
-  RepeatIndicator       repeatIndicator     optional, //successive selection:
-                                              //only present also  if
-                                              //BC1&BC2 are present
-                                              // H'circular  D1
-                                              // H'D3 sequential
-  BearerCapability_TLV  bearerCapability1   optional,
-  BearerCapability_TLV  bearerCapability2   optional,
-  Facility_TLV          facility            optional,
-  ProgressIndicator_TLV progressIndicator   optional,
-  PriorityLevel_ML3     priorityGranted     optional,
-  NetworkCallControlCapabilities  networkCCCapabilities optional //10.5.4.29
-} with { variant "TAG (
-                repeatIndicator,   elementIdentifier = '1101'B;
-                bearerCapability1, elementIdentifier = '04'O;
-                bearerCapability2, elementIdentifier = '04'O;
-                facility,          elementIdentifier = '1C'O;
-                progressIndicator, elementIdentifier = '1E'O;
-                priorityGranted,   elementIdentifier = '1000'B;
-                networkCCCapabilities,  elementIdentifier = '2F'O;) "};
-
-// 9.3.4 Congestion Control (NW->MS) 
-//****************************************************************************
-type record PDU_ML3_CongestionControl
-{
-  BIT6  messageType, //   '111001'B CongestionControl
-  BIT2  nsd,
-  CongestionLevelV      congestionLevel,
-  BIT4                  spare_4, 
-  ML3_Cause_TLV         cause               optional
- } with { variant "TAG ( cause, elementIdentifier = '08'O )"};
-
-
-// 9.3.5 Connect
-//**************************************************************************** 
-// 9.3.5.1 Connect (NW->MS)
-type record PDU_ML3_Connect_NW_MS
-{
-  BIT6  messageType, // '000111'B (Connect)
-  BIT2  nsd,
-  Facility_TLV          facility            optional,
-  ProgressIndicator_TLV progressIndicator   optional,
-  ConnectedNumber       connectedNumber     optional,
-  ConnectedSubAddress   connectedSubAddress optional,
-  User_user_TLV         user_user           optional
-} with { variant "TAG (
-                facility,            elementIdentifier = '1C'O;
-                progressIndicator,   elementIdentifier = '1E'O;
-                connectedNumber,     elementIdentifier = '4C'O;
-                connectedSubAddress, elementIdentifier = '4D'O;
-                user_user,           elementIdentifier = '7E'O ) "};
-
-// 9.3.5.2 Connect (MS->NW)
-
-type record PDU_ML3_Connect_MS_NW 
-{
-  BIT6  messageType, // '000111'B (Connect)
-  BIT2  nsd,
-  Facility_TLV          facility            optional,
-  ConnectedSubAddress   connectedSubAddress optional,
-  User_user_TLV         user_user           optional,
-  SS_VersionIndicator   ss_VersionIndicator optional,
-  StreamIdentifier      streamIdentifier    optional
-} with { variant "TAG (
-                facility,              elementIdentifier = '1C'O;
-                connectedSubAddress,   elementIdentifier = '4D'O;
-                user_user,             elementIdentifier = '7E'O;
-                ss_VersionIndicator,   elementIdentifier = '7F'O;
-                streamIdentifier,      elementIdentifier = '2D'O ) "};
-                
-// 9.3.6 Connect Ack (NW->MS) (MS->NW)
-//****************************************************************************                      
-type record PDU_ML3_ConnectAck
-{
-  BIT6  messageType, // '001111'B (ConnectAck)
-  BIT2  nsd
-};
-
-// 9.3.7 Disconnect
-//****************************************************************************  
-// 9.3.7.1 Disconnect (NW-MS)
-type record PDU_ML3_Disconnect_NW_MS
-{
-  BIT6  messageType, //   '100101'B  (Disconnect)
-  BIT2  nsd,
-  ML3_Cause_LV          cause,
-  Facility_TLV          facility            optional,
-  ProgressIndicator_TLV progressIndicator   optional,
-  User_user_TLV         user_user           optional,
-  AllowedActions        allowedActions      optional
-} with { variant "TAG (
-                facility,           elementIdentifier = '1C'O;
-                progressIndicator,  elementIdentifier = '1E'O;
-                user_user,          elementIdentifier = '7E'O;
-                allowedActions,     elementIdentifier = '7B'O ) "};
-
-// 9.3.7.2 Disconnect (MS->NW)
-type record PDU_ML3_Disconnect_MS_NW
-{
-  BIT6  messageType,  //    '100101'B (Disconnect)
-  BIT2  nsd,
-  ML3_Cause_LV          cause,
-  Facility_TLV          facility            optional,
-  User_user_TLV         user_user           optional,
-  SS_VersionIndicator   ss_VersionIndicator optional
-} with { variant "TAG (
-                facility,             elementIdentifier = '1C'O;
-                user_user,            elementIdentifier = '7E'O;
-                ss_VersionIndicator,  elementIdentifier = '7F'O ) "};
-
-// 9.3.8 Emergency Setup (MS->NW )
-//****************************************************************************  
-type record PDU_ML3_EmergencySetup
-{
-  BIT6  messageType,  // '001110'B
-  BIT2  nsd, 
-  BearerCapability_TLV  bearerCapability    optional,
-  StreamIdentifier      streamIdentifier    optional,
-  SupportedCodecList    supportedCodecs     optional,
-  ServiceCategory       emergencyCategory   optional
-} with { variant "TAG ( 
-     bearerCapability,  elementIdentifier = '04'O;
-     streamIdentifier,  elementIdentifier = '2D'O; 
-     emergencyCategory, elementIdentifier = '2E'O; ) "};
-     
-// 9.3.9.1 (NW->MS) and 9.3.9.2 (MS->NW) Facility (CallControl!!!)
-//****************************************************************************
-type record PDU_ML3_Facility
-{
-  BIT6  messageType, // facilityIEI
-  BIT2  nsd,
-  Facility_LV           facility, //10.5.4.15
-  SS_VersionIndicator   ss_version          optional // only for MS->NW
-} with { variant "TAG (  ss_version,  elementIdentifier = '7F'O ) "};  
-
-//9.3.10 Hold (MS->NW)
-//****************************************************************************
-type record PDU_ML3_Hold
-{
-  BIT6  messageType,    //    '011000'Hold  B
-  BIT2  nsd
-};
-
-//9.3.11 Hold Acknowledge (NW->MS)
-//****************************************************************************
-type record PDU_ML3_HoldAcknowledge
-{
-  BIT6  messageType,    //   '011001'B   Acknowledge  Hold
-  BIT2  nsd
-};
-
-//9.3.12 Hold Reject (NW->MS)
-//****************************************************************************
-type record PDU_ML3_HoldReject
-{
-  BIT6  messageType, //'011010'B
-  BIT2  nsd,
-  ML3_Cause_LV          cause
-};
-
-//9.3.13 Modify (MS->NW) (NW->MS)
-//****************************************************************************
-type record PDU_ML3_Modify
-{
-  BIT6  messageType, //'010111'B
-  BIT2  nsd,
-  BearerCapability_LV       bearerCapability,
-  LowLayerCompatibility     lowLayerCompatibility     optional,
-  HighLayerCompatibility    highLayerCompatibility    optional,
-  ReverseCallSetupDirection reverseCallSetupDirection optional,
-  NetworkInitiatedServiceUpgradeIndicator  networkInitiatedServiceUpgradeIndicator  optional 
-} with { variant "TAG (
-      lowLayerCompatibility,     elementIdentifier = '7C'O;
-      highLayerCompatibility,    elementIdentifier = '7D'O;
-      reverseCallSetupDirection, elementIdentifier = 'A3'O;
-      networkInitiatedServiceUpgradeIndicator,     elementIdentifier = 'A4'O ) "};  
-
-//9.3.14 Modify Complete (MS->NW) (NW->MS)
-//****************************************************************************
-type record PDU_ML3_ModifyComplete
-{
-  BIT6  messageType, //'011111'B
-  BIT2  nsd,
-  BearerCapability_LV       bearerCapability,
-  LowLayerCompatibility     lowLayerCompatibility     optional,
-  HighLayerCompatibility    highLayerCompatibility    optional,
-  ReverseCallSetupDirection reverseCallSetupDirection optional
-} with { variant "TAG (
-      lowLayerCompatibility,     elementIdentifier = '7C'O;
-      highLayerCompatibility,    elementIdentifier = '7D'O;
-      reverseCallSetupDirection, elementIdentifier = 'A3'O;) "}; 
-      
-//9.3.15 Modify Reject (MS->NW) (NW->MS)
-//****************************************************************************
-type record PDU_ML3_ModifyReject
-{
-  BIT6  messageType, //'010011'B
-  BIT2  nsd,
-  BearerCapability_LV     bearerCapability,
-  ML3_Cause_LV            cause,
-  LowLayerCompatibility   lowLayerCompatibility     optional,
-  HighLayerCompatibility  highLayerCompatibility    optional
-} with { variant "TAG (
-      lowLayerCompatibility,     elementIdentifier = '7C'O;
-      highLayerCompatibility,    elementIdentifier = '7D'O;) "}; 
-
-//9.3.16 Notify (MS->NW) (NW->MS)
-//****************************************************************************
-type record PDU_ML3_Notify
-{
-  BIT6  messageType, //'111110'B
-  BIT2  nsd,
-  NotificationIndicator notificationIndicator
-};
-    
-// 9.3.17 Progress (NW->MS)
-//****************************************************************************
-type record PDU_ML3_Progress
-{
-  BIT6  messageType,    //  '000011'Progress  B
-  BIT2  nsd,
-  ProgressIndicator_LV  progressIndicator,
-  User_user_TLV         user_user             optional      
-} with { variant "TAG (user_user, elementIdentifier = '7E'O; ) "};
-
-// 9.3.17a CC Establishment (NW->MS)
-//****************************************************************************
-type record PDU_ML3_CC_Establishment
-{
-  BIT6  messageType,    //  '000100'
-  BIT2  nsd,
-  SetupContatinerCCBS_LV  container  
-}
-
-// 9.3.17b CC Establishment Confirmed (MS->NW)
-//****************************************************************************
-type record PDU_ML3_CC_EstablishmentConf
-{
-  BIT6  messageType,    //  'CC_EstablishmentConf'
-  BIT2  nsd,
-  RepeatIndicator       repeatIndicator     optional,
-  BearerCapability_TLV  bearerCapability1,
-  BearerCapability_TLV  bearerCapability2   optional,    
-  ML3_Cause_TLV         cause               optional,
-  SupportedCodecList    supportedCodecs     optional
-} with { variant "TAG (
-                repeatIndicator,    elementIdentifier = '1101'B;
-                bearerCapability2,  elementIdentifier = '04'O;
-                cause,              elementIdentifier = '08'O; ) "};
-
-// 9.3.18.1 Release (NW->MS)
-//****************************************************************************
-type record PDU_ML3_Release_NW_MS 
-{
-  BIT6  messageType, //    '101101'Release  B
-  BIT2  nsd,
-  ML3_Cause_TLV         cause               optional,
-  ML3_Cause_TLV         secondCause         optional,
-  Facility_TLV          facility            optional,
-  User_user_TLV         user_user           optional
-} with { variant "TAG (
-                cause,        elementIdentifier = '08'O;
-                secondCause,  elementIdentifier = '08'O;
-                facility,     elementIdentifier = '1C'O;
-                user_user,    elementIdentifier = '7E'O ) "};
-
-// 9.3.18.2 Release (MS->NW)
-//****************************************************************************
-type record PDU_ML3_Release_MS_NW
-{
-  BIT6  messageType, //    '101101'Release  B
-  BIT2  nsd,
-  ML3_Cause_TLV         cause               optional,
-  ML3_Cause_TLV         secondCause         optional,
-  Facility_TLV          facility            optional,
-  User_user_TLV         user_user           optional,
-  SS_VersionIndicator   ss_VersionIndicator optional
-} with { variant "TAG (
-                cause,                elementIdentifier = '08'O;
-                secondCause,          elementIdentifier = '08'O;
-                facility,             elementIdentifier = '1C'O;
-                user_user,            elementIdentifier = '7E'O;
-                ss_VersionIndicator,  elementIdentifier = '7F'O ) "};
-
-// 9.3.18a Recall (CCBS) (NW->MS)
-//****************************************************************************
-type record PDU_ML3_Recall
-{
-  BIT6  messageType, //    '001011'Recall    
-  BIT2  nsd,
-  RecallType            recallType,
-  Facility_LV           facility
-};
-
-// 9.3.19.1 Release Complete (NW->MS)
-//****************************************************************************
-type record PDU_ML3_ReleaseComplete_NW_MS
-{
-  BIT6  messageType, //    '101010'B ReleaseComplete  
-  BIT2  nsd,
-  ML3_Cause_TLV         cause               optional,
-  Facility_TLV          facility            optional,
-  User_user_TLV         user_user           optional
-} with { variant "TAG (
-                cause,      elementIdentifier = '08'O;
-                facility,   elementIdentifier = '1C'O ;
-                user_user,  elementIdentifier = '7E'O ) "};
-
-// 9.3.19.2 Release Complete (MS->NW)
-//****************************************************************************
-type record PDU_ML3_ReleaseComplete_MS_NW
-{
-  BIT6  messageType, //   '101010'B  (ReleaseComplete)
-  BIT2  nsd,
-  ML3_Cause_TLV         cause               optional,
-  Facility_TLV          facility            optional,
-  User_user_TLV         user_user           optional,
-  SS_VersionIndicator   ss_VersionIndicator optional
-} with { variant "TAG (
-                cause,                elementIdentifier = '08'O;
-                facility,             elementIdentifier = '1C'O;
-                user_user,            elementIdentifier = '7E'O;
-                ss_VersionIndicator,  elementIdentifier = '7F'O ) "};
-
-//9.3.20 Retrieve (MS->NW)
-//****************************************************************************
-type record PDU_ML3_Retrieve
-{
-  BIT6  messageType, //'011100'B
-  BIT2  nsd
-};
-
-//9.3.21 Retrieve Acknowledge (NW->MS)
-//****************************************************************************
-type record PDU_ML3_RetrieveAck
-{
-  BIT6  messageType, //'011101'B
-  BIT2  nsd
-};
-
-//9.3.22 Retrieve Reject (NW->MS)
-//****************************************************************************
-type record PDU_ML3_RetrieveRej
-{
-  BIT6  messageType, //'011110'B
-  BIT2  nsd,
-  ML3_Cause_LV cause
-};
-
-// 9.3.23.1  Setup NW->MS 
-//****************************************************************************
-type record PDU_ML3_Setup_NW_MS
-{
-  BIT6  messageType,   // '000101'B  (Setup)
-  BIT2  nsd,
-  RepeatIndicator       bcRepeatIndicator       optional, // successive selection:
-                                                 // only present also  if
-                                                 // BC1&BC2 are present
-                                                 // H'circular  D1
-                                                 // H'D3 sequential
-  BearerCapability_TLV  bearerCapability1        optional,
-  BearerCapability_TLV  bearerCapability2        optional,
-  Facility_TLV          facility                 optional,
-  ProgressIndicator_TLV progressIndicator        optional,
-  ML3_Signal            signal                   optional,
-  CallingPartyBCD_Number callingPartyBCD_Number  optional,
-  CallingPartySubAddress callingPartySubAddress  optional,
-  CalledPartyBCD_Number calledPartyBCD_Number    optional,
-  CalledPartySubAddress calledPartySubAddress    optional,
-  RedirectingPartyBCDNumberTLV   redirectingPartyBCDNumber   optional,
-  RedirectingPartySubaddressTLV  redirectingPartySubaddress  optional,
-  RepeatIndicator       llc_RepeatIndicator      optional, // H'circular  D1
-                                                            // H'D3 sequential
-  LowLayerCompatibility lowLayerCompatibility1   optional,
-  LowLayerCompatibility lowLayerCompatibility2   optional,
-  RepeatIndicator       hlc_RepeatIndicator      optional, // H'circular  D1
-                                                            // H'D3 sequential
-  HighLayerCompatibility highLayerCompatibility1 optional,
-  HighLayerCompatibility highLayerCompatibility2 optional,
-  User_userShort        user_user                optional,
-  PriorityLevel_ML3     priority                 optional,
-  AlertingPattern       alert                    optional, //10.5.4.26
-  NetworkCallControlCapabilities  networkCCCapabilities optional, //10.5.4.29
-  CauseofNoCli          causeofNoCli             optional, //10.5.4.30
-  BackupBearerCapacity  backupBearerCapacity     optional  //10.5.4.4a
-} with { variant "TAG (
-                bcRepeatIndicator,        elementIdentifier = '1101'B;
-                bearerCapability1,        elementIdentifier = '04'O;
-                bearerCapability2,        elementIdentifier = '04'O;
-                facility,                 elementIdentifier = '1C'O;
-                progressIndicator,        elementIdentifier = '1E'O;
-                signal,                   elementIdentifier = '34'O;
-                callingPartyBCD_Number,   elementIdentifier = '5C'O;
-                callingPartySubAddress,   elementIdentifier = '5D'O;
-                calledPartyBCD_Number,    elementIdentifier = '5E'O;
-                calledPartySubAddress,    elementIdentifier = '6D'O;
-                redirectingPartyBCDNumber,   elementIdentifier = '74'O;               
-                redirectingPartySubaddress,  elementIdentifier = '75'O; 
-                llc_RepeatIndicator,      elementIdentifier = '1101'B;
-                lowLayerCompatibility1,   elementIdentifier = '7C'O;
-                lowLayerCompatibility2,   elementIdentifier = '7C'O;
-                hlc_RepeatIndicator,      elementIdentifier = '1101'B;
-                highLayerCompatibility1,  elementIdentifier = '7D'O;
-                highLayerCompatibility2,  elementIdentifier = '7D'O;
-                user_user,                elementIdentifier = '7E'O;
-                priority,                 elementIdentifier = '1000'B;
-                alert,                    elementIdentifier = '19'O;
-                networkCCCapabilities,    elementIdentifier = '2F'O;
-                causeofNoCli,             elementIdentifier = '3A'O;
-                backupBearerCapacity,     elementIdentifier = '41'O ) "}; 
-                
-// 9.3.23.2 Setup MS->NW
-//****************************************************************************
-type record PDU_ML3_Setup_MS_NW
-{
-  BIT6  messageType,   //     '000101'B  (Setup)
-  BIT2  nsd,
-  RepeatIndicator         bcRepeatIndicator       optional, // successive selection:
-                                                 // only present also  if
-                                                 // BC1&BC2 are present
-                                                 // H'circular  D1
-                                                 // H'D3 sequential
-  BearerCapability_TLV    bearerCapability1,        //mandatory!!
-  BearerCapability_TLV    bearerCapability2       optional,
-  Facility_TLV            facility                optional,
-  CallingPartySubAddress  callingPartySubAddress  optional,
-  CalledPartyBCD_Number   calledPartyBCD_Number,  //mandatory!!
-  CalledPartySubAddress   calledPartySubAddress   optional,
-  RepeatIndicator         llc_RepeatIndicator     optional, // H'circular  D1
-                        // H'D3 sequential
-  LowLayerCompatibility   lowLayerCompatibility1  optional,
-  LowLayerCompatibility   lowLayerCompatibility2  optional,
-  RepeatIndicator         hlc_RepeatIndicator     optional, // H'circular  D1
-                          // H'D3 sequential
-  HighLayerCompatibility  highLayerCompatibility1 optional,
-  HighLayerCompatibility  highLayerCompatibility2 optional,
-  User_userShort          user_user               optional,
-  SS_VersionIndicator     ss_VersionIndicator     optional,
-  CLIR                    clir_Suppression        optional, // H'A1
-  CLIR                    clir_Invocation         optional, // H'A2
-  CallControlCapabilities cC_Capabilities         optional,
-  Facility_TLV            facility_ccbs1          optional,
-  Facility_TLV            facility_ccbs2          optional,
-  StreamIdentifier        streamIdentifier        optional,
-  SupportedCodecList      supportedCodecs         optional,
-  Redial                  redial                  optional
-} with { variant "TAG (
-                bcRepeatIndicator,        elementIdentifier = '1101'B;
-                //bearerCapability1,        elementIdentifier = '04'O;
-                bearerCapability2,        elementIdentifier = '04'O;
-                facility,                 elementIdentifier = '1C'O;
-                callingPartySubAddress,   elementIdentifier = '5D'O;
-                //calledPartyBCD_Number,    elementIdentifier = '5E'O;
-                calledPartySubAddress,    elementIdentifier = '6D'O;
-                llc_RepeatIndicator,      elementIdentifier = '1101'B;
-                lowLayerCompatibility1,   elementIdentifier = '7C'O;
-                lowLayerCompatibility2,   elementIdentifier = '7C'O;
-                hlc_RepeatIndicator,      elementIdentifier = '1101'B;
-                highLayerCompatibility1,  elementIdentifier = '7D'O;
-                highLayerCompatibility2,  elementIdentifier = '7D'O;
-                user_user,                elementIdentifier = '7E'O;
-                ss_VersionIndicator,      elementIdentifier = '7F'O;
-                clir_Suppression,         elementIdentifier = 'A1'O;
-                clir_Invocation,          elementIdentifier = 'A2'O;
-                cC_Capabilities,          elementIdentifier = '15'O;
-                facility_ccbs1,           elementIdentifier = '1D'O;
-                facility_ccbs2,           elementIdentifier = '1B'O;
-                streamIdentifier,         elementIdentifier = '2D'O;
-                redial,                   elementIdentifier = 'A3'O; ) "};
-
-//9.3.23a StartCC  (MS->NW)
-//****************************************************************************
-type record PDU_ML3_StartCC
-{
-  BIT6  messageType, //''B;
-  BIT2  nsd,
-  CallControlCapabilities cC_Capabilities optional
-} with { variant "TAG (cC_Capabilities, elementIdentifier = '15'O;) "};
-
-// 9.3.24  Start DTMF (MS->NW)
-//****************************************************************************
-type record PDU_ML3_StartDTMF
-{
-  BIT6  messageType, //'110101'B;
-  BIT2  nsd,
-  KeypadFacility        keypadFacility  
-};
-
-// 9.3.25  Start DTMF Acknowledge (NW->MS)
-//****************************************************************************
-type record PDU_ML3_StartDTMFAck
-{
-  BIT6  messageType, //'110110'B;
-  BIT2  nsd,
-  KeypadFacility        keypadFacility  
-};
-
-// 9.3.26  Start DTMF Reject (NW->MS)
-//****************************************************************************
-type record PDU_ML3_StartDTMFRej
-{
-  BIT6  messageType, //'110111'B;
-  BIT2  nsd,
-  ML3_Cause_LV          cause    
-};
-
-// 9.3.27  Status (NW->MS) (MS->NW)
-//****************************************************************************
-type record PDU_ML3_Status
-{
-  BIT6  messageType, //'111101'B;   
-  BIT2  nsd,
-  ML3_Cause_LV          cause,
-  CallState_V           callState,
-  AuxiliaryStates_TLV   auxiliaryStates optional //'24'O
-} with { variant "TAG (auxiliaryStates,elementIdentifier ='24'O ) " };
-
-// 9.3.28  Status enquiry (NW->MS) (MS->NW)
-//****************************************************************************
-type record PDU_ML3_StatusEnquiry
-{
-  BIT6  messageType, //'110100'B;   
-  BIT2  nsd
-};
-
-// 9.3.29 Stop DTMF (MS->NW)
-//****************************************************************************
-type record PDU_ML3_StopDTMF
-{
-  BIT6  messageType, //'110001'B;   
-  BIT2  nsd
-};
-
-// 9.3.30 Stop DTMF Ack (NW->MS)
-//****************************************************************************
-type record PDU_ML3_StopDTMFAck
-{
-  BIT6  messageType, //'110010'B;   
-  BIT2  nsd
-};
-
-// 9.3.31.1   User Information 
-//****************************************************************************
-type record PDU_ML3_UserInformation
-{
-  BIT6  messageType, //'010000'B;
-  BIT2  nsd,
-  User_user_LV          user_user,
-  OCT1                  moreData optional 
-};
-
-
-// **************************************************************************
-// *  9.3 Call Control Messages (MS->MSC)
-//  * Ref:(24.008/Table 9.54 (order) and Table 10.3(messageType values) )
-// **************************************************************************
-type union PDU_ML3_CC_MS_NW
-{
-  PDU_ML3_Alerting_MS_NW           alerting_MS_NW, //Call establishment
-  PDU_ML3_CallConfirmed            callConfirmed,
-  PDU_ML3_Connect_MS_NW            connect_MS_NW,
-  PDU_ML3_ConnectAck               connectAck,
-  PDU_ML3_EmergencySetup           emergencySetup, 
-  PDU_ML3_CC_EstablishmentConf     cc_EstablishmentConf, 
-  PDU_ML3_StartCC                  startCC,
-  PDU_ML3_Setup_MS_NW              setup_MS_NW,
-
-  PDU_ML3_Modify                   modify,         //call information phase msg
-  PDU_ML3_ModifyComplete           modifyComplete,
-  PDU_ML3_ModifyReject             modifyReject,
-  PDU_ML3_UserInformation          userInformation,
-
-  PDU_ML3_Disconnect_MS_NW         disconnect_MS_NW,//call clearing
-  PDU_ML3_Release_MS_NW            release_MS_NW,
-  PDU_ML3_ReleaseComplete_MS_NW    releaseComplete_MS_NW,
-
-  PDU_ML3_Facility                 facility,//for Suppl.Service contr.
-  PDU_ML3_Hold                     hold,
-  PDU_ML3_Retrieve                 retrieve, 
-
-  PDU_ML3_Notify                   notify,//misc
-  PDU_ML3_StartDTMF                startDTMF,
-  PDU_ML3_Status                   status,
-  PDU_ML3_StatusEnquiry            statusEnquiry,
-  PDU_ML3_StopDTMF                 stopDTMF
-} with { variant "TAG (
-                alerting_MS_NW,         messageType ='000001'B;//call establish
-                callConfirmed,          messageType ='001000'B;
-                connect_MS_NW,          messageType ='000111'B;
-                connectAck,             messageType ='001111'B;
-                emergencySetup,         messageType ='001110'B;
-                cc_EstablishmentConf,   messageType ='000110'B; 
-                startCC,                messageType ='001001'B;          
-                setup_MS_NW,            messageType ='000101'B;
-
-                modify,                 messageType ='010111'B;//call inf.ph.msg
-                modifyComplete,         messageType ='011111'B;
-                modifyReject,           messageType ='010011'B;
-                userInformation,        messageType ='010000'B;
-
-                disconnect_MS_NW,       messageType ='100101'B;//call clearing
-                release_MS_NW,          messageType ='101101'B;                
-                releaseComplete_MS_NW,  messageType ='101010'B;
-                                
-                facility,               messageType ='111010'B;//messages for SS
-                hold,                   messageType ='011000'B;
-                retrieve,               messageType ='011100'B;                                                  
-
-                notify,                 messageType ='111110'B; //misc    
-                startDTMF,              messageType ='110101'B;
-                status,                 messageType ='111101'B;
-                statusEnquiry,          messageType ='110100'B;
-                stopDTMF,               messageType ='110001'B;
-          )" };
-
-// ***************************************************************************
-// *   9.3 Call Control Messages MSC -> MS (24.008/Table 9.54 and Table 10.3)
-// ***************************************************************************
-type union PDU_ML3_CC_NW_MS
-{
-  PDU_ML3_Alerting_NW_MS           alerting_NW_MS, //call establish
-  PDU_ML3_CallConfirmed            callConfirmed,
-  PDU_ML3_CallProceeding           callProceeding,
-  PDU_ML3_Connect_NW_MS            connect_NW_MS,
-  PDU_ML3_ConnectAck               connectAck,
-  PDU_ML3_Progress                 progress,
-  PDU_ML3_CC_Establishment         cc_Establishment, 
-  //PDU_ML3_Recall                   recall,    
-  PDU_ML3_Setup_NW_MS              setup_NW_MS,
-
-  PDU_ML3_Modify                   modify,         //call information phase msg
-  PDU_ML3_ModifyComplete           modifyComplete,
-  PDU_ML3_ModifyReject             modifyReject,
-  PDU_ML3_UserInformation          userInformation,
-
-  PDU_ML3_Disconnect_NW_MS         disconnect_NW_MS,
-  PDU_ML3_Release_NW_MS            release_NW_MS,
-  PDU_ML3_ReleaseComplete_NW_MS    releaseComplete_NW_MS,
-
-  PDU_ML3_Facility                 facility, //for Suppl.Service contr.
-  PDU_ML3_HoldAcknowledge          holdAcknowledge,
-  PDU_ML3_HoldReject               holdReject,
-  PDU_ML3_RetrieveAck              retrieveAck,
-  PDU_ML3_RetrieveRej              retrieveRej,
-
-  PDU_ML3_CongestionControl        congestionControl, //misc
-  PDU_ML3_Notify                   notify,
-  PDU_ML3_StartDTMFAck             startDTMFAck,
-  PDU_ML3_StartDTMFRej             startDTMFRej,
-  PDU_ML3_Status                   status,
-  PDU_ML3_StatusEnquiry            statusEnquiry,
-  PDU_ML3_StopDTMFAck              stopDTMFAck
-} with { variant "TAG (
-                alerting_NW_MS,         messageType ='000001'B;//Call establishment
-                callConfirmed,          messageType ='001000'B;
-                callProceeding,         messageType ='000010'B;
-                connect_NW_MS,          messageType ='000111'B;
-                connectAck,             messageType ='001111'B;
-                progress,               messageType ='000011'B;
-                cc_Establishment,       messageType ='000100'B;
-                //recall,                 messageType ='001011'B;                  
-                setup_NW_MS,            messageType ='000101'B;
-
-                modify,                 messageType ='010111'B;//call inf.ph.msg
-                modifyComplete,         messageType ='011111'B;
-                modifyReject,           messageType ='010011'B;
-                userInformation,        messageType ='010000'B;
-
-                disconnect_NW_MS,       messageType ='100101'B;//call clearing
-                release_NW_MS,          messageType ='101101'B;             
-                releaseComplete_NW_MS,  messageType ='101010'B;
-                
-                facility,               messageType ='111010'B;//for SS contr.
-                holdAcknowledge,        messageType ='011001'B;
-                holdReject,             messageType ='011010'B;
-                retrieveAck,            messageType ='011101'B;
-                retrieveRej,            messageType ='011110'B;
-                
-                congestionControl,      messageType ='111001'B;//misc
-                notify,                 messageType ='111110'B;               
-                startDTMFAck,           messageType ='110110'B;
-                startDTMFRej,           messageType ='110111'B;
-                status,                 messageType ='111101'B;
-                statusEnquiry,          messageType ='110100'B;
-                stopDTMFAck,            messageType ='110010'B;
-              )"
-};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CommonIE_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CommonIE_Types.ttcn
deleted file mode 100644
index 99e90ef..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CommonIE_Types.ttcn
+++ /dev/null
@@ -1,680 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_CommonIE_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.008 v13.4.0
-
-module  MobileL3_CommonIE_Types {
-
-import from General_Types all;
-
-// This type is a container for all necessary MS related parameters
-type record MS_parameters
-{
-  integer       imsi_length,  //in
-  BIT4          imsi_firstdigit,
-  octetstring   imsi,
-  octetstring   number,
-  integer       SCCP_connId, //connection Id of currently used SCCP connection
-  integer       L3_NSD,  // actual value of L3 NSD
-  BIT1          tiFlag   // '0'B for call originator, '1' for call destination
-  // this is an example how to set the value
-  // tsp_imsi_1_firstdigit := '0010'B
-  // tsp_imsi_1 :=  '26200103000015'O;   // '262021030000051'O;
-  // tsp_calledPartyBCD_Number_digits := '7112300020'O  ;   // '1721030002'O
-}
-
-// Use these Types instead of repeating it !
-
-type record Type1_V
-{
-  BIT4  dummy,
-  BIT4  valuePart
-};
-
-type record Type1_TV
-{
-  BIT4  valuePart,
-  BIT4  elementIdentifier
-};
-
-type record Type2
-{
-  OCT1  elementIdentifier
-};
-
-type record Type3_V
-{
-  OCTN  valuePart
-};
-
-type record Type3_TV
-{
-  OCT1  elementIdentifier,
-  OCTN  valuePart
-};
-
-type record Type4_LV
-{
-  LIN1  lengthIndicator,
-  OCTN  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-
-type record Type4_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  OCTN  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-
-///////////////////////////////////////
-//   IE Type definitions
-///////////////////////////////////////
-
-type record ML3_NotifySS_Arg
-{
-  OCT1  sequenceTag,
-  OCT1  sequenceLength,
-  OCT1  ssCodeTag,
-  OCT1  ssCodeLength,
-  OCT1  ssCodeValue,
-  OCT1  ssIndicatorTag,
-  OCT1  ssIndicatorLength,
-  OCT1  ssIndicatorValue
-};
-
-
-//============================================================================
-// 10.5.1 Common Information elements
-//============================================================================
-
-// 10.5.1.1 Cell Identity
-type record CellIdentityTV
-{
-  OCT1  elementIdentifier,
-  OCT2  cIvalue
-};
-
-// 10.5.1.2 CipheringKeySequenceNumber
-type record CipheringKeySequenceNumberTV
-{
-  CipheringKeySequenceNumberV  keySequence,
-  BIT4                         elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1000'B)"; };
-
-type record CipheringKeySequenceNumberV
-{
-  BIT3               keySequence,
-  BIT1               spare
-};
-
-//24.008/10.5.1.3 Location Area Identification
-type record LocationAreaIdentification_V
-{
-  OCT3  mcc_mnc,
-  OCT2  lac
-};
-
-type record LocationAreaIdentification_TV
-{
-  OCT1  elementIdentifier,
-  OCT3  mcc_mnc,
-  OCT2  lac
-};
-
-// 24.008/ 10.5.1.4 Mobile Identity
-type record MobileIdentityTLV
-{
-  BIT7               elementIdentifier,
-  BIT1               spare1,
-  MobileIdentityLV   mobileIdentityLV
-};
-
-type record MobileIdentityLV
-{
-  LIN1               lengthIndicator,
-  MobileIdentityV    mobileIdentityV
-} with { variant (lengthIndicator) "LENGTHTO (mobileIdentityV)"};
-
-type record MobileIdentityV
-{
-  BIT3                         typeOfIdentity,
-  OddEvenInd_Identity          oddEvenInd_identity
-} with { variant (oddEvenInd_identity) "CROSSTAG
-  (
-  imei,                     typeOfIdentity ='010'B;
-  imsi,                     typeOfIdentity ='001'B;
-  imei_sv,                  typeOfIdentity ='011'B;
-  tmsi_ptmsi,               typeOfIdentity ='100'B;
-  tmgi_and_MBMS_SessionID,  typeOfIdentity ='101'B;
-  no_identity,              typeOfIdentity ='000'B;
-  )"};
-
-
-type union OddEvenInd_Identity
-{
-  IMSI_L3                  imsi,  // avoid name conflict with RANAP
-  IMEI_L3                  imei,     // avoid name conflict with RANAP
-  IMEI_SV                  imei_sv,
-  TMSI_PTMSI               tmsi_ptmsi,
-  TMGI_and_MBMS_SessionID  tmgi_and_MBMS_SessionID,
-  No_Identity              no_identity
-};
-
-type record IMSI_L3
-{
-  BIT1               oddevenIndicator,       // '1'B or '0'B
-  hexstring          digits  length(5..15),
-  BIT4               fillerDigit  optional   // B'1111, fillerDigit is present
-  // if oddevenIndicator=0
-} with { variant (fillerDigit) "PRESENCE (oddevenIndicator   = '0'B) ";};
-
-type record IMEI_L3
-{
-  BIT1               oddevenIndicator,   // '1'B
-  hexstring          digits  length(15)
-};
-
-type record TMSI_PTMSI
-{
-  BIT1               oddevenIndicator, // '0'B
-  BIT4               fillerDigit, // B'1111
-  OCT4               octets
-};
-
-type record IMEI_SV
-{
-  BIT1               oddevenIndicator,  // '0'B
-  hexstring          digits length(16),
-  BIT4               fillerDigit    // filler '1111'B
-};
-
-type record TMGI_and_MBMS_SessionID
-{
-  BIT1               oddevenIndicator,
-  BIT1               mCC_MNCIndicator,  // 1: present
-  BIT1               mBMS_SessionIdentityIndicator,  // 1: present
-  BIT2               spare,
-  OCT3               mBMS_ServiceID,
-  HEX1               mccDigit1,
-  HEX1               mccDigit2,
-  HEX1               mccDigit3,
-  HEX1               mncDigit3,
-  HEX1               mncDigit1,
-  HEX1               mncDigit2,
-  OCT1               mBMS_SessionIdentity
-}
-
-type record No_Identity
-{
-  BIT1               oddevenIndicator,  // '0'B (guessed)
-  hexstring          fillerDigits length(5) // length to be "3" if the GMM identification procedure is used
-};
-
-// 24.008/ 10.5.1.5 MobileStationClassmark1
-type record MobileStationClassmark1_TV
-{
-  OCT1   elementIdentifier, //'???'H
-  BIT3   rf_PowerCapability,
-  BIT1   a5_1,
-  BIT1   esind,
-  BIT2   revisionLevel,
-  BIT1   spare1_1
-};
-
-type record MobileStationClassmark1_V
-{
-  BIT3  rf_PowerCapability,
-  // class1 (000) (for GSM+DCS+PCS)
-  // class2 (001) (for GSM+DCS+PCS)
-  // class3 (010) (for GSM+DCS+PCS)
-  // class4 (011) (only for GSM)
-  // class5 (100) (only for GSM)
-  BIT1  a5_1,
-  // encryption algor. A5/available  1  (1)
-  // encryption algor. A5/1 available  not  (0)
-  BIT1  esind,
-  BIT2  revisionLevel,
-  BIT1  spare1_1
-};
-
-// 24.008/ 10.5.1.6 MobileStationClassmark2
-//4th octet:
-type record MobileStationClassmark2_oct4
-{
-  BIT1  fc, // '0'B no MS support of E/R_GSM
-  // '1'B      MS support of E/R_GSM
-  ////BIT2  spare1_2, // '00'B  removed by ethbaat
-  BIT1  vgcs,//'0'B no VGCS capability
-  //'1'B  VGCS capability and notifications wanted
-  BIT1  vbs, //'0'B no VBS capability,
-  //  '1'B VBS capability and notifications wanted
-  BIT1  sm_Capability, // '0'B SM capbility present  not
-  // '1'B SM capbility        present
-  BIT2 ss_ScreenIndicator,
-  // '00'B default value of phase1 (GSM+DCS) reserved or (PCS)
-  // '01'B capability of notation  ellipsis
-  // '10'B for future use
-  // '11'B for use  future
-  BIT1  ps_Capability, // 'x'B  ignored, received  if
-  BIT1  spare2_1   // '0'B
-};
-
-
-//5th octet ( Table 10.5.6a ):
-type record MobileStationClassmark2_oct5
-{
-  BIT1  a5_2,     // '0'B encryption algorithm A5/2 available not(0)
-  // '1'B encryption algorithm A5/available  2  (1)
-  BIT1  a5_3,     // '0'B encryption algorithm A5/3 available not(0)
-  // '1'B encryption algorithm A5/available  3  (1)
-  //removed by ethbaat: BIT5  spare3_5, //   '00000'B
-  BIT1  cmsp,
-  BIT1  solsa,
-  BIT1  ucs2,
-  BIT1  lcsva_cap,
-  BIT1  spare5_7,
-  BIT1  cm3       // '0'B  no additional capability info
-  // '1'B The MS supports options that are indicated in classmark 3 IE
-  //      (additional info  capability)
-};
-
-type record MobileStationClassmark2_LV
-{
-  LIN1  lengthIndicator, // '01'O..'03'O
-  BIT3  rf_PowerCapability, //        '000'B class1 (for GSM+DCS+PCS)
-  //        '001'B class2 (for GSM+DCS+PCS)
-  //        '010'B class3 (for GSM+DCS+PCS)
-  //        '011'class4  B  (only for GSM)
-  //        '100'class5  B  (only for GSM)
-  BIT1  a5_1, // '0'B encryption algorithm A5/1 available (0)
-  // '1'B encryption algorithm A5/1 not available  1  (1)
-  BIT1  esind,
-  // '0'B controlled early classmark sending option implemented not (0)
-  // '1'B controlled early classmark sending implemented option (1)
-  BIT2  revisionLevel, //   '00'B reserved for phase1 (GSM+DCS)
-  //   '00'B reserved for GSM phase 1 (PCS)
-  //   '01'B used by phase2 MSs  (GSM+DCS)
-  //   '01'B used by PCS1900 MSs  phase1  (PCS)
-  //   '10'B used by  MSs  R99  supporting
-  //   '11'B reserved for future use
-  BIT1  spare1_1, // '0'B
-  MobileStationClassmark2_oct4  mobileStationClassmark2_oct4    optional,
-  MobileStationClassmark2_oct5  mobileStationClassmark2_oct5    optional
-} with { variant (lengthIndicator) "LENGTHTO (rf_PowerCapability, a5_1, esind,
-  revisionLevel, spare1_1,
-  mobileStationClassmark2_oct4,
-  mobileStationClassmark2_oct5)"};
-
-type record MobileStationClassmark2_TLV
-{
-  OCT1                        elementIdentifier,
-  MobileStationClassmark2_LV  mobileStationClassmark2LV
-} with {
-  variant "PRESENCE (elementIdentifier = '11'O)";
-};
-
-
-
-//**********************************************************************
-// 24.008/ 10.5.1.6 5th octet ( Table 10.5.6a ):
-// almost the same as MobileStationClassmark2_LV, but
-// _TLV ie elementIdentifier is present
-// oct4 and oct5 is mandatory
-// The record name is inherited from (and used in) old test cases
-//**********************************************************************
-type record ClassmarkInformationType2_forUMTS
-{
-  OCT1  elementIdentifier,
-  //'33'O instead of '12'O (normal Classmark2)
-  LIN1  lengthIndicator,
-  //always '03'O (unlike normal ClassMark2, which can be 2 or 3)
-  BIT3  rf_PowerCapability,   //  '000'B class1 (for GSM+DCS+PCS)
-  //      '001'B class2 (for GSM+DCS+PCS)
-  //      '010'B class3 (for GSM+DCS+PCS)
-  //      '011'class4  B  (only for GSM)
-  //      '100'class5  B  (only for GSM)
-  BIT1  a5_1, //  '0'B encryption algorithm A5/1 available not (0)
-  //  '1'B encryption algorithm A5/available  1  (1)
-  BIT1  esind,
-  //'0'B controlled early classmark sending option implemented not (0)
-  //  '1'B controlled early classmark sending implemented  option  (1)
-  BIT2  revisionLevel, //  '00'B reserved for phase1 (GSM+DCS)
-  //  '00'reserved  B  (PCS)
-  //  '01'B used by phase2 MSs  (GSM+DCS)
-  //  '01'B used by PCS1900 MSs  phase1  (PCS)
-  BIT1  spare1_1, // '0'B
-  BIT1  fc, //         '0'B  no MS' support of E/R_GSM
-  //   '1'B       MS' support of E/R_GSM
-  BIT1  vgcs,//'0'B no VGCS capability
-  //'1'B  VGCS capability and notifications wanted
-  BIT1  vbs, //'0'B no VBS capability,
-  //  '1'B VBS capability and notifications wanted
-  BIT1  sm_Capability, //     '0'B SM capbility present  not
-  // '1'B SM capability     present
-  BIT2  ss_ScreenIndicator, //  '00'B default value of phase1 (GSM+DCS)
-  //  '00'reserved  B  (PCS)
-  //  '01'B capability of notation  ellipsis
-  //  '10'B for future use
-  //  '11'B for use  future
-  BIT1  ps_Capability, // '0'B or '1'B ignored, received  if
-  BIT1  spare2_1,  // '0'B,
-  BIT1  a5_2, // '0'B encryption algorithm A5/2 available  not  (0)
-  // '1'B encryption algorithm A5/available  2  (1)
-  BIT1  a5_3, // '0'B encryption algorithm A5/3 available  not  (0)
-  // '1'B encryption algorithm A5/available  3  (1)
-  //BIT5  spare3_5, // '00000'B
-  BIT1  cmsp,
-  BIT1  solsa,
-  BIT1  ucs2,
-  BIT1  lcsva_cap,
-  BIT1  spare5_7,
-  BIT1  cm3   // '0'B no additional capability info
-  // '1'B   additional info  capability
-} with { variant (lengthIndicator) "LENGTHTO (rf_PowerCapability, a5_1, esind,
-  revisionLevel, spare1_1, fc, vgcs, vbs,
-  sm_Capability, ss_ScreenIndicator,
-  ps_Capability, spare2_1, a5_2, a5_3,
-  //spare3_5,
-  cmsp,solsa,ucs2,lcsva_cap,spare5_7,
-  cm3)"};
-
-
-
-//24.008/ 10.5.1.7
-type record MobileStationClassmark3_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  OCTN  valuePart
-} with {
-  variant "PRESENCE (elementIdentifier = '20'O)"
-  variant (lengthIndicator) "LENGTHTO (valuePart)"
-};
-
-
-type record MobileStationClassmark3_LV
-{
-  LIN1  lengthIndicator,
-  OCTN  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-// used in: PDU_ML3_Setup_MSC_MS, PDU_ML3_CallProceeding,
-//          PDU_ML3_CMServiceRequest
-
-type record UTRACSGCellsReporting
-{
-  BIT1                  reportingofUTRANCSGCellsSupport
-} with {
-  variant "FIELDORDER(msb)"
-}
-
-type record VAMOSLevel
-{
-  BIT2                  vAMOSSupport
-} with {
-  variant "FIELDORDER(msb)"
-}
-
-//24.008/ 10.5.1.8 Spare half octet ---- not used
-
-//24.008/ 10.5.1.9 Descriptive group or broadcast call reference
-type record DescriptiveGroupOrBroadcastCallReference_V
-{
-  bitstring         binaryCodingOfGroupOrBroadcastCallReference length (27),
-  BIT1              sF,
-  BIT1              aF,
-  BIT3              callPriority,
-  BIT4              cipheringInformation,
-  BIT4              spare
-} with {  variant (binaryCodingOfGroupOrBroadcastCallReference,sF,aF,
-    callPriority,cipheringInformation,spare)  "FIELDORDER(msb)"};
-
-//10.5.1.10 Group Cipher Key Number
-type record groupCipherKeyNumber_TV
-{
-  BIT4 valuePart,
-  BIT4 elementIdentifier
-};
-
-type BIT4 groupCipherKeyNumber_V;
-
-
-//24.008/10.5.1.10a
-type record PdAndSapi
-{
-  BIT4 protocolDiscriminator,
-  BIT2 sapi,
-  BIT2 spare2
-};
-
-//10.5.1.11 Priority Level
-type record PriorityLevel_ML3
-{
-  BIT3  callPriority, // B'...._000 no applied  priority
-  // B'...._001 call priority level 4
-  // B'...._010 call priority level 3
-  // B'...._011 call priority level 2
-  // B'...._100 call priority level 1
-  // B'...._101 call priority level 0
-  // B'...._110 call priority level B
-  // B'...._111 call priority level A
-  BIT1  spare1_1,      // B'....0.._
-  // modified by ethbaat:OCT1  elementIdentifier for...
-  BIT4  elementIdentifier       // B'1000' type 1 IEI Priority level
-};
-//ending "_ML3" added, because ambiguities of (RANAP is also using this name)
-
-
-//10.5.1.12 Core Network System Information
-// not implemented yet
-
-//10.5.1.13 PLMN List
-type record PLMNListTLV
-{
-  BIT7               elementIdentifier,
-  BIT1               spare1,
-  LIN1               lengthIndicator,
-  octetstring        digits  length(3..45) // collapsed into one octetstring
-  // instead of digits
-} with { variant "PRESENCE (elementIdentifier = '1001010'B)";
-  variant (lengthIndicator) "LENGTHTO (digits)"};
-  
-//10.5.1.15
-type record MS_NetworkFeatureSupportTV
-{
-  BIT1      extendedPeriodicTimers,
-  BIT3      spare,
-  BIT4      elementIdentifier
-}
-
-// GPRS Timer3 - 10.5.7.4a
-type record GPRSTimer3TLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  GPRSTimer3V        gprsTimer3V
-} with { 
-   variant (lengthIndicator) "LENGTHTO (gprsTimer3V)"
-}; 
-
-type record GPRSTimer3V
-{
-  BIT5               timerValue,
-  BIT3               unit
-};
-
-//****************************************************************************
-// Common elements in CC and SS:
-//****************************************************************************
-
-//24.008/10.5.4.11 Cause
-type record Diagnostics
-{
-  octetstring data   // to split into pieces????
-} with { variant "EXTENSION_BIT (yes)"};
-
-// This type is added for handling extension bit in octet 3 of Cause IE
-type record ML3_Cause_oct3
-{
-  BIT4  location,   //      '0000'user  B
-  //      '0001'B private network, local user
-  //      '0010'B public  network, user  local
-  //      '0011'B transit network
-  //      '0100'B public  network, user  remote
-  //      '0101'B private network, remote user
-  //      '0111'B network  international
-  //      '1010'B Network beyond interworking pt.
-  BIT1  spare1_1, //     '0'B
-  BIT2  codingStandard, // '00'B coding according Q.931
-  // '01'B reserved for standards  other
-  // '10'B National standard
-  // '11'B standard  other  (e.g. one defined for GSM PLMNs)
-  BIT1  ext1, // '0'B or '1'B
-  //octet3a:
-  BIT7  recommendation  optional,
-  BIT1  ext2            optional // B'1......
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record ML3_Cause_oct4
-{
-  BIT7  causeValue, // see 12/FS
-  BIT1  ext3 // B'1......
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record ML3_Cause_LV
-{
-  LIN1  lengthIndicator, // 2..30
-  ML3_Cause_oct3 oct3,
-  ML3_Cause_oct4 oct4,
-  Diagnostics  diagnostics  optional  // size: 1..27
-} with { variant (lengthIndicator) "LENGTHTO (oct3, oct4, diagnostics) "};
-
-//24.008/10.5.4.11
-type record ML3_Cause_TLV
-{
-  OCT1   elementIdentifier,
-  LIN1  lengthIndicator, // 2..30
-  ML3_Cause_oct3 oct3,
-  ML3_Cause_oct4 oct4,
-  Diagnostics  diagnostics  optional  // size: 1..27
-} with { variant (lengthIndicator) "LENGTHTO (oct3, oct4, diagnostics) "};
-
-//10.5.4.15 Facility IE (see also 24.080/3.6)
-type record Facility_TLV
-{
-  OCT1  elementIdentifier, // H'1C
-  LIN1  lengthIndicator, // 0..?
-  OCTN  facilityInformation  optional //see 24.080/3.6
-} with { variant (lengthIndicator) "LENGTHTO (facilityInformation)"};
-
-type record Facility_LV
-{
-  LIN1  lengthIndicator, // 0..?
-  OCTN  facilityInformation  optional  //see 24.080/3.6
-} with { variant (lengthIndicator) "LENGTHTO (facilityInformation)"};
-
-//24.008/10.5.4.24 SS Version Indicator
-// used by SS and CC
-type record SS_VersionIndicator
-{
-  OCT1  elementIdentifier, // H'7F
-  LIN1  lengthIndicator, // 0..?
-  OCTN  ss_VersionIndicatorContents  optional //see 24.080 !!!
-} with { variant (lengthIndicator) "LENGTHTO (ss_VersionIndicatorContents)"};
-
-//10.5.4.32 Supported Codec List
-type record codec
-{
-  OCT1  systemIdentification1,
-  OCT1  lengthOfBitmap1,
-  OCT1  codecBitmap1_bits1to8,
-  OCT1  codecBitmap1_bits9to16
-}; 
-
-type record of codec CodecList_ML3; 
-
-type record SupportedCodecList
-{
-  OCT1            elementIdentifier,
-  LIN1            lengthIndicator, //  
-  CodecList_ML3   codecList 
-} with {
-  variant "PRESENCE (elementIdentifier = '40'O)";
-  variant (lengthIndicator) "LENGTHTO( codecList )"
-};
-
-// 10.5.7.8
-type record DevicePropertiesTV
-{  
-  BIT1               lowPriority,
-  BIT3               spare,
-  BIT4               elementIdentifier
-}
-
-//****************************************************************************
-// Common elements in GMM and MM:
-//****************************************************************************
-// 10.5.5.8a - P-TMSI Signature 2
-type record P_TMSISignature2TLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  OCT3               valueField
-} with {
-  variant "PRESENCE (elementIdentifier = '19'O)";
-  variant (lengthIndicator) "LENGTHTO (valueField)"
-};
-
-// 10.5.5.29 - P-TMSI Type
-type record P_TMSI_TypeTV
-{
-  BIT1     pTMSI_TypeValue,
-  BIT3     spare,
-  BIT4     elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1110'B)" }; 
-
-//10.5.5.15a - Routing Area Identification
-type record RoutingAreaIdentification2TLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  OCT6               routingAreaIdentification2
-} with {
-  variant "PRESENCE (elementIdentifier = '1B'O)";
-  variant (lengthIndicator) "LENGTHTO (routingAreaIdentification2)"
-};
-
-
-//****************************************************************************
-// Common elements in RRM and MM:
-//****************************************************************************
-
-//10.5.3.14 Additional Update Parameter
-type record AdditionalUpdateParameterTV
-{
-  BIT1               cSMT,
-  BIT1               cSMO,
-  BIT1               spare2,
-  BIT1               spare3,
-  BIT4               elementIdentifier
-} with {
-  variant "PRESENCE (elementIdentifier = '1100'B)"
-}
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_GMM_SM_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_GMM_SM_Types.ttcn
deleted file mode 100644
index 5148608..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_GMM_SM_Types.ttcn
+++ /dev/null
@@ -1,2532 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_GMM_SM_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.008 v13.4.0
-
-module MobileL3_GMM_SM_Types
-{
-
-// This module contains the GPRS Mobility Management Messages and
-// GPRS Session Management Messages of Mobile Radio Interface Layer 3 protocol
-// (DTAP) version 24.008 v13.4.0 with attributes for RAW encoding/decoding.
-//
-// Protocol discriminators and other general parts are defined in 24.007 v6.5.0
-// Some deviations added in order to make the module compatible with
-// V97 version of L3. These changes are indicated by 'V97' in comments
-
-import from General_Types all;
-import from MobileL3_CommonIE_Types all;
-import from MobileL3_MM_Types all;
-
-// =============================================================
-// GPRS Mobilty management information elements (chapter 10.5.5)
-// =============================================================
-
-// Additional Update Type - 10.5.5.0, TS 24.301 v13.4.0/9.9.3.0B
-type record AdditionalUpdateTypeTV
-{
-  AdditionalUpdateTypeV additionalUpdateType,
-  BIT4                  elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '0111'B)" };
-
-type record AdditionalUpdateTypeV
-{
-  BIT1        aUTV,
-  BIT3        spare
-};
-
-// Attach Result - 10.5.5.1
-type record AttachResultV
-{
-  BIT3               resultOfAttach,
-  BIT1               fop_l3
-};
-
-
-// Attach Type - 10.5.5.2
-type record  AttachTypeV
-{
-  BIT3               attachType,
-  BIT1               for_l3
-};
-
-
-// Ciphering Algorithm - 10.5.5.3
-type record   CipheringAlgorithmTV
-{
-  CipheringAlgorithmV          cipheringAlgorithm,
-  BIT4                         cipheringAlgorithmIEI
-};
-
-
-type record   CipheringAlgorithmV
-{
-  BIT3               valueField,
-  BIT1               spare
-};
-
-
-// TMSI status - 10.5.5.4
-type record TMSIStatusTV
-{
-  TMSIStatusV        tmsiStatusV,
-  BIT4               elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1001'B)" };
-
-
-type record TMSIStatusV
-{
-  BIT1               tmsiFlag,
-  BIT3               spare // '000'B
-};
-
-
-// Detach Type - 10.5.5.5
-type record DetachTypeTV
-{
-  DetachTypeV        detachTypeV,
-  BIT4               detachTypeIEI
-};
-
-
-type record DetachTypeV
-{
-  BIT3               detachType,
-  BIT1               powerOffFlag
-};
-
-
-// DRX Parameter - 10.5.5.6
-type record DRXParameterTV
-{
-  OCT1               elementIdentifier,
-  DRXParameterV      drxParameter
-} with { variant "PRESENCE (elementIdentifier = '27'O)"; };
-
-
-type record DRXParameterV
-{
-  OCT1               splitPGCycleCode,
-  BIT3               nonDRXTimer,
-  BIT1               splitOnCCCH,
-  BIT4               cnSpecificDRXCycleLength
-};
-
-
-//Force To Standby - 10.5.5.7
-type record ForceToStandbyTV
-{
-  ForceToStandbyV    valueField,
-  BIT4               forceToStandbyIEI
-};
-
-
-type record ForceToStandbyV{
-  BIT3               forceToStandbyValue,
-  BIT1               spare   // '0'B
-};
-
-
-// P-TMSI Signature - 10.5.5.8
-type record P_TMSISignatureTV
-{
-  OCT1               elementIdentifier,
-  OCT3               valueField
-} with { variant "PRESENCE (elementIdentifier = '19'O)"; }
-
-
-//P-TMSI Signature 2 - 10.5.5.8a
-//moved into MobileL3_CommonIE_Types
-
-
-// Identity Type 2 - 10.5.5.9
-type record IdentityType2TV
-{
-  IdentityType2V     valueField,
-  BIT4               identityType2IEI
-};
-
-
-type record IdentityType2V
-{
-  BIT3                valueField,
-  BIT1                spare
-};
-
-
-// IMEISV request - 10.5.5.10
-type record IMEISVRequestTV
-{
-  IMEISVRequestV     imeisvRequest,
-  BIT4               imeisvRequestIEI
-};
-
-
-type record IMEISVRequestV
-{
-  BIT3               valueField,
-  BIT1               spare  //'0'B
-};
-
-
-// Receive N-PDU Numbers list - 10.5.5.11
-type record ReceiveNPDUNumbersListTLV
-{
-  OCT1                         elementIdentifier,
-  LIN1                         lengthIndicator,
-  ReceiveNPDUNumbersListV      numberList
-} with {
-  variant "PRESENCE (elementIdentifier = '26'O)";
-  variant (lengthIndicator) "LENGTHTO (numberList)";
-  variant (numberList)      "PADDING(yes)"// Padding is needed when odd
-  // number of ReceiveNPDUNumber is used
-};
-
-type record length(1..11) of ReceiveNPDUNumber ReceiveNPDUNumbersListV;
-
-type record ReceiveNPDUNumber
-{
-  BIT4               sapi,
-  BIT8               numberValue
-} with { variant "FIELDORDER(msb)" };
-
-
-// MS network capability - 10.5.5.12
-type record  MSNetworkCapabilityTLV
-{
-  OCT1                         elementIdentifier,
-  MSNetworkCapabilityLV        mSNetworkCapabilityLV
-} with { variant "PRESENCE (elementIdentifier = '31'O)"; };
-
-
-type record MSNetworkCapabilityLV
-{
-  LIN1                         lengthIndicator,
-  MSNetworkCapabilityV         msNetworkCapabilityV
-} with { variant (lengthIndicator) "LENGTHTO (msNetworkCapabilityV)";
-  variant (msNetworkCapabilityV)    "PADDING(yes)"
-};
-
-
-type record MSNetworkCapabilityV    //length 3-10 octets
-{
-  BIT1               gea1bit,
-  BIT1               smCapabilitiesviaDedicatedChannels,
-  BIT1               smCapabilitiesviaGPRSChannels,
-  BIT1               ucs2Support,
-  BIT2               ssScreeningIndicator,
-  BIT1               solSACapability            optional, //spare in V97
-  BIT1               revisionLevelIndicatior    optional, //spare in V97
-  BIT1               pFCFeatureMode             optional, //spare in V97(opt)
-  BIT6               extendedGEAbits            optional, //spare in V97(opt)
-  BIT1               lcsVAcapability            optional, //spare in V97(opt)
-  BIT1               pSInterRATHOtoUTRANIuModeCapability optional,
-  BIT1               pSInterRATHOtoEUTRANS1ModeCapability optional,
-  BIT1               eMMCombinedProceduresCapability optional,
-  BIT1               iSRSupport                 optional,
-  BIT1               sRVCCtoGERANUTRANCapability optional,
-  BIT1               ePCCapability              optional,
-  BIT1               nFCapability               optional,
-  BIT1               gERANNertworkSharingCapability optional,
-  octetstring        spare_octets length (0..3) optional
-} with { variant "FIELDORDER(msb)" };
-
-
-//MS Radio Access capability - 10.5.5.12a
-
-// Note: specification allows application of spare bits (even the forming of
-// spare octets), The only limitation is that the MS Radio Access capability IE
-// has maximum length of 51 octets
-type record MSRadioAccessCapabilityLV
-{
-  LIN1                         lengthIndicator,
-  MSRadioAccessCapabilityV     msRadioAccessCapabilityV
-  // Note that spareBits is automatically handled/calculated as padding
-  // so that MSRadioAccessCapabilityLV will be octet aligned when encoded
-  // even if the padding (spareBits) is not visible for the tester.
-  // lengthIndicator value = MSRadioAccessCapabilityV + (virtual) padding.
-} with {
-  variant "FIELDORDER(msb)";
-  variant (lengthIndicator) "LENGTHTO (msRadioAccessCapabilityV )";
-  variant "PADDING(yes)"				
-};
-
-type record of MSRACapabilityValuesRecord MSRadioAccessCapabilityV
-with { variant "EXTENSION_BIT(reverse)";variant "FIELDORDER(msb)" };
-
-
-type record MSRACapabilityValuesRecord
-{
-  MSRACapabilityValues         mSRACapabilityValues,
-  BIT1                         presenceBitMSRACap
-} with { variant "FIELDORDER(msb)" };
-
-
-type union MSRACapabilityValues
-{
-  MSRACapabilityValuesExclude1111        mSRACapabilityValuesExclude1111,
-  MSRACapabilityValues1111               mSRACapabilityValues1111
-};
-
-
-type record MSRACapabilityValuesExclude1111
-{
-  BIT4                         accessTechnType,
-  AccessCapabilitiesStruct     accessCapabilities
-} with {
-  variant "PRESENCE (
-  accessTechnType = '0000'B,     // GSM P
-  accessTechnType = '0001'B,     // GSM E
-  accessTechnType = '0010'B,     // GSM R
-  accessTechnType = '0011'B,     // GSM 1800
-  accessTechnType = '0100'B,     // GSM190
-  accessTechnType = '0101'B,     // GSM 450
-  accessTechnType = '0110'B,     // GSM480
-  accessTechnType = '0111'B,     // GSM 480
-  accessTechnType = '1000'B,     // GSM 700
-  accessTechnType = '1001'B,     // GSM T 310
-  accessTechnType = '1010'B,     // GSM T 410
-  accessTechnType = '1011'B      // GSM T 900
-  )"
-  variant "FIELDORDER(msb)"
-};
-
-
-// Access Capabilities Struct
-type record AccessCapabilitiesStruct
-{
-  integer                      lengthIndicator,
-  AccessCapabilities           accessCapabilities,
-  // spare_bits "expands to the indicated length",
-  // i.e. 24.008 spec puts no restriction on number
-  // of spare_bits.  The only restriction is that the whole
-  // MS Radio Access Capability  IE is less than 52 octets
-  bitstring                    spare_bits              optional
-} with {
-  variant (lengthIndicator) "FIELDLENGTH(7)";
-  variant (lengthIndicator) "LENGTHTO(accessCapabilities,spare_bits)";
-  variant (lengthIndicator) "UNIT(bits)";
-  variant "FIELDORDER(msb)";
-  variant (lengthIndicator) "BYTEORDER(last)";
-}
-
-
-//Access Capabilities
-type record AccessCapabilities
-{
-  BIT3                         rfPowerCapability,
-  BIT1                         presenceBitA5,
-  A5BITS                       a5bits               optional,
-  BIT1                         esind,
-  BIT1                         psbit,
-  BIT1                         vgcs,
-  BIT1                         vbs,
-  BIT1                         presenceBitMultislot,
-  MultislotCap                 multislotcap         optional,
-  AccessCapAdditionsAfterRel97 accessCapAdditionsAfterRel97 optional //opt because of V97
-  //Note: AccessCapAdditionsAfterRel97 can include:
-  // Rel99 or
-  // Rel99 + Rel4 or
-  // Rel99 + Rel4 + Rel5 or
-  // Rel99 + Rel4 + Rel5  + Rel6
-} with {
-  variant "FIELDORDER(msb)";
-  variant (a5bits)               "PRESENCE(presenceBitA5 = '1'B)";
-  variant (multislotcap)         "PRESENCE(presenceBitMultislot = '1'B)";
-}
-
-
-type record AccessCapAdditionsAfterRel97
-{
-  AccessCapAdditionsRel99                accessCapAdditionsRel99,
-  AccessCapAdditionsAfterRel99           accessCapAdditionsAfterRel99 optional
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-
-type record AccessCapAdditionsRel99
-{
-  BIT1               presenceBitPskpow,
-  BIT2               pskpowercap                     optional,
-  BIT1               compactIntMeasurCap,
-  BIT1               revisionLevelInd,
-  BIT1               umtsfddRadAccTechCap,
-  BIT1               umtstddRadAccTechCap,
-  BIT1               cdma2kRadAccTechCap
-} with {
-  variant "FIELDORDER(msb)";
-  variant (pskpowercap) "PRESENCE(presenceBitPskpow = '1'B)";
-}
-
-
-type record AccessCapAdditionsAfterRel99
-{
-  AccessCapAdditionsRel4       accessCapAdditionsRel4,
-  AccessCapAdditionsAfterRel4  accessCapAdditionsAfterRel4 optional
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-
-type record AccessCapAdditionsRel4
-{
-  BIT1               umts128RadAccTechCap,
-  BIT1               geranFeaturePackage,
-  BIT1               presenceBitExtendedDTM,
-  ExtendedDTM        extendedDTM                       optional,
-  BIT1               modulationBasedMultislotClass
-} with {
-  variant "FIELDORDER(msb)";
-  variant (extendedDTM)          "PRESENCE(presenceBitExtendedDTM = '1'B)";
-}
-
-
-type record AccessCapAdditionsAfterRel4
-{
-  AccessCapAdditionsRel5       accessCapAdditionsRel5, 
-  AccessCapAdditionsAfterRel5  accessCapAdditionsAfterRel5 optional
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-
-type record AccessCapAdditionsRel5
-{
-  BIT1               presenceBitHighMultislotCapability,
-  BIT2               highMultislotCapability            optional,
-  BIT1               presenceBitGeranIuModeCapability,  // this field is present to make the module compatible with earlier versions; it always must be set to 0, 
-  BIT2               gMSKMultislotPowerProfile,
-  BIT2               eightPSKMultislotPowerProfile
-} with {
-  variant "FIELDORDER(msb)";
-  variant (highMultislotCapability)
-  "PRESENCE(presenceBitHighMultislotCapability = '1'B)"
-}
-
-
-type record AccessCapAdditionsAfterRel5
-{
-  AccessCapAdditionsRel6        accessCapAdditionsRel6,
-  AccessCapAdditionsAfterRel6   accessCapAdditionsAfterRel6 optional  
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsAfterRel6
-{
-  AccessCapAdditionsRel7        accessCapAdditionsRel7,
-  //AccessCapAdditionsRel8        accessCapAdditionsAfterRel7 optional 
-  AccessCapAdditionsAfterRel7   accessCapAdditionsAfterRel7 optional 
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsRel6
-{
-  BIT1               multipleTBFCapability,
-  BIT2               downlinkAdvancedReceiverPerformance,
-  BIT1               extendedRLCMACCtrlMsgSegmentationCap,
-  BIT1               dTMEnhancementsCapability,
-  BIT1               presenceBitDTMGPRSHighMultiSlotClass,
-  DTMGPRSHighMultiSlotClass  dTMGPRSHighMultiSlotClass optional,
-  BIT1               pSHandoverCapability
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dTMGPRSHighMultiSlotClass)
-  "PRESENCE(presenceBitDTMGPRSHighMultiSlotClass = '1'B)"
-}
-
-
-type record DTMGPRSHighMultiSlotClass
-{
-  BIT3               dTMGPRSHighMultiSlotClassValue,
-  BIT1               presenceBitDTMEGPRSHighMultiSlotClass,
-  BIT3               dTMEGPRSHighMultiSlotClassValue optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dTMEGPRSHighMultiSlotClassValue)
-  "PRESENCE(presenceBitDTMEGPRSHighMultiSlotClass = '1'B)"
-  
-}
-
-
-type record AccessCapAdditionsRel7
-{
-  BIT1                  dTMHandoverCapability,
-  BIT1                  presenceBitDownlinkDualCarrier, 
-  DownlinkDualCarrier   downlinkDualCarrier,
-  BIT1                  flexibleTimeslotAssignment,
-  BIT1                  gANPSHandoverCapability,
-  BIT1                  rLCNonPersistentMode,
-  BIT1                  reducedLatencyCapability,
-  BIT2                  uplinkEGPRS2,
-  BIT2                  downlinkEGPRS2
-} with {
-  variant "FIELDORDER(msb)";
-  variant (downlinkDualCarrier) "PRESENCE(presenceBitDownlinkDualCarrier = '1'B)"
-}
-
-type record AccessCapAdditionsAfterRel7
-{
-  AccessCapAdditionsRel8       accessCapAdditionsRel8,
-  AccessCapAdditionsAfterRel8  accessCapAdditionsAfterRel8
-}
-
-
-type record AccessCapAdditionsRel8
-{
-  BIT1                  eUTRAFDDsupport ,
-  BIT1                  eUTRATDDsupport, 
-  BIT2                  gERANToEUTRASupportInGERANPacketTransferMode,
-  BIT1                  priorityBasedReselectionSupport 
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsAfterRel8
-{
-  AccessCapAdditionsRel9       accessCapAdditionsRel9,
-  AccessCapAdditionsAfterRel9  accessCapAdditionsAfterRel9
-}
-
-type record AccessCapAdditionsRel9
-{
-  EnhancedFlexTimeslotAssignment   enhancedFlexTimeslotAssignment,
-  BIT1                             indicationofUpperLayerPDUStartCapabilityforRLCUM,
-  BIT1                             eMSTCapability,
-  BIT1                             mTTICapability,
-  BIT1                             uTRACSGCellsReporting,
-  BIT1                             eUTRACSGCellsReporting
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsAfterRel9
-{
-  AccessCapAdditionsRel10       accessCapAdditionsRel10,
-  AccessCapAdditionsAfterRel10  accessCapAdditionsAfterRel10
-}
-
-type record AccessCapAdditionsRel10
-{
-  BIT1           dTRCapability,
-  BIT1           eMSRCapability,
-  BIT1           fastDownlinkFrequencySwitchingCapability,
-  BIT2           tIGHTER_Capability  
-}
-
-type record AccessCapAdditionsAfterRel10
-{
-  AccessCapAdditionsRel11       accessCapAdditionsRel11,
-  AccessCapAdditionsAfterRel11  accessCapAdditionsAfterRel11
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsRel11
-{
-  BIT1           fANRCapability,
-  BIT1           iPACapability,
-  BIT1           gERANNetworkSharingSupport,
-  BIT1           eUTRAWidebandRSRQMeasurementsSupport  
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsAfterRel11
-{
-  AccessCapAdditionsRel12       accessCapAdditionsRel12,
-  AccessCapAdditionsAfterRel12  accessCapAdditionsAfterRel12
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsRel12
-{
-  BIT1           uTRAMultipleFrequencyBandIndicatorsSupport,
-  BIT1           eUTRAMultipleFrequencyBandIndicatorsSupport,
-  BIT1           presenceBitDLMCCapability, 
-  DLMCCapability dLMCCapability optional,
-  BIT1           extendedTSCSetCapabilitySupport 
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dLMCCapability) "PRESENCE(presenceBitDLMCCapability = '1'B)"
-}
-
-type record DLMCCapability
-{
-  BIT1               presenceDLMC,
-  DLMCBandReception  dLMCBandReception    optional,
-  BIT2               dLMCMaxBandwidth,
-  BIT6               dLMCMaxNumOfDownlinkTimeslots,
-  BIT3               dLMCMaxNumOfDownlinkCarriers
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dLMCBandReception) "PRESENCE(presenceDLMC = '1'B)"
-}
-
-type record DLMCBandReception
-{
-  BIT2  dLMCNonContiguousIntraBandReception,
-  BIT1  dLMCInterBandReception
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapAdditionsAfterRel12
-{
-  AccessCapLateAdditionsRel11   accessCapLateAdditionsRel11,
-  octetstring                   accessCapLateAdditionsAfterRel11
-} with {
-  variant "FIELDORDER(msb)";
-}
-
-type record AccessCapLateAdditionsRel11
-{
-  BIT1     extendedEARFCNValueRange
-}
-
-type record EnhancedFlexTimeslotAssignment
-{
-  BIT1                  presenceBitalternativeEFTAMultislotClass,
-  BIT4                  alternativeEFTAMultislotClass,
-  BIT3                  eFTAMultislotCapabilityReductionforDownlinkDualCarrier
-} with {
-  variant "FIELDORDER(msb)"
-};
-
-
-type record DownlinkDualCarrier
-{
-  BIT3  multislotCapReductionforDownLinkDualCarrier,
-  BIT1  downlinkDualCarrierforDTMCapability
-} with { variant "FIELDORDER(msb)" };
-
-
-type record  ExtendedDTM
-{
-  BIT2               ExtendedDTM_GPRSMultislot,
-  BIT2               ExtendedDTM_EGPRSMultislot
-} with { variant "FIELDORDER(msb)" };
-
-
-//MultislotCap
-type record  MultislotCap
-{
-  BIT1               presenceBitHscsd,
-  BIT5               hscsdmultislotclass      optional,
-  BIT1               presenceBitGprs,
-  MultislotCap_GPRS  gprsmultislot           optional,
-  BIT1               presenceBitSms,
-  MultislotCap_SMS   multislotCap_SMS        optional,
-  MultislotCapAdditionsAfterRel97 multislotCapAdditionsAfterRel97 optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (hscsdmultislotclass)     "PRESENCE(presenceBitHscsd = '1'B)";
-  variant (gprsmultislot)          "PRESENCE(presenceBitGprs = '1'B)";
-  variant (multislotCap_SMS)       "PRESENCE(presenceBitSms = '1'B)";
-  
-}
-
-
-type record MultislotCapAdditionsAfterRel97
-{
-  BIT1                         presenceBitEcsdmulti,
-  BIT5                         ecsdmultislotclass      optional,
-  BIT1                         presenceBitEgprsmulti,
-  MultislotCap_EGPRS           multislotCap_EGPRS      optional,
-  BIT1                         presenceBitDtmGprsmulti,
-  MultislotCap_dtmgprsmultislotsubclass   multislotCapdtmgprsmultislotsubclass optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (ecsdmultislotclass)     "PRESENCE(presenceBitEcsdmulti = '1'B)";
-  variant (multislotCap_EGPRS)     "PRESENCE(presenceBitEgprsmulti = '1'B)" ;
-  variant (multislotCapdtmgprsmultislotsubclass)
-  "PRESENCE(presenceBitDtmGprsmulti = '1'B)"
-}
-
-
-type record MultislotCap_GPRS
-{
-  BIT5               gprsmultislotclass,
-  BIT1               gprsextendeddynalloccap
-} with { variant "FIELDORDER(msb)" };
-
-
-type record MultislotCap_SMS
-{
-  BIT4               smsValue,
-  BIT4               smValue
-} with { variant "FIELDORDER(msb)" };
-
-
-type record  MultislotCap_EGPRS
-{
-  BIT5               egprsmultislotclass,
-  BIT1               egprsextendeddynalloccap
-}  with { variant "FIELDORDER(msb)" };
-
-type record MultislotCap_dtmgprsmultislotsubclass
-{
-  BIT2               dtmgprsmultislotsubclass,
-  BIT1               singleSlotDTM,
-  BIT1               presenceBitDTM_EGPRSMultiSlot,
-  BIT2               dTM_EGPRSMultiSlot       optional
-} with {
-  variant "FIELDORDER(msb)";
-  variant (dTM_EGPRSMultiSlot) "PRESENCE(presenceBitDTM_EGPRSMultiSlot = '1'B)"
-};
-
-
-//A5BITS
-type record  A5BITS
-{
-  BIT1       a51 ,
-  BIT1       a52 ,
-  BIT1       a53 ,
-  BIT1       a54 ,
-  BIT1       a55 ,
-  BIT1       a56 ,
-  BIT1       a57
-} with { variant "FIELDORDER(msb)" };
-
-
-type record MSRACapabilityValues1111
-{
-  BIT4               accessTechnType,    //1111
-  integer            lengthIndicator,
-  BIT1               presenceIndicator_AdditionalAccessTechnologiesRepetition,
-  AdditionalAccessTechnologiesRepetition // coded '1'B if list is not empty
-  additionalAccessTechnologiesRepetition           optional,
-  bitstring          spare_bits
-} with {
-  variant "PRESENCE (accessTechnType = '1111'B)";
-  variant "FIELDORDER(msb)";
-  variant (lengthIndicator) "FIELDLENGTH(7)";
-  variant (lengthIndicator) "UNIT(bits)";
-  variant (lengthIndicator) "BYTEORDER(last)";
-  variant (additionalAccessTechnologiesRepetition)
-  "PRESENCE(presenceIndicator_AdditionalAccessTechnologiesRepetition = '1'B)";
-  variant (lengthIndicator)
-  "LENGTHTO(presenceIndicator_AdditionalAccessTechnologiesRepetition,
-  additionalAccessTechnologiesRepetition,spare_bits)";
-};
-
-
-type record of AdditionalAccessTechnologiesRecord
-AdditionalAccessTechnologiesRepetition
-with { variant "EXTENSION_BIT(reverse)" };
-
-
-type record AdditionalAccessTechnologiesRecord
-{
-  AdditionalAccessTechnologies additionalAccessTechnologies,
-  BIT1                         extensionBit
-} with { variant "FIELDORDER(msb)" };
-
-
-type record  AdditionalAccessTechnologies
-{
-  BIT4               accessTechnType,
-  BIT3               gMSKPowerClass,
-  BIT2               psk8PowerClass
-} with { variant "FIELDORDER(msb)" };
-
-
-// GMM Cause - 10.5.5.14
-type record GMM_CauseTV
-{
-  OCT1               elementIdentifier,
-  GMM_CauseV         causeValue
-} with { variant "PRESENCE (elementIdentifier = '25'O)"; };
-
-type record GMM_CauseV
-{
-  OCT1               causeValue
-};
-
-
-// Routing Area identification - 10.5.5.15
-type record RoutingAreaIdentificationV
-{
-  HEX1               mccDigit1,
-  HEX1               mccDigit2,
-  HEX1               mccDigit3,
-  HEX1               mncDigit3,
-  HEX1               mncDigit1,
-  HEX1               mncDigit2,
-  OCT2               lac,
-  OCT1               rac
-};
-
-// Routing Area identification - 10.5.5.15a
-// moved into MobileL3_CommonIE_Types
-
-//Update Result - 10.5.5.17
-type record UpdateResultTV
-{
-  UpdateResultV      valueField,
-  BIT4               elementIdentifier
-};
-
-type record  UpdateResultV
-{
-  BIT3               valueField,
-  BIT1               fOP_l3
-};
-
-
-// Update Type - 10.5.5.18
-type record  UpdateTypeTV
-{
-  UpdateTypeV        valueField,
-  BIT4               elementIdentifier
-};
-
-type record  UpdateTypeV
-{
-  BIT3               valueField,
-  BIT1               for_l3
-};
-
-
-// ACReferenceNumber - 10.5.5.19
-type record   ACReferenceNumberTV
-{
-  ACReferenceNumberV acReferenceNumber,
-  BIT4               acReferenceNumberIEI
-};
-
-type record ACReferenceNumberV
-{
-  BIT4               valueField
-};
-
-
-// Service type - 10.5.5.20
-type record  ServiceTypeV
-{
-  BIT3               serviceType,
-  BIT1               spare  //'0'B
-};
-
-
-// Cell Notification - 10.5.5.21
-type record CellNotificationT
-{
-  OCT1               elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '8C'O)"; };
-
-
-// PC_LCSCapability - 10.5.5.22
-type record PC_LCSCapability
-{
-  OCT1                         elementIdentifier,
-  PC_LCSCapabilityLV           pC_LCSCapabilityLV
-} with { variant "PRESENCE (elementIdentifier = '33'O)"; };
-
-
-type record PC_LCSCapabilityLV
-{
-  LIN1               lengthIndicator,       // 3 octets
-  PC_LCSCapabilityV  pC_LCSCapabilityV
-} with { variant (lengthIndicator) "LENGTHTO (pC_LCSCapabilityV)"};
-
-
-type record PC_LCSCapabilityV
-{
-  BIT1               gPS_C,
-  BIT1               gPS_B,
-  BIT1               gPS_A,
-  BIT1               oTD_B,
-  BIT1               oTD_A,
-  BIT1               aPC,
-  BIT2               spare  //'00'B
-};
-
-
-// NetworkFeatureSupportTV - 10.5.5.23
-type record NetworkFeatureSupportTV
-{
-  NetworkFeatureSupportV  networkFeatureSupportV,
-  BIT4                    elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1011'B)"; };
-
-
-type record NetworkFeatureSupportV
-{
-  BIT1               eMCBS,     // 24.008 v9.5.0
-  BIT1               iMSVoPS,
-  BIT1               mBMS,
-  BIT1               lCS_MOLR
-};
-
-// AdditionalNetworkFeatureSupportTLV - 10.5.5.23A
-type record AdditionalNetworkFeatureSupportTLV
-{
-  OCT1                               elementIdentifier,
-  LIN1                               lengthIndicator,
-  AdditionalNetworkFeatureSupportV   additionalNetworkFeatureSupportV
-} with {
-  variant "PRESENCE (elementIdentifier = '66'O)";
-  variant (lengthIndicator) "LENGTHTO (additionalNetworkFeatureSupportV)"
-};
-
-
-type record AdditionalNetworkFeatureSupportV
-{
-  BIT1      gPRS_SMS,
-  BIT7      spare
-};
-
-// 10.5.5.24 Inter RAT information container
-type record InterRATInformationContainerTLV
-{
-  OCT1                      elementIdentifier,
-  LIN1                      lengthIndicator,
-  octetstring               interRATInformationContainerV length(0..248)
-} with {
-  variant "PRESENCE (elementIdentifier = '27'O)";
-  variant (lengthIndicator) "LENGTHTO (interRATInformationContainerV)"
-};
-
-
-// 10.5.5.25 Requested MS information
-type record RequestedMSInformationTV
-{
-  BIT2                     spare,  //'00'B
-  BIT1                     i_RAT2,
-  BIT1                     i_RAT,
-  BIT4                     elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1010'B)"; };
-
-// 10.5.5.26 UE network capability TS 24.301 v13.4.0 / 9.9.3.34
-type record UENetworkCapabilityTLV
-{
-  OCT1                            elementIdentifier,
-  UENetworkCapabilityLV           uENetworkCapabilityLV
-}with {
-  variant "PRESENCE (elementIdentifier = '58'O)"
-} 
-
-type record UENetworkCapabilityLV
-{
-  LIN1                  lengthIndicator,    //2..13
-  UENetworkCapabilityV  uENetworkCapabilityV
-} with {
-  variant (lengthIndicator) "LENGTHTO (uENetworkCapabilityV)"
-}
-
-type record UENetworkCapabilityV
-{
-  BIT8     eEA,
-  BIT8     eIA,  
-  BIT8     uEA      optional,  
-  BIT7     uIA      optional,
-  BIT1     uCS2     optional,//4. octet
-  BIT1     nF       optional,
-  BIT1     sRVCC    optional,
-  BIT1     lCS      optional,
-  BIT1     lPP      optional,
-  BIT1     aCC_CSFB optional,
-  BIT1     h245_ASH optional,
-  BIT1     proSe    optional,
-  BIT1     proSe_dd optional,
-  BIT1     proSe_dc optional,
-  BIT7     spare    optional,//6. octet
-  octetstring     spare4 length (0..7) optional
-}
-
-// 10.5.5.27 E-UTRAN inter RAT information container
-type record EUTRANinterRATInformationContainerTLV
-{
-  OCT1                      elementIdentifier,
-  LIN1                      lengthIndicator,
-  octetstring               eUTRANinterRATInformationContainerV length(0..255)
-} with {
-  variant "PRESENCE (elementIdentifier = '2B'O)";
-  variant (lengthIndicator) "LENGTHTO (eUTRANinterRATInformationContainerV)"
-};
-
-// 10.5.5.28 Voice Domain Preference and UE's Usage Setting
-type record VoiceDomainPreferenceandUEsUsageSettingTLV
-{
-  OCT1                      elementIdentifier,
-  LIN1                      lengthIndicator,
-  VDPaUEsUS_V               informationElement
-} with {
-  variant "PRESENCE (elementIdentifier = '5D'O)"
-  variant (lengthIndicator) "LENGTHTO (informationElement)"
-};
-
-type record VDPaUEsUS_V
-{
-  BIT2                      voiceDomainPreferenceforEUTRAN,
-  BIT1                      uEsUsageSetting,
-  BIT1                      spare1,
-  BIT1                      spare2,
-  BIT1                      spare3,
-  BIT1                      spare4,
-  BIT1                      spare5
-};
-
-// P_TMSI Type 10.5.5.29
-//moved into MobileL3_CommonIE_Types
-
-// 10.5.5.30
-type record LocationAreaIdentification2_TLV
-{
-  OCT1                           elementIdentifier,
-  LIN1                           lengthIndicator, 
-  OCT5                           locationAreaIdentificationValue
-} with {
-  variant "PRESENCE (elementIdentifier = '14'O)";
-  variant (lengthIndicator) "LENGTHTO (locationAreaIdentificationValue)"
-};
-
-// 10.5.5.31
-type record NetworkResourceIdentifierContainerTLV
-{
-  OCT1                                 elementIdentifier,
-  NetworkResourceIdentifierContainerLV networkResourceIdentifierContainerLV
-} with {
-  variant "PRESENCE (elementIdentifier = '10'O)";
-};
-
-type record NetworkResourceIdentifierContainerLV
-{
-  LIN1                                lengthIndicator, 
-  NetworkResourceIdentifierContainerV networkResourceIdentifierContainerV
-} with {
-  variant (lengthIndicator) "LENGTHTO (networkResourceIdentifierContainerV)"
-};
-
-type record NetworkResourceIdentifierContainerV
-{
-  BIT10  nRIContainerValue, 
-  BIT6   spare
-} with {
-  variant (nRIContainerValue) "BITORDER (msb)";
-  variant (nRIContainerValue,spare) "FIELDORDER (msb)";
-};
-
-// 10.5.5.32
-type record ExtendedDRXParametersTLV
-{
-  OCT1                           elementIdentifier,
-  LIN1                           lengthIndicator, 
-  BIT4                           eDRXValue,
-  BIT4                           pagingTimeWindow
-} with {
-  variant "PRESENCE (elementIdentifier = '6E'O)";
-  variant (lengthIndicator) "LENGTHTO (eDRXValue,pagingTimeWindow)"
-};
-// ========================================================
-// Session management information elements (chapter 10.5.6)
-// ========================================================
-
-// Access Point Name - 10.5.6.1
-
-type record AccessPointNameTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,       // 3-102 octets  ,
-  AccessPointNameV   accessPointNameValue
-} with {
-  variant "PRESENCE (elementIdentifier = '28'O)";
-  variant (lengthIndicator) "LENGTHTO (accessPointNameValue)"
-};
-
-type record AccessPointNameLV
-{
-  LIN1               lengthIndicator,       // 3-102 octets  ,
-  AccessPointNameV   accessPointNameValue
-} with { variant (lengthIndicator) "LENGTHTO (accessPointNameValue)"};
-
-type octetstring AccessPointNameV;
-
-
-//NSAPI - 10.5.6.2
-type record NSAPITV
-{
-  OCT1               elementIdentifier,
-  NSAPIV             valueField
-};
-
-type record  NSAPIV
-{
-  BIT4               valueField,
-  BIT4               spare     //'0000'B
-};
-
-
-//Protocol Configuration Options - 10.5.6.3
-type record ProtocolConfigOptionsTLV
-{
-  OCT1                         elementIdentifier,
-  LIN1                         lengthIndicator,
-  ProtocolConfigOptionsV       protocolConfigOptionsV
-} with {
-  variant "PRESENCE (elementIdentifier = '27'O)";
-  variant (lengthIndicator) "LENGTHTO (protocolConfigOptionsV)"
-};
-
-type record ProtocolConfigOptionsV
-{
-  BIT3                         configProtocol,
-  BIT4                         spare , //'0000'B
-  BIT1                         extensionField,   //'1'B
-  ProtocolIDs_and_ContainerIDs protocolIDs_and_ContainerIDs optional
-};
-
-type record of  ProtocolID_or_ContainerID   ProtocolIDs_and_ContainerIDs;
-
-type record ProtocolID_or_ContainerID
-{
-  OCT2               protocolID_or_ContainerID,
-  LIN1               lengthIndicator,
-  octetstring        protID_orContID_Contents
-} with { variant (lengthIndicator) "LENGTHTO (protID_orContID_Contents)"};
-
-
-// PDP Address - 10.5.6.4
-type record PDPAddressTLV
-{
-  OCT1               elementIdentifier,
-  PDPAddressLV       pDPAddressLV
-} with { variant "PRESENCE (elementIdentifier = '2B'O)"; };
-
-
-type record PDPAddressLV
-{
-  LIN1               lengthIndicator,
-  PDPAddressV        pdpAddressV
-} with { variant (lengthIndicator) "LENGTHTO (pdpAddressV)"};
-
-
-type record  PDPAddressV
-{
-  BIT4               pdpTypeOrg,
-  BIT4               spare,   //'0000'B
-  OCT1               pdpTypeNum,
-  octetstring        addressInfo   optional
-};
-
-
-// QoS - 10.5.6.5
-type record  QoSTLV
-{
-  OCT1               elementIdentifier,
-  QoSLV              qoSLV
-} with { variant "PRESENCE (elementIdentifier = '30'O)"; };
-
-
-type record  QoSLV
-{
-  LIN1               lengthIndicator,
-  QoSV               qoSV
-} with { variant (lengthIndicator) "LENGTHTO (qoSV)"};
-
-
-type record QoSV
-{
-  BIT3               reliabilityClass,
-  BIT3               delayClass,
-  BIT2               spare1,  // '00'B
-  BIT3               precedenceClass,
-  BIT1               spare2, //'0'B
-  BIT4               peakThroughput,
-  BIT5               meanThroughput,
-  BIT3               spare3, //'000'B
-  BIT3               deliverErroneusSDU            optional, //opt because of V97
-  BIT2               deliveryOrder                 optional, //opt because of V97
-  BIT3               trafficClass                  optional, //opt because of V97
-  OCT1               maxSDUSize                    optional, //opt because of V97
-  OCT1               maxBitrateUplink              optional, //opt because of V97
-  OCT1               maxBitrateDownlink            optional, //opt because of V97
-  BIT4               sduErrorRatio                 optional, //opt because of V97
-  BIT4               residualBER                   optional, //opt because of V97
-  BIT2               trafficHandlingPriority       optional, //opt because of V97
-  BIT6               transferDelay                 optional, //opt because of V97
-  OCT1               guaranteedBitRateUplink       optional, //opt because of V97
-  OCT1               guaranteedBitRateDownlink     optional, //opt because of V97
-  BIT4               sourceStatisticsDescriptor    optional, //opt because of V97
-  BIT1               signallingIndication          optional, //opt because of V97
-  BIT3               spare4                        optional, //opt because of V97
-  // '000'B
-  OCT1               maxBitrateDownlinkExt         optional, //opt because of V97
-  OCT1               guaranteedBitRateDownlinkExt  optional, //opt because of V97
-  OCT1               maxBitrateUplinkExt           optional, //opt because of V97
-  OCT1               guaranteedBitRateUplinkExt    optional, //opt because of V97 
-  OCT1               maxBitrateDownlinkExt2        optional, //opt because of V97
-  OCT1               guaranteedBitRateDownlinkExt2 optional, //opt because of V97
-  OCT1               maxBitrateUplinkExt2          optional, //opt because of V97
-  OCT1               guaranteedBitRateUplinkExt2   optional  //opt because of V97 
-};
-
-// ReAttemptIndicator - 10.5.6.5a
-type record ReAttemptIndicatorTLV
-{
-  OCT1                 elementIdentifier,
-  ReAttemptIndicatorLV reAttemptIndicatorLV
-} with { variant "PRESENCE (elementIdentifier = '6B'O)"; };
-
-type record ReAttemptIndicatorLV
-{
-  LIN1                lengthIndicator,
-  ReAttemptIndicatorV reAttemptIndicatorV
-} with { variant (lengthIndicator) "LENGTHTO (reAttemptIndicatorV)"};
-
-type record ReAttemptIndicatorV
-{
-  BIT1  rATCValue,
-  BIT1  ePLMNCValue,
-  BIT6  spare
-}
-
-// SM Cause - 10.5.6.6
-type OCT1 SMCauseV;
-
-// SM Cause2 - 10.5.6.6a
-type record SMCause2TLV
-{
-  OCT1               elementIdentifier,
-  SMCause2LV         sMCause2LV
-} with { variant "PRESENCE (elementIdentifier = '39'O)"; };
-
-type record SMCause2LV 
-{
-  LIN1               lengthIndicator,
-  OCT1               sMCause2V
-} with { variant (lengthIndicator) "LENGTHTO (sMCause2V)"};
-
-// Linked TI - 10.5.6.7
-type record LinkedTITLV
-{
-  OCT1               elementIdentifier,
-  LinkedTILV         linkedTILV
-}
-
-type record LinkedTILV
-{
-  LIN1               lengthIndicator,
-  LinkedTIV          valueField
-} with { variant (lengthIndicator) "LENGTHTO (valueField)"};
-
-
-type record LinkedTIV
-{
-  BIT4               spare,  //'0000'B
-  BIT3               tio,
-  BIT1               tiFlag,
-  TI_Extension       tIExtension  optional
-} with { variant (tIExtension)"PRESENCE(tio = '111'B)"};
-
-
-type record        TI_Extension
-{
-  BIT7               tI_Value,
-  BIT1               tI_ExtBit         //'1'B
-};
-
-
-// LLC SAPI - 10.5.6.9
-type record LLC_SAPITV
-{
-  OCT1               elementIdentifier,
-  LLC_SAPIV          valueField
-} with { variant "PRESENCE (elementIdentifier = '32'O)"; };
-
-
-type record  LLC_SAPIV
-{
-  BIT4               valueField,
-  BIT4               spare        //'0000'B
-};
-
-
-// Tear down indicator - 10.5.6.10
-type record  TearDownIndicatorTV
-{
-  TearDownIndicatorV tearDownIndicatorV,
-  BIT4               elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1001'B)"; };
-
-type record TearDownIndicatorV
-{
-  BIT1               tdi_flag,
-  BIT3               spare     //'000'B
-};
-
-
-// Packet Flow Identifier - 10.5.6.11
-type record PacketFlowIDTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  PacketFlowIDV      valueField
-} with {
-  variant "PRESENCE (elementIdentifier = '34'O)";
-  variant (lengthIndicator) "LENGTHTO (valueField)"
-};
-
-
-type record PacketFlowIDV
-{
-  BIT7               valueField,
-  BIT1               spare   // '0'B
-};
-
-
-// Traffic Flow Template - 10.5.6.12
-// when TFT operation is  "delete packet filters from existing TFT"
-// NOTE: will need to use "TAG" variant if both IEI is present within a PDU
-type record TrafficFlowTemplateTLV
-{
-  OCT1                         elementIdentifier,
-  TrafficFlowTemplateLV        trafficFlowTemplateLV
-} with { variant "PRESENCE (elementIdentifier = '31'O,
-  elementIdentifier = '36'O)";
-};
-
-type record TrafficFlowTemplateLV
-{
-  LIN1                         lengthIndicator,
-  TrafficFlowTemplateV         valueField
-} with { variant (lengthIndicator) "LENGTHTO(valueField)"};
-
-
-type union TrafficFlowTemplateV
-{
-  TrafficFlowTemplateV_CreateAddReplaceTFT
-  trafficFlowTemplateV_CreateAddReplaceTFT,
-  TrafficFlowTemplateV_DeletePacketFilter
-  trafficFlowTemplateV_DeletePacketFilter,
-  TrafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation
-  trafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation
-};
-
-
-type record TrafficFlowTemplateV_CreateAddReplaceTFT
-{
-  integer                                numberOfPacketFilters,
-  BIT1                                   eBIT,
-  BIT3                                   operationCodeTFT,  //'001'B or
-  PacketFilterList_CreateAddReplaceTFT   packetFilterList_CreateAddReplaceTFT,
-  ParametersList                         parametersList            optional
-} with {
-  variant "PRESENCE (operationCodeTFT  = '001'B, //  Create New TFT
-  operationCodeTFT  = '011'B, //  Add packet filters to existing TFT
-  operationCodeTFT  = '100'B  //  Replace packet filters in existing TFT
-  )";
-  variant(parametersList)       "PRESENCE(eBIT = '1'B)";
-  variant(numberOfPacketFilters)"FIELDLENGTH(4)";
-  variant(numberOfPacketFilters)"LENGTHTO(packetFilterList_CreateAddReplaceTFT)";
-  variant(numberOfPacketFilters)"UNIT(elements)";
-};
-
-
-type record TrafficFlowTemplateV_DeletePacketFilter
-{
-  integer                                numberOfPacketFilters,
-  BIT1                                   eBIT,
-  BIT3                                   operationCodeTFT,
-  //'101'B or '011'B or '100'B
-  PacketFilterList_DeletePacketFilter    packetFilterList_DeletePacketFilter,
-  ParametersList                         parametersList         optional
-} with {
-  variant "PRESENCE (operationCodeTFT = '101'B)"  // Delete packet filters from existing TFT
-  variant(parametersList) "PRESENCE(eBIT = '1'B)";
-  variant(numberOfPacketFilters)"FIELDLENGTH(4)";
-  variant(numberOfPacketFilters)"LENGTHTO(packetFilterList_DeletePacketFilter)";
-  variant  (numberOfPacketFilters)"UNIT(elements)";
-};
-
-
-type record TrafficFlowTemplateV_Delete_Existing_TFT_or_No_TFT_Operation
-{
-  BIT4                         numberOfPacketFilters, //'0000'B
-  // numberOfPacketFilters is meaningless here since there is no PacketFilterList
-  BIT1                         eBIT,
-  BIT3                         operationCodeTFT,      // '010'B  or '110'B
-  ParametersList               parametersList   optional
-} with {
-  variant "PRESENCE (operationCodeTFT = '010'B,  // delete existing TFT
-  operationCodeTFT = '110'B   // No TFT Operation
-  )";
-  variant (parametersList) "PRESENCE(eBIT = '1'B)"
-};
-
-
-type record of PacketFilter PacketFilterList_CreateAddReplaceTFT;
-
-
-type record PacketFilter
-{
-  PacketFilterIdentifier_CreateAddReplaceTFT       identifier,
-  OCT1                         evaluationPrecedence,
-  LIN1                         lengthIndicator,
-  octetstring                  contents
-} with { variant (lengthIndicator) "LENGTHTO (contents)"};
-
-type record PacketFilterIdentifier_CreateAddReplaceTFT
-{
-  BIT4 packetFilterIdentifier,
-  BIT2 packetFilterDirection,
-  BIT2 spare
-}
-
-type record of PacketFilterIdentifier  PacketFilterList_DeletePacketFilter;
-
-
-type record PacketFilterIdentifier
-{
-  BIT4 packetFilterIdentifier,
-  BIT4 spare
-}
-
-
-type record of Parameter ParametersList;
-
-
-type record Parameter
-{
-  OCT1               parameterIdentifier,
-  LIN1               lengthIndicator,
-  octetstring        contents
-} with { variant (lengthIndicator) "LENGTHTO (contents)"};
-
-
-// Temporary Mobile Group Identity - 10.5.6.13
-type record TemporaryMobileGroupIDLV
-{
-  LIN1               lengthIndicator,
-  OCT3               mBMSServiceID,
-  HEX1               mccDigit1,
-  HEX1               mccDigit2,
-  HEX1               mccDigit3,
-  HEX1               mncDigit3,
-  HEX1               mncDigit1,
-  HEX1               mncDigit2
-}  with { variant (lengthIndicator) "LENGTHTO
-  (mBMSServiceID,mccDigit1,mccDigit2,mccDigit3,
-  mccDigit3,mncDigit1,mncDigit2)"};
-
-
-// MBMS Bearer Capabilities - 10.5.6.14
-type record MBMSBearerCapabilitiesLV
-{
-  LIN1               lengthIndicator,
-  OCT1               maxBitrateDownlink,
-  OCT1               maxBitrateDownlinkExtended optional
-} with { variant (lengthIndicator) "LENGTHTO (maxBitrateDownlink,
-  maxBitrateDownlinkExtended)"};
-
-// MBMS Protocol Configuration Options - 10.5.6.15
-type record MBMSProtocolConfigOptionsTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  OCT1               spare, // '00'O
-  octetstring        valueField
-} with {
-  variant "PRESENCE (elementIdentifier = '35'O)";
-  variant (lengthIndicator) "LENGTHTO (spare,valueField)"
-};
-
-
-//10.5.6.16
-type record EnhancedNetworkSeviveAccessPointIDV  //(V)
-{
-  OCT1               enhancedNetworkSeviveAccessPointIDValue
-}
-
-// 10.5.6.17 Request type
-type record RequestTypeTV {
-  RequestTypeV       requestTypeV,
-  BIT1				 spare,
-  BIT4               elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1010'B)" };
-
-//001 initial request
-//010 Handover
-//011 Unused. If received, the network shall interpret this as "initial request".
-//100 Emergency
-type BIT3 RequestTypeV;
-
-// 10.5.6.18 Notification Indicator
-type record NotificationIndicatorLV
-{
-  LIN1              lengthIndicator,
-  OCT1              valueField
-} with {
-  variant (lengthIndicator) "LENGTHTO (valueField)"
-};
-
-// 10.5.6.19 Connectivity Type
-type record ConnectivityTypeTV
-{
-  BIT4               connectivityTypeValue,
-  BIT4               elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1011'B)" };
-
-// 10.5.6.20 WLAN Offload Acceptability
-type record WLANOffloadAcceptabilityTV
-{
-  BIT1  eUTRANOffloadAcceptabilityValue,
-  BIT1  uTRANOffloadAcceptabilityValue,
-  BIT2  spare,
-  BIT4  elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1100'B)" };
-
-// 10.5.6.21 NBIFOM container
-type record NBIFOM_ContainerTLV
-{
-  OCT1                   elementIdentifier,
-  LIN1                   lengthIndicator,
-  NBIFOM_ParameterList   contents
-} with { variant "PRESENCE (elementIdentifier = '33'O)";
-  variant (lengthIndicator) "LENGTHTO (contents)" };
-
-// 6.1.1 - TS 24.161 v2.0.0
-type record of NBIFOM_Parameter NBIFOM_ParameterList;
-
-type record NBIFOM_Parameter
-{
-  OCT1         parameterIdentifier,
-  LIN1         lengthIndicator,
-  NBIFOM_ParameterContents parameterContents
-} with {  variant (lengthIndicator) "LENGTHTO (parameterContents)";
-  variant (parameterContents) "CROSSTAG(
-		nBIFOM_Mode, parameterIdentifier = '01'O;
-		nBIFOM_DefaultAccess, parameterIdentifier = '02'O;
-    nBIFOM_Status, parameterIdentifier = '03'O;
-    nBIFOM_RoutingRules, parameterIdentifier = '04'O;
-    nBIFOM_IPFlowMapping, parameterIdentifier = '05'O;
-    nBIFOM_RANRulesHandling, parameterIdentifier = '06'O;
-    nBIFOM_RANRulesStatus, parameterIdentifier = '07'O;
-    nBIFOM_AccessUsabilityIndication, parameterIdentifier = '08'O;
-    unknownParameter, OTHERWISE)"};
-
-type union NBIFOM_ParameterContents
-{
-  OCT1 nBIFOM_Mode,
-  OCT1 nBIFOM_DefaultAccess,
-  OCT1 nBIFOM_Status,
-  NBIFOM_RoutingRules nBIFOM_RoutingRules,
-  NBIFOM_RoutingRules nBIFOM_IPFlowMapping,
-  OCT1 nBIFOM_RANRulesHandling,
-  OCT1 nBIFOM_RANRulesStatus,
-  NBIFOM_AccessUsabilityIndication nBIFOM_AccessUsabilityIndication,
-  octetstring unknownParameter
-};
-
-type record of NBIFOM_RoutingRule NBIFOM_RoutingRules
-type record NBIFOM_RoutingRule
-{
-  LIN1         lengthIndicator,
-  OCT1         routingRuleIdentifier,
-  BIT3         operationCode,
-  BIT3         spare,
-  BIT2         routingAccess,
-  OCT1         routingRulePrioroty,
-  RoutingFilter routingFilter
-} with {  variant (lengthIndicator) "LENGTHTO (routingRuleIdentifier,operationCode,
-  spare,routingAccess,routingRulePrioroty,routingFilter)";}
-
-type record RoutingFilter
-{
-  BIT1 flagA,
-  BIT1 flagB,
-  BIT1 flagC,
-  BIT1 flagD,
-  BIT1 flagE,
-  BIT1 flagF,
-  BIT1 flagG,
-  BIT1 flagH,
-  BIT1 flagI,
-  BIT1 flagJ,
-  BIT1 flagK,
-  BIT1 flagL,
-  BIT1 flagM,
-  BIT1 flagN,
-  bitstring flagsZ length(18),
-  OCT4  sourceIPv4Address optional,
-  OCT4  destinationIPv4Address optional,
-  OCT16 sourceIPv6Address optional,
-  OCT16 destinationIPv6Address optional,
-  OCT1  sourceAddressPrefixLength optional,
-  OCT1  destinationAddressPrefixLength optional,
-  OCT4  iPSecSecurityParameterIndex optional,
-  OCT1  protocolTypeNextHeader optional,
-  OCT4  startSourcePortRange optional,
-  OCT4  endSourcePortRange optional,
-  OCT4  startDestinationPortRange optional,
-  OCT4  endDestinationPortRange optional,
-  OCT1  typeOfService optional,
-  OCT4  flowLabel optional
-}  with { variant (sourceIPv4Address)  "PRESENCE(flagA = '1'B)";
-  variant (destinationIPv4Address)  "PRESENCE(flagB = '1'B)";
-  variant (sourceIPv6Address)  "PRESENCE(flagC = '1'B)";
-  variant (destinationIPv6Address)  "PRESENCE(flagD = '1'B)";
-  variant (sourceAddressPrefixLength)  "PRESENCE(flagE = '1'B)";
-  variant (destinationAddressPrefixLength)  "PRESENCE(flagF = '1'B)";
-  variant (iPSecSecurityParameterIndex)  "PRESENCE(flagG = '1'B)";
-  variant (protocolTypeNextHeader)  "PRESENCE(flagH = '1'B)";
-  variant (startSourcePortRange)  "PRESENCE(flagI = '1'B)";
-  variant (endSourcePortRange)  "PRESENCE(flagJ = '1'B)";
-  variant (startDestinationPortRange)  "PRESENCE(flagK = '1'B)";
-  variant (endDestinationPortRange)  "PRESENCE(flagL = '1'B)";
-  variant (typeOfService)  "PRESENCE(flagM = '1'B)";
-  variant (flowLabel)  "PRESENCE(flagN = '1'B)";
-}
-
-type record NBIFOM_AccessUsabilityIndication
-{
-  BIT2 threeGPPAccessUsableValue,
-  BIT2 wLANAccessUsableValue,
-  BIT4 spare
-}
-// =================================================
-// GPRS Common information elements (chapter 10.5.7)
-// =================================================
-
-//PDPContextStatus - 10.5.7.1
-type record PDPContextStatusTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  OCT2               valueField
-} with {
-  variant "PRESENCE (elementIdentifier = '32'O)";
-  variant (lengthIndicator) "LENGTHTO (valueField)"
-};
-
-
-// Radio priority - 10.5.7.2
-type record RadioPriorityTV
-{
-  RadioPriorityV     valueField,
-  BIT4               elementIdentifier
-} with { variant "PRESENCE (elementIdentifier = '1000'B)"; };
-
-
-type record RadioPriorityV
-{
-  BIT3               priorityLevelValue,
-  BIT1               spare  // '0'B
-};
-
-
-//GPRS Timer - 10.5.7.3
-type record GPRSTimerTV
-{
-  OCT1               elementIdentifier,
-  GPRSTimerV         gprsTimerV
-} with { variant "PRESENCE (elementIdentifier = '17'O)"; };
-
-
-type record GPRSTimerV
-{
-  BIT5               timerValue,
-  BIT3               unit
-};
-
-// GPRS Timer2 - 10.5.7.4
-type record GPRSTimer2TLV
-{
-  OCT1               elementIdentifier,  //'2A'O or '37'O
-  LIN1               lengthIndicator,
-  GPRSTimerV         gprsTimer2V    // the same as GPRSTimerV
-} with {
-  variant (lengthIndicator) "LENGTHTO (gprsTimer2V)"
-};
-
-// GPRS Timer3 - 10.5.7.4a
-// GPRSTimer3TLV See MobileL3_CommonIE_Types.ttcn
-
-// Radio priority2 - 10.5.7.5
-type record RadioPriority2TV
-{
-  RadioPriority2V    valueField,
-  BIT4               elementIdentifier
-};
-
-
-type record RadioPriority2V
-{
-  BIT3               priorityLevelValue,
-  BIT1               spare   // '0'B
-};
-
-
-// 10.5.7.6 MBMS context status
-type record MBMS_ContextStatusTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  octetstring        mBMSContextStatusInformation length (0..16)
-} with {
-  variant "PRESENCE (elementIdentifier = '35'O)";
-  variant (lengthIndicator) "LENGTHTO (mBMSContextStatusInformation)"
-};
-
-
-// 10.5.7.7
-type record UplinkDataStatusTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  UplinkDataStatusV  valueField
-} with {
-  variant "PRESENCE (elementIdentifier = '36'O)";
-  variant (lengthIndicator) "LENGTHTO (valueField)"
-};
-
-type record UplinkDataStatusV
-{
-  BIT5               spare,
-  BIT3               nSAPI_5_to_7,
-  BIT8               nSAPI_8_to_15
-}; 
-
-// 10.5.7.8
-// DevicePropertiesTV -> See MobileL3_CommonIE_Types.ttcn
-
-
-// ==============================================
-// GPRS Mobility Management Messages (chapter 9.4)
-// ==============================================
-
-// GMM Attach Request - 9.4.1
-type record PDU_GMM_AttachRequest
-{
-  BIT8                             messageType, // '00000001'B
-  MSNetworkCapabilityLV            msNetworkCapability,
-  AttachTypeV                      attachType,
-  CipheringKeySequenceNumberV      gprsCKSN,
-  DRXParameterV                    drxParam,
-  MobileIdentityLV                 mobileIdentity,
-  RoutingAreaIdentificationV       oldRoutingAreaID,
-  MSRadioAccessCapabilityLV        msRACap,
-  P_TMSISignatureTV                ptmsiSignature                optional,
-  GPRSTimerTV                      reqGPRStimer                  optional,
-  TMSIStatusTV                     tmsiStatus                    optional,
-  PC_LCSCapability                 pC_LCSCapability              optional,
-  MobileStationClassmark2_TLV      mobileStationClassmark2       optional,
-  MobileStationClassmark3_TLV      mobileStationClassmark3       optional,
-  SupportedCodecList               supportedCodecs               optional,
-  UENetworkCapabilityTLV           uENetworkCapability           optional,
-  MobileIdentityTLV                additionalMobileIdentity      optional,
-  RoutingAreaIdentification2TLV    routingAreaIdentification2    optional,
-  VoiceDomainPreferenceandUEsUsageSettingTLV  voiceDomainandUEsUsageSetting optional,
-  DevicePropertiesTV               deviceProperties optional,
-  P_TMSI_TypeTV                    p_TMSI_Type optional,
-  MS_NetworkFeatureSupportTV       mS_NetworkFeatureSupport optional,
-  LocationAreaIdentification2_TLV  oldLocationAreaIdentification optional,
-  AdditionalUpdateTypeTV           additionalUpdateType optional,
-  NetworkResourceIdentifierContainerTLV tMSIBasedNRIcontainer optional,
-  GPRSTimer2TLV                    t3324 optional,
-  GPRSTimer3TLV                    t3312_ExtendedValue optional,
-  ExtendedDRXParametersTLV         extendedDRXParameters optional
-} with {
-  variant "PRESENCE (messageType = '00000001'B)";
-  variant "TAG
-  ( 
-  additionalMobileIdentity,                      elementIdentifier = '0011010'B; 
-  deviceProperties,                              elementIdentifier = '1101'B;  //D
-  mS_NetworkFeatureSupport,                      elementIdentifier = '1100'B;  //C
-  t3324,                      elementIdentifier = '6a'O;
-  t3312_ExtendedValue,        elementIdentifier = '39'O
-  )"
-};
-
-// GMM Attach Accept - 9.4.2
-type record PDU_GMM_AttachAccept
-{
-  BIT8                         messageType,
-  AttachResultV                attachResult,
-  ForceToStandbyV              forceToStandby,
-  GPRSTimerV                   updateTimer,
-  RadioPriorityV               radioPriority,    //SMS
-  RadioPriority2V              radioPriorityTOM8, //  TOM8
-  RoutingAreaIdentificationV   routingAreaIdentification,
-  P_TMSISignatureTV            ptmsiSignature      optional,
-  GPRSTimerTV                  readyTimer          optional,
-  MobileIdentityTLV            allocatedPTMSI      optional,
-  MobileIdentityTLV            msIdentity          optional,
-  GMM_CauseTV                  gmmCause            optional,
-  GPRSTimer2TLV                t3302               optional,
-  CellNotificationT            cellNotification    optional,
-  PLMNListTLV                  equivalentPLMNs     optional,
-  NetworkFeatureSupportTV      networkFeatureSupport     optional,
-  EmergencyNumberListTLV       emergencyNumberList       optional,
-  RequestedMSInformationTV     requestedMSInformation    optional,
-  GPRSTimer2TLV                t3319                     optional,  
-  GPRSTimer2TLV                t3323                     optional,
-  GPRSTimer3TLV                t3312_ExtendedValue       optional,
-  AdditionalNetworkFeatureSupportTLV additionalNetworkFeatureSupport optional,
-  GPRSTimer2TLV                t3324 optional,
-  ExtendedDRXParametersTLV     extendedDRXParameters optional
-} with {
-  variant "PRESENCE (messageType = '00000010'B)";
-  variant "TAG
-  (
-  allocatedPTMSI,             elementIdentifier = '0011000'B;  //'18'O  7 bits
-  msIdentity,                 elementIdentifier = '0100011'B;  //'23'O  7 bits
-  t3302,                      elementIdentifier = '2A'O;  
-  t3319,                      elementIdentifier = '37'O;  
-  t3323,                      elementIdentifier = '38'O;
-  t3312_ExtendedValue,        elementIdentifier = '39'O;
-  t3324,                      elementIdentifier = '6a'O;
-  )"
-};
-
-
-// GMM Attach Complete - 9.4.3
-type record  PDU_GMM_AttachComplete
-{
-  BIT8                             messageType,
-  InterRATInformationContainerTLV  interRATHandoverInformation optional,
-  EUTRANinterRATInformationContainerTLV eUTRANinterRATHandoverInformation optional
-} with { variant "PRESENCE (messageType = '00000011'B)"; };
-
-
-// GMM Attach Reject - 9.4.4
-type record PDU_GMM_AttachReject
-{
-  BIT8                         messageType,
-  GMM_CauseV                   gmmCause,
-  GPRSTimer2TLV                t3302          optional,
-  GPRSTimer2TLV                t3346          optional 
-  
-} with { variant "PRESENCE (messageType = '00000100'B)"; 
-  variant "TAG 
-  ( 
-  t3302,     elementIdentifier = '2A'O;
-  t3346,     elementIdentifier = '3A'O;
-  )" 
-};
-
-// GMM Detach Request - 9.4.5
-
-// GMM Detach Request (mobile terminated detach) - 9.4.5.1
-type record PDU_GMM_DetachRequest_SGSN_MS
-{
-  BIT8                         messageType,
-  DetachTypeV                  detachType,
-  ForceToStandbyV              forceToStandby,
-  GMM_CauseTV                  gmmCause    optional
-} with { variant "PRESENCE (messageType = '00000101'B)"; };
-
-// GMM Detach Request (mobile originating detach) - 9.4.5.2
-type record   PDU_GMM_DetachRequest_MS_SGSN
-{
-  BIT8                         messageType,
-  DetachTypeV                  detachType,
-  BIT4                         spare,
-  MobileIdentityTLV            ptmsi             optional,
-  P_TMSISignature2TLV          ptmsiSignature    optional
-} with {
-  variant "PRESENCE (messageType = '00000101'B)";
-  variant "TAG (ptmsi, elementIdentifier = '0011000'B;)" //'18'O 7 bits
-};
-
-// GMM Detach Accept - 9.4.6
-
-// GMM Detach Accept (mobile terminated detach) 9.4.6.1
-type record  PDU_GMM_DetachAccept_MS_SGSN
-{
-  BIT8  messageType
-} with { variant "PRESENCE (messageType = '00000110'B)"; };
-
-// GMM Detach Accept (mobile originating detach) 9.4.6.2
-type record  PDU_GMM_DetachAccept_SGSN_MS
-{
-  BIT8                         messageType,
-  ForceToStandbyV              forceToStandby,
-  BIT4                         spare
-} with { variant "PRESENCE (messageType = '00000110'B)"; };
-
-// GMM P-TMSI reallocation command - 9.4.7
-type record  PDU_GMM_P_TMSIReallocationCommand
-{
-  BIT8                         messageType,
-  MobileIdentityLV             allocatedPTMSI,
-  RoutingAreaIdentificationV   routingAreaIdentification,
-  ForceToStandbyV              forceToStandby,
-  BIT4                         spare,
-  P_TMSISignatureTV            ptmsiSignature    optional
-} with { variant "PRESENCE (messageType = '00010000'B)"; };
-
-// GMM P-TMSI reallocation complete - 9.4.8
-type record  PDU_GMM_P_TMSIReallocationComplete
-{
-  BIT8              messageType
-} with { variant "PRESENCE (messageType = '00010001'B)"; };
-
-// GMM Authentication and ciphering request - 9.4.9
-type record PDU_GMM_AuthenticationAndCipheringRequest
-{
-  BIT8                                   messageType,
-  CipheringAlgorithmV                    cipheringAlgorithm,
-  IMEISVRequestV                         imeisvRequest,
-  ForceToStandbyV                        forceToStandby,
-  ACReferenceNumberV                     acReferenceNumber,
-  AuthenticationParameterRANDTV          authenticationParameterRAND optional,
-  CipheringKeySequenceNumberTV           cipheringKeySequenceNumber  optional,
-  AuthenticationParameterAUTNTLV         authenticationParameterAUTN optional
-} with { variant "PRESENCE (messageType = '00010010'B)"; 
-  variant "TAG (authenticationParameterAUTN,   elementIdentifier = '28'O)";
-};
-
-// GMM Authentication and ciphering response  - 9.4.10
-type record PDU_GMM_AuthenticationAndCipheringResponse
-{
-  BIT8                                   messageType,
-  ACReferenceNumberV                     acReferenceNumber,
-  BIT4                                   spare,
-  AuthenticationResponseParameterTV      authenticationParResp     optional,
-  MobileIdentityTLV                      imeisv                    optional,
-  AuthenticationResponseParameterUMTSTLV authenticationRespParExt  optional
-} with {
-  variant "PRESENCE (messageType = '00010011'B)";
-  variant "TAG (imeisv,                     elementIdentifier = '0100011'B;)"
-  variant "TAG (authenticationRespParExt,   elementIdentifier = '29'O)";
-};
-
-// GMM Authentication and Ciphering Failure  - 9.4.10a
-type record PDU_GMM_AuthenticationAndCipheringFailure
-{
-  BIT8                                   messageType,
-  GMM_CauseV                             gmmCause,
-  AuthenticationFailureParametersTLV     authenticationFailureParam   optional
-} with { variant "PRESENCE (messageType = '00011100'B)"; 
-  variant "TAG (authenticationFailureParam,   elementIdentifier = '30'O)";
-};
-
-// GMM Authentication and ciphering reject - 9.4.11
-type record PDU_GMM_AuthenticationAndCipheringReject
-{
-  BIT8               messageType
-} with { variant "PRESENCE (messageType = '00010100'B)"; };
-
-// GMM Identity Request - 9.4.12
-type record PDU_GMM_IdentityRequest
-{
-  BIT8               messageType,
-  IdentityType2V     identityType,
-  ForceToStandbyV    forceToStandby
-} with { variant "PRESENCE (messageType = '00010101'B)"; };
-
-// GMM Identity response - 9.4.13
-type record PDU_GMM_IdentityResponse
-{
-  BIT8               messageType,
-  MobileIdentityLV   mobileIdentity
-} with { variant "PRESENCE (messageType = '00010110'B)"; };
-
-// GMM Routing area update request - 9.4.14
-type record PDU_GMM_RoutingAreaUpdateRequest
-{
-  BIT8                         messageType,
-  UpdateTypeV                  updateType,
-  CipheringKeySequenceNumberV  gprsCKSN,
-  RoutingAreaIdentificationV   oldRoutingAreaId,
-  MSRadioAccessCapabilityLV    msRACap,
-  P_TMSISignatureTV            oldPTMSISignature           optional,
-  GPRSTimerTV                  readyTimerValue             optional,
-  DRXParameterTV               drxParameter                optional,
-  TMSIStatusTV                 tmsiStatus                  optional,
-  MobileIdentityTLV            ptmsi                       optional,
-  MSNetworkCapabilityTLV       mSNetworkCapability         optional,
-  PDPContextStatusTLV          pdpContextStatus            optional,
-  PC_LCSCapability             pC_LCSCapability            optional,
-  MBMS_ContextStatusTLV        mBMS_ContextStatus          optional,
-  UENetworkCapabilityTLV       uENetworkCapability         optional,
-  MobileIdentityTLV            additionalMobileIdentity    optional,
-  RoutingAreaIdentification2TLV oldRoutingAreaIdentification2 optional,
-  MobileStationClassmark2_TLV  mobileStationClassmark2     optional,
-  MobileStationClassmark3_TLV  mobileStationClassmark3     optional,
-  SupportedCodecList           supportedCodecs             optional,
-  VoiceDomainPreferenceandUEsUsageSettingTLV  voiceDomainUEUsageSetting  optional,
-  P_TMSI_TypeTV                p_TMSI_Type                 optional,
-  DevicePropertiesTV           deviceProperties            optional,  
-  MS_NetworkFeatureSupportTV   mS_NetworkFeatureSupport    optional,  
-  LocationAreaIdentification2_TLV oldLocationAreaIdentification optional,  
-  AdditionalUpdateTypeTV       additionalUpdateType optional,
-  NetworkResourceIdentifierContainerTLV tMSIBasedNRIcontainer optional,
-  GPRSTimer2TLV                t3324 optional,
-  GPRSTimer3TLV                t3312_ExtendedValue optional,
-  ExtendedDRXParametersTLV     extendedDRXParameters optional
-} with {
-  variant "PRESENCE (messageType = '00001000'B)";
-  variant "TAG (
-  ptmsi,                                  elementIdentifier = '0011000'B; //'18'O 7 bits
-  additionalMobileIdentity,               elementIdentifier = '0011010'B;
-  deviceProperties,                       elementIdentifier = '1101'B;  //D
-  mS_NetworkFeatureSupport,               elementIdentifier = '1100'B;  //C
-  t3324,                                  elementIdentifier = '6a'O;
-  t3312_ExtendedValue,                    elementIdentifier = '39'O
-  )"
-};
-
-// GMM Routing Area update accept  - 9.4.15
-type record PDU_GMM_RoutingAreaUpdateAccept
-{
-  BIT8                         messageType,
-  ForceToStandbyV              forceToStandby,
-  UpdateResultV                updateResult,
-  GPRSTimerV                   raUpdateTimer,
-  RoutingAreaIdentificationV   routingAreaId,
-  P_TMSISignatureTV            ptmsiSignature             optional,
-  MobileIdentityTLV            allocatedPTMSI             optional,
-  MobileIdentityTLV            msIdentity                 optional,
-  ReceiveNPDUNumbersListTLV    receiveNPDUNumbers         optional,
-  GPRSTimerTV                  readyTimer                 optional,
-  GMM_CauseTV                  gmmCause                   optional,
-  GPRSTimer2TLV                t3302                      optional,
-  CellNotificationT            cellNotification           optional,
-  PLMNListTLV                  equivalentPLMNs            optional,
-  PDPContextStatusTLV          pdpContextStatus           optional,
-  NetworkFeatureSupportTV      networkFeatureSupport      optional,
-  EmergencyNumberListTLV       emergencyNumberList        optional,
-  MBMS_ContextStatusTLV        mBMS_ContextStatus         optional,
-  RequestedMSInformationTV     requestedMSInformation     optional,
-  GPRSTimer2TLV                t3319                      optional,
-  GPRSTimer2TLV                t3323                      optional,
-  GPRSTimer3TLV                t3312_ExtendedValue        optional,   
-  AdditionalNetworkFeatureSupportTLV additionalNetworkFeatureSupport optional,
-  GPRSTimer2TLV                t3324 optional,
-  ExtendedDRXParametersTLV     extendedDRXParameters optional
-} with {
-  variant "PRESENCE (messageType = '00001001'B)";
-  variant "TAG
-  (
-  allocatedPTMSI,            elementIdentifier = '0011000'B; //'18'O 7 bits
-  msIdentity,                elementIdentifier = '0100011'B; //'23'O 7 bits
-  t3302,                     elementIdentifier = '2A'O; 
-  t3319,                     elementIdentifier = '37'O;   
-  t3323,                     elementIdentifier = '38'O;
-  t3312_ExtendedValue,       elementIdentifier = '39'O;
-  t3324,                     elementIdentifier = '6a'O;
-  )"
-};
-
-// GMM Routing area update complete - 9.4.16
-type record PDU_GMM_RoutingAreaUpdateComplete
-{
-  BIT8                             messageType,
-  ReceiveNPDUNumbersListTLV        receiveNPDUNumbers     optional,
-  InterRATInformationContainerTLV  interRATHandoverInformation optional,
-  EUTRANinterRATInformationContainerTLV eUTRANinterRATHandoverInformation optional
-} with { variant "PRESENCE (messageType = '00001010'B)"; };
-
-// GMM Routing area update reject - 9.4.17
-type record PDU_GMM_RoutingAreaUpdateReject
-{
-  BIT8                         messageType,
-  GMM_CauseV                   gmmCause,
-  ForceToStandbyV              forceToStandby,
-  BIT4                         spare,
-  GPRSTimer2TLV                t3302                  optional,
-  GPRSTimer2TLV                t3346                  optional
-} with { 
-  variant "PRESENCE (messageType = '00001011'B)"; 
-  variant "TAG
-  (   
-  t3302,                     elementIdentifier = '2A'O; 
-  t3346,                     elementIdentifier = '3A'O;       
-  )"
-};
-
-// GMM GMM Status - 9.4.18
-type record PDU_GMM_GMM_Status
-{
-  BIT8                         messageType,
-  GMM_CauseV                   gmmCause
-} with { variant "PRESENCE (messageType = '00100000'B)"; };
-
-
-// GMM GMM Information - 9.4.19
-type record PDU_GMM_GMM_Information
-{
-  BIT8                         messageType,
-  NetworkNameTLV               fullNetworkName            optional,
-  NetworkNameTLV               shortNetworkName           optional,
-  TimeZoneTV                   networkTimeZone            optional,
-  TimeZoneAndTimeTV            networkTimeAndTimeZone     optional,
-  LSA_IdentifierTLV            lsaIdentity                optional,
-  DaylightSavingTimeTLV        networkDaylightSavingTime  optional
-} with {
-  variant "PRESENCE (messageType = '00100001'B)";
-  variant "TAG
-  (
-  fullNetworkName,           elementIdentifier = '1000011'B;//'43'O  7 bits
-  shortNetworkName,          elementIdentifier = '1000101'B;//'45'O  7 bits
-  )"
-};
-
-// GMM Service Request - 9.4.20
-type record PDU_GMM_ServiceRequest
-{
-  BIT8                         messageType,
-  CipheringKeySequenceNumberV  cipheringKeySeqNum,
-  ServiceTypeV                 serviceType,
-  MobileIdentityLV             ptmsi,
-  PDPContextStatusTLV          pdpContextStatus    optional, // this IE shall be included by the MS
-  MBMS_ContextStatusTLV        mBMS_ContextStatus  optional,
-  UplinkDataStatusTLV          uplinkDataStatus    optional,
-  DevicePropertiesTV           deviceProperties    optional
-} with { variant "PRESENCE (messageType = '00001100'B)"; 
-         variant "TAG (deviceProperties,  elementIdentifier = '1101'B;  //D
-  )"  
-};
-
-// GMM Service Accept - 9.4.21
-type record PDU_GMM_ServiceAccept
-{
-  BIT8                         messageType,
-  PDPContextStatusTLV          pdpContextStatus     optional,
-  MBMS_ContextStatusTLV        mBMS_ContextStatus   optional
-} with { variant "PRESENCE (messageType = '00001101'B)"; };
-
-// GMM Service Reject - 9.4.22
-type record PDU_GMM_ServiceReject
-{
-  BIT8                          messageType,
-  GMM_CauseV                    gmmCause,
-  GPRSTimer2TLV                 t3346 optional
-} with { variant "PRESENCE (messageType = '00001110'B)"; };
-
-
-// ==============================================
-// GPRS Session Management Messages (chapter 9.5)
-// ==============================================
-
-// SM Activate PDP Context Request - 9.5.1
-type record PDU_SM_ActivatePDPContextRequest
-{
-  BIT8                         messageType,
-  NSAPIV                       requestedNSAPI,
-  LLC_SAPIV                    requestedLLCSAPI,
-  QoSLV                        requestedQoS,
-  PDPAddressLV                 requestedPDPaddress,
-  AccessPointNameTLV           accessPointName       optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts    optional,
-  RequestTypeTV                requestType           optional,
-  DevicePropertiesTV           deviceProperties      optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container      optional
-} with { variant "PRESENCE (messageType = '01000001'B)"; 
-         variant "TAG ( deviceProperties,  elementIdentifier = '1100'B;  //C
-  )"    
-};
-
-
-// SM Activate PDP Context Accept - 9.5.2
-type record PDU_SM_ActivatePDPContextAccept
-{
-  BIT8                         messageType,
-  LLC_SAPIV                    negotiatedLLCSAPI,
-  QoSLV                        negotiatedQoS,
-  RadioPriorityV               radioPriority,
-  BIT4                         spare,
-  PDPAddressTLV                pdpAddress            optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts    optional,
-  PacketFlowIDTLV              packetFlowID          optional,
-  SMCause2TLV                  sMCause2              optional,
-  ConnectivityTypeTV           connectivityType      optional,
-  WLANOffloadAcceptabilityTV   wLANOffloadIndication optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container      optional
-} with { variant "PRESENCE (messageType = '01000010'B)"; };
-
-
-// SM Activate PDP Context Reject - 9.5.3
-type record PDU_SM_ActivatePDPContextReject
-{
-  BIT8                         messageType,
-  SMCauseV                     smCause,
-  ProtocolConfigOptionsTLV     protocolConfigOpts     optional,
-  GPRSTimer3TLV                backOffTimer           optional,
-  ReAttemptIndicatorTLV        reAttemptIndicator     optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container       optional
-} with { variant "PRESENCE (messageType = '01000011'B)"; 
-         variant "TAG (backOffTimer,  elementIdentifier = '37'O)"
-};
-
-
-// SM Activate Secondary PDP Context - 9.5.4
-type record PDU_SM_ActivateSecondaryPDPContextRequest
-{
-  BIT8                         messageType,
-  NSAPIV                       requestedNSAPI,
-  LLC_SAPIV                    requestedLLC_SAPI,
-  QoSLV                        requestedQoS,
-  LinkedTILV                   linkedTI,
-  TrafficFlowTemplateTLV       tft                     optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts      optional,
-  DevicePropertiesTV           deviceProperties        optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container        optional          
-} with { variant "PRESENCE (messageType = '01001101'B)";     
-         variant "TAG (deviceProperties,   elementIdentifier = '1100'B;  //C
-  )" 
-};
-// SM Activate Secondary PDP Context Accept - 9.5.5
-type record PDU_SM_ActivateSecondaryPDPContextAccept
-{
-  BIT8                         messageType,
-  LLC_SAPIV                    negotiatedLLC_SAPI,
-  QoSLV                        negotiatedQoS,
-  RadioPriorityV               radioPriority,
-  BIT4                         spare,
-  PacketFlowIDTLV              packetFlowIdentifier     optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts       optional,
-  WLANOffloadAcceptabilityTV   wLANOffloadIndication    optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container         optional
-} with { variant "PRESENCE (messageType = '01001110'B)"; };
-
-
-// SM Activate Secondary PDP Context Reject - 9.5.6
-type record PDU_SM_ActivateSecondaryPDPContextReject
-{
-  BIT8                         messageType,
-  SMCauseV                     smCause,
-  ProtocolConfigOptionsTLV     protocolConfigOpts      optional,
-  GPRSTimer3TLV                backOffTimer            optional,
-  ReAttemptIndicatorTLV        reAttemptIndicator      optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container        optional
-} with  { variant "PRESENCE (messageType = '01001111'B)"; 
-          variant "TAG (backOffTimer,  elementIdentifier = '37'O)"
-};
-
-
-// SM Request PDP context activation -  9.5.7
-type record PDU_SM_RequestPDPContextActivation
-{
-  BIT8                         messageType,
-  PDPAddressLV                 offeredPDPAdress,
-  AccessPointNameTLV           accessPointName         optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts      optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container        optional
-} with { variant "PRESENCE (messageType = '01000100'B)"; };
-
-
-// SM Request PDP context activation reject - 9.5.8
-type record PDU_SM_RequestPDPContextActivationReject
-{
-  BIT8                         messageType,
-  SMCauseV                     smCause,
-  ProtocolConfigOptionsTLV     protocolConfigOpts      optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container        optional
-} with { variant "PRESENCE (messageType = '01000101'B)"; };
-
-
-// SM Modify PDP context request (Network to MS direction) - 9.5.9
-type record PDU_SM_ModifyPDPContextRequest_SGSN_MS
-{
-  BIT8                         messageType ,
-  RadioPriorityV               radioPriority,
-  BIT4                         spare,
-  LLC_SAPIV                    requestedLLC_SAPI,
-  QoSLV                        newQoS,
-  PDPAddressTLV                pdpAddress              optional,
-  PacketFlowIDTLV              packetFlowIdentifier    optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts      optional,
-  TrafficFlowTemplateTLV       tFT                     optional,  
-  WLANOffloadAcceptabilityTV   wLANOffloadIndication   optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container        optional
-} with { variant "PRESENCE (messageType = '01001000'B)"; };
-
-
-// SM Modify PDP context request (MS to network direction) - 9.5.10
-type record PDU_SM_ModifyPDPContextRequest_MS_SGSN
-{
-  BIT8                         messageType,
-  LLC_SAPITV                   requestedLLC_SAPI      optional,
-  QoSTLV                       requestedNewQoS        optional,
-  TrafficFlowTemplateTLV       newTFT                 optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts     optional,
-  DevicePropertiesTV           deviceProperties       optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container       optional           
-} with { variant "PRESENCE (messageType = '01001010'B)"; 
-         variant "TAG (deviceProperties, elementIdentifier = '1100'B;  //C
-    )"     
-};
-
-
-// SM Modify PDP context accept (MS to network direction) - 9.5.11
-type record PDU_SM_ModifyPDPContextAccept_MS_SGSN
-{
-  BIT8                         messageType,
-  ProtocolConfigOptionsTLV     protocolConfigOpts     optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container       optional
-} with { variant "PRESENCE (messageType = '01001001'B)"; };
-
-
-// SM Modify PDP context accept (Network to MS direction) - 9.5.12
-type record PDU_SM_ModifyPDPContextAccept_SGSN_MS
-{
-  BIT8                         messageType,
-  QoSTLV                       negotiatedQoS          optional,
-  LLC_SAPITV                   negotiatedLLC_SAPI     optional,
-  RadioPriorityTV              newRadioPriority       optional,
-  PacketFlowIDTLV              packetFlowIdentifier   optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts     optional,
-  WLANOffloadAcceptabilityTV   wLANOffloadIndication  optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container       optional
-} with { variant "PRESENCE (messageType = '01001011'B)"; };
-
-
-// SM Modify PDP Context reject - 9.5.13
-type record PDU_SM_ModifyPDPContextReject
-{
-  BIT8                         messageType,
-  SMCauseV                     smCause,
-  ProtocolConfigOptionsTLV     protocolConfigOpts     optional,
-  GPRSTimer3TLV                backOffTimer           optional,
-  ReAttemptIndicatorTLV        reAttemptIndicator     optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container       optional
-} with { variant "PRESENCE (messageType = '01001100'B)"; 
-         variant "TAG (backOffTimer,  elementIdentifier = '37'O)"
-};
-
-
-// SM Deactivate PDP Context Request - 9.5.14
-type record PDU_SM_DeactivatePDPContextRequest
-{
-  BIT8                         messageType,
-  SMCauseV                     smCause,
-  TearDownIndicatorTV          tearDownIndicator         optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts        optional,
-  MBMSProtocolConfigOptionsTLV mBMSprotocolConfigOptions optional,
-  GPRSTimer3TLV                t3396                     optional,
-  WLANOffloadAcceptabilityTV   wLANOffloadIndication     optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container          optional
-} with { variant "PRESENCE (messageType = '01000110'B)";
-  variant "TAG (t3396,  elementIdentifier = '37'O)"
-};
-
-
-// SM Deactivate PDP Context Accept 3GPP - 9.5.15
-type record PDU_SM_DeactivatePDPContextAccept
-{
-  BIT8                         messageType,
-  ProtocolConfigOptionsTLV     protocolConfigOpts        optional,
-  MBMSProtocolConfigOptionsTLV mBMSprotocolConfigOptions optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container          optional
-} with { variant "PRESENCE (messageType = '01000111'B)"; };
-
-
-// Request Secondary PDP Context Activation - 9.5.15a
-type record PDU_SM_RequestSecondaryPDPContextActivation
-{
-  BIT8                         messageType,
-  QoSLV                        requiredQoS,
-  LinkedTILV                   linkedTI,
-  TrafficFlowTemplateTLV       tFT                     optional,
-  ProtocolConfigOptionsTLV     protocolConfigOpts      optional,  
-  WLANOffloadAcceptabilityTV   wLANOffloadIndication   optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container        optional
-} with { variant "PRESENCE (messageType = '01011011'B)"; };
-
-
-// Request Secondary PDP Context Activation Reject - 9.5.15b
-type record PDU_SM_RequestSecondaryPDPContextActivationReject
-{
-  BIT8                         messageType,
-  SMCauseV                     smCause,
-  ProtocolConfigOptionsTLV     protocolConfigOpts      optional,
-  NBIFOM_ContainerTLV          nBIFOM_Container        optional  
-} with { variant "PRESENCE (messageType = '01011100'B)"; };
-
-// Notification - 9.5.16a
-type record PDU_SM_Notification
-{
-  BIT8                         messageType,
-  NotificationIndicatorLV      notificationIndicator
-} with { variant "PRESENCE (messageType = '01011101'B)"; };
-
-// SM SM Status - 9.5.21
-type record PDU_SM_SM_Status
-{
-  BIT8                         messageType,
-  SMCauseV                     smCause
-} with { variant "PRESENCE (messageType = '01010101'B)"; };
-
-
-// Activate MBMS Context Request - 9.5.22
-type record PDU_SM_ActivateMBMSContextRequest
-{
-  BIT8                                   messageType,
-  EnhancedNetworkSeviveAccessPointIDV    requestedMBMS_NSAPI,
-  LLC_SAPIV                              requestedLLCSAPI,
-  MBMSBearerCapabilitiesLV               supportdMBMSBearerCapabilities,
-  PDPAddressLV                           requestedMulticastAddress,
-  AccessPointNameLV                      accessPointName,
-  MBMSProtocolConfigOptionsTLV           mBMSprotocolConfigOptions optional,
-  DevicePropertiesTV                     deviceProperties optional
-} with { variant "PRESENCE (messageType = '01010110'B)";    
-         variant "TAG(deviceProperties,  elementIdentifier = '1100'B;  //C
-  )"        
-};
-
-
-// Activate MBMS Context Accept - 9.5.23
-type record PDU_SM_ActivateMBMSContextAccept
-{
-  BIT8                                   messageType,
-  TemporaryMobileGroupIDLV               temporaryMobileGroupIDLV,
-  LLC_SAPIV                              negotiatedLLCSAPI,
-  MBMSProtocolConfigOptionsTLV           mBMSprotocolConfigOptions optional
-} with { variant "PRESENCE (messageType = '01010111'B)"; };
-
-
-// Activate MBMS Context Reject - 9.5.24
-type record PDU_SM_ActivateMBMSContextReject
-{
-  BIT8                                   messageType,
-  SMCauseV                               smCause,
-  MBMSProtocolConfigOptionsTLV           mBMSprotocolConfigOptions optional,
-  GPRSTimer3TLV                          backOffTimer optional,
-  ReAttemptIndicatorTLV                  reAttemptIndicator     optional
-} with { variant "PRESENCE (messageType = '01011000'B)"; 
-         variant "TAG (backOffTimer,  elementIdentifier = '37'O)"
-};
-
-
-// Request MBMS Context Activation - 9.5.25
-type record PDU_SM_RequestMBMSContextActivation
-{
-  BIT8                                   messageType,
-  NSAPIV                                 linkedNSAPI,
-  PDPAddressLV                           offeredMulticastAddress,
-  AccessPointNameLV                      accessPointName,
-  MBMSProtocolConfigOptionsTLV           mBMSprotocolConfigOptions optional
-} with { variant "PRESENCE (messageType = '01011001'B)"; };
-
-
-// Request MBMS Context Activation Reject - 9.5.26
-type record PDU_SM_RequestMBMSContextActivationReject
-{
-  BIT8                                   messageType,
-  SMCauseV                               smCause,
-  MBMSProtocolConfigOptionsTLV           mBMSprotocolConfigOptions optional
-} with { variant "PRESENCE (messageType = '01011010'B)"; };
-
-
-//==============================================================================
-//==============================================================================
-// GPRS SESSION MANAGEMENT MESSAGES Messages MS TO SGSN
-//==============================================================================
-//==============================================================================
-type union L3_GSM_MS_SGSN
-{
-  PDU_SM_ActivatePDPContextRequest          activatePDPContextRequest,
-  PDU_SM_ActivateSecondaryPDPContextRequest activateSecondaryPDPContextRequest,
-  PDU_SM_RequestPDPContextActivationReject  requestPDPContextActivationReject,
-  PDU_SM_ModifyPDPContextRequest_MS_SGSN    modifyPDPContextRequest_MS_SGSN,
-  PDU_SM_ModifyPDPContextAccept_MS_SGSN     modifyPDPContextAccept_MS_SGSN,
-  //SGSN_MS, MS_SGSN
-  PDU_SM_DeactivatePDPContextRequest        deactivatePDPContextRequest,
-  //SGSN_MS, MS_SGSN
-  PDU_SM_DeactivatePDPContextAccept         deactivatePDPContextAccept,
-  //SGSN_MS, MS_SGSN
-  PDU_SM_SM_Status                          sM_Status,
-  PDU_SM_ActivateMBMSContextRequest         activateMBMSContextRequest,
-  PDU_SM_RequestMBMSContextActivationReject requestMBMSContextActivationReject,
-  PDU_SM_RequestSecondaryPDPContextActivationReject  requestSecondaryPDPContextActivationReject,
-  PDU_SM_Notification                       notification
-};
-
-//==============================================================================
-//==============================================================================
-// GPRS SESSION MANAGEMENT MESSAGES Messages SGSN -> MS
-//==============================================================================
-//==============================================================================
-type union L3_GSM_SGSN_MS
-{
-  PDU_SM_ActivatePDPContextAccept           activatePDPContextAccept,
-  PDU_SM_ActivatePDPContextReject           activatePDPContextReject,
-  PDU_SM_ActivateSecondaryPDPContextAccept  activateSecondaryPDPContextAccept,
-  PDU_SM_ActivateSecondaryPDPContextReject  activateSecondaryPDPContextReject,
-  PDU_SM_RequestPDPContextActivation        requestPDPContextActivation,
-  PDU_SM_ModifyPDPContextRequest_SGSN_MS    modifyPDPContextRequest_SGSN_MS,
-  PDU_SM_ModifyPDPContextAccept_SGSN_MS     modifyPDPContextAccept_SGSN_MS,
-  PDU_SM_ModifyPDPContextReject             modifyPDPContextReject,
-  //SGSN_MS, MS_SGSN
-  PDU_SM_DeactivatePDPContextRequest        deactivatePDPContextRequest,
-  //SGSN_MS, MS_SGSN
-  PDU_SM_DeactivatePDPContextAccept         deactivatePDPContextAccept,
-  //SGSN_MS, MS_SGSN
-  PDU_SM_SM_Status                          sM_Status,
-  PDU_SM_ActivateMBMSContextAccept          activateMBMSContextAccept,
-  PDU_SM_ActivateMBMSContextReject          activateMBMSContextReject,
-  PDU_SM_RequestMBMSContextActivation       requestMBMSContextActivation,
-  PDU_SM_RequestSecondaryPDPContextActivation  requestSecondaryPDPContextActivation
-};
-
-//==============================================================================
-//==============================================================================
-// GPRS Mobility Management Messages MS TO SGSN
-//==============================================================================
-//==============================================================================
-type union L3_GMM_MS_SGSN
-{
-  PDU_GMM_AttachRequest                     attachRequest,
-  PDU_GMM_AttachComplete                    attachComplete,
-  PDU_GMM_DetachRequest_MS_SGSN             detachRequest_MS_SGSN,
-  PDU_GMM_DetachAccept_MS_SGSN              detachAccept_MS_SGSN,
-  PDU_GMM_P_TMSIReallocationComplete        p_TMSIReallocationComplete,
-  PDU_GMM_AuthenticationAndCipheringResponse  authenticationAndCipheringResponse,
-  PDU_GMM_AuthenticationAndCipheringFailure authenticationAndCipheringFailure,
-  PDU_GMM_IdentityResponse                  identityResponse,
-  PDU_GMM_RoutingAreaUpdateRequest          routingAreaUpdateRequest,
-  PDU_GMM_RoutingAreaUpdateComplete         routingAreaUpdateComplete,
-  //SGSN_MS, MS_SGSN
-  PDU_GMM_GMM_Status                        gMM_Status,
-  PDU_GMM_ServiceRequest                    serviceRequest
-};
-
-//==============================================================================
-//==============================================================================
-// GPRS Mobility Management Messages SGSN TO MS
-//==============================================================================
-//==============================================================================
-type union L3_GMM_SGSN_MS
-{
-  PDU_GMM_AttachAccept                      attachAccept,
-  PDU_GMM_AttachReject                      attachReject,
-  PDU_GMM_DetachRequest_SGSN_MS             detachRequest_SGSN_MS,
-  PDU_GMM_DetachAccept_SGSN_MS              detachAccept_SGSN_MS,
-  PDU_GMM_P_TMSIReallocationCommand         p_TMSIReallocationCommand,
-  PDU_GMM_AuthenticationAndCipheringRequest authenticationAndCipheringRequest,
-  PDU_GMM_AuthenticationAndCipheringReject  authenticationAndCipheringReject,
-  PDU_GMM_IdentityRequest                   identityRequest,
-  PDU_GMM_RoutingAreaUpdateAccept           routingAreaUpdateAccept,
-  PDU_GMM_RoutingAreaUpdateReject           routingAreaUpdateReject,
-  //SGSN_MS, MS_SGSN
-  PDU_GMM_GMM_Status                        gMM_Status,
-  PDU_GMM_GMM_Information                   gMM_Information,
-  PDU_GMM_ServiceAccept                     serviceAccept,
-  PDU_GMM_ServiceReject                     serviceReject
-};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-} 
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_MM_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_MM_Types.ttcn
deleted file mode 100644
index 56f8553..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_MM_Types.ttcn
+++ /dev/null
@@ -1,572 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_MM_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.008 v13.4.0
-
-
-module  MobileL3_MM_Types
-{
-
-import from General_Types           all;
-import from MobileL3_CommonIE_Types all;
-
-//============================================================================
-// 24.008/ 10.5.3  Mobility Management information elements
-//============================================================================
-
-//10.5.3.1  AuthenticationParRAND
-//**********************************************************************
-type record AuthenticationParameterRANDTV
-{
-  OCT1               elementIdentifier,
-  OCT16              randValue
-} with { variant "PRESENCE (elementIdentifier = '21'O)"; };
-
-//10.5.3.1.1 Authentication Par AUTN (UMTS auth. ch. only)
-//**********************************************************************
-type record AuthenticationParameterAUTNTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  OCT16              autnValue
-} with { variant (lengthIndicator) "LENGTHTO (autnValue)"};
-
-//10.5.3.2 Authentication Response parameter
-//**********************************************************************
-type record  AuthenticationResponseParameterTV
-{
-  OCT1               elementIdentifier,
-  OCT4               valueField   length (4)
-} with { variant "PRESENCE (elementIdentifier = '22'O)"; };
-
-//10.5.3.2.1 Authentication Response parameter (extension)
-//**********************************************************************
-type record AuthenticationResponseParameterUMTSTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  octetstring        valueField     length (1..12)
-} with { variant (lengthIndicator) "LENGTHTO (valueField)"};
-
-
-//10.5.3.2.2 Authentication Failure parameter (UMTS authentication challenge only)
-//**********************************************************************
-type record AuthenticationFailureParametersTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  octetstring        valueField     length (14)
-} with { variant "PRESENCE (elementIdentifier = '30'O)";
-         variant (lengthIndicator) "LENGTHTO (valueField)"};
-
-//10.5.3.5 Location Update Type
-//****************************************************************************
-type record LocationUpdatingType
-{
-  BIT2               lut, // LU  Normal  (00)
-                          // LU  Periodic  (01)
-                          // Attach  IMSI  (10)
-                          // reserved    (11)
-  BIT1               spare1_1, // 0
-  BIT1               fop   // Follow Pending on (1), not (0)
-};
-
-//10.5.3.5a Network Name
-//****************************************************************************
-type record  NetworkNameTLV
-{
-  BIT7               elementIdentifier,
-  BIT1               spare1,
-  LIN1               lengthIndicator,
-  NetworkNameV       valueField
-} with { variant (lengthIndicator) "LENGTHTO (valueField)"};
-
-
-type record  NetworkNameV
-{
-  BIT3               nSpareBits,
-  BIT1               addCI,
-  BIT3               codingScheme,
-  BIT1               ext1, //'1'B
-  octetstring        textString //     length (0..infinity)
-  // actually the upper limit depends on the max size of the PDU, see 44.006
-};
-
-//10.5.3.7 Follow-on Proceed
-//****************************************************************************
-type Type2 FollowOnProceed; //'A1'O
-
-//10.5.3.8 TimeZone
-//****************************************************************************
-type record TimeZoneTV
-{
-  BIT7               elementIdentifier,
-  BIT1               spare,
-  TimeZoneV          valueField
-} with { variant "PRESENCE (elementIdentifier = '1000110'B)"; };  //'46'O  7 bits
-
-type record TimeZoneV
-{
-  OCT1               timeZone
-};
-
-//10.5.3.9 Time Zone And Time
-//****************************************************************************
-type record TimeZoneAndTimeTV
-{
-  BIT7               elementIdentifier,
-  BIT1               spare,
-  TimeZoneAndTimeV   valueField
-} with { variant "PRESENCE (elementIdentifier = '1000111'B)"; };  //'47'O  7 bits;
-
-
-type record TimeZoneAndTimeV
-{
-  OCT1               year,
-  OCT1               month,
-  OCT1               day,
-  OCT1               hour,
-  OCT1               minute,
-  OCT1               second,
-  OCT1               timeZone
-};
-
-//10.5.3.10 CTS permission
-//**********************************************************************
-type Type2 CTS_Permission;
-
-//10.5.3.11 LSA identifier (Localised Service Area)
-//**********************************************************************
-type record  LSA_IdentifierTLV
-{
-  BIT7               elementIdentifier,
-  BIT1               spare,
-  LIN1               lengthIndicator,
-  LSA_IdentifierV    valueField
-} with { variant "PRESENCE (elementIdentifier = '1001000'B)";  //'48'O  7 bits
-         variant (lengthIndicator) "LENGTHTO (valueField)"};
-
-type record LSA_IdentifierV
-{
-  octetstring lsa_id length (0..3)
-};
-
-//10.5.3.12 Daylight Saving Time
-//**********************************************************************
-type record DaylightSavingTimeTLV
-{
-  OCT1               elementIdentifier,
-  LIN1               lengthIndicator,
-  DaylightSavingTimeV valueField
-} with { variant "PRESENCE (elementIdentifier = '49'O)";
-         variant (lengthIndicator) "LENGTHTO (valueField)"};
-
-type record DaylightSavingTimeV
-{
-  BIT2               valueField,
-  BIT6               spare     // Shall be set to 000000
-};
-
-//10.5.3.13 Emergency Number List
-//**********************************************************************
-type record EmergencyNumberListTLV
-{
-  OCT1                 elementIdentifier,
-  LIN1                 lengthIndicator,
-  EmergencyNumberListV emergencyNumberListV
-} with { variant "PRESENCE (elementIdentifier = '34'O)";
-         variant (lengthIndicator) "LENGTHTO (emergencyNumberListV)"};
-
-type record of EmergencyNumber EmergencyNumberListV
-
-type record EmergencyNumber
-{
-  LIN1                     lengthIndicator,
-  EmergencyServiceCategory emergencyServiceCategory,
-  hexstring                emergencyNumber        length (1..44)
-} with { variant (lengthIndicator) "LENGTHTO (emergencyServiceCategory,emergencyNumber)";
-         variant "PADDING(yes)";
-         variant "PADDING_PATTERN('1111'B)"};
-
-type record EmergencyServiceCategory
-{
-  BIT5               valueFiled,
-  BIT3               spare   //'000'B
-};
-
-//10.5.3.14 Additional Update Parameter
-//moved into MobileL3_CommonIE_Types
-
-
-//10.5.3.16 MM Timer
-//**********************************************************************
-type record MM_TimerTLV
-{
-  OCT1                 elementIdentifier,
-  LIN1                 lengthIndicator,
-  MM_TimerV            valueField
-} with { variant "PRESENCE (elementIdentifier = '36'O)";
-         variant (lengthIndicator) "LENGTHTO (valueField)"};
-
-type record MM_TimerV
-{
-  BIT5               timerValue,
-  BIT3               unit
-}
-
-//============================================================================
-// 24.008/9.2 Messages for mobility management (MM)
-//============================================================================
-
-//**********************************************************************
-// Security Messages
-//**********************************************************************
-
-// 9.2.1 Authentication Reject
-//**********************************************************************
-type record PDU_ML3_AuthenticationReject
-{
-  BIT6  messageType, // '010001'B  (AuthenticationReject)
-  BIT2  nsd
-};
-
-// 9.2.2 Authentication Request
-//**********************************************************************
-type record PDU_ML3_AuthenticationRequest
-{
-  BIT6  messageType, // '010010'B
-  BIT2  nsd,
-  CipheringKeySequenceNumberV   cipheringKeySequenceNumber,
-  BIT4                          spare2_4, // B'0000
-  OCT16                         authenticationParRAND,
-  AuthenticationParameterAUTNTLV  authenticationParAUTN    optional
-      // added by ethcky acc to 10/155 17_1/APT 210 26/1 Uen Rev A
-} with { variant "TAG (
-                authenticationParAUTN, elementIdentifier = '20'O ) "};
-
-// 9.2.3 Authentication Response
-//****************************************************************************
-type record PDU_ML3_AuthenticationResponse
-{
-  BIT6  messageType, // '010100'B  (AuthenticationResponse)
-  BIT2  nsd,
-  OCT4  authenticationParSRES, //10.5.3.2
-  AuthenticationResponseParameterUMTSTLV  authenticationParSRESext  optional
-} with { variant "TAG (authenticationParSRESext, elementIdentifier = '21'O )"};
-
-// 9.2.3a Authentication Failure
-//****************************************************************************
-type record PDU_ML3_AuthenticationFailure
-{
-  BIT6  messageType, // '011100'B  (AuthenticationFailure)
-  BIT2  nsd,
-  OCT1  rejectCause, //10.5.3.6
-  AuthenticationFailureParametersTLV  authenticationParFailure  optional
-} with { variant "TAG (authenticationParFailure , elementIdentifier = '22'O ) " };
-
-//**********************************************************************
-// Mobility Management Message Types (TS 24.008/ chapter 9)
-// Connection management (CM) messages
-//**********************************************************************
-
-// 9.2.4 CM Re-establishment Request
-//**********************************************************************
-type record PDU_ML3_CMReestablishmentRequest
-{
-  BIT6                          messageType,      // '101000'B
-  BIT2                          nsd,
-  CipheringKeySequenceNumberV   cipheringKeySequenceNumber,
-  BIT4                          spare,
-  MobileStationClassmark2_LV    mobileStationClassmark2,
-  MobileIdentityLV              mobileIdentityLV,
-  LocationAreaIdentification_TV locationAreaIdentification optional,
-  DevicePropertiesTV            deviceProperties  optional  
-} with { variant "TAG (locationAreaIdentification, elementIdentifier = '13'O;
-                       deviceProperties,           elementIdentifier = '1101'B;) 
-"};
-
-// 9.2.5 CM Service Accept (NW->MS)
-//**********************************************************************
-type record PDU_ML3_CMServiceAccept
-{
-  BIT6  messageType, //    '100001'B
-  BIT2  nsd
-};
-
-// 9.2.5a CMServicePrompt (NW->MS)
-//**********************************************************************
-type record PDU_ML3_CMServicePrompt
-{
-  BIT6  messageType, //    '100101'B
-  BIT2  nsd,
-  PdAndSapi pd_sapi
-};
-
-// 9.2.6 CMServiceReject (NW->MS)
-//**********************************************************************
-type record PDU_ML3_CMServiceReject
-{
-  BIT6  messageType, //    '100010'B
-  BIT2  nsd,
-  OCT1  rejectCause, //10.5.3.6
-  MM_TimerTLV t3246_Value optional     
-};
-
-// 9.2.7 CM Service Abort (MS->NW to request the abortion)
-//**********************************************************************
-type record PDU_ML3_CMServiceAbort
-{
-  BIT6  messageType, //   '100011'B
-  BIT2  nsd
-};
-
-// 9.2.8  Abort (NW->MS to initiate the abortion)
-//**********************************************************************
-type record PDU_ML3_Abort
-{
-  BIT6  messageType, //    '100010'B
-  BIT2  nsd,
-  OCT1  rejectCause //10.5.3.6
-};
-
-// 9.2.9 CM Service Request (MS->NW)
-//**********************************************************************
-type record PDU_ML3_CMServiceRequest
-{
-  BIT6  messageType,//    '100100'B
-  BIT2  nsd,
-  BIT4  cm_ServiceType,  // '0001'B establishment  MOC
-                         // '0010'B Emergency Call
-                         // '0100'SMS  B
-                         // '1000'B SS activation
-  CipheringKeySequenceNumberV cipheringKeySequenceNumber,
-  MobileStationClassmark2_LV  mobileStationClassmark2,
-  MobileIdentityLV            mobileIdentity,
-  PriorityLevel_ML3           priorityLevel   optional,
-  AdditionalUpdateParameterTV additionalUpdateParameterTV optional,
-  DevicePropertiesTV          deviceProperties optional
-} with { variant "TAG (priorityLevel,    elementIdentifier = '1000'B; 
-                       deviceProperties, elementIdentifier = '1101'B;) 
-"};
-
-//9.2.10 Identity Request
-//**********************************************************************
-type record PDU_ML3_IdentityRequest
-{
-  BIT6  messageType, //   '011000'B ( IdentityRequest )
-  BIT2  nsd,
-  BIT3  identityType,  // IMSI:'001'B IMEI:'010'B IMEISV:'011'B
-                       //(TMSI:'100'B not allowed?) 10.5.3.4
-  BIT5  spare1_5       // '00000'B
-};
-
-//9.2.11 Identity Response
-//**********************************************************************
-type record PDU_ML3_IdentityResponse
-{
-  BIT6  messageType,  //    '011001'B (IdentityResponse)
-  BIT2  nsd,
-  MobileIdentityLV  mobileIdentityLV,
-  P_TMSI_TypeTV     p_TMSI_TypeTV optional,
-  RoutingAreaIdentification2TLV routingAreaIdentification2TLV optional,
-  P_TMSISignature2TLV p_TMSISignature2TLV optional
-};
-
-//9.2.12 IMSI Detach Indication
-//**********************************************************************
-type record PDU_ML3_IMSI_DetachIndication
-{
-   BIT6  messageType, //    '000001'IMSI Detach Indication
-   BIT2  nsd,
-   MobileStationClassmark1_V    mobileStationClassmark1,
-   MobileIdentityLV             mobileIdentityLV
-};
-
-//****************************************************************************
-// 24.008/9 Mobility Management message contents
-//****************************************************************************
-
-// 9.2.13 Location Update Accept
-//****************************************************************************
-type record PDU_ML3_LocationUpdateAccept
-{
-  BIT6  messageType, // '000010'B  (LocationUpdateRequest)
-  BIT2  nsd,
-  LocationAreaIdentification_V  locationAreaIdentification,
-  MobileIdentityTLV             mobileIdentityTLV           optional,
-  Type2                         followOnProceed             optional,
-  CTS_Permission                cTS_Permission              optional,
-  PLMNListTLV                   equivalentPLMNs             optional,
-  EmergencyNumberListTLV        emergencyNumberList         optional,
-  GPRSTimer3TLV                 perMS_T3212                 optional
-} with { variant "TAG ( mobileIdentityTLV,  elementIdentifier = '0010111'B;  //'17'O;
-                        followOnProceed,    elementIdentifier = 'A1'O;
-                        cTS_Permission,     elementIdentifier = 'A2'O;
-                        equivalentPLMNs,    elementIdentifier = '1001010'B;  //'4A'O;
-                        emergencyNumberList,  elementIdentifier = '34'O;) "};
-
-// 9.2.14 Location Update Reject (NW->MS)
-//****************************************************************************
-type record PDU_ML3_LocationUpdateReject
-{
-  BIT6  messageType,  // '000100'B (LocationUpdateReject)
-  BIT2  nsd,
-  OCT1  rejectCause,   // see 10.5.3.6
-  MM_TimerTLV  t3246_Value optional
-};
-
-//9.2.15 Location Update Request (MS->NW)
-//****************************************************************************
-type record PDU_ML3_LocationUpdateRequest
-{
-  BIT6  messageType, // B'_001000  (LocationUpdateRequest)
-  BIT2  nsd,
-  LocationUpdatingType               locationUpdatingType,
-  CipheringKeySequenceNumberV        cipheringKeySequenceNumber,
-  LocationAreaIdentification_V       locationAreaIdentification,
-  MobileStationClassmark1_V          mobileStationClassmark1,
-  MobileIdentityLV                   mobileIdentityLV,
-  ClassmarkInformationType2_forUMTS  classmarkInformationType2_forUMTS  optional,
-  AdditionalUpdateParameterTV        additionalUpdateParameterTV        optional,
-  DevicePropertiesTV                 deviceProperties                   optional,
-  MS_NetworkFeatureSupportTV         mS_NetworkFeatureSupport           optional
-} with {
-  variant "TAG (
-    deviceProperties,                elementIdentifier = '1101'B;
-    mS_NetworkFeatureSupport,        elementIdentifier = '1110'B;  //E
-  )"
-};
-
-//9.2.15a MM information
-//****************************************************************************
-type record PDU_ML3_MMInformation
-{
-  BIT6  messageType,    //
-  BIT2  nsd,
-  NetworkNameTLV        fullNetworkName     optional,
-  NetworkNameTLV        shortNetworkName    optional,
-  TimeZoneTV            localtimeZone       optional,
-  TimeZoneAndTimeTV     univTime            optional,
-  LSA_IdentifierTLV     lSAIdentity         optional,
-  DaylightSavingTimeTLV networkDST          optional
-} with { variant "TAG (
-              fullNetworkName,  elementIdentifier = '1000011'B;   // '43'O;
-              shortNetworkName, elementIdentifier = '1000101'B;   // '45'O;
-              localtimeZone,    elementIdentifier = '1000110'B;   // '46'O;
-              univTime,         elementIdentifier = '1000111'B;   // '47'O;
-              lSAIdentity,      elementIdentifier = '1001000'B;   //' 48'O;
-              networkDST,       elementIdentifier = '49'O;)"};
-
-//9.2.16 MM Status
-//****************************************************************************
-type record PDU_ML3_MMStatus
-{
-  BIT6  messageType,
-  BIT2  nsd,
-  OCT1  rejectCause //10.5.3.6
- };
-
-//9.2.17 TMSI reallocation command (NW->MS)
-//****************************************************************************
-type record PDU_ML3_TMSI_ReallocationCommand
-{
-  BIT6  messageType,    // '011010'B
-  BIT2  nsd,
-  LocationAreaIdentification_V  locationAreaIdentification,
-  MobileIdentityLV              mobileIdentity
-};
-
-//9.2.18 TMSI reallocation complete (MS->NW)
-//****************************************************************************
-type record PDU_ML3_TMSI_ReallocationComplete
-{
-  BIT6  messageType,    //  '011011'B
-  BIT2  nsd
-};
-
-//9.2.19 MM Null (MS->NW)
-//****************************************************************************
-type record PDU_ML3_MMNull
-{
-  BIT6  messageType,    //  '110000'B
-  BIT2  nsd
-};
-
-
-// ***************************************************************************
-// *     Mobility Management Messages
-// ***************************************************************************
-// 24.008/ Table 10.2
-type union PDU_ML3_MM
-{
-  PDU_ML3_IMSI_DetachIndication    imsiDetachIndication,
-  PDU_ML3_LocationUpdateAccept     locationUpdateAccept,
-  PDU_ML3_LocationUpdateReject     locationUpdateReject,
-  PDU_ML3_LocationUpdateRequest    locationUpdateRequest,
-
-  PDU_ML3_AuthenticationReject       authenticationReject,
-  PDU_ML3_AuthenticationRequest      authenticationRequest,
-  PDU_ML3_AuthenticationResponse     authenticationResponse,
-  PDU_ML3_AuthenticationFailure      authenticationFailure,
-  PDU_ML3_IdentityRequest            identityRequest,
-  PDU_ML3_IdentityResponse           identityResponse,
-  PDU_ML3_TMSI_ReallocationCommand   tmsiReallocCommand,
-  PDU_ML3_TMSI_ReallocationComplete  tmsiReallocComplete,
-
-  PDU_ML3_CMServiceAbort           cMServiceAbort,
-  PDU_ML3_CMServiceAccept          cMServiceAccept,
-  PDU_ML3_CMServiceReject          cMServiceReject,
-  PDU_ML3_CMServiceRequest         cMServiceRequest,
-  PDU_ML3_CMServicePrompt          cMServicePrompt,
-  PDU_ML3_CMReestablishmentRequest cMReEstablReq,
-  PDU_ML3_Abort                    abort,
-
-  PDU_ML3_MMNull                   mMNull,
-  PDU_ML3_MMStatus                 mMStatus,
-  PDU_ML3_MMInformation            mMInformation
-} with { variant "TAG (
-                imsiDetachIndication,   messageType ='000001'B; //registration msgs
-                locationUpdateAccept,   messageType ='000010'B;
-                locationUpdateReject,   messageType ='000100'B;
-                locationUpdateRequest,  messageType ='001000'B;
-
-                authenticationReject,   messageType ='010001'B;//security msgs
-                authenticationRequest,  messageType ='010010'B;
-                authenticationResponse, messageType ='010100'B;
-                authenticationFailure,  messageType ='011100'B;
-                identityRequest,        messageType ='011000'B;
-                identityResponse,       messageType ='011001'B;
-                tmsiReallocCommand,     messageType ='011010'B;
-                tmsiReallocComplete,    messageType ='011011'B;
-
-                cMServiceAbort,         messageType ='100011'B; //conn, mgmt
-                cMServiceAccept,        messageType ='100001'B;
-                cMServiceReject,        messageType ='100010'B;
-                cMServiceRequest,       messageType ='100100'B;
-                cMServicePrompt,        messageType ='100101'B;
-                cMReEstablReq,          messageType ='101000'B;
-                abort,                  messageType ='101001'B;
-
-                mMNull,               messageType ='110000'B; //misc
-                mMStatus,             messageType ='110001'B;
-                mMInformation,        messageType ='110010'B;
-              )"};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_RRM_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_RRM_Types.ttcn
deleted file mode 100644
index 93b1b0f..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_RRM_Types.ttcn
+++ /dev/null
@@ -1,1834 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_RRM_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 44.018 v13.0.0
-
-
-module  MobileL3_RRM_Types
-{
-
-import from General_Types all;
-import from MobileL3_CommonIE_Types all;
-import from MobileL3_GMM_SM_Types all;
-
-// ***************************************************************************
-// *     Radio Resource Management messages
-// ***************************************************************************
-// The messages below defined in 44.018 v13.0.0
-// Some IEs used from 24.008 and some IEs are defined in 44.018
-
-//============================================================================
-// 44.018//10.5 Radio Resource management (RRM) information elements
-//============================================================================
-
-//****************************************************************************
-// 10.5.1 Common information elements
-//****************************************************************************
-// see DTAP_Common.ttcn
-
-//****************************************************************************
-// 10.5.2 Radio Resource Management Information Elements
-//****************************************************************************
-
-//10.5.2.1a BA Range
-//****************************************************************************
-type record BARange_TLV
-{
-  OCT1         elementIdentifier, //'73'O
-  LIN1         lengthIndicator,
-  OCT1         numberOfRanges,
-  OCTN         ranges
-} with { variant (lengthIndicator) "LENGTHTO ( numberOfRanges,ranges)"};
-
-
-//10.5.2.1b Cell Channel Description
-//****************************************************************************
-type record CellChannelDescription_TV
-{
-  OCT1         elementIdentifier, //'62'O
-  OCT16        octet2_17
-};
-
-//10.5.2.1c BA List Pref
-//****************************************************************************
-type record BAListPref_TLV
-{
-  OCT1         elementIdentifier, //'75'O
-  LIN1         lengthIndicator,
-  OCTN         range_bafreq_info
-} with { variant (lengthIndicator) "LENGTHTO ( range_bafreq_info )"};
-
-//10.5.2.1d UTRAN Frequency List
-//****************************************************************************
-type record UTRANFrequencyList_TLV
-{
-  OCT1         elementIdentifier, //'75'O
-  LIN1         lengthIndicator,
-  OCTN         fdd_tdd
-} with { variant (lengthIndicator) "LENGTHTO ( fdd_tdd )"};
-
-//10.5.2.1e
-//****************************************************************************
-type record CellSelectionIndicatorAfterReleaseOfAll_TCH_and_SDCCH_IE
-{
-  OCT1         elementIdentifier,
-  LIN1         lengthIndicator,
-  octetstring  cellSelectionIndicatorValue
-} with { variant (lengthIndicator) "LENGTHTO (cellSelectionIndicatorValue)"};
-
-// 10.5.2.2 Cell Description
-//****************************************************************************
-type record CellDescription_V
-{
-  BIT3         bcc,                  // '001'B
-  BIT3         ncc,                  // '010'B
-  BIT2         BCCHArfcn_HighPart,   // '11'B
-  OCT1         BCCHArfcn_LowPart    // '04'O
-};
-
-// 10.5.2.5 Channel Description
-//****************************************************************************
-type record ChannelDescription_V
-{
-  BIT3   timeslotNumber,            // '110'B
-  BIT5   channelTypeandTDMAOffset,  // '00001'B send  or '00111'B rcv
-  OCT1   octet3,                    //  '00'O not structured yet
-  OCT1   octet4                     //  '09'O
-};
-
-type record ChannelDescription_TV
-{
-  OCT1   elementIdentifier,
-  BIT3   timeslotNumber,            // '110'B
-  BIT5   channelTypeandTDMAOffset,  // '00001'B send  or '00111'B rcv
-  OCT1   octet3,                    //  '00'O not structured yet
-  OCT1   octet4                     //  '09'O
-};
-
-// 10.5.2.5a Channel Description 2
-//****************************************************************************
-type record ChannelDescription2_V
-{
-  BIT3   timeslotNumber,            // '110'B
-  BIT5   channelTypeandTDMAOffset,  // '00001'B send  or '00111'B rcv
-  OCT1   octet3,                    //  '00'O
-  OCT1   octet4                     // '09'O
-};
-
-type record ChannelDescription2_TV
-{
-  OCT1  elementIdentifier,
-  BIT3  timeslotNumber,            // '110'B
-  BIT5  channelTypeandTDMAOffset,  // '00001'B send  or '00111'B rcv
-  OCT1  octet3,                    //  '00'O
-  OCT1  octet4                     // '09'O
-};
-
-// 10.5.2.5c Channel Description 3
-//****************************************************************************
-type record ChannelDescription3_TV
-{
-  OCT1   elementIdentifier,
-  OCT1   octet2,
-  OCT1   octet3
-};
-
-// 10.5.2.6 Channel Mode
-//****************************************************************************
-type record ChannelMode_TV
-{
-  OCT1  elementIdentifier,
-  OCT1  mode
-};
-
-type record ChannelMode_V
-{
-  OCT1  mode
-};
-
-// 10.5.2.7 Channel Mode 2
-//****************************************************************************
-type record ChannelMode2_TV
-{
-  OCT1  elementIdentifier,
-  OCT1  mode
-};
-
-// 10.5.2.7a
-//****************************************************************************
-type record UTRAN_Classmark_LV
-{
-  LIN1         lengthIndicator,
-  octetstring  uTRAN_ClassmarkValue  //ASN.1 definition in 25.331
-} with { variant (lengthIndicator) "LENGTHTO (uTRAN_ClassmarkValue)"};
-
-// 10.5.2.7c Classmark Enquiry Mask
-//****************************************************************************
-type record ClassmarkEnquiryMask_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  OCT1  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-
-// 10.5.2.7d
-//****************************************************************************
-type record GERAN_IU_ModeClassmark_LV
-{
-  LIN1  lengthIndicator,
-  OCT1  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-
-// 10.5.2.8 Channel Needed
-//****************************************************************************
-type record ChannelNeeded_TV
-{
-  BIT2  channel1,
-  BIT2  channel2,
-  BIT4  elementIdentifier
-};
-
-type record ChannelNeeded_V
-{
-  BIT2  channel1,
-  BIT2  channel2
-};
-
-// 10.5.2.8b Channel Request Description
-//****************************************************************************
-type record  ChannelRequestDescription2_LV
-{
-  LIN1  lengthIndicator,
-  octetstring  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-
-// 10.5.2.9  Cipher Mode Setting
-//****************************************************************************
-type record CipherModeSetting_TV
-{
-  BIT1  sC,
-  BIT3  algorithmIdentifier,
-  BIT4  elementIdentifier
-};
-
-type record CipherModeSetting_V
-{
-  BIT1  sC,
-  BIT3  algorithmIdentifier
-};
-
-// 10.5.2.10  Cipher Mode Response
-//****************************************************************************
-type record CipherModeResponse_TV
-{
-  BIT1  cR,
-  BIT3  spare,
-  BIT4  elementIdentifier
-};
-
-type record CipherModeResponse_V
-{
-  BIT1  cR,
-  BIT3  spare
-};
-
-// 10.5.2.11a
-//****************************************************************************
-type record DTM_InformationDetails_LV
-{
-  LIN1         lengthIndicator,
-  octetstring  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-
-
-// 10.5.2.11b
-//****************************************************************************
-type record DynamicARFCN_Mapping_TLV
-{
-  OCT1         elementIdentifier,
-  LIN1         lengthIndicator,
-  octetstring  valuePart
-} with { variant (lengthIndicator) "LENGTHTO (valuePart)"};
-
-// 10.5.2.12  Frequency Channel Sequence before time
-//****************************************************************************
-type record FrequencyChannelSequence_TV
-{
-  OCT1  elementIdentifier,
-  BIT7  lowestARFCN,
-  BIT1  spare,
-  BIT4  incSkipARFCN02,
-  BIT4  incSkipARFCN01,
-  BIT4  incSkipARFCN04,
-  BIT4  incSkipARFCN03,
-  BIT4  incSkipARFCN06,
-  BIT4  incSkipARFCN05,
-  BIT4  incSkipARFCN08,
-  BIT4  incSkipARFCN07,
-  BIT4  incSkipARFCN10,
-  BIT4  incSkipARFCN09,
-  BIT4  incSkipARFCN12,
-  BIT4  incSkipARFCN11,
-  BIT4  incSkipARFCN14,
-  BIT4  incSkipARFCN13,
-  BIT4  incSkipARFCN16,
-  BIT4  incSkipARFCN15
-}
-
-//10.5.2.13 Frequency List
-//****************************************************************************
-type Type4_TLV FrequencyList_TLV;
-
-//10.5.2.14 Frequency Short List
-//****************************************************************************
-type record FrequencyShortList_TV
-{
-  OCT1  elementIdentifier,
-  OCT9  frequencyShortListValue
-}
-
-//10.5.2.14b GroupChannel Description
-//****************************************************************************
-type record GroupChannelDescription_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  BIT3  tN,
-  BIT5  channelType_tDMAoffset,
-  OCTN  oct4_13
-} with { variant (lengthIndicator) "LENGTHTO (tN,channelType_tDMAoffset,oct4_13 )"};
-
-//10.5.2.14d GPRS Broadcast Information
-//****************************************************************************
-type record GPRS_BroadcastInformation_LV
-{
-  LIN1  lengthIndicator,
-  octetstring gPRS_BroadcastInformationValue
-} with { variant (lengthIndicator) "LENGTHTO (gPRS_BroadcastInformationValue )"};
-
-//10.5.2.14e Enhanced DTM CS Release Indication
-//****************************************************************************
-type record Enhanced_DTM_CS_Release_Indication
-{
-  BIT1  iND,
-  BIT3  spare,
-  BIT4  elementIdentifier
-}
-
-//10.5.2.14f Group Channel Description 2
-//****************************************************************************
-type record Group_Channel_Description_2_TLV
-{
-  OCT1   elementIdentifier,
-  LIN1   lengthIndicator,
-  BIT3   tN,
-  BIT5   channelTypeandTDMAOffset,
-  BIT3   tSC,
-  BIT1   spare,
-  BIT6   mAIO,
-  BIT6   hSN,
-  OCT8   frequencyShortList
-} with { variant (lengthIndicator) "LENGTHTO (tN,channelTypeandTDMAOffset,tSC,
-                                   spare,mAIO,hSN,frequencyShortList)"
-         variant (tSC,spare,mAIO,hSN,frequencyShortList)  "FIELDORDER(msb)";};
-
-// 10.5.2.15
-//****************************************************************************
-type record HandoverReference_V
-{
-  OCT1   handoverReferenceValue   //'00'O
-};
-
-// 10.5.2.21 Mobile Allocation
-//****************************************************************************
-type Type4_TLV MobileAllocation_TLV; // see DTAP_Types.ttcn
-
-type Type4_LV MobileAllocation_LV;
-
-// 10.5.2.21a Mobile Time difference
-//****************************************************************************
-type record MobileTimeDifference_TLV
-{
-  OCT1    elementIdentifier, // '03'O
-  LIN1    lengthIndicator,
-  OCT3    mobileTimeDifferenceAndSpare //is the ordering correct????
-} with { variant (lengthIndicator) "LENGTHTO (mobileTimeDifferenceAndSpare)"};
-
-// 10.5.2.21aa MultiRate configuration
-//****************************************************************************
-type octetstring RRM_OCT1_5 length(1..5);
-
-type record MultiRateConfiguration_TLV
-{
-  OCT1        elementIdentifier, // '03'O
-  LIN1        lengthIndicator,
-  BIT2        startMode,
-  BIT1        spare3_1,
-  BIT1        iCMI,
-  BIT1        nSCB,
-  BIT3        multirateSpeechVersion,
-  RRM_OCT1_5  params
-} with { variant (lengthIndicator) "LENGTHTO (startMode,spare3_1,
-                                              iCMI,nSCB,multirateSpeechVersion,params)"};
-
-// 10.5.2.21b Multislot Allocation
-//****************************************************************************
-type record MultislotAllocation_octet3_11
-{
-  BIT7  dA1_7, //downlink assignment
-  BIT1  ext1,  //extension bit
-  BIT7  uA1_7,  //uplink assignment
-  BIT1  ext2,  //1 extension bit
-  OCT1_8  channelset optional
-} with { variant "EXTENSION_BIT (yes)"};
-
-type record MultislotAllocation_TLV
-{
-  OCT1                          elementIdentifier,
-  LIN1                          lengthIndicator,
-  MultislotAllocation_octet3_11 octet3_11
-} with { variant (lengthIndicator) "LENGTHTO (octet3_11)"};
-
-type record MultislotAllocation_LV
-{
-  LIN1                          lengthIndicator,
-  MultislotAllocation_octet3_11 octet3_11
-} with { variant (lengthIndicator) "LENGTHTO (octet3_11)"};
-
-
-// 10.5.2.21ab Mobile Time Difference on Hyperframe level
-//****************************************************************************
-type record MobileTimeDifferenceHyperframe_TLV
-{
-  OCT1                          elementIdentifier,
-  LIN1                          lengthIndicator,
-  OCT5                          MTDHValueAndSpare // Mobile Time Difference Hyperframe Value And Spare
-} with { variant (lengthIndicator) "LENGTHTO (MTDHValueAndSpare)"};
-
-
-// 10.5.2.23 P1 Rest Octets
-//****************************************************************************
-type octetstring P1RestOctets length(0..17);
-
-// 10.5.2.24 P2 Rest Octets
-//****************************************************************************
-type octetstring P2RestOctets length(1..11);
-
-// 10.5.2.25 P3 Rest Octets
-//****************************************************************************
-type OCT3 P3RestOctets;
-
-// 10.5.2.25b
-//****************************************************************************
-type record DedicatedModeOrTBF_V
-{
-  BIT3   tMA_dL_tD,
-  BIT1   spare
-}
-
-// 10.5.2.25c
-//****************************************************************************
-type record RR_PacketUplinkAssignment_TLV
-{
-  OCT1         elementIdentifier,
-  LIN1         lengthIndicator,
-  octetstring  rR_PacketUplinkAssignment
-} with { variant (lengthIndicator) "LENGTHTO (rR_PacketUplinkAssignment)"};
-
-// 10.5.2.25d
-//****************************************************************************
-type record RR_PacketDownlinkAssignment_TLV
-{
-  OCT1         elementIdentifier,
-  LIN1         lengthIndicator,
-  octetstring  rR_PacketDownlinkAssignment
-} with { variant (lengthIndicator) "LENGTHTO (rR_PacketDownlinkAssignment)"};
-
-// 10.5.2.25e - RR Packet Downlink Assignment Type 2
-//****************************************************************************
-type record RR_DualCarrierPacketDownlinkAssignment_TLV
-{
- OCT1         elementIdentifier,
- LIN1         lengthIndicator,
- octetstring  rR_DualCarrierPacketDownlinkAssignment
-} with { variant (lengthIndicator) "LENGTHTO (rR_DualCarrierPacketDownlinkAssignment)"};
-
-// 10.5.2.26 Page Mode
-//****************************************************************************
-type record PageMode_TV
-{
-  BIT2 pM,
-  BIT2 spare1_2,
-  BIT4 elementIdentifier
-};
-
-type record PageMode_V
-{
-  BIT2 pM,
-  BIT2 spare1_2
- };
-
-// 10.5.2.28 Power Command
-//****************************************************************************
-type record PowerCommand_V
-{
-  BIT5   powerlevel,   // 00000
-  BIT1   fPC_EP,       // 0
-  BIT1   ePC_Mode,     // 0
-  BIT1   spare_1       // 0
-};
-
-// 10.5.2.28a Power Command And Accesstype
-//****************************************************************************
-type record PowerCommandAndAccesstype_V
-{
-  BIT5   powerlevel,   // 00000
-  BIT1   fPC_EP,       // 0
-  BIT1   ePC_Mode,     // 0
-  BIT1   aTC           // 0
-};
-
-// 10.5.2.30 Request Reference
-//****************************************************************************
-type record RequestReference_V
-{
-  BIT5    t1,
-  BIT6    t3,
-  BIT5    t2
-} with { variant (t1,t3,t2)  "FIELDORDER(msb)"; };
-
-// 10.5.2.31 RR Cause
-//****************************************************************************
-type record RR_Cause_TV
-{
-  OCT1  elementIdentifier,
-  OCT1  valuePart
-};
-
-type record RR_Cause_V
-{
-  OCT1  valuePart
-};
-
-// 10.5.2.38 Starting Time
-//****************************************************************************
-type record StartingTime_TV
-{
-  OCT1  elementIdentifier,
-  BIT5    t1,
-  BIT6    t3,
-  BIT5    t2
-} with { variant (t1,t3,t2)  "FIELDORDER(msb)"; };
-
-type record StartingTime_V
-{
-  BIT5    t1,
-  BIT6    t3,
-  BIT5    t2
-} with { variant (t1,t3,t2)  "FIELDORDER(msb)"; };
-
-// 10.5.2.39 Synchronization Indication
-//****************************************************************************
-type record SynchronizationIndication_TV
-{
-  BIT2    sI,
-  BIT1    rOT,
-  BIT1    nCI,
-  BIT4    elementIdentifier
-}
-
-// 10.5.2.40 Timing Advance
-//****************************************************************************
-type record TimingAdvance_TV
-{
-  OCT1  elementIdentifier,
-  OCT1  valuePart
-};
-
-// 10.5.2.41 Real Time Difference
-//****************************************************************************
-type Type4_TLV RealTimeDifference_TLV;
-
-// 10.5.2.42 TMSIP_TMSI
-//****************************************************************************
-type record TMSIP_TMSI_TV
-{
-  OCT1  elementIdentifier,
-  OCT4  octet2_5
-};
-
-type OCT4 TMSIP_TMSI_V;
-
-// 10.5.2.42a
-//****************************************************************************
-type record VGCS_TargetModeIndication_TLV
-{
-  OCT1  elementIdentifier, //'01'O
-  LIN1  lengthIndicator,
-  BIT2  spare3_2,
-  BIT4  groupCipherKeyNumber,
-  BIT2  targetMode
-} with { variant (lengthIndicator) "LENGTHTO (spare3_2,groupCipherKeyNumber,targetMode)"};
-
-// 10.5.2.42b VGCS Ciphering Parameters
-//****************************************************************************
-type hexstring HEX9 length(9);
-
-type record VGCS_Ciphering_Parameters_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  BIT2  cellGlobalCount,
-  BIT1  b22_Count,
-  BIT1  cELL_Ind,
-  BIT1  lAC_Ind,
-  BIT1  rAND_Ind,
-  BIT2  spare,
-  OCT2  cellIdentity optional,
-  OCT5  lAI optional,
-  HEX9  vSTK_RAND optional,
-  BIT4  spare2 optional
-} with { variant (lengthIndicator) "LENGTHTO (cellGlobalCount,b22_Count,cELL_Ind,lAC_Ind,rAND_Ind,
-                                              spare,cellIdentity,lAI,vSTK_RAND,spare2)"
-         variant (cellIdentity)      "PRESENCE(cELL_Ind = '1'B)";
-         variant (lAI)               "PRESENCE(lAC_Ind = '1'B)";
-         variant (vSTK_RAND)         "PRESENCE(rAND_Ind = '1'B)";
-         variant (spare2)            "PRESENCE(rAND_Ind = '1'B)";
-         variant (vSTK_RAND,spare2)  "FIELDORDER(msb)";};
-
-// 10.5.2.43 DTM Wait Indication
-//****************************************************************************
-type record WaitIndication_V
-{
-  integer  t3122_3142TimeoutValue
-}
-
-// 10.5.2.49 APDU Flags
-//****************************************************************************
-type record APDU_Flags_V
-{
-  BIT1      lastSeg,
-  BIT1      firstSeg,
-  BIT1      cR,
-  BIT1      spare
-}
-
-// 10.5.2.50 APDU Data
-//****************************************************************************
-type record APDU_Data_LV
-{
-  LIN1         lengthIndicator,
-  octetstring  aPDU_DataValue
-} with { variant (lengthIndicator) "LENGTHTO (aPDU_DataValue)"};
-
-// 10.5.2.51 Handover To UTRAN Command
-//****************************************************************************
-type record HandoverToUTRANCommand_LV
-{
-  LIN1         lengthIndicator,
-  octetstring  handoverToUTRANCommandValue  // unaligned PER encoded ASN.1 value, 25.331
-} with { variant (lengthIndicator) "LENGTHTO (handoverToUTRANCommandValue)"};
-
-// 10.5.2.51 Handover To UTRAN Command
-//****************************************************************************
-type record HandoverToCDMA2000Command_LV
-{
-  LIN1         lengthIndicator,
-  octetstring  handoverToCDMA2000CommandValue
- // TIA/EIA/IS-2000-4-A, TIA/EIA/IS-2000-5-A,  TIA/EIA/IS-833
-} with { variant (lengthIndicator) "LENGTHTO (handoverToCDMA2000CommandValue)"};
-
-// Handover To UTRAN Command
-//****************************************************************************
-type record RadioBearerReconfiguration_LV
-{
-  LIN1          lengthIndicator,
-  octetstring   radioBearerReconfiguration44118  //  See 44.118 9.2.28
-} with { variant (lengthIndicator) "LENGTHTO (radioBearerReconfiguration44118)"};
-
-// 10.5.2.57 Service Support
-//****************************************************************************
-type record ServiceSupport_TV
-{
-  OCT1      elementIdentifier,
-  BIT1      mBMS_Broadcast,
-  BIT1      mBMS_Multicast,
-  BIT6      spare
-}
-
-type record ServiceSupport_V
-{
-  BIT1      mBMS_Broadcast,
-  BIT1      mBMS_Multicast,
-  BIT6      spare
-}
-
-// 10.5.2.58 MBMS ptm Channel Description
-//****************************************************************************
-type record MBMS_ptm_ChannelDescription_TLV
-{
-  OCT1          elementIdentifier,
-  LIN1          lengthIndicator,
-  octetstring   mMS_ptm_ChannelDescriptionValue
-} with { variant (lengthIndicator) "LENGTHTO (mMS_ptm_ChannelDescriptionValue)"};
-
-// 10.5.2.58a MBMS Session Parameter List
-//****************************************************************************
-type record MBMS_SessionParameterList_TLV
-{
-  OCT1          elementIdentifier,
-  LIN1          lengthIndicator,
-  octetstring   mBMS_SessionParameterListValue
-} with { variant (lengthIndicator) "LENGTHTO (mBMS_SessionParameterListValue)"};
-
-// 10.5.2.59 Dedicated Service Information
-//****************************************************************************
-type record DedicatedServiceInformation_TV
-{
-  OCT1      elementIdentifier,
-  BIT1      sIS,
-  BIT7      spare
-}
-
-// 10.5.2.60 MPRACH Description
-//****************************************************************************
-type record MPRACH_Description_TLV
-{
-  OCT1          elementIdentifier,
-  LIN1          lengthIndicator,
-  octetstring   mPRACH_DescriptionValue
-} with { variant (lengthIndicator) "LENGTHTO (mPRACH_DescriptionValue)"};
-
-// 10.5.2.61 Restriction Timer
-//****************************************************************************
-type record RestrictionTimer_TV
-{
-  OCT1          elementIdentifier,
-  OCT1          restrictionTimerValue
-}
-
-
-// 10.5.2.62 MBMS Session Identity
-//****************************************************************************
-type record MBMS_SessionIdentity_TV
-{
-  OCT1   elementIdentifier,
-  OCT1   mBMS_SessionIdentityValue
-}
-
-// 10.5.2.64 Talker Priority Status
-//****************************************************************************
-type record TalkerPriorityStatus_TLV
-{
-  OCT1  elementIdentifier,
-  LIN1  lengthIndicator,
-  BIT3  priority,
-  BIT1  uAI,
-  BIT3  spare,
-  BIT1  eS
-} with { variant (lengthIndicator) "LENGTHTO (priority,uAI,spare,eS)"};
-
-// 10.5.2.65 Talker Identity
-//****************************************************************************
-type record TalkerIdentity_TLV
-{
-  OCT1   elementIdentifier,
-  LIN1   lengthIndicator,
-  BIT3   fillerBits,
-  BIT5   spare,
-  OCT17  talkerIdentityField optional
-} with { variant (lengthIndicator) "LENGTHTO (fillerBits,spare,talkerIdentityField)"};
-
-// 10.5.2.66 Token
-//****************************************************************************
-type record Token_TV
-{
-  OCT1   elementIdentifier,
-  OCT4   tokenValue
-};
-
-// 10.5.2.67
-//****************************************************************************
-type record PS_Cause_TV
-{
-  BIT4    causeValue,
-  BIT4    elementIdentifier
-}
-
-// 10.5.2.68
-//****************************************************************************
-type record VGCS_AMR_Configuration_TLV
-{
-  OCT1   elementIdentifier,
-  LIN1   lengthIndicator,
-  BIT4   spare,
-  BIT4   aMR_ConfigurationValue
-} with { variant (lengthIndicator) "LENGTHTO (spare,aMR_ConfigurationValue)"};
-
-// 10.5.2.69 Carrier Indication
-//****************************************************************************
-type record CarrierIndication_TV
-{
-  BIT1 cI,
-  BIT3 spare1_3,
-  BIT4 elementIdentifier
-}
-
-// 10.5.2.74 Uplink Access Indication
-//***************************************************************************
-type record UplinkAccessIndication_TV
-{
-  BIT1     uA_Ind,
-  BIT3     spare,
-  BIT4     elementIdentifier
-}
-
-// 10.5.2.75
-//***************************************************************************
-type record Individual_Priorities_TLV
-{
-  OCT1     elementIdentifier,
-  LIN1     lengthIndicator,
-  OCTN     individualPrioritiesValue
-} with { variant (lengthIndicator) "LENGTHTO (individualPrioritiesValue)"};
-
-// 10.5.2.76
-//***************************************************************************
-type record FeatureIndicator_V
-{
-  BIT1     pS_IR,
-  BIT1     cs_IR,
-  BIT1     spare,
-  BIT1     pEO_BCCH_CHANGE_MARK
-}
-
-// 10.5.2.79
-//***************************************************************************
-type record DL_DCCH_Message_LV
-{
-  LIN1         lengthIndicator,
-  octetstring  dL_DCCH_MessageValue
-} with { variant (lengthIndicator) "LENGTHTO (dL_DCCH_MessageValue)"};
-
-// 10.5.2.80
-//***************************************************************************
-type record CNToMSTransparentInformation_TLV
-{
-  OCT1         elementIdentifier,
-  LIN1         lengthIndicator,
-  octetstring  cNToMSTransparentInformationValue
-} with { variant (lengthIndicator) "LENGTHTO (cNToMSTransparentInformationValue)"};
-
-// 10.5.2.81
-//***************************************************************************
-type record PLMNIndex_TV
-{
-  BIT4         pLMNIndex,
-  BIT4         elementIdentifier
-};
-
-// 10.5.2.82
-//***************************************************************************
-type record ExtendedTSCSet_TV
-{
-  OCT1 elementIdentifier,
-  BIT2 cSDomainTSCSet,
-  BIT1 secondPSDomainTSCAssigned,
-  BIT1 primaryPSDomainTSCSet,
-  BIT1 secondaryPSDomainTSCSet,
-  BIT3 secondaryPSDomainTSCValue
-};
-
-//============================================================================
-// 44.018//9.1 Messages for Radio Resource management (RRM)
-//============================================================================
-
-// 44.018/9.1.1 Additional assignment (NW->MS)
-//****************************************************************************
-type record PDU_RRM_AdditionalAssignment_NW_MS
-{
-  BIT8                  messageType,   //'00111011'B,
-  ChannelDescription_V  channelDescription,
-  MobileAllocation_TLV  mobileAllocation optional,
-  StartingTime_TV       startingTime     optional,
-  ExtendedTSCSet_TV     extendedTSCSet   optional
-
-} with { variant "TAG ( mobileAllocation, elementIdentifier = '72'O;
-                        startingTime,     elementIdentifier = '7C'O;
-                        extendedTSCSet,   elementIdentifier = '6D'O;)"};
-
-// 44.018/9.1.2 Assignment Command (NW->MS)
-//****************************************************************************
-type record PDU_RRM_AssignmentCommand_NW_MS
-{
-  BIT8                      messageType,  //  '00101110'B;
-  ChannelDescription2_V     descrOf1stChAfterTime,
-  PowerCommand_V            PowerCommand,
-  FrequencyList_TLV         frequencyList_at          optional,
-  CellChannelDescription_TV cellChannelDescr          optional,
-  MultislotAllocation_TLV   descrMultislotAllocation  optional,
-  ChannelMode_TV            modeOf1stChannel          optional,
-  ChannelMode_TV            channelSet2               optional,
-  ChannelMode_TV            channelSet3               optional,
-  ChannelMode_TV            channelSet4               optional,
-  ChannelMode_TV            channelSet5               optional,
-  ChannelMode_TV            channelSet6               optional,
-  ChannelMode_TV            channelSet7               optional,
-  ChannelMode_TV            channelSet8               optional,
-  ChannelDescription_TV     descrOf2ndChAfterTime     optional,
-  ChannelMode2_TV           modeOf2ndChannel          optional,
-  MobileAllocation_TLV      mobileAllocation_at       optional,
-  StartingTime_TV           startingTime              optional,
-  FrequencyList_TLV         frequencyList_bt          optional,
-  ChannelDescription2_TV    descrOf1stCh_bt           optional,
-  ChannelDescription_TV     descrOf2ndCh_bt           optional,
-  FrequencyChannelSequence_TV  frequencyChannelSequence    optional,
-  MobileAllocation_TLV      mobileAllocation_bt       optional,
-  CipherModeSetting_TV      cipherModeSetting         optional,
-  VGCS_TargetModeIndication_TLV     vGCS_TargetModeIndication optional,
-  MultiRateConfiguration_TLV        multiRateConfiguration    optional,
-  VGCS_Ciphering_Parameters_TLV     vGCS_Ciphering_Parameters optional,
-  ExtendedTSCSet_TV     extendedTSCSet_afterTime    optional,
-  ExtendedTSCSet_TV     extendedTSCSet_beforeTime   optional
-} with { variant "TAG ( frequencyList_at,         elementIdentifier = '05'O;
-                        cellChannelDescr,         elementIdentifier = '62'O;
-                        descrMultislotAllocation, elementIdentifier = '10'O;
-                        modeOf1stChannel,         elementIdentifier = '63'O;
-                        channelSet2,              elementIdentifier = '11'O;
-                        channelSet3,              elementIdentifier = '13'O;
-                        channelSet4,              elementIdentifier = '14'O;
-                        channelSet5,              elementIdentifier = '15'O;
-                        channelSet6,              elementIdentifier = '16'O;
-                        channelSet7,              elementIdentifier = '17'O;
-                        channelSet8,              elementIdentifier = '18'O;
-                        descrOf2ndChAfterTime,    elementIdentifier = '64'O;
-                        modeOf2ndChannel,         elementIdentifier = '66'O;
-                        mobileAllocation_at,      elementIdentifier = '72'O;
-                        startingTime,             elementIdentifier = '7C'O;
-                        frequencyList_bt,         elementIdentifier = '19'O;
-                        descrOf1stCh_bt,          elementIdentifier = '1C'O;
-                        descrOf2ndCh_bt,          elementIdentifier = '1D'O;
-                        frequencyChannelSequence, elementIdentifier = '1E'O;
-                        mobileAllocation_bt,      elementIdentifier = '21'O;
-                        cipherModeSetting,        elementIdentifier = '1001'B;
-                        vGCS_TargetModeIndication,elementIdentifier = '01'O;
-                        multiRateConfiguration,   elementIdentifier = '03'O;
-                        vGCS_Ciphering_Parameters,elementIdentifier = '04'O;
-                        extendedTSCSet_afterTime, elementIdentifier = '6D'O;
-                        extendedTSCSet_beforeTime,elementIdentifier = '6E'O;
-                        )"};
-
-// 44.018/9.1.3 Assignment complete (MS->NW)
-//****************************************************************************
-type record PDU_RRM_AssignmentComplete_MS_NW
-{
-  BIT8                  messageType,  //  '00101001'B;
-  RR_Cause_V            rR_Cause
-};
-
-// 44.018/9.1.4 Assignment failure (MS->NW)
-//****************************************************************************
-type record PDU_RRM_AssignmentFailure_MS_NW
-{
-  BIT8                  messageType,  //  '00101111'B;
-  RR_Cause_V            rR_Cause
-};
-
-// 44.018/9.1.5 Channel Mode Modify (NW_MS)
-//****************************************************************************
-type record PDU_RRM_ChannelModeModify_NW_MS
-{
-  BIT8                            messageType,  //  '00010000'B;
-  ChannelDescription2_V           channelDescription,
-  ChannelMode_V                   channelMode,
-  VGCS_TargetModeIndication_TLV   vGCS_TargetModeIndication optional,
-  MultiRateConfiguration_TLV      multiRateConfiguration    optional,
-  VGCS_Ciphering_Parameters_TLV   vGCS_Ciphering_Parameters optional,
-  ExtendedTSCSet_TV               extendedTSCSet            optional
-}with {variant "TAG(  vGCS_TargetModeIndication, elementIdentifier = '01'O;
-                      multiRateConfiguration,    elementIdentifier = '03'O;
-                      vGCS_Ciphering_Parameters,elementIdentifier = '04'O;
-                      extendedTSCSet, elementIdentifier = '6D'O; )"
-                      };
-
-// 44.018/9.1.6 Channel Mode Modify Acknowledge(MS_NW)
-//****************************************************************************
-type record PDU_RRM_ChannelModeModifyAck_MS_NW
-{
-  BIT8                            messageType,  //  '00010111'B;
-  ChannelDescription2_V           channelDescription,
-  ChannelMode_V                   channelMode,
-  ExtendedTSCSet_TV               extendedTSCSet     optional
-}with {variant "TAG(extendedTSCSet, elementIdentifier = '6D'O; )"};
-
-// 44.018/9.1.7 Channel Release(NW_MS)
-//****************************************************************************
-type record PDU_RRM_ChannelRelease_NW_MS
-{
-  BIT8                        messageType,  //  '00001101'B;
-  RR_Cause_V                  rRCause,
-  BARange_TLV                 bARange                 optional,
-  GroupChannelDescription_TLV groupChannelDescription optional,
-  Type1_TV                    groupCipherKeyNumber    optional, // 1byte, see DTAP_Types
-  Type1_TV                    gPRSResumption          optional,
-  BAListPref_TLV              bAListPref              optional,
-  UTRANFrequencyList_TLV      uTRANFrequencyList      optional,
-  CellChannelDescription_TV   cellChannelDescr        optional,
-  CellSelectionIndicatorAfterReleaseOfAll_TCH_and_SDCCH_IE cellSelectionIndicator optional,
-  Enhanced_DTM_CS_Release_Indication    enhanced_DTM_CS_Release_Indication optional,
-  VGCS_Ciphering_Parameters_TLV         vGCS_Ciphering_Parameters optional,
-  Group_Channel_Description_2_TLV       group_Channel_Description_2 optional,
-  TalkerIdentity_TLV                    talkerIdentity optional,
-  TalkerPriorityStatus_TLV              talkerPriorityStatus optional,
-  VGCS_AMR_Configuration_TLV            vGCS_AMR_Configuration optional,
-  Individual_Priorities_TLV             individual_Priorities optional
-} with {variant "TAG(bARange,                  elementIdentifier ='73'O;
-                    groupChannelDescription,  elementIdentifier ='74'O;
-                    groupCipherKeyNumber,     elementIdentifier ='1000'B;
-                    gPRSResumption,           elementIdentifier ='1100'B;
-                    bAListPref,               elementIdentifier ='75'O;
-                    uTRANFrequencyList,       elementIdentifier ='76'O;
-                    cellChannelDescr,         elementIdentifier ='62'O;
-                    cellSelectionIndicator,   elementIdentifier ='77'O;
-                    enhanced_DTM_CS_Release_Indication,    elementIdentifier ='1010'B;
-                    vGCS_Ciphering_Parameters,             elementIdentifier = '04'O;
-                    group_Channel_Description_2,           elementIdentifier = '78'O;
-                    talkerIdentity,               elementIdentifier = '79'O;
-                    talkerPriorityStatus,         elementIdentifier = '7A'O;
-                    vGCS_AMR_Configuration,       elementIdentifier = '7B'O;
-                    individual_Priorities,        elementIdentifier = '7C'O;
-                 )"};
-
-// 44.018/9.1.8 ChannelRequest
-//****************************************************************************
-// Not implemented, 1 byte long msg on RACH
-
-
-// 44.018/9.1.9 Ciphering mode command
-//****************************************************************************
-type record PDU_RRM_CipheringModeCommand_NW_MS
-{
-  BIT8                            messageType,  //  '00110101'B;
-  CipherModeSetting_V             cipherModeSetting,
-  CipherModeResponse_V            cipherModeResponse
-};
-
-// 44.018/9.1.10 Ciphering mode complete
-//****************************************************************************
-type record PDU_RRM_CipheringModeComplete_MS_NW
-{
-  BIT8                            messageType,  //  '00110010'B;
-  MobileIdentityTLV              mobileEquipmentIdentity optional
-} with {variant "TAG(mobileEquipmentIdentity, elementIdentifier='0010111'B)"}; //'17'O
-
-// 44.018/9.1.11 Classmark Change
-//****************************************************************************
-type record PDU_RRM_ClassmarkChange_MS_NW
-{
-  BIT8                            messageType,  //  '00010110'B;
-  MobileStationClassmark2_LV      mobileStationClassmark2,
-  MobileStationClassmark3_TLV     mobileStationClassmark3 optional
-} with {variant "TAG(mobileStationClassmark3, elementIdentifier = '20'O)"};
-
-// 44.018/9.1.11a UTRAN Classmark Change
-//****************************************************************************
-type record PDU_RRM_UTRAN_ClassmarkChange_MS_NW
-{
- BIT8                            messageType,
- UTRAN_Classmark_LV              uTRAN_Classmark
-}
-
-// 44.018/9.1.11b
-//****************************************************************************
-type record PDU_RRM_CDMA2000_ClassmarkChange_MS_NW
-{
-  BIT8             messageType,
-  Type4_LV         terminalInformation,
-  Type4_LV         securityStatus,
-  Type4_LV         bandClassInformation,
-  Type4_LV         powerClassInformation,
-  Type4_LV         operatingModeInformation,
-  Type4_LV         serviceOptionInformation,
-  Type4_LV         multiplexOptionInformation,
-  Type4_LV         powerControlInformation,
-  Type4_LV         capabilityInformation,
-  Type4_LV         channelConfigurationCapabilityInformation,
-  Type4_LV         extMultiplexOptionInformation,
-  Type4_LV         bandSubclassInformation,
-  Type4_LV         encryptionCapability
-}
-
-// 44.018/9.1.11d
-//****************************************************************************
-type record PDU_RRM_GERAN_IU_ModeClassmarkChange_MS_NW
-{
-  BIT8                            messageType,
-  GERAN_IU_ModeClassmark_LV       gERAN_IU_ModeClassmark
-}
-
-// 44.018/9.1.12 Classmark Enquiry
-//****************************************************************************
-type record PDU_RRM_ClassmarkEnquiry_NW_MS
-{
-  BIT8                            messageType,  //  '00010011'B;
-  ClassmarkEnquiryMask_TLV        classmarkEnquiryMask optional
-} with {variant "TAG(classmarkEnquiryMask, elementIdentifier = '10'O)"};
-
-// 44.018/9.1.12b Configuration change command (NW->MS)
-//****************************************************************************
-type record PDU_RRM_ConfigurationChangeCommand_NW_MS
-{
-  BIT8                    messageType,  //  '00110000'B;
-  MultislotAllocation_LV  multislotAllocation,
-  ChannelMode_TV          modeOfChannelSet1 optional,
-  ChannelMode_TV          modeOfChannelSet2 optional,
-  ChannelMode_TV          modeOfChannelSet3 optional,
-  ChannelMode_TV          modeOfChannelSet4 optional,
-  ChannelMode_TV          modeOfChannelSet5 optional,
-  ChannelMode_TV          modeOfChannelSet6 optional,
-  ChannelMode_TV          modeOfChannelSet7 optional,
-  ChannelMode_TV          modeOfChannelSet8 optional
-} with {variant "TAG( modeOfChannelSet1, elementIdentifier='63'O;
-                      modeOfChannelSet2, elementIdentifier='11'O;
-                      modeOfChannelSet3, elementIdentifier='13'O;
-                      modeOfChannelSet4, elementIdentifier='14'O;
-                      modeOfChannelSet5, elementIdentifier='15'O;
-                      modeOfChannelSet6, elementIdentifier='16'O;
-                      modeOfChannelSet7, elementIdentifier='17'O;
-                      modeOfChannelSet8, elementIdentifier='18'O;)"};
-
-// 44.018/9.1.12c Configuration change acknowledge (MS->NW)
-//****************************************************************************
-type record PDU_RRM_ConfigurationChangeAck_MS_NW
-{
-  BIT8                  messageType  //  '00110001'B;
-};
-
-// 44.018/9.1.12d Configuration change reject (MS->NW)
-//****************************************************************************
-type record PDU_RRM_ConfigurationChangeRej_MS_NW
-{
-  BIT8                  messageType,  //  '00110011'B;
-  RR_Cause_V            rR_Cause
-};
-
-// 44.018/9.1.12e DTM Assignment Command
-//****************************************************************************
-type record PDU_RRM_DTM_AssignmentCommand_NW_MS
-{
-  BIT8                                      messageType,
-  PowerCommand_V                            cS_PowerCommand,
-  ChannelDescription_V                      description_CS_Channel,
-  GPRS_BroadcastInformation_LV              gPRS_BroadcastInformation,
-  CellChannelDescription_TV                 cellChannelDescr optional,
-  ChannelMode_TV                            channelMode optional,
-  FrequencyList_TLV                         frequencyList optional,
-  MobileAllocation_TLV                      mobileAllocation optional,
-  RR_PacketUplinkAssignment_TLV             descrUplinkPacketChannelAssignment optional,
-  RR_PacketDownlinkAssignment_TLV           descrDownlinkPacketChannelAssignment optional,
-  MultiRateConfiguration_TLV                multiRateConfiguration optional,
-  CipherModeSetting_TV                      cipherModeSetting optional,
-  MobileAllocation_TLV                      mobileAllocationC2 optional,
-  FrequencyList_TLV                         frequencyListC2 optional,
-  RR_DualCarrierPacketDownlinkAssignment_TLV descriptionDualCarrierPacketDownlinkAssignment optional,
-  ChannelDescription3_TV                     channelDescriptionC2 optional,
-  ExtendedTSCSet_TV                          extendedTSCSet       optional
-} with {variant "TAG(cellChannelDescr,                                 elementIdentifier = '10'O;
-                     channelMode,                                      elementIdentifier = '11'O;
-                     frequencyList,                                    elementIdentifier = '12'O;
-                     mobileAllocation,                                 elementIdentifier = '13'O;
-                     descrUplinkPacketChannelAssignment,               elementIdentifier = '15'O;
-                     descrDownlinkPacketChannelAssignment,             elementIdentifier = '16'O;
-                     multiRateConfiguration,                           elementIdentifier = '17'O;
-                     cipherModeSetting,                                elementIdentifier = '1001'B;
-                     mobileAllocationC2,                               elementIdentifier = '18'O;
-                     frequencyListC2,                                  elementIdentifier = '19'O;
-                     descriptionDualCarrierPacketDownlinkAssignment,   elementIdentifier = '20'O;
-                     channelDescriptionC2,                             elementIdentifier = '21'O;
-                     extendedTSCSet,                                   elementIdentifier = '6D'O;)"};
-
-// 44.018/9.1.12f DTM Assignment Failure
-//****************************************************************************
-type record PDU_RRM_DTM_AssignmentFailure_MS_NW
-{
-  BIT8                  messageType,
-  RR_Cause_V            rR_Cause
-}
-
-// 44.018/9.1.12g DTM Information
-//****************************************************************************
-type record PDU_RRM_DTM_Information_NW_MS
-{
-  BIT8                       messageType,
-  RoutingAreaIdentificationV routingAreaIdentification,//24.008   10.5.5.15
-  DTM_InformationDetails_LV  dTM_InformationDetails
-}
-
-// 44.018/9.1.12h DTM Reject
-//****************************************************************************
-type record PDU_RRM_DTM_Reject_NW_MS
-{
-  BIT8                  messageType,
-  WaitIndication_V      waitIndication
-}
-
-// 44.018/9.1.12i DTM Request
-//****************************************************************************
-type record PDU_RRM_DTM_Request_MS_NW
-{
-  BIT8                            messageType,
-  OCT4                            tLLI,
-  ChannelRequestDescription2_LV   channelRequestDescription2
-}
-
-// 44.018/9.1.13 Frequency Redefinition
-//****************************************************************************
-type record PDU_RRM_Frequency_Redefinition_NW_MS
-{
-  BIT8                            messageType,
-  ChannelDescription_V            channelDescription,
-  MobileAllocation_LV             mobileAllocation,
-  StartingTime_V                  startingTime,
-  CellChannelDescription_TV       cellChannelDescr optional,
-  CarrierIndication_TV            carrierIndication optional,
-  MobileAllocation_TLV            mobileAllocationC2 optional,
-  ChannelDescription3_TV          channelDescriptionC2 optional,
-  ExtendedTSCSet_TV               extendedTSCSet       optional
-} with {variant "TAG(cellChannelDescr,           elementIdentifier = '62'O;
-                     carrierIndication,          elementIdentifier = '1001'B;
-                     mobileAllocationC2,         elementIdentifier = '11'O;
-                     channelDescriptionC2,       elementIdentifier = '12'O;
-                     extendedTSCSet,             elementIdentifier = '6D'O;)"};
-
-// 44.018/9.1.13b GPRS Suspension Request
-//****************************************************************************
-type record PDU_RRM_GPRS_SuspensionRequest_MS_NW
-{
-  BIT8                            messageType,
-  OCT4                            tLLI,
-  RoutingAreaIdentificationV      routingAreaIdentification,//24.008   10.5.5.15
-  OCT1                            suspensionCause,
-  ServiceSupport_TV              service_Support optional
-} with {variant "TAG(service_Support,           elementIdentifier = '01'O;)"};
-
-// 44.018/9.1.14 Handover Access
-//****************************************************************************
-// short=> it doesn't included in PDU_RRM !
-type record PDU_RRM_HandoverAccess_NW_MS
-{
-  BIT8 handoverReference
-};
-
-// 44.018/9.1.15 Handover_Command
-//****************************************************************************
-type record PDU_RRM_HandoverCommand_NW_MS
-{
-  BIT8                            messageType,    //'00101011'B,
-  CellDescription_V               cellDescription,
-  ChannelDescription2_V           channelDescription2,
-  HandoverReference_V             handoverReference,
-  PowerCommandAndAccesstype_V     powerCommandAndAccesstype,
-  SynchronizationIndication_TV    synchronizationIndication optional,
-  FrequencyShortList_TV           frequencyShortListAfterTime optional,
-  FrequencyList_TLV               frequencyListAfterTime optional,
-  CellChannelDescription_TV       cellChannelDescription optional,
-  MultislotAllocation_TLV         multislotAllocation optional,
-  ChannelMode_TV                  modeOfChannelSet1 optional,
-  ChannelMode_TV                  modeOfChannelSet2 optional,
-  ChannelMode_TV                  modeOfChannelSet3 optional,
-  ChannelMode_TV                  modeOfChannelSet4 optional,
-  ChannelMode_TV                  modeOfChannelSet5 optional,
-  ChannelMode_TV                  modeOfChannelSet6 optional,
-  ChannelMode_TV                  modeOfChannelSet7 optional,
-  ChannelMode_TV                  modeOfChannelSet8 optional,
-  ChannelDescription_TV           descrOf2ndCh_at   optional,
-  ChannelMode2_TV                 modeOf2ndChannel  optional,
-  FrequencyChannelSequence_TV     frequencyChannelSequence_at  optional,
-  MobileAllocation_TLV            mobileAllocation_at  optional,
-  StartingTime_TV                 startingTime     optional,
-  RealTimeDifference_TLV          timeDifference   optional,
-  TimingAdvance_TV                timingAdvance    optional,
-  FrequencyShortList_TV           frequencyShortListBeforeTime optional,
-  FrequencyList_TLV               frequencyListBeforeTime optional,
-  ChannelDescription2_TV          descrOf1stCh_bt   optional,
-  ChannelDescription_TV           descrOf2ndCh_bt   optional,
-  FrequencyChannelSequence_TV     frequencyChannelSequence_bt    optional,
-  MobileAllocation_TLV            mobileAllocation_bt  optional,
-  CipherModeSetting_TV            cipherModeSetting optional,
-  VGCS_TargetModeIndication_TLV   vGCS_TargetModeIndication optional,
-  MultiRateConfiguration_TLV      multiRateConfiguration optional,
-  DynamicARFCN_Mapping_TLV        dynamicARFCN_Mapping optional,
-  VGCS_Ciphering_Parameters_TLV   vGCS_Ciphering_Parameters optional,
-  DedicatedServiceInformation_TV  dedicatedServiceInformation optional,
-  PLMNIndex_TV                    pLMNIndex                   optional,
-  ExtendedTSCSet_TV               extendedTSCSet_afterTime    optional,
-  ExtendedTSCSet_TV               extendedTSCSet_beforeTime   optional
-} with {variant "TAG(synchronizationIndication,    elementIdentifier = '1101'B;
-                     frequencyShortListAfterTime,  elementIdentifier = '02'O;
-                     frequencyListAfterTime,       elementIdentifier = '05'O;
-                     cellChannelDescription,       elementIdentifier = '62'O;
-                     multislotAllocation,          elementIdentifier = '10'O;
-                     modeOfChannelSet1,            elementIdentifier = '63'O;
-                     modeOfChannelSet2,            elementIdentifier = '11'O;
-                     modeOfChannelSet3,            elementIdentifier = '13'O;
-                     modeOfChannelSet4,            elementIdentifier = '14'O;
-                     modeOfChannelSet5,            elementIdentifier = '15'O;
-                     modeOfChannelSet6,            elementIdentifier = '16'O;
-                     modeOfChannelSet7,            elementIdentifier = '17'O;
-                     modeOfChannelSet8,            elementIdentifier = '18'O;
-                     descrOf2ndCh_at,              elementIdentifier = '64'O;
-                     modeOf2ndChannel,             elementIdentifier = '66'O;
-                     frequencyChannelSequence_at,  elementIdentifier = '69'O;
-                     mobileAllocation_at,          elementIdentifier = '72'O;
-                     startingTime,                 elementIdentifier = '7C'O;
-                     timeDifference,               elementIdentifier = '7B'O;
-                     timingAdvance,                elementIdentifier = '7D'O;
-                     frequencyShortListBeforeTime, elementIdentifier = '12'O;
-                     frequencyListBeforeTime,      elementIdentifier = '19'O;
-                     descrOf2ndCh_bt,              elementIdentifier = '1C'O;
-                     descrOf1stCh_bt,              elementIdentifier = '1D'O;
-                     frequencyChannelSequence_bt,  elementIdentifier = '1E'O;
-                     mobileAllocation_bt,          elementIdentifier = '21'O;
-                     cipherModeSetting,            elementIdentifier = '1001'B;
-                     vGCS_TargetModeIndication,    elementIdentifier = '01'O;
-                     multiRateConfiguration,       elementIdentifier = '03'O;
-                     dynamicARFCN_Mapping,         elementIdentifier = '76'O;
-                     vGCS_Ciphering_Parameters,    elementIdentifier = '04'O;
-                     dedicatedServiceInformation,  elementIdentifier = '51'O;
-                     pLMNIndex,                    elementIdentifier = '1010'B;
-                     extendedTSCSet_afterTime,     elementIdentifier = '6D'O;
-                     extendedTSCSet_beforeTime,    elementIdentifier = '6E'O;)"};
-
-// 44.018/9.1.15a Inter System to UTRAN Handover Command
-//****************************************************************************
-type record PDU_RRM_InterSystemToUTRAN_HandoverCommand_NW_MS
-{
-  BIT8                        messageType,
-  HandoverToUTRANCommand_LV   handoverToUTRANCommand,
-  CNToMSTransparentInformation_TLV cNToMSTransparentInformation optional
-}
-
-// 44.018/9.1.15b Inter System to CDMA 2000 Handover Command
-//****************************************************************************
-type record PDU_RRM_InterSystemToCDMA2000HandoverCommand_NW_MS
-{
-  BIT8                         messageType,
-  HandoverToCDMA2000Command_LV handoverToCDMA2000Command
-}
-
-// 44.018/9.1.15c Handover To GERAN Iu Mode Command
-//****************************************************************************
-// Note : Message Type is not defined in section 10.4, this message can not be encoded/decoded
-type record PDU_RRM_HandoverToGERAN_IuModeCommand_NW_MS
-{
-  BIT8                            messageType,
-  RadioBearerReconfiguration_LV   radioBearerReconfiguration
-}
-
-// 44.018/9.1.15d Inter System to E-UTRAN Handover Command
-//****************************************************************************
-type record PDU_RRM_InterSystemToEUTRAN_HandoverCommand_NW_MS
-{
-  BIT8                         messageType,
-  DL_DCCH_Message_LV           dL_DCCH_Message,
-  CNToMSTransparentInformation_TLV cNToMSTransparentInformation
-}
-
-// 44.018/9.1.16 Handover Complete
-//****************************************************************************
-type record PDU_RRM_HandoverComplete_MS_NW
-{
-  BIT8                               messageType,    //'00101100'B;
-  RR_Cause_V                         rRCause,
-  MobileTimeDifference_TLV           mobileObsservedTimeDiff optional,
-  MobileTimeDifferenceHyperframe_TLV mobileTimeDifferenceHyperframe optional
-} with {variant "TAG(mobileObsservedTimeDiff,       elementIdentifier = '77'O;
-                     mobileTimeDifferenceHyperframe,elementIdentifier = '67'O;)"};
-
-// 44.018/9.1.17 Handover Failure
-//****************************************************************************
-type record PDU_RRM_HandoverFailure_MS_NW
-{
-  BIT8                        messageType,    //'00101000'B;
-  RR_Cause_V                  rRCause,
-  PS_Cause_TV                 pSCause optional
-} with {variant "TAG(pSCause,elementIdentifier = '1001'B )"};
-
-// 44.018/9.1.18 Immediate Assignment
-//****************************************************************************
-type record PDU_RRM_ImmediateAssignment_NW_MS
-{
-  // L2 pseudo length is handled automatically by encoder/decoder
-  BIT8                        messageType,
-  PageMode_V                  pageMode,
-  DedicatedModeOrTBF_V        dedicatedModeOrTBF,
-  ChannelDescription_V        channelDescription optional,
-  OCT3                        packetChannelDescription optional,
-  RequestReference_V          requestReference,
-  OCT1                        timingAdvance,
-  MobileAllocation_LV         mobileAllocation,
-  StartingTime_TV             startingTime optional,
-  octetstring                 iA_RestOctets length (0..11) optional,
-  ExtendedTSCSet_TV           extendedTSCSet    optional
-} with {variant (channelDescription)   "PRESENCE(dedicatedModeOrTBF.tMA_dL_tD = '000'B)";
-        variant (packetChannelDescription)   "PRESENCE(dedicatedModeOrTBF.tMA_dL_tD = '001'B,
-                                                       dedicatedModeOrTBF.tMA_dL_tD = '011'B,
-                                                       dedicatedModeOrTBF.tMA_dL_tD = '101'B, //???
-                                                       dedicatedModeOrTBF.tMA_dL_tD = '111'B)"; //???
-       variant "TAG(startingTime,       elementIdentifier = '7C'O;
-                    extendedTSCSet,     elementIdentifier = '6D'O;)";};
-
-// 44.018/9.1.18b Immediate Packet Assignment
-//****************************************************************************
-type record PDU_RRM_ImmediatePacketAssignment_NW_MS
-{
-  BIT8                        messageType,
-  PageMode_V                  pageMode,
-  FeatureIndicator_V          featureIndicator,
-  octetstring                 iPA_RestOctets length (19)
-};
-
-// 44.018/9.1.19 Immediate Assignment Extended
-//****************************************************************************
-type record PDU_RRM_ImmediateAssignmentExtended_NW_MS
-{
- // L2 pseudo length is handled automatically by encoder/decoder
- BIT8                        messageType,
- PageMode_V                  pageMode,
- FeatureIndicator_V          featureIndicator,
- ChannelDescription_V        channelDescription1,
- RequestReference_V          requestReference1,
- OCT1                        timingAdvance1,
- ChannelDescription_V        channelDescription2,
- RequestReference_V          requestReference2,
- OCT1                        timingAdvance2,
- MobileAllocation_LV         mobileAllocation,
- StartingTime_TV             startingTime optional,
- octetstring                 iAX_RestOctets length (0..4) optional
-} with {  variant "TAG(startingTime,elementIdentifier = '7C'O )";}
-
-// 44.018/9.1.20 Immediate Assignment Reject
-//****************************************************************************
-type record PDU_RRM_ImmediateAssignmentReject_NW_MS
-{
- // L2 pseudo length is handled automatically by encoder/decoder
- BIT8                        messageType,
- PageMode_V                  pageMode,
- FeatureIndicator_V          featureIndicator,
- RequestReference_V          requestReference1,
- WaitIndication_V            waitIndication1,
- RequestReference_V          requestReference2,
- WaitIndication_V            waitIndication2,
- RequestReference_V          requestReference3,
- WaitIndication_V            waitIndication3,
- RequestReference_V          requestReference4,
- WaitIndication_V            waitIndication4,
- octetstring                 iAR_RestOctets length (3)
-}
-
-// 44.018/9.1.21 Measurement Report
-//****************************************************************************
-// SACCH message, not implemented
-
-// 44.018/9.1.21a Notification/FACCH
-//****************************************************************************
-// No table definition, not implemented
-
-// 44.018/9.1.21b Notification/NCH
-//****************************************************************************
-// NCH message, not implemented
-
-// 44.018/9.1.21d Notification Response
-//****************************************************************************
-type record PDU_RRM_NotificationResponse_MS_NW
-{
-  BIT8                                        messageType,
-  MobileStationClassmark2_LV                  mobileStationClassmark,
-  MobileIdentityLV                            mobileIdentity,
-  DescriptiveGroupOrBroadcastCallReference_V  groupOrBroadcastCallReference
-}
-
-// 44.018/9.1.21f Packet Assignment
-//****************************************************************************
-// FACCH message, not implemented
-
-// 44.018/9.1.21g Packet Notification
-//****************************************************************************
-type record PDU_RRM_PacketNotification_NW_MS
-{
-  BIT8                                        messageType,
-  TMSIP_TMSI_TV                               p_TMSI optional,
-  MobileIdentityTLV                           mobileIdentity optional
-} with { variant "TAG ( p_TMSI,              elementIdentifier = '10'O;
-                        mobileIdentity,      elementIdentifier = '0010001'B;)"};
-
-// 44.018/9.1.21h VBS/VGCS Reconfigure
-//****************************************************************************
-// No table definition, not implemented
-
-// 44.018/9.1.21i VBS/VGCS Reconfigure2
-//****************************************************************************
-// No table definition, not implemented
-
-// 44.018/9.1.21j MBMS Announcement
-//****************************************************************************
-type record MBMS_Announcement_NW_MS
-{
-  BIT8                                        messageType,
-  TemporaryMobileGroupIDLV                    tMGI,
-  MBMS_SessionIdentity_TV                     mBMS_SessionIdentity optional,
-  MPRACH_Description_TLV                      mBMS_CountingChannelDescription optional,
-  MBMS_ptm_ChannelDescription_TLV             mBMS_ptm_ChannelDescription optional,
-  MBMS_SessionParameterList_TLV               mBMS_SessionParameterList optional,
-  RestrictionTimer_TV                         restrictionTimer optional
-} with { variant "TAG ( mBMS_SessionIdentity,              elementIdentifier = '01'O;
-                        mBMS_CountingChannelDescription,   elementIdentifier = '02'O;
-                        mBMS_ptm_ChannelDescription,       elementIdentifier = '03'O;
-                        mBMS_SessionParameterList,         elementIdentifier = '04'O;
-                        restrictionTimer,                  elementIdentifier = '05'O;)"};
-
- // 44.018/9.1.22 Paging Request type 1
-//****************************************************************************
-type record PDU_RRM_PagingReq_Type1_NW_MS
-{
-  // L2 pseudo length is handled automatically by encoder/decoder
-  BIT8              messageType, // '00100001'B;
-  PageMode_V        pageMode,
-  ChannelNeeded_V   channelNeeded,
-  MobileIdentityLV mobileIdentity1,
-  MobileIdentityTLV mobileIdentity2 optional,
-  P1RestOctets      p1RestOctets
-} with { variant "TAG ( mobileIdentity2, elementIdentifier = '0010111'B )" };   //'17'O
-
-// 44.018/9.1.23 Paging Request type 2
-//****************************************************************************
-type record PDU_RRM_PagingReq_Type2_NW_MS
-{
-  // L2 pseudo length is handled automatically by encoder/decoder
-  BIT8                messageType, // '00100010'B
-  PageMode_V          pageMode,
-  ChannelNeeded_V     channelNeeded,
-  TMSIP_TMSI_V        mobileIdentity1,
-  TMSIP_TMSI_V        mobileIdentity2,
-  MobileIdentityTLV   mobileIdentity3 optional,
-  P2RestOctets        p2RestOctets
-} with { variant "TAG ( mobileIdentity3, elementIdentifier = '0010111'B )" }; //'17'O
-
-// 44.018/9.1.24 Paging Request type 3
-//****************************************************************************
-type record PDU_RRM_PagingReq_Type3_NW_MS
-{
-  // L2 pseudo length is handled automatically by encoder/decoder
-  BIT8                messageType, // '00100100'B;
-  PageMode_V          pageMode,
-  ChannelNeeded_V     channelNeeded,
-  TMSIP_TMSI_V        mobileIdentity1,
-  TMSIP_TMSI_V        mobileIdentity2,
-  TMSIP_TMSI_V        mobileIdentity3,
-  TMSIP_TMSI_V        mobileIdentity4,
-  P3RestOctets        p3RestOctets
-} with { variant " " };
-
-// 44.018/9.1.25 Paging Response
-//****************************************************************************
-type record PDU_RRM_PagingResponse_MS_NW
-{
-  BIT8                        messageType, // '00100111'B = '27'O Response  Paging
-  CipheringKeySequenceNumberV cipheringKeySequenceNumber,
-  BIT4                        spare1_4,    //   '0000'B
-  MobileStationClassmark2_LV  mobileStationClassmark,
-  MobileIdentityLV            mobileIdentity,
-  AdditionalUpdateParameterTV additionalUpdateParameters optional
-};
-
-// 44.018/9.1.26 Partial Release
-//****************************************************************************
-type record PDU_RRM_PartialRelease_NW_MS
-{
-  BIT8                  messageType,   //'00001010'B;
-  ChannelDescription_V  channelDescription
-};
-
-// 44.018/9.1.27 Partial Release Complete
-//****************************************************************************
-type record PDU_RRM_PartialReleaseComplete_MS_NW
-{
-  BIT8                  messageType   //  '00001111'B;
-};
-
-// 44.018/9.1.28 Physical Information
-//****************************************************************************
-type record PDU_RRM_PhysicalInformation_NW_MS
-{
-  BIT8  messageType,   //'00101101'B;
-  OCT1  timingAdvance
-};
-
-// 44.018/9.1.29 RR Status
-//****************************************************************************
-type record PDU_RRM_RR_Status
-{
-  BIT8        messageType,   //
-  RR_Cause_V  rR_Cause
-};
-
-// 44.018/9.1.30a Synchronization Channel Information
-//****************************************************************************
-// SCH message, not implemented
-
-
-// 44.018/9.1.31 - 9.1.43o System Information messages
-//****************************************************************************
-//BCCH and SACCH messages, not implemented
-
-// 44.018/9.1.44 Talker Indication
-//****************************************************************************
-type record PDU_RRM_TalkerIndication_MS_NW
-{
-  BIT8                          messageType,
-  MobileStationClassmark2_LV    mobileStationClassmark,
-  MobileIdentityLV              mobileIdentity,
-  CipheringKeySequenceNumberTV  cipheringKeySequenceNumber optional
-} with { variant "TAG (cipheringKeySequenceNumber, elementIdentifier = '1011'B )" }; //B
-
-// 44.018/9.1.45 Uplink Access
-//****************************************************************************
-// No table definition, not implemented
-
-// 44.018/9.1.46 Uplink Busy
-//****************************************************************************
-type record  PDU_RRM_UplinkBusy_NW_MS
-{
-  BIT8                          messageType,
-  TalkerPriorityStatus_TLV      talkerPriorityStatus optional,
-  Token_TV                      token optional,
-  TalkerIdentity_TLV            talkerIdentity optional,
-  UplinkAccessIndication_TV      uplinkAccessIndication optional
-} with { variant "TAG ( talkerPriorityStatus,            elementIdentifier = '31'O;
-                        token,                           elementIdentifier = '32'O;
-                        talkerIdentity,                  elementIdentifier = '33'O;
-                        uplinkAccessIndication,          elementIdentifier = '1000'B;)"}; // '8-'O
-
-// 44.018/9.1.47 Uplink Free
-//****************************************************************************
-// No table definition, not implemented
-
-// 44.018/9.1.48 Uplink Release
-//****************************************************************************
-type record  PDU_RRM_UplinkRelease
-{
-  BIT8                      messageType,
-  RR_Cause_V                rR_Cause
-}
-
-// 44.018/9.1.49 VGCS Uplink Grant
-//****************************************************************************
-type record  PDU_RRM_VGCS_UplinkGrant_NW_MS
-{
-  BIT8                      messageType,
-  RequestReference_V        requestReference,
-  OCT1                      timingAdvance
-}
-
-// 44.018/9.1.49a VGCS Additional Information
-//****************************************************************************
-// No table definition, not implemented
-
-// 44.018/9.1.49b VGCS SMS Information
-//****************************************************************************
-// No table definition,SACCH message, not implemented
-
-// 44.018/9.1.50 System Information
-//****************************************************************************
-// No table definition, SACCH message, not implemented
-
-// 44.018/9.1.51 Extended Measurement Order
-//****************************************************************************
-// SACCH message, not implemented
-
-// 44.018/9.1.52 Extended Measurement Order
-//****************************************************************************
-// SACCH message, not implemented
-
-// 44.018/9.1.53 Application Information
-//****************************************************************************
-type record  PDU_RRM_ApplicationInformation
-{
-  BIT8                      messageType,
-  BIT4                      aPDU_ID,
-  APDU_Flags_V              aPDU_Flags,
-  APDU_Data_LV              aPDU_Data
-}
-
-// 44.018/9.1.54 Measurement Information
-//****************************************************************************
-// No table definition, SACCH message, not implemented
-
-// 44.018/9.1.55 Enhanced Measurement Report
-//****************************************************************************
-// No table definition, SACCH message, not implemented
-
-// 44.018/9.1.56
-//****************************************************************************
-type record  PDU_RRM_ServiceInformationMessage_MS_NW
-{
-  BIT8                       messageType,
-  OCT4                       tLLI,
-  RoutingAreaIdentificationV routingAreaIdentification,//24.008   10.5.5.15
-  ServiceSupport_V           serviceSupport
-}
-
-//****************************************************************************
-// 9.1 Messages for Radio Resources management
-// Table 9.1.1 Organized by Table 10.4.1
-//****************************************************************************
-type union PDU_RRM_MS_NW
-{
-  //Ciphering
-  PDU_RRM_CipheringModeComplete_MS_NW          cipheringModeComplete,
-  //Config change
-  PDU_RRM_ConfigurationChangeAck_MS_NW         configurationChangeAck,
-  PDU_RRM_ConfigurationChangeRej_MS_NW         configurationChangeRej,
-  //Handover
-  PDU_RRM_AssignmentComplete_MS_NW             assignmentComplete,
-  PDU_RRM_AssignmentFailure_MS_NW              assignmentFailure,
-  PDU_RRM_HandoverComplete_MS_NW               handoverComplete,
-  PDU_RRM_HandoverFailure_MS_NW                handoverFailure,
-  //rel:
-  PDU_RRM_PartialReleaseComplete_MS_NW         partialReleaseComplete,
-  //Paging
-  PDU_RRM_PagingResponse_MS_NW                 pagingResponse,
-  PDU_RRM_NotificationResponse_MS_NW           notificationResponse,
-  //Misc
-  PDU_RRM_RR_Status                            rR_Status,
-  PDU_RRM_ChannelModeModifyAck_MS_NW           channelModeModifyAck,
-  PDU_RRM_ClassmarkChange_MS_NW                classmarkChange,
-  PDU_RRM_GPRS_SuspensionRequest_MS_NW         gPRS_suspensionRequest,
-  PDU_RRM_ServiceInformationMessage_MS_NW      serviceInformationMessage,
-  //VGCS
-  PDU_RRM_UplinkRelease                        uplinkRelease,
-  PDU_RRM_TalkerIndication_MS_NW               talkerIndication,
-  //Application
-  PDU_RRM_ApplicationInformation               applicationInformation,
-  //DTM
-  PDU_RRM_DTM_AssignmentFailure_MS_NW          dTM_AssignmentFailure,
-  PDU_RRM_DTM_Request_MS_NW                    dTM_Request,
-  //Inter RAT
-  PDU_RRM_UTRAN_ClassmarkChange_MS_NW          uTRAN_ClassmarkChange,
-  PDU_RRM_CDMA2000_ClassmarkChange_MS_NW       cDMA2000_ClassmarkChange,
-  PDU_RRM_GERAN_IU_ModeClassmarkChange_MS_NW   gERAN_IU_ModeClassmarkChange
-} with { variant "TAG (
-                cipheringModeComplete,        messageType = '00110010'B;
-                configurationChangeAck,       messageType = '00110001'B;
-                configurationChangeRej,       messageType = '00110011'B;
-                assignmentComplete,           messageType = '00101001'B;
-                assignmentFailure,            messageType = '00101111'B;
-                handoverComplete,             messageType = '00101100'B;
-                handoverFailure,              messageType = '00101000'B;
-                partialReleaseComplete,       messageType = '00001111'B;
-                pagingResponse,               messageType = '00100111'B;
-                notificationResponse,         messageType = '00100110'B;
-                rR_Status,                    messageType = '00010010'B;
-                channelModeModifyAck,         messageType = '00010111'B;
-                classmarkChange,              messageType = '00010110'B;
-                gPRS_suspensionRequest,       messageType = '00110100'B;
-                serviceInformationMessage,    messageType = '00110110'B;
-                uplinkRelease,                messageType = '00001110'B;
-                talkerIndication,             messageType = '00010001'B;
-                applicationInformation,       messageType = '00111000'B;
-                dTM_AssignmentFailure,        messageType = '01001000'B;
-                dTM_Request,                  messageType = '01001010'B;
-                uTRAN_ClassmarkChange,        messageType = '01100000'B;
-                cDMA2000_ClassmarkChange,     messageType = '01100010'B;
-                gERAN_IU_ModeClassmarkChange, messageType = '01100101'B;)"};
-
-type union PDU_RRM_NW_MS
-{
-  //Channel establishment
-  PDU_RRM_AdditionalAssignment_NW_MS                  additionalAssignment,
-  PDU_RRM_ImmediatePacketAssignment_NW_MS             immediatePacketAssignment,
-  //Ciphering
-  PDU_RRM_CipheringModeCommand_NW_MS                  cipheringModeCommand,
-  //Config change
-  PDU_RRM_ConfigurationChangeCommand_NW_MS            configurationChangeCommand,
-  //Handover
-  PDU_RRM_AssignmentCommand_NW_MS                     assignmentCommand,
-  PDU_RRM_HandoverCommand_NW_MS                       handoverCommand,
-  PDU_RRM_PhysicalInformation_NW_MS                   physicalInformation,
-  //Channel release
-  PDU_RRM_ChannelRelease_NW_MS                        channelRelease,
-  PDU_RRM_PartialRelease_NW_MS                        partialRelease,
-  //Paging
-  PDU_RRM_PagingReq_Type1_NW_MS                       pagingReq_Type1,
-  PDU_RRM_PagingReq_Type2_NW_MS                       pagingReq_Type2,
-  PDU_RRM_PagingReq_Type3_NW_MS                       pagingReq_Type3,
-  //Misc
-  PDU_RRM_ChannelModeModify_NW_MS                     channelModeModify,
-  PDU_RRM_RR_Status                                   rR_Status,
-  PDU_RRM_Frequency_Redefinition_NW_MS                frequency_Redefinition,
-  PDU_RRM_ClassmarkEnquiry_NW_MS                      classmarkEnquiry,
-  MBMS_Announcement_NW_MS                             mBMS_Announcement,
-  //VGCS
-  PDU_RRM_VGCS_UplinkGrant_NW_MS                      vGCS_UplinkGrant,
-  PDU_RRM_UplinkRelease                               uplinkRelease,
-  PDU_RRM_UplinkBusy_NW_MS                            uplinkBusy,
-  //Application
-  PDU_RRM_ApplicationInformation                      applicationInformation,
-  //DTM
-  PDU_RRM_DTM_AssignmentCommand_NW_MS                 dTM_AssignmentCommand,
-  PDU_RRM_DTM_Information_NW_MS                       dTM_Information,
-  PDU_RRM_DTM_Reject_NW_MS                            dTM_Reject,
-  PDU_RRM_PacketNotification_NW_MS                    packetNotification,
-  //Inter RAT
-  PDU_RRM_InterSystemToUTRAN_HandoverCommand_NW_MS    interSystemToUTRAN_HandoverCommand,
-  PDU_RRM_InterSystemToCDMA2000HandoverCommand_NW_MS  interSystemToCDMA2000HandoverCommand,
-  PDU_RRM_InterSystemToEUTRAN_HandoverCommand_NW_MS   interSystemToEUTRAN_HandoverCommand
-} with { variant "TAG (
-                additionalAssignment,                   messageType = '00111011'B;
-                immediatePacketAssignment,              messageType = '01101001'B;
-                cipheringModeCommand,                   messageType = '00110101'B;
-                configurationChangeCommand,             messageType = '00110000'B;
-                assignmentCommand,                      messageType = '00101110'B;
-                handoverCommand,                        messageType = '00101011'B;
-                physicalInformation,                    messageType = '00101101'B;
-                channelRelease,                         messageType = '00001101'B;
-                partialRelease,                         messageType = '00001010'B;
-                pagingReq_Type1,                        messageType = '00100001'B;
-                pagingReq_Type2,                        messageType = '00100010'B;
-                pagingReq_Type3,                        messageType = '00100100'B;
-                channelModeModify,                      messageType = '00010000'B;
-                rR_Status,                              messageType = '00010010'B;
-                frequency_Redefinition,                 messageType = '00010100'B;
-                classmarkEnquiry,                       messageType = '00010011'B;
-                mBMS_Announcement,                      messageType = '00010110'B;
-                vGCS_UplinkGrant,                       messageType = '00001001'B;
-                uplinkRelease,                          messageType = '00001110'B;
-                uplinkBusy,                             messageType = '00101010'B;
-                applicationInformation,                 messageType = '00111000'B;
-                dTM_AssignmentCommand,                  messageType = '01001100'B;
-                dTM_Information,                        messageType = '01001101'B;
-                dTM_Reject,                             messageType = '01001001'B;
-                packetNotification,                     messageType = '01001110'B;
-                interSystemToUTRAN_HandoverCommand,     messageType = '01100011'B;
-                interSystemToCDMA2000HandoverCommand,   messageType = '01100100'B;
-                interSystemToUTRAN_HandoverCommand,     messageType = '01100110'B;
-)"};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_SMS_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_SMS_Types.ttcn
deleted file mode 100644
index 4ecfa54..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_SMS_Types.ttcn
+++ /dev/null
@@ -1,765 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_SMS_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.008 v13.4.0, 24.011 v13.0.0, 23.040 v13.0.0
-
-module MobileL3_SMS_Types
-{
-// beginning of module
-
-// This module contains the SMS Messages defined in 24.011 v13.0.0,
-// 23.040 v13.0.0 and 23.038 v7.0.0
-// This includes the C-PDUs, R-PDUs and T-PDUs with attributes for
-// RAW encoding/decoding.
-
-
-import from General_Types all;
-
-external function enc_TPDU_RP_DATA_MS_SGSN_fast(in TPDU_RP_DATA_MS_SGSN pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_TPDU_RP_DATA_MS_SGSN_backtrack(in octetstring stream, out TPDU_RP_DATA_MS_SGSN pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_TPDU_RP_DATA_SGSN_MS_fast(in TPDU_RP_DATA_SGSN_MS pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_TPDU_RP_DATA_SGSN_MS_backtrack(in octetstring stream, out TPDU_RP_DATA_SGSN_MS pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_TPDU_RP_ACK_MS_SGSN_fast(in TPDU_RP_ACK_MS_SGSN pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_TPDU_RP_ACK_MS_SGSN_backtrack(in octetstring stream, out TPDU_RP_ACK_MS_SGSN pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_TPDU_RP_ACK_SGSN_MS_fast(in TPDU_RP_ACK_SGSN_MS pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_TPDU_RP_ACK_SGSN_MS_backtrack(in octetstring stream, out TPDU_RP_ACK_SGSN_MS pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_TPDU_RP_ERROR_MS_SGSN_fast(in TPDU_RP_ERROR_MS_SGSN pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_TPDU_RP_ERROR_MS_SGSN_backtrack(in octetstring stream, out TPDU_RP_ERROR_MS_SGSN pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_TPDU_RP_ERROR_SGSN_MS_fast(in TPDU_RP_ERROR_SGSN_MS pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_TPDU_RP_ERROR_SGSN_MS_backtrack(in octetstring stream, out TPDU_RP_ERROR_SGSN_MS pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_RPDU_SGSN_MS_fast(in RPDU_SGSN_MS pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_RPDU_SGSN_MS_backtrack(in octetstring stream, out RPDU_SGSN_MS pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_RPDU_MS_SGSN_fast(in RPDU_MS_SGSN pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_RPDU_MS_SGSN_backtrack(in octetstring stream, out RPDU_MS_SGSN pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-//==============================================================================
-// 24.011 7.2 CP-MESSAGES (CP_DATA, CP_ACK, CP_ERROR)
-//==============================================================================
-
-// 7.2
-type union L3_SMS_MS_SGSN
-{
-  CP_DATA_MS_SGSN    cP_DATA,
-  CP_ACK             cP_ACK,
-  CP_ERROR           cP_ERROR
-};
-
-// 7.2
-type union L3_SMS_SGSN_MS
-{
-  CP_DATA_SGSN_MS    cP_DATA,
-  CP_ACK             cP_ACK,
-  CP_ERROR           cP_ERROR
-};
-
-// 7.2.1 CP-DATA
-type record CP_DATA_MS_SGSN
-{
-  BIT8                         cP_messageType,
-  CP_User_DataLV_MS_SGSN       cP_User_Data
-} with { variant "PRESENCE(cP_messageType = '00000001'B)"; };
-
-// 7.2.1 CP-DATA
-type record CP_DATA_SGSN_MS
-{
-  BIT8                         cP_messageType,
-  CP_User_DataLV_SGSN_MS       cP_User_Data
-} with { variant "PRESENCE(cP_messageType = '00000001'B)"; };
-
-// 7.2.2 CP-ACK
-type record CP_ACK
-{
-  BIT8                         cP_messageType
-} with { variant "PRESENCE(cP_messageType = '00000100'B)"; };
-
-// 7.2.3 CP-ERROR
-type record CP_ERROR
-{
-  BIT8                         cP_messageType,
-  CP_CauseV                    cP_Cause
-} with { variant "PRESENCE(cP_messageType = '00010000'B)"; };
-
-// 7.2.1 CP-DATA
-type record CP_User_DataLV_SGSN_MS
-{
-  LIN1               lengthIndicator,
-  RPDU_SGSN_MS       cP_RPDU
-} with { variant (lengthIndicator) "LENGTHTO (cP_RPDU)"};
-
-// 7.2.1 CP-DATA
-type record CP_User_DataLV_MS_SGSN
-{
-  LIN1               lengthIndicator,
-  RPDU_MS_SGSN       cP_RPDU
-} with { variant (lengthIndicator) "LENGTHTO (cP_RPDU)"};
-
-// 7.2.3 CP-ERROR
-type record CP_CauseV
-{
-  OCT1               causeValue
-}
-
-
-//=============================================================================
-//  END OF CP-MESSAGES
-//=============================================================================
-
-
-//=============================================================================
-// 24.011  7.3  RP-MESSAGES (RP-DATA, RP-SMMA, RP-ACK, RP-ERROR)
-//=============================================================================
-// 7.3
-type union RPDU_SGSN_MS
-{
-  RP_DATA_SGSN_MS              rP_DATA_SGSN_MS,
-  RP_ACK_SGSN_MS               rP_ACK_SGSN_MS,
-  RP_ERROR_SGSN_MS             rP_ERROR_SGSN_MS,
-  RP_SMMA                      rP_SMMA // RP_SMMA included for negative testing in SGSN_MS direction
-} with {
-  variant  "TAG
-  (
-   rP_DATA_SGSN_MS,  rP_MTI = '001'B;
-   rP_ACK_SGSN_MS,   rP_MTI = '011'B;
-   rP_ERROR_SGSN_MS, rP_MTI = '101'B;
-   rP_SMMA,          rP_MTI = '110'B;
-  )"
-};
-
-// 7.3
-type union RPDU_MS_SGSN
-{
-  RP_DATA_MS_SGSN              rP_DATA_MS_SGSN,
-  RP_ACK_MS_SGSN               rP_ACK_MS_SGSN,
-  RP_ERROR_MS_SGSN             rP_ERROR_MS_SGSN,
-  RP_SMMA                      rP_SMMA
-} with {
-  variant  "TAG
-  (
-   rP_DATA_MS_SGSN,  rP_MTI = '000'B;
-   rP_ACK_MS_SGSN,   rP_MTI = '010'B;
-   rP_ERROR_MS_SGSN, rP_MTI = '100'B;
-   rP_SMMA,          rP_MTI = '110'B;
-  )"
-};
-
-// 7.3.1.2 RP-DATA (Mobile Station to Network)
-type record RP_DATA_MS_SGSN
-{
-  BIT3                         rP_MTI,
-  BIT5                         rP_Spare,  // '00000'B
-  OCT1                         rP_MessageReference,
-  RP_OriginatorAddressLV       rP_OriginatorAddress,
-  RP_DestinationAddressLV      rP_DestinationAddress,
-  RP_DATA_User_DataLV_MS_SGSN  rP_User_Data
-} with { variant "PRESENCE(rP_MTI = '000'B)"; };
-
-// 7.3.1.1 RP-DATA (Network to Mobile Station)
-type record RP_DATA_SGSN_MS
-{
-  BIT3                         rP_MTI,
-  BIT5                         rP_Spare,  // '00000'B
-  OCT1                         rP_MessageReference,
-  RP_OriginatorAddressLV       rP_OriginatorAddress,
-  RP_DestinationAddressLV      rP_DestinationAddress,
-  RP_DATA_User_DataLV_SGSN_MS  rP_User_Data
-} with { variant "PRESENCE(rP_MTI = '001'B)"; };
-
-// 7.3.2 RP-SMMA
-type record RP_SMMA
-{
-  BIT3                         rP_MTI,
-  BIT5                         rP_Spare,   // '00000'B
-  OCT1                         rP_MessageReference
-} with { variant "PRESENCE(rP_MTI = '110'B)"; };
-
-// 7.3.3 RP-ACK
-type record RP_ACK_SGSN_MS
-{
-  BIT3                         rP_MTI,
-  BIT5                         rP_Spare,   // '00000'B
-  OCT1                         rP_MessageReference,
-  RP_ACK_User_DataTLV_SGSN_MS  rP_User_Data     optional
-} with { variant "PRESENCE(rP_MTI = '011'B)"; };
-
-// 7.3.3 RP-ACK
-type record RP_ACK_MS_SGSN
-{
-  BIT3                         rP_MTI,
-  BIT5                         rP_Spare,   // '00000'B
-  OCT1                         rP_MessageReference,
-  RP_ACK_User_DataTLV_MS_SGSN  rP_User_Data     optional
-} with { variant "PRESENCE(rP_MTI = '010'B)"; };
-
-// 7.3.4 RP-ERROR
-type record RP_ERROR_SGSN_MS
-{
-  BIT3                                   rP_MTI,
-  BIT5                                   rP_Spare,   // '00000'B
-  OCT1                                   rP_Message_Reference,
-  RP_CauseLV                             rP_CauseLV,
-  RP_ERROR_User_DataTLV_SGSN_MS          rP_User_Data    optional
-} with { variant "PRESENCE(rP_MTI = '101'B)"; };
-
-// 7.3.4 RP-ERROR
-type record RP_ERROR_MS_SGSN
-{
-  BIT3                                    rP_MTI,
-  BIT5                                    rP_Spare,   // '00000'B
-  OCT1                                    rP_Message_Reference,
-  RP_CauseLV                              rP_CauseLV,
-  RP_ERROR_User_DataTLV_MS_SGSN           rP_User_Data     optional
-} with { variant "PRESENCE(rP_MTI = '100'B)"; };
-
-// 8.2.5.1 Originator address element
-type record RP_OriginatorAddressLV
-{
-  LIN1                                 lengthIndicator,
-  RP_NumberingPlan_and_NumberDigits    rP_OriginatorAddress optional
-} with {variant(lengthIndicator)"LENGTHTO (rP_OriginatorAddress)"};
-
-
-// 8.2.5.2 Destination address element
-type record RP_DestinationAddressLV
-{
-  LIN1                                lengthIndicator,
-  RP_NumberingPlan_and_NumberDigits   rP_DestinationAddress optional
-} with { variant (lengthIndicator)"LENGTHTO (rP_DestinationAddress)"};
-
-// 8.2.5.1 & 8.2.5.2 Originator address element
-type record RP_NumberingPlan_and_NumberDigits
-{
-  BIT4                         rP_NumberingPlanIdentification,
-  BIT3                         rP_TypeOfNumber,
-  BIT1                         rP_Ext,
-  hexstring                    rP_NumberDigits  length (1..20)
-} with { variant "PADDING(yes)";
-         variant "PADDING_PATTERN('1111'B)"};
-
-
-// 8.2.5.4 RP-Cause element
-type record RP_CauseLV
-{
-  LIN1               rP_LengthIndicator,
-  RP_CauseV          rP_CauseV,
-  OCT1               rP_diagnisticField   optional
-} with { variant (rP_LengthIndicator)"LENGTHTO (rP_CauseV,rP_diagnisticField)"};
-
-// 8.2.5.4 RP-Cause
-type record RP_CauseV
-{
-  BIT7               causeValue,
-  BIT1               ext     //'0'B
-}
-
-// 8.2.5.3 RP-User data element
-type record RP_DATA_User_DataLV_SGSN_MS
-{
-  LIN1                         rP_LengthIndicator,
-  TPDU_RP_DATA_SGSN_MS         rP_TPDU
-} with { variant (rP_LengthIndicator) "LENGTHTO (rP_TPDU)"};
-
-// 8.2.5.3 RP-User data element
-type record RP_DATA_User_DataLV_MS_SGSN
-{
-  LIN1                         rP_LengthIndicator,
-  TPDU_RP_DATA_MS_SGSN         rP_TPDU
-} with { variant (rP_LengthIndicator) "LENGTHTO (rP_TPDU)"};
-
-// 8.2.5.3 RP-User data element
-type record RP_ACK_User_DataTLV_SGSN_MS
-{
-  BIT1                         rP_Spare,
-  BIT7                         rP_UserDataIEI,
-  LIN1                         rP_LengthIndicator,
-  TPDU_RP_ACK_SGSN_MS          rP_TPDU
-} with { variant "PRESENCE(rP_UserDataIEI = '1000001'B)";
-         variant (rP_Spare,rP_UserDataIEI)  "FIELDORDER(msb)";
-         variant (rP_LengthIndicator) "LENGTHTO (rP_TPDU)"};
-
-// 8.2.5.3 RP-User data element
-type record RP_ACK_User_DataTLV_MS_SGSN
-{
-  BIT1                         rP_Spare,
-  BIT7                         rP_UserDataIEI,
-  LIN1                         rP_LengthIndicator,
-  TPDU_RP_ACK_MS_SGSN          rP_TPDU
-} with { variant "PRESENCE(rP_UserDataIEI = '1000001'B)";
-         variant (rP_Spare,rP_UserDataIEI)  "FIELDORDER(msb)";
-         variant (rP_LengthIndicator) "LENGTHTO (rP_TPDU)"};
-
-// 8.2.5.3 RP-User data element
-type record RP_ERROR_User_DataTLV_SGSN_MS
-{
-  BIT1                         rP_Spare,
-  BIT7                         rP_UserDataIEI,
-  LIN1                         rP_LengthIndicator,
-  TPDU_RP_ERROR_SGSN_MS        rP_TPDU
-} with { variant "PRESENCE(rP_UserDataIEI = '1000001'B)";
-         variant (rP_Spare,rP_UserDataIEI)  "FIELDORDER(msb)";
-         variant (rP_LengthIndicator) "LENGTHTO (rP_TPDU)"};
-
-// 8.2.5.3 RP-User data element
-type record RP_ERROR_User_DataTLV_MS_SGSN
-{
-  BIT1                         rP_Spare,
-  BIT7                         rP_UserDataIEI,
-  LIN1                         rP_LengthIndicator,
-  TPDU_RP_ERROR_MS_SGSN        rP_TPDU
-} with { variant "PRESENCE(rP_UserDataIEI = '1000001'B)";
-         variant (rP_Spare,rP_UserDataIEI)  "FIELDORDER(msb)";
-         variant (rP_LengthIndicator) "LENGTHTO (rP_TPDU)"};
-
-
-type union TPDU_RP_DATA_MS_SGSN
-{
-  SMS_SUBMIT                   sMS_SUBMIT,
-  SMS_COMMAND                  sMS_COMMAND
-} with {
-  variant  "TAG
-  (
-   sMS_SUBMIT,  tP_MTI =  '01'B;
-   sMS_COMMAND, tP_MTI =  '10'B;
-  )"
-};
-
-
-type union TPDU_RP_DATA_SGSN_MS
-{
-  SMS_DELIVER                  sMS_DELIVER,
-  SMS_STATUS_REPORT            sMS_STATUS_REPORT
-} with {
-  variant  "TAG
-  (
-   sMS_DELIVER,  tP_MTI =  '00'B;
-   sMS_STATUS_REPORT, tP_MTI =  '10'B;
-  )"
-};
-
-
-type union TPDU_RP_ACK_MS_SGSN
-{
-  SMS_DELIVER_REPORT_in_RP_ACK           sMS_DELIVER_REPORT
-} with {
-  variant  "TAG
-  (
-   sMS_DELIVER_REPORT,  tP_MTI =  '00'B;
-  )"
-};
-
-
-type union TPDU_RP_ACK_SGSN_MS
-{
-  SMS_SUBMIT_REPORT_in_RP_ACK            sMS_SUBMIT_REPORT
-} with {
-  variant  "TAG
-  (
-   sMS_SUBMIT_REPORT,  tP_MTI =  '01'B;
-  )"
-};
-
-
-type union TPDU_RP_ERROR_MS_SGSN
-{
-  SMS_DELIVER_REPORT_in_RP_ERROR         sMS_DELIVER_REPORT
-} with {
-  variant  "TAG
-  (
-   sMS_DELIVER_REPORT,  tP_MTI =  '00'B;
-  )"
-};
-
-
-type union TPDU_RP_ERROR_SGSN_MS
-{
-  SMS_SUBMIT_REPORT_in_RP_ERROR          sMS_SUBMIT_REPORT
-} with {
-  variant  "TAG
-  (
-   sMS_SUBMIT_REPORT,  tP_MTI =  '01'B;
-  )"
-};
-
-
-//================================================================
-//  END OF  RP-MESSAGES
-//================================================================
-
-
-//================================================================
-//  TPDUs    23.040  9.2.2
-// (SMS_DELIVER, SMS_DELIVER_REPORT, SMS_SUBMIT, SMS_SUBMIT_REPORT,
-//  SMS_STATUS_REPORT, SMS_COMMAND)
-//================================================================
-
-// 23.040 9.2.2.1
-type record SMS_DELIVER
-{
-  BIT2                         tP_MTI,
-  BIT1                         tP_MMS,
-  BIT1                         tP_LP,
-  BIT1                         tP_Spare, //00
-  BIT1                         tP_SRI,
-  BIT1                         tP_UDHI,
-  BIT1                         tP_RP,
-
-  TP_OA                        tP_OA,
-
-  OCT1                         tP_PID,
-
-  TP_DCS                       tP_DCS,
-  //See 23.038 Section 4 for encoding tP_DCS
-  OCT7                         tP_SCTS,
-
-  TP_UDL_UD                    tP_UDL_UD
-} with { variant "PRESENCE(tP_MTI =  '00'B)"; };
-
-// 23.040 9.2.2.1a(i)
-type record SMS_DELIVER_REPORT_in_RP_ERROR
-{
-  BIT2                         tP_MTI,
-  BIT4                         tP_Spare1,  //'0000'B
-  BIT1                         tP_UDHI,
-  BIT1                         tP_Spare2,  //'0'B
-
-  OCT1                         tP_FCS,
-
-  BIT1                         tP_PresenceBitTP_PID,
-  BIT1                         tP_PresenceBitTP_DCS,
-  BIT1                         tP_PresenceBitTP_UDL,
-  BIT4                         tP_Reserved,
-  BIT1                         tP_ExtensionBit,
-  // note:current implementation PID is 1 octet ->tP_extensionBit=0
-  OCT1                         tP_PID        optional,
-  //See 23.038 for encoding tP_DCS
-  TP_DCS                       tP_DCS        optional,
-
-  TP_UDL_UD                    tP_UDL_UD     optional
-} with { variant "PRESENCE(tP_MTI =  '00'B)";
-         variant (tP_PID)           "PRESENCE(tP_PresenceBitTP_PID = '1'B)";
-         variant (tP_DCS)           "PRESENCE(tP_PresenceBitTP_DCS = '1'B)";
-         variant (tP_UDL_UD)        "PRESENCE(tP_PresenceBitTP_UDL = '1'B)"};
-
-// 23.040 9.2.2.1a(ii)
-type record SMS_DELIVER_REPORT_in_RP_ACK
-{
-  BIT2                         tP_MTI,
-  BIT4                         tP_Spare1,  //'0000'B
-  BIT1                         tP_UDHI,
-  BIT1                         tP_Spare2,  //'0'B
-
-  BIT1                         tP_PresenceBitTP_PID,
-  BIT1                         tP_PresenceBitTP_DCS,
-  BIT1                         tP_PresenceBitTP_UDL,
-  BIT4                         tP_Reserved,
-  BIT1                         tP_ExtensionBit,
-  // note:current implementation PID is 1 octet ->tP_extensionBit=0
-  OCT1                         tP_PID     optional,
-  //See 23.038 for encoding tP_DCS
-  TP_DCS                       tP_DCS     optional,
-
-  TP_UDL_UD                    tP_UDL_UD  optional
-} with { variant "PRESENCE(tP_MTI =  '00'B)";
-         variant (tP_PID)           "PRESENCE(tP_PresenceBitTP_PID = '1'B)";
-         variant (tP_DCS)           "PRESENCE(tP_PresenceBitTP_DCS = '1'B)";
-         variant (tP_UDL_UD)        "PRESENCE(tP_PresenceBitTP_UDL = '1'B)"};
-
-// 23.040 9.2.2.2
-type record SMS_SUBMIT
-{
-  BIT2                         tP_MTI,
-  BIT1                         tP_RD,
-  BIT2                         tP_VPF,
-  BIT1                         tP_SRR,
-  BIT1                         tP_UDHI,
-  BIT1                         tP_RP,
-  OCT1                         tP_MR,
-
-  TP_DA                        tP_DA,
-
-  OCT1                         tP_PID,
-  //See 23.038 for encoding tP_DCS
-  TP_DCS                       tP_DCS,
-
-  TP_VP                        tP_VP optional,  // depends on tP_VPF
-
-  TP_UDL_UD                    tP_UDL_UD
-} with { variant "PRESENCE(tP_MTI =  '01'B)";
-         variant (tP_VP)"CROSSTAG(
-//           tP_VP_not_present,         tP_VPF='00'B;
-           tP_VP_relative_format,     tP_VPF='10'B;
-           tP_VP_enhanced_format,     tP_VPF='01'B;
-           tP_VP_absolute_format,     tP_VPF='11'B
-         )";
-         variant (tP_VP) "PRESENCE(tP_VPF='10'B, tP_VPF='01'B, tP_VPF='11'B)"
-         };
-
-// 23.040 9.2.2.2a (i)
-type record SMS_SUBMIT_REPORT_in_RP_ERROR    // for RP_Error
-{
-  BIT2                         tP_MTI,
-  BIT4                         tP_Spare1,
-  BIT1                         tP_UDHI,
-  BIT1                         tP_Spare2,
-
-  OCT1                         tP_FCS,
-
-  BIT1                         tP_PresenceBitTP_PID,
-  BIT1                         tP_PresenceBitTP_DCS,
-  BIT1                         tP_PresenceBitTP_UDL,
-  BIT4                         tP_Reserved,
-  BIT1                         tP_ExtensionBit,
-  // note:current implementation PID is 1 octet ->tP_extensionBit=0
-
-  OCT7                         tP_SCTS,
-
-  OCT1                         tP_PID           optional,
- //See 23.038 for encoding tP_DCS
-  TP_DCS                       tP_DCS           optional,
-
-  TP_UDL_UD                    tP_UDL_UD        optional
-} with { variant "PRESENCE(tP_MTI =  '01'B)";
-         variant (tP_PID)            "PRESENCE(tP_PresenceBitTP_PID = '1'B)";
-         variant (tP_DCS)            "PRESENCE(tP_PresenceBitTP_DCS = '1'B)";
-         variant (tP_UDL_UD)         "PRESENCE(tP_PresenceBitTP_UDL = '1'B)"}
-
-// 23.040 9.2.2.2a (ii)
-type record SMS_SUBMIT_REPORT_in_RP_ACK    // for RP_ACK
-{
-  BIT2                         tP_MTI,
-  BIT4                         tP_Spare1,
-  BIT1                         tP_UDHI,
-  BIT1                         tP_Spare2,
-
-  BIT1                         tP_PresenceBitTP_PID,
-  BIT1                         tP_PresenceBitTP_DCS,
-  BIT1                         tP_PresenceBitTP_UDL,
-  BIT4                         tP_Reserved,
-  BIT1                         tP_ExtensionBit,
-  // note:current implementation PID is 1 octet ->tP_extensionBit=0
-  OCT7                         tP_SCTS,
-
-  OCT1                         tP_PID          optional,
-  //See 23.038 for encoding tP_DCS
-  TP_DCS                       tP_DCS          optional,
-
-  TP_UDL_UD                    tP_UDL_UD       optional
-} with { variant "PRESENCE(tP_MTI =  '01'B)";
-         variant (tP_PID)            "PRESENCE(tP_PresenceBitTP_PID = '1'B)";
-         variant (tP_DCS)            "PRESENCE(tP_PresenceBitTP_DCS = '1'B)";
-         variant (tP_UDL_UD)         "PRESENCE(tP_PresenceBitTP_UDL = '1'B)"}
-
-// 23.040 9.2.2.3
-type record SMS_STATUS_REPORT
-{
-  BIT2                         tP_MTI,
-  BIT1                         tP_MMS,
-  BIT1                         tP_LP,
-  BIT1                         tP_Spare1,
-  BIT1                         tP_SRQ,
-  BIT1                         tP_UDHI,
-  BIT1                         tP_Spare2,
-
-  OCT1                         tP_MR,
-
-  TP_RA                        tP_RA,
-
-  OCT7                         tP_SCTS,
-
-  OCT7                         tP_DT,
-
-  OCT1                         tP_ST,
-
-  BIT1                         tP_PresenceBitTP_PID optional,
-  BIT1                         tP_PresenceBitTP_DCS optional,
-  BIT1                         tP_PresenceBitTP_UDL optional,
-  BIT4                         tP_Reserved          optional,
-  BIT1                         tP_ExtensionBit      optional,
-  // note:current implementation PID is 1 octet ->tP_extensionBit=0
-  OCT1                         tP_PID               optional,
-
-  TP_DCS                       tP_DCS               optional,
-  //See 23.038 for encoding tP_DCS
-  TP_UDL_UD                    tP_UDL_UD            optional
-} with { variant "PRESENCE(tP_MTI =  '10'B)";
-         variant (tP_PID)    "PRESENCE(tP_PresenceBitTP_PID = '1'B)";
-         variant (tP_DCS)    "PRESENCE(tP_PresenceBitTP_DCS = '1'B)";
-         variant (tP_UDL_UD) "PRESENCE(tP_PresenceBitTP_UDL = '1'B)"}
-
-// 23.040 9.2.2.4
-type record SMS_COMMAND
-{
-  BIT2                         tP_MTI,
-  BIT3                         tP_Spare1,
-  BIT1                         tP_SRR,
-  BIT1                         tP_UDHI,
-  BIT1                         tP_Spare2,
-
-  OCT1                         tP_MR,
-
-  OCT1                         tP_PID,
-
-  OCT1                         tP_CT,
-
-  OCT1                         tP_MN,
-
-  TP_DA                        tP_DA,
-
-  TP_CDL_CD                    tP_CDL_CD
-} with { variant "PRESENCE(tP_MTI =  '10'B)"; };
-//================================================================
-//   END OF  TPDUs    23.040  9.2.2
-//================================================================
-
-//================================================================
-// TPDU Parameters  23.040 9.2.3
-//================================================================
-type record TP_OA
-{
-  TP_OA_NoPad   tP_OA_NoPad
-} with { variant "PADDING(yes), PADDING_PATTERN('1111'B)"};
-//Note: Padding is handled automatically here.
-
-type record TP_OA_NoPad
-{
-  LIN1                         tP_LengthIndicator,   //0-20
-  BIT4                         tP_NumberingPlanID,
-  BIT3                         tP_TypeOfNumber,
-  BIT1                         tp_Spare,
-  hexstring                    tP_OAValue  length (0..20)
-  // Note: tP_OAValue does not incude the padding half-octet.
-  // It includes only useful tP_OAValue digits.
-  // Padding after tP_OAValue digits is handled
-  // automatically and the tester does not see it in
-  // the TTCN templates
-} with { variant (tP_LengthIndicator) "LENGTHTO (tP_OAValue)";
-         variant (tP_LengthIndicator) "UNIT(4)";};
-
-type record TP_CDL_CD
-{
-  LIN1                         tP_CDL, //  length is possible
-  octetstring                  tP_CD
-} with { variant (tP_CDL) "LENGTHTO (tP_CD)"};
-
-type record TP_RA
-{
-  TP_RA_NoPad        tP_RA_NoPad
-} with { variant "PADDING(yes), PADDING_PATTERN('1111'B)"};
-//Note: Padding is handled automatically here.
-
-type record TP_RA_NoPad
-{
-  LIN1                         tP_LengthIndicator,   //0-20
-  BIT4                         tP_NumberingPlanID,
-  BIT3                         tP_TypeOfNumber,
-  BIT1                         tp_Spare,
-  hexstring                    tP_RAValue  length (0..20)
-  // Note: tP_RAValue does not incude the padding half-octet.
-  // It includes only useful tP_RAValue digits.
-  // Padding after tP_RAValue digits is handled
-  // automatically and the tester does not see it in
-  // the TTCN templates
-} with { variant (tP_LengthIndicator) "LENGTHTO (tP_RAValue)";
-         variant (tP_LengthIndicator) "UNIT(4)";};
-
-type union TP_VP 
-{
-//  OCT0                         tP_VP_not_present,
-  OCT1                         tP_VP_relative_format,
-  OCT7                         tP_VP_enhanced_format,
-  OCT7                         tP_VP_absolute_format
-};
-
-type record TP_DA
-{
-  TP_DA_NoPad   tP_DA_NoPad
-} with { variant "PADDING(yes), PADDING_PATTERN('1111'B)"};
-//Note: Padding is handled automatically here.
-
-type record TP_DA_NoPad
-{
-  LIN1                         tP_LengthIndicator,   //0-20
-  BIT4                         tP_NumberingPlanID,
-  BIT3                         tP_TypeOfNumber,
-  BIT1                         tp_Spare,
-  hexstring                    tP_DAValue  length (0..20)
-  // Note: tP_DAValue does not incude the padding half-octet.
-  // It includes only useful tP_DAValue digits.
-  // Padding after tP_DAValue digits is handled
-  // automatically and the tester does not see it in
-  // the TTCN templates
-} with { variant (tP_LengthIndicator) "LENGTHTO (tP_DAValue)";
-         variant (tP_LengthIndicator) "UNIT(4)"; };
-
-
-// Note that tP_LengthIndicator in TP_UDL_UD gives the data length in septets or
-// octets. Septets are used for uncompressed GSM 7 bit default alphabet coding
-// Octets are used for all other variations.
-// IT IS NOT CALCULATED AUTOMATICALLY BY THE RAW CODER.
-// This will not be a problem during decoding.
-// For encoding correct messages the tester has to enter manually
-// or calculate the correct tP_LengthIndicator with a function.
-// Note also that the septet or octet choice depends on the various
-// bit combinations in field TP_DCS. See 23.038 Section 4.
-type record TP_UDL_UD
-{
-  integer            tP_LengthIndicator,  // could be zero length
-  octetstring        tP_UD
-}
-
-// See 23.038 for encoding TP_DCS
-// The various bit combinations in TP_DCS determine
-// the coding of TP_UDL_UD
-type OCT1 TP_DCS;
-
-//================================================================
-// END of TPDU Parameters  23.040 9.2.3
-//================================================================
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_SS_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_SS_Types.ttcn
deleted file mode 100644
index 6e8d34e..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_SS_Types.ttcn
+++ /dev/null
@@ -1,102 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_SS_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.080 v13.0.0
-
-module  MobileL3_SS_Types
-{
-
-import from General_Types all;
-import from MobileL3_CommonIE_Types all;
-
-//****************************************************************************
-// 24.080/2.3 Facility
-// see also 9.3.9.1 (NW->MS) and 9.3.9.2 (MS->NW) Facility  
-//****************************************************************************
-type record PDU_ML3_SS_Facility
-{
-  BIT6  messageType, // '111010'B; facilityIEI 
-  BIT2  nsd,
-  Facility_LV facility  // see 24.008/10.5.4.15 in Mobility_L3_CommonIE_Types and
-                        // see 24.080/3.6 how to extract
-} 
-
-//****************************************************************************************
-//24.080/2.4.1 Register (NW->MS)
-//****************************************************************************************
-type record PDU_ML3_SS_Register_NW_MS
-{
-  BIT6 messageType,  //    '111011'B Register
-  BIT2 nsd,
-  Facility_TLV facility 
-};
-
-//****************************************************************************************
-//24.080/2.4.1 Register ( MS->NW)
-//****************************************************************************************
-type record PDU_ML3_SS_Register_MS_NW
-{
-  BIT6  messageType,  //    '111011'B Register
-  BIT2  nsd,
-  Facility_TLV  facility,
-  SS_VersionIndicator ss_version optional
-} with { variant "TAG (
-               ss_version,   elementIdentifier = '7F'O;)"};
-
-
-//****************************************************************************
-// 2.5 Release Complete
-// see also 24.008/9.3.19.1
-//****************************************************************************
-type record PDU_ML3_SS_ReleaseComplete
-{
-  BIT6  messageType, //    '101010'B ReleaseComplete  
-  BIT2  nsd, // sent by the NW: '00'B
-  ML3_Cause_TLV      cause      optional,
-  Facility_TLV       facility   optional
-} with { variant "TAG (
-                cause,      elementIdentifier = '08'O;
-                facility,   elementIdentifier = '1C'O;)"};
- 
-/****************************************************************************************
-  MobileL3   Supplementary Service Management
-  TS 24.080 / 2.2
- ****************************************************************************************/
-type union PDU_ML3_SS_MS_NW
-{
-  PDU_ML3_SS_Facility                 facility,
-  PDU_ML3_SS_Register_MS_NW           register,
-  PDU_ML3_SS_ReleaseComplete          releaseComplete_MS_NW
-} with { variant "TAG (
-               facility,               messageType ='111010'B;
-               register,               messageType ='111011'B;
-               releaseComplete_MS_NW,  messageType ='101010'B;)"};
- 
-type union PDU_ML3_SS_NW_MS
-{
-  PDU_ML3_SS_Facility                 facility,
-  PDU_ML3_SS_Register_NW_MS           register,
-  PDU_ML3_SS_ReleaseComplete          releaseComplete_NW_MS
-} with { variant "TAG (
-               facility,               messageType ='111010'B;
-               register,               messageType ='111011'B;
-               releaseComplete_NW_MS,  messageType ='101010'B;)"};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_Types.ttcn
deleted file mode 100644
index 6e28c0e..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_Types.ttcn
+++ /dev/null
@@ -1,403 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.008 v13.4.0
-
-module MobileL3_Types
-{
-
-import from General_Types           all;
-import from MobileL3_CommonIE_Types all;
-import from MobileL3_GMM_SM_Types   all;
-import from MobileL3_MM_Types       all;
-import from MobileL3_CC_Types       all;
-import from MobileL3_RRM_Types      all;
-import from MobileL3_SMS_Types      all;
-//import from MobileL3_SS_Types       all;
-
-external function enc_PDU_L3_MS_SGSN(in PDU_L3_MS_SGSN pdu) return octetstring
-with { extension "prototype(convert)" extension "encode(RAW)" }
-external function enc_PDU_L3_MS_SGSN_fast(in PDU_L3_MS_SGSN pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-// new external function for decoding MS -> SGSN
-external function dec_PDU_L3_MS_SGSN(in octetstring stream) return PDU_L3_MS_SGSN
-with { extension "prototype(convert)" extension "decode(RAW)" }
-external function dec_PDU_L3_MS_SGSN_backtrack(in octetstring stream, out PDU_L3_MS_SGSN pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-// new external function for encoding SGSN -> MS
-external function enc_PDU_L3_SGSN_MS(in PDU_L3_SGSN_MS pdu) return octetstring
-with { extension "prototype(convert)" extension "encode(RAW)" }
-external function enc_PDU_L3_SGSN_MS_fast(in PDU_L3_SGSN_MS pdu, out octetstring stream)
-with { extension "prototype(fast)" extension "encode(RAW)" }
-
-external function dec_PDU_L3_SGSN_MS(in octetstring stream) return PDU_L3_SGSN_MS
-with { extension "prototype(convert)" extension "decode(RAW)" }
-external function dec_PDU_L3_SGSN_MS_backtrack(in octetstring stream, out PDU_L3_SGSN_MS pdu) return integer
-with { extension "prototype(backtrack)" extension "decode(RAW)" }
-
-external function enc_PDU_ML3_NW_MS(in PDU_ML3_NW_MS pdu) return octetstring
-with { extension "prototype(convert)" extension " encode(RAW)" }
-external function enc_PDU_ML3_NW_MS_fast(in PDU_ML3_NW_MS pdu, out octetstring stream)
-with { extension "prototype(fast)" extension " encode(RAW)" }
-
-external function dec_PDU_ML3_NW_MS(in octetstring stream) return PDU_ML3_NW_MS
-with { extension "prototype(convert)" extension " decode(RAW)" }
-external function dec_PDU_ML3_NW_MS_backtrack(in octetstring stream, out PDU_ML3_NW_MS pdu) return integer
-with { extension "prototype(backtrack)" extension " decode(RAW)" }
-
-external function enc_PDU_ML3_MS_NW(in PDU_ML3_MS_NW pdu) return octetstring
-with { extension "prototype(convert)" extension " encode(RAW)" }
-external function enc_PDU_ML3_MS_NW_fast(in PDU_ML3_MS_NW pdu, out octetstring stream)
-with { extension "prototype(fast)" extension " encode(RAW)" }
-
-external function dec_PDU_ML3_MS_NW(in octetstring stream) return PDU_ML3_MS_NW
-with { extension "prototype(convert)" extension " decode(RAW)" }
-external function dec_PDU_ML3_MS_NW_backtrack(in octetstring stream, out PDU_ML3_MS_NW pdu) return integer
-with { extension "prototype(backtrack)" extension " decode(RAW)" }
-
-// ***************************************************************************
-// *     The container types of all L3_PDU
-// ***************************************************************************
-type record L3_TransactionId
-{
-  BIT3               tio,
-  BIT1               tiFlag ,
-  TI_Extension       tIExtension  optional
-  // an extension octet (TI) can be used for session management messages
-  // not yet implemented (see 24.008 clause 10.3.2 for more detail
-} with { variant (tIExtension) "PRESENCE(tio = '111'B)" };
-
-type record L3_TransactionId_not_extended
-{
-  BIT3               tio,
-  BIT1               tiFlag
-};
-
-type union TiOrSkip_not_extended
-{
-  BIT4                                   skipIndicator,
-  L3_TransactionId_not_extended          transactionId
-};
-
-
-type union TiOrSkip
-{
-  BIT4               skipIndicator,
-  L3_TransactionId   transactionId
-};
-
-type union L3_Discr_SGSN_MS
-{
-  octetstring        gcc,       //group call control
-  octetstring        bcc,      // broadcast call control
-  octetstring        cc,       // call control; call related SS messages PDU_ypes_CC_MSC_MS
-  octetstring        gttp,     // GPRS Transparent Transport Protocol
-  octetstring        mm,       // mobility management messages  PDU_DTAP_MM
-  octetstring        rrm,      // radio resource management messages PDU_DTAP_RRM
-  L3_GMM_SGSN_MS     gprs_mm,  // GPRS mobility management messages
-  octetstring        sms,      // SMS messages
-  L3_GSM_SGSN_MS     gprs_sm,  // GPRS session management messages
-  octetstring        ss,       // non call related SS messages
-  octetstring        loc,      // Location services
-  octetstring        reserved
-};
-
-
-type record PDU_L3_SGSN_MS_unextended_ti
-{
-  BIT4                         discriminator,
-  TiOrSkip_not_extended        tiOrSkip,
-  L3_Discr_SGSN_MS             msgs
-} with { variant (msgs)"CROSSTAG(
-  gcc,        discriminator='0000'B;
-  bcc,        discriminator='0001'B;
-  cc,         discriminator='0011'B;
-  gttp,       discriminator='0100'B;
-  mm,         discriminator='0101'B;
-  rrm,        discriminator='0110'B;
-  gprs_mm,    discriminator='1000'B;
-  sms,        discriminator='1001'B;
-  gprs_sm,    discriminator='1010'B;
-  ss,         discriminator='1011'B;
-  loc,        discriminator='1100'B;
-  reserved, { discriminator='0010'B,
-  discriminator='0111'B,
-  discriminator='1101'B,
-  discriminator='1110'B,
-  discriminator='1111'B }
-  )";
-  variant (tiOrSkip)"CROSSTAG(
-  skipIndicator,    { discriminator='0000'B,
-  discriminator='0001'B,
-  discriminator='0010'B,
-  discriminator='0100'B,
-  discriminator='0101'B,
-  discriminator='0110'B,
-  discriminator='0111'B,
-  discriminator='1000'B,
-  discriminator='1100'B,
-  discriminator='1101'B,
-  discriminator='1110'B,
-  discriminator='1111'B };
-  transactionId,    { discriminator='0011'B,
-  discriminator='1001'B,
-  discriminator='1011'B,
-  discriminator='1010'B }
-  )";
-};
-
-
-type record PDU_L3_SGSN_MS
-{
-  BIT4               discriminator,
-  TiOrSkip           tiOrSkip,
-  L3_Discr_SGSN_MS   msgs
-}  with { variant (msgs)"CROSSTAG(
-  gcc,        discriminator='0000'B;
-  bcc,        discriminator='0001'B;
-  cc,         discriminator='0011'B;
-  gttp,       discriminator='0100'B;
-  mm,         discriminator='0101'B;
-  rrm,        discriminator='0110'B;
-  gprs_mm,    discriminator='1000'B;
-  sms,        discriminator='1001'B;
-  gprs_sm,    discriminator='1010'B;
-  ss,         discriminator='1011'B;
-  loc,        discriminator='1100'B;
-  reserved, { discriminator='0010'B,
-  discriminator='0111'B,
-  discriminator='1101'B,
-  discriminator='1110'B,
-  discriminator='1111'B }
-  )";
-  variant (tiOrSkip)"CROSSTAG(
-  skipIndicator,    { discriminator='0000'B,
-  discriminator='0001'B,
-  discriminator='0010'B,
-  discriminator='0100'B,
-  discriminator='0101'B,
-  discriminator='0110'B,
-  discriminator='0111'B,
-  discriminator='1000'B,
-  discriminator='1100'B,
-  discriminator='1101'B,
-  discriminator='1110'B,
-  discriminator='1111'B };
-  transactionId,    { discriminator='0011'B,
-  discriminator='1011'B,
-  discriminator='1001'B,
-  discriminator='1010'B }
-  )";
-};
-
-
-type union L3_Discr_MS_SGSN
-{
-  octetstring        gcc,      //group call control
-  octetstring        bcc,      // broadcast call control
-  octetstring        cc,       // call control; call related SS messages PDU_DTAP_CC_MS_MSC
-  octetstring        gttp,     // GPRS Transparent Transport Protocol
-  octetstring        mm,       // mobility management messages PDU_DTAP_MM
-  octetstring        rrm,      // radio resource management messages PDU_DTAP_RRM
-  L3_GMM_MS_SGSN     gprs_mm,  // GPRS mobility management messages
-  octetstring        sms,      // SMS messages
-  L3_GSM_MS_SGSN     gprs_sm,  // GPRS session management messages
-  octetstring        ss,  // non call related SS messages
-  octetstring        loc, // Location services
-  octetstring        reserved
-};
-
-
-type record PDU_L3_MS_SGSN
-{
-  BIT4               discriminator,
-  TiOrSkip           tiOrSkip,
-  L3_Discr_MS_SGSN   msgs
-} with { variant (msgs)"CROSSTAG(
-  gcc,        discriminator='0000'B;
-  bcc,        discriminator='0001'B;
-  cc,         discriminator='0011'B;
-  gttp,       discriminator='0100'B;
-  mm,         discriminator='0101'B;
-  rrm,        discriminator='0110'B;
-  gprs_mm,    discriminator='1000'B;
-  sms,        discriminator='1001'B;
-  gprs_sm,    discriminator='1010'B;
-  ss,         discriminator='1011'B;
-  loc,        discriminator='1100'B;
-  reserved, { discriminator='0010'B,
-  discriminator='0111'B,
-  discriminator='1101'B,
-  discriminator='1110'B,
-  discriminator='1111'B }
-  )";
-  variant (tiOrSkip)"CROSSTAG(
-  skipIndicator,    { discriminator='0000'B,
-  discriminator='0001'B,
-  discriminator='0010'B,
-  discriminator='0100'B,
-  discriminator='0101'B,
-  discriminator='0110'B,
-  discriminator='0111'B,
-  discriminator='1000'B,
-  discriminator='1100'B,
-  discriminator='1101'B,
-  discriminator='1110'B,
-  discriminator='1111'B };
-  transactionId,    { discriminator='0011'B,
-  discriminator='1001'B,
-  discriminator='1011'B,
-  discriminator='1010'B }
-  )";
-};
-
-
-//***************************************************************************
-//  24.007/11.2.3.1.1 and 24.008/10.2 Protocol Discriminator    NW->MS
-//***************************************************************************
-type union ML3_Discr_NW_MS
-{
-  octetstring        gcc,      // group call control                      <- 24.068  WITHDRAWN
-  octetstring        bcc,      // broadcast call control                  <- 24.069 WITHDRAWN
-  PDU_ML3_CC_NW_MS   cc,       // call control; call related SS messages  <-24.008, implemented
-  octetstring        gttp,     // GPRS Transparent Transport Protocol <- not required in MSC
-  PDU_ML3_MM         mm,       // mobility management messages        <- 24.008,
-  PDU_RRM_NW_MS      rrm,      // radio resource management messages  <- 24.008, 24.018
-  octetstring        gprs_mm,  // GPRS mobility management messages   <- Not required in MSC
-  // but implemented as L3_GMM_SGSN_MS in L3_Types (SGSN)
-  L3_SMS_SGSN_MS     sms,      // SMS messages
-  //<-24.011, imported from L3_SMS_Types
-  octetstring        gprs_sm,  // GPRS session management messages    <- not required in MSC
-  // but impl. as L3_GMM_MS_SGSN in L3_GSM_SGSN_MS_Types
-  octetstring  ss,       // non call related SS messages
-  //<- 24.080 ASN1 or implemented by ethgbh
-  octetstring        loc,      // Location services(LCS)              <- 24.030
-  octetstring        reserved
-};
-
-
-// ref: 24.007/11.2.3.1.1 "Protocol discriminator" and
-// Table 11.2 "Protocol dicriminator values"
-type record PDU_ML3_NW_MS
-{
-  BIT4             discriminator, //24.008/10.2
-  TiOrSkip         tiOrSkip,      //24.008/10.3
-  ML3_Discr_NW_MS  msgs
-} with { variant (msgs)"CROSSTAG(
-  gcc,        discriminator='0000'B;
-  bcc,        discriminator='0001'B;
-  cc,         discriminator='0011'B;
-  gttp,       discriminator='0100'B;
-  mm,         discriminator='0101'B;
-  rrm,        discriminator='0110'B;
-  gprs_mm,    discriminator='1000'B;
-  sms,        discriminator='1001'B;
-  gprs_sm,    discriminator='1010'B;
-  ss,         discriminator='1011'B;
-  loc,        discriminator='1100'B;
-  reserved, { discriminator='0010'B,
-              discriminator='0111'B,
-              discriminator='1101'B,
-              discriminator='1110'B,
-              discriminator='1111'B }
-  )";
-  variant (tiOrSkip)"CROSSTAG(
-  skipIndicator,    { discriminator='0000'B,
-                      discriminator='0001'B,
-                      discriminator='0010'B,
-                      discriminator='0100'B,
-                      discriminator='0101'B,
-                      discriminator='0110'B,
-                      discriminator='0111'B,
-                      discriminator='1000'B,
-                      discriminator='1100'B,
-                      discriminator='1101'B,
-                      discriminator='1110'B,
-                      discriminator='1111'B };
-  transactionId,    { discriminator='0011'B,
-                      discriminator='1001'B,
-                      discriminator='1011'B,
-                      discriminator='1010'B }
-  )";
-};
-
-
-type union ML3_Discr_MS_NW
-{
-  octetstring        gcc,      //group call control
-  octetstring        bcc,      // broadcast call control
-  PDU_ML3_CC_MS_NW   cc,       // call control; call related SS messages
-  octetstring        gttp,     // GPRS Transparent Transport Protocol
-  PDU_ML3_MM         mm,       // mobility management messages
-  PDU_RRM_MS_NW      rrm,      // radio resource management messages
-  octetstring        gprs_mm,  // GPRS mobility management messages
-  L3_SMS_MS_SGSN     sms,      // SMS messages
-  octetstring        gprs_sm,  // GPRS session management messages
-  octetstring        ss,  // non call related SS messages
-  octetstring        loc, // Location services
-  octetstring        reserved
-};
-
-type record PDU_ML3_MS_NW
-{
-  BIT4                discriminator,
-  TiOrSkip            tiOrSkip,
-  ML3_Discr_MS_NW     msgs
-} with { variant (msgs)"CROSSTAG(
-  gcc,        discriminator='0000'B;
-  bcc,        discriminator='0001'B;
-  cc,         discriminator='0011'B;
-  gttp,       discriminator='0100'B;
-  mm,         discriminator='0101'B;
-  rrm,        discriminator='0110'B;
-  gprs_mm,    discriminator='1000'B;
-  sms,        discriminator='1001'B;
-  gprs_sm,    discriminator='1010'B;
-  ss,         discriminator='1011'B;
-  loc,        discriminator='1100'B;
-  reserved, { discriminator='0010'B,
-              discriminator='0111'B,
-              discriminator='1101'B,
-              discriminator='1110'B,
-              discriminator='1111'B }
-  )";
-  variant (tiOrSkip)"CROSSTAG(
-  skipIndicator,    { discriminator='0000'B,
-                      discriminator='0001'B,
-                      discriminator='0010'B,
-                      discriminator='0100'B,
-                      discriminator='0101'B,
-                      discriminator='0110'B,
-                      discriminator='0111'B,
-                      discriminator='1000'B,
-                      discriminator='1100'B,
-                      discriminator='1101'B,
-                      discriminator='1110'B,
-                      discriminator='1111'B };
-  transactionId,    { discriminator='0011'B,    //24.008/10.3.2
-                      discriminator='1001'B,
-                      discriminator='1011'B,
-                      discriminator='1010'B }   //24.008/10.3.2
-  )";
-};
-
-}//end of module
-with {
-extension "version R1B"
-encode "RAW"
-}
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_v13.4.0_ProtocolModule.grp b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_v13.4.0_ProtocolModule.grp
deleted file mode 100644
index 6e2062c..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_v13.4.0_ProtocolModule.grp
+++ /dev/null
@@ -1,38 +0,0 @@
-<!--
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               MobileL3_v13.4.0_ProtocolModule.grp
-//  Description:        MobileL3_v13.4.0 Protocol Module group file
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//
--->
-
-<!DOCTYPE TITAN_GUI_FileGroup_file>
-<File_Group name="MobileL3_v13.4.0_ProtocolModule" >
-    <File path="MobileL3_CC_Types.ttcn" />
-    <File path="MobileL3_CommonIE_Types.ttcn" />
-    <File path="MobileL3_GMM_SM_Types.ttcn" />   
-    <File path="MobileL3_MM_Types.ttcn" />     
-    <File path="MobileL3_RRM_Types.ttcn" />    
-    <File path="MobileL3_SMS_Types.ttcn" />
-    <File path="MobileL3_SS_Types.ttcn" />
-    <File path="MobileL3_Types.ttcn" />   
-    <File path="SS_DataTypes.asn" />     
-    <File path="SS_EncDec.cc" />
-    <File path="SS_Errors.asn" />
-    <File path="SS_Operations.asn" />
-    <File path="SS_PDU_Defs.asn" />   
-    <File path="SS_Protocol.asn" />     
-    <File path="SS_Types.ttcn" />         
-</File_Group> 
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_DataTypes.asn b/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_DataTypes.asn
deleted file mode 100644
index e05ced2..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_DataTypes.asn
+++ /dev/null
@@ -1,502 +0,0 @@
---/////////////////////////////////////////////////////////////////////////////
---                                                                           //
--- Copyright Test Competence Center (TCC) ETH 2016                           //
---                                                                           //
--- 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) has been supplied.          //
---                                                                           //
---/////////////////////////////////////////////////////////////////////////////
---
---  File:               SS_DataTypes.asn
---  Rev:                R1B
---  Prodnr:             CNL 113 832
---  Contact:            http://ttcn.ericsson.se
---  Reference:          3GPP TS 24.080 v13.0.0
-
-SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3)
-   ss-DataTypes (2) version12 (12)}
-
-DEFINITIONS
-
-IMPLICIT TAGS ::=
-
-BEGIN
-
--- exports all data types defined in this module
-
-IMPORTS
-
-SS-Code
-FROM MAP-SS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-SS-Code (15) version12 (12)}
-
--- imports MAP-SS-DataTypes
-SS-Status, USSD-DataCodingScheme, USSD-String, CCBS-Feature
--- USSD-DataCodingScheme, USSD-String were introduced because of CNAP.
-FROM MAP-SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-SS-DataTypes (14) version12 (12)}
-
-GSN-Address,
-CUG-Index,
-NotificationToMSUser
-FROM MAP-MS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-MS-DataTypes (11) version12 (12)}
-
-maxSignalInfoLength,
-ISDN-AddressString,
-ISDN-SubaddressString,
-AlertingPattern,
-LCSClientExternalID,
-AddressString,
-LCSServiceTypeID,
-AgeOfLocationInformation
-FROM MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-CommonDataTypes (18) version12 (12)}
-
-LocationType,
-DeferredLocationEventType,
-LCSClientName,
-LCS-QoS,
-Horizontal-Accuracy,
-ResponseTime,
-Ext-GeographicalInformation, 
-VelocityEstimate,
-SupportedGADShapes,
-Add-GeographicalInformation,
-LCSRequestorID,
-LCS-ReferenceNumber,
-LCSCodeword,
-AreaEventInfo,
-ReportingPLMNList,
-PeriodicLDRInfo,
-SequenceNumber
-
-FROM MAP-LCS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-LCS-DataTypes (25) version12 (12)}
-
-;
-
--- data types definition
-
-SS-UserData ::= IA5String (SIZE (1.. maxSignalInfoLength))
-
-NotifySS-Arg ::= SEQUENCE{
-	ss-Code						[1]		SS-Code OPTIONAL,
-	ss-Status					[4]		SS-Status OPTIONAL,
-	ss-Notification				[5]		SS-Notification OPTIONAL,
-	callIsWaiting-Indicator		[14]	NULL OPTIONAL,
-	callOnHold-Indicator		[15]	CallOnHold-Indicator OPTIONAL,
-	mpty-Indicator				[16]	NULL OPTIONAL,
-	cug-Index					[17]	CUG-Index OPTIONAL,
-	clirSuppressionRejected		[18]	NULL OPTIONAL,
-	... ,
-	ect-Indicator				[19]	ECT-Indicator OPTIONAL,
-	nameIndicator				[20]	NameIndicator OPTIONAL,
-	ccbs-Feature				[21]	CCBS-Feature OPTIONAL,
-	alertingPattern				[22]	AlertingPattern OPTIONAL,
-	multicall-Indicator			[23]	Multicall-Indicator OPTIONAL}
-
---  The nameIndicator is defined because of CNAP.
-
-Multicall-Indicator	::= ENUMERATED {
-		nbr-SNexceeded (0),
-		nbr-Userexceeded (1)}
-
-ForwardChargeAdviceArg ::= SEQUENCE{
-	ss-Code						[0]		SS-Code,
-	chargingInformation			[1]		ChargingInformation,
-	...}
-
-SS-Notification ::= OCTET STRING (SIZE (1))
-
---	  Bit 8 7 6 5 4	00000 (Unused)
-
---	Bit 3	Call is forwarded indication to A-subscriber
---		(calling subscriber)
---	0	No information content
---	1	Outgoing call has been forwarded to C
-
---	Bit 2	Call is forwarded indication to B-subscriber
---		(forwarding subscriber)
---	0	No information content
---	1	Incoming call has been forwarded to C
-
---	Bit 1	Call is forwarded indication to C-subscriber
---		(forwarded-to subscriber)
---	0	No information content
---	1	Incoming call is a forwarded call
-
-ChargingInformation ::= SEQUENCE{
-	e1	[1] E1 OPTIONAL,
-	e2	[2] E2 OPTIONAL,
-	e3	[3] E3 OPTIONAL,
-	e4	[4] E4 OPTIONAL,
-	e5	[5] E5 OPTIONAL,
-	e6	[6] E6 OPTIONAL,
-	e7	[7] E7 OPTIONAL,
-	...}
-
-E1 ::= INTEGER (0..max10TimesUnitsPerTime)
-max10TimesUnitsPerTime INTEGER ::= 8191
-
-E2 ::= INTEGER (0..max10TimesTimeInterval)
-max10TimesTimeInterval INTEGER ::= 8191
-
-E3 ::= INTEGER (0..max100TimesScalingFactor)
-max100TimesScalingFactor INTEGER ::= 8191
-
-E4 ::= INTEGER (0..max10TimesIncrement)
-max10TimesIncrement INTEGER ::= 8191
-
-E5 ::= INTEGER (0..max10TimesIncrementPerDataInterval)
-max10TimesIncrementPerDataInterval INTEGER ::= 8191
-
-E6 ::= INTEGER (0..maxNumberOfSegmentsPerDataInterval)
-maxNumberOfSegmentsPerDataInterval INTEGER ::= 8191
-
-E7 ::= INTEGER (0..max10TimesInitialTime)
-max10TimesInitialTime INTEGER ::= 8191
-
-CallOnHold-Indicator	::= ENUMERATED {
-			callRetrieved (0),
-			callOnHold (1)}
-
-ForwardCUG-InfoArg ::= SEQUENCE {
-	cug-Index			[0]	CUG-Index OPTIONAL,
-	suppressPrefCUG		[1]	NULL OPTIONAL,
-	suppressOA			[2]	NULL OPTIONAL,
-	...}
-
-ECT-Indicator	::= SEQUENCE {
-	ect-CallState		[0]	ECT-CallState,
-	rdn	[1]	RDN OPTIONAL,
-	...}
-
-ECT-CallState	::= ENUMERATED {
-		alerting (0),
-		active (1)}
-
-	NameIndicator ::= SEQUENCE {
-		callingName		[0] Name OPTIONAL,
-		...}
-
-	Name ::= CHOICE {
-		namePresentationAllowed		[0] NameSet,
-		presentationRestricted		[1] NULL,
-		nameUnavailable				[2] NULL,
-		namePresentationRestricted	[3] NameSet}
-
-	NameSet ::= SEQUENCE {
-		dataCodingScheme 		[0] USSD-DataCodingScheme,
-		lengthInCharacters 		[1] INTEGER,
-		nameString				[2] USSD-String,
-		...}
-
--- NameIndicator, Name and NameSet are defined because of CNAP.
--- The USSD-DataCodingScheme shall indicate use of the default alphabet through the
--- following encoding:
---    bit  7   6   5   4   3   2   1   0
---       | 0   0   0   0 | 1   1   1   1|
-
-RDN	::= CHOICE {
-	presentationAllowedAddress				[0]	RemotePartyNumber,
-	presentationRestricted					[1]	NULL,
-	numberNotAvailableDueToInterworking		[2]	NULL,
-	presentationRestrictedAddress			[3]	RemotePartyNumber}
-
-RemotePartyNumber	::= SEQUENCE {
-	partyNumber				[0]	ISDN-AddressString,
-	partyNumberSubaddress	[1]	ISDN-SubaddressString OPTIONAL,
-	...}
-
-AccessRegisterCCEntryArg	::= SEQUENCE {
-	...}
-
-CallDeflectionArg	::= SEQUENCE {
-	deflectedToNumber		[0]	AddressString,
-	deflectedToSubaddress	[1]	ISDN-SubaddressString OPTIONAL,
-	...}
-
-UserUserServiceArg ::= SEQUENCE {
-	uUS-Service		[0]	UUS-Service,
-	uUS-Required	[1]	BOOLEAN,
-	... }
-
-UUS-Service ::= ENUMERATED {
-	uUS1 (1),
-	uUS2 (2),
-	uUS3 (3),
-	... }
-
--- exception handling:
--- In case of UUS-Service with any other value, indicated as "UUS required",
--- but not understood by the MS, the call will be cleared.
-
-LocationNotificationArg	::= SEQUENCE {
-	notificationType	[0]	NotificationToMSUser,
-	locationType		[1]	LocationType,
-	lcsClientExternalID	[2] LCSClientExternalID		OPTIONAL,
-	lcsClientName		[3]	LCSClientName			OPTIONAL,
-	... ,
-	lcsRequestorID		[4] LCSRequestorID			OPTIONAL,
-	lcsCodeword			[5]	LCSCodeword				OPTIONAL,
-	lcsServiceTypeID	[6]	LCSServiceTypeID		OPTIONAL }
-	
--- The notificationType may only be set to notifyLocationAllowed, 
--- notifyAndVerify-LocationAllowedIfNoResponse, 
--- or notifyAndVerify-LocationNotAllowedIfNoResponse.
--- The locationEstimateType field of the locationType may only be set to 
--- currentLocation, currentOrLastKnownLocation, 
--- notificationVerificationOnly, or activateDeferredLocation.
--- The deferredLocationEventType field of the locationType may only be set to 
--- enteringIntoArea, and/or leavingFromArea, and/or beingInsideArea, 
--- and/or periodicLDR.
--- For LCS location notification of MT-LR for current location, the 
--- locationEstimateType field of the locationType shall be set to currentLocation.
--- For LCS location notification of MT-LR for current or last known location, the 
--- locationEstimateType field of the locationType shall be set to currentOrLastKnownLocation.
--- For the LCS location notification for the LDR of MS available event, 
--- the locationEstimateType field of the locationType shall be set to currentLocation.
--- For LCS location notification for the LDR of change of area event, 
--- the locationEstimateType field of the locationType shall be set to
--- activateDeferredLocation, and the deferredLocationEventType shall be 
--- set to enteringIntoArea, and/or leavingFromArea, and/or beingInsideArea.
--- For the post positioning LCS location notification, the locationEstimateType 
--- field of the locationType shall be set to notificationVerificationOnly.
--- For LCS location notification for the LDR of periodic location event, 
--- the locationEstimateType field of the locationType shall be set to
--- activateDeferredLocation, and the 
--- deferredLocationEventType shall be set to periodicLDR.
-
--- exception handling:
--- At reception of an unrecognised notificationType value the receiver shall reject the 
--- operation with a return error cause of unexpected data value.
--- At reception of an unrecognised locationType value the receiver shall reject the
--- operation with a return error cause of unexpected data value.
--- At reception of an unallowed notificationType value the receiver shall either ignore the
--- received operation or reject the operation with a return error cause of unexpected 
--- data value.
--- At reception of an unallowed locationType value the receiver shall either ignore the
--- received operation or reject the operation with a return error cause of unexpected 
--- data value.
-
-
-
-LocationNotificationRes	::= SEQUENCE {
-	verificationResponse		[0]	VerificationResponse OPTIONAL,
-	...}
-
-VerificationResponse::= ENUMERATED {
-	permissionDenied	(0),
-	permissionGranted	(1),
-	... }
-
--- exception handling:
--- an unrecognized value shall be treated the same as value 0 (permissionDenied)
-
-LCS-MOLRArg	::= SEQUENCE {
-	molr-Type			[0]	MOLR-Type,
-	locationMethod		[1]	LocationMethod			OPTIONAL,
-	lcs-QoS				[2]	LCS-QoS					OPTIONAL,
-	lcsClientExternalID	[3] LCSClientExternalID		OPTIONAL,
-	mlc-Number			[4]	ISDN-AddressString		OPTIONAL,
-	gpsAssistanceData	[5]	GPSAssistanceData		OPTIONAL,
-	...,
-	supportedGADShapes	[6]	SupportedGADShapes		OPTIONAL,
-	lcsServiceTypeID	[7]	LCSServiceTypeID		OPTIONAL,
-	ageOfLocationInfo	[8]	AgeOfLocationInformation	OPTIONAL,
-	locationType		[9]	LocationType			OPTIONAL,
-	pseudonymIndicator	[10]	NULL					OPTIONAL,
-	h-gmlc-address 		[11] GSN-Address			OPTIONAL,
-	locationEstimate	[12] Ext-GeographicalInformation		OPTIONAL,
-	velocityEstimate	[13] VelocityEstimate		OPTIONAL,
-	referenceNumber 	[14] LCS-ReferenceNumber 	OPTIONAL,
-	periodicLDRInfo		[15] PeriodicLDRInfo		OPTIONAL,
-	locationUpdateRequest	[16]	NULL				OPTIONAL,
-	sequenceNumber 		[17] SequenceNumber 		OPTIONAL,
-	terminationCause 	[18] TerminationCause 		OPTIONAL,
-	mo-lrShortCircuit	[19]	NULL				OPTIONAL,
-	ganssAssistanceData	[20] GANSSAssistanceData	OPTIONAL,
-	multiplePositioningProtocolPDUs	[21] MultiplePositioningProtocolPDUs	OPTIONAL }
--- The parameter locationMethod shall be included if and only if the molr-Type is set to value 
--- deCipheringKeys or assistanceData.
--- The parameter gpsAssistanceData shall be included if and only if the molr-Type is set to value 
--- assistanceData and locationMethod is set to value assistedGPS or assistedGPSandGANSS.
--- The parameter ganssAssistanceData shall be included if and only if the molr-Type is set to value 
--- assistanceData and locationMethod is set to value assistedGANSS or assistedGPSandGANSS.
--- supportedGADShapes shall not be included for deferred MO-LR initiation or deferred MO-LR or MT-LR
--- responses 
--- multiplePositioningProtocolPDUs may only be included for E-UTRAN access.
--- locationMethod shall not be included for E-UTRAN access.
--- gpsAssistanceData shall not be included for E-UTRAN access.
--- h-gmlc-address shall not be included for E-UTRAN access.
--- locationEstimate shall not be included for E-UTRAN access.
--- velocityEstimate shall not be included for E-UTRAN access.
--- referenceNumber shall not be included for E-UTRAN access.
--- periodicLDRInfo shall not be included for E-UTRAN access.
--- locationUpdateRequest shall not be included for E-UTRAN access.
--- sequenceNumber shall not be included for E-UTRAN access.
--- terminationCause shall not be included for E-UTRAN access.
--- mo-lrShortCircuit shall not be included for E-UTRAN access.
--- ganssAssistanceData shall not be included for E-UTRAN access.
-
-
-
-MOLR-Type::= ENUMERATED {
-	locationEstimate			(0),
-	assistanceData				(1),
-	deCipheringKeys				(2),
-	... ,
-	deferredMo-lrTTTPInitiation	(3),
-	deferredMo-lrSelfLocationInitiation (4),
-	deferredMt-lrOrmo-lrTTTPLocationEstimate (5),
-	deferredMt-lrOrmo-lrCancellation (6)}
--- exception handling:
--- an unrecognized value shall be rejected by the receiver with a return error cause of
--- unexpected data value.
--- For E-UTRAN access, only locationEstimate or assistanceData shall be included
-
-LocationMethod::= ENUMERATED {
-	msBasedEOTD			(0),
-	msAssistedEOTD		(1),
-	assistedGPS			(2),
-	...,
-	msBasedOTDOA		(3),
-	assistedGANSS		(4),
-	assistedGPSandGANSS (5)
-	}
--- exception handling:
--- When this parameter is received with value msBasedEOTD or msAssistedEOTD and the MS 
--- is camped on an UMTS Service Area then the receiver shall reject it 
--- with a return error cause of unexpected data value.
--- When this parameter is received with value msBasedOTDOA and the MS 
--- is camped on a GSM Cell then the receiver shall reject it with a return error cause of
--- unexpected data value.
--- an unrecognized value shall be rejected by the receiver with a return error cause of
--- unexpected data value.
-
-GPSAssistanceData::= OCTET STRING (SIZE (1..38))
--- Octets 1 to 38 are coded in the same way as the octets 3 to 7+2n of Requested GPS Data IE
--- in 3GPP TS 49.031 [14].
-
-GANSSAssistanceData::= OCTET STRING (SIZE (1..40))
--- Octets 1 to 40 are coded in the same way as the octets 3 to 9+2n of Requested GANSS Data IE
--- in 3GPP TS 49.031 [14] .
-
-TerminationCause ::= ENUMERATED {
-	subscriberTermination  (0),
-	uETermination     (1),
-	...} 
-	
-MultiplePositioningProtocolPDUs ::= SEQUENCE (SIZE (1..maxNumLPPMsg)) OF PositioningProtocolPDU
-
-PositioningProtocolPDU ::= OCTET STRING
--- PositioningProtocolPDU contains a LPP message defined in 3GPP TS 36.355 [17].
-
-maxNumLPPMsg INTEGER ::= 3
-
-
-
-LCS-MOLRRes::= SEQUENCE {
-	locationEstimate		[0]	Ext-GeographicalInformation		OPTIONAL,
-	decipheringKeys			[1] DecipheringKeys					OPTIONAL,
-	...,
-	add-LocationEstimate	[2]	Add-GeographicalInformation 		OPTIONAL,
-	velocityEstimate		[3] VelocityEstimate		OPTIONAL,
-	referenceNumber 		[4] LCS-ReferenceNumber 	OPTIONAL,
-	h-gmlc-address			[5]	GSN-Address				OPTIONAL,
-	mo-lrShortCircuit		[6]	NULL					OPTIONAL,
-	reportingPLMNList		[7]	ReportingPLMNList		OPTIONAL
-	 }
--- Parameters locationEstimate or add-LocationEstimate (one but not both) 
--- shall be included if and only if the 
--- molr-Type in LocationRequestArg was set to value locationEstimate.
--- Parameter add-LocationEstimate shall not be included if the supportedGADShapes 
--- parameter was not received in the LCS-MOLRArg.
--- The locationEstimate and the add-locationEstimate parameters shall not be sent if
--- the supportedGADShapes parameter has been received in LCS-MOLRArg
--- and the shape encoded in locationEstimate or add-LocationEstimate is not marked
--- as supported in supportedGADShapes. In such a case LCS-MOLRArg
--- shall be rejected with error FacilityNotSupported with additional indication
--- shapeOfLocationEstimateNotSupported.
--- Parameter decipheringKeys shall be included if and only if the molr-Type
--- in LocationRequestArg was set to value deCipheringKeys.
--- Parameter velocityEstimate may only be included if the lcs-QoS in LCS-MOLRarg includes
--- velocityRequest
--- decipheringKeys shall not be included for E-UTRAN access.
--- referenceNumber shall not be included for E-UTRAN access.
--- h-gmlc-address shall not be included for E-UTRAN access.
--- mo-lrShortCircuit shall not be included for E-UTRAN access.
--- reportingPLMNList shall not be included for E-UTRAN access.
-
-
-
-DecipheringKeys::= OCTET STRING (SIZE (15))
--- Octets in DecipheringKeys are coded in the same way as the octets 3 to 17 of Deciphering Key IE
--- in 3GPP TS 49.031 [14]. I.e. these octets contain Current Deciphering Key, Next Deciphering Key and 
--- Ciphering Key Flag.
-LCS-AreaEventRequestArg	::= SEQUENCE {
-	referenceNumber				[0]	LCS-ReferenceNumber,
-	h-gmlc-address				[1]	GSN-Address,
-	deferredLocationEventType	[3] DeferredLocationEventType,
-	areaEventInfo				[4]	AreaEventInfo,
-	... }
-
--- the msAvailableValue in the DeferredLocationEventType is not applicable for this procedure 
-
-LCS-AreaEventReportArg	::= SEQUENCE {
-	referenceNumber				[0]	LCS-ReferenceNumber,
-	h-gmlc-address				[1]	GSN-Address,
-	... }
-
-LCS-AreaEventCancellationArg	::= SEQUENCE {
-	referenceNumber				[0]	LCS-ReferenceNumber,
-	h-gmlc-address				[1]	GSN-Address,
-	... }
-
-
-LCS-PeriodicLocationRequestArg	::= SEQUENCE {
-	referenceNumber		[0] LCS-ReferenceNumber,
-	periodicLDRInfo		[1]	PeriodicLDRInfo,
-	lcsClientExternalID	[2] LCSClientExternalID,
-	qoS					[3] LCS-QoS					OPTIONAL,
-	h-gmlc-address		[4]	GSN-Address				OPTIONAL,
-	mo-lrShortCircuit	[5]	NULL					OPTIONAL,
-	reportingPLMNList	[6]	ReportingPLMNList		OPTIONAL,
-	... }
-
-
-LCS-PeriodicLocationRequestRes	::= SEQUENCE {
-	mo-lrShortCircuit	[0]	NULL					OPTIONAL,
-	... }
-
-
-LCS-LocationUpdateArg	::= SEQUENCE {
-	referenceNumber		[0] LCS-ReferenceNumber		OPTIONAL,
-	add-LocationEstimate[1] Add-GeographicalInformation 		OPTIONAL,
-	velocityEstimate	[2] VelocityEstimate		OPTIONAL,
-	sequenceNumber		[3]	SequenceNumber			OPTIONAL,
-	... }
--- add-LocationEstimate shall be included if and only if a location estimate was successfully
--- transferred towards an External LCS Client or was successfully obtained for UE self location
--- velocityEstimate may only be included if add-LocationEstimate is included
-
-LCS-LocationUpdateRes	::= SEQUENCE {
-	terminationCause 	[0] TerminationCause 		OPTIONAL,
-	... }
-
-LCS-PeriodicLocationCancellationArg	::= SEQUENCE {
-	referenceNumber		[0] LCS-ReferenceNumber,
-	h-gmlc-address		[1]	GSN-Address				OPTIONAL,
-	... }
-
-
-END
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_EncDec.cc b/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_EncDec.cc
deleted file mode 100644
index ee4867a..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_EncDec.cc
+++ /dev/null
@@ -1,438 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               SS_PDU_Defs.asn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.008 v13.4.0
-
-#include "SS_PDU_Defs.hh"
-#include "SS_Types.hh"
-
-namespace SS__Types
-{
-using namespace SS__PDU__Defs;
-TTCN_Module SS__EncDec("SS_EncDec", __DATE__, __TIME__);
-
-//Type definitions to transfer data between coding functions
-struct SS_Invoke_for_dec
-{
-  INTEGER               invokeId;
-  OPTIONAL<INTEGER>     linkedId;
-  Remote__Operations__Information__Objects::Code opcode;
-  OPTIONAL<OCTETSTRING> stream;
-};
-
-struct SS_ReturnResult_for_dec
-{
-  INTEGER               invokeId;
-  OPTIONAL<Remote__Operations__Information__Objects::Code> opcode;
-  OPTIONAL<OCTETSTRING> stream;
-};
-
-struct SS_ReturnError_for_dec
-{
-  INTEGER               invokeId;
-  Remote__Operations__Information__Objects::Code errorCode;
-  OPTIONAL<OCTETSTRING> stream;
-};
-
-struct SS_Reject_for_dec
-{
-  OPTIONAL<INTEGER>     invokeId;
-  Remote__Operations__Generic__ROS__PDUs::ProblemType problem;
-};
-
-
-//////////////////////////////////
-// Encoding function for SS__Invoke
-//////////////////////////////////
-OCTETSTRING enc_SS_Invoke(const SS__Invoke& pdu)
-{
-  TTCN_Buffer buf;
-
-  OCTETSTRING ret_val;
-  pdu.encode(SS__Invoke_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER);
-  buf.get_string(ret_val);
-  ret_val[0] = int2oct(161,1);
-
-  return ret_val;
-}
-//////////////////////////////////
-// Encoding function for SS__ReturnResult
-//////////////////////////////////
-OCTETSTRING enc_SS_ReturnResult(const SS__ReturnResult& pdu)
-{
-  TTCN_Buffer buf;
-
-  OCTETSTRING ret_val;
-  pdu.encode(SS__ReturnResult_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER);
-  buf.get_string(ret_val);
-  ret_val[0] = int2oct(162,1);
-
-  return ret_val;
-}
-//////////////////////////////////
-// Encoding function for SS__ReturnError
-//////////////////////////////////
-OCTETSTRING enc_SS_ReturnError(const SS__ReturnError& pdu)
-{
-  TTCN_Buffer buf;
-
-  OCTETSTRING ret_val;
-  pdu.encode(SS__ReturnError_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER);
-  buf.get_string(ret_val);
-  ret_val[0] = int2oct(163,1);
-
-  return ret_val;
-}
-//////////////////////////////////
-// Encoding function for SS__Reject
-//////////////////////////////////
-OCTETSTRING enc_SS_Reject(const SS__Reject& pdu)
-{
-  TTCN_Buffer buf;
-
-  OCTETSTRING ret_val;
-  pdu.encode(SS__Reject_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER);
-  buf.get_string(ret_val);
-  ret_val[0] = int2oct(164,1);
-
-  return ret_val;
-}
-
-//////////////////////////////////
-// Decoding function for SS__Invoke
-//////////////////////////////////
-int dec_SS_Invoke(const SS_Invoke_for_dec& params, SS__Invoke& pdu)
-{  
-  SS__Invoke__help help_pdu;
-  
-  if(params.stream.ispresent())
-  {
-    help_pdu.invokeId().present__() = params.invokeId;
-    if(params.linkedId.ispresent())
-      help_pdu.linkedId()().present__().present__() = params.linkedId;
-    else
-      help_pdu.linkedId() = OMIT_VALUE;
-
-    help_pdu.opcode() = params.opcode;
-
-    OCTETSTRING oct_stream = params.stream;
-    help_pdu.argument() = oct_stream;
-    TTCN_Buffer buf;
-    help_pdu.encode(SS__Invoke__help_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER);  
-    
-	  TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_IGNORE);

-	  TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING);

-	  TTCN_EncDec::clear_error();

-    
-    pdu.decode(SS__Invoke_descr_, buf, TTCN_EncDec::CT_BER, BER_ACCEPT_ALL);
-    
-    TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_DEFAULT);
-    
-    if(TTCN_EncDec::get_last_error_type() != 0) return 1;
-  }
-  else
-  {
-    pdu.invokeId().present__() = params.invokeId;
-
-    if(params.linkedId.ispresent())
-      pdu.linkedId()().present__().present__() = params.linkedId;
-    else
-      pdu.linkedId() = OMIT_VALUE;
-
-    pdu.opcode() = params.opcode;
-
-    pdu.argument() = OMIT_VALUE;
-  }
-
-  return 0;
-}
-
-//////////////////////////////////
-// Decoding function for SS__ReturnResult
-//////////////////////////////////
-int dec_SS_ReturnResult(const SS_ReturnResult_for_dec& params, SS__ReturnResult& pdu)
-{  
-  SS__ReturnResult__help help_pdu;
-
-
-  if(params.opcode.ispresent() && params.stream.ispresent())
-  {
-    help_pdu.invokeId().present__() = params.invokeId;
-    help_pdu.result()().opcode() = params.opcode;
-    OCTETSTRING oct_stream = params.stream;
-    help_pdu.result()().result() = oct_stream;
-    TTCN_Buffer buf;
-    help_pdu.encode(SS__ReturnResult__help_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER);  
-    
-	  TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_IGNORE);

-	  TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING);

-	  TTCN_EncDec::clear_error();
-	  
-	  pdu.decode(SS__ReturnResult_descr_, buf, TTCN_EncDec::CT_BER, BER_ACCEPT_ALL);
-
-    TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_DEFAULT);
-    
-    if(TTCN_EncDec::get_last_error_type() != 0) return 1;
-  }
-  else
-  {
-    pdu.invokeId().present__() = params.invokeId;
-    pdu.result() = OMIT_VALUE;
-  }
-
-  return 0;
-}
-
-//////////////////////////////////
-// Decoding function for SS__ReturnError
-//////////////////////////////////
-int dec_SS_ReturnError(const SS_ReturnError_for_dec& params, SS__ReturnError& pdu)
-{
-  
-  SS__ReturnError__help help_pdu;
-
-  if(params.stream.ispresent())
-  {
-    help_pdu.invokeId().present__() = params.invokeId;
-    help_pdu.errcode() = params.errorCode;
-    OCTETSTRING oct_stream = params.stream;
-    help_pdu.parameter()() = oct_stream;
-
-    TTCN_Buffer buf;
-
-    help_pdu.encode(SS__ReturnError__help_descr_, buf, TTCN_EncDec::CT_BER, BER_ENCODE_DER);  
-
-	  TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_IGNORE);

-	  TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING);

-	  TTCN_EncDec::clear_error();
-	  
-    pdu.decode(SS__ReturnError_descr_, buf, TTCN_EncDec::CT_BER, BER_ACCEPT_ALL);
-
-    TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_DEFAULT);
-    
-    if(TTCN_EncDec::get_last_error_type() != 0) return 1;
-  }
-  else
-  {
-    pdu.invokeId().present__() = params.invokeId;
-    pdu.errcode() = params.errorCode;
-    pdu.parameter() = OMIT_VALUE;
-  }
-
-  return 0;
-}
-
-//////////////////////////////////
-// Decoding function for SS__Reject
-//////////////////////////////////
-int dec_SS_Reject(const SS_Reject_for_dec& params, SS__Reject& pdu)
-{
-  if(params.invokeId.ispresent())
-    pdu.invokeId().present__() = params.invokeId;
-  else
-    pdu.invokeId().absent() = ASN_NULL_VALUE;
-
-  pdu.problem() = params.problem;
-  
-  return 0;
-}
-
-////////////////////////////////////////////////////////////////////
-// Decoding function for internal SS_TCAP_ComponentPortion
-////////////////////////////////////////////////////////////////////
-int dec__SS__TCAP__ComponentPortion(const OCTETSTRING& stream, SS__TCAP__ComponentPortion& pdu)
-{
-  if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC))
-  {
-    TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-    TTCN_Logger::log_event_str("dec_SS_TCAP_ComponentPortion(): Stream before decoding: ");
-    stream.log();
-    TTCN_Logger::end_event();
-  }
-
-	TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_IGNORE);

-	TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_WARNING);

-	TTCN_EncDec::clear_error();

-
-  TTCN_Buffer ttcn_buffer(stream);
-  SS__TCAP__Component    ret_sub_val;
-  int i = 0;
-
-  if(!ttcn_buffer.contains_complete_TLV()) {
-    if (TTCN_Logger::log_this_event(TTCN_Logger::TTCN_WARNING))
-    {
-      TTCN_Logger::begin_event(TTCN_Logger::TTCN_WARNING);
-      TTCN_Logger::log_event_str("dec_SS_TCAP_ComponentPortion(): there is no complete TLV in the incoming stream!");
-      TTCN_Logger::end_event();
-    }
-    return 1;
-  }
-
-  while(ttcn_buffer.contains_complete_TLV())
-  {
-    ret_sub_val.decode(SS__TCAP__Component_descr_, ttcn_buffer, TTCN_EncDec::CT_BER, BER_ACCEPT_ALL);
-    pdu[i] = ret_sub_val;
-    i++;
-    ttcn_buffer.cut();
-  }
-
-	TTCN_EncDec::set_error_behavior(TTCN_EncDec::ET_ALL, TTCN_EncDec::EB_DEFAULT);
-
-  if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC))
-  {
-    TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-    TTCN_Logger::log_event_str("dec_SS_TCAP_ComponentPortion(): Decoded @SS_Types.SS_TCAP_ComponentPortion: ");
-    pdu.log();
-    TTCN_Logger::end_event();
-  }
-
-	return TTCN_EncDec::get_last_error_type() == TTCN_EncDec::ET_NONE ? 0 : 1;
-}
-
-
-//////////////////////////////////////////////////////////////////////////////////////////////////////
-// Main encoding function for SS_FacilityInformation. This is called from TTCN-3
-//////////////////////////////////////////////////////////////////////////////////////////////////////
-OCTETSTRING enc__SS__FacilityInformation(const SS__FacilityInformation& pdu)
-{
-  if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC))
-  {
-    TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-    TTCN_Logger::log_event_str("enc_SS_FacilityInformation(): SS_FacilityInformation before encoding: ");
-    pdu.log();
-    TTCN_Logger::end_event();
-  }
-  SS__TCAP__ComponentPortion temp_val;
-  OCTETSTRING ret_val(0,NULL);
-
-  for (int i = 0; i < pdu.size_of(); i++)
-  {
-    if (pdu[i].get_selection() == SS__Component::ALT_invoke)
-    {
-       ret_val = ret_val + enc_SS_Invoke(pdu[i].invoke());
-    }
-    else if (pdu[i].get_selection() == SS__Component::ALT_returnResult)
-    {
-       ret_val = ret_val + enc_SS_ReturnResult(pdu[i].returnResult());
-    }
-    else if (pdu[i].get_selection() == SS__Component::ALT_returnError)
-    {
-       ret_val = ret_val + enc_SS_ReturnError(pdu[i].returnError());
-    }
-    else if (pdu[i].get_selection() == SS__Component::ALT_reject)
-    {
-       ret_val = ret_val + enc_SS_Reject(pdu[i].reject());
-    }
-  }
-  if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC))
-  {
-    TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-    TTCN_Logger::log_event_str("enc_SS_FacilityInformation(): stream after encoding: ");
-    ret_val.log();
-    TTCN_Logger::end_event();
-  }
-  return ret_val;
-}
-
-//////////////////////////////////////////////////////////////////////////////////////////////////////
-// Main decoding function for SS_FacilityInformation. This is called from TTCN-3
-//////////////////////////////////////////////////////////////////////////////////////////////////////
-INTEGER dec__SS__FacilityInformation__backtrack(const OCTETSTRING& stream, SS__FacilityInformation& pdu)
-{
-  if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC))
-  {
-    TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-    TTCN_Logger::log_event_str("dec_SS_FacilityInformation__backtrack(): Stream before decoding: ");
-    stream.log();
-    TTCN_Logger::end_event();
-  }
-  
-  SS__TCAP__ComponentPortion temp_val;
-  int decode = dec__SS__TCAP__ComponentPortion(stream, temp_val);
-  
-  if(decode == 0) {
-
-    for (int i = 0; i < temp_val.size_of() && decode == 0; i++)
-    {
-      if (temp_val[i].get_selection() == SS__TCAP__Component::ALT_invoke)
-      {
-        SS_Invoke_for_dec par_val;
-        par_val.invokeId = temp_val[i].invoke().invokeID();
-        par_val.linkedId = temp_val[i].invoke().linkedID();
-        par_val.opcode   =   temp_val[i].invoke().operationCode();
-        par_val.stream   =   temp_val[i].invoke().parameter();
-        decode = dec_SS_Invoke(par_val, pdu[i].invoke());
-      }
-      else if (temp_val[i].get_selection() == SS__TCAP__Component::ALT_returnResult)
-      {
-        SS_ReturnResult_for_dec par_val;
-        par_val.invokeId = temp_val[i].returnResult().invokeID();
-
-        if(temp_val[i].returnResult().result().ispresent())
-        {
-          SS__TCAP__ReturnResult__Result temp_res = temp_val[i].returnResult().result();
-          par_val.opcode = temp_res.operationCode();
-          par_val.stream = temp_res.parameter();
-        }
-        else
-        {
-          par_val.opcode = OMIT_VALUE;
-          par_val.stream = OMIT_VALUE;
-        }
-        decode = dec_SS_ReturnResult(par_val, pdu[i].returnResult());
-      }
-      else if (temp_val[i].get_selection() == SS__TCAP__Component::ALT_returnError)
-      {
-        SS_ReturnError_for_dec par_val;
-        par_val.invokeId = temp_val[i].returnError().invokeID();
-        par_val.errorCode = temp_val[i].returnError().errorCode();
-        par_val.stream  =   temp_val[i].returnError().parameter();
-
-        decode = dec_SS_ReturnError(par_val, pdu[i].returnError());
-      }
-      else if (temp_val[i].get_selection() == SS__TCAP__Component::ALT_reject)
-      {
-        SS_Reject_for_dec par_val;
-        if( temp_val[i].reject().invokeID().get_selection() == SS__TCAP__Reject_invokeID::ALT_derivable)
-          par_val.invokeId = temp_val[i].reject().invokeID().derivable();
-        else
-          par_val.invokeId = OMIT_VALUE;
-        par_val.problem = temp_val[i].reject().problem();
-
-        decode = dec_SS_Reject(par_val, pdu[i].reject());
-      }
-    }
-  }
-
-  if (TTCN_Logger::log_this_event(TTCN_Logger::DEBUG_ENCDEC))
-  {
-    TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);
-    TTCN_Logger::log_event_str("dec_SS_FacilityInformation__backtrack(): Decoded @SS_Types.SS_FacilityInformation: ");
-    pdu.log();
-    TTCN_Logger::end_event();
-  }
-
-  return decode;
-}
-
-SS__FacilityInformation dec__SS__FacilityInformation(const OCTETSTRING& stream)
-{
-  SS__FacilityInformation ret;
-  dec__SS__FacilityInformation__backtrack(stream, ret);
-  return ret;
-}
-
-}//namespace
-
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Errors.asn b/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Errors.asn
deleted file mode 100644
index 85b52d3..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Errors.asn
+++ /dev/null
@@ -1,57 +0,0 @@
---/////////////////////////////////////////////////////////////////////////////
---                                                                           //
--- Copyright Test Competence Center (TCC) ETH 2016                           //
---                                                                           //
--- 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) has been supplied.          //
---                                                                           //
---/////////////////////////////////////////////////////////////////////////////
---
---  File:               SS_Errors.asn
---  Rev:                R1B
---  Prodnr:             CNL 113 832
---  Contact:            http://ttcn.ericsson.se
---  Reference:          3GPP TS 24.080 v13.0.0
-
-SS-Errors {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3)
-   ss-Errors (1) version12 (12)}
-
-DEFINITIONS ::=
-
-BEGIN
-
-IMPORTS
-
-ERROR FROM
-Remote-Operations-Information-Objects {joint-iso-itu-t remote-operations(4)
-  informationObjects(5) version1(0)};
-
--- The MAP errors
--- unknownSubscriber, bearerServiceNotProvisioned, teleserviceNotProvisioned,
--- illegalSS-Operation, ss-ErrorStatus, ss-NotAvailable, ss-SubscriptionViolation,
--- ss-Incompatibility, systemFailure, dataMissing, unexpectedDataValue, facilityNotSupported,
--- pw-RegistrationFailure, negativePW-Check, callBarred, numberOfPW-AttemptsViolation,
--- absentSubscriber, illegalSubscriber, illegalEquipment, ussd-Busy, unknownAlphabet,
--- forwardingViolation, forwardingFailed
--- are imported from MAP-Errors in SS-Protocol module.
-
--- errors definition
-resourcesNotAvailable  ERROR ::= {
-	CODE	local:127 }
-maxNumberOfMPTY-ParticipantsExceeded  ERROR ::= {
-	CODE	local:126 }
-invalidDeflectedToNumber  ERROR ::= {
-	CODE	local:125 }
-specialServiceCode  ERROR ::= {
-	CODE	local:124 }
-deflectionToServedSubscriber  ERROR ::= {
-	CODE	local:123 }
-rejectedByNetwork  ERROR ::= {
-	CODE	local:122 }
-rejectedByUser  ERROR ::= {
-	CODE	local:121 }
-
-END
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Operations.asn b/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Operations.asn
deleted file mode 100644
index cdfe1e0..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Operations.asn
+++ /dev/null
@@ -1,313 +0,0 @@
---/////////////////////////////////////////////////////////////////////////////
---                                                                           //
--- Copyright Test Competence Center (TCC) ETH 2016                           //
---                                                                           //
--- 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) has been supplied.          //
---                                                                           //
---/////////////////////////////////////////////////////////////////////////////
---
---  File:               SS_Operations.asn
---  Rev:                R1B
---  Prodnr:             CNL 113 832
---  Contact:            http://ttcn.ericsson.se
---  Reference:          3GPP TS 24.080 v13.0.0
-
-SS-Operations {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3)
-   ss-Operations (0) version12 (12)}
-
-DEFINITIONS ::=
-
-BEGIN
-
-EXPORTS
-
--- exports operations
-
--- operations defined in this specification
-processUnstructuredSS-Data, notifySS, forwardChargeAdvice, forwardCUG-Info, buildMPTY, holdMPTY, retrieveMPTY, splitMPTY, explicitCT, accessRegisterCCEntry, callDeflection, userUserService,
-lcs-LocationNotification, lcs-MOLR, lcs-AreaEventRequest, lcs-AreaEventReport, lcs-AreaEventCancellation, lcs-PeriodicLocationRequest, lcs-LocationUpdate, lcs-PeriodicLocationCancellation;
-
-IMPORTS
-
-OPERATION FROM
-Remote-Operations-Information-Objects {
-	joint-iso-itu-t remote-operations(4)
-  informationObjects(5) version1(0)}
-
--- The MAP operations:
--- registerSS, eraseSS, activateSS, deactivateSS, interrogateSS, registerPassword,
--- getPassword, processUnstructuredSS-Request, unstructuredSS-Request, unstructuredSS-Notify
--- forwardCheckSS-Indication
--- are imported from MAP-Operations in SS-Protocol module.
-
--- imports SS-data types
-NotifySS-Arg,
-ForwardChargeAdviceArg,
-ForwardCUG-InfoArg,
-SS-UserData,
-AccessRegisterCCEntryArg,
-CallDeflectionArg,
-UserUserServiceArg,
-LocationNotificationArg,
-LocationNotificationRes,
-LCS-MOLRArg,
-LCS-MOLRRes,
-LCS-AreaEventRequestArg,
-LCS-AreaEventReportArg,
-LCS-AreaEventCancellationArg,
-LCS-PeriodicLocationRequestArg,
-LCS-PeriodicLocationRequestRes,
-LCS-LocationUpdateArg,
-LCS-LocationUpdateRes,
-LCS-PeriodicLocationCancellationArg
-
-
-FROM SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3)
-   ss-DataTypes (2) version12 (12)}
-
--- imports MAP-SS-data types 
-RegisterCC-EntryRes
-FROM MAP-SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-DataTypes (14) version12 (12)}
-
--- imports MAP-errors
-illegalSS-Operation, ss-ErrorStatus, ss-NotAvailable, ss-SubscriptionViolation,
-ss-Incompatibility, systemFailure, facilityNotSupported, callBarred, unexpectedDataValue, shortTermDenial, longTermDenial, dataMissing, forwardingViolation, forwardingFailed, positionMethodFailure
-FROM MAP-Errors {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-Errors (10) version12 (12)}
-
--- imports SS-Errors
-resourcesNotAvailable, maxNumberOfMPTY-ParticipantsExceeded, deflectionToServedSubscriber, invalidDeflectedToNumber, specialServiceCode, rejectedByUser, rejectedByNetwork
-FROM SS-Errors {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3)
-   ss-Errors (1) version12 (12)}
-;
-
--- operations definition
-
-processUnstructuredSS-Data	OPERATION ::= { -- Timer T(PUSSD)= 15s to 30s 
-	ARGUMENT	SS-UserData
-	RESULT		SS-UserData
-				-- optional
-	ERRORS		{
-				systemFailure |
-				unexpectedDataValue}
-	CODE		local:19 }
-
-notifySS 	OPERATION ::= {
-	ARGUMENT	NotifySS-Arg
-	CODE		local:16 }
-
-forwardChargeAdvice 	OPERATION ::= { -- Timer T(AoC)= 1s to 40s
-	ARGUMENT	ForwardChargeAdviceArg
-	RETURN RESULT TRUE
-	CODE		local:125 }
-
-forwardCUG-Info 	OPERATION ::= {
-	ARGUMENT	ForwardCUG-InfoArg
-	CODE		local:120 }
-
-buildMPTY 	OPERATION ::= { -- Timer T(BuildMPTY)= 5s to 30s
-	RETURN RESULT TRUE
-	ERRORS	{
-			illegalSS-Operation |
-			ss-ErrorStatus |
-			ss-NotAvailable |
-			ss-Incompatibility |
-			systemFailure |
-			resourcesNotAvailable |
-			maxNumberOfMPTY-ParticipantsExceeded}
-	CODE	local:124 }
-
-holdMPTY 	OPERATION ::= { -- Timer T(HoldMPTY)= 5s to 30s
-	RETURN RESULT TRUE
-	ERRORS	{
-			illegalSS-Operation |
-			ss-ErrorStatus |
-			ss-Incompatibility |
-			facilityNotSupported |
-			systemFailure}
-	CODE	local:123 }
-
-retrieveMPTY 	OPERATION ::= { -- Timer T(RetrieveMPTY)= 5s to 30s
-	RETURN RESULT TRUE
-	ERRORS	{
-			illegalSS-Operation |
-			ss-ErrorStatus |
-			ss-Incompatibility |
-			facilityNotSupported |
-			systemFailure}
-	CODE	local:122 }
-
-splitMPTY 	OPERATION ::= { -- Timer T(SplitMPTY)= 5s to 30s
-	RETURN RESULT TRUE
-	ERRORS	{
-			illegalSS-Operation |
-			ss-ErrorStatus |
-			ss-Incompatibility |
-			facilityNotSupported |
-			systemFailure}
-	CODE	local:121 }
-
-explicitCT 	OPERATION ::= { -- Timer T(ECT)= 5s to 15s
-	RETURN RESULT TRUE
-	ERRORS	{
-			illegalSS-Operation |
-			ss-ErrorStatus |
-			ss-NotAvailable |
-			ss-Incompatibility |
-			facilityNotSupported |
-			systemFailure |
-			resourcesNotAvailable |
-			callBarred}
-	CODE	local:126 }
-
-accessRegisterCCEntry 	 OPERATION ::= { -- Timer T(AccRegCCEntry)= 30s
-	ARGUMENT	AccessRegisterCCEntryArg
-	RESULT		RegisterCC-EntryRes
-	ERRORS		{
-				systemFailure |
-				dataMissing |
-				unexpectedDataValue |
-				callBarred |
-				illegalSS-Operation |
-				ss-ErrorStatus |
-				ss-Incompatibility |
-				shortTermDenial |
-				longTermDenial |
-				facilityNotSupported}
-	CODE		local:119 }
-
--- the timer value is defined by T308, see also in TS 24.008 for definition of timer T308
-
-callDeflection 	OPERATION ::= { -- Timer T(CD)= 30s
-	ARGUMENT	CallDeflectionArg
-	RETURN RESULT TRUE
-	ERRORS		{
-				illegalSS-Operation |
-				ss-ErrorStatus |
-				ss-NotAvailable |
-				ss-Incompatibility |
-				facilityNotSupported |
-				systemFailure |
-				resourcesNotAvailable |
-				forwardingViolation |
-				callBarred |
-				deflectionToServedSubscriber |
-				invalidDeflectedToNumber |
-				specialServiceCode |
-				forwardingFailed}
-	CODE		local:117 }
-
--- the timer value is defined by T305, see also in TS 24.008 for definition of timer T305
--- extensionContainer shall not be used with this operation
-
-userUserService 	OPERATION ::= { -- Timer T(UUS3)= 10s
-	ARGUMENT	UserUserServiceArg
-	RETURN RESULT TRUE
-	ERRORS		{
-				illegalSS-Operation |
-				ss-ErrorStatus |
-				ss-NotAvailable |
-				ss-Incompatibility |
-				facilityNotSupported |
-				systemFailure |
-				resourcesNotAvailable |
-				rejectedByNetwork |
-				rejectedByUser}
-	CODE		local:118 }
-
--- The timer value for UUS3 is 10s; it is applicable only if UUS3 is activated by FACILITY
--- message. If UUS service (UUS1, UUS2 or UUS3) is activated by SETUP message, no timers are
--- needed. In those cases Return Result or Return Error must be received within certain call
--- control messages, see 3GPP TS 24.087.
--- extensionContainer shall not be used with this operation.
-
-
-lcs-LocationNotification	OPERATION ::= { -- Timer T(LCSN)= 10s to 20s 
-	ARGUMENT	LocationNotificationArg
-	RESULT		LocationNotificationRes
-	ERRORS		{
-				systemFailure |
-				unexpectedDataValue}
-	CODE		local:116 }
-
-
-lcs-MOLR	OPERATION ::= { -- Timer T(LCSL)= 10s to 300s
-	ARGUMENT	LCS-MOLRArg
-	RESULT		LCS-MOLRRes
-	ERRORS		{
-				systemFailure |
-				unexpectedDataValue |
-				dataMissing |
-				facilityNotSupported |
-				ss-SubscriptionViolation |
-				positionMethodFailure}
-	CODE		local:115 }
-
-
-lcs-AreaEventRequest	OPERATION ::= { -- Timer T(LCSN)= 10s to 20s
-	ARGUMENT	LCS-AreaEventRequestArg
-	RETURN RESULT TRUE
-	ERRORS		{
-				systemFailure |
-				facilityNotSupported |
-				unexpectedDataValue}
-	CODE		local:114 }
-
-
-lcs-AreaEventReport	OPERATION ::= { -- Timer T(LCSL)= 10s to 300s
-	ARGUMENT	LCS-AreaEventReportArg
-	RETURN RESULT TRUE
-	ERRORS		{
-				systemFailure |
-				unexpectedDataValue |
-				facilityNotSupported}
-	CODE		local:113 }
-
-
-lcs-AreaEventCancellation	OPERATION ::= { -- Timer T(LCSN)= 10s to 20s
-	ARGUMENT	LCS-AreaEventCancellationArg
-	RETURN RESULT TRUE
-	ERRORS		{
-				systemFailure |
-				facilityNotSupported |
-				unexpectedDataValue}
-	CODE		local:112 }
-
-lcs-PeriodicLocationRequest	OPERATION ::= { -- Timer T(LCSN)= 10s to 20s 
-	ARGUMENT	LCS-PeriodicLocationRequestArg
-	RESULT		LCS-PeriodicLocationRequestRes
-	ERRORS		{
-				systemFailure |
-				facilityNotSupported |
-				unexpectedDataValue |
-				dataMissing }
-	CODE		local: 111 }
-
-lcs-LocationUpdate	OPERATION ::= { -- Timer T(LCSN)= 10s to 20s 
-	ARGUMENT	LCS-LocationUpdateArg
-	RESULT		LCS-LocationUpdateRes
-	ERRORS		{
-				systemFailure |
-				unexpectedDataValue}
-	CODE		local: 110 }
-
-lcs-PeriodicLocationCancellation	OPERATION ::= { -- Timer T(LCSN)= 10s to 20s 
-	ARGUMENT	LCS-PeriodicLocationCancellationArg
-	RETURN RESULT TRUE
-	ERRORS		{
-				systemFailure |
-				unexpectedDataValue}
-	CODE		local: 109 }
-
-
-
-END
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_PDU_Defs.asn b/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_PDU_Defs.asn
deleted file mode 100644
index 795f471..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_PDU_Defs.asn
+++ /dev/null
@@ -1,136 +0,0 @@
---/////////////////////////////////////////////////////////////////////////////
---                                                                           //
--- Copyright Test Competence Center (TCC) ETH 2016                           //
---                                                                           //
--- 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) has been supplied.          //
---                                                                           //
---/////////////////////////////////////////////////////////////////////////////
---
---  File:               SS_PDU_Defs.asn
---  Rev:                R1B
---  Prodnr:             CNL 113 832
---  Contact:            http://ttcn.ericsson.se
---  Reference:          3GPP TS 24.080 v13.0.0
-
-SS-PDU-Defs 
-
-DEFINITIONS IMPLICIT TAGS ::=
-
-BEGIN
-
-IMPORTS
-
-  Supported-SS-Operations
-  FROM
-  SS-Protocol
-
-  OPERATION, ERROR, Code
-  FROM Remote-Operations-Information-Objects {joint-iso-itu-t
-    remote-operations(4) informationObjects(5) version1(0)}
-	  
-  Invoke{}, ReturnResult{}, ReturnError{}, Reject{},
-  Invoke-help{}, ReturnResult-help{}, ReturnError-help{},
-  Errors{}, PresentInvokeId, ProblemType
-  FROM Remote-Operations-Generic-ROS-PDUs {joint-iso-itu-t
-  remote-operations(4) generic-ROS-PDUs(6) version1(0)};
-
-
--- SS-Invoke, SS-ReturnResult, SS-ReturnError, SS-Reject 
--- SS-Invoke-help SS-ReturnResult-help SS-ReturnError-help types
--- (these are accessible from TTCN-3)
-SS-Invoke ::= Invoke{{PresentInvokeId}, {Supported-SS-Operations}}
-
-SS-ReturnResult ::= ReturnResult{{Supported-SS-Operations}}
-
-SS-ReturnError ::= ReturnError{{Errors {{Supported-SS-Operations}}}}
-
-SS-Reject ::= Reject --{{Errors {{Supported-SS-Operations}}}}
-
-SS-Invoke-help ::= Invoke-help{{PresentInvokeId}, {Supported-SS-Operations}}
-
-SS-ReturnResult-help ::= ReturnResult-help{{Supported-SS-Operations}}
-
-SS-ReturnError-help ::= ReturnError-help{{Errors {{Supported-SS-Operations}}}}
-
-
--- Component Portion fields
-
--- COMPONENT PORTION. This part is copied from TCAP_PDU_Defs.asn file
--- with TCAP -> SS-TCAP renaming
--- This is needed for internal coding: DON'T USE FROM TTCN !!!
-SS-TCAP-ComponentPortion ::= [UNIVERSAL 28] IMPLICIT SEQUENCE (SIZE(1..MAX)) OF
-                                                              SS-TCAP-Component
-
-
--- COMPONENT TYPE. Recommendation X.229 defines four Application Protocol Data
--- Units (APDUs).
-
-SS-TCAP-Component ::=           CHOICE
-  {
-  invoke                    [1] IMPLICIT           SS-TCAP-Invoke,
-  returnResult              [2] IMPLICIT           SS-TCAP-ReturnResult,
-  returnError               [3] IMPLICIT           SS-TCAP-ReturnError,
-  reject                    [4] IMPLICIT           SS-TCAP-Reject
-  }
-
--- The Components are sequences of data elements.
-SS-TCAP-Invoke ::=              SEQUENCE
-  {
-  invokeID                            SS-TCAP-InvokeIdType,
-  linkedID            [0] IMPLICIT    SS-TCAP-InvokeIdType        OPTIONAL,
-  operationCode                       Code,
-  parameter                           ANY DEFINED BY operationCode OPTIONAL
-  }
-     -- ethgry(11/July/02): ANY and ANY DEFINED BY handled in a special,
-     -- transparent way at encoding/decoding:
-     -- its value notation shall be a simple octet string, which will be
-     -- directly copied (i.e without an additional tag and length fields)
-     -- into the encoded stream and will be fetched from the received
-     -- stream and passed to the abstract level as an octet string.
-
-
--- ANY is filled by the single ASN.1 data type following the keyword PARAMETER
--- or the keyword ARGUMENT in the type definition of a particular operation.
-
-SS-TCAP-ReturnResult ::=        SEQUENCE
-  {
-  invokeID           SS-TCAP-InvokeIdType,
-  result             SS-TCAP-ReturnResult-Result OPTIONAL
-  }
-
-SS-TCAP-ReturnResult-Result ::= SEQUENCE
-  {
-   operationCode                   Code,
-   parameter                       ANY DEFINED BY operationCode OPTIONAL
-      -- ethgry: See comment to Invoke on the use of ANY 
-   }
-
--- ANY is filled by the single ASN.1 data type following the keyword RESULT in
--- the type definition of a particular operation.
-
-SS-TCAP-ReturnError ::=         SEQUENCE
-  {
-  invokeID                           SS-TCAP-InvokeIdType,
-  errorCode                          Code,
-  parameter                          ANY DEFINED BY errorCode OPTIONAL
-     -- ethgry: See comment to Invoke on the use of ANY
-  }
-
--- ANY is filled by the single ASN.1 data type following the keyword PARAMETER
--- in the type definition of a particular error.
-SS-TCAP-Reject ::=              SEQUENCE
-  {
-  invokeID                                         CHOICE
-    {
-    derivable                                    SS-TCAP-InvokeIdType,
-    not-derivable                                NULL
-    },
-  problem                                        ProblemType
-  }
-
-SS-TCAP-InvokeIdType ::=        INTEGER (-128..127)
-
-END
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Protocol.asn b/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Protocol.asn
deleted file mode 100644
index bf37a1f..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Protocol.asn
+++ /dev/null
@@ -1,67 +0,0 @@
---/////////////////////////////////////////////////////////////////////////////
---                                                                           //
--- Copyright Test Competence Center (TCC) ETH 2016                           //
---                                                                           //
--- 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) has been supplied.          //
---                                                                           //
---/////////////////////////////////////////////////////////////////////////////
---
---  File:               SS_Protocol.asn
---  Rev:                R1B
---  Prodnr:             CNL 113 832
---  Contact:            http://ttcn.ericsson.se
---  Reference:          3GPP TS 24.080 v13.0.0
- 
- 
-SS-Protocol {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Access (2) modules (3) ss-Protocol (3) version12 (12)}
-
-DEFINITIONS ::=
-
-BEGIN
-
-IMPORTS
-
-OPERATION
-FROM Remote-Operations-Information-Objects {
-joint-iso-itu-t remote-operations(4) informationObjects(5) version1(0)}
-
--- imports operations
-
--- imports operation from MAP-MobileServiceOperations
-forwardCheckSS-Indication
-FROM MAP-MobileServiceOperations {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-MobileServiceOperations (5) version12 (12)}
-
--- imports operations from MAP-SupplementaryServiceOperations
-registerSS, eraseSS, activateSS, deactivateSS, interrogateSS, registerPassword, getPassword,
-processUnstructuredSS-Request, unstructuredSS-Request, unstructuredSS-Notify, eraseCC-Entry
-FROM MAP-SupplementaryServiceOperations {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-SupplementaryServiceOperations (8) version12 (12)}
-
--- imports operations from SS-Operations
-processUnstructuredSS-Data, notifySS, forwardChargeAdvice, buildMPTY, holdMPTY, retrieveMPTY,
-splitMPTY, explicitCT, forwardCUG-Info, accessRegisterCCEntry, callDeflection, userUserService,
-lcs-LocationNotification, lcs-MOLR, lcs-AreaEventRequest, lcs-AreaEventReport, lcs-AreaEventCancellation, lcs-PeriodicLocationRequest, lcs-LocationUpdate, lcs-PeriodicLocationCancellation
-FROM SS-Operations {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3)
-   ss-Operations (0) version12 (12)} 
-
-;
-
-Supported-SS-Operations OPERATION ::= {forwardCheckSS-Indication | registerSS | eraseSS | 
-	activateSS | deactivateSS | interrogateSS | registerPassword | getPassword | 
-	processUnstructuredSS-Request | unstructuredSS-Request | unstructuredSS-Notify | eraseCC-Entry | 
-	processUnstructuredSS-Data | notifySS | forwardChargeAdvice | buildMPTY | holdMPTY | 
-	retrieveMPTY | splitMPTY | explicitCT | forwardCUG-Info | accessRegisterCCEntry | 
-	callDeflection | userUserService | lcs-LocationNotification | lcs-MOLR | lcs-AreaEventRequest |	lcs-AreaEventReport | lcs-AreaEventCancellation | lcs-PeriodicLocationRequest | lcs-LocationUpdate | lcs-PeriodicLocationCancellation }
-
-
-
-END
diff --git a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Types.ttcn b/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Types.ttcn
deleted file mode 100644
index 6dedf5f..0000000
--- a/MobileL3_v13.4.0_CNL113832_LATEST/src/SS_Types.ttcn
+++ /dev/null
@@ -1,40 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2016                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               SS_Types.ttcn
-//  Rev:                R1B
-//  Prodnr:             CNL 113 832
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 24.080 v13.0.0
-
-module SS_Types
-{
-
-import from SS_PDU_Defs all;
-
-//Coding functions
-external function enc_SS_FacilityInformation (in SS_FacilityInformation pdu) return octetstring;
-external function dec_SS_FacilityInformation (in octetstring stream) return SS_FacilityInformation;
-external function dec_SS_FacilityInformation_backtrack (in octetstring stream, out SS_FacilityInformation pdu) return integer;
-
-//Type for extracted facilityInformation in Facility IE
-type record of SS_Component SS_FacilityInformation;
-
-//24.080 3.6.1
-type union SS_Component
-{
-  SS_Invoke       invoke,
-  SS_ReturnResult returnResult,
-  SS_ReturnError  returnError,
-  SS_Reject       reject
-}
-
-}
diff --git a/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_FS.pdf b/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_FS.pdf
deleted file mode 100644
index d9e4342..0000000
--- a/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_FS.pdf
+++ /dev/null
Binary files differ
diff --git a/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_PRI.pdf b/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_PRI.pdf
deleted file mode 100644
index efcde4c..0000000
--- a/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_PRI.pdf
+++ /dev/null
Binary files differ
diff --git a/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_UG.pdf b/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_UG.pdf
deleted file mode 100644
index 3ebd9a5..0000000
--- a/NS_v7.3.0_CNL113578_LATEST/doc/NS_v7.3.0_CNL113578_UG.pdf
+++ /dev/null
Binary files differ
diff --git a/NS_v7.3.0_CNL113578_LATEST/src/NS_Types.ttcn b/NS_v7.3.0_CNL113578_LATEST/src/NS_Types.ttcn
deleted file mode 100644
index f80bae8..0000000
--- a/NS_v7.3.0_CNL113578_LATEST/src/NS_Types.ttcn
+++ /dev/null
@@ -1,465 +0,0 @@
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2008                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               NS_Types.ttcn
-//  Rev:                R1A01
-//  Prodnr:             CNL 113 578
-//  Updated:            2008-01-22
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 48.016 7.3.0
- 
-module NS_Types
-{    // beginning of module
-
-// This module contains the Base Station System (BSS) Serving GPRS Support
-// Node (SGSN) interface  Network Sevice protocol
-//  48.016 v7.3.0 with attributes for RAW encoding/decoding.
-// 
-                 
-// History:
-// ********
-
-import from General_Types all;
-
-external function enc_PDU_NS(in PDU_NS pdu) return octetstring
-with { extension "prototype(convert)"
-       extension "encode(RAW)"
-     } 
-                
-external function dec_PDU_NS(in octetstring stream) return PDU_NS
-with { extension "prototype(convert)"
-       extension "decode(RAW)"
-     }
-
-type record CauseNS
-{
-OCT1                     iEI, 
-BIT1                     ext,
-LIN1_2                   lengthIndicator,
-OCT1                     cause
-}  with { 
-        variant (lengthIndicator) "LENGTHTO (cause)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       }
-
-type record NS_VCI  
-{
-OCT1                     iEI, 
-BIT1                     ext,
-LIN1_2                   lengthIndicator,
-OCT2                     nS_VCI
-} with { 
-        variant (lengthIndicator) "LENGTHTO (nS_VCI)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       }
-
-type record NS_PDU  
-{
-OCT1                     iEI, 
-BIT1                     ext,
-LIN1_2                   lengthIndicator,
-octetstring              ns_PDU
-} with { 
-        variant (lengthIndicator) "LENGTHTO (ns_PDU)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       }
- 
-type record BVCI_NS 
-{
-OCT1                     iEI, 
-BIT1                     ext,
-LIN1_2                   lengthIndicator,
-OCT2                     bVCI
-} with { 
-        variant (lengthIndicator) "LENGTHTO (bVCI)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       }       
-
-type record ListofIP4Elements 
-{
-OCT1                     iEI, 
-BIT1                     ext,
-LIN1_2                   lengthIndicator,
-IP4_Elements             iP4_Elements
-}  with { 
-        variant (lengthIndicator) "LENGTHTO (iP4_Elements)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       }       
-
-type record IP4_Element
-{
-OCT4                     ipAddress,
-OCT2                     uDP_Port,
-OCT1                     signallingWeight,
-OCT1                     dataWeight
-}
-
-type record of IP4_Element IP4_Elements;
-
-type record ListofIP6Elements 
-{
-OCT1                     iEI, 
-BIT1                     ext,
-LIN1_2                   lengthIndicator,
-IP6_Elements             iP6_Elements
-}  with { 
-        variant (lengthIndicator) "LENGTHTO (iP6_Elements)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       }       
-
-type record IP6_Element
-{
-OCT16                    ipAddress,
-OCT2                     uDP_Port,
-OCT1                     signallingWeight,
-OCT1                     dataWeight
-}
-
-type record of IP6_Element IP6_Elements;
-
-type record IP_Address_NS
-{
-OCT1                     iEI, 
-OCT1                     addressType,
-IPAddress                ipAddress
-}with {
-  variant (ipAddress) "CROSSTAG
-    (
-      ip4Address,    addressType = '01'O;
-      ip6Address,    addressType = '02'O; 
-    )"
-}; 
-     
-type union IPAddress 
-{
-OCT4                     ip4Address,
-OCT16                    ip6Address
-}
-
-type record EndFlag
-{
-BIT1                     eBIT,
-BIT7                     spare
-}
-
-type record ResetFlag
-{
-OCT1                     iEI, 
-BIT1                     resetBIT,
-BIT7                     spare
-}
-
-type record MaxNumberOfNSVCs
-{
-OCT1                     iEI, 
-OCT2                     maxNumberOfNSVCs 
-}
-
-type record NumberOfIP_Endpoints 
-{
-OCT1                     iEI, 
-OCT2                     numberOfIP_Endpoints 
-}
-
-
-type record NSEI_NS
-{
-OCT1                     iEI, 
-BIT1                     ext,
-LIN1_2                   lengthIndicator,
-OCT2                     nSEI
-} with { 
-        variant (lengthIndicator) "LENGTHTO (nSEI)";
-        variant (lengthIndicator) "CROSSTAG( length1,         ext = '1'B;
-                                             length2,         ext = '0'B;)";
-        variant (ext,lengthIndicator) "FIELDORDER(msb)";
-       }       
-
-type record NS_SDU_ControlBits
-{
-BIT1                     rBit,
-BIT1                     cBit,
-BIT6                     spare
-}
-
-//same type def as LIN2_2a in BSSGP but named differently 
-type union LIN1_2
-{
-integer length1,
-integer length2
-} with {
-        variant (length1) "FIELDLENGTH(7)";
-        variant (length2) "FIELDLENGTH(15)";
-        variant (length2) "BYTEORDER(last)";
-        variant (length1,length2) "FIELDORDER(msb)"
-      }        
-
-
-// PDUs ************************************************************
-
-
-type record PDU_NS_Alive
-{
-OCT1                     nsPduType 
-}
-
-type record PDU_NS_Alive_Ack
-{
-OCT1                     nsPduType
-}
-
-type record PDU_NS_Block
-{
-OCT1                     nsPduType,
-CauseNS                  causeNS,                        //TLV
-NS_VCI                   nS_VCI                          //TLV
-}
-
-type record PDU_NS_Block_Ack
-{
-OCT1                     nsPduType,
-NS_VCI                   nS_VCI                          //TLV
-}
-
-type record PDU_NS_Reset
-{
-OCT1                     nsPduType,
-CauseNS                  causeNS,                        //TLV
-NS_VCI                   nS_VCI,                         //TLV
-NSEI_NS                  nSEI_NS                         //TLV      
-}
-
-type record PDU_NS_Reset_Ack
-{
-OCT1                     nsPduType,
-NS_VCI                   nS_VCI,                         //TLV
-NSEI_NS                  nSEI_NS                         //TLV      
-}
-
-type record PDU_NS_Status
-{
-OCT1                     nsPduType,
-CauseNS                  causeNS,                        //TLV
-NS_VCI                   nS_VCI              optional,   //TLV   
-NS_PDU                   nS_PDU              optional,   //TLV
-BVCI_NS                  bVCI_NS             optional,   //TLV
-ListofIP4Elements        listofIP4Elements   optional,   //TLV
-ListofIP6Elements        listofIP6Elements   optional    //TLV
-} with { 
-  variant "TAG (
-                nS_VCI,                        iEI = '01'O;
-                nS_PDU,                        iEI = '02'O;
-                bVCI_NS,                       iEI = '03'O;
-                listofIP4Elements,             iEI = '05'O;
-		listofIP6Elements,             iEI = '06'O                 
-        )"
-}
-
-type record PDU_NS_Unblock
-{
-OCT1                     nsPduType
-}
-
-type record PDU_NS_Unblock_Ack
-{
-OCT1                     nsPduType
-}
-
-type record PDU_NS_Unitdata
-{
-OCT1                     nsPduType,
-NS_SDU_ControlBits       nS_SDU_ControlBits,              //V
-OCT2                     bVCI,                            //V
-octetstring              nS_SDU                           //V
-// decoder interprets all octets after the 
-// first 4 octets as NS SDU
-}
-
-type record PDU_SNS_Ack
-{
-OCT1                     nsPduType,
-NSEI_NS                  nSEI_NS,                           //TLV
-integer                  transactionID,                     //V
-CauseNS                  causeNS             optional,      //TLV
-IP_Address_NS            iP_Address_NS       optional,      //TV
-ListofIP4Elements        listofIP4Elements   optional,      //TLV
-ListofIP6Elements        listofIP6Elements   optional       //TLV
-} with {
-        variant (transactionID) "FIELDLENGTH(8)";
-        variant "TAG (
-                causeNS,                           iEI = '00'O;
-                iP_Address_NS,                   iEI = '0B'O;
-                listofIP4Elements,          iEI = '05'O;
-                listofIP6Elements,          iEI = '06'O              
-        )"
-}
-
-type record PDU_SNS_Add
-{
-OCT1                     nsPduType,
-NSEI_NS                  nSEI_NS,                          //TLV
-integer                  transactionID,                    //V
-ListofIP4Elements        listofIP4Elements optional,       //TLV
-ListofIP6Elements        listofIP6Elements optional        //TLV
-} with {
-        variant (transactionID) "FIELDLENGTH(8)";
-        variant "TAG (
-                listofIP4Elements,          iEI = '05'O;
-                listofIP6Elements,          iEI = '06'O
-         )"              
-}
-
-type record PDU_SNS_ChangeWeight
-{
-OCT1                     nsPduType,
-NSEI_NS                  nSEI_NS,                         //TLV
-integer                  transactionID,                   //V
-ListofIP4Elements        listofIP4Elements optional,      //TLV
-ListofIP6Elements        listofIP6Elements optional       //TLV
-} with {
-        variant (transactionID) "FIELDLENGTH(8)";
-        variant "TAG (
-                listofIP4Elements,          iEI = '05'O;
-                listofIP6Elements,          iEI = '06'O
-         )" 
-}
-
-type record PDU_SNS_Config
-{
-OCT1                     nsPduType,
-EndFlag                  endFlag,                           //V
-NSEI_NS                  nSEI_NS,                           //TLV
-ListofIP4Elements        listofIP4Elements optional,        //TLV
-ListofIP6Elements        listofIP6Elements optional         //TLV
-} with { 
-      variant "TAG (
-                listofIP4Elements,          iEI = '05'O;
-                listofIP6Elements,          iEI = '06'O
-         )" 
-}
-
-
-
-type record PDU_SNS_Config_Ack
-{
-OCT1                     nsPduType,
-NSEI_NS                  nSEI_NS,                               //TLV
-CauseNS                  causeNS               optional         //TLV
-} with { 
-      variant "TAG (causeNS,                   iEI = '00'O;)"
-}
-
-
-
-type record PDU_SNS_Delete
-{
-OCT1                     nsPduType,
-NSEI_NS                  nSEI_NS,                              //TLV
-integer                  transactionID,                        //V
-IP_Address_NS            iP_Address_NS         optional,       //TV
-ListofIP4Elements        listofIP4Elements     optional,       //TLV
-ListofIP6Elements        listofIP6Elements     optional        //TLV
-} with {
-        variant (transactionID) "FIELDLENGTH(8)";
-        variant "TAG (
-                iP_Address_NS,                        iEI = '0B'O;
-                listofIP4Elements,                iEI = '05'O;
-                listofIP6Elements,               iEI = '06'O
-        )"
-}
-
-type record PDU_SNS_Size
-{
-OCT1                     nsPduType,
-NSEI_NS                  nSEI_NS,                            //TLV
-ResetFlag                resetFlag,                          //TV
-MaxNumberOfNSVCs         maxNumberOfNSVCs,                   //TV
-NumberOfIP_Endpoints     numberOfIP4_Endpoints    optional,  //TV
-NumberOfIP_Endpoints     numberOfIP6_Endpoints    optional   //TV
-} with { 
-      variant "TAG (
-                    numberOfIP4_Endpoints,                   iEI = '08'O;      
-                    numberOfIP6_Endpoints,                   iEI = '09'O;
-      )"  
-}
-
-
-type record PDU_SNS_Size_Ack
-{
-OCT1                     nsPduType,
-NSEI_NS                  nSEI_NS,    
-CauseNS                  causeNS             optional       //TLV
-} with { 
-      variant "TAG (causeNS,                   iEI = '00'O;)"
-}
-
-
-
-type union PDU_NS
-{
-
-PDU_NS_Alive                  pDU_NS_Alive,
-PDU_NS_Alive_Ack              pDU_NS_Alive_Ack,
-PDU_NS_Block                  pDU_NS_Block,
-PDU_NS_Block_Ack              pDU_NS_Block_Ack,
-PDU_NS_Reset                  pDU_NS_Reset,
-PDU_NS_Reset_Ack              pDU_NS_Reset_Ack,
-PDU_NS_Status                 pDU_NS_Status,
-PDU_NS_Unblock                pDU_NS_Unblock,
-PDU_NS_Unblock_Ack            pDU_NS_Unblock_Ack,
-PDU_NS_Unitdata               pDU_NS_Unitdata,
-PDU_SNS_Ack                   pDU_SNS_Ack,
-PDU_SNS_Add                   pDU_SNS_Add,
-PDU_SNS_ChangeWeight          pDU_SNS_ChangeWeight,
-PDU_SNS_Config                pDU_SNS_Config,
-PDU_SNS_Config_Ack            pDU_SNS_Config_Ack,
-PDU_SNS_Delete                pDU_SNS_Delete,
-PDU_SNS_Size                  pDU_SNS_Size,
-PDU_SNS_Size_Ack              pDU_SNS_Size_Ack
-
-} with { variant "TAG (              
-                
-                pDU_NS_Alive,           nsPduType ='0A'O;
-                pDU_NS_Alive_Ack,       nsPduType ='0B'O;
-                pDU_NS_Block,           nsPduType ='04'O;
-                pDU_NS_Block_Ack,       nsPduType ='05'O;
-                pDU_NS_Reset,           nsPduType ='02'O;
-                pDU_NS_Reset_Ack,       nsPduType ='03'O;
-                pDU_NS_Status,          nsPduType ='08'O;
-                pDU_NS_Unblock,         nsPduType ='06'O;
-                pDU_NS_Unblock_Ack,     nsPduType ='07'O;
-                pDU_NS_Unitdata,        nsPduType ='00'O;
-                pDU_SNS_Ack,            nsPduType ='0C'O;
-                pDU_SNS_Add,            nsPduType ='0D'O;
-                pDU_SNS_ChangeWeight,   nsPduType ='0E'O;
-                pDU_SNS_Config,         nsPduType ='0F'O;
-                pDU_SNS_Config_Ack,     nsPduType ='10'O;
-                pDU_SNS_Delete,         nsPduType ='11'O;
-                pDU_SNS_Size,           nsPduType ='12'O;
-                pDU_SNS_Size_Ack,       nsPduType ='13'O
-
-              )"
-}
-
-
-}with{ encode "RAW"} // end of module
diff --git a/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_FS.pdf b/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_FS.pdf
deleted file mode 100644
index 5c4a49c..0000000
--- a/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_FS.pdf
+++ /dev/null
Binary files differ
diff --git a/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_PRI.pdf b/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_PRI.pdf
deleted file mode 100644
index 677e451..0000000
--- a/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_PRI.pdf
+++ /dev/null
Binary files differ
diff --git a/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_UG.pdf b/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_UG.pdf
deleted file mode 100644
index 4b94413..0000000
--- a/SNDCP_v7.0.0_CNL113576_LATEST/doc/SNDCP_v7.0.0_CNL113576_UG.pdf
+++ /dev/null
Binary files differ
diff --git a/SNDCP_v7.0.0_CNL113576_LATEST/src/SNDCP_Types.ttcn b/SNDCP_v7.0.0_CNL113576_LATEST/src/SNDCP_Types.ttcn
deleted file mode 100644
index e2cebf3..0000000
--- a/SNDCP_v7.0.0_CNL113576_LATEST/src/SNDCP_Types.ttcn
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
-///////////////////////////////////////////////////////////////////////////////
-//                                                                           //
-// Copyright Test Competence Center (TCC) ETH 2008                           //
-//                                                                           //
-// 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) has been supplied.          //
-//                                                                           //
-///////////////////////////////////////////////////////////////////////////////
-//
-//  File:               SNDCP_Types.ttcn
-//  Rev:                R1A01
-//  Prodnr:             CNL 113 576
-//  Updated:            2008-01-21
-//  Contact:            http://ttcn.ericsson.se
-//  Reference:          3GPP TS 44.065 7.0.0
-*/ 
-module SNDCP_Types
-{    
-
-// This module contains the Subnetwork Dependent Convergence Protocol
-//  44.065 v7.0.0 with attributes for RAW encoding/decoding.
-
-// According to 3GPP 04.64 - the maximum(!) length of the PDU_SN_UNITDATA and PDU_SN_DATA
-// is minimum 140 and maximum 520 octets.
-// The actual length of the PDU_SN_UNITDATA and PDU_SN_DATA is given in LLC ASPs or set to a parameter value.
-// The possible maximum length of dataSegmentSnUnitdataPdu or dataSegmentSnDataPdu is therefore variable and 
-// will depend on this setting.
-// The RAW decoder should have no problem decoding these fields when they are simply defined as octetstrings
-// and stand at the end of the SNDPC PDUs.
-//
-
-//
- 
-import from General_Types all;
-
-external function enc_PDU_SN(in PDU_SN pdu ) return octetstring
-with { extension "prototype(convert)"
-       extension "encode(RAW)"
-     }
-      
-external function dec_PDU_SN(in octetstring stream) return PDU_SN
-with { extension "prototype(convert)"
-       extension "decode(RAW)"
-     }
-     
-type union PDU_SN
-{
-PDU_SN_UNITDATA    pDU_SN_UNITDATA,
-PDU_SN_DATA        pDU_SN_DATA       
-} with { variant "TAG (              
-		pDU_SN_UNITDATA,       			 snPduType ='1'B;	
-		pDU_SN_DATA,      			 snPduType ='0'B		
-              )"
-};
-
-
-type record PDU_SN_UNITDATA 
-{
- BIT4			   nsapi,
- BIT1		  	   moreBit,
- BIT1             	   snPduType,         
- BIT1			   firstSegmentIndicator, 
- BIT1			   spareBit,                     // set to '0'B
- BIT4			   pcomp optional,
- BIT4			   dcomp optional,
- BIT4			   npduNumber,
- BIT4			   segmentNumber,
- OCT1			   npduNumberContinued,
- octetstring 		   dataSegmentSnUnitdataPdu      
-}  with { variant (pcomp)  	  "PRESENCE(firstSegmentIndicator = '1'B)";
-          variant (dcomp)  	  "PRESENCE(firstSegmentIndicator = '1'B)"
- };
-
-
-type record PDU_SN_DATA 
-{
- BIT4			   nsapi, 
- BIT1		  	   moreBit,
- BIT1             	   snPduType,         
- BIT1			   firstSegmentIndicator, 
- BIT1			   spareBit,                  // set to '0'B
- BIT4			   pcomp optional,
- BIT4			   dcomp optional,
- OCT1			   npduNumberAck optional,
- octetstring 		   dataSegmentSnDataPdu       
-
-} with { variant (pcomp)  	 	  "PRESENCE(firstSegmentIndicator = '1'B)";
-          variant (dcomp)  	 	  "PRESENCE(firstSegmentIndicator = '1'B)";
-	  variant (npduNumberAck)  	  "PRESENCE(firstSegmentIndicator = '1'B)"
-  };
-
-
-}with{ encode "RAW"}  // end of module
diff --git a/ggsn_tests/gen_links.sh b/ggsn_tests/gen_links.sh
index 1297938..ee8d7b0 100755
--- a/ggsn_tests/gen_links.sh
+++ b/ggsn_tests/gen_links.sh
@@ -39,7 +39,7 @@
 FILES="UDP_EncDec.cc  UDP_Types.ttcn"
 gen_links $DIR $FILES
 
-DIR=../GTP_v13.5.0_CNL113843_LATEST/src
+DIR=$BASEDIR/titan.ProtocolModules.GTP_v13.5.0/src
 FILES="GTPC_EncDec.cc  GTPC_Types.ttcn  GTPU_EncDec.cc  GTPU_Types.ttcn"
 gen_links $DIR $FILES
 
diff --git a/gprs_gb/gen_links.sh b/gprs_gb/gen_links.sh
index bdfb241..f2433d5 100755
--- a/gprs_gb/gen_links.sh
+++ b/gprs_gb/gen_links.sh
@@ -27,7 +27,7 @@
 FILES="IPL4asp_Functions.ttcn  IPL4asp_PT.cc  IPL4asp_PT.hh IPL4asp_PortType.ttcn  IPL4asp_Types.ttcn  IPL4asp_discovery.cc IPL4asp_protocol_L234.hh"
 gen_links $DIR $FILES
 
-DIR=../MobileL3_v13.4.0_CNL113832_LATEST/src
+DIR=$BASEDIR/titan.ProtocolModules.MobileL3_v13.4.0/src
 FILES="MobileL3_CC_Types.ttcn MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn MobileL3_RRM_Types.ttcn MobileL3_SMS_Types.ttcn MobileL3_SS_Types.ttcn MobileL3_Types.ttcn SS_DataTypes.asn SS_EncDec.cc SS_Errors.asn SS_Operations.asn SS_PDU_Defs.asn SS_Protocol.asn SS_Types.ttcn" 
 gen_links $DIR $FILES