summaryrefslogtreecommitdiffstats
path: root/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CommonIE_Types.ttcn
diff options
context:
space:
mode:
Diffstat (limited to 'MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CommonIE_Types.ttcn')
-rw-r--r--MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CommonIE_Types.ttcn680
1 files changed, 680 insertions, 0 deletions
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
new file mode 100644
index 00000000..9d890281
--- /dev/null
+++ b/MobileL3_v13.4.0_CNL113832_LATEST/src/MobileL3_CommonIE_Types.ttcn
@@ -0,0 +1,680 @@
+///////////////////////////////////////////////////////////////////////////////
+// //
+// 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 CellIdentity
+{
+ 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"
+}
+