-- 3GPP TS 36.413 V15.5.0 (2019-03)
-- 9.3.4	Information Element Definitions
-- **************************************************************
--
-- Information Element Definitions
--
-- **************************************************************

S1AP-IEs {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-IEs (2) }

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

IMPORTS
	id-E-RABInformationListItem,
	id-E-RABItem,
	id-Bearers-SubjectToStatusTransfer-Item,
	id-Time-Synchronisation-Info,
	id-x2TNLConfigurationInfo,
	id-eNBX2ExtendedTransportLayerAddresses,
	id-MDTConfiguration,
	id-Time-UE-StayedInCell-EnhancedGranularity,
	id-HO-Cause,
	id-M3Configuration,
	id-M4Configuration,
	id-M5Configuration,
	id-MDT-Location-Info,
	id-SignallingBasedMDTPLMNList,
	id-MobilityInformation,
	id-ULCOUNTValueExtended,
	id-DLCOUNTValueExtended,
	id-ReceiveStatusOfULPDCPSDUsExtended,
	id-eNBIndirectX2TransportLayerAddresses,
	id-Muting-Availability-Indication,
	id-Muting-Pattern-Information,
	id-NRrestrictioninEPSasSecondaryRAT,
	id-NRrestrictionin5GS,
	id-Synchronisation-Information,
	id-uE-HistoryInformationFromTheUE,
	id-LoggedMBSFNMDT,
	id-SON-Information-Report,
	id-RecommendedCellItem,
	id-RecommendedENBItem,
	id-ProSeUEtoNetworkRelaying,
	id-ULCOUNTValuePDCP-SNlength18,
	id-DLCOUNTValuePDCP-SNlength18,
	id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18,
	id-M6Configuration,
	id-M7Configuration,
	id-RAT-Type,
	id-extended-e-RAB-MaximumBitrateDL,
	id-extended-e-RAB-MaximumBitrateUL,
	id-extended-e-RAB-GuaranteedBitrateDL,
	id-extended-e-RAB-GuaranteedBitrateUL,
	id-extended-uEaggregateMaximumBitRateDL,
	id-extended-uEaggregateMaximumBitRateUL,
	id-SecondaryRATDataUsageReportItem,
	id-E-RABUsageReportItem,
	id-UEAppLayerMeasConfig,
	id-serviceType,
	id-UnlicensedSpectrumRestriction, 
	id-CNTypeRestrictions,
	id-DownlinkPacketLossRate,
	id-UplinkPacketLossRate,
	id-BluetoothMeasurementConfiguration,
	id-WLANMeasurementConfiguration,
	id-LastNG-RANPLMNIdentity,
	maxnoofCSGs,
	maxnoofE-RABs,
	maxnoofErrors,
	maxnoofBPLMNs,
	maxnoofPLMNsPerMME,
	maxnoofTACs,
	maxnoofEPLMNs,
	maxnoofEPLMNsPlusOne,
	maxnoofForbLACs,
	maxnoofForbTACs,
	maxnoofCellsinUEHistoryInfo,
	maxnoofCellID,
	maxnoofDCNs,
	maxnoofEmergencyAreaID,
	maxnoofTAIforWarning,
	maxnoofCellinTAI,
	maxnoofCellinEAI,
	maxnoofeNBX2TLAs,
	maxnoofeNBX2ExtTLAs,
	maxnoofeNBX2GTPTLAs,
	maxnoofRATs,
	maxnoofGroupIDs,
	maxnoofMMECs,
	maxnoofTAforMDT,
	maxnoofCellIDforMDT,
	maxnoofMDTPLMNs,
	maxnoofCellsforRestart,
	maxnoofRestartTAIs,
	maxnoofRestartEmergencyAreaIDs,
	maxnoofMBSFNAreaMDT,
	maxEARFCN,
	maxnoofCellsineNB,
	maxnoofRecommendedCells,
	maxnoofRecommendedENBs,
	maxnooftimeperiods,
	maxnoofCellIDforQMC,
	maxnoofTAforQMC,
	maxnoofPLMNforQMC,
	maxnoofBluetoothName,
	maxnoofWLANName,
	maxnoofConnectedengNBs




FROM S1AP-Constants

	Criticality,
	ProcedureCode,
	ProtocolIE-ID,
	TriggeringMessage
FROM S1AP-CommonDataTypes

	ProtocolExtensionContainer{},
	S1AP-PROTOCOL-EXTENSION,
	ProtocolIE-SingleContainer{},
	S1AP-PROTOCOL-IES

FROM S1AP-Containers;	

-- A

Additional-GUTI::= SEQUENCE {
	gUMMEI					GUMMEI,
	m-TMSI					M-TMSI,
	iE-Extensions			ProtocolExtensionContainer { {Additional-GUTI-ExtIEs} } OPTIONAL,
	...
}

Additional-GUTI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

AerialUEsubscriptionInformation ::= ENUMERATED { 
	allowed,
	not-allowed,
	...
}

AreaScopeOfMDT ::= CHOICE {	
	cellBased					CellBasedMDT,
	tABased						TABasedMDT,
	pLMNWide					NULL,
	...,
	tAIBased					TAIBasedMDT
}


AreaScopeOfQMC ::= CHOICE {	
	cellBased					CellBasedQMC,
	tABased						TABasedQMC,
	tAIBased						TAIBasedQMC,
	pLMNAreaBased				PLMNAreaBasedQMC,
	...
}

AllocationAndRetentionPriority ::= SEQUENCE {
	priorityLevel				PriorityLevel,
	pre-emptionCapability		Pre-emptionCapability,
	pre-emptionVulnerability	Pre-emptionVulnerability,
	iE-Extensions				ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL,
	...
}

AllocationAndRetentionPriority-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

AssistanceDataForCECapableUEs ::= SEQUENCE {
	cellIdentifierAndCELevelForCECapableUEs		CellIdentifierAndCELevelForCECapableUEs,
	iE-Extensions								ProtocolExtensionContainer { { InformationForCECapableUEs-ExtIEs} } OPTIONAL,
	...
}

InformationForCECapableUEs-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

AssistanceDataForPaging ::= SEQUENCE {
	assistanceDataForRecommendedCells	AssistanceDataForRecommendedCells		OPTIONAL,
	assistanceDataForCECapableUEs		AssistanceDataForCECapableUEs			OPTIONAL,
	pagingAttemptInformation			PagingAttemptInformation				OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { AssistanceDataForPaging-ExtIEs} }	OPTIONAL,
	...
}

AssistanceDataForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

AssistanceDataForRecommendedCells ::= SEQUENCE {
	recommendedCellsForPaging	RecommendedCellsForPaging, 
	iE-Extensions				ProtocolExtensionContainer { { AssistanceDataForRecommendedCells-ExtIEs} }	OPTIONAL,
	...
}

AssistanceDataForRecommendedCells-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

-- B

Bearers-SubjectToStatusTransferList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { { Bearers-SubjectToStatusTransfer-ItemIEs } }

Bearers-SubjectToStatusTransfer-ItemIEs S1AP-PROTOCOL-IES ::= {
	{ ID id-Bearers-SubjectToStatusTransfer-Item	CRITICALITY ignore	TYPE Bearers-SubjectToStatusTransfer-Item 	PRESENCE mandatory	},
	...
}

Bearers-SubjectToStatusTransfer-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	uL-COUNTvalue							COUNTvalue,
	dL-COUNTvalue							COUNTvalue,
	receiveStatusofULPDCPSDUs				ReceiveStatusofULPDCPSDUs			OPTIONAL,
	iE-Extensions							ProtocolExtensionContainer { {Bearers-SubjectToStatusTransfer-ItemExtIEs} } OPTIONAL,
	...
}

Bearers-SubjectToStatusTransfer-ItemExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	{ ID id-ULCOUNTValueExtended						CRITICALITY ignore	EXTENSION COUNTValueExtended				PRESENCE optional}|
	{ ID id-DLCOUNTValueExtended						CRITICALITY ignore	EXTENSION COUNTValueExtended				PRESENCE optional}|
	{ ID id-ReceiveStatusOfULPDCPSDUsExtended			CRITICALITY ignore	EXTENSION ReceiveStatusOfULPDCPSDUsExtended		PRESENCE optional}|
	{ ID id-ULCOUNTValuePDCP-SNlength18					CRITICALITY ignore	EXTENSION COUNTvaluePDCP-SNlength18			PRESENCE optional}|
	{ ID id-DLCOUNTValuePDCP-SNlength18					CRITICALITY ignore	EXTENSION COUNTvaluePDCP-SNlength18			PRESENCE optional}|
	{ ID id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18	CRITICALITY ignore	EXTENSION ReceiveStatusOfULPDCPSDUsPDCP-SNlength18	PRESENCE optional},
	...
}

BearerType ::= ENUMERATED {
	non-IP,
	...
}

BitRate	::= INTEGER (0..10000000000) 

BluetoothMeasurementConfiguration ::= SEQUENCE {
	bluetoothMeasConfig             BluetoothMeasConfig,
	bluetoothMeasConfigNameList		BluetoothMeasConfigNameList     OPTIONAL,
	bt-rssi                         ENUMERATED {true, ...}          OPTIONAL,
	iE-Extensions		ProtocolExtensionContainer { { BluetoothMeasurementConfiguration-ExtIEs } } OPTIONAL,
	...
}

BluetoothMeasurementConfiguration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

BluetoothMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofBluetoothName)) OF BluetoothName

BluetoothMeasConfig::= ENUMERATED {setup,...}

BluetoothName ::= OCTET STRING (SIZE (1..248))

BPLMNs ::= SEQUENCE (SIZE(1.. maxnoofBPLMNs)) OF PLMNidentity

BroadcastCancelledAreaList ::= CHOICE {
	cellID-Cancelled				CellID-Cancelled,
	tAI-Cancelled					TAI-Cancelled,
	emergencyAreaID-Cancelled		EmergencyAreaID-Cancelled,
	...
}

BroadcastCompletedAreaList ::= CHOICE {
	cellID-Broadcast				CellID-Broadcast,
	tAI-Broadcast					TAI-Broadcast,
	emergencyAreaID-Broadcast		EmergencyAreaID-Broadcast,
	...
}


-- C

CancelledCellinEAI ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CancelledCellinEAI-Item

CancelledCellinEAI-Item ::= SEQUENCE {
	eCGI					EUTRAN-CGI,
	numberOfBroadcasts		NumberOfBroadcasts,
	iE-Extensions			ProtocolExtensionContainer { {CancelledCellinEAI-Item-ExtIEs} } OPTIONAL,
	...
}

CancelledCellinEAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CancelledCellinTAI ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CancelledCellinTAI-Item

CancelledCellinTAI-Item ::= SEQUENCE{
	eCGI				EUTRAN-CGI,
	numberOfBroadcasts	NumberOfBroadcasts,
	iE-Extensions		ProtocolExtensionContainer { {CancelledCellinTAI-Item-ExtIEs} } OPTIONAL,
	...
}

CancelledCellinTAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Cause ::= CHOICE {
	radioNetwork		CauseRadioNetwork,
	transport			CauseTransport,
	nas					CauseNas,
	protocol			CauseProtocol,
	misc				CauseMisc,
	...
}

CauseMisc ::= ENUMERATED {
	control-processing-overload,
	not-enough-user-plane-processing-resources,
	hardware-failure,
	om-intervention,
	unspecified,
	unknown-PLMN,
...
}

CauseProtocol ::= ENUMERATED {
	transfer-syntax-error,
	abstract-syntax-error-reject,
	abstract-syntax-error-ignore-and-notify,
	message-not-compatible-with-receiver-state,
	semantic-error,
	abstract-syntax-error-falsely-constructed-message,
	unspecified,
	...
}

CauseRadioNetwork ::= ENUMERATED {
	unspecified,
	tx2relocoverall-expiry,
	successful-handover,
	release-due-to-eutran-generated-reason,
	handover-cancelled,	
	partial-handover,	
	ho-failure-in-target-EPC-eNB-or-target-system,
	ho-target-not-allowed,
	tS1relocoverall-expiry,
	tS1relocprep-expiry,
	cell-not-available,
	unknown-targetID,
	no-radio-resources-available-in-target-cell,
	unknown-mme-ue-s1ap-id,
	unknown-enb-ue-s1ap-id,
	unknown-pair-ue-s1ap-id,
	handover-desirable-for-radio-reason,
	time-critical-handover,
	resource-optimisation-handover,
	reduce-load-in-serving-cell,
	user-inactivity,
	radio-connection-with-ue-lost,
	load-balancing-tau-required,
	cs-fallback-triggered,
	ue-not-available-for-ps-service,
	radio-resources-not-available,
	failure-in-radio-interface-procedure,
	invalid-qos-combination,
	interrat-redirection,
	interaction-with-other-procedure,
	unknown-E-RAB-ID,
	multiple-E-RAB-ID-instances,
	encryption-and-or-integrity-protection-algorithms-not-supported,
	s1-intra-system-handover-triggered,
	s1-inter-system-handover-triggered,
	x2-handover-triggered,
	...,
	redirection-towards-1xRTT,
	not-supported-QCI-value,
	invalid-CSG-Id,
	release-due-to-pre-emption

}

CauseTransport ::= ENUMERATED {
	transport-resource-unavailable,
	unspecified,
	...
}

CauseNas ::= ENUMERATED {
	normal-release,
	authentication-failure,
	detach,
	unspecified,
	...,
	csg-subscription-expiry
}

CellAccessMode ::= ENUMERATED {
	hybrid, 
	...
}

CellIdentifierAndCELevelForCECapableUEs ::= SEQUENCE {
	global-Cell-ID		EUTRAN-CGI,
	cELevel				CELevel,
	iE-Extensions		ProtocolExtensionContainer { { CellIdentifierAndCELevelForCECapableUEs-ExtIEs} } OPTIONAL,
	...
}

CellIdentifierAndCELevelForCECapableUEs-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

-- Coverage Enhancement level encoded according to TS 36.331 [16] --
CELevel ::= OCTET STRING

CE-mode-B-SupportIndicator ::= ENUMERATED {
	supported,
	...
}

CellIdentity ::= BIT STRING (SIZE (28))

CellID-Broadcast ::= SEQUENCE (SIZE(1..maxnoofCellID)) OF CellID-Broadcast-Item

CellID-Broadcast-Item ::= SEQUENCE {
	eCGI				EUTRAN-CGI,
	iE-Extensions		ProtocolExtensionContainer { {CellID-Broadcast-Item-ExtIEs} } OPTIONAL,
	...
}

CellID-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CellID-Cancelled::= SEQUENCE (SIZE(1..maxnoofCellID)) OF CellID-Cancelled-Item

CellID-Cancelled-Item ::= SEQUENCE {
	eCGI				EUTRAN-CGI,
	numberOfBroadcasts	NumberOfBroadcasts,
	iE-Extensions		ProtocolExtensionContainer { {CellID-Cancelled-Item-ExtIEs} } OPTIONAL,
	...
}

CellID-Cancelled-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CellBasedMDT::= SEQUENCE {
	cellIdListforMDT	CellIdListforMDT,
	iE-Extensions		ProtocolExtensionContainer { {CellBasedMDT-ExtIEs} } OPTIONAL,
	...
}

CellBasedMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CellIdListforMDT ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF EUTRAN-CGI

CellBasedQMC::= SEQUENCE {
	cellIdListforQMC		CellIdListforQMC,
	iE-Extensions		ProtocolExtensionContainer { {CellBasedQMC-ExtIEs} } OPTIONAL,
	...
}

CellBasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CellIdListforQMC ::= SEQUENCE (SIZE(1..maxnoofCellIDforQMC)) OF EUTRAN-CGI

Cdma2000PDU	::= OCTET STRING

Cdma2000RATType ::= ENUMERATED {
	hRPD,
	onexRTT,
	...
}

Cdma2000SectorID ::= OCTET STRING

Cdma2000HOStatus ::= ENUMERATED {
	hOSuccess,
	hOFailure,
	...
}

Cdma2000HORequiredIndication ::= ENUMERATED {
	true,
	...
}

Cdma2000OneXSRVCCInfo ::= SEQUENCE {
	cdma2000OneXMEID			Cdma2000OneXMEID,
	cdma2000OneXMSI				Cdma2000OneXMSI,
	cdma2000OneXPilot			Cdma2000OneXPilot,
	iE-Extensions				ProtocolExtensionContainer { {Cdma2000OneXSRVCCInfo-ExtIEs} } OPTIONAL,
	...
}

Cdma2000OneXSRVCCInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Cdma2000OneXMEID ::= OCTET STRING

Cdma2000OneXMSI ::= OCTET STRING

Cdma2000OneXPilot ::= OCTET STRING

Cdma2000OneXRAND ::= OCTET STRING


Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ...}

CellType ::= SEQUENCE {
	cell-Size				Cell-Size,
	iE-Extensions			ProtocolExtensionContainer { { CellType-ExtIEs}}	OPTIONAL,
	...
}

CellType-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CGI ::= SEQUENCE {
	pLMNidentity	PLMNidentity,
	lAC				LAC,
	cI				CI,
	rAC				RAC												OPTIONAL,
	iE-Extensions	ProtocolExtensionContainer { {CGI-ExtIEs} }		OPTIONAL,
	...
	}

CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CI					::= OCTET STRING (SIZE (2))

CNDomain ::= ENUMERATED {
	ps, 
	cs 
}

CNTypeRestrictions::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF CNTypeRestrictions-Item

CNTypeRestrictions-Item ::= SEQUENCE {
	pLMN-Identity		PLMNidentity,
	cNType				CNType,
	iE-Extensions		ProtocolExtensionContainer { { CNTypeRestrictions-Item-ExtIEs} } OPTIONAL,
	...
}

CNTypeRestrictions-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CNType ::= ENUMERATED {
	fiveGCForbiddden,
	...
}

ConcurrentWarningMessageIndicator ::= ENUMERATED {
	true
}

ConnectedengNBList ::= SEQUENCE (SIZE(1..maxnoofConnectedengNBs)) OF ConnectedengNBItem

ConnectedengNBItem ::= SEQUENCE {
	en-gNB-ID		En-gNB-ID,
	supportedTAs	SupportedTAs,
	iE-Extensions	ProtocolExtensionContainer { {ConnectedengNBItem-ExtIEs} }	OPTIONAL,
	...
}

ConnectedengNBItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Correlation-ID		::= OCTET STRING (SIZE (4))

CSFallbackIndicator ::= ENUMERATED { 
	cs-fallback-required,
	...,
	cs-fallback-high-priority 
}

AdditionalCSFallbackIndicator ::= ENUMERATED { 
	no-restriction,
	restriction,
	...
}

CSG-Id		::= BIT STRING (SIZE (27))


CSG-IdList ::= SEQUENCE (SIZE (1.. maxnoofCSGs)) OF CSG-IdList-Item

CSG-IdList-Item ::= SEQUENCE {
	cSG-Id			CSG-Id,
	iE-Extensions	ProtocolExtensionContainer { {CSG-IdList-Item-ExtIEs} }	OPTIONAL,
	...
}

CSG-IdList-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CSGMembershipStatus ::= ENUMERATED { 
	member, 
	not-member
}


COUNTvalue ::= SEQUENCE {
	pDCP-SN			PDCP-SN,
	hFN				HFN,
	iE-Extensions	ProtocolExtensionContainer { {COUNTvalue-ExtIEs} } OPTIONAL,
	...
}
COUNTvalue-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

COUNTValueExtended  ::= SEQUENCE {
	pDCP-SNExtended		PDCP-SNExtended,
	hFNModified			HFNModified,
	iE-Extensions		ProtocolExtensionContainer { {COUNTValueExtended-ExtIEs} } OPTIONAL,
	...
}

COUNTValueExtended-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

COUNTvaluePDCP-SNlength18 ::= SEQUENCE {
	pDCP-SNlength18				PDCP-SNlength18,
	hFNforPDCP-SNlength18		HFNforPDCP-SNlength18,
	iE-Extensions				ProtocolExtensionContainer { {COUNTvaluePDCP-SNlength18-ExtIEs} } OPTIONAL,
	...
}

COUNTvaluePDCP-SNlength18-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Coverage-Level ::= ENUMERATED {
	extendedcoverage,
	...
}

CriticalityDiagnostics ::= SEQUENCE {
	procedureCode					ProcedureCode														OPTIONAL,
	triggeringMessage				TriggeringMessage													OPTIONAL,
	procedureCriticality			Criticality															OPTIONAL,
	iEsCriticalityDiagnostics		CriticalityDiagnostics-IE-List										OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer {{CriticalityDiagnostics-ExtIEs}}		OPTIONAL,
	...
}

CriticalityDiagnostics-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1.. maxnoofErrors)) OF CriticalityDiagnostics-IE-Item

CriticalityDiagnostics-IE-Item ::= SEQUENCE {
	iECriticality			Criticality,
	iE-ID					ProtocolIE-ID,
	typeOfError 			TypeOfError,
	iE-Extensions			ProtocolExtensionContainer {{CriticalityDiagnostics-IE-Item-ExtIEs}}	OPTIONAL,
	...
}

CriticalityDiagnostics-IE-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}


-- D

DataCodingScheme ::= BIT STRING (SIZE (8))

DCN-ID ::= INTEGER (0..65535)

ServedDCNs ::= SEQUENCE (SIZE(0..maxnoofDCNs)) OF ServedDCNsItem

ServedDCNsItem ::= SEQUENCE {
	dCN-ID						DCN-ID,
	relativeDCNCapacity			RelativeMMECapacity,
	iE-Extensions			ProtocolExtensionContainer { {ServedDCNsItem-ExtIEs} }	OPTIONAL,
	...
}

ServedDCNsItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

DL-CP-SecurityInformation ::= SEQUENCE {
	dl-NAS-MAC				DL-NAS-MAC,
	iE-Extensions			ProtocolExtensionContainer { { DL-CP-SecurityInformation-ExtIEs} }	OPTIONAL,
	...
}

DL-CP-SecurityInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

DL-Forwarding ::= ENUMERATED {
	dL-Forwarding-proposed,
	...
}

DL-NAS-MAC ::= BIT STRING (SIZE (16))

Direct-Forwarding-Path-Availability ::= ENUMERATED {
	directPathAvailable,
	...
}

Data-Forwarding-Not-Possible ::= ENUMERATED {
	data-Forwarding-not-Possible,
	...
}

DLNASPDUDeliveryAckRequest ::= ENUMERATED {
	requested,
	...
}

-- E

EARFCN ::= INTEGER(0..maxEARFCN, ...)

ECGIList ::= SEQUENCE (SIZE(1..maxnoofCellID)) OF EUTRAN-CGI

PWSfailedECGIList ::= SEQUENCE (SIZE(1..maxnoofCellsineNB)) OF EUTRAN-CGI

EDT-Session ::= ENUMERATED {
	true,
	...
}

EmergencyAreaIDList ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID

EmergencyAreaID ::= OCTET STRING (SIZE (3))

EmergencyAreaID-Broadcast ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID-Broadcast-Item

EmergencyAreaID-Broadcast-Item ::= SEQUENCE {
	emergencyAreaID			EmergencyAreaID,
	completedCellinEAI		CompletedCellinEAI,
	iE-Extensions			ProtocolExtensionContainer { {EmergencyAreaID-Broadcast-Item-ExtIEs} }	OPTIONAL,
	...
}

EmergencyAreaID-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

EmergencyAreaID-Cancelled ::= SEQUENCE (SIZE(1..maxnoofEmergencyAreaID)) OF EmergencyAreaID-Cancelled-Item

EmergencyAreaID-Cancelled-Item ::= SEQUENCE {
	emergencyAreaID			EmergencyAreaID,
	cancelledCellinEAI		CancelledCellinEAI,
	iE-Extensions			ProtocolExtensionContainer { {EmergencyAreaID-Cancelled-Item-ExtIEs} }	OPTIONAL,
	...
}

EmergencyAreaID-Cancelled-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

CompletedCellinEAI ::= SEQUENCE (SIZE(1..maxnoofCellinEAI)) OF CompletedCellinEAI-Item

CompletedCellinEAI-Item ::= SEQUENCE {
	eCGI					EUTRAN-CGI,
	iE-Extensions			ProtocolExtensionContainer { {CompletedCellinEAI-Item-ExtIEs} }	OPTIONAL,
	...
}

CompletedCellinEAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ECGI-List ::= SEQUENCE (SIZE(1..maxnoofCellsineNB)) OF EUTRAN-CGI

EmergencyAreaIDListForRestart	::= SEQUENCE (SIZE(1..maxnoofRestartEmergencyAreaIDs)) OF EmergencyAreaID

ENB-ID ::= CHOICE {
	macroENB-ID			BIT STRING (SIZE(20)),
	homeENB-ID			BIT STRING (SIZE(28)),
	... ,
	short-macroENB-ID 	BIT STRING (SIZE(18)),
	long-macroENB-ID		BIT STRING (SIZE(21))
}

En-gNB-ID ::= BIT STRING (SIZE(22..32, ...))

GERAN-Cell-ID ::= SEQUENCE {
	lAI				LAI,
    rAC				RAC, 
	cI				CI,
	iE-Extensions			ProtocolExtensionContainer { { GERAN-Cell-ID-ExtIEs} }	OPTIONAL,
	...
}

GERAN-Cell-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Global-ENB-ID ::= SEQUENCE {
	pLMNidentity			PLMNidentity,
	eNB-ID					ENB-ID,
	iE-Extensions			ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} }		OPTIONAL,
	...
}

GlobalENB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Global-en-gNB-ID ::= SEQUENCE {
	pLMNidentity			PLMNidentity,
	en-gNB-ID				En-gNB-ID,
	iE-Extensions			ProtocolExtensionContainer { {Global-en-gNB-ID-ExtIEs} }		OPTIONAL,
	...
}

Global-en-gNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

GUMMEIList::= SEQUENCE (SIZE (1.. maxnoofMMECs)) OF GUMMEI

ENB-StatusTransfer-TransparentContainer		::= SEQUENCE {
	bearers-SubjectToStatusTransferList		Bearers-SubjectToStatusTransferList,
	iE-Extensions			ProtocolExtensionContainer { {ENB-StatusTransfer-TransparentContainer-ExtIEs} }	OPTIONAL,
	...
}

ENB-StatusTransfer-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ENB-UE-S1AP-ID				::= INTEGER (0..16777215)

ENBname ::= PrintableString (SIZE (1..150,...))

ENBX2TLAs ::= SEQUENCE (SIZE(1.. maxnoofeNBX2TLAs)) OF TransportLayerAddress

EncryptionAlgorithms ::= BIT STRING (SIZE (16,...)) 

EN-DCSONConfigurationTransfer ::= SEQUENCE {
	transfertype				EN-DCSONTransferType,
	sONInformation					SONInformation,
	x2TNLConfigInfo					X2TNLConfigurationInfo 	OPTIONAL,
	-- This IE shall be present if the SON Information IE contains the SON Information Request IE and the SON Information Request IE is set to “X2TNL Configuration Info” --
	iE-Extensions			ProtocolExtensionContainer { {EN-DCSONConfigurationTransfer-ExtIEs} }			OPTIONAL,
...
}

EN-DCSONConfigurationTransfer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

EN-DCSONTransferType ::= CHOICE {
	request				EN-DCTransferTypeRequest,
	reply				EN-DCTransferTypeReply,
	...
}

EN-DCTransferTypeRequest ::= SEQUENCE {
	sourceeNB 				EN-DCSONeNBIdentification,
	targetengNB				EN-DCSONengNBIdentification,
	targeteNB				EN-DCSONeNBIdentification													OPTIONAL,
	associatedTAI			TAI																			OPTIONAL,
	broadcast5GSTAI			FiveGSTAI																	OPTIONAL,
	iE-Extensions			ProtocolExtensionContainer { {EN-DCTransferTypeRequest-ExtIEs} }			OPTIONAL,
...
}

EN-DCTransferTypeRequest-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

EN-DCTransferTypeReply ::= SEQUENCE {
	sourceengNB				EN-DCSONengNBIdentification,
	targeteNB 				EN-DCSONeNBIdentification,
	iE-Extensions			ProtocolExtensionContainer { {EN-DCTransferTypeReply-ExtIEs} }			OPTIONAL,
...
}

EN-DCTransferTypeReply-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

EN-DCSONeNBIdentification ::= SEQUENCE {
	globaleNBID				Global-ENB-ID,
	selectedTAI				TAI,
	iE-Extensions			ProtocolExtensionContainer { {EN-DCSONeNBIdentification-ExtIEs} }			OPTIONAL,
...
}

EN-DCSONeNBIdentification-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

EN-DCSONengNBIdentification ::= SEQUENCE {
	globalengNBID			Global-en-gNB-ID,
	selectedTAI				TAI,
	iE-Extensions			ProtocolExtensionContainer { {EN-DCSONengNBIdentification-ExtIEs} }			OPTIONAL,
...
}

EN-DCSONengNBIdentification-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

EndIndication ::= ENUMERATED {
	no-further-data,
	further-data-exists,
	...
}

EnhancedCoverageRestricted ::= ENUMERATED {
	restricted,
	...
}

CE-ModeBRestricted ::= ENUMERATED {
	restricted,
	not-restricted,
	...
}

EPLMNs ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF PLMNidentity
EventType	::= ENUMERATED {
	direct,
	change-of-serve-cell,
	stop-change-of-serve-cell,
	...
}

E-RAB-ID		::= INTEGER (0..15, ...)

E-RABInformationList	::= SEQUENCE (SIZE (1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { { E-RABInformationListIEs } }

E-RABInformationListIEs S1AP-PROTOCOL-IES ::= {
	{ ID id-E-RABInformationListItem			CRITICALITY ignore	TYPE E-RABInformationListItem			PRESENCE mandatory	},
	...
}

E-RABInformationListItem ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	dL-Forwarding					DL-Forwarding		OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABInformationListItem-ExtIEs} }			OPTIONAL,
	...
}

E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {E-RABItemIEs} }

E-RABItemIEs 	S1AP-PROTOCOL-IES ::= {
	{ ID id-E-RABItem	 CRITICALITY ignore 	TYPE E-RABItem 	PRESENCE mandatory },
	...
}

E-RABItem ::= SEQUENCE {
	e-RAB-ID					E-RAB-ID,
	cause						Cause,
	iE-Extensions				ProtocolExtensionContainer { {E-RABItem-ExtIEs} } OPTIONAL,
	...
}

E-RABItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}


E-RABLevelQoSParameters ::= SEQUENCE {
	qCI			QCI,
	allocationRetentionPriority		AllocationAndRetentionPriority,
	gbrQosInformation					GBR-QosInformation												OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { {E-RABQoSParameters-ExtIEs} }	OPTIONAL,
	...
}

E-RABUsageReportList ::= SEQUENCE (SIZE(1..maxnooftimeperiods)) OF ProtocolIE-SingleContainer { {E-RABUsageReportItemIEs} }

E-RABUsageReportItemIEs 	S1AP-PROTOCOL-IES ::= {
	{ ID id-E-RABUsageReportItem	 CRITICALITY ignore 	TYPE E-RABUsageReportItem 	PRESENCE mandatory },
	...
}

E-RABUsageReportItem ::= SEQUENCE {
	startTimestamp					OCTET STRING (SIZE(4)),
	endTimestamp					OCTET STRING (SIZE(4)),
	usageCountUL					INTEGER (0..18446744073709551615),
	usageCountDL					INTEGER (0..18446744073709551615),
	iE-Extensions				ProtocolExtensionContainer { { E-RABUsageReportItem-ExtIEs} } OPTIONAL,
	...
}

E-RABUsageReportItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABQoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extended for introduction of downlink and uplink packet loss rate for enhanced Voice performance –-
	{ ID id-DownlinkPacketLossRate		CRITICALITY ignore	EXTENSION Packet-LossRate		PRESENCE optional}|
	{ ID id-UplinkPacketLossRate			CRITICALITY ignore	EXTENSION Packet-LossRate		PRESENCE optional},
	...
}


EUTRAN-CGI ::= SEQUENCE {
	pLMNidentity			PLMNidentity,
	cell-ID					CellIdentity,
	iE-Extensions			ProtocolExtensionContainer { {EUTRAN-CGI-ExtIEs} } OPTIONAL,
	...
}

EUTRAN-CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

EUTRANRoundTripDelayEstimationInfo ::= INTEGER (0..2047)

ExpectedUEBehaviour ::= SEQUENCE {
	expectedActivity		ExpectedUEActivityBehaviour OPTIONAL,
	expectedHOInterval		ExpectedHOInterval		 	OPTIONAL,
	iE-Extensions		ProtocolExtensionContainer { { ExpectedUEBehaviour-ExtIEs} } OPTIONAL,
	...
}

ExpectedUEBehaviour-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ExpectedUEActivityBehaviour ::= SEQUENCE {
	expectedActivityPeriod					ExpectedActivityPeriod					OPTIONAL,
	expectedIdlePeriod						ExpectedIdlePeriod						OPTIONAL,
	sourceofUEActivityBehaviourInformation	SourceOfUEActivityBehaviourInformation	OPTIONAL,
	iE-Extensions		ProtocolExtensionContainer { { ExpectedUEActivityBehaviour-ExtIEs} } OPTIONAL,
	...
}

ExpectedUEActivityBehaviour-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ExpectedActivityPeriod ::= INTEGER (1..30|40|50|60|80|100|120|150|180|181,...)

ExpectedIdlePeriod ::= INTEGER (1..30|40|50|60|80|100|120|150|180|181,...)

SourceOfUEActivityBehaviourInformation ::= ENUMERATED {
	subscription-information,
	statistics,
	...
}

ExpectedHOInterval ::= ENUMERATED {
	sec15, sec30, sec60, sec90, sec120, sec180, long-time,
	...
}

ExtendedBitRate	::= INTEGER (10000000001..4000000000000, ...) 

ExtendedRNC-ID					::= INTEGER (4096..65535)

ExtendedRepetitionPeriod ::= INTEGER (4096..131071) 

Extended-UEIdentityIndexValue ::= BIT STRING (SIZE (14))

-- F

FiveGSTAC ::= OCTET STRING (SIZE (3))

FiveGSTAI ::= SEQUENCE {
	pLMNidentity			PLMNidentity,
	fiveGSTAC				FiveGSTAC,
	iE-Extensions			ProtocolExtensionContainer { {FiveGSTAI-ExtIEs} } OPTIONAL,
	...
}

FiveGSTAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ForbiddenInterRATs ::= ENUMERATED {
	all,
	geran,
	utran,
	cdma2000,
	...,
	geranandutran,
	cdma2000andutran

}

ForbiddenTAs ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ForbiddenTAs-Item

ForbiddenTAs-Item ::= SEQUENCE {
	pLMN-Identity		PLMNidentity,
	forbiddenTACs		ForbiddenTACs,
	iE-Extensions		ProtocolExtensionContainer { {ForbiddenTAs-Item-ExtIEs} } OPTIONAL,
	...
}

ForbiddenTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ForbiddenTACs ::= SEQUENCE (SIZE(1..maxnoofForbTACs)) OF TAC

ForbiddenLAs ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF ForbiddenLAs-Item

ForbiddenLAs-Item ::= SEQUENCE {
	pLMN-Identity		PLMNidentity,
	forbiddenLACs		ForbiddenLACs,
	iE-Extensions		ProtocolExtensionContainer { {ForbiddenLAs-Item-ExtIEs} } OPTIONAL,
	...
}

ForbiddenLAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ForbiddenLACs ::= SEQUENCE (SIZE(1..maxnoofForbLACs)) OF LAC

-- G

GBR-QosInformation ::= SEQUENCE {
	e-RAB-MaximumBitrateDL			BitRate,
	e-RAB-MaximumBitrateUL			BitRate,
	e-RAB-GuaranteedBitrateDL		BitRate,
	e-RAB-GuaranteedBitrateUL		BitRate,
	iE-Extensions					ProtocolExtensionContainer { { GBR-QosInformation-ExtIEs} } OPTIONAL,
	...
}

GBR-QosInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for maximum bitrate > 10G bps --	
	{ ID id-extended-e-RAB-MaximumBitrateDL	CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional}|
	{ ID id-extended-e-RAB-MaximumBitrateUL	CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional}|
	{ ID id-extended-e-RAB-GuaranteedBitrateDL	CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional}|
	{ ID id-extended-e-RAB-GuaranteedBitrateUL	CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional},
	...}


GTP-TEID					::= OCTET STRING (SIZE (4))

GUMMEI			::= SEQUENCE {
	pLMN-Identity		PLMNidentity,
	mME-Group-ID		MME-Group-ID,
	mME-Code			MME-Code,
	iE-Extensions		ProtocolExtensionContainer { {GUMMEI-ExtIEs} } OPTIONAL,
	...
}

GUMMEI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

GUMMEIType ::= ENUMERATED {
	native,
	mapped,
	...,
	mappedFrom5G
}

GWContextReleaseIndication ::= ENUMERATED {
	true,
	...
}

-- H

HandoverFlag ::= ENUMERATED {
	handoverPreparation,
	...
}


HandoverRestrictionList ::= SEQUENCE {
	servingPLMN					PLMNidentity,
	equivalentPLMNs				EPLMNs					OPTIONAL,
	forbiddenTAs				ForbiddenTAs			OPTIONAL,
	forbiddenLAs				ForbiddenLAs			OPTIONAL,
	forbiddenInterRATs			ForbiddenInterRATs		OPTIONAL, 
	iE-Extensions				ProtocolExtensionContainer { {HandoverRestrictionList-ExtIEs} }	OPTIONAL,
	...
}

HandoverRestrictionList-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	{ ID id-NRrestrictioninEPSasSecondaryRAT		CRITICALITY ignore	EXTENSION NRrestrictioninEPSasSecondaryRAT		PRESENCE optional}|
	{ ID id-UnlicensedSpectrumRestriction		CRITICALITY ignore	EXTENSION UnlicensedSpectrumRestriction	PRESENCE optional}|
	{ ID id-CNTypeRestrictions		CRITICALITY ignore	EXTENSION CNTypeRestrictions	PRESENCE optional}|
	{ ID id-NRrestrictionin5GS		CRITICALITY ignore	EXTENSION NRrestrictionin5GS 	PRESENCE optional}|
	{ ID id-LastNG-RANPLMNIdentity		CRITICALITY ignore	EXTENSION PLMNidentity			PRESENCE optional},
	...
}

HandoverType ::= ENUMERATED {
	intralte,
	ltetoutran,
	ltetogeran,
	utrantolte,
	gerantolte,
	...,
	eps-to-5gs,
	fivegs-to-eps
}

HFN ::= INTEGER (0..1048575)

HFNModified ::= INTEGER (0..131071)

HFNforPDCP-SNlength18 ::= INTEGER (0..16383)

-- I

Masked-IMEISV ::= BIT STRING (SIZE (64))

ImmediateMDT ::= SEQUENCE { 
	measurementsToActivate		MeasurementsToActivate,
	m1reportingTrigger			M1ReportingTrigger,
	m1thresholdeventA2			M1ThresholdEventA2				OPTIONAL,
-- Included in case of event-triggered, or event-triggered periodic reporting for measurement M1
	m1periodicReporting			M1PeriodicReporting				OPTIONAL,
-- Included in case of periodic or event-triggered periodic reporting
	iE-Extensions				ProtocolExtensionContainer { { ImmediateMDT-ExtIEs} } OPTIONAL,
	...
}

ImmediateMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	{ ID id-M3Configuration		CRITICALITY ignore	EXTENSION M3Configuration		PRESENCE conditional}|
	{ ID id-M4Configuration		CRITICALITY ignore	EXTENSION M4Configuration		PRESENCE conditional}|
	{ ID id-M5Configuration		CRITICALITY ignore	EXTENSION M5Configuration		PRESENCE conditional}|
	{ ID id-MDT-Location-Info	CRITICALITY ignore	EXTENSION MDT-Location-Info		PRESENCE optional}|
	{ ID id-M6Configuration		CRITICALITY ignore	EXTENSION M6Configuration		PRESENCE conditional}|
	{ ID id-M7Configuration		CRITICALITY ignore	EXTENSION M7Configuration		PRESENCE conditional}|
	{ ID id-BluetoothMeasurementConfiguration		CRITICALITY ignore	EXTENSION BluetoothMeasurementConfiguration		PRESENCE optional}|
	{ ID id-WLANMeasurementConfiguration		CRITICALITY ignore	EXTENSION WLANMeasurementConfiguration		PRESENCE optional},
	...
}

IMSI	::=	OCTET STRING (SIZE (3..8))

InformationOnRecommendedCellsAndENBsForPaging ::= SEQUENCE {
	recommendedCellsForPaging	RecommendedCellsForPaging,
	recommendENBsForPaging		RecommendedENBsForPaging,
	iE-Extensions				ProtocolExtensionContainer { { InformationOnRecommendedCellsAndENBsForPaging-ExtIEs} }	OPTIONAL,
	...
}

InformationOnRecommendedCellsAndENBsForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

IntegrityProtectionAlgorithms ::= BIT STRING (SIZE (16,...))

IntendedNumberOfPagingAttempts ::= INTEGER (1..16, ...)

InterfacesToTrace ::= BIT STRING (SIZE (8))



-- J
-- K

KillAllWarningMessages ::= ENUMERATED {true}

-- L


LAC	::= OCTET STRING (SIZE (2))

LAI ::= SEQUENCE {
	pLMNidentity				PLMNidentity,
	lAC				LAC,
	iE-Extensions			ProtocolExtensionContainer { {LAI-ExtIEs} } OPTIONAL,
	...
}

LAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

LastVisitedCell-Item ::= CHOICE {
	e-UTRAN-Cell					LastVisitedEUTRANCellInformation,
	uTRAN-Cell						LastVisitedUTRANCellInformation,
	gERAN-Cell						LastVisitedGERANCellInformation,
	...,
	nG-RAN-Cell						LastVisitedNGRANCellInformation
}
LastVisitedEUTRANCellInformation ::= SEQUENCE {
	global-Cell-ID					EUTRAN-CGI,
	cellType						CellType,
	time-UE-StayedInCell			Time-UE-StayedInCell,
	iE-Extensions					ProtocolExtensionContainer { { LastVisitedEUTRANCellInformation-ExtIEs} } OPTIONAL,
	...
}
LastVisitedEUTRANCellInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Rel-11 to support enhanced granularity for time UE stayed in cell --
	{ ID id-Time-UE-StayedInCell-EnhancedGranularity	CRITICALITY ignore	EXTENSION Time-UE-StayedInCell-EnhancedGranularity	PRESENCE optional}|
	{ ID id-HO-Cause									CRITICALITY ignore	EXTENSION Cause							PRESENCE optional},
	...
}

LastVisitedNGRANCellInformation	::= OCTET STRING

LastVisitedUTRANCellInformation	::= OCTET STRING

LastVisitedGERANCellInformation ::= CHOICE {
	undefined						NULL,
	...
}

L3-Information				::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

LPPa-PDU ::=  OCTET STRING

LHN-ID ::=  OCTET STRING(SIZE (32..256))

Links-to-log ::= ENUMERATED {uplink, downlink, both-uplink-and-downlink, ...} 

ListeningSubframePattern ::= SEQUENCE {
	pattern-period				ENUMERATED {ms1280, ms2560, ms5120, ms10240, ...},
	pattern-offset				INTEGER (0..10239, ...),
	iE-Extensions				ProtocolExtensionContainer { { ListeningSubframePattern-ExtIEs} } OPTIONAL,
	...
}

ListeningSubframePattern-ExtIEs	S1AP-PROTOCOL-EXTENSION ::= {
...
}

LoggedMDT ::= SEQUENCE {
	loggingInterval				LoggingInterval,
	loggingDuration				LoggingDuration,
	iE-Extensions				ProtocolExtensionContainer { {LoggedMDT-ExtIEs} } OPTIONAL,
	...
}

LoggedMDT-ExtIEs	S1AP-PROTOCOL-EXTENSION ::= {
	{ ID id-BluetoothMeasurementConfiguration		CRITICALITY ignore	EXTENSION BluetoothMeasurementConfiguration		PRESENCE optional}|
	{ ID id-WLANMeasurementConfiguration			CRITICALITY ignore	EXTENSION WLANMeasurementConfiguration				PRESENCE optional},
...
}

LoggingInterval ::= ENUMERATED {ms128, ms256, ms512, ms1024, ms2048, ms3072, ms4096, ms6144}

LoggingDuration ::= ENUMERATED {m10, m20, m40, m60, m90, m120}

LoggedMBSFNMDT ::= SEQUENCE {
	loggingInterval				LoggingInterval,
	loggingDuration				LoggingDuration,
	mBSFN-ResultToLog			MBSFN-ResultToLog		OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { { LoggedMBSFNMDT-ExtIEs } } OPTIONAL,
	...
}

LoggedMBSFNMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

LTE-M-Indication ::= ENUMERATED {lte-m, ... }

-- M

M3Configuration ::= SEQUENCE {
	m3period			M3period,
	iE-Extensions		ProtocolExtensionContainer { { M3Configuration-ExtIEs} } OPTIONAL,
	...
}

M3Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

M3period ::= ENUMERATED {ms100, ms1000, ms10000, ...,ms1024, ms1280, ms2048, ms2560, ms5120, ms10240, min1 } 

M4Configuration ::= SEQUENCE {
	m4period			M4period,
	m4-links-to-log		Links-to-log,
	iE-Extensions		ProtocolExtensionContainer { { M4Configuration-ExtIEs} } OPTIONAL,
	...
}

M4Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

M4period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } 

M5Configuration ::= SEQUENCE {
	m5period			M5period,
	m5-links-to-log		Links-to-log,
	iE-Extensions		ProtocolExtensionContainer { { M5Configuration-ExtIEs} } OPTIONAL,
	...
}

M5Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

M5period ::= ENUMERATED {ms1024, ms2048, ms5120, ms10240, min1, ... } 

M6Configuration ::= SEQUENCE {
	m6report-Interval	M6report-Interval,
	m6delay-threshold	M6delay-threshold		OPTIONAL,
-- This IE shall be present if the M6 Links to log IE is set to “uplink” or to “both-uplink-and-downlink” --
	m6-links-to-log		Links-to-log,
	iE-Extensions		ProtocolExtensionContainer { { M6Configuration-ExtIEs} } OPTIONAL,
	...
}

M6Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

M6report-Interval ::= ENUMERATED { ms1024, ms2048, ms5120, ms10240, ... }

M6delay-threshold ::= ENUMERATED { ms30, ms40, ms50, ms60, ms70, ms80, ms90, ms100, ms150, ms300, ms500, ms750, ... }

M7Configuration ::= SEQUENCE {
	m7period			M7period,
	m7-links-to-log		Links-to-log,
	iE-Extensions		ProtocolExtensionContainer { { M7Configuration-ExtIEs} } OPTIONAL,
	...
}

M7Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

M7period ::= INTEGER(1..60, ...)

MDT-Activation 	::= ENUMERATED { 
	immediate-MDT-only,
	immediate-MDT-and-Trace,
	logged-MDT-only,
	...,
	logged-MBSFN-MDT
}

MDT-Location-Info ::= BIT STRING (SIZE (8))

MDT-Configuration ::= SEQUENCE {
	mdt-Activation		MDT-Activation,
	areaScopeOfMDT		AreaScopeOfMDT,
	mDTMode				MDTMode,
	iE-Extensions		ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL,
	...
}
MDT-Configuration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	{ ID id-SignallingBasedMDTPLMNList			CRITICALITY ignore	EXTENSION MDTPLMNList	PRESENCE optional	},
	...
}

ManagementBasedMDTAllowed ::= ENUMERATED {allowed, ...}

MBSFN-ResultToLog ::= SEQUENCE (SIZE(1..maxnoofMBSFNAreaMDT)) OF MBSFN-ResultToLogInfo

MBSFN-ResultToLogInfo ::= SEQUENCE {
	mBSFN-AreaId		INTEGER (0..255)		OPTIONAL,
	carrierFreq			EARFCN,	
	iE-Extensions		ProtocolExtensionContainer { { MBSFN-ResultToLogInfo-ExtIEs} } OPTIONAL,
	...
}

MBSFN-ResultToLogInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMNidentity

PrivacyIndicator ::= ENUMERATED {
	immediate-MDT,
	logged-MDT,
	...
}

MDTMode ::= CHOICE {
	immediateMDT				ImmediateMDT,
	loggedMDT					LoggedMDT,
	...,
	mDTMode-Extension			MDTMode-Extension
}

MDTMode-Extension ::= ProtocolIE-SingleContainer {{ MDTMode-ExtensionIE }}

MDTMode-ExtensionIE S1AP-PROTOCOL-IES ::= {
	{ ID id-LoggedMBSFNMDT		CRITICALITY ignore	TYPE LoggedMBSFNMDT		PRESENCE mandatory}
}

MeasurementsToActivate ::= BIT STRING (SIZE (8))

MeasurementThresholdA2 ::= CHOICE { 
	threshold-RSRP				Threshold-RSRP,
	threshold-RSRQ				Threshold-RSRQ,
	...
}

MessageIdentifier	::= BIT STRING (SIZE (16))

MobilityInformation ::= BIT STRING (SIZE(32))

MMEname ::= PrintableString (SIZE (1..150,...))

MMEPagingTarget ::= CHOICE {
	global-ENB-ID		Global-ENB-ID,
	tAI					TAI,
	...
}

MMERelaySupportIndicator ::= ENUMERATED {true, ...}

MME-Group-ID	::= OCTET STRING (SIZE (2))

MME-Code		::= OCTET STRING (SIZE (1))

MME-UE-S1AP-ID	::= INTEGER (0..4294967295)
M-TMSI			::= OCTET STRING (SIZE (4))

MSClassmark2	::= OCTET STRING
MSClassmark3	::= OCTET STRING

MutingAvailabilityIndication ::= ENUMERATED {
	available,
	unavailable,
	...
}


MutingPatternInformation ::= SEQUENCE {
	muting-pattern-period				ENUMERATED {ms0, ms1280, ms2560, ms5120, ms10240, ...},
	muting-pattern-offset				INTEGER (0..10239, ...)		OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { {MutingPatternInformation-ExtIEs} } OPTIONAL,
	...
}

MutingPatternInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

-- N

NAS-PDU ::=  OCTET STRING

NASSecurityParametersfromE-UTRAN ::= OCTET STRING

NASSecurityParameterstoE-UTRAN ::= OCTET STRING

NB-IoT-DefaultPagingDRX ::= ENUMERATED {
	v128,
	v256,
	v512,
	v1024,
	...
	}

NB-IoT-Paging-eDRXInformation ::= SEQUENCE { 
	nB-IoT-paging-eDRX-Cycle		NB-IoT-Paging-eDRX-Cycle,
	nB-IoT-pagingTimeWindow			NB-IoT-PagingTimeWindow			OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { NB-IoT-Paging-eDRXInformation-ExtIEs} } OPTIONAL,
	...
}

NB-IoT-Paging-eDRXInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

NB-IoT-Paging-eDRX-Cycle ::= ENUMERATED{hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, hf512, hf1024, ...}

NB-IoT-PagingTimeWindow ::= ENUMERATED{s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, ...}

NB-IoT-UEIdentityIndexValue ::= BIT STRING (SIZE (12))

NextPagingAreaScope ::= ENUMERATED {
	same,
	changed,
	...
}


NRCellIdentity ::= BIT STRING (SIZE(36))

NR-CGI ::= SEQUENCE {
	pLMNIdentity		PLMNidentity,
	nRCellIdentity		NRCellIdentity,
	iE-Extensions		ProtocolExtensionContainer { {NR-CGI-ExtIEs} } OPTIONAL,
	...
}

NR-CGI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}


NRencryptionAlgorithms ::= BIT STRING (SIZE (16,...))
NRintegrityProtectionAlgorithms ::= BIT STRING (SIZE (16,...))

NRrestrictioninEPSasSecondaryRAT ::= ENUMERATED {
	nRrestrictedinEPSasSecondaryRAT,
	...
}

NRrestrictionin5GS ::= ENUMERATED {
	nRrestrictedin5GS,
	...
}

NRUESecurityCapabilities ::= SEQUENCE {
	nRencryptionAlgorithms				NRencryptionAlgorithms,
	nRintegrityProtectionAlgorithms		NRintegrityProtectionAlgorithms,
	iE-Extensions						ProtocolExtensionContainer { { NRUESecurityCapabilities-ExtIEs} }	OPTIONAL,
...
}

NRUESecurityCapabilities-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

NumberofBroadcastRequest ::= INTEGER (0..65535)

NumberOfBroadcasts ::= INTEGER (0..65535)

-- O
OldBSS-ToNewBSS-Information		::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

OverloadAction ::= ENUMERATED {
	reject-non-emergency-mo-dt,
	reject-rrc-cr-signalling,
	permit-emergency-sessions-and-mobile-terminated-services-only,
	...,
	permit-high-priority-sessions-and-mobile-terminated-services-only,
	reject-delay-tolerant-access,
	permit-high-priority-sessions-and-exception-reporting-and-mobile-terminated-services-only,
	not-accept-mo-data-or-delay-tolerant-access-from-CP-CIoT

}

OverloadResponse ::= CHOICE {
	overloadAction					OverloadAction,
	...
}


-- P

Packet-LossRate	::= INTEGER(0..1000)

PagingAttemptInformation ::= SEQUENCE {
	pagingAttemptCount					PagingAttemptCount,
	intendedNumberOfPagingAttempts		IntendedNumberOfPagingAttempts,
	nextPagingAreaScope					NextPagingAreaScope		OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { PagingAttemptInformation-ExtIEs} } OPTIONAL,
	...
}

PagingAttemptInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

PagingAttemptCount ::= INTEGER (1..16, ...)

Paging-eDRXInformation ::= SEQUENCE { 
	paging-eDRX-Cycle			Paging-eDRX-Cycle,
	pagingTimeWindow			PagingTimeWindow			OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { { Paging-eDRXInformation-ExtIEs} } OPTIONAL,
	...
}

Paging-eDRXInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Paging-eDRX-Cycle ::= ENUMERATED{hfhalf, hf1, hf2, hf4, hf6, hf8, hf10, hf12, hf14, hf16, hf32, hf64, hf128, hf256, ...}

PagingTimeWindow ::= ENUMERATED{s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, ...}

PagingDRX ::= ENUMERATED {
	v32,
	v64,
	v128,
	v256,
	...
	}

PagingPriority ::= ENUMERATED {
	priolevel1,
	priolevel2,
	priolevel3,
	priolevel4,
	priolevel5,
	priolevel6,
	priolevel7,
	priolevel8,
	...
}

PDCP-SN ::= INTEGER (0..4095)

PDCP-SNExtended ::= INTEGER (0..32767)

PDCP-SNlength18 ::= INTEGER (0..262143)

PendingDataIndication ::= ENUMERATED {
	true,
	...
}

M1PeriodicReporting ::= SEQUENCE { 
	reportInterval				ReportIntervalMDT,
	reportAmount				ReportAmountMDT,
	iE-Extensions				ProtocolExtensionContainer { { M1PeriodicReporting-ExtIEs} } OPTIONAL,
	...
}

M1PeriodicReporting-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

PLMNidentity 				::= TBCD-STRING 

PLMNAreaBasedQMC ::= SEQUENCE {
	plmnListforQMC		PLMNListforQMC,
	iE-Extensions		ProtocolExtensionContainer { {PLMNAreaBasedQMC-ExtIEs} } OPTIONAL,
	...
}

PLMNAreaBasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

PLMNListforQMC ::= SEQUENCE (SIZE(1..maxnoofPLMNforQMC)) OF PLMNidentity

Port-Number		::= OCTET STRING (SIZE (2))

Pre-emptionCapability ::= ENUMERATED {
	shall-not-trigger-pre-emption,
	may-trigger-pre-emption
}

Pre-emptionVulnerability ::= ENUMERATED {
	not-pre-emptable,
	pre-emptable
}

PriorityLevel				::= INTEGER { spare (0), highest (1), lowest (14), no-priority (15) } (0..15)

ProSeAuthorized ::= SEQUENCE {
	proSeDirectDiscovery		ProSeDirectDiscovery									OPTIONAL,
	proSeDirectCommunication	ProSeDirectCommunication								OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { {ProSeAuthorized-ExtIEs} }	OPTIONAL,
	...
}

ProSeAuthorized-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	{ ID id-ProSeUEtoNetworkRelaying	CRITICALITY ignore	EXTENSION ProSeUEtoNetworkRelaying		PRESENCE optional},
	...
}

ProSeDirectDiscovery ::= ENUMERATED { 
	authorized,
	not-authorized,
	...
}

ProSeUEtoNetworkRelaying ::= ENUMERATED {
	authorized,
	not-authorized,
	...
}

ProSeDirectCommunication ::= ENUMERATED { 
	authorized,
	not-authorized,
	...
}

PS-ServiceNotAvailable ::= ENUMERATED {
	ps-service-not-available,
	...
}

PSCellInformation ::= SEQUENCE {
	nCGI						NR-CGI,
	iE-Extensions				ProtocolExtensionContainer { { PSCellInformation-ExtIEs} }	OPTIONAL,
	...
}

PSCellInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

-- Q

QCI						::= INTEGER (0..255)

-- R

ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096))

ReceiveStatusOfULPDCPSDUsExtended ::= BIT STRING (SIZE(1..16384))

ReceiveStatusOfULPDCPSDUsPDCP-SNlength18 ::= BIT STRING (SIZE(1..131072))

RecommendedCellsForPaging ::= SEQUENCE {
	recommendedCellList			RecommendedCellList,
	iE-Extensions				ProtocolExtensionContainer { { RecommendedCellsForPaging-ExtIEs} }	OPTIONAL,
	...
}

RecommendedCellsForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

RecommendedCellList ::= SEQUENCE (SIZE(1.. maxnoofRecommendedCells)) OF ProtocolIE-SingleContainer { { RecommendedCellItemIEs } }

RecommendedCellItemIEs S1AP-PROTOCOL-IES ::= {
	{ ID id-RecommendedCellItem	CRITICALITY ignore 	TYPE RecommendedCellItem		PRESENCE mandatory },
	...
}

RecommendedCellItem::= SEQUENCE {
	eUTRAN-CGI				EUTRAN-CGI,
	timeStayedInCell		INTEGER (0..4095)		OPTIONAL,
	iE-Extensions			ProtocolExtensionContainer { { RecommendedCellsForPagingItem-ExtIEs} }	OPTIONAL,
	...
}

RecommendedCellsForPagingItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

RecommendedENBsForPaging ::= SEQUENCE {
	recommendedENBList		RecommendedENBList,
	iE-Extensions			ProtocolExtensionContainer { { RecommendedENBsForPaging-ExtIEs} }	OPTIONAL,
	...
}

RecommendedENBsForPaging-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

RecommendedENBList::= SEQUENCE (SIZE(1.. maxnoofRecommendedENBs)) OF ProtocolIE-SingleContainer { { RecommendedENBItemIEs } }

RecommendedENBItemIEs S1AP-PROTOCOL-IES ::= {
	{ ID id-RecommendedENBItem	CRITICALITY ignore	TYPE RecommendedENBItem		PRESENCE mandatory },
	...
}

RecommendedENBItem ::= SEQUENCE {
	mMEPagingTarget			MMEPagingTarget,
	iE-Extensions			ProtocolExtensionContainer { { RecommendedENBItem-ExtIEs} }	OPTIONAL,
	...
}

RecommendedENBItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

RelativeMMECapacity				::= INTEGER (0..255)

RelayNode-Indicator ::= ENUMERATED {
	true,
	...
}

RAC					::= OCTET STRING (SIZE (1))

RAT-Type ::= ENUMERATED {
	nbiot,
	...
}

ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, rinfinity}

ReportIntervalMDT ::= ENUMERATED {ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60} 

M1ReportingTrigger ::= ENUMERATED{
	periodic,
	a2eventtriggered,
	...,
	a2eventtriggered-periodic
}

RequestType	::= SEQUENCE {
	eventType 				EventType,
	reportArea 				ReportArea,
	iE-Extensions			ProtocolExtensionContainer { { RequestType-ExtIEs} }	OPTIONAL,
	...
}


RequestType-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

RIMTransfer ::= SEQUENCE {
	rIMInformation			RIMInformation,
	rIMRoutingAddress		RIMRoutingAddress		OPTIONAL,
	iE-Extensions			ProtocolExtensionContainer { { RIMTransfer-ExtIEs} }	OPTIONAL,
	...
}

RIMTransfer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

RIMInformation ::= OCTET STRING

RIMRoutingAddress ::= CHOICE {
	gERAN-Cell-ID			GERAN-Cell-ID,
	...,
	targetRNC-ID			TargetRNC-ID,
	eHRPD-Sector-ID			OCTET STRING (SIZE(16))
}

ReportArea ::= ENUMERATED {
	ecgi,
	...
}

RepetitionPeriod ::= INTEGER (0..4095)

RLFReportInformation ::= SEQUENCE {
	uE-RLF-Report-Container							UE-RLF-Report-Container,
	uE-RLF-Report-Container-for-extended-bands		UE-RLF-Report-Container-for-extended-bands		OPTIONAL,
	iE-Extensions									ProtocolExtensionContainer {{ RLFReportInformation-ExtIEs}} OPTIONAL,
	...
}

RLFReportInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

RNC-ID ::= INTEGER (0..4095)

RRC-Container ::= OCTET STRING

RRC-Establishment-Cause ::= ENUMERATED {
	emergency,
	highPriorityAccess,
	mt-Access,
	mo-Signalling,
	mo-Data,
	...,
	delay-TolerantAccess,
	mo-VoiceCall,
	mo-ExceptionData
}

ECGIListForRestart ::= SEQUENCE (SIZE(1..maxnoofCellsforRestart)) OF EUTRAN-CGI

Routing-ID ::= INTEGER (0..255)

-- S


SecurityKey	::= BIT STRING (SIZE(256))



SecurityContext ::= SEQUENCE {
	nextHopChainingCount		INTEGER (0..7),
	nextHopParameter			SecurityKey,
	iE-Extensions				ProtocolExtensionContainer { { SecurityContext-ExtIEs} }	OPTIONAL,
	...
}


SecurityContext-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

SecondaryRATType ::= ENUMERATED {
	nR,
	...,
	unlicensed
}


SecondaryRATDataUsageRequest ::= ENUMERATED {
	requested,
	...
}

SecondaryRATDataUsageReportList ::= SEQUENCE (SIZE(1.. maxnoofE-RABs)) OF ProtocolIE-SingleContainer { {SecondaryRATDataUsageReportItemIEs} }

SecondaryRATDataUsageReportItemIEs 	S1AP-PROTOCOL-IES ::= {
	{ ID id-SecondaryRATDataUsageReportItem	 CRITICALITY ignore 	TYPE SecondaryRATDataUsageReportItem 	PRESENCE mandatory },
	...
}

SecondaryRATDataUsageReportItem ::= SEQUENCE {
	e-RAB-ID					E-RAB-ID,
	secondaryRATType			SecondaryRATType,
	e-RABUsageReportList		E-RABUsageReportList,
	iE-Extensions				ProtocolExtensionContainer { { SecondaryRATDataUsageReportItem-ExtIEs} } OPTIONAL,
	...
}

SecondaryRATDataUsageReportItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

SerialNumber ::= BIT STRING (SIZE (16))

ServiceType ::= ENUMERATED{
	qMC-for-streaming-service,
	qMC-for-MTSI-service,
	...
}

SONInformation ::= CHOICE{
	sONInformationRequest		SONInformationRequest,
	sONInformationReply			SONInformationReply,
	...,
	sONInformation-Extension	SONInformation-Extension
}

SONInformation-Extension ::= ProtocolIE-SingleContainer {{ SONInformation-ExtensionIE }}

SONInformation-ExtensionIE S1AP-PROTOCOL-IES ::= {
	{ ID id-SON-Information-Report	CRITICALITY ignore	TYPE SONInformationReport	PRESENCE mandatory}
}

SONInformationRequest ::= ENUMERATED { 
	x2TNL-Configuration-Info,
	...,
	time-Synchronisation-Info,
	activate-Muting,
	deactivate-Muting}

SONInformationReply ::= SEQUENCE {
	x2TNLConfigurationInfo			X2TNLConfigurationInfo			OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer {{SONInformationReply-ExtIEs}} OPTIONAL,
	...
}

SONInformationReply-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Release 9 to transfer Time synchronisation information --
	{ID id-Time-Synchronisation-Info		CRITICALITY ignore	EXTENSION TimeSynchronisationInfo		PRESENCE optional},
	...,
	{ID id-Muting-Pattern-Information		CRITICALITY ignore	EXTENSION MutingPatternInformation	PRESENCE optional}
}

SONInformationReport ::= CHOICE{
	rLFReportInformation		RLFReportInformation,
	...
}

SONConfigurationTransfer ::= SEQUENCE {
	targeteNB-ID					TargeteNB-ID,
	sourceeNB-ID					SourceeNB-ID,
	sONInformation					SONInformation,
	iE-Extensions			ProtocolExtensionContainer { { SONConfigurationTransfer-ExtIEs} }			OPTIONAL,
...
}

SONConfigurationTransfer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Release 10 to transfer the IP addresses of the eNB initiating the ANR action --
	{ID id-x2TNLConfigurationInfo		CRITICALITY ignore	EXTENSION X2TNLConfigurationInfo				PRESENCE conditional
	-- This IE shall be present if the SON Information IE contains the SON Information Request IE and the SON Information Request IE is set to “X2TNL Configuration Info” --}|
-- Extension for Release 12 to transfer information concerning the source cell of synchronisation and the aggressor cell --
	{ID id-Synchronisation-Information	CRITICALITY ignore	EXTENSION SynchronisationInformation			PRESENCE conditional
	-- This IE shall be present if the SON Information IE contains the SON Information Request IE set to “ Activate Muting ” --},
	...
}


SynchronisationInformation ::= SEQUENCE {
	sourceStratumLevel				StratumLevel				OPTIONAL,
	listeningSubframePattern		ListeningSubframePattern	OPTIONAL,
	aggressoreCGI-List				ECGI-List					OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {SynchronisationInformation-ExtIEs} } OPTIONAL,
	...
}

SynchronisationInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}


Source-ToTarget-TransparentContainer ::= OCTET STRING
-- This IE includes a transparent container from the source RAN node to the target RAN node. 
-- The octets of the OCTET STRING are encoded according to the specifications of the target system.

SourceBSS-ToTargetBSS-TransparentContainer		::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

SourceeNB-ID ::= SEQUENCE {
	global-ENB-ID	Global-ENB-ID,
	selected-TAI	TAI,
	iE-Extensions	ProtocolExtensionContainer { {SourceeNB-ID-ExtIEs} } OPTIONAL
}

SourceeNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

SRVCCOperationNotPossible ::= ENUMERATED {
	notPossible,
	...
}

SRVCCOperationPossible ::= ENUMERATED {
	possible,
	...
}

SRVCCHOIndication ::= ENUMERATED {
	pSandCS,
	cSonly,
	...
}

SourceeNB-ToTargeteNB-TransparentContainer		::= SEQUENCE {
	rRC-Container				RRC-Container,
	e-RABInformationList		E-RABInformationList			OPTIONAL,
	targetCell-ID				EUTRAN-CGI,
	subscriberProfileIDforRFP	SubscriberProfileIDforRFP		OPTIONAL,
	uE-HistoryInformation		UE-HistoryInformation,
	iE-Extensions				ProtocolExtensionContainer { {SourceeNB-ToTargeteNB-TransparentContainer-ExtIEs} } OPTIONAL,
	...
}

SourceeNB-ToTargeteNB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	{ID id-MobilityInformation				CRITICALITY ignore	EXTENSION MobilityInformation				PRESENCE optional}|
	{ID id-uE-HistoryInformationFromTheUE	CRITICALITY ignore	EXTENSION UE-HistoryInformationFromTheUE		PRESENCE optional},
	...
}


SourceRNC-ToTargetRNC-TransparentContainer		::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

SourceNgRanNode-ToTargetNgRanNode-TransparentContainer		::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

ServedGUMMEIs ::= SEQUENCE (SIZE (1.. maxnoofRATs)) OF ServedGUMMEIsItem

ServedGUMMEIsItem ::= SEQUENCE {
	servedPLMNs				ServedPLMNs,
	servedGroupIDs			ServedGroupIDs,
	servedMMECs				ServedMMECs,
	iE-Extensions			ProtocolExtensionContainer { {ServedGUMMEIsItem-ExtIEs} }	OPTIONAL,
	...
}

ServedGUMMEIsItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ServedGroupIDs ::= SEQUENCE (SIZE(1.. maxnoofGroupIDs)) OF MME-Group-ID
ServedMMECs ::= SEQUENCE (SIZE(1.. maxnoofMMECs)) OF MME-Code

ServedPLMNs ::= SEQUENCE (SIZE(1.. maxnoofPLMNsPerMME)) OF PLMNidentity

SubscriberProfileIDforRFP ::= INTEGER (1..256) 

Subscription-Based-UE-DifferentiationInfo ::= SEQUENCE {
	periodicCommunicationIndicator	ENUMERATED {periodically, ondemand, ...} 	OPTIONAL,
	periodicTime						INTEGER (1..3600, ...) 						OPTIONAL,
	scheduledCommunicationTime		ScheduledCommunicationTime 					OPTIONAL,
	stationaryIndication				ENUMERATED {stationary, mobile, ...}			OPTIONAL,
	trafficProfile 					ENUMERATED {single-packet, dual-packets, multiple-packets, ...} 			OPTIONAL,
	batteryIndication				ENUMERATED {battery-powered, battery-powered-not-rechargeable-or-replaceable, not-battery-powered, ...}		OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { Subscription-Based-UE-DifferentiationInfo-ExtIEs} } OPTIONAL,
	...
}

Subscription-Based-UE-DifferentiationInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ScheduledCommunicationTime ::= SEQUENCE {
	dayofWeek				BIT STRING (SIZE(7))									OPTIONAL,
	timeofDayStart			INTEGER (0..86399, ...) 								OPTIONAL,
	timeofDayEnd				INTEGER (0..86399, ...) 								OPTIONAL,
	iE-Extensions			ProtocolExtensionContainer { { ScheduledCommunicationTime-ExtIEs}}	OPTIONAL,
	...
}

ScheduledCommunicationTime-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

SupportedTAs ::= SEQUENCE (SIZE(1.. maxnoofTACs)) OF SupportedTAs-Item

SupportedTAs-Item ::=	SEQUENCE  {
	tAC					TAC,
	broadcastPLMNs		BPLMNs,
	iE-Extensions		ProtocolExtensionContainer { {SupportedTAs-Item-ExtIEs} } OPTIONAL,
	...
}

SupportedTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	-- Extension for Release 13 to transfer RAT-Type per TAC --
	{ID id-RAT-Type		CRITICALITY reject	EXTENSION RAT-Type		PRESENCE optional},
	...
}

StratumLevel ::= INTEGER (0..3, ...)

SynchronisationStatus ::= ENUMERATED { synchronous, asynchronous, ... }

TimeSynchronisationInfo ::= SEQUENCE {
	stratumLevel					StratumLevel,
	synchronisationStatus			SynchronisationStatus,
	iE-Extensions					ProtocolExtensionContainer { { TimeSynchronisationInfo-ExtIEs} } OPTIONAL,
	...
}

TimeSynchronisationInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	-- Extension for Release 12 to transfer Muting Availability Indication --
	{ID id-Muting-Availability-Indication		CRITICALITY ignore	EXTENSION MutingAvailabilityIndication	PRESENCE optional},
	...
}

S-TMSI ::= SEQUENCE {
	mMEC	MME-Code,
	m-TMSI	M-TMSI,
	iE-Extensions		ProtocolExtensionContainer { {S-TMSI-ExtIEs} } OPTIONAL,
	...
}

S-TMSI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

-- T

TAC ::= OCTET STRING (SIZE (2))

TAIBasedMDT ::= SEQUENCE {
	tAIListforMDT			TAIListforMDT,
	iE-Extensions			ProtocolExtensionContainer { {TAIBasedMDT-ExtIEs} } OPTIONAL,
	...
}

TAIBasedMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TAIListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAI

TAIListforWarning ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI

TAI ::= SEQUENCE {
	pLMNidentity			PLMNidentity,
	tAC						TAC,
	iE-Extensions			ProtocolExtensionContainer { {TAI-ExtIEs} } OPTIONAL,
	...
}

TAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TAI-Broadcast ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI-Broadcast-Item

TAI-Broadcast-Item ::= SEQUENCE {
	tAI					TAI,
	completedCellinTAI	CompletedCellinTAI,
	iE-Extensions		ProtocolExtensionContainer { {TAI-Broadcast-Item-ExtIEs} } OPTIONAL,
	...
}

TAI-Broadcast-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TAI-Cancelled ::= SEQUENCE (SIZE(1..maxnoofTAIforWarning)) OF TAI-Cancelled-Item

TAI-Cancelled-Item ::= SEQUENCE {
	tAI					TAI,
	cancelledCellinTAI	CancelledCellinTAI,
	iE-Extensions		ProtocolExtensionContainer { {TAI-Cancelled-Item-ExtIEs} } OPTIONAL,
	...
}

TAI-Cancelled-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TABasedMDT ::= SEQUENCE {
	tAListforMDT		TAListforMDT,
	iE-Extensions		ProtocolExtensionContainer { {TABasedMDT-ExtIEs} } OPTIONAL,
	...
}

TABasedMDT-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC

TABasedQMC ::= SEQUENCE {
	tAListforQMC		TAListforQMC,
	iE-Extensions		ProtocolExtensionContainer { {TABasedQMC-ExtIEs} } OPTIONAL,
	...
}

TABasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TAListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAC

TAIBasedQMC ::= SEQUENCE {
	tAIListforQMC		TAIListforQMC,
	iE-Extensions		ProtocolExtensionContainer { {TAIBasedQMC-ExtIEs} } OPTIONAL,
	...
}

TAIBasedQMC-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TAIListforQMC ::= SEQUENCE (SIZE(1..maxnoofTAforQMC)) OF TAI

CompletedCellinTAI ::= SEQUENCE (SIZE(1..maxnoofCellinTAI)) OF CompletedCellinTAI-Item

CompletedCellinTAI-Item ::= SEQUENCE{
	eCGI				EUTRAN-CGI,
	iE-Extensions		ProtocolExtensionContainer { {CompletedCellinTAI-Item-ExtIEs} } OPTIONAL,
	...
}

CompletedCellinTAI-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TBCD-STRING ::= OCTET STRING (SIZE (3))

TargetID ::= CHOICE {
	targeteNB-ID		TargeteNB-ID,
	targetRNC-ID		TargetRNC-ID,
	cGI					CGI,
	...,
	targetgNgRanNode-ID		TargetNgRanNode-ID
}

TargeteNB-ID ::= SEQUENCE {
	global-ENB-ID		Global-ENB-ID,
	selected-TAI		TAI,
	iE-Extensions		ProtocolExtensionContainer { {TargeteNB-ID-ExtIEs} } OPTIONAL,
	...
}

TargeteNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TargetRNC-ID ::= SEQUENCE {
	lAI					LAI,
	rAC					RAC 		OPTIONAL,
	rNC-ID				RNC-ID,
	extendedRNC-ID		ExtendedRNC-ID		OPTIONAL,
	iE-Extensions		ProtocolExtensionContainer { {TargetRNC-ID-ExtIEs} } OPTIONAL,
	...
	}


TargetRNC-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TargetNgRanNode-ID ::= SEQUENCE {
	global-RAN-NODE-ID		Global-RAN-NODE-ID,
	selected-TAI		FiveGSTAI,
	iE-Extensions		ProtocolExtensionContainer { { TargetNgRanNode-ID-ExtIEs} } OPTIONAL,
	...
}

TargetNgRanNode-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Global-RAN-NODE-ID::= CHOICE {
	gNB		GNB,
	ng-eNB		NG-eNB,
	...
}

GNB ::= SEQUENCE {
	global-gNB-ID		Global-GNB-ID,
	iE-Extensions		ProtocolExtensionContainer { {GNB-ExtIEs} } OPTIONAL,
	...
}

GNB-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Global-GNB-ID ::= SEQUENCE {
	pLMN-Identity		PLMNidentity,
	gNB-ID				GNB-Identity,
	iE-Extensions		ProtocolExtensionContainer { { Global-GNB-ID-ExtIEs} } OPTIONAL,
	...
}

Global-GNB-ID-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

GNB-Identity ::= CHOICE {
	gNB-ID		GNB-ID,
	...
}

NG-eNB ::= SEQUENCE {
	global-ng-eNB-ID		Global-ENB-ID,
	iE-Extensions		ProtocolExtensionContainer { { NG-eNB-ExtIEs} } OPTIONAL,
	...
}

NG-eNB-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

GNB-ID ::= BIT STRING (SIZE(22..32))

TargeteNB-ToSourceeNB-TransparentContainer		::= SEQUENCE {
	rRC-Container		RRC-Container,
	iE-Extensions		ProtocolExtensionContainer { {TargeteNB-ToSourceeNB-TransparentContainer-ExtIEs} } OPTIONAL,
	...
}

TargeteNB-ToSourceeNB-TransparentContainer-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Target-ToSource-TransparentContainer ::= OCTET STRING
-- This IE includes a transparent container from the target RAN node to the source RAN node. 
-- The octets of the OCTET STRING are coded according to the specifications of the target system.

TargetRNC-ToSourceRNC-TransparentContainer		::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

TargetBSS-ToSourceBSS-TransparentContainer		::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

TargetNgRanNode-ToSourceNgRanNode-TransparentContainer		::= OCTET STRING
-- This is a dummy IE used only as a reference to the actual definition in relevant specification.

M1ThresholdEventA2 ::= SEQUENCE { 
	measurementThreshold	MeasurementThresholdA2,
	iE-Extensions			ProtocolExtensionContainer { { M1ThresholdEventA2-ExtIEs} } OPTIONAL,
	...
}

M1ThresholdEventA2-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

Threshold-RSRP ::= INTEGER(0..97)

Threshold-RSRQ ::= INTEGER(0..34)

TimeToWait ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}

Time-UE-StayedInCell ::= INTEGER (0..4095)

Time-UE-StayedInCell-EnhancedGranularity ::= INTEGER (0..40950)

TransportInformation ::= SEQUENCE {
	transportLayerAddress				TransportLayerAddress,
	uL-GTP-TEID							GTP-TEID,
	...
}

TransportLayerAddress		::= BIT STRING (SIZE(1..160, ...))

TraceActivation ::= SEQUENCE {
	e-UTRAN-Trace-ID					E-UTRAN-Trace-ID,
	interfacesToTrace					InterfacesToTrace,
traceDepth							TraceDepth,
traceCollectionEntityIPAddress		TransportLayerAddress,
	iE-Extensions						ProtocolExtensionContainer { { TraceActivation-ExtIEs} }	OPTIONAL,
	...
}

TraceActivation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Rel-10 to support MDT --
	{ ID id-MDTConfiguration	CRITICALITY ignore	EXTENSION MDT-Configuration		PRESENCE optional }|
-- Extension for Rel-15 to support QMC –
	{ ID id-UEAppLayerMeasConfig	CRITICALITY ignore	EXTENSION UEAppLayerMeasConfig		PRESENCE optional },
	...
}

TraceDepth ::= ENUMERATED { 
	minimum,
	medium,
	maximum,
	minimumWithoutVendorSpecificExtension,
	mediumWithoutVendorSpecificExtension,
	maximumWithoutVendorSpecificExtension,
	...
}

E-UTRAN-Trace-ID ::=  OCTET STRING (SIZE (8))

TrafficLoadReductionIndication ::= INTEGER (1..99)

TunnelInformation ::= SEQUENCE {
	transportLayerAddress	TransportLayerAddress,
	uDP-Port-Number			Port-Number			OPTIONAL,
	iE-Extensions			ProtocolExtensionContainer { {Tunnel-Information-ExtIEs} } OPTIONAL,
	...
}

Tunnel-Information-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

TypeOfError ::= ENUMERATED {
	not-understood,
	missing,
	...
}

TAIListForRestart ::= SEQUENCE (SIZE(1..maxnoofRestartTAIs)) OF TAI

-- U

UEAggregateMaximumBitrate ::= SEQUENCE {
	uEaggregateMaximumBitRateDL		BitRate,
	uEaggregateMaximumBitRateUL		BitRate,
	iE-Extensions					ProtocolExtensionContainer { {UEAggregate-MaximumBitrates-ExtIEs} } OPTIONAL,
	...
}

UEAggregate-MaximumBitrates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for maximum bitrate > 10G bps --
	{ ID id-extended-uEaggregateMaximumBitRateDL 	CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional}|
	{ ID id-extended-uEaggregateMaximumBitRateUL		CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional},
	...
}

UEAppLayerMeasConfig ::= SEQUENCE {
	containerForAppLayerMeasConfig			OCTET STRING (SIZE(1..1000)),
	areaScopeOfQMC		AreaScopeOfQMC,
	iE-Extensions		ProtocolExtensionContainer { {UEAppLayerMeasConfig-ExtIEs} } OPTIONAL,
	...
}

UEAppLayerMeasConfig-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	{ID id-serviceType	CRITICALITY ignore	EXTENSION ServiceType	PRESENCE optional},
	...
}

UECapabilityInfoRequest ::= ENUMERATED {
	requested,
	...
}

UE-RetentionInformation ::= ENUMERATED {
	ues-retained,
	...}

UE-S1AP-IDs ::= CHOICE{
	uE-S1AP-ID-pair		UE-S1AP-ID-pair,
	mME-UE-S1AP-ID		MME-UE-S1AP-ID,
	...
}

UE-S1AP-ID-pair ::= SEQUENCE{
	mME-UE-S1AP-ID		MME-UE-S1AP-ID,
	eNB-UE-S1AP-ID		ENB-UE-S1AP-ID,
	iE-Extensions		ProtocolExtensionContainer { {UE-S1AP-ID-pair-ExtIEs} } OPTIONAL,
	...
}
UE-S1AP-ID-pair-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}


UE-associatedLogicalS1-ConnectionItem ::= SEQUENCE {
	mME-UE-S1AP-ID		MME-UE-S1AP-ID OPTIONAL,
	eNB-UE-S1AP-ID		ENB-UE-S1AP-ID OPTIONAL,
	iE-Extensions		ProtocolExtensionContainer { { UE-associatedLogicalS1-ConnectionItemExtIEs} } OPTIONAL,
	...
}


UE-associatedLogicalS1-ConnectionItemExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

UEIdentityIndexValue	::=	BIT STRING (SIZE (10))

UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCellsinUEHistoryInfo)) OF LastVisitedCell-Item

UE-HistoryInformationFromTheUE ::= OCTET STRING
-- This IE is a transparent container and shall be encoded as the VisitedCellInfoList field contained in the UEInformationResponse message as defined in TS 36.331 [16]

UEPagingID ::= CHOICE {
	s-TMSI		S-TMSI,
	iMSI		IMSI,
	...
	}

UERadioCapability ::= OCTET STRING

UERadioCapabilityForPaging ::= OCTET STRING

UE-RLF-Report-Container ::= OCTET STRING
-- This IE is a transparent container and shall be encoded as the rlf-Report-r9 field contained in the UEInformationResponse message as defined in TS 36.331 [16]

UE-RLF-Report-Container-for-extended-bands ::= OCTET STRING
-- This IE is a transparent container and shall be encoded as the rlf-Report-v9e0 contained in the UEInformationResponse message as defined in TS 36.331 [16]

UESecurityCapabilities ::= SEQUENCE {
	encryptionAlgorithms			EncryptionAlgorithms,
	integrityProtectionAlgorithms	IntegrityProtectionAlgorithms,
	iE-Extensions					ProtocolExtensionContainer { { UESecurityCapabilities-ExtIEs} }	OPTIONAL,
...
}

UESecurityCapabilities-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

UESidelinkAggregateMaximumBitrate ::= SEQUENCE {
	uESidelinkAggregateMaximumBitRate		BitRate,
	iE-Extensions					ProtocolExtensionContainer { {UE-Sidelink-Aggregate-MaximumBitrates-ExtIEs} } OPTIONAL,
	...
}

UE-Sidelink-Aggregate-MaximumBitrates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

UE-Usage-Type ::= INTEGER (0..255) 

UL-CP-SecurityInformation ::= SEQUENCE {
	ul-NAS-MAC				UL-NAS-MAC,
	ul-NAS-Count			UL-NAS-Count,
	iE-Extensions			ProtocolExtensionContainer { { UL-CP-SecurityInformation-ExtIEs} }	OPTIONAL,
	...
}

UL-CP-SecurityInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

UL-NAS-MAC ::= BIT STRING (SIZE (16))

UL-NAS-Count ::= BIT STRING (SIZE (5))

UnlicensedSpectrumRestriction ::= ENUMERATED {
	unlicensed-restricted,
	...
}


UserLocationInformation ::= SEQUENCE {
	eutran-cgi 				EUTRAN-CGI,
	tai						TAI,
	iE-Extensions			ProtocolExtensionContainer { { UserLocationInformation-ExtIEs} }	OPTIONAL,
	...
}

UserLocationInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

UEUserPlaneCIoTSupportIndicator ::= ENUMERATED {
	supported,
	...
}

UE-Application-Layer-Measurement-Capability ::= BIT STRING (SIZE (8))

-- First bit: QoE Measurement for streaming service
-- Second bit: QoE Measurement for MTSI service

-- Note that undefined bits are considered as a spare bit and spare bits shall be set to 0 by the transmitter and shall be ignored by the receiver.

-- V

VoiceSupportMatchIndicator ::= ENUMERATED { 
	supported,
	not-supported,
	...
}

V2XServicesAuthorized ::= SEQUENCE {
	vehicleUE			VehicleUE											OPTIONAL,
	pedestrianUE 		PedestrianUE						OPTIONAL,
	iE-Extensions		ProtocolExtensionContainer { {V2XServicesAuthorized-ExtIEs} }	OPTIONAL,
	...
}

V2XServicesAuthorized-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

VehicleUE ::= ENUMERATED { 
	authorized,
	not-authorized,
	...
}

PedestrianUE ::= ENUMERATED { 
	authorized,
	not-authorized,
	...
}

-- W

WarningAreaCoordinates ::= OCTET STRING (SIZE(1..1024))

WarningAreaList ::= CHOICE {
	cellIDList						ECGIList,
	trackingAreaListforWarning		TAIListforWarning,
	emergencyAreaIDList				EmergencyAreaIDList,
	...
}


WarningType ::= OCTET STRING (SIZE (2))

WarningSecurityInfo ::= OCTET STRING (SIZE (50))


WarningMessageContents ::= OCTET STRING (SIZE(1..9600))

WLANMeasurementConfiguration ::= SEQUENCE {
	wlanMeasConfig             WLANMeasConfig,
	wlanMeasConfigNameList		WLANMeasConfigNameList            OPTIONAL,
	wlan-rssi                  ENUMERATED {true, ...}            OPTIONAL,
	wlan-rtt                   ENUMERATED {true, ...}            OPTIONAL,
	iE-Extensions		ProtocolExtensionContainer { { WLANMeasurementConfiguration-ExtIEs } } OPTIONAL,
	...
}

WLANMeasurementConfiguration-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

WLANMeasConfigNameList ::= SEQUENCE (SIZE(1..maxnoofWLANName)) OF WLANName

WLANMeasConfig::= ENUMERATED {setup,...}

WLANName ::= OCTET STRING (SIZE (1..32))   

-- X


X2TNLConfigurationInfo ::= SEQUENCE {
	eNBX2TransportLayerAddresses	ENBX2TLAs,
	iE-Extensions					ProtocolExtensionContainer { { X2TNLConfigurationInfo-ExtIEs} } OPTIONAL,
	...
}

X2TNLConfigurationInfo-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
-- Extension for Release 10 to transfer the IPsec and U-plane addresses during ANR action --
	{ID id-eNBX2ExtendedTransportLayerAddresses		CRITICALITY ignore	EXTENSION ENBX2ExtTLAs	PRESENCE optional}|
-- Extension for Release 12 to transfer the IP addresses of the X2 GW --
	{ID id-eNBIndirectX2TransportLayerAddresses	CRITICALITY ignore	EXTENSION ENBIndirectX2TransportLayerAddresses	PRESENCE optional},
	...
}

ENBX2ExtTLAs ::= SEQUENCE (SIZE(1.. maxnoofeNBX2ExtTLAs)) OF ENBX2ExtTLA

ENBX2ExtTLA ::= SEQUENCE {
	iPsecTLA					TransportLayerAddress		OPTIONAL,
	gTPTLAa						ENBX2GTPTLAs				OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { { ENBX2ExtTLA-ExtIEs} } OPTIONAL,
	...
}

ENBX2ExtTLA-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
	...
}

ENBX2GTPTLAs ::= SEQUENCE (SIZE(1.. maxnoofeNBX2GTPTLAs)) OF TransportLayerAddress

ENBIndirectX2TransportLayerAddresses ::= SEQUENCE (SIZE(1..maxnoofeNBX2TLAs)) OF TransportLayerAddress

-- Y
-- Z

END
