-- **************************************************************
--
-- Elementary Procedure definitions
--
-- **************************************************************

X2AP-PDU-Descriptions {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU-Descriptions (0) }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	Criticality,
	ProcedureCode

FROM X2AP-CommonDataTypes

	CellActivationRequest,
	CellActivationResponse,
	CellActivationFailure,
	ENBConfigurationUpdate,
	ENBConfigurationUpdateAcknowledge,
	ENBConfigurationUpdateFailure,
	ErrorIndication,
	HandoverCancel,
	HandoverReport,
	HandoverPreparationFailure,
	HandoverRequest,
	HandoverRequestAcknowledge,
	LoadInformation,
	PrivateMessage,
	ResetRequest,
	ResetResponse,
	ResourceStatusFailure,
	ResourceStatusRequest,
	ResourceStatusResponse,
	ResourceStatusUpdate,
	RLFIndication,
	SNStatusTransfer,
	UEContextRelease,
	X2SetupFailure,
	X2SetupRequest,
	X2SetupResponse,
	MobilityChangeRequest,
	MobilityChangeAcknowledge,
	MobilityChangeFailure,
	X2Release,
	X2APMessageTransfer,
	SeNBAdditionRequest,
	SeNBAdditionRequestAcknowledge,
	SeNBAdditionRequestReject,
	SeNBReconfigurationComplete,
	SeNBModificationRequest,
	SeNBModificationRequestAcknowledge,
	SeNBModificationRequestReject,
	SeNBModificationRequired,
	SeNBModificationConfirm,
	SeNBModificationRefuse,
	SeNBReleaseRequest,
	SeNBReleaseRequired,
	SeNBReleaseConfirm,
	SeNBCounterCheckRequest,
	X2RemovalFailure,
	X2RemovalRequest,
	X2RemovalResponse,
	RetrieveUEContextRequest,
	RetrieveUEContextResponse,
	RetrieveUEContextFailure,
	SgNBAdditionRequest,
	SgNBAdditionRequestAcknowledge,
	SgNBAdditionRequestReject,
	SgNBReconfigurationComplete,
	SgNBModificationRequest,
	SgNBModificationRequestAcknowledge,
	SgNBModificationRequestReject,
	SgNBModificationRequired,
	SgNBModificationConfirm,
	SgNBModificationRefuse,
	SgNBReleaseRequest,
	SgNBReleaseRequestAcknowledge,
	SgNBReleaseRequestReject,
	SgNBReleaseRequired,
	SgNBReleaseConfirm,
	SgNBCounterCheckRequest,
	SgNBChangeRequired,
	SgNBChangeConfirm,
	SgNBChangeRefuse,
	RRCTransfer,
	ENDCX2SetupRequest,
	ENDCX2SetupResponse,
	ENDCX2SetupFailure,
	ENDCConfigurationUpdate,
	ENDCConfigurationUpdateAcknowledge,
	ENDCConfigurationUpdateFailure,
	SecondaryRATDataUsageReport,
	ENDCCellActivationRequest,
	ENDCCellActivationResponse,
	ENDCCellActivationFailure

FROM X2AP-PDU-Contents

	id-cellActivation,
	id-eNBConfigurationUpdate,
	id-errorIndication,
	id-handoverCancel,
	id-handoverReport,
	id-handoverPreparation,

	id-loadIndication,
	id-privateMessage,
	id-reset,

	id-resourceStatusReporting,
	id-resourceStatusReportingInitiation,
	id-rLFIndication,
	id-snStatusTransfer,
	id-uEContextRelease,
	id-x2Setup,
	id-mobilitySettingsChange,
	id-x2Release,
	id-x2APMessageTransfer,
	id-seNBAdditionPreparation,
	id-seNBReconfigurationCompletion,
	id-meNBinitiatedSeNBModificationPreparation,
	id-seNBinitiatedSeNBModification,
	id-meNBinitiatedSeNBRelease,
	id-seNBinitiatedSeNBRelease,
	id-seNBCounterCheck,
	id-x2Removal,
	id-retrieveUEContext,
	id-sgNBAdditionPreparation,
	id-sgNBReconfigurationCompletion,
	id-meNBinitiatedSgNBModificationPreparation,
	id-sgNBinitiatedSgNBModification,
	id-meNBinitiatedSgNBRelease,
	id-sgNBinitiatedSgNBRelease,
	id-sgNBChange,
	id-sgNBCounterCheck,
	id-rRCTransfer,
	id-endcX2Setup,
	id-endcConfigurationUpdate,
	id-secondaryRATDataUsageReport,
	id-endcCellActivation

FROM X2AP-Constants;

-- **************************************************************
--
-- Interface Elementary Procedure Class
--
-- **************************************************************

X2AP-ELEMENTARY-PROCEDURE ::= CLASS {
	&InitiatingMessage				,
	&SuccessfulOutcome				OPTIONAL,
	&UnsuccessfulOutcome				OPTIONAL,
	&procedureCode			ProcedureCode 	UNIQUE,
	&criticality			Criticality 	DEFAULT ignore
}
WITH SYNTAX {
	INITIATING MESSAGE		&InitiatingMessage
	[SUCCESSFUL OUTCOME		&SuccessfulOutcome]
	[UNSUCCESSFUL OUTCOME		&UnsuccessfulOutcome]
	PROCEDURE CODE			&procedureCode
	[CRITICALITY			&criticality]
}

-- **************************************************************
--
-- Interface PDU Definition
--
-- **************************************************************

X2AP-PDU ::= CHOICE {
	initiatingMessage	InitiatingMessage,
	successfulOutcome	SuccessfulOutcome,
	unsuccessfulOutcome	UnsuccessfulOutcome,
	...
}

InitiatingMessage ::= SEQUENCE {
	procedureCode	X2AP-ELEMENTARY-PROCEDURE.&procedureCode		({X2AP-ELEMENTARY-PROCEDURES}),
	criticality		X2AP-ELEMENTARY-PROCEDURE.&criticality			({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			X2AP-ELEMENTARY-PROCEDURE.&InitiatingMessage	({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

SuccessfulOutcome ::= SEQUENCE {
	procedureCode	X2AP-ELEMENTARY-PROCEDURE.&procedureCode		({X2AP-ELEMENTARY-PROCEDURES}),
	criticality		X2AP-ELEMENTARY-PROCEDURE.&criticality			({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			X2AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome	({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

UnsuccessfulOutcome ::= SEQUENCE {
	procedureCode	X2AP-ELEMENTARY-PROCEDURE.&procedureCode		({X2AP-ELEMENTARY-PROCEDURES}),
	criticality		X2AP-ELEMENTARY-PROCEDURE.&criticality			({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			X2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome	({X2AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

-- **************************************************************
--
-- Interface Elementary Procedure List
--
-- **************************************************************

X2AP-ELEMENTARY-PROCEDURES X2AP-ELEMENTARY-PROCEDURE ::= {
	X2AP-ELEMENTARY-PROCEDURES-CLASS-1			|
	X2AP-ELEMENTARY-PROCEDURES-CLASS-2			,
	...
}

X2AP-ELEMENTARY-PROCEDURES-CLASS-1 X2AP-ELEMENTARY-PROCEDURE ::= {
	handoverPreparation										|
	reset													|
	x2Setup													|
	resourceStatusReportingInitiation						|
	eNBConfigurationUpdate									|
	mobilitySettingsChange									|
	cellActivation											|
	seNBAdditionPreparation									|
	meNBinitiatedSeNBModificationPreparation				|
	seNBinitiatedSeNBModification							|
	seNBinitiatedSeNBRelease								|
	x2Removal												|
	retrieveUEContext										|
	sgNBAdditionPreparation									|
	meNBinitiatedSgNBModificationPreparation					|
	sgNBinitiatedSgNBModification							|
	meNBinitiatedSgNBRelease									|
	sgNBinitiatedSgNBRelease									|
	sgNBChange												|
	endcX2Setup												|
	endcConfigurationUpdate									|
	endcCellActivation										,
	...
}

X2AP-ELEMENTARY-PROCEDURES-CLASS-2 X2AP-ELEMENTARY-PROCEDURE ::= {
	snStatusTransfer						|
	uEContextRelease						|
	handoverCancel							|
	errorIndication							|
	resourceStatusReporting					|
	loadIndication							|
	privateMessage							|
	rLFIndication							|
	handoverReport							|
	x2Release								|
	x2APMessageTransfer						|
	seNBReconfigurationCompletion			|
	meNBinitiatedSeNBRelease				|
	seNBCounterCheck						|
	sgNBReconfigurationCompletion			|
	sgNBCounterCheck							|
	rRCTransfer								|
	secondaryRATDataUsageReport				,
	...

}

-- **************************************************************
--
-- Interface Elementary Procedures
--
-- **************************************************************

handoverPreparation X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HandoverRequest
	SUCCESSFUL OUTCOME		HandoverRequestAcknowledge
	UNSUCCESSFUL OUTCOME	HandoverPreparationFailure
	PROCEDURE CODE			id-handoverPreparation
	CRITICALITY				reject
}

snStatusTransfer X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SNStatusTransfer
	PROCEDURE CODE			id-snStatusTransfer
	CRITICALITY				ignore
}

uEContextRelease X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEContextRelease
	PROCEDURE CODE			id-uEContextRelease
	CRITICALITY				ignore
}


handoverCancel X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HandoverCancel
	PROCEDURE CODE			id-handoverCancel
	CRITICALITY				ignore
}

handoverReport X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HandoverReport
	PROCEDURE CODE			id-handoverReport
	CRITICALITY				ignore
}

errorIndication X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ErrorIndication
	PROCEDURE CODE			id-errorIndication
	CRITICALITY				ignore
}

reset	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ResetRequest
	SUCCESSFUL OUTCOME		ResetResponse
	PROCEDURE CODE			id-reset
	CRITICALITY				reject
}

x2Setup	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		X2SetupRequest
	SUCCESSFUL OUTCOME		X2SetupResponse
	UNSUCCESSFUL OUTCOME	X2SetupFailure
	PROCEDURE CODE			id-x2Setup
	CRITICALITY				reject
}


loadIndication X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		LoadInformation
	PROCEDURE CODE			id-loadIndication
	CRITICALITY				ignore
}

eNBConfigurationUpdate		X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENBConfigurationUpdate
	SUCCESSFUL OUTCOME		ENBConfigurationUpdateAcknowledge
	UNSUCCESSFUL OUTCOME	ENBConfigurationUpdateFailure
	PROCEDURE CODE			id-eNBConfigurationUpdate
	CRITICALITY				reject
}

resourceStatusReportingInitiation	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE				ResourceStatusRequest
	SUCCESSFUL OUTCOME				ResourceStatusResponse
	UNSUCCESSFUL OUTCOME			ResourceStatusFailure
	PROCEDURE CODE					id-resourceStatusReportingInitiation
	CRITICALITY						reject
}

resourceStatusReporting X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ResourceStatusUpdate
	PROCEDURE CODE			id-resourceStatusReporting
	CRITICALITY				ignore
}

rLFIndication X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		RLFIndication
	PROCEDURE CODE			id-rLFIndication
	CRITICALITY				ignore
}

privateMessage			X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		PrivateMessage
	PROCEDURE CODE			id-privateMessage
	CRITICALITY				ignore
}

mobilitySettingsChange	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MobilityChangeRequest
	SUCCESSFUL OUTCOME		MobilityChangeAcknowledge
	UNSUCCESSFUL OUTCOME	MobilityChangeFailure
	PROCEDURE CODE			id-mobilitySettingsChange
	CRITICALITY				reject
}

cellActivation	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		CellActivationRequest
	SUCCESSFUL OUTCOME		CellActivationResponse
	UNSUCCESSFUL OUTCOME	CellActivationFailure
	PROCEDURE CODE			id-cellActivation
	CRITICALITY				reject
}

x2Release X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		X2Release
	PROCEDURE CODE			id-x2Release
	CRITICALITY				reject
}

x2APMessageTransfer X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		X2APMessageTransfer
	PROCEDURE CODE			id-x2APMessageTransfer
	CRITICALITY				reject
}

seNBAdditionPreparation	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SeNBAdditionRequest
	SUCCESSFUL OUTCOME		SeNBAdditionRequestAcknowledge
	UNSUCCESSFUL OUTCOME	SeNBAdditionRequestReject
	PROCEDURE CODE			id-seNBAdditionPreparation
	CRITICALITY				reject
}

seNBReconfigurationCompletion	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SeNBReconfigurationComplete
	PROCEDURE CODE			id-seNBReconfigurationCompletion
	CRITICALITY				ignore
}

meNBinitiatedSeNBModificationPreparation	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SeNBModificationRequest
	SUCCESSFUL OUTCOME		SeNBModificationRequestAcknowledge
	UNSUCCESSFUL OUTCOME	SeNBModificationRequestReject
	PROCEDURE CODE			id-meNBinitiatedSeNBModificationPreparation
	CRITICALITY				reject
}

seNBinitiatedSeNBModification	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SeNBModificationRequired
	SUCCESSFUL OUTCOME		SeNBModificationConfirm
	UNSUCCESSFUL OUTCOME	SeNBModificationRefuse
	PROCEDURE CODE			id-seNBinitiatedSeNBModification
	CRITICALITY				reject
}

meNBinitiatedSeNBRelease	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SeNBReleaseRequest
	PROCEDURE CODE			id-meNBinitiatedSeNBRelease
	CRITICALITY				ignore
}

seNBinitiatedSeNBRelease	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SeNBReleaseRequired
	SUCCESSFUL OUTCOME		SeNBReleaseConfirm
	PROCEDURE CODE			id-seNBinitiatedSeNBRelease
	CRITICALITY				reject
}

seNBCounterCheck	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SeNBCounterCheckRequest
	PROCEDURE CODE			id-seNBCounterCheck
	CRITICALITY				reject
}

x2Removal	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		X2RemovalRequest
	SUCCESSFUL OUTCOME		X2RemovalResponse
	UNSUCCESSFUL OUTCOME	X2RemovalFailure
	PROCEDURE CODE			id-x2Removal
	CRITICALITY				reject
}

retrieveUEContext	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		RetrieveUEContextRequest
	SUCCESSFUL OUTCOME		RetrieveUEContextResponse
	UNSUCCESSFUL OUTCOME	RetrieveUEContextFailure
	PROCEDURE CODE			id-retrieveUEContext
	CRITICALITY				reject
}

sgNBAdditionPreparation		X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBAdditionRequest
	SUCCESSFUL OUTCOME		SgNBAdditionRequestAcknowledge
	UNSUCCESSFUL OUTCOME	SgNBAdditionRequestReject
	PROCEDURE CODE			id-sgNBAdditionPreparation
	CRITICALITY				reject
}

sgNBReconfigurationCompletion	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBReconfigurationComplete
	PROCEDURE CODE			id-sgNBReconfigurationCompletion
	CRITICALITY				ignore
}

meNBinitiatedSgNBModificationPreparation	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBModificationRequest
	SUCCESSFUL OUTCOME		SgNBModificationRequestAcknowledge
	UNSUCCESSFUL OUTCOME	SgNBModificationRequestReject
	PROCEDURE CODE			id-meNBinitiatedSgNBModificationPreparation
	CRITICALITY				reject
}

sgNBinitiatedSgNBModification		X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBModificationRequired
	SUCCESSFUL OUTCOME		SgNBModificationConfirm
	UNSUCCESSFUL OUTCOME	SgNBModificationRefuse
	PROCEDURE CODE			id-sgNBinitiatedSgNBModification
	CRITICALITY				reject
}

meNBinitiatedSgNBRelease	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBReleaseRequest
	SUCCESSFUL OUTCOME		SgNBReleaseRequestAcknowledge
	UNSUCCESSFUL OUTCOME	SgNBReleaseRequestReject
	PROCEDURE CODE			id-meNBinitiatedSgNBRelease
	CRITICALITY				ignore
}

sgNBinitiatedSgNBRelease	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBReleaseRequired
	SUCCESSFUL OUTCOME		SgNBReleaseConfirm
	PROCEDURE CODE			id-sgNBinitiatedSgNBRelease
	CRITICALITY				reject
}

sgNBCounterCheck	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBCounterCheckRequest
	PROCEDURE CODE			id-sgNBCounterCheck
	CRITICALITY				reject
}

sgNBChange	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SgNBChangeRequired
	SUCCESSFUL OUTCOME		SgNBChangeConfirm
	UNSUCCESSFUL OUTCOME	SgNBChangeRefuse
	PROCEDURE CODE			id-sgNBChange
	CRITICALITY				reject
}

rRCTransfer	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		RRCTransfer
	PROCEDURE CODE			id-rRCTransfer
	CRITICALITY				reject
}

endcX2Setup X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENDCX2SetupRequest
	SUCCESSFUL OUTCOME		ENDCX2SetupResponse
	UNSUCCESSFUL OUTCOME	ENDCX2SetupFailure
	PROCEDURE CODE			id-endcX2Setup
	CRITICALITY				reject
}


endcConfigurationUpdate		X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENDCConfigurationUpdate
	SUCCESSFUL OUTCOME		ENDCConfigurationUpdateAcknowledge
	UNSUCCESSFUL OUTCOME	ENDCConfigurationUpdateFailure
	PROCEDURE CODE			id-endcConfigurationUpdate
	CRITICALITY				reject
}

secondaryRATDataUsageReport	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SecondaryRATDataUsageReport
	PROCEDURE CODE			id-secondaryRATDataUsageReport
	CRITICALITY				reject
}

endcCellActivation	X2AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENDCCellActivationRequest
	SUCCESSFUL OUTCOME		ENDCCellActivationResponse
	UNSUCCESSFUL OUTCOME	ENDCCellActivationFailure
	PROCEDURE CODE			id-endcCellActivation
	CRITICALITY				reject
}

END


-- **************************************************************
--
-- PDU definitions for X2AP.
--
-- **************************************************************

X2AP-PDU-Contents {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU-Contents (1) }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	ABSInformation,
	ABS-Status,
	AS-SecurityInformation,
	BearerType,
	Cause,
	CompositeAvailableCapacityGroup,
	Correlation-ID,
	COUNTvalue,
	CellReportingIndicator,
	CriticalityDiagnostics,
	CRNTI,
	CSGMembershipStatus,
	CSG-Id,
	DeactivationIndication,
	DL-Forwarding,
	DynamicDLTransmissionInformation,
	ECGI,
	E-RAB-ID,
	E-RAB-Level-QoS-Parameters,
	E-RAB-List,
	EUTRANTraceID,
	GlobalENB-ID,
	GTPtunnelEndpoint,
	GUGroupIDList,
	GUMMEI,
	HandoverReportType,
	HandoverRestrictionList,
	Masked-IMEISV,
	InvokeIndication,
	LocationReportingInformation,
	MDT-Configuration,
	ManagementBasedMDTallowed,
	MDTPLMNList,
	Neighbour-Information,
	PCI,
	PDCP-SN,
	PLMN-Identity,
	ReceiveStatusofULPDCPSDUs,
	Registration-Request,
	RelativeNarrowbandTxPower,
	RadioResourceStatus,
	RRCConnReestabIndicator,
	RRCConnSetupIndicator,
	UE-RLF-Report-Container,
	UEAppLayerMeasConfig,
	RRC-Context,
	ServedCell-Information,
	ServedCells,
	ShortMAC-I,
	SRVCCOperationPossible,
	SubscriberProfileIDforRFP,
	TargetCellInUTRAN,
	TargeteNBtoSource-eNBTransparentContainer,
	TimeToWait,
	TraceActivation,
	TraceDepth,
	TransportLayerAddress,
	UEAggregateMaximumBitRate,
	UE-HistoryInformation,
	UE-HistoryInformationFromTheUE,
	UE-S1AP-ID,
	UESecurityCapabilities,
	UE-X2AP-ID,
	UL-HighInterferenceIndicationInfo,
	UL-InterferenceOverloadIndication,
	HWLoadIndicator,
	S1TNLLoadIndicator,
	Measurement-ID,
	ReportCharacteristics,
	MobilityParametersInformation,
	MobilityParametersModificationRange,
	ReceiveStatusOfULPDCPSDUsExtended,
	COUNTValueExtended,
	SubframeAssignment,
	ExtendedULInterferenceOverloadInfo,
	ExpectedUEBehaviour,
	SeNBSecurityKey,
	MeNBtoSeNBContainer,
	SeNBtoMeNBContainer,
	SCGChangeIndication,
	CoMPInformation,
	ReportingPeriodicityRSRPMR,
	RSRPMRList,
	UE-RLF-Report-Container-for-extended-bands,
	ProSeAuthorized,
	CoverageModificationList,
	ReportingPeriodicityCSIR,
	CSIReportList,
	ReceiveStatusOfULPDCPSDUsPDCP-SNlength18,
	COUNTvaluePDCP-SNlength18,
	LHN-ID,
	UE-ContextKeptIndicator,
	UE-X2AP-ID-Extension,
	SIPTOBearerDeactivationIndication,
	TunnelInformation,
	V2XServicesAuthorized,
	X2BenefitValue,
	ResumeID,
	EUTRANCellIdentifier,
	MakeBeforeBreakIndicator,
	WTID,
	WT-UE-XwAP-ID,
	UESidelinkAggregateMaximumBitRate,
	SgNBSecurityKey,
	MeNBtoSgNBContainer,
	SgNBtoMeNBContainer,
	MCGSplitSRBs,
	RRCContainer,
	SRBType,
	GlobalGNB-ID,
	GNB-ID,
	SCGConfigurationQuery,
	MCGSplitSRB,
	UENRMeasurement,
	EN-DC-ResourceConfiguration,
	TAC,
	NRARFCN,
	NRCGI,
	NRPCI,
	NRUESecurityCapabilities,
	PDCPChangeIndication,
	ULConfiguration,
	SgNB-UE-X2AP-ID,
	SecondaryRATUsageReportList,
	ActivationID,
	MeNBResourceCoordinationInformation,
	SgNBResourceCoordinationInformation,
	NR-TxBW,
	BroadcastPLMNs-Item,
	RLCMode,
	GBR-QosInformation,
	DRB-ID,
	Extended-TAC,
	SULInformation


FROM X2AP-IEs

	PrivateIE-Container{},
	ProtocolExtensionContainer{},
	ProtocolIE-Container{},
	ProtocolIE-ContainerList{},
	ProtocolIE-ContainerPair{},
	ProtocolIE-ContainerPairList{},
	ProtocolIE-Single-Container{},
	X2AP-PRIVATE-IES,
	X2AP-PROTOCOL-EXTENSION,
	X2AP-PROTOCOL-IES,
	X2AP-PROTOCOL-IES-PAIR
FROM X2AP-Containers

	id-ABSInformation,
	id-ActivatedCellList,
	id-BearerType,
	id-Cause,
	id-CellInformation,
	id-CellInformation-Item,
	id-CellMeasurementResult,
	id-CellMeasurementResult-Item,
	id-CellToReport,
	id-CellToReport-Item,
	id-CompositeAvailableCapacityGroup,
	id-CriticalityDiagnostics,
	id-DeactivationIndication,
	id-DynamicDLTransmissionInformation,
	id-E-RABs-Admitted-Item,
	id-E-RABs-Admitted-List,
	id-E-RABs-NotAdmitted-List,
	id-E-RABs-SubjectToStatusTransfer-List,
	id-E-RABs-SubjectToStatusTransfer-Item,
	id-E-RABs-ToBeSetup-Item,
	id-GlobalENB-ID,
	id-GUGroupIDList,
	id-GUGroupIDToAddList,
	id-GUGroupIDToDeleteList,
	id-GUMMEI-ID,
	id-Masked-IMEISV,
	id-InvokeIndication,
	id-New-eNB-UE-X2AP-ID,
	id-Old-eNB-UE-X2AP-ID,
	id-Registration-Request,
	id-ReportingPeriodicity,
	id-ServedCells,
	id-ServedCellsToActivate,
	id-ServedCellsToAdd,
	id-ServedCellsToModify,
	id-ServedCellsToDelete,
	id-SRVCCOperationPossible,
	id-TargetCell-ID,
	id-TargeteNBtoSource-eNBTransparentContainer,
	id-TimeToWait,
	id-TraceActivation,
	id-UE-ContextInformation,
	id-UE-HistoryInformation,
	id-UE-X2AP-ID,
	id-Measurement-ID,
	id-ReportCharacteristics,
	id-ENB1-Measurement-ID,
	id-ENB2-Measurement-ID,
	id-ENB1-Cell-ID,
	id-ENB2-Cell-ID,
	id-ENB2-Proposed-Mobility-Parameters,
	id-ENB1-Mobility-Parameters,
	id-ENB2-Mobility-Parameters-Modification-Range,
	id-FailureCellPCI,
	id-Re-establishmentCellECGI,
	id-FailureCellCRNTI,
	id-ShortMAC-I,
	id-SourceCellECGI,
	id-FailureCellECGI,
	id-HandoverReportType,
	id-UE-RLF-Report-Container,
	id-PartialSuccessIndicator,
	id-MeasurementInitiationResult-List,
	id-MeasurementInitiationResult-Item,
	id-MeasurementFailureCause-Item,
	id-CompleteFailureCauseInformation-List,
	id-CompleteFailureCauseInformation-Item,
	id-CSGMembershipStatus,
	id-CSG-Id,
	id-MDTConfiguration,
	id-ManagementBasedMDTallowed,
	id-ABS-Status,
	id-RRCConnSetupIndicator,
	id-RRCConnReestabIndicator,
	id-TargetCellInUTRAN,
	id-MobilityInformation,
	id-SourceCellCRNTI,
	id-ManagementBasedMDTPLMNList,
	id-ReceiveStatusOfULPDCPSDUsExtended,
	id-ULCOUNTValueExtended,
	id-DLCOUNTValueExtended,
	id-IntendedULDLConfiguration,
	id-ExtendedULInterferenceOverloadInfo,
	id-RNL-Header,
	id-x2APMessage,
	id-UE-HistoryInformationFromTheUE,
	id-ExpectedUEBehaviour,
	id-MeNB-UE-X2AP-ID,
	id-SeNB-UE-X2AP-ID,
	id-UE-SecurityCapabilities,
	id-SeNBSecurityKey,
	id-SeNBUEAggregateMaximumBitRate,
	id-ServingPLMN,
	id-E-RABs-ToBeAdded-List,
	id-E-RABs-ToBeAdded-Item,
	id-MeNBtoSeNBContainer,
	id-E-RABs-Admitted-ToBeAdded-List,
	id-E-RABs-Admitted-ToBeAdded-Item,
	id-SeNBtoMeNBContainer,
	id-ResponseInformationSeNBReconfComp,
	id-UE-ContextInformationSeNBModReq,
	id-E-RABs-ToBeAdded-ModReqItem,
	id-E-RABs-ToBeModified-ModReqItem,
	id-E-RABs-ToBeReleased-ModReqItem,
	id-E-RABs-Admitted-ToBeAdded-ModAckList,
	id-E-RABs-Admitted-ToBeModified-ModAckList,
	id-E-RABs-Admitted-ToBeReleased-ModAckList,
	id-E-RABs-Admitted-ToBeAdded-ModAckItem,
	id-E-RABs-Admitted-ToBeModified-ModAckItem,
	id-E-RABs-Admitted-ToBeReleased-ModAckItem,
	id-SCGChangeIndication,
	id-E-RABs-ToBeReleased-ModReqd,
	id-E-RABs-ToBeReleased-ModReqdItem,
	id-E-RABs-ToBeReleased-List-RelReq,
	id-E-RABs-ToBeReleased-RelReqItem,
	id-E-RABs-ToBeReleased-List-RelConf,
	id-E-RABs-ToBeReleased-RelConfItem,
	id-E-RABs-SubjectToCounterCheck-List,
	id-E-RABs-SubjectToCounterCheckItem,
	id-CoMPInformation,
	id-ReportingPeriodicityRSRPMR,
	id-RSRPMRList,
	id-UE-RLF-Report-Container-for-extended-bands,
	id-ProSeAuthorized,
	id-CoverageModificationList,
	id-ReportingPeriodicityCSIR,
	id-CSIReportList,
	id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18,
	id-ULCOUNTValuePDCP-SNlength18,
	id-DLCOUNTValuePDCP-SNlength18,
	id-LHN-ID,
	id-Correlation-ID,
	id-SIPTO-Correlation-ID,
	id-UE-ContextReferenceAtSeNB,
	id-UE-ContextReferenceAtWT,
	id-UE-ContextKeptIndicator,
	id-WT-UE-ContextKeptIndicator,
	id-New-eNB-UE-X2AP-ID-Extension,
	id-Old-eNB-UE-X2AP-ID-Extension,
	id-MeNB-UE-X2AP-ID-Extension,
	id-SeNB-UE-X2AP-ID-Extension,
	id-SIPTO-BearerDeactivationIndication,
	id-Tunnel-Information-for-BBF,
	id-SIPTO-L-GW-TransportLayerAddress,
	id-GW-TransportLayerAddress,
	id-X2RemovalThreshold,
	id-CellReportingIndicator,
	id-V2XServicesAuthorized,
	id-resumeID,
	id-UE-ContextInformationRetrieve,
	id-E-RABs-ToBeSetupRetrieve-Item,
	id-NewEUTRANCellIdentifier,
	id-MakeBeforeBreakIndicator,
	id-UESidelinkAggregateMaximumBitRate,
	id-uL-GTPtunnelEndpoint,
	id-SgNBSecurityKey,
	id-SgNBUEAggregateMaximumBitRate,
	id-E-RABs-ToBeAdded-SgNBAddReqList,
	id-MeNBtoSgNBContainer,
	id-SgNB-UE-X2AP-ID,
	id-RequestedMCGSplitSRBs,
	id-E-RABs-ToBeAdded-SgNBAddReq-Item,
	id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAckList,
	id-SgNBtoMeNBContainer,
	id-AdmittedMCGSplitSRBs	,
	id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item,
	id-ResponseInformationSgNBReconfComp,
	id-UE-ContextInformation-SgNBModReq,
	id-E-RABs-ToBeAdded-SgNBModReq-Item,
	id-E-RABs-ToBeModified-SgNBModReq-Item,
	id-E-RABs-ToBeReleased-SgNBModReq-Item,
	id-E-RABs-Admitted-ToBeAdded-SgNBModAckList,
	id-E-RABs-Admitted-ToBeModified-SgNBModAckList,
	id-E-RABs-Admitted-ToBeReleased-SgNBModAckList,
	id-E-RABs-Admitted-ToBeAdded-SgNBModAck-Item,
	id-E-RABs-Admitted-ToBeModified-SgNBModAck-Item,
	id-E-RABs-Admitted-ToBeReleased-SgNBModAck-Item,
	id-E-RABs-ToBeReleased-SgNBModReqdList,
	id-E-RABs-ToBeModified-SgNBModReqdList,
	id-E-RABs-ToBeReleased-SgNBModReqd-Item,
	id-E-RABs-ToBeModified-SgNBModReqd-Item,
	id-E-RABs-ToBeReleased-SgNBChaConfList,
	id-E-RABs-ToBeReleased-SgNBChaConf-Item,
	id-E-RABs-ToBeReleased-SgNBRelReqList,
	id-E-RABs-ToBeReleased-SgNBRelReq-Item,
	id-E-RABs-ToBeReleased-SgNBRelConfList,
	id-E-RABs-ToBeReleased-SgNBRelConf-Item,
	id-E-RABs-SubjectToSgNBCounterCheck-List,
	id-E-RABs-SubjectToSgNBCounterCheck-Item,
	id-Target-SgNB-ID,
	id-RRCContainer,
	id-SRBType,
	id-HandoverRestrictionList,
	id-SCGConfigurationQuery,
	id-MCGSplitSRB,
	id-UENRMeasurement,
	id-InitiatingNodeType-EndcX2Setup,
	id-InitiatingNodeType-EndcConfigUpdate,
	id-RespondingNodeType-EndcX2Setup,
	id-RespondingNodeType-EndcConfigUpdate,
	id-NRUESecurityCapabilities,
	id-PDCPChangeIndication,
	id-ServedEUTRAcellsENDCX2ManagementList,
	id-ServedEUTRAcellsToModifyListENDCConfUpd,
	id-ServedEUTRAcellsToDeleteListENDCConfUpd,
	id-ServedNRcellsToModifyListENDCConfUpd,
	id-ServedNRcellsToDeleteListENDCConfUpd,
	id-CellAssistanceInformation,
	id-Globalen-gNB-ID,
	id-ServedNRcellsENDCX2ManagementList,
	id-Old-SgNB-UE-X2AP-ID,
	id-UE-ContextReferenceAtSgNB,
	id-SecondaryRATUsageReportList,
	id-ActivationID,
	id-ServedNRCellsToActivate,
	id-ActivatedNRCellList,
	id-MeNBResourceCoordinationInformation,
	id-SgNBResourceCoordinationInformation,
	id-UEAppLayerMeasConfig,
	id-SelectedPLMN,

	maxCellineNB,
	maxnoofBearers,
	maxnoofPDCP-SN,
	maxFailedMeasObjects,
	maxnoofCellIDforMDT,
	maxnoofTAforMDT,
	maxofNRNeighbours,
	maxCellinengNB,
	maxnoofCellIDforQMC,
	maxnoofTAforQMC,
	maxnoofPLMNforQMC
FROM X2AP-Constants;

-- **************************************************************
--
-- HANDOVER REQUEST
--
-- **************************************************************

HandoverRequest ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container	{{HandoverRequest-IEs}},
	...
}

HandoverRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID				CRITICALITY reject	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause								PRESENCE mandatory}|
	{ ID id-TargetCell-ID					CRITICALITY reject	TYPE ECGI								PRESENCE mandatory}|
	{ ID id-GUMMEI-ID						CRITICALITY reject	TYPE GUMMEI								PRESENCE mandatory}|
	{ ID id-UE-ContextInformation			CRITICALITY reject	TYPE UE-ContextInformation				PRESENCE mandatory}|
	{ ID id-UE-HistoryInformation			CRITICALITY ignore	TYPE UE-HistoryInformation				PRESENCE mandatory}|
	{ ID id-TraceActivation					CRITICALITY ignore	TYPE TraceActivation					PRESENCE optional}|
	{ ID id-SRVCCOperationPossible			CRITICALITY ignore	TYPE SRVCCOperationPossible				PRESENCE optional}|
	{ ID id-CSGMembershipStatus				CRITICALITY reject	TYPE CSGMembershipStatus				PRESENCE optional}|
	{ ID id-MobilityInformation				CRITICALITY ignore	TYPE MobilityInformation				PRESENCE optional}|
	{ ID id-Masked-IMEISV					CRITICALITY ignore	TYPE Masked-IMEISV						PRESENCE optional}|
	{ ID id-UE-HistoryInformationFromTheUE	CRITICALITY ignore	TYPE UE-HistoryInformationFromTheUE	PRESENCE optional}|
	{ ID id-ExpectedUEBehaviour				CRITICALITY ignore	TYPE ExpectedUEBehaviour				PRESENCE optional}|
	{ ID id-ProSeAuthorized					CRITICALITY ignore	TYPE ProSeAuthorized					PRESENCE optional}|
	{ ID id-UE-ContextReferenceAtSeNB		CRITICALITY ignore	TYPE UE-ContextReferenceAtSeNB			PRESENCE optional}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension	CRITICALITY reject	TYPE UE-X2AP-ID-Extension				PRESENCE optional}|
	{ ID id-V2XServicesAuthorized			CRITICALITY ignore	TYPE V2XServicesAuthorized				PRESENCE optional}|
	{ ID id-UE-ContextReferenceAtWT			CRITICALITY ignore	TYPE UE-ContextReferenceAtWT			PRESENCE optional}|
	{ ID id-NRUESecurityCapabilities			CRITICALITY ignore	TYPE NRUESecurityCapabilities			PRESENCE optional}|
	{ ID id-UE-ContextReferenceAtSgNB		CRITICALITY ignore	TYPE UE-ContextReferenceAtSgNB			PRESENCE optional},
	...
}

UE-ContextInformation ::= SEQUENCE {
	mME-UE-S1AP-ID						UE-S1AP-ID,
	uESecurityCapabilities				UESecurityCapabilities,
	aS-SecurityInformation				AS-SecurityInformation,
	uEaggregateMaximumBitRate			UEAggregateMaximumBitRate,
	subscriberProfileIDforRFP			SubscriberProfileIDforRFP		OPTIONAL,
	e-RABs-ToBeSetup-List				E-RABs-ToBeSetup-List,
	rRC-Context							RRC-Context,
	handoverRestrictionList				HandoverRestrictionList		OPTIONAL,
	locationReportingInformation		LocationReportingInformation	OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { {UE-ContextInformation-ExtIEs} } OPTIONAL,
	...
}

UE-ContextInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-ManagementBasedMDTallowed	CRITICALITY ignore	EXTENSION ManagementBasedMDTallowed		PRESENCE optional }|
{ ID id-ManagementBasedMDTPLMNList	CRITICALITY ignore	EXTENSION MDTPLMNList					PRESENCE optional }|
{ ID id-UESidelinkAggregateMaximumBitRate	CRITICALITY ignore	EXTENSION UESidelinkAggregateMaximumBitRate		PRESENCE optional},
	...
}

E-RABs-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeSetup-ItemIEs} }

E-RABs-ToBeSetup-ItemIEs 	X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeSetup-Item	 CRITICALITY ignore 	TYPE E-RABs-ToBeSetup-Item 	PRESENCE mandatory },
	...
}

E-RABs-ToBeSetup-Item ::= SEQUENCE {
	e-RAB-ID					E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	dL-Forwarding					DL-Forwarding													OPTIONAL,
	uL-GTPtunnelEndpoint			GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeSetup-ItemExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeSetup-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-BearerType		CRITICALITY reject	EXTENSION BearerType		PRESENCE optional},
	...
}

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

UE-ContextReferenceAtSeNB ::= SEQUENCE {
	source-GlobalSeNB-ID		GlobalENB-ID,
	seNB-UE-X2AP-ID				UE-X2AP-ID,
	seNB-UE-X2AP-ID-Extension	UE-X2AP-ID-Extension,
	iE-Extensions				ProtocolExtensionContainer { {UE-ContextReferenceAtSeNB-ItemExtIEs} } OPTIONAL,
	...
}

UE-ContextReferenceAtSeNB-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

UE-ContextReferenceAtWT ::= SEQUENCE {
	wTID					WTID,
	wT-UE-XwAP-ID			WT-UE-XwAP-ID,
	iE-Extensions			ProtocolExtensionContainer { {UE-ContextReferenceAtWT-ItemExtIEs} } OPTIONAL,
	...
}

UE-ContextReferenceAtWT-ItemExtIEs	X2AP-PROTOCOL-EXTENSION ::= {
	...
}

UE-ContextReferenceAtSgNB ::= SEQUENCE {
	source-GlobalSgNB-ID			GlobalGNB-ID,
	sgNB-UE-X2AP-ID				SgNB-UE-X2AP-ID,
	iE-Extensions				ProtocolExtensionContainer { {UE-ContextReferenceAtSgNB-ItemExtIEs} } OPTIONAL,
	...
}

UE-ContextReferenceAtSgNB-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- HANDOVER REQUEST ACKNOWLEDGE
--
-- **************************************************************

HandoverRequestAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{HandoverRequestAcknowledge-IEs}},
	...
}

HandoverRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID							CRITICALITY ignore	TYPE UE-X2AP-ID		PRESENCE mandatory}|
	{ ID id-New-eNB-UE-X2AP-ID							CRITICALITY ignore	TYPE UE-X2AP-ID		PRESENCE mandatory}|
	{ ID id-E-RABs-Admitted-List						CRITICALITY ignore	TYPE E-RABs-Admitted-List	PRESENCE mandatory}|
	{ ID id-E-RABs-NotAdmitted-List						CRITICALITY ignore	TYPE E-RAB-List		PRESENCE optional}|
	{ ID id-TargeteNBtoSource-eNBTransparentContainer	CRITICALITY ignore	TYPE TargeteNBtoSource-eNBTransparentContainer	PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics						CRITICALITY ignore	TYPE CriticalityDiagnostics	PRESENCE optional}|
	{ ID id-UE-ContextKeptIndicator						CRITICALITY ignore	TYPE UE-ContextKeptIndicator	PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension					CRITICALITY ignore	TYPE UE-X2AP-ID-Extension	PRESENCE optional}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension				CRITICALITY ignore	TYPE UE-X2AP-ID-Extension	PRESENCE optional}|
	{ ID id-New-eNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension	PRESENCE optional}|
	{ ID id-WT-UE-ContextKeptIndicator					CRITICALITY ignore	TYPE UE-ContextKeptIndicator	PRESENCE optional},
	...
}

E-RABs-Admitted-List 		::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ItemIEs} }

E-RABs-Admitted-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-Item	CRITICALITY ignore	TYPE E-RABs-Admitted-Item 	PRESENCE mandatory	}
}

E-RABs-Admitted-Item ::= SEQUENCE {
	e-RAB-ID					E-RAB-ID,
	uL-GTP-TunnelEndpoint			GTPtunnelEndpoint	OPTIONAL,
	dL-GTP-TunnelEndpoint			GTPtunnelEndpoint	OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-Item-ExtIEs} }	OPTIONAL,
	...
}

E-RABs-Admitted-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- HANDOVER PREPARATION FAILURE
--
-- **************************************************************

HandoverPreparationFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{HandoverPreparationFailure-IEs}},
	...
}

HandoverPreparationFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID				CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics			CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension	CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional},

	...
}

-- **************************************************************
--
-- Handover Report
--
-- **************************************************************

HandoverReport ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{HandoverReport-IEs}},
	...
}

HandoverReport-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-HandoverReportType							CRITICALITY ignore	TYPE HandoverReportType									PRESENCE mandatory}|
	{ ID id-Cause										CRITICALITY ignore	TYPE Cause													PRESENCE mandatory}|
	{ ID id-SourceCellECGI								CRITICALITY ignore	TYPE ECGI													PRESENCE mandatory}|
	{ ID id-FailureCellECGI								CRITICALITY ignore	TYPE ECGI													PRESENCE mandatory}|
	{ ID id-Re-establishmentCellECGI					CRITICALITY ignore	TYPE ECGI													PRESENCE conditional} -- The IE shall be present if the Handover Report Type IE is set to “HO to Wrong Cell” -- |
	{ ID id-TargetCellInUTRAN							CRITICALITY ignore	TYPE TargetCellInUTRAN									PRESENCE conditional} -- The IE shall be present if the Handover Report Type IE is set to "InterRAT ping-pong" --|
	{ ID id-SourceCellCRNTI								CRITICALITY ignore	TYPE CRNTI													PRESENCE optional}|
	{ ID id-MobilityInformation							CRITICALITY ignore	TYPE MobilityInformation									PRESENCE optional}|
	{ ID id-UE-RLF-Report-Container						CRITICALITY ignore	TYPE UE-RLF-Report-Container							PRESENCE optional}|
	{ ID id-UE-RLF-Report-Container-for-extended-bands	CRITICALITY ignore	TYPE UE-RLF-Report-Container-for-extended-bands	PRESENCE optional},
	...
}

-- **************************************************************
--
-- SN Status Transfer
--
-- **************************************************************

SNStatusTransfer ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SNStatusTransfer-IEs}},
	...
}

SNStatusTransfer-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-New-eNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-E-RABs-SubjectToStatusTransfer-List		CRITICALITY ignore	TYPE E-RABs-SubjectToStatusTransfer-List		PRESENCE mandatory}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension							PRESENCE optional}|
	{ ID id-New-eNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension							PRESENCE optional}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID									PRESENCE optional},
	...
}

E-RABs-SubjectToStatusTransfer-List	::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { { E-RABs-SubjectToStatusTransfer-ItemIEs} }

E-RABs-SubjectToStatusTransfer-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-SubjectToStatusTransfer-Item	CRITICALITY ignore	TYPE E-RABs-SubjectToStatusTransfer-Item 	PRESENCE mandatory	}
}

E-RABs-SubjectToStatusTransfer-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,

	receiveStatusofULPDCPSDUs				ReceiveStatusofULPDCPSDUs			OPTIONAL,
	uL-COUNTvalue					COUNTvalue,
	dL-COUNTvalue					COUNTvalue,
	iE-Extensions							ProtocolExtensionContainer { {E-RABs-SubjectToStatusTransfer-ItemExtIEs} } OPTIONAL,
	...
}

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

-- **************************************************************
--
-- UE Context Release
--
-- **************************************************************

UEContextRelease ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{UEContextRelease-IEs}},
	...
}

UEContextRelease-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-New-eNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-New-eNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-SIPTO-BearerDeactivationIndication	CRITICALITY ignore	TYPE SIPTOBearerDeactivationIndication		PRESENCE optional}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID							PRESENCE optional},
	...
}


-- **************************************************************
--
-- HANDOVER CANCEL
--
-- **************************************************************

HandoverCancel ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{HandoverCancel-IEs}},
	...
}

HandoverCancel-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-New-eNB-UE-X2AP-ID					CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE optional}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-New-eNB-UE-X2AP-ID-Extension		CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- ERROR INDICATION
--
-- **************************************************************

ErrorIndication ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ErrorIndication-IEs}},
	...
}

ErrorIndication-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID					CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE optional}|
	{ ID id-New-eNB-UE-X2AP-ID					CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE optional}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE optional}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension		CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-New-eNB-UE-X2AP-ID-Extension		CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-Old-SgNB-UE-X2AP-ID					CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID			PRESENCE optional},
	...
}

-- **************************************************************
--
-- Reset Request
--
-- **************************************************************

ResetRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ResetRequest-IEs}},
	...
}

ResetRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause				CRITICALITY ignore	TYPE Cause				PRESENCE mandatory},
	...
}

-- **************************************************************
--
-- Reset Response
--
-- **************************************************************

ResetResponse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ResetResponse-IEs}},
	...
}

ResetResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional },
	...
}

-- **************************************************************
--
-- X2 SETUP REQUEST
--
-- **************************************************************

X2SetupRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2SetupRequest-IEs}},
	...
}

X2SetupRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID			CRITICALITY reject	TYPE GlobalENB-ID			PRESENCE mandatory}|
	{ ID id-ServedCells				CRITICALITY reject	TYPE ServedCells			PRESENCE mandatory}|
	{ ID id-GUGroupIDList			CRITICALITY reject	TYPE GUGroupIDList			PRESENCE optional}|
	{ ID id-LHN-ID					CRITICALITY ignore	TYPE LHN-ID					PRESENCE optional},
...
}



-- **************************************************************
--
-- X2 SETUP RESPONSE
--
-- **************************************************************

X2SetupResponse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2SetupResponse-IEs}},
	...
}

X2SetupResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID				CRITICALITY reject	TYPE GlobalENB-ID			PRESENCE mandatory}|
	{ ID id-ServedCells					CRITICALITY reject	TYPE ServedCells			PRESENCE mandatory}|
	{ ID id-GUGroupIDList				CRITICALITY reject	TYPE GUGroupIDList			PRESENCE optional}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics	PRESENCE optional}|
	{ ID id-LHN-ID						CRITICALITY ignore	TYPE LHN-ID					PRESENCE optional},
	...
}



-- **************************************************************
--
-- X2 SETUP FAILURE
--
-- **************************************************************

X2SetupFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2SetupFailure-IEs}},
	...
}

X2SetupFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause					CRITICALITY ignore		TYPE Cause								PRESENCE mandatory} |
	{ ID id-TimeToWait				CRITICALITY ignore		TYPE TimeToWait							PRESENCE optional} |
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore		TYPE CriticalityDiagnostics				PRESENCE optional },

	...
}



-- **************************************************************
--
-- LOAD INFORMATION
--
-- **************************************************************

LoadInformation ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{LoadInformation-IEs}},
	...
}

LoadInformation-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellInformation				CRITICALITY ignore	TYPE CellInformation-List		PRESENCE mandatory} ,
	...
}

CellInformation-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellInformation-ItemIEs} }

CellInformation-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellInformation-Item	CRITICALITY ignore	TYPE CellInformation-Item 	PRESENCE mandatory	}
}

CellInformation-Item ::= SEQUENCE {
	cell-ID							ECGI,
	ul-InterferenceOverloadIndication		UL-InterferenceOverloadIndication		OPTIONAL,
	ul-HighInterferenceIndicationInfo		UL-HighInterferenceIndicationInfo		OPTIONAL,
	relativeNarrowbandTxPower				RelativeNarrowbandTxPower				OPTIONAL,
	iE-Extensions							ProtocolExtensionContainer { {CellInformation-Item-ExtIEs} }	OPTIONAL,
	...
}

CellInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-ABSInformation						CRITICALITY ignore	EXTENSION ABSInformation							PRESENCE optional }|
{ ID id-InvokeIndication					CRITICALITY ignore	EXTENSION InvokeIndication							PRESENCE optional }|
{ ID id-IntendedULDLConfiguration			CRITICALITY ignore	EXTENSION SubframeAssignment						PRESENCE optional }|
{ ID id-ExtendedULInterferenceOverloadInfo	CRITICALITY ignore	EXTENSION ExtendedULInterferenceOverloadInfo	PRESENCE optional }|
{ ID id-CoMPInformation						CRITICALITY ignore	EXTENSION CoMPInformation							PRESENCE optional }|
{ ID id-DynamicDLTransmissionInformation	CRITICALITY ignore	EXTENSION DynamicDLTransmissionInformation		PRESENCE optional },
	...
}

-- **************************************************************
--
-- ENB CONFIGURATION UPDATE
--
-- **************************************************************

ENBConfigurationUpdate ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENBConfigurationUpdate-IEs}},
	...
}

ENBConfigurationUpdate-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ServedCellsToAdd			CRITICALITY reject	TYPE ServedCells					PRESENCE optional}|
	{ ID id-ServedCellsToModify			CRITICALITY reject	TYPE ServedCellsToModify			PRESENCE optional}|
	{ ID id-ServedCellsToDelete			CRITICALITY reject	TYPE Old-ECGIs						PRESENCE optional}|
	{ ID id-GUGroupIDToAddList			CRITICALITY reject	TYPE GUGroupIDList					PRESENCE optional}|
	{ ID id-GUGroupIDToDeleteList		CRITICALITY reject	TYPE GUGroupIDList					PRESENCE optional}|
	{ ID id-CoverageModificationList	CRITICALITY reject	TYPE CoverageModificationList		PRESENCE optional},
	...
}

ServedCellsToModify::= SEQUENCE (SIZE (1..maxCellineNB)) OF ServedCellsToModify-Item

ServedCellsToModify-Item::= SEQUENCE {
	old-ecgi						ECGI,
	servedCellInfo					ServedCell-Information,
	neighbour-Info					Neighbour-Information			OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { ServedCellsToModify-Item-ExtIEs} } OPTIONAL,
	...
}

ServedCellsToModify-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-DeactivationIndication			CRITICALITY ignore	EXTENSION DeactivationIndication				PRESENCE optional },
	...
}


Old-ECGIs::= SEQUENCE (SIZE (1..maxCellineNB)) OF ECGI

-- **************************************************************
--
-- ENB CONFIGURATION UPDATE ACKNOWLEDGE
--
-- **************************************************************

ENBConfigurationUpdateAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENBConfigurationUpdateAcknowledge-IEs}},
	...
}

ENBConfigurationUpdateAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional},
...
}

-- **************************************************************
--
-- ENB CONFIGURATION UPDATE FAIURE
--
-- **************************************************************

ENBConfigurationUpdateFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENBConfigurationUpdateFailure-IEs}},
	...
}

ENBConfigurationUpdateFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-TimeToWait					CRITICALITY ignore	TYPE TimeToWait					PRESENCE optional}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional},
	...
}



-- **************************************************************
--
-- Resource Status Request
--
-- **************************************************************

ResourceStatusRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ResourceStatusRequest-IEs}},
	...
}

ResourceStatusRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID			CRITICALITY reject	TYPE Measurement-ID					PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID			CRITICALITY ignore	TYPE Measurement-ID					PRESENCE conditional}|-- The IE shall be present if the Registration Request IE is set to “Stop”, “Partial stop” or to “Add”--
	{ ID id-Registration-Request		CRITICALITY reject	TYPE Registration-Request			PRESENCE mandatory}|
	{ ID id-ReportCharacteristics		CRITICALITY reject	TYPE ReportCharacteristics			PRESENCE optional}|
	{ ID id-CellToReport				CRITICALITY ignore	TYPE CellToReport-List				PRESENCE mandatory}|
	{ ID id-ReportingPeriodicity		CRITICALITY ignore	TYPE ReportingPeriodicity			PRESENCE optional}|
	{ ID id-PartialSuccessIndicator		CRITICALITY ignore	TYPE PartialSuccessIndicator		PRESENCE optional}|
	{ ID id-ReportingPeriodicityRSRPMR	CRITICALITY ignore	TYPE ReportingPeriodicityRSRPMR		PRESENCE optional}|
	{ ID id-ReportingPeriodicityCSIR	CRITICALITY ignore	TYPE ReportingPeriodicityCSIR		PRESENCE optional},
	...
}


CellToReport-List 		::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellToReport-ItemIEs} }

CellToReport-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellToReport-Item	CRITICALITY ignore	TYPE CellToReport-Item 	PRESENCE mandatory}
}

CellToReport-Item ::= SEQUENCE {
	cell-ID									ECGI,
	iE-Extensions							ProtocolExtensionContainer { {CellToReport-Item-ExtIEs} } OPTIONAL,
	...
}

CellToReport-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


ReportingPeriodicity ::= ENUMERATED {
	one-thousand-ms,
	two-thousand-ms,
	five-thousand-ms,
	ten-thousand-ms,
...
}

PartialSuccessIndicator ::= ENUMERATED {
	partial-success-allowed,
...
}

-- **************************************************************
--
-- Resource Status Response
--
-- **************************************************************

ResourceStatusResponse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ResourceStatusResponse-IEs}},
	...
}

ResourceStatusResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID					CRITICALITY reject	TYPE Measurement-ID							PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID					CRITICALITY reject	TYPE Measurement-ID							PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics					PRESENCE optional}|
	{ ID id-MeasurementInitiationResult-List	CRITICALITY ignore	TYPE MeasurementInitiationResult-List	PRESENCE optional},
	...
}


MeasurementInitiationResult-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { { MeasurementInitiationResult-ItemIEs} }

MeasurementInitiationResult-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeasurementInitiationResult-Item	CRITICALITY ignore	TYPE MeasurementInitiationResult-Item	PRESENCE mandatory}
}

MeasurementInitiationResult-Item ::= SEQUENCE {
	cell-ID											ECGI,
	measurementFailureCause-List					MeasurementFailureCause-List	OPTIONAL,
	iE-Extensions									ProtocolExtensionContainer { { MeasurementInitiationResult-Item-ExtIEs} }	OPTIONAL,
	...
}

MeasurementInitiationResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

MeasurementFailureCause-List ::= SEQUENCE (SIZE (1..maxFailedMeasObjects)) OF ProtocolIE-Single-Container { { MeasurementFailureCause-ItemIEs} }

MeasurementFailureCause-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeasurementFailureCause-Item	CRITICALITY ignore	TYPE MeasurementFailureCause-Item		PRESENCE mandatory}
}

MeasurementFailureCause-Item ::= SEQUENCE {
	measurementFailedReportCharacteristics			ReportCharacteristics,
	cause											Cause,
	iE-Extensions									ProtocolExtensionContainer { { MeasurementFailureCause-Item-ExtIEs} }	OPTIONAL,
	...
}

MeasurementFailureCause-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- Resource Status Failure
--
-- **************************************************************

ResourceStatusFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ResourceStatusFailure-IEs}},
	...
}

ResourceStatusFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID						CRITICALITY reject	TYPE Measurement-ID									PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID						CRITICALITY reject	TYPE Measurement-ID									PRESENCE mandatory}|
	{ ID id-Cause									CRITICALITY ignore	TYPE Cause											PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics					CRITICALITY ignore	TYPE CriticalityDiagnostics						PRESENCE optional}|
	{ ID id-CompleteFailureCauseInformation-List	CRITICALITY ignore	TYPE CompleteFailureCauseInformation-List	PRESENCE optional},
	...
}

CompleteFailureCauseInformation-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CompleteFailureCauseInformation-ItemIEs} }

CompleteFailureCauseInformation-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CompleteFailureCauseInformation-Item	CRITICALITY ignore	TYPE CompleteFailureCauseInformation-Item	PRESENCE mandatory}
}

CompleteFailureCauseInformation-Item ::= SEQUENCE {
	cell-ID											ECGI,
	measurementFailureCause-List					MeasurementFailureCause-List,
	iE-Extensions									ProtocolExtensionContainer { { CompleteFailureCauseInformation-Item-ExtIEs} }	OPTIONAL,
	...
}

CompleteFailureCauseInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- Resource Status Update
--
-- **************************************************************

ResourceStatusUpdate ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ResourceStatusUpdate-IEs}},
	...
}

ResourceStatusUpdate-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID		CRITICALITY reject	TYPE Measurement-ID					PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID		CRITICALITY reject	TYPE Measurement-ID					PRESENCE mandatory}|
	{ ID id-CellMeasurementResult	CRITICALITY ignore	TYPE CellMeasurementResult-List		PRESENCE mandatory},
	...
}

CellMeasurementResult-List ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ProtocolIE-Single-Container { {CellMeasurementResult-ItemIEs} }

CellMeasurementResult-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellMeasurementResult-Item	CRITICALITY ignore	TYPE CellMeasurementResult-Item	PRESENCE mandatory}
}

CellMeasurementResult-Item ::= SEQUENCE {
	cell-ID						ECGI,
	hWLoadIndicator				HWLoadIndicator		OPTIONAL,
	s1TNLLoadIndicator			S1TNLLoadIndicator	OPTIONAL,
	radioResourceStatus			RadioResourceStatus	OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { {CellMeasurementResult-Item-ExtIEs} }	OPTIONAL,
	...
}

CellMeasurementResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-CompositeAvailableCapacityGroup	CRITICALITY ignore	EXTENSION CompositeAvailableCapacityGroup		PRESENCE optional}|
	{ ID id-ABS-Status						CRITICALITY ignore	EXTENSION ABS-Status								PRESENCE optional}|
	{ ID id-RSRPMRList						CRITICALITY ignore	EXTENSION RSRPMRList								PRESENCE optional}|
	{ ID id-CSIReportList					CRITICALITY ignore	EXTENSION CSIReportList								PRESENCE optional}|
	{ ID id-CellReportingIndicator			CRITICALITY ignore	EXTENSION CellReportingIndicator					PRESENCE optional},
	...
}


-- **************************************************************
--
-- PRIVATE MESSAGE
--
-- **************************************************************

PrivateMessage ::= SEQUENCE {
	privateIEs		PrivateIE-Container	{{PrivateMessage-IEs}},
	...
}

PrivateMessage-IEs X2AP-PRIVATE-IES ::= {
	...
}

-- **************************************************************
--
-- MOBILITY CHANGE REQUEST
--
-- **************************************************************

MobilityChangeRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{MobilityChangeRequest-IEs}},
	...
}

MobilityChangeRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Cell-ID						CRITICALITY reject	TYPE ECGI											PRESENCE mandatory}|
	{ ID id-ENB2-Cell-ID						CRITICALITY reject	TYPE ECGI											PRESENCE mandatory}|
	{ ID id-ENB1-Mobility-Parameters			CRITICALITY ignore	TYPE MobilityParametersInformation				PRESENCE optional}|
	{ ID id-ENB2-Proposed-Mobility-Parameters	CRITICALITY reject	TYPE MobilityParametersInformation				PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY reject	TYPE Cause											PRESENCE mandatory},
	...
}

-- **************************************************************
--
-- MOBILITY CHANGE ACKNOWLEDGE
--
-- **************************************************************

MobilityChangeAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{MobilityChangeAcknowledge-IEs}},
	...
}

MobilityChangeAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Cell-ID			CRITICALITY reject	TYPE ECGI							PRESENCE mandatory}|
	{ ID id-ENB2-Cell-ID			CRITICALITY reject	TYPE ECGI							PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional},
	...
}


-- **************************************************************
--
-- MOBILITY CHANGE FAILURE
--
-- **************************************************************

MobilityChangeFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{MobilityChangeFailure-IEs}},
	...
}

MobilityChangeFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Cell-ID									CRITICALITY ignore	TYPE ECGI												PRESENCE mandatory}|
	{ ID id-ENB2-Cell-ID									CRITICALITY ignore	TYPE ECGI												PRESENCE mandatory}|
	{ ID id-Cause											CRITICALITY ignore	TYPE Cause												PRESENCE mandatory}|
	{ ID id-ENB2-Mobility-Parameters-Modification-Range		CRITICALITY ignore	TYPE MobilityParametersModificationRange		PRESENCE optional}|
	{ ID id-CriticalityDiagnostics							CRITICALITY ignore	TYPE CriticalityDiagnostics						PRESENCE optional},
	...
}

-- **************************************************************
--
-- Radio Link Failure Indication
--
-- **************************************************************

RLFIndication ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{RLFIndication-IEs}},
	...
}

RLFIndication-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-FailureCellPCI								CRITICALITY ignore	TYPE PCI														PRESENCE mandatory}|
	{ ID id-Re-establishmentCellECGI					CRITICALITY ignore	TYPE ECGI														PRESENCE mandatory}|
	{ ID id-FailureCellCRNTI							CRITICALITY ignore	TYPE CRNTI														PRESENCE mandatory}|
	{ ID id-ShortMAC-I									CRITICALITY ignore	TYPE ShortMAC-I													PRESENCE optional}|
	{ ID id-UE-RLF-Report-Container						CRITICALITY ignore	TYPE UE-RLF-Report-Container								PRESENCE optional}|
	{ ID id-RRCConnSetupIndicator						CRITICALITY reject	TYPE RRCConnSetupIndicator									PRESENCE optional}|
	{ ID id-RRCConnReestabIndicator						CRITICALITY ignore	TYPE RRCConnReestabIndicator								PRESENCE optional}|
	{ ID id-UE-RLF-Report-Container-for-extended-bands	CRITICALITY ignore	TYPE UE-RLF-Report-Container-for-extended-bands		PRESENCE optional},
	...
}


-- **************************************************************
--
-- Cell Activation Request
--
-- **************************************************************

CellActivationRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{CellActivationRequest-IEs}},
	...
}

CellActivationRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ServedCellsToActivate 	CRITICALITY reject	TYPE ServedCellsToActivate		PRESENCE mandatory},
	...
}

ServedCellsToActivate::= SEQUENCE (SIZE (1..maxCellineNB)) OF ServedCellsToActivate-Item

ServedCellsToActivate-Item::= SEQUENCE {
	ecgi						ECGI,
	iE-Extensions					ProtocolExtensionContainer { { ServedCellsToActivate-Item-ExtIEs} } OPTIONAL,
	...
}

ServedCellsToActivate-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- Cell Activation Response
--
-- **************************************************************

CellActivationResponse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{CellActivationResponse-IEs}},
	...
}

CellActivationResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ActivatedCellList		CRITICALITY ignore	TYPE ActivatedCellList				PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional},
	...
}

ActivatedCellList ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ActivatedCellList-Item

ActivatedCellList-Item::= SEQUENCE {
	ecgi								ECGI,
	iE-Extensions						ProtocolExtensionContainer { { ActivatedCellList-Item-ExtIEs} } OPTIONAL,
	...
}

ActivatedCellList-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

--**************************************************************
--
-- CELL ACTIVATION FAILURE
--
-- **************************************************************

CellActivationFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{CellActivationFailure-IEs}},
	...
}

CellActivationFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause						PRESENCE mandatory }|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional },
	...
}

-- **************************************************************
--
-- X2 RELEASE
--
-- **************************************************************

X2Release ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2Release-IEs}},
	...
}

X2Release-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID			CRITICALITY reject	TYPE GlobalENB-ID			PRESENCE mandatory},
...
}

-- **************************************************************
--
-- X2AP Message Transfer
--
-- **************************************************************

X2APMessageTransfer ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2APMessageTransfer-IEs}},
	...
}

X2APMessageTransfer-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-RNL-Header	CRITICALITY reject	TYPE RNL-Header				PRESENCE mandatory}|
	{ ID id-x2APMessage	CRITICALITY reject	TYPE X2AP-Message			PRESENCE optional},
	...
}

RNL-Header ::= SEQUENCE {
	source-GlobalENB-ID	GlobalENB-ID,
	target-GlobalENB-ID	GlobalENB-ID	OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { RNL-Header-Item-ExtIEs} } OPTIONAL,
	...
}

RNL-Header-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

X2AP-Message ::= OCTET STRING

-- **************************************************************
--
-- SENB ADDITION REQUEST
--
-- **************************************************************

SeNBAdditionRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBAdditionRequest-IEs}},
	...
}

SeNBAdditionRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-UE-SecurityCapabilities			CRITICALITY reject	TYPE UESecurityCapabilities				PRESENCE conditional}|
	-- This IE shall be present if the Bearer Option IE is set to the value “SCG bearer” --
	{ ID id-SeNBSecurityKey					CRITICALITY reject	TYPE SeNBSecurityKey					PRESENCE conditional}|
	-- This IE shall be present if the Bearer Option IE is set to the value “SCG bearer” --
	{ ID id-SeNBUEAggregateMaximumBitRate	CRITICALITY reject	TYPE UEAggregateMaximumBitRate			PRESENCE mandatory}|
	{ ID id-ServingPLMN						CRITICALITY ignore	TYPE PLMN-Identity						PRESENCE optional}|
	{ ID id-E-RABs-ToBeAdded-List			CRITICALITY reject	TYPE E-RABs-ToBeAdded-List				PRESENCE mandatory}|
	{ ID id-MeNBtoSeNBContainer				CRITICALITY reject	TYPE MeNBtoSeNBContainer				PRESENCE mandatory}|
	{ ID id-CSGMembershipStatus				CRITICALITY reject	TYPE CSGMembershipStatus				PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID							PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension				PRESENCE optional}|
	{ ID id-ExpectedUEBehaviour				CRITICALITY ignore	TYPE ExpectedUEBehaviour				PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension				PRESENCE optional},
	...
}

E-RABs-ToBeAdded-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { { E-RABs-ToBeAdded-ItemIEs} }

E-RABs-ToBeAdded-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeAdded-Item	CRITICALITY reject	TYPE E-RABs-ToBeAdded-Item		PRESENCE mandatory},
	...
}

E-RABs-ToBeAdded-Item ::= CHOICE {
	sCG-Bearer		E-RABs-ToBeAdded-Item-SCG-Bearer,
	split-Bearer	E-RABs-ToBeAdded-Item-Split-Bearer,
	...
}

E-RABs-ToBeAdded-Item-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	dL-Forwarding					DL-Forwarding																	OPTIONAL,
	s1-UL-GTPtunnelEndpoint			GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-Item-SCG-BearerExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeAdded-Item-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-Correlation-ID				CRITICALITY ignore	EXTENSION Correlation-ID		PRESENCE optional}|
	{ ID id-SIPTO-Correlation-ID		CRITICALITY ignore	EXTENSION Correlation-ID		PRESENCE optional},
	...
}

E-RABs-ToBeAdded-Item-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	meNB-GTPtunnelEndpoint			GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-Item-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeAdded-Item-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB ADDITION REQUEST ACKNOWLEDGE
--
-- **************************************************************

SeNBAdditionRequestAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBAdditionRequestAcknowledge-IEs}},
	...
}

SeNBAdditionRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-E-RABs-Admitted-ToBeAdded-List		CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-List	PRESENCE mandatory}|
	{ ID id-E-RABs-NotAdmitted-List				CRITICALITY ignore	TYPE E-RAB-List							PRESENCE optional}|
	{ ID id-SeNBtoMeNBContainer					CRITICALITY reject	TYPE SeNBtoMeNBContainer				PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics				PRESENCE optional}|
	{ ID id-GW-TransportLayerAddress			CRITICALITY ignore	TYPE TransportLayerAddress				PRESENCE optional}|
	{ ID id-SIPTO-L-GW-TransportLayerAddress	CRITICALITY ignore	TYPE TransportLayerAddress				PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension				PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension				PRESENCE optional}|
	{ ID id-Tunnel-Information-for-BBF			CRITICALITY ignore	TYPE TunnelInformation					PRESENCE optional},
	...
}

E-RABs-Admitted-ToBeAdded-List ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeAdded-ItemIEs} }

E-RABs-Admitted-ToBeAdded-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeAdded-Item	CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-Item 		PRESENCE mandatory}
}

E-RABs-Admitted-ToBeAdded-Item ::= CHOICE {
	sCG-Bearer		E-RABs-Admitted-ToBeAdded-Item-SCG-Bearer,
	split-Bearer	E-RABs-Admitted-ToBeAdded-Item-Split-Bearer,
	...
}

E-RABs-Admitted-ToBeAdded-Item-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	s1-DL-GTPtunnelEndpoint					GTPtunnelEndpoint,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																	OPTIONAL,
	uL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																	OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-Item-SCG-BearerExtIEs} }	OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-Item-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeAdded-Item-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	seNB-GTPtunnelEndpoint			GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-Item-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-Item-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB ADDITION REQUEST REJECT
--
-- **************************************************************

SeNBAdditionRequestReject ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBAdditionRequestReject-IEs}},
	...
}

SeNBAdditionRequestReject-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics			CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SENB RECONFIGURATION COMPLETE
--
-- **************************************************************

SeNBReconfigurationComplete ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBReconfigurationComplete-IEs}},
	...
}

SeNBReconfigurationComplete-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-ResponseInformationSeNBReconfComp		CRITICALITY ignore	TYPE ResponseInformationSeNBReconfComp	PRESENCE mandatory}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension						PRESENCE optional},
	...
}

ResponseInformationSeNBReconfComp ::= CHOICE {
	success				ResponseInformationSeNBReconfComp-SuccessItem,
	reject-by-MeNB		ResponseInformationSeNBReconfComp-RejectByMeNBItem,
	...
}

ResponseInformationSeNBReconfComp-SuccessItem ::= SEQUENCE {
	meNBtoSeNBContainer				MeNBtoSeNBContainer OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {ResponseInformationSeNBReconfComp-SuccessItemExtIEs} }	OPTIONAL,
	...
}

ResponseInformationSeNBReconfComp-SuccessItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ResponseInformationSeNBReconfComp-RejectByMeNBItem ::= SEQUENCE {
	cause							Cause,
	meNBtoSeNBContainer				MeNBtoSeNBContainer																						OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { ResponseInformationSeNBReconfComp-RejectByMeNBItemExtIEs} }	OPTIONAL,
	...
}

ResponseInformationSeNBReconfComp-RejectByMeNBItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB MODIFICATION REQUEST
--
-- **************************************************************

SeNBModificationRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ SeNBModificationRequest-IEs}},
	...
}

SeNBModificationRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID								PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID								PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause									PRESENCE mandatory}|
	{ ID id-SCGChangeIndication					CRITICALITY ignore	TYPE SCGChangeIndication					PRESENCE optional}|
	{ ID id-ServingPLMN							CRITICALITY ignore	TYPE PLMN-Identity							PRESENCE optional}|
	{ ID id-UE-ContextInformationSeNBModReq		CRITICALITY reject	TYPE UE-ContextInformationSeNBModReq	PRESENCE optional}|
	{ ID id-MeNBtoSeNBContainer					CRITICALITY ignore	TYPE MeNBtoSeNBContainer					PRESENCE optional}|
	{ ID id-CSGMembershipStatus					CRITICALITY reject	TYPE CSGMembershipStatus					PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension					PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension					PRESENCE optional},
	...
}

UE-ContextInformationSeNBModReq ::= SEQUENCE {
	uE-SecurityCapabilities			UESecurityCapabilities															OPTIONAL,
	seNB-SecurityKey				SeNBSecurityKey 																OPTIONAL,
	seNBUEAggregateMaximumBitRate	UEAggregateMaximumBitRate														OPTIONAL,
	e-RABs-ToBeAdded				E-RABs-ToBeAdded-List-ModReq													OPTIONAL,
	e-RABs-ToBeModified				E-RABs-ToBeModified-List-ModReq													OPTIONAL,
	e-RABs-ToBeReleased				E-RABs-ToBeReleased-List-ModReq													OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { UE-ContextInformationSeNBModReqExtIEs} }	OPTIONAL,
	...
}

UE-ContextInformationSeNBModReqExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeAdded-List-ModReq ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeAdded-ModReqItemIEs} }

E-RABs-ToBeAdded-ModReqItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeAdded-ModReqItem	CRITICALITY ignore	TYPE E-RABs-ToBeAdded-ModReqItem	PRESENCE mandatory},
	...
}

E-RABs-ToBeAdded-ModReqItem ::= CHOICE {
	sCG-Bearer		E-RABs-ToBeAdded-ModReqItem-SCG-Bearer,
	split-Bearer	E-RABs-ToBeAdded-ModReqItem-Split-Bearer,
	...
}

E-RABs-ToBeAdded-ModReqItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	dL-Forwarding					DL-Forwarding																	OPTIONAL,
	s1-UL-GTPtunnelEndpoint			GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-ModReqItem-SCG-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeAdded-ModReqItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-Correlation-ID				CRITICALITY ignore	EXTENSION Correlation-ID		PRESENCE optional}|
	{ ID id-SIPTO-Correlation-ID		CRITICALITY ignore	EXTENSION Correlation-ID		PRESENCE optional},
	...
}

E-RABs-ToBeAdded-ModReqItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	meNB-GTPtunnelEndpoint			GTPtunnelEndpoint,
	iE-Extensions			ProtocolExtensionContainer { {E-RABs-ToBeAdded-ModReqItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeAdded-ModReqItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeModified-List-ModReq ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeModified-ModReqItemIEs} }

E-RABs-ToBeModified-ModReqItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeModified-ModReqItem	CRITICALITY ignore	TYPE E-RABs-ToBeModified-ModReqItem		PRESENCE mandatory},
	...
}


E-RABs-ToBeModified-ModReqItem ::= CHOICE {
	sCG-Bearer		E-RABs-ToBeModified-ModReqItem-SCG-Bearer,
	split-Bearer	E-RABs-ToBeModified-ModReqItem-Split-Bearer,
	...
}

E-RABs-ToBeModified-ModReqItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters														OPTIONAL,
	s1-UL-GTPtunnelEndpoint			GTPtunnelEndpoint																OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeModified-ModReqItem-SCG-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeModified-ModReqItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeModified-ModReqItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters																OPTIONAL,
	meNB-GTPtunnelEndpoint			GTPtunnelEndpoint																		OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeModified-ModReqItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeModified-ModReqItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-List-ModReq ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-ModReqItemIEs} }

E-RABs-ToBeReleased-ModReqItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-ModReqItem	CRITICALITY ignore	TYPE E-RABs-ToBeReleased-ModReqItem		PRESENCE mandatory},
	...
}

E-RABs-ToBeReleased-ModReqItem ::= CHOICE {
	sCG-Bearer		E-RABs-ToBeReleased-ModReqItem-SCG-Bearer,
	split-Bearer	E-RABs-ToBeReleased-ModReqItem-Split-Bearer,
	...
}

E-RABs-ToBeReleased-ModReqItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint												OPTIONAL,
	uL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint												OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-ModReqItem-SCG-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-ModReqItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-ModReqItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint												OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-ModReqItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-ModReqItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB MODIFICATION REQUEST ACKNOWLEDGE
--
-- **************************************************************

SeNBModificationRequestAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBModificationRequestAcknowledge-IEs}},
	...
}

SeNBModificationRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID								CRITICALITY ignore	TYPE UE-X2AP-ID											PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID								CRITICALITY ignore	TYPE UE-X2AP-ID											PRESENCE mandatory}|
	{ ID id-E-RABs-Admitted-ToBeAdded-ModAckList		CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-ModAckList		PRESENCE optional}|
	{ ID id-E-RABs-Admitted-ToBeModified-ModAckList		CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeModified-ModAckList	PRESENCE optional}|
	{ ID id-E-RABs-Admitted-ToBeReleased-ModAckList		CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeReleased-ModAckList	PRESENCE optional}|
	{ ID id-E-RABs-NotAdmitted-List						CRITICALITY ignore	TYPE E-RAB-List											PRESENCE optional}|
	{ ID id-SeNBtoMeNBContainer							CRITICALITY ignore	TYPE SeNBtoMeNBContainer								PRESENCE optional}|
	{ ID id-CriticalityDiagnostics						CRITICALITY ignore	TYPE CriticalityDiagnostics							PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension					CRITICALITY ignore	TYPE UE-X2AP-ID-Extension							PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension					CRITICALITY ignore	TYPE UE-X2AP-ID-Extension							PRESENCE optional},
	...
}

E-RABs-Admitted-ToBeAdded-ModAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeAdded-ModAckItemIEs} }

E-RABs-Admitted-ToBeAdded-ModAckItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeAdded-ModAckItem	CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-ModAckItem		PRESENCE mandatory}
}

E-RABs-Admitted-ToBeAdded-ModAckItem ::= CHOICE {
	sCG-Bearer		E-RABs-Admitted-ToBeAdded-ModAckItem-SCG-Bearer,
	split-Bearer	E-RABs-Admitted-ToBeAdded-ModAckItem-Split-Bearer,
	...
}

E-RABs-Admitted-ToBeAdded-ModAckItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	s1-DL-GTPtunnelEndpoint					GTPtunnelEndpoint,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																	OPTIONAL,
	uL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																	OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-ModAckItem-SCG-BearerExtIEs} }	OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-ModAckItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeAdded-ModAckItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	seNB-GTPtunnelEndpoint			GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-ModAckItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-ModAckItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}
E-RABs-Admitted-ToBeModified-ModAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeModified-ModAckItemIEs} }

E-RABs-Admitted-ToBeModified-ModAckItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeModified-ModAckItem		CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeModified-ModAckItem	PRESENCE mandatory}
}

E-RABs-Admitted-ToBeModified-ModAckItem ::= CHOICE {
	sCG-Bearer		E-RABs-Admitted-ToBeModified-ModAckItem-SCG-Bearer,
	split-Bearer	E-RABs-Admitted-ToBeModified-ModAckItem-Split-Bearer,
	...
}

E-RABs-Admitted-ToBeModified-ModAckItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	s1-DL-GTPtunnelEndpoint			GTPtunnelEndpoint																	OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeModified-ModAckItem-SCG-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-Admitted-ToBeModified-ModAckItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeModified-ModAckItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	seNB-GTPtunnelEndpoint			GTPtunnelEndpoint																			OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeModified-ModAckItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-Admitted-ToBeModified-ModAckItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeReleased-ModAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeReleased-ModAckItemIEs} }

E-RABs-Admitted-ToBeReleased-ModAckItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeReleased-ModAckItem		CRITICALITY ignore	TYPE E-RABs-Admitted-ToReleased-ModAckItem		PRESENCE mandatory}
}

E-RABs-Admitted-ToReleased-ModAckItem ::= CHOICE {
	sCG-Bearer		E-RABs-Admitted-ToBeReleased-ModAckItem-SCG-Bearer,
	split-Bearer	E-RABs-Admitted-ToBeReleased-ModAckItem-Split-Bearer,
	...
}

E-RABs-Admitted-ToBeReleased-ModAckItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID					E-RAB-ID,
	iE-Extensions				ProtocolExtensionContainer { {E-RABs-Admitted-ToBeReleased-ModAckItem-SCG-BearerExtIEs} }	OPTIONAL,
	...
}

E-RABs-Admitted-ToBeReleased-ModAckItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeReleased-ModAckItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID					E-RAB-ID,
	iE-Extensions				ProtocolExtensionContainer { {E-RABs-Admitted-ToBeReleased-ModAckItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-Admitted-ToBeReleased-ModAckItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB MODIFICATION REQUEST REJECT
--
-- **************************************************************

SeNBModificationRequestReject ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBModificationRequestReject-IEs}},
	...
}

SeNBModificationRequestReject-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SENB MODIFICATION REQUIRED
--
-- **************************************************************

SeNBModificationRequired ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SeNBModificationRequired-IEs}},
	...
}

SeNBModificationRequired-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause								PRESENCE mandatory}|
	{ ID id-SCGChangeIndication					CRITICALITY ignore	TYPE SCGChangeIndication				PRESENCE optional}|
	{ ID id-E-RABs-ToBeReleased-ModReqd			CRITICALITY ignore	TYPE E-RABs-ToBeReleased-ModReqd		PRESENCE optional}|
	{ ID id-SeNBtoMeNBContainer					CRITICALITY ignore	TYPE SeNBtoMeNBContainer				PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension				PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension				PRESENCE optional},
	...
}


E-RABs-ToBeReleased-ModReqd ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-ModReqdItemIEs} }

E-RABs-ToBeReleased-ModReqdItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-ModReqdItem	 CRITICALITY ignore		TYPE E-RABs-ToBeReleased-ModReqdItem	PRESENCE mandatory },
	...
}

E-RABs-ToBeReleased-ModReqdItem ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	cause							Cause,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-ModReqdItemExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-ModReqdItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB MODIFICATION CONFIRM
--
-- **************************************************************

SeNBModificationConfirm ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBModificationConfirm-IEs}},
	...
}

SeNBModificationConfirm-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID						PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID						PRESENCE mandatory}|
	{ ID id-MeNBtoSeNBContainer					CRITICALITY ignore	TYPE MeNBtoSeNBContainer			PRESENCE optional}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension			PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension			PRESENCE optional},
	...
}

-- **************************************************************
--
-- SENB MODIFICATION REFUSE
--
-- **************************************************************

SeNBModificationRefuse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SeNBModificationRefuse-IEs}},
	...
}

SeNBModificationRefuse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-MeNBtoSeNBContainer					CRITICALITY ignore	TYPE MeNBtoSeNBContainer		PRESENCE optional}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SENB RELEASE REQUEST
--
-- **************************************************************

SeNBReleaseRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SeNBReleaseRequest-IEs}},
	...
}

SeNBReleaseRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID									PRESENCE optional}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause										PRESENCE optional}|
	{ ID id-E-RABs-ToBeReleased-List-RelReq		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-List-RelReq		PRESENCE optional}|
	{ ID id-UE-ContextKeptIndicator				CRITICALITY ignore	TYPE UE-ContextKeptIndicator					PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-MakeBeforeBreakIndicator			CRITICALITY ignore	TYPE MakeBeforeBreakIndicator					PRESENCE optional},
	...
}
E-RABs-ToBeReleased-List-RelReq ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-RelReqItemIEs} }

E-RABs-ToBeReleased-RelReqItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-RelReqItem		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-RelReqItem		PRESENCE mandatory},
	...
}

E-RABs-ToBeReleased-RelReqItem ::= CHOICE {
	sCG-Bearer		E-RABs-ToBeReleased-RelReqItem-SCG-Bearer,
	split-Bearer	E-RABs-ToBeReleased-RelReqItem-Split-Bearer,
	...
}

E-RABs-ToBeReleased-RelReqItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	uL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint												OPTIONAL,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint												OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-RelReqItem-SCG-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-RelReqItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-RelReqItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint													OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-RelReqItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-RelReqItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB RELEASE REQUIRED
--
-- **************************************************************

SeNBReleaseRequired ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBReleaseRequired-IEs}},
	...
}

SeNBReleaseRequired-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-MeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SENB RELEASE CONFIRM
--
-- **************************************************************

SeNBReleaseConfirm ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBReleaseConfirm-IEs}},
	...
}

SeNBReleaseConfirm-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY ignore	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID							CRITICALITY ignore	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-E-RABs-ToBeReleased-List-RelConf		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-List-RelConf		PRESENCE optional}|
	{ ID id-CriticalityDiagnostics					CRITICALITY ignore	TYPE CriticalityDiagnostics					PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY ignore	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension				CRITICALITY ignore	TYPE UE-X2AP-ID-Extension						PRESENCE optional},
	...
}
E-RABs-ToBeReleased-List-RelConf ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-RelConfItemIEs} }

E-RABs-ToBeReleased-RelConfItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-RelConfItem		CRITICALITY ignore		TYPE E-RABs-ToBeReleased-RelConfItem		PRESENCE mandatory},
	...
}

E-RABs-ToBeReleased-RelConfItem ::= CHOICE {
	sCG-Bearer		E-RABs-ToBeReleased-RelConfItem-SCG-Bearer,
	split-Bearer	E-RABs-ToBeReleased-RelConfItem-Split-Bearer,
	...
}

E-RABs-ToBeReleased-RelConfItem-SCG-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	uL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint												OPTIONAL,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint												OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-RelConfItem-SCG-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-RelConfItem-SCG-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-RelConfItem-Split-Bearer ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint													OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-RelConfItem-Split-BearerExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-RelConfItem-Split-BearerExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SENB COUNTER CHECK REQUEST
--
-- **************************************************************

SeNBCounterCheckRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SeNBCounterCheckRequest-IEs}},
	...
}

SeNBCounterCheckRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-E-RABs-SubjectToCounterCheck-List	CRITICALITY ignore	TYPE E-RABs-SubjectToCounterCheck-List		PRESENCE mandatory}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension						PRESENCE optional},
	...
}
E-RABs-SubjectToCounterCheck-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-SubjectToCounterCheckItemIEs} }

E-RABs-SubjectToCounterCheckItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-SubjectToCounterCheckItem	CRITICALITY ignore	TYPE E-RABs-SubjectToCounterCheckItem		PRESENCE mandatory},
	...
}

E-RABs-SubjectToCounterCheckItem ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	uL-Count						INTEGER (0..4294967295),
	dL-Count						INTEGER (0..4294967295),
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-SubjectToCounterCheckItemExtIEs} } OPTIONAL,
	...
}

E-RABs-SubjectToCounterCheckItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- X2 REMOVAL REQUEST
--
-- **************************************************************

X2RemovalRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2RemovalRequest-IEs}},
	...
}

X2RemovalRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID				CRITICALITY reject	TYPE GlobalENB-ID			PRESENCE mandatory}|
	{ ID id-X2RemovalThreshold			CRITICALITY reject	TYPE X2BenefitValue			PRESENCE optional},
...
}



-- **************************************************************
--
-- X2 REMOVAL RESPONSE
--
-- **************************************************************

X2RemovalResponse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2RemovalResponse-IEs}},
	...
}

X2RemovalResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID				CRITICALITY reject	TYPE GlobalENB-ID				PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional},
	...
}



-- **************************************************************
--
-- X2 REMOVAL FAILURE
--
-- **************************************************************

X2RemovalFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{X2RemovalFailure-IEs}},
	...
}

X2RemovalFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause							PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional},
	...
}


-- **************************************************************
--
-- RETRIEVE UE CONTEXT REQUEST
--
-- **************************************************************

RetrieveUEContextRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ RetrieveUEContextRequest-IEs}},
	...
}

RetrieveUEContextRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-New-eNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID				PRESENCE mandatory}|
	{ ID id-SeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension	PRESENCE optional}|
	{ ID id-resumeID							CRITICALITY reject	TYPE ResumeID				PRESENCE mandatory}|
	{ ID id-ShortMAC-I							CRITICALITY reject	TYPE ShortMAC-I				PRESENCE mandatory}|
	{ ID id-NewEUTRANCellIdentifier				CRITICALITY reject	TYPE EUTRANCellIdentifier	PRESENCE mandatory},
	...
}

-- **************************************************************
--
-- RETRIEVE UE CONTEXT RESPONSE
--
-- **************************************************************

RetrieveUEContextResponse ::= SEQUENCE {
	protocolIEs			ProtocolIE-Container	{{ RetrieveUEContextResponse-IEs}},
	...
}

RetrieveUEContextResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-New-eNB-UE-X2AP-ID				CRITICALITY ignore	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-New-eNB-UE-X2AP-ID-Extension	CRITICALITY ignore	TYPE UE-X2AP-ID-Extension				PRESENCE optional}|
	{ ID id-Old-eNB-UE-X2AP-ID				CRITICALITY ignore	TYPE UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-Old-eNB-UE-X2AP-ID-Extension	CRITICALITY ignore	TYPE UE-X2AP-ID-Extension				PRESENCE optional}|
	{ ID id-GUMMEI-ID						CRITICALITY reject	TYPE GUMMEI								PRESENCE mandatory}|
	{ ID id-UE-ContextInformationRetrieve	CRITICALITY reject	TYPE UE-ContextInformationRetrieve	PRESENCE mandatory}|
	{ ID id-TraceActivation					CRITICALITY ignore	TYPE TraceActivation					PRESENCE optional}|
	{ ID id-SRVCCOperationPossible			CRITICALITY ignore	TYPE SRVCCOperationPossible				PRESENCE optional}|
	{ ID id-Masked-IMEISV					CRITICALITY ignore	TYPE Masked-IMEISV						PRESENCE optional}|
	{ ID id-ExpectedUEBehaviour				CRITICALITY ignore	TYPE ExpectedUEBehaviour				PRESENCE optional}|
	{ ID id-ProSeAuthorized					CRITICALITY ignore	TYPE ProSeAuthorized					PRESENCE optional}|
	{ ID id-CriticalityDiagnostics			CRITICALITY ignore	TYPE CriticalityDiagnostics				PRESENCE optional}|
	{ ID id-V2XServicesAuthorized			CRITICALITY ignore	TYPE V2XServicesAuthorized				PRESENCE optional},
	...
}

UE-ContextInformationRetrieve ::= SEQUENCE {
	mME-UE-S1AP-ID						UE-S1AP-ID,
	uESecurityCapabilities				UESecurityCapabilities,
	aS-SecurityInformation				AS-SecurityInformation,
	uEaggregateMaximumBitRate			UEAggregateMaximumBitRate,
	subscriberProfileIDforRFP			SubscriberProfileIDforRFP		OPTIONAL,
	e-RABs-ToBeSetup-ListRetrieve		E-RABs-ToBeSetup-ListRetrieve,
	rRC-Context							RRC-Context,
	handoverRestrictionList				HandoverRestrictionList			OPTIONAL,
	locationReportingInformation		LocationReportingInformation	OPTIONAL,
	managBasedMDTallowed				ManagementBasedMDTallowed		OPTIONAL,
	managBasedMDTPLMNList				MDTPLMNList						OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { {UE-ContextInformationRetrieve-ExtIEs} } OPTIONAL,
	...
}

UE-ContextInformationRetrieve-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-UESidelinkAggregateMaximumBitRate	CRITICALITY ignore	EXTENSION UESidelinkAggregateMaximumBitRate		PRESENCE optional},
	...
}

E-RABs-ToBeSetup-ListRetrieve ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeSetupRetrieve-ItemIEs} }

E-RABs-ToBeSetupRetrieve-ItemIEs	X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeSetupRetrieve-Item	CRITICALITY ignore	TYPE E-RABs-ToBeSetupRetrieve-Item	PRESENCE mandatory},
	...
}

E-RABs-ToBeSetupRetrieve-Item ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	e-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	bearerType						BearerType	OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeSetupRetrieve-ItemExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeSetupRetrieve-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-uL-GTPtunnelEndpoint		CRITICALITY reject	EXTENSION GTPtunnelEndpoint		PRESENCE mandatory},
	...
}

-- **************************************************************
--
-- RETRIEVE UE CONTEXT FAILURE
--
-- **************************************************************

RetrieveUEContextFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ RetrieveUEContextFailure-IEs}},
	...
}

RetrieveUEContextFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-New-eNB-UE-X2AP-ID				CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-New-eNB-UE-X2AP-ID-Extension	CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional}|
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics			CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB ADDITION REQUEST
--
-- **************************************************************

SgNBAdditionRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container {{SgNBAdditionRequest-IEs}},
	...
}

SgNBAdditionRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-NRUESecurityCapabilities					CRITICALITY reject	TYPE NRUESecurityCapabilities					PRESENCE mandatory}|
	{ ID id-SgNBSecurityKey							CRITICALITY reject	TYPE SgNBSecurityKey									PRESENCE mandatory}|
	{ ID id-SgNBUEAggregateMaximumBitRate			CRITICALITY reject	TYPE UEAggregateMaximumBitRate					PRESENCE mandatory}|
	{ ID id-SelectedPLMN								CRITICALITY ignore	TYPE PLMN-Identity									PRESENCE optional}|
	{ ID id-HandoverRestrictionList					CRITICALITY ignore	TYPE HandoverRestrictionList						PRESENCE optional}|
	{ ID id-E-RABs-ToBeAdded-SgNBAddReqList			CRITICALITY reject	TYPE E-RABs-ToBeAdded-SgNBAddReqList			PRESENCE mandatory}|
	{ ID id-MeNBtoSgNBContainer						CRITICALITY reject	TYPE MeNBtoSgNBContainer								PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY reject	TYPE SgNB-UE-X2AP-ID									PRESENCE optional}|
	{ ID id-ExpectedUEBehaviour						CRITICALITY ignore	TYPE ExpectedUEBehaviour								PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension							PRESENCE optional}|
	{ ID id-RequestedMCGSplitSRBs					CRITICALITY reject	TYPE MCGSplitSRBs									PRESENCE optional}|
	{ ID id-MeNBResourceCoordinationInformation		CRITICALITY ignore	TYPE MeNBResourceCoordinationInformation		PRESENCE optional},
	...
}

E-RABs-ToBeAdded-SgNBAddReqList ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeAdded-SgNBAddReq-ItemIEs} }

E-RABs-ToBeAdded-SgNBAddReq-ItemIEs	X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeAdded-SgNBAddReq-Item		CRITICALITY reject	TYPE E-RABs-ToBeAdded-SgNBAddReq-Item		PRESENCE mandatory},
	...
}

E-RABs-ToBeAdded-SgNBAddReq-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	drb-ID								DRB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBAddReq-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBAddReq-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPpresent ::= SEQUENCE {
	full-E-RAB-Level-QoS-Parameters				E-RAB-Level-QoS-Parameters,
	max-MCG-admit-E-RAB-Level-QoS-Parameters	GBR-QosInformation															OPTIONAL,
-- This IE shall be present if MCG resource and SCG resources IEs in the the EN-DC Resource Configuration IE are set to “present” and GBR QoS Information IE is present in  Full E-RAB Level QoS Parameters IE --
	dL-Forwarding								DL-Forwarding																		OPTIONAL,
	meNB-DL-GTP-TEIDatMCG						GTPtunnelEndpoint																	OPTIONAL,
-- This IE shall be present if MCG resource IE in the the EN-DC Resource Configuration IE is set to “present” --
	s1-UL-GTPtunnelEndpoint						GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPpresentExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	requested-SCG-E-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	meNB-UL-GTP-TEIDatPDCP						GTPtunnelEndpoint,
	rlc-Mode										RLCMode,
	uL-Configuration								ULConfiguration	OPTIONAL,
-- This IE shall be present if MCG resource and SCG resources IEs in the the EN-DC Resource Configuration IE are set to “present” --
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPnotpresentExtIEs} }		 OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBAddReq-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SGNB ADDITION REQUEST ACKNOWLEDGE
--
-- **************************************************************

SgNBAdditionRequestAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBAdditionRequestAcknowledge-IEs}},
	...
}

SgNBAdditionRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID								CRITICALITY reject	TYPE UE-X2AP-ID													PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID								CRITICALITY reject	TYPE SgNB-UE-X2AP-ID												PRESENCE mandatory}|
	{ ID id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAckList	CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-SgNBAddReqAckList			PRESENCE mandatory}|
	{ ID id-E-RABs-NotAdmitted-List						CRITICALITY ignore	TYPE E-RAB-List													PRESENCE optional}|
	{ ID id-SgNBtoMeNBContainer							CRITICALITY reject	TYPE SgNBtoMeNBContainer										PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics						CRITICALITY ignore	TYPE CriticalityDiagnostics									PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension					CRITICALITY reject	TYPE UE-X2AP-ID-Extension									PRESENCE optional}|
	{ ID id-AdmittedMCGSplitSRBs						CRITICALITY reject	TYPE MCGSplitSRBs												PRESENCE optional}|
	{ ID id-SgNBResourceCoordinationInformation			CRITICALITY ignore	TYPE SgNBResourceCoordinationInformation				PRESENCE optional},
	...
}

E-RABs-Admitted-ToBeAdded-SgNBAddReqAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-ItemIEs} }

E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item	CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item 		PRESENCE mandatory}
}

E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBAddReqAck-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBAddReqAck-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPpresent ::= SEQUENCE {
	s1-DL-GTPtunnelEndpoint					GTPtunnelEndpoint,
	sgNB-UL-GTP-TEIDatPDCP					GTPtunnelEndpoint																						OPTIONAL,
-- This IE shall be present if MCG resource IE in the the EN-DC Resource Configuration IE is set to “present” --
	rlc-Mode								RLCMode																									OPTIONAL,
-- This IE shall be present if MCG resource IE in the the EN-DC Resource Configuration IE is set to “present” --
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																						OPTIONAL,
	uL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																						OPTIONAL,
	mCG-E-RAB-Level-QoS-Parameters			E-RAB-Level-QoS-Parameters																				OPTIONAL,
-- This IE shall be present if MCG resource and SCG resource IEs in the the EN-DC Resource Configuration IE are set to “present” --
	uL-Configuration							ULConfiguration																							OPTIONAL,
-- This IE shall be present if MCG resource and SCG resources IEs in the the EN-DC Resource Configuration IE are set to “present” --
	iE-Extensions							ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPpresentExtIEs} }			OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	sgNB-DL-GTP-TEIDatSCG			GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPnotpresentExtIEs} } 		OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}



-- **************************************************************
--
-- SGNB ADDITION REQUEST REJECT
--
-- **************************************************************

SgNBAdditionRequestReject ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBAdditionRequestReject-IEs}},
	...
}

SgNBAdditionRequestReject-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID					CRITICALITY reject	TYPE SgNB-UE-X2AP-ID			PRESENCE optional}|
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics			CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}


-- **************************************************************
--
-- SGNB RECONFIGURATION COMPLETE
--
-- **************************************************************

SgNBReconfigurationComplete ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBReconfigurationComplete-IEs}},
	...
}

SgNBReconfigurationComplete-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID											PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY reject	TYPE SgNB-UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-ResponseInformationSgNBReconfComp		CRITICALITY ignore	TYPE ResponseInformationSgNBReconfComp			PRESENCE mandatory}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension								PRESENCE optional},
	...
}

ResponseInformationSgNBReconfComp ::= CHOICE {
	success-SgNBReconfComp				ResponseInformationSgNBReconfComp-SuccessItem,
	reject-by-MeNB-SgNBReconfComp		ResponseInformationSgNBReconfComp-RejectByMeNBItem,
	...
}

ResponseInformationSgNBReconfComp-SuccessItem ::= SEQUENCE {
	meNBtoSgNBContainer				MeNBtoSgNBContainer					OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {ResponseInformationSgNBReconfComp-SuccessItemExtIEs} }	OPTIONAL,
	...
}

ResponseInformationSgNBReconfComp-SuccessItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ResponseInformationSgNBReconfComp-RejectByMeNBItem ::= SEQUENCE {
	cause							Cause,
	iE-Extensions					ProtocolExtensionContainer { {ResponseInformationSgNBReconfComp-RejectByMeNBItemExtIEs} }		OPTIONAL,
	...
}

ResponseInformationSgNBReconfComp-RejectByMeNBItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


-- **************************************************************
--
-- SGNB MODIFICATION REQUEST
--
-- **************************************************************

SgNBModificationRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ SgNBModificationRequest-IEs}},
	...
}

SgNBModificationRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY reject	TYPE SgNB-UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause										PRESENCE mandatory}|
	{ ID id-SelectedPLMN						CRITICALITY ignore	TYPE PLMN-Identity								PRESENCE optional}|
	{ ID id-HandoverRestrictionList				CRITICALITY ignore	TYPE HandoverRestrictionList					PRESENCE optional}|
	{ ID	id-SCGConfigurationQuery			CRITICALITY ignore  TYPE SCGConfigurationQuery						PRESENCE optional}|
	{ ID id-UE-ContextInformation-SgNBModReq	CRITICALITY reject	TYPE UE-ContextInformation-SgNBModReq		PRESENCE optional}|
	{ ID id-MeNBtoSgNBContainer					CRITICALITY ignore	TYPE MeNBtoSgNBContainer						PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension						PRESENCE optional}|
	{ ID id-MeNBResourceCoordinationInformation	CRITICALITY ignore	TYPE MeNBResourceCoordinationInformation	PRESENCE optional},
	...
}

UE-ContextInformation-SgNBModReq ::= SEQUENCE {
	nRUE-SecurityCapabilities		NRUESecurityCapabilities															OPTIONAL,
	sgNB-SecurityKey				SgNBSecurityKey 																	OPTIONAL,
	sgNBUEAggregateMaximumBitRate	UEAggregateMaximumBitRate															OPTIONAL,
	e-RABs-ToBeAdded				E-RABs-ToBeAdded-SgNBModReq-List													OPTIONAL,
	e-RABs-ToBeModified				E-RABs-ToBeModified-SgNBModReq-List													OPTIONAL,
	e-RABs-ToBeReleased				E-RABs-ToBeReleased-SgNBModReq-List													OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {UE-ContextInformationSgNBModReqExtIEs} }			OPTIONAL,
	...
}

UE-ContextInformationSgNBModReqExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeAdded-SgNBModReq-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeAdded-SgNBModReq-ItemIEs} }

E-RABs-ToBeAdded-SgNBModReq-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeAdded-SgNBModReq-Item		CRITICALITY ignore	TYPE E-RABs-ToBeAdded-SgNBModReq-Item		PRESENCE mandatory},
	...
}

E-RABs-ToBeAdded-SgNBModReq-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	drb-ID									DRB-ID,
	en-DC-ResourceConfiguration				EN-DC-ResourceConfiguration,
	resource-configuration					CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBModReq-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBModReq-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPpresent ::= SEQUENCE {
	full-E-RAB-Level-QoS-Parameters			E-RAB-Level-QoS-Parameters,
	max-MN-admit-E-RAB-Level-QoS-Parameters	GBR-QosInformation															OPTIONAL,
-- This IE shall be present if MCG resource and SCG resources IEs in the the EN-DC Resource Configuration IE are set to “present” and GBR QoS Information IE is present in  Full E-RAB Level QoS Parameters IE --
	dL-Forwarding							DL-Forwarding																		OPTIONAL,
	meNB-DL-GTP-TEIDatMCG					GTPtunnelEndpoint																	OPTIONAL,
-- This IE shall be present if MCG resource IE in the the EN-DC Resource Configuration IE is set to “present” --
	s1-UL-GTPtunnelEndpoint					GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPpresentExtIEs} }		OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	requested-SCG-E-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters,
	meNB-UL-GTP-TEIDatPDCP						GTPtunnelEndpoint,
	rlc-Mode										RLCMode,
	uL-Configuration								ULConfiguration																OPTIONAL,
-- This IE shall be present if MCG resource and SCG resources IEs in the the EN-DC Resource Configuration IE are set to “present” --
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPnotpresentExtIEs} } 		OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBModReq-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


E-RABs-ToBeModified-SgNBModReq-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeModified-SgNBModReq-ItemIEs} }

E-RABs-ToBeModified-SgNBModReq-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeModified-SgNBModReq-Item	CRITICALITY ignore	TYPE E-RABs-ToBeModified-SgNBModReq-Item		PRESENCE mandatory},
	...
}


E-RABs-ToBeModified-SgNBModReq-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeModified-SgNBModReq-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeModified-SgNBModReq-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPpresent ::= SEQUENCE {
	full-E-RAB-Level-QoS-Parameters			E-RAB-Level-QoS-Parameters																		OPTIONAL,
	max-MN-admit-E-RAB-Level-QoS-Parameters	E-RAB-Level-QoS-Parameters																		OPTIONAL,
	meNB-DL-GTP-TEIDatMCG					GTPtunnelEndpoint																				OPTIONAL,
	s1-UL-GTPtunnelEndpoint					GTPtunnelEndpoint																				OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	requested-SCG-E-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters																			OPTIONAL,
	meNB-UL-GTP-TEIDatPDCP						GTPtunnelEndpoint																					OPTIONAL,
	uL-Configuration								ULConfiguration																						OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPnotpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeModified-SgNBModReq-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBModReq-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-SgNBModReq-ItemIEs} }

E-RABs-ToBeReleased-SgNBModReq-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-SgNBModReq-Item	CRITICALITY ignore	TYPE E-RABs-ToBeReleased-SgNBModReq-Item		PRESENCE mandatory},
	...
}

E-RABs-ToBeReleased-SgNBModReq-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBModReq-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBModReq-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPpresent ::= SEQUENCE {
	dL-GTPtunnelEndpoint			GTPtunnelEndpoint																				OPTIONAL,
	uL-GTPtunnelEndpoint			GTPtunnelEndpoint																				OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPnotpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBModReq-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}



-- **************************************************************
--
-- SGNB MODIFICATION REQUEST ACKNOWLEDGE
--
-- **************************************************************

SgNBModificationRequestAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBModificationRequestAcknowledge-IEs}},
	...
}

SgNBModificationRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID								CRITICALITY ignore	TYPE UE-X2AP-ID													PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID								CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID												PRESENCE mandatory}|
	{ ID id-E-RABs-Admitted-ToBeAdded-SgNBModAckList		CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-SgNBModAckList			PRESENCE optional}|
	{ ID id-E-RABs-Admitted-ToBeModified-SgNBModAckList	CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeModified-SgNBModAckList		PRESENCE optional}|
	{ ID id-E-RABs-Admitted-ToBeReleased-SgNBModAckList	CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeReleased-SgNBModAckList		PRESENCE optional}|
	{ ID id-E-RABs-NotAdmitted-List						CRITICALITY ignore	TYPE E-RAB-List													PRESENCE optional}|
	{ ID id-SgNBtoMeNBContainer							CRITICALITY ignore	TYPE SgNBtoMeNBContainer										PRESENCE optional}|
	{ ID id-CriticalityDiagnostics						CRITICALITY ignore	TYPE CriticalityDiagnostics									PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension					CRITICALITY ignore	TYPE UE-X2AP-ID-Extension									PRESENCE optional}|
	{ ID id-SgNBResourceCoordinationInformation			CRITICALITY ignore	TYPE SgNBResourceCoordinationInformation				PRESENCE optional},
	...
}

E-RABs-Admitted-ToBeAdded-SgNBModAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeAdded-SgNBModAck-ItemIEs} }

E-RABs-Admitted-ToBeAdded-SgNBModAck-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeAdded-SgNBModAck-Item 	CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeAdded-SgNBModAck-Item		PRESENCE mandatory}
}

E-RABs-Admitted-ToBeAdded-SgNBModAck-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-SgNBModAck-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-SgNBModAck-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPpresent ::= SEQUENCE {
	s1-DL-GTPtunnelEndpoint					GTPtunnelEndpoint,
	sgNB-UL-GTP-TEIDatPDCP					GTPtunnelEndpoint																					OPTIONAL,
-- This IE shall be present if MCG resource IE in the the EN-DC Resource Configuration IE are set to “present” --
	rlc-Mode									RLCMode																								OPTIONAL,
-- This IE shall be present if MCG resource IE in the the EN-DC Resource Configuration IE are set to “present” --
	dL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																					OPTIONAL,
	uL-Forwarding-GTPtunnelEndpoint			GTPtunnelEndpoint																					OPTIONAL,
	mCG-E-RAB-Level-QoS-Parameters			E-RAB-Level-QoS-Parameters																			OPTIONAL,
-- This IE shall be present if MCG resource and SCG resource IEs in the the EN-DC Resource Configuration IE are set to “present” --
	uL-Configuration						ULConfiguration																							OPTIONAL,
-- This IE shall be present if MCG resource and SCG resources IEs in the the EN-DC Resource Configuration IE are set to “present” --
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPpresentExtIEs} }		OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	sgNB-DL-GTP-TEIDatSCG					GTPtunnelEndpoint,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPnotpresentExtIEs} } OPTIONAL,
	...
}

E-RABs-Admitted-ToBeAdded-SgNBModAck-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeModified-SgNBModAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeModified-SgNBModAck-ItemIEs} }

E-RABs-Admitted-ToBeModified-SgNBModAck-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeModified-SgNBModAck-Item		CRITICALITY ignore	TYPE E-RABs-Admitted-ToBeModified-SgNBModAck-Item		PRESENCE mandatory}
}

E-RABs-Admitted-ToBeModified-SgNBModAck-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeAdded-SgNBModAck-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeAdded-SgNBModAck-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPpresent ::= SEQUENCE {
	s1-DL-GTPtunnelEndpoint					GTPtunnelEndpoint																						OPTIONAL,
	sgNB-UL-GTP-TEIDatPDCP					GTPtunnelEndpoint																						OPTIONAL,
	mCG-E-RAB-Level-QoS-Parameters			E-RAB-Level-QoS-Parameters																				OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	sgNB-DL-GTP-TEIDatSCG					GTPtunnelEndpoint																								OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPnotpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-Admitted-ToBeModified-SgNBModAck-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeReleased-SgNBModAckList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-Admitted-ToBeReleased-SgNBModAck-ItemIEs} }

E-RABs-Admitted-ToBeReleased-SgNBModAck-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-ToBeReleased-SgNBModAck-Item		CRITICALITY ignore	TYPE E-RABs-Admitted-ToReleased-SgNBModAck-Item		PRESENCE mandatory}
}

E-RABs-Admitted-ToReleased-SgNBModAck-Item ::= SEQUENCE {
	e-RAB-ID							E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBModAck-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBModAck-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPpresent ::= SEQUENCE {
	iE-Extensions				ProtocolExtensionContainer { {E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPpresentExtIEs} }		OPTIONAL,
	...
}

E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	iE-Extensions				ProtocolExtensionContainer { {E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPnotpresentExtIEs} } OPTIONAL,
	...
}

E-RABs-Admitted-ToBeReleased-SgNBModAck-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


-- **************************************************************
--
-- SGNB MODIFICATION REQUEST REJECT
--
-- **************************************************************

SgNBModificationRequestReject ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBModificationRequestReject-IEs}},
	...
}

SgNBModificationRequestReject-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID				PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}


-- **************************************************************
--
-- SGNB MODIFICATION REQUIRED
--
-- **************************************************************

SgNBModificationRequired ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SgNBModificationRequired-IEs}},
	...
}

SgNBModificationRequired-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY reject	TYPE SgNB-UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-Cause									CRITICALITY ignore	TYPE Cause											PRESENCE mandatory}|
	{ ID id-PDCPChangeIndication						CRITICALITY ignore	TYPE PDCPChangeIndication							PRESENCE optional}|
	{ ID id-E-RABs-ToBeReleased-SgNBModReqdList		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-SgNBModReqdList		PRESENCE optional}|
	{ ID id-SgNBtoMeNBContainer						CRITICALITY ignore	TYPE SgNBtoMeNBContainer								PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension							PRESENCE optional}|
	{ ID id-E-RABs-ToBeModified-SgNBModReqdList		CRITICALITY ignore	TYPE E-RABs-ToBeModified-SgNBModReqdList		PRESENCE optional}|
	{ ID id-SgNBResourceCoordinationInformation		CRITICALITY ignore	TYPE SgNBResourceCoordinationInformation		PRESENCE optional},
	...
}


E-RABs-ToBeReleased-SgNBModReqdList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-SgNBModReqd-ItemIEs} }

E-RABs-ToBeReleased-SgNBModReqd-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-SgNBModReqd-Item	 CRITICALITY ignore		TYPE E-RABs-ToBeReleased-SgNBModReqd-Item		PRESENCE mandatory },
	...
}

E-RABs-ToBeReleased-SgNBModReqd-Item ::= SEQUENCE {
	e-RAB-ID							E-RAB-ID,
	cause							Cause,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBModReqd-ItemExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBModReqd-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeModified-SgNBModReqdList ::= SEQUENCE (SIZE (1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeModified-SgNBModReqd-ItemIEs} }

E-RABs-ToBeModified-SgNBModReqd-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeModified-SgNBModReqd-Item	 CRITICALITY ignore		TYPE E-RABs-ToBeModified-SgNBModReqd-Item		PRESENCE mandatory },
	...
}

E-RABs-ToBeModified-SgNBModReqd-Item ::= SEQUENCE {
	e-RAB-ID								E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeModified-SgNBModReqd-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeModified-SgNBModReqd-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPpresent ::= SEQUENCE {
	requested-MCG-E-RAB-Level-QoS-Parameters		E-RAB-Level-QoS-Parameters													OPTIONAL,
	uL-Configuration								ULConfiguration																OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { {E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPpresentExtIEs} }		OPTIONAL,
	...
}

E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	sgNB-DL-GTP-TEIDatSCG		GTPtunnelEndpoint				OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { {E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPnotpresentExtIEs} }		OPTIONAL,
	...
}

E-RABs-ToBeModified-SgNBModReqd-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


-- **************************************************************
--
-- SGNB MODIFICATION CONFIRM
--
-- **************************************************************

SgNBModificationConfirm ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBModificationConfirm-IEs}},
	...
}

SgNBModificationConfirm-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-MeNBtoSgNBContainer					CRITICALITY ignore	TYPE MeNBtoSgNBContainer								PRESENCE optional}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics							PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension							PRESENCE optional}|
	{ ID id-MeNBResourceCoordinationInformation	CRITICALITY ignore	TYPE MeNBResourceCoordinationInformation		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB MODIFICATION REFUSE
--
-- **************************************************************

SgNBModificationRefuse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SgNBModificationRefuse-IEs}},
	...
}

SgNBModificationRefuse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID				PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-MeNBtoSgNBContainer					CRITICALITY ignore	TYPE MeNBtoSgNBContainer			PRESENCE optional}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY ignore	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB RELEASE REQUEST
--
-- **************************************************************

SgNBReleaseRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SgNBReleaseRequest-IEs}},
	...
}

SgNBReleaseRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY reject	TYPE SgNB-UE-X2AP-ID									PRESENCE optional}|
	{ ID id-Cause									CRITICALITY ignore	TYPE Cause											PRESENCE mandatory}|
	{ ID id-E-RABs-ToBeReleased-SgNBRelReqList		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-SgNBRelReqList		PRESENCE optional}|
	{ ID id-UE-ContextKeptIndicator					CRITICALITY ignore	TYPE UE-ContextKeptIndicator						PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension							PRESENCE optional}|
	{ ID id-MeNBtoSgNBContainer						CRITICALITY reject	TYPE MeNBtoSgNBContainer								PRESENCE optional},
	...
}

E-RABs-ToBeReleased-SgNBRelReqList ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-SgNBRelReq-ItemIEs} }

E-RABs-ToBeReleased-SgNBRelReq-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-SgNBRelReq-Item		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-SgNBRelReq-Item		PRESENCE mandatory},
	...
}

E-RABs-ToBeReleased-SgNBRelReq-Item ::= SEQUENCE {
	e-RAB-ID							E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBRelReq-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBRelReq-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPpresent ::= SEQUENCE {
	uL-GTPtunnelEndpoint			GTPtunnelEndpoint																	OPTIONAL,
	dL-GTPtunnelEndpoint			GTPtunnelEndpoint																				OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPnotpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBRelReq-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SGNB RELEASE REQUEST ACKNOWLEDGE
--
-- **************************************************************

SgNBReleaseRequestAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SgNBReleaseRequestAcknowledge-IEs}},
	...
}

SgNBReleaseRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY reject	TYPE SgNB-UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics					CRITICALITY ignore	TYPE CriticalityDiagnostics						PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension							PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB RELEASE REQUEST REJECT
--
-- **************************************************************

SgNBReleaseRequestReject ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SgNBReleaseRequestReject-IEs}},
	...
}

SgNBReleaseRequestReject-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY reject	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY reject	TYPE SgNB-UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-Cause									CRITICALITY ignore	TYPE Cause											PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics					CRITICALITY ignore	TYPE CriticalityDiagnostics						PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY reject	TYPE UE-X2AP-ID-Extension							PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB RELEASE REQUIRED
--
-- **************************************************************

SgNBReleaseRequired ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBReleaseRequired-IEs}},
	...
}

SgNBReleaseRequired-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID					CRITICALITY reject	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID					CRITICALITY reject	TYPE SgNB-UE-X2AP-ID				PRESENCE mandatory}|
	{ ID id-Cause							CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-MeNB-UE-X2AP-ID-Extension		CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB RELEASE CONFIRM
--
-- **************************************************************

SgNBReleaseConfirm ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBReleaseConfirm-IEs}},
	...
}

SgNBReleaseConfirm-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY ignore	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-E-RABs-ToBeReleased-SgNBRelConfList		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-SgNBRelConfList		PRESENCE optional}|
	{ ID id-CriticalityDiagnostics					CRITICALITY ignore	TYPE CriticalityDiagnostics						PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY ignore	TYPE UE-X2AP-ID-Extension							PRESENCE optional},
	...
}

E-RABs-ToBeReleased-SgNBRelConfList ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-SgNBRelConf-ItemIEs} }

E-RABs-ToBeReleased-SgNBRelConf-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-SgNBRelConf-Item		CRITICALITY ignore		TYPE E-RABs-ToBeReleased-SgNBRelConf-Item		PRESENCE mandatory},
	...
}

E-RABs-ToBeReleased-SgNBRelConf-Item ::= SEQUENCE {
	e-RAB-ID							E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBRelConf-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBRelConf-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPpresent ::= SEQUENCE {
	uL-GTPtunnelEndpoint			GTPtunnelEndpoint																				OPTIONAL,
	dL-GTPtunnelEndpoint			GTPtunnelEndpoint																				OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPpresentExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPnotpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBRelConf-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


-- **************************************************************
--
-- SGNB COUNTER CHECK REQUEST
--
-- **************************************************************

SgNBCounterCheckRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBCounterCheckRequest-IEs}},
	...
}

SgNBCounterCheckRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID								CRITICALITY ignore	TYPE UE-X2AP-ID											PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID								CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-E-RABs-SubjectToSgNBCounterCheck-List		CRITICALITY ignore	TYPE E-RABs-SubjectToSgNBCounterCheck-List		PRESENCE mandatory}|
	{ ID id-MeNB-UE-X2AP-ID-Extension					CRITICALITY ignore	TYPE UE-X2AP-ID-Extension							PRESENCE optional},
	...
}
E-RABs-SubjectToSgNBCounterCheck-List ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-SubjectToSgNBCounterCheck-ItemIEs} }

E-RABs-SubjectToSgNBCounterCheck-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-SubjectToSgNBCounterCheck-Item		CRITICALITY ignore	TYPE E-RABs-SubjectToSgNBCounterCheck-Item		PRESENCE mandatory},
	...
}

E-RABs-SubjectToSgNBCounterCheck-Item ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	uL-Count						INTEGER (0..4294967295),
	dL-Count						INTEGER (0..4294967295),
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-SubjectToSgNBCounterCheck-ItemExtIEs} } OPTIONAL,
	...
}

E-RABs-SubjectToSgNBCounterCheck-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- SGNB CHANGE REQUIRED
--
-- **************************************************************

SgNBChangeRequired ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SgNBChangeRequired-IEs}},
	...
}

SgNBChangeRequired-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID				PRESENCE mandatory}|
	{ ID id-Target-SgNB-ID						CRITICALITY ignore	TYPE GNB-ID						PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-SgNBtoMeNBContainer					CRITICALITY ignore	TYPE SgNBtoMeNBContainer			PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB CHANGE CONFIRM
--
-- **************************************************************

SgNBChangeConfirm ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{SgNBChangeConfirm-IEs}},
	...
}

SgNBChangeConfirm-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID							CRITICALITY ignore	TYPE UE-X2AP-ID										PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID							CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID									PRESENCE mandatory}|
	{ ID id-E-RABs-ToBeReleased-SgNBChaConfList		CRITICALITY ignore	TYPE E-RABs-ToBeReleased-SgNBChaConfList		PRESENCE optional}|
	{ ID id-CriticalityDiagnostics					CRITICALITY ignore	TYPE CriticalityDiagnostics						PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension				CRITICALITY ignore	TYPE UE-X2AP-ID-Extension							PRESENCE optional},
	...
}

E-RABs-ToBeReleased-SgNBChaConfList ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RABs-ToBeReleased-SgNBChaConf-ItemIEs} }

E-RABs-ToBeReleased-SgNBChaConf-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeReleased-SgNBChaConf-Item		CRITICALITY ignore		TYPE E-RABs-ToBeReleased-SgNBChaConf-Item		PRESENCE mandatory},
	...
}

E-RABs-ToBeReleased-SgNBChaConf-Item ::= SEQUENCE {
	e-RAB-ID							E-RAB-ID,
	en-DC-ResourceConfiguration			EN-DC-ResourceConfiguration,
	resource-configuration				CHOICE {
		sgNBPDCPpresent						E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPpresent,
		sgNBPDCPnotpresent					E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPnotpresent,
		...
	},
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBChaConf-ItemExtIEs} }	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBChaConf-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPpresent ::= SEQUENCE {
	uL-GTPtunnelEndpoint			GTPtunnelEndpoint																				OPTIONAL,
	dL-GTPtunnelEndpoint			GTPtunnelEndpoint																				OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPpresentExtIEs} } OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPnotpresent ::= SEQUENCE {
	iE-Extensions					ProtocolExtensionContainer { {E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPnotpresentExtIEs} } 	OPTIONAL,
	...
}

E-RABs-ToBeReleased-SgNBChaConf-Item-SgNBPDCPnotpresentExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- RRC Transfer
--
-- **************************************************************

RRCTransfer ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{RRCTransfer-IEs}},
	...
}

RRCTransfer-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID				PRESENCE mandatory}|
	{ ID id-MCGSplitSRB							CRITICALITY ignore	TYPE MCGSplitSRB					PRESENCE optional}|
	{ ID id-UENRMeasurement						CRITICALITY ignore	TYPE UENRMeasurement				PRESENCE optional}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension		PRESENCE optional},
	...
}

-- **************************************************************
--
-- SGNB CHANGE REFUSE
--
-- **************************************************************

SgNBChangeRefuse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SgNBChangeRefuse-IEs}},
	...
}

SgNBChangeRefuse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY ignore	TYPE UE-X2AP-ID					PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY ignore	TYPE SgNB-UE-X2AP-ID				PRESENCE mandatory}|
	{ ID id-Cause								CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional},
	...
}

-- **************************************************************
--
-- EN-DC X2 SETUP REQUEST
--
-- **************************************************************

ENDCX2SetupRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCX2SetupRequest-IEs}},
	...
}

ENDCX2SetupRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-InitiatingNodeType-EndcX2Setup			CRITICALITY reject	TYPE InitiatingNodeType-EndcX2Setup		PRESENCE mandatory},
	...
}

InitiatingNodeType-EndcX2Setup ::= CHOICE {
	init-eNB				ProtocolIE-Container	{{ENB-ENDCX2SetupReqIEs}},
	init-en-gNB			ProtocolIE-Container	{{En-gNB-ENDCX2SetupReqIEs}},
	...
}

ENB-ENDCX2SetupReqIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID								CRITICALITY reject	TYPE GlobalENB-ID										PRESENCE mandatory}|
	{ ID id-ServedEUTRAcellsENDCX2ManagementList		CRITICALITY reject	TYPE ServedEUTRAcellsENDCX2ManagementList		PRESENCE mandatory},
	...
}

ServedEUTRAcellsENDCX2ManagementList ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF SEQUENCE {
	servedEUTRACellInfo					ServedCell-Information,
	nrNeighbourInfo						NRNeighbour-Information		OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { ServedEUTRAcellsENDCX2Management-ExtIEs} } OPTIONAL,
	...
}

ServedEUTRAcellsENDCX2Management-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

En-gNB-ENDCX2SetupReqIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Globalen-gNB-ID							CRITICALITY reject	TYPE GlobalGNB-ID										PRESENCE mandatory}|
	{ ID id-ServedNRcellsENDCX2ManagementList		CRITICALITY reject	TYPE ServedNRcellsENDCX2ManagementList			PRESENCE mandatory},
	...
}

ServedNRcellsENDCX2ManagementList ::= SEQUENCE (SIZE (1.. maxCellinengNB)) OF SEQUENCE {
	servedNRCellInfo						ServedNRCell-Information,
	nRNeighbourInfo						NRNeighbour-Information OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { En-gNBServedCells-ExtIEs} } OPTIONAL,
	...
}

En-gNBServedCells-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ServedNRCell-Information ::= SEQUENCE {
	nrpCI				NRPCI,
	nrCellID			NRCGI,
	eXtended-TAC					Extended-TAC,
	broadcastPLMNs		BroadcastPLMNs-Item,
	nrModeInfo			CHOICE {
		fdd		FDD-InfoServedNRCell-Information,
		tdd		TDD-InfoServedNRCell-Information,
		...
	},
	measurementTimingConfiguration	OCTET STRING,
	sULInformation		SULInformation		OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { ServedNRCell-Information-ExtIEs} } OPTIONAL,
	...
}

ServedNRCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

FDD-InfoServedNRCell-Information ::= SEQUENCE {
	ul-NR-ARFCN				NRARFCN,
	dl-NR-ARFCN				NRARFCN,
	ul-NR-TxBW				NR-TxBW,
	dl-NR-TxBW				NR-TxBW,
	iE-Extensions			ProtocolExtensionContainer { { FDD-InfoServedNRCell-Information-ExtIEs } }		OPTIONAL,
	...
}

FDD-InfoServedNRCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}



TDD-InfoServedNRCell-Information ::= SEQUENCE {
	nR-ARFCN					NRARFCN,
	nR-TxBW					NR-TxBW,
	iE-Extensions			ProtocolExtensionContainer { { TDD-InfoServedNRCell-Information-ExtIEs } }		OPTIONAL,
	...
}

TDD-InfoServedNRCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

NRNeighbour-Information ::= SEQUENCE (SIZE (1.. maxofNRNeighbours))OF SEQUENCE {
	nrpCI				NRPCI,
	nrCellID				NRCGI,
	nrARFCN				NRARFCN,
	eXtended-TAC					Extended-TAC,
	iE-Extensions						ProtocolExtensionContainer { { NRNeighbour-Information-ExtIEs} } OPTIONAL,
	...
}

NRNeighbour-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CellAssistanceInformation ::= CHOICE {
	limited-list				Limited-list,
	full-list				ENUMERATED  {allServedNRcells, ...},
	...
}


Limited-list 	::= SEQUENCE (SIZE (1..maxCellinengNB)) OF SEQUENCE {
	nrCellID			NRCGI,
	...
}

-- **************************************************************
--
-- EN-DC X2 SETUP RESPONSE
--
-- **************************************************************

ENDCX2SetupResponse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCX2SetupResponse-IEs}},
	...
}

ENDCX2SetupResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-RespondingNodeType-EndcX2Setup		CRITICALITY reject	TYPE RespondingNodeType-EndcX2Setup		PRESENCE mandatory},
	...
}

RespondingNodeType-EndcX2Setup ::= CHOICE {
	respond-eNB			ProtocolIE-Container	{{ENB-ENDCX2SetupReqAckIEs}},
	respond-en-gNB		ProtocolIE-Container	{{En-gNB-ENDCX2SetupReqAckIEs}},
	...
}

ENB-ENDCX2SetupReqAckIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID								CRITICALITY reject	TYPE GlobalENB-ID										PRESENCE mandatory}|
	{ ID id-ServedEUTRAcellsENDCX2ManagementList		CRITICALITY reject	TYPE ServedEUTRAcellsENDCX2ManagementList		PRESENCE mandatory},
	...
}


En-gNB-ENDCX2SetupReqAckIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Globalen-gNB-ID							CRITICALITY reject	TYPE GlobalGNB-ID										PRESENCE mandatory}|
	{ ID id-ServedNRcellsENDCX2ManagementList		CRITICALITY reject	TYPE ServedNRcellsENDCX2ManagementList			PRESENCE mandatory},
	...
}

-- **************************************************************
--
-- EN-DC X2 SETUP FAILURE
--
-- **************************************************************

ENDCX2SetupFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCX2SetupFailure-IEs}},
	...
}

ENDCX2SetupFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause					CRITICALITY ignore		TYPE Cause								PRESENCE mandatory} |
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore		TYPE CriticalityDiagnostics				PRESENCE optional },
	...
}

-- **************************************************************
--
-- EN-DC CONFIGURATION UPDATE
--
-- **************************************************************

ENDCConfigurationUpdate ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCConfigurationUpdate-IEs}},
	...
}

ENDCConfigurationUpdate-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-InitiatingNodeType-EndcConfigUpdate			CRITICALITY reject	TYPE InitiatingNodeType-EndcConfigUpdate			PRESENCE mandatory},
	...
}

InitiatingNodeType-EndcConfigUpdate::= CHOICE {
	init-eNB			ProtocolIE-Container	{{ENB-ENDCConfigUpdateIEs}},
	init-en-gNB			ProtocolIE-Container	{{En-gNB-ENDCConfigUpdateIEs}},
	...
}

ENB-ENDCConfigUpdateIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellAssistanceInformation				CRITICALITY reject	TYPE CellAssistanceInformation							PRESENCE optional }|
	{ ID id-ServedEUTRAcellsENDCX2ManagementList		CRITICALITY reject	TYPE ServedEUTRAcellsENDCX2ManagementList			PRESENCE optional }|
	{ ID id-ServedEUTRAcellsToModifyListENDCConfUpd	CRITICALITY reject	TYPE ServedEUTRAcellsToModifyListENDCConfUpd		PRESENCE optional }|
	{ ID id-ServedEUTRAcellsToDeleteListENDCConfUpd	CRITICALITY reject	TYPE ServedEUTRAcellsToDeleteListENDCConfUpd		PRESENCE optional },
	...
}

ServedEUTRAcellsToModifyListENDCConfUpd ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF SEQUENCE {
	old-ECGI								ECGI,
	servedEUTRACellInfo					ServedCell-Information,
	nrNeighbourInfo						NRNeighbour-Information		OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { ServedEUTRAcellsToModifyListENDCConfUpd-ExtIEs} } OPTIONAL,
	...
}

ServedEUTRAcellsToModifyListENDCConfUpd-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ServedEUTRAcellsToDeleteListENDCConfUpd ::= SEQUENCE (SIZE (1..maxCellineNB)) OF ECGI


En-gNB-ENDCConfigUpdateIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ServedNRcellsENDCX2ManagementList		CRITICALITY reject	TYPE ServedNRcellsENDCX2ManagementList			PRESENCE optional }|
	{ ID id-ServedNRcellsToModifyListENDCConfUpd		CRITICALITY reject	TYPE ServedNRcellsToModifyENDCConfUpdList		PRESENCE optional }|
	{ ID id-ServedNRcellsToDeleteListENDCConfUpd		CRITICALITY reject	TYPE ServedNRcellsToDeleteENDCConfUpdList		PRESENCE optional },
	...
}

ServedNRcellsToModifyENDCConfUpdList ::= SEQUENCE (SIZE (1..maxCellinengNB)) OF ServedNRCellsToModify-Item

ServedNRCellsToModify-Item::= SEQUENCE {
	old-nrcgi						NRCGI,
	servedNRCellInformation			ServedNRCell-Information,
	nrNeighbourInformation			NRNeighbour-Information			OPTIONAL,
	nrDeactivationIndication			DeactivationIndication			OPTIONAL,
	iE-Extensions						ProtocolExtensionContainer { { ServedNRCellsToModify-Item-ExtIEs} } OPTIONAL,
	...
}

ServedNRCellsToModify-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ServedNRcellsToDeleteENDCConfUpdList ::= SEQUENCE (SIZE (1..maxCellinengNB)) OF NRCGI

-- **************************************************************
--
-- EN-DC CONFIGURATION UPDATE ACKNOWLEDGE
--
-- **************************************************************

ENDCConfigurationUpdateAcknowledge ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCConfigurationUpdateAcknowledge-IEs}},
	...
}

ENDCConfigurationUpdateAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-RespondingNodeType-EndcConfigUpdate			CRITICALITY reject	TYPE RespondingNodeType-EndcConfigUpdate			PRESENCE mandatory},
	...
}


RespondingNodeType-EndcConfigUpdate::= CHOICE {
	respond-en-gNB		ProtocolIE-Container	{{En-gNB-ENDCConfigUpdateAckIEs}},
	...
}


En-gNB-ENDCConfigUpdateAckIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ServedNRcellsENDCX2ManagementList		CRITICALITY reject	TYPE ServedNRcellsENDCX2ManagementList		PRESENCE mandatory},
	...
}


-- **************************************************************
--
-- EN-DC CONFIGURATION UPDATE FAILURE
--
-- **************************************************************

ENDCConfigurationUpdateFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCConfigurationUpdateFailure-IEs}},
	...
}

ENDCConfigurationUpdateFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional},
	...
}


-- **************************************************************
--
-- EN-DC CELL ACTIVATION REQUEST
--
-- **************************************************************

ENDCCellActivationRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCCellActivationRequest-IEs}},
	...
}

ENDCCellActivationRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ServedNRCellsToActivate 	CRITICALITY reject	TYPE ServedNRCellsToActivate			PRESENCE mandatory}|
	{ ID id-ActivationID			 	CRITICALITY reject	TYPE ActivationID					PRESENCE mandatory},
	...
}

ServedNRCellsToActivate::= SEQUENCE (SIZE (1.. maxCellinengNB)) OF ServedNRCellsToActivate-Item

ServedNRCellsToActivate-Item::= SEQUENCE {
	nrCellID						NRCGI,
	iE-Extensions					ProtocolExtensionContainer { { ServedNRCellsToActivate-Item-ExtIEs} } OPTIONAL,
	...
}

ServedNRCellsToActivate-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- EN-DC CELL ACTIVATION RESPONSE
--
-- **************************************************************

ENDCCellActivationResponse ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCCellActivationResponse-IEs}},
	...
}

ENDCCellActivationResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ActivatedNRCellList		CRITICALITY ignore	TYPE ActivatedNRCellList				PRESENCE mandatory}|
	{ ID id-ActivationID				CRITICALITY reject	TYPE ActivationID					PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore	TYPE CriticalityDiagnostics			PRESENCE optional},
	...
}

ActivatedNRCellList ::= SEQUENCE (SIZE (1.. maxCellinengNB)) OF ActivatedNRCellList-Item

ActivatedNRCellList-Item::= SEQUENCE {
	nrCellID						NRCGI,
	iE-Extensions						ProtocolExtensionContainer { { ActivatedNRCellList-Item-ExtIEs} } OPTIONAL,
	...
}

ActivatedNRCellList-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

--**************************************************************
--
-- EN-DC CELL ACTIVATION FAILURE
--
-- **************************************************************

ENDCCellActivationFailure ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container	{{ENDCCellActivationFailure-IEs}},
	...
}

ENDCCellActivationFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ActivationID					CRITICALITY reject	TYPE ActivationID				PRESENCE mandatory }|
	{ ID id-Cause						CRITICALITY ignore	TYPE Cause						PRESENCE mandatory }|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE CriticalityDiagnostics		PRESENCE optional },
	...
}

-- **************************************************************
--
-- SECONDARY RAT DATA USAGE REPORT
--
-- **************************************************************

SecondaryRATDataUsageReport ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container		{{SecondaryRATDataUsageReport-IEs}},
	...
}

SecondaryRATDataUsageReport-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeNB-UE-X2AP-ID						CRITICALITY reject	TYPE UE-X2AP-ID								PRESENCE mandatory}|
	{ ID id-SgNB-UE-X2AP-ID						CRITICALITY reject	TYPE SgNB-UE-X2AP-ID							PRESENCE mandatory}|
	{ ID id-SecondaryRATUsageReportList			CRITICALITY reject	TYPE SecondaryRATUsageReportList			PRESENCE mandatory}|
	{ ID id-MeNB-UE-X2AP-ID-Extension			CRITICALITY reject	TYPE UE-X2AP-ID-Extension					PRESENCE optional},
	...
}


END


-- **************************************************************
--
-- Information Element Definitions
--
-- **************************************************************

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

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS

	id-E-RAB-Item,
	id-Number-of-Antennaports,
	id-MBSFN-Subframe-Info,
	id-PRACH-Configuration,
	id-CSG-Id,
	id-MDTConfiguration,
	id-SignallingBasedMDTPLMNList,
	id-MultibandInfoList,
	id-FreqBandIndicatorPriority,
	id-NeighbourTAC,
	id-Time-UE-StayedInCell-EnhancedGranularity,
	id-MBMS-Service-Area-List,
	id-HO-cause,
	id-eARFCNExtension,
	id-DL-EARFCNExtension,
	id-UL-EARFCNExtension,
	id-M3Configuration,
	id-M4Configuration,
	id-M5Configuration,
	id-MDT-Location-Info,
	id-NRrestriction,
	id-AdditionalSpecialSubframe-Info,
	id-UEID,
	id-enhancedRNTP,
	id-ProSeUEtoNetworkRelaying,
	id-M6Configuration,
	id-M7Configuration,
	id-OffsetOfNbiotChannelNumberToDL-EARFCN,
	id-OffsetOfNbiotChannelNumberToUL-EARFCN,
	id-AdditionalSpecialSubframeExtension-Info,
	id-BandwidthReducedSI,
	id-extended-e-RAB-MaximumBitrateDL,
	id-extended-e-RAB-MaximumBitrateUL,
	id-extended-e-RAB-GuaranteedBitrateDL,
	id-extended-e-RAB-GuaranteedBitrateUL,
	id-extended-uEaggregateMaximumBitRateDownlink,
	id-extended-uEaggregateMaximumBitRateUplink,
	id-E-RABUsageReport-Item,
	id-SecondaryRATUsageReport-Item,
	id-UEAppLayerMeasConfig,
	id-DL-scheduling-PDCCH-CCE-usage,
	id-UL-scheduling-PDCCH-CCE-usage,

	maxnoofBearers,
	maxCellineNB,
	maxEARFCN,
	maxEARFCNPlusOne,
	newmaxEARFCN,
	maxInterfaces,

	maxnoofBands,
	maxnoofBPLMNs,
	maxnoofCells,
	maxnoofEPLMNs,
	maxnoofEPLMNsPlusOne,
	maxnoofForbLACs,
	maxnoofForbTACs,
	maxnoofNeighbours,
	maxnoofPRBs,
	maxNrOfErrors,
	maxPools,
	maxnoofMBSFN,
	maxnoofTAforMDT,
	maxnoofCellIDforMDT,
	maxnoofMBMSServiceAreaIdentities,
	maxnoofMDTPLMNs,
	maxnoofCoMPHypothesisSet,
	maxnoofCoMPCells,
	maxUEReport,
	maxCellReport,
	maxnoofPA,
	maxCSIProcess,
	maxCSIReport,
	maxSubband,
	maxnooftimeperiods,
	maxnoofCellIDforQMC,
	maxnoofTAforQMC,
	maxnoofPLMNforQMC

FROM X2AP-Constants

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

	ProtocolExtensionContainer{},
	ProtocolIE-Single-Container{},

	X2AP-PROTOCOL-EXTENSION,
	X2AP-PROTOCOL-IES
FROM X2AP-Containers;

-- A

ABSInformation ::= CHOICE {
	fdd					ABSInformationFDD,
	tdd					ABSInformationTDD,
	abs-inactive		NULL,
	...
}

ABSInformationFDD ::= SEQUENCE {
	abs-pattern-info					BIT STRING (SIZE(40)),
	numberOfCellSpecificAntennaPorts	ENUMERATED {one, two, four, ...},
	measurement-subset					BIT STRING (SIZE(40)),
	iE-Extensions						ProtocolExtensionContainer { { ABSInformationFDD-ExtIEs} } OPTIONAL,
	...
}

ABSInformationFDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ABSInformationTDD ::= SEQUENCE {
	abs-pattern-info					BIT STRING (SIZE(1..70, ...)),
	numberOfCellSpecificAntennaPorts	ENUMERATED {one, two, four, ...},
	measurement-subset					BIT STRING (SIZE(1..70, ...)),
	iE-Extensions						ProtocolExtensionContainer { { ABSInformationTDD-ExtIEs} } OPTIONAL,
	...
}

ABSInformationTDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ABS-Status ::= SEQUENCE {
	dL-ABS-status								DL-ABS-status,
	usableABSInformation						UsableABSInformation,
	iE-Extensions								ProtocolExtensionContainer { {ABS-Status-ExtIEs} } OPTIONAL,
	...
}

ABS-Status-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ActivationID ::= INTEGER (0..255)

AdditionalSpecialSubframe-Info ::=		SEQUENCE {
	additionalspecialSubframePatterns		AdditionalSpecialSubframePatterns,
	cyclicPrefixDL							CyclicPrefixDL,
	cyclicPrefixUL							CyclicPrefixUL,
	iE-Extensions							ProtocolExtensionContainer { { AdditionalSpecialSubframe-Info-ExtIEs} } OPTIONAL,
	...
}

AdditionalSpecialSubframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

AdditionalSpecialSubframePatterns ::= ENUMERATED {
	ssp0,
	ssp1,
	ssp2,
	ssp3,
	ssp4,
	ssp5,
	ssp6,
	ssp7,
	ssp8,
	ssp9,
	...
}

AdditionalSpecialSubframeExtension-Info ::=		SEQUENCE {
	additionalspecialSubframePatternsExtension	AdditionalSpecialSubframePatternsExtension,
	cyclicPrefixDL								CyclicPrefixDL,
	cyclicPrefixUL								CyclicPrefixUL,
	iE-Extensions								ProtocolExtensionContainer { { AdditionalSpecialSubframeExtension-Info-ExtIEs} } OPTIONAL,
	...
}

AdditionalSpecialSubframeExtension-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

AdditionalSpecialSubframePatternsExtension ::= ENUMERATED {
	ssp10,
	...
}

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

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

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

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

AS-SecurityInformation ::= SEQUENCE {
	key-eNodeB-star		Key-eNodeB-Star,
	nextHopChainingCount			NextHopChainingCount,
	iE-Extensions						ProtocolExtensionContainer { { AS-SecurityInformation-ExtIEs} } OPTIONAL,
	...
}

AS-SecurityInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


-- B

BandwidthReducedSI::= ENUMERATED {
	scheduled,
	...
}

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

BenefitMetric ::= INTEGER (-101..100, ...)

BitRate ::= INTEGER (0..10000000000)
BroadcastPLMNs-Item ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF PLMN-Identity


-- C

CapacityValue ::= INTEGER (0..100)

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

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

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

CauseRadioNetwork ::= ENUMERATED {
	handover-desirable-for-radio-reasons,
	time-critical-handover,
	resource-optimisation-handover,
	reduce-load-in-serving-cell,
	partial-handover,
	unknown-new-eNB-UE-X2AP-ID,
	unknown-old-eNB-UE-X2AP-ID,
	unknown-pair-of-UE-X2AP-ID,
	ho-target-not-allowed,
	tx2relocoverall-expiry,
	trelocprep-expiry,
	cell-not-available,
	no-radio-resources-available-in-target-cell,
	invalid-MME-GroupID,
	unknown-MME-Code,
	encryption-and-or-integrity-protection-algorithms-not-supported,
	reportCharacteristicsEmpty,
	noReportPeriodicity,
	existingMeasurementID,
	unknown-eNB-Measurement-ID,
	measurement-temporarily-not-available,
	unspecified,
	...,
	load-balancing,
	handover-optimisation,
	value-out-of-allowed-range,
	multiple-E-RAB-ID-instances,
	switch-off-ongoing,
	not-supported-QCI-value,
	measurement-not-supported-for-the-object,
	tDCoverall-expiry,
	tDCprep-expiry,
	action-desirable-for-radio-reasons,
	reduce-load,
	resource-optimisation,
	time-critical-action,
	target-not-allowed,
	no-radio-resources-available,
	invalid-QoS-combination,
	encryption-algorithms-not-aupported,
	procedure-cancelled,
	rRM-purpose,
	improve-user-bit-rate,
	user-inactivity,
	radio-connection-with-UE-lost,
	failure-in-the-radio-interface-procedure,
	bearer-option-not-supported,
	mCG-Mobility,
	sCG-Mobility,
	count-reaches-max-value,
	unknown-old-en-gNB-UE-X2AP-ID

}

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

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

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

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

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

CellCapacityClassValue ::= INTEGER (1..100, ...)

CellDeploymentStatusIndicator ::= ENUMERATED {pre-change-notification, ...}

CellIdListforMDT ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF ECGI

CellIdListforQMC ::= SEQUENCE (SIZE(1..maxnoofCellIDforQMC)) OF ECGI

CellReplacingInfo ::= SEQUENCE {
	replacingCellsList				ReplacingCellsList,
	iE-Extensions					ProtocolExtensionContainer { { CellReplacingInfo-ExtIEs}}	OPTIONAL,
	...
}

CellReplacingInfo-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CellReportingIndicator ::= ENUMERATED {stop-request, ... }

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


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

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

CoMPHypothesisSet ::= SEQUENCE (SIZE(1..maxnoofCoMPCells)) OF CoMPHypothesisSetItem

CoMPHypothesisSetItem ::= SEQUENCE {
	coMPCellID						ECGI,
	coMPHypothesis					BIT STRING (SIZE(6..4400, ...)),
	iE-Extensions					ProtocolExtensionContainer { { CoMPHypothesisSetItem-ExtIEs} } OPTIONAL,
	...
}

CoMPHypothesisSetItem-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CoMPInformation ::= SEQUENCE {
	coMPInformationItem						CoMPInformationItem,
	coMPInformationStartTime				CoMPInformationStartTime,
	iE-Extensions							ProtocolExtensionContainer { { CoMPInformation-ExtIEs} } OPTIONAL,
	...
}

CoMPInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CoMPInformationItem ::= SEQUENCE (SIZE(1..maxnoofCoMPHypothesisSet)) OF
	SEQUENCE {
		coMPHypothesisSet					CoMPHypothesisSet,
		benefitMetric						BenefitMetric,
		iE-Extensions						ProtocolExtensionContainer { { CoMPInformationItem-ExtIEs} } OPTIONAL,
		...
	}

CoMPInformationItem-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CoMPInformationStartTime ::= SEQUENCE (SIZE(0..1)) OF
	SEQUENCE {
		startSFN							INTEGER (0..1023, ...),
		startSubframeNumber					INTEGER (0..9, ...),
		iE-Extensions						ProtocolExtensionContainer { { CoMPInformationStartTime-ExtIEs} } OPTIONAL,
		...
	}

CoMPInformationStartTime-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CompositeAvailableCapacity ::= SEQUENCE {
	cellCapacityClassValue							CellCapacityClassValue				OPTIONAL,
	capacityValue									CapacityValue,
	iE-Extensions									ProtocolExtensionContainer { { CompositeAvailableCapacity-ExtIEs} } OPTIONAL,
	...
}

CompositeAvailableCapacity-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CompositeAvailableCapacityGroup	::= SEQUENCE {
	dL-CompositeAvailableCapacity					CompositeAvailableCapacity,
	uL-CompositeAvailableCapacity					CompositeAvailableCapacity,
	iE-Extensions									ProtocolExtensionContainer { { CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL,
	...
}

CompositeAvailableCapacityGroup-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

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

COUNTvalue-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

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

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

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

CoverageModificationList ::= SEQUENCE (SIZE (1..maxCellineNB)) OF CoverageModification-Item

CoverageModification-Item ::= SEQUENCE {
	eCGI							ECGI,
	coverageState					INTEGER (0..15, ...),
	cellDeploymentStatusIndicator	CellDeploymentStatusIndicator			OPTIONAL,
	cellReplacingInfo				CellReplacingInfo						OPTIONAL,
-- Included in case the Cell Deployment Status Indicator IE is present
	...
}

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


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

CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxNrOfErrors)) OF
	SEQUENCE {
		iECriticality			Criticality,
		iE-ID					ProtocolIE-ID,
		typeOfError				TypeOfError,
		iE-Extensions			ProtocolExtensionContainer { {CriticalityDiagnostics-IE-List-ExtIEs} } OPTIONAL,
		...
}

CriticalityDiagnostics-IE-List-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

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

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

CSIReportList ::= SEQUENCE (SIZE(1..maxUEReport)) OF
	SEQUENCE {
		uEID							UEID,
		cSIReportPerCSIProcess			CSIReportPerCSIProcess,
		iE-Extensions					ProtocolExtensionContainer { { CSIReportList-ExtIEs} } OPTIONAL,
		...
	}

CSIReportList-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CSIReportPerCSIProcess ::= SEQUENCE (SIZE(1.. maxCSIProcess)) OF
	SEQUENCE {
		cSIProcessConfigurationIndex	INTEGER (1..7, ...),
		cSIReportPerCSIProcessItem		CSIReportPerCSIProcessItem,
		iE-Extensions					ProtocolExtensionContainer { { CSIReportPerCSIProcess-ExtIEs} } OPTIONAL,
		...
	}

CSIReportPerCSIProcess-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CSIReportPerCSIProcessItem ::= SEQUENCE (SIZE(1.. maxCSIReport)) OF
	SEQUENCE {
		rI								INTEGER (1..8, ...),
		widebandCQI						WidebandCQI,
		subbandSize						SubbandSize,
		subbandCQIList					SubbandCQIList	OPTIONAL,
		iE-Extensions					ProtocolExtensionContainer { { CSIReportPerCSIProcessItem-ExtIEs} } OPTIONAL,
		...
	}

CSIReportPerCSIProcessItem-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

CyclicPrefixDL ::= ENUMERATED {
	normal,
	extended,
	...
}

CyclicPrefixUL ::= ENUMERATED {
	normal,
	extended,
	...
}


-- D

DeactivationIndication::= ENUMERATED {
	deactivated,
	...
}

DeliveryStatus ::= SEQUENCE {
	highestSuccessDeliveredPDCPSN		INTEGER (0..4095),
	iE-Extensions		ProtocolExtensionContainer { {DeliveryStatus-ExtIEs} } OPTIONAL,
	...
}

DeliveryStatus-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


DL-ABS-status::= INTEGER (0..100)

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

DL-GBR-PRB-usage::= INTEGER (0..100)

DL-non-GBR-PRB-usage::= INTEGER (0..100)

DL-scheduling-PDCCH-CCE-usage::= INTEGER (0..100)

DL-Total-PRB-usage::= INTEGER (0..100)

DRB-ID ::= INTEGER (1..32)

DynamicDLTransmissionInformation ::= CHOICE {
	naics-active			DynamicNAICSInformation,
	naics-inactive			NULL,
	...
}

DynamicNAICSInformation ::= SEQUENCE {
	transmissionModes					BIT STRING (SIZE(8))												OPTIONAL,
	pB-information						INTEGER(0..3)														OPTIONAL,
	pA-list								SEQUENCE (SIZE(0..maxnoofPA)) OF PA-Values,
	iE-Extensions						ProtocolExtensionContainer { {DynamicNAICSInformation-ExtIEs} } OPTIONAL,
	...
}

DynamicNAICSInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- E

EARFCN ::= INTEGER (0..maxEARFCN)

EARFCNExtension ::= INTEGER(maxEARFCNPlusOne..newmaxEARFCN, ...)

ECGI ::= SEQUENCE {
	pLMN-Identity				PLMN-Identity,
	eUTRANcellIdentifier		EUTRANCellIdentifier,
	iE-Extensions				ProtocolExtensionContainer { {ECGI-ExtIEs} } OPTIONAL,
	...
}

ECGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

EnhancedRNTP ::= SEQUENCE {
	enhancedRNTPBitmap			BIT STRING (SIZE(12..8800, ...)),
	rNTP-High-Power-Threshold	RNTP-Threshold,
	enhancedRNTPStartTime		EnhancedRNTPStartTime  OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { { EnhancedRNTP-ExtIEs} } OPTIONAL,
	...
}

EnhancedRNTP-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

EnhancedRNTPStartTime ::= SEQUENCE {
		startSFN				INTEGER (0..1023, ...),
		startSubframeNumber		INTEGER (0..9, ...),
		iE-Extensions			ProtocolExtensionContainer { { EnhancedRNTPStartTime-ExtIEs} } OPTIONAL,
		...
	}

EnhancedRNTPStartTime-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ENB-ID ::= CHOICE {
	macro-eNB-ID	BIT STRING (SIZE (20)),
	home-eNB-ID		BIT STRING (SIZE (28)),
	... ,
	short-Macro-eNB-ID		BIT STRING (SIZE(18)),
	long-Macro-eNB-ID		BIT STRING (SIZE(21))
}

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

EN-DC-ResourceConfiguration ::= SEQUENCE {
	pDCPatSgNB		ENUMERATED {present, not-present, ...},
	mCGresources	ENUMERATED {present, not-present, ...},
	sCGresources	ENUMERATED {present, not-present, ...},
	iE-Extensions					ProtocolExtensionContainer { { EN-DC-ResourceConfigurationExtIEs} }	OPTIONAL,
	...
}

EN-DC-ResourceConfigurationExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


EPLMNs ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF PLMN-Identity

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

E-RAB-Level-QoS-Parameters ::= SEQUENCE {
	qCI								QCI,
	allocationAndRetentionPriority	AllocationAndRetentionPriority,
	gbrQosInformation				GBR-QosInformation													OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { { E-RAB-Level-QoS-Parameters-ExtIEs} }	OPTIONAL,
	...
}

E-RAB-Level-QoS-Parameters-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RAB-List ::= SEQUENCE (SIZE(1.. maxnoofBearers)) OF ProtocolIE-Single-Container { {E-RAB-ItemIEs} }

E-RAB-ItemIEs 	X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RAB-Item	 CRITICALITY ignore 	TYPE E-RAB-Item 	PRESENCE mandatory },
	...
}

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

E-RAB-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

E-RABUsageReportList ::= SEQUENCE (SIZE(1..maxnooftimeperiods)) OF ProtocolIE-Single-Container { {E-RABUsageReport-ItemIEs} }

E-RABUsageReport-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABUsageReport-Item	 CRITICALITY ignore 	TYPE E-RABUsageReport-Item 	PRESENCE mandatory },
	...
}

E-RABUsageReport-Item ::= SEQUENCE {
	startTimeStamp				OCTET STRING (SIZE(4)),
	endTimeStamp					OCTET STRING (SIZE(4)),
	usageCountUL					INTEGER (0..18446744073709551615),
	usageCountDL					INTEGER (0..18446744073709551615),
	iE-Extensions				ProtocolExtensionContainer { { E-RABUsageReport-Item-ExtIEs} } OPTIONAL,
...
}

E-RABUsageReport-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

EUTRA-Mode-Info ::= CHOICE {
	fDD		FDD-Info,
	tDD		TDD-Info,
	...
}

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

EUTRANTraceID		::= OCTET STRING (SIZE (8))

EventType ::= ENUMERATED{
	change-of-serving-cell,
	...
}

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

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

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

ExpectedUEActivityBehaviour-ExtIEs X2AP-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,...)

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

ExtendedULInterferenceOverloadInfo ::= SEQUENCE {
	associatedSubframes							BIT STRING (SIZE (5)),
	extended-ul-InterferenceOverloadIndication	UL-InterferenceOverloadIndication,
	iE-Extensions								ProtocolExtensionContainer { { ExtendedULInterferenceOverloadInfo-ExtIEs} } OPTIONAL,
	...
}

ExtendedULInterferenceOverloadInfo-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

-- F

FDD-Info ::= SEQUENCE {
	uL-EARFCN						EARFCN,
	dL-EARFCN						EARFCN,
	uL-Transmission-Bandwidth		Transmission-Bandwidth,
	dL-Transmission-Bandwidth		Transmission-Bandwidth,
	iE-Extensions				ProtocolExtensionContainer { {FDD-Info-ExtIEs} } OPTIONAL,
	...
}

FDD-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-UL-EARFCNExtension		CRITICALITY reject	EXTENSION EARFCNExtension		PRESENCE optional}|
	{ ID id-DL-EARFCNExtension		CRITICALITY reject	EXTENSION EARFCNExtension		PRESENCE optional}|
	{ ID id-OffsetOfNbiotChannelNumberToDL-EARFCN	CRITICALITY reject	EXTENSION OffsetOfNbiotChannelNumberToEARFCN		PRESENCE optional}|
	{ ID id-OffsetOfNbiotChannelNumberToUL-EARFCN	CRITICALITY reject	EXTENSION OffsetOfNbiotChannelNumberToEARFCN		PRESENCE optional},
	...
}

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

}

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

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

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

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

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

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

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

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

Fourframes ::= BIT STRING (SIZE (24))

FreqBandIndicator ::= INTEGER (1..256, ...)

FreqBandIndicatorPriority ::= ENUMERATED {
	not-broadcasted,
	broadcasted,
	...
}

-- 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 X2AP-PROTOCOL-EXTENSION ::= {
-- Extension for maximum bitrate > 10Gbps --
	{ 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},
	...
}

GlobalENB-ID ::= SEQUENCE {
	pLMN-Identity			PLMN-Identity,
	eNB-ID					ENB-ID,
	iE-Extensions			ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL,
	...
}

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

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

GlobalGNB-ID-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

GTPtunnelEndpoint ::= SEQUENCE {
	transportLayerAddress			TransportLayerAddress,
	gTP-TEID						GTP-TEI,
	iE-Extensions					ProtocolExtensionContainer { {GTPtunnelEndpoint-ExtIEs} } OPTIONAL,
	...
}

GTPtunnelEndpoint-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

GUGroupIDList		::= SEQUENCE (SIZE (1..maxPools)) OF GU-Group-ID


GU-Group-ID			::= SEQUENCE {
	pLMN-Identity		PLMN-Identity,
	mME-Group-ID		MME-Group-ID,
	iE-Extensions		ProtocolExtensionContainer { {GU-Group-ID-ExtIEs} } OPTIONAL,
	...
}

GU-Group-ID-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


GUMMEI			::= SEQUENCE {

	gU-Group-ID		GU-Group-ID,
	mME-Code			MME-Code,
	iE-Extensions					ProtocolExtensionContainer { {GUMMEI-ExtIEs} } OPTIONAL,
	...
}

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

GNB-ID ::= CHOICE {
	gNB-ID	BIT STRING (SIZE (22..32)),
	...
}

-- H

HandoverReportType ::= ENUMERATED {
	hoTooEarly,
	hoToWrongCell,
	...,
	interRATpingpong
}

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

HandoverRestrictionList-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-NRrestriction		CRITICALITY ignore	EXTENSION NRrestriction	PRESENCE optional},
	...
}

HFN ::= INTEGER (0..1048575)

HFNModified ::= INTEGER (0..131071)

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

HWLoadIndicator ::= SEQUENCE {
	dLHWLoadIndicator			LoadIndicator,
	uLHWLoadIndicator			LoadIndicator,
	iE-Extensions				ProtocolExtensionContainer { { HWLoadIndicator-ExtIEs} } OPTIONAL,
	...
}

HWLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


-- I

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

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

InvokeIndication ::= ENUMERATED{
	abs-information,
	...,
	naics-information-start,
	naics-information-stop
}

-- J
-- K

Key-eNodeB-Star ::= BIT STRING (SIZE(256))

-- L

LAC					::= OCTET STRING (SIZE (2)) --(EXCEPT ('0000'H|'FFFE'H))

LastVisitedCell-Item ::= CHOICE {
	e-UTRAN-Cell					LastVisitedEUTRANCellInformation,
	uTRAN-Cell						LastVisitedUTRANCellInformation,
	gERAN-Cell						LastVisitedGERANCellInformation,
	...
}

LastVisitedEUTRANCellInformation ::= SEQUENCE {
	global-Cell-ID					ECGI,
	cellType						CellType,
	time-UE-StayedInCell			Time-UE-StayedInCell,
	iE-Extensions					ProtocolExtensionContainer { { LastVisitedEUTRANCellInformation-ExtIEs} } OPTIONAL,
	...
}

LastVisitedEUTRANCellInformation-ExtIEs X2AP-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},
	...
}

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

LastVisitedUTRANCellInformation	::= OCTET STRING

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

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

LoadIndicator ::= ENUMERATED {
	lowLoad,
	mediumLoad,
	highLoad,
	overLoad,
	...
}

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

LocationReportingInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
	...
}

-- M

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

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

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

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

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

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

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

M3period ::= ENUMERATED {ms100, ms1000, ms10000, ... }

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

M4Configuration-ExtIEs X2AP-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 X2AP-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 X2AP-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 X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

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

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

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

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

MDT-Configuration ::= SEQUENCE {
	mdt-Activation				MDT-Activation,
	areaScopeOfMDT				AreaScopeOfMDT,
	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 for measurement M1
	iE-Extensions				ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL,
	...
}

MDT-Configuration-ExtIEs X2AP-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-SignallingBasedMDTPLMNList	CRITICALITY ignore	EXTENSION MDTPLMNList			PRESENCE optional}|
	{ID id-M6Configuration				CRITICALITY ignore	EXTENSION M6Configuration		PRESENCE conditional}|
	{ID id-M7Configuration				CRITICALITY ignore	EXTENSION M7Configuration		PRESENCE conditional},
	...
}

MDTPLMNList ::= SEQUENCE (SIZE(1..maxnoofMDTPLMNs)) OF PLMN-Identity

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

Measurement-ID	::= INTEGER (1..4095, ...)

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

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

MeNBResourceCoordinationInformation ::= SEQUENCE {
	eUTRA-Cell-ID					ECGI,
	uLCoordinationInformation		BIT STRING (SIZE(6..4400, ...)),
	dLCoordinationInformation		BIT STRING (SIZE(6..4400, ...)),
	iE-Extensions					ProtocolExtensionContainer { { MeNBResourceCoordinationInformationExtIEs} }		 OPTIONAL,
	...
}

MeNBResourceCoordinationInformationExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

MeNBtoSeNBContainer  ::= OCTET STRING

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

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

MBMS-Service-Area-Identity-List ::= SEQUENCE (SIZE(1.. maxnoofMBMSServiceAreaIdentities)) OF MBMS-Service-Area-Identity

MBMS-Service-Area-Identity ::= OCTET STRING (SIZE (2))

MBSFN-Subframe-Infolist::= SEQUENCE (SIZE(1.. maxnoofMBSFN)) OF MBSFN-Subframe-Info

MBSFN-Subframe-Info	::= SEQUENCE {
	radioframeAllocationPeriod		RadioframeAllocationPeriod,
	radioframeAllocationOffset		RadioframeAllocationOffset,
	subframeAllocation				SubframeAllocation,
	iE-Extensions					ProtocolExtensionContainer { { MBSFN-Subframe-Info-ExtIEs } } 	OPTIONAL,
	...
}

MBSFN-Subframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

MobilityParametersModificationRange ::= SEQUENCE {
	handoverTriggerChangeLowerLimit		INTEGER (-20..20),
	handoverTriggerChangeUpperLimit		INTEGER (-20..20),
	...
}

MobilityParametersInformation ::= SEQUENCE {
	handoverTriggerChange			INTEGER (-20..20),
	...
}

MultibandInfoList ::= SEQUENCE (SIZE(1..maxnoofBands)) OF BandInfo


BandInfo	::= SEQUENCE {
	freqBandIndicator		FreqBandIndicator,
	iE-Extensions			ProtocolExtensionContainer { { BandInfo-ExtIEs } } 	OPTIONAL,
	...
}

BandInfo-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

MeNBtoSgNBContainer ::= OCTET STRING

MCGSplitSRBs ::= ENUMERATED {srb1, srb2, srb1and2, ...}

MCGSplitSRB ::= SEQUENCE {
	rrcContainer 				RRCContainer			OPTIONAL,
	srbType						SRBType,
	deliveryStatus				DeliveryStatus			OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { {MCGSplitSRB-ExtIEs} } OPTIONAL,
	...
}

MCGSplitSRB-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

UENRMeasurement ::= SEQUENCE {
	uENRMeasurements			RRCContainer,
	iE-Extensions			ProtocolExtensionContainer { {UENRMeasurement-ExtIEs} } OPTIONAL,
	...
}

UENRMeasurement-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- N

Neighbour-Information ::= SEQUENCE (SIZE (0..maxnoofNeighbours)) OF SEQUENCE {
	eCGI						ECGI,
	pCI							PCI,
	eARFCN						EARFCN,
	iE-Extensions				ProtocolExtensionContainer { {Neighbour-Information-ExtIEs} } OPTIONAL,
	...
}

Neighbour-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-NeighbourTAC		CRITICALITY ignore	EXTENSION TAC				PRESENCE optional}|
	{ ID id-eARFCNExtension		CRITICALITY reject	EXTENSION EARFCNExtension	PRESENCE optional},
	...
}

NextHopChainingCount ::= INTEGER (0..7)

Number-of-Antennaports ::= ENUMERATED {
		an1,
	 	an2,
		an4,
		...
}

NRARFCN ::= INTEGER (0..3266667)  -- This IE may be refined.

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

NRCGI ::= SEQUENCE {
	pLMN-Identity				PLMN-Identity,
	nRcellIdentifier				NRCellIdentifier,
	iE-Extensions				ProtocolExtensionContainer { {NRCGI-ExtIEs} } OPTIONAL,
	...
}

NRCGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

NRPCI ::= INTEGER (0..1007)

NRrestriction ::= ENUMERATED {
	nRrestricted,
	...
}

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

NR-TxBW	::= SEQUENCE {
	nRSCS	NRSCS,
	nRNRB	NRNRB,
	iE-Extensions				ProtocolExtensionContainer { { NR-TxBW-ExtIEs} } OPTIONAL,
	...
}

NR-TxBW-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

NRNRB ::= ENUMERATED { nrb11, nrb18, nrb24, nrb25, nrb31, nrb32, nrb38, nrb51, nrb52, nrb65, nrb66, nrb78, nrb79, nrb93, nrb106, nrb107, nrb121, nrb132, nrb133, nrb135, nrb160, nrb162, nrb189, nrb216, nrb217, nrb245, nrb264, nrb270, nrb273, ...}

NRSCS ::= ENUMERATED { scs15, scs30, scs60, scs120, ...}


Extended-TAC ::= OCTET STRING (SIZE (3))

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

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

-- O

OffsetOfNbiotChannelNumberToEARFCN ::= ENUMERATED {
		minusTen,
		minusNine,
		minusEight,
		minusSeven,
		minusSix,
		minusFive,
		minusFour,
		minusThree,
		minusTwo,
		minusOne,
		minusZeroDotFive,
		zero,
		one,
		two,
		three,
		four,
		five,
		six,
		seven,
		eight,
		nine,
		...
}

Oneframe ::= BIT STRING (SIZE (6))

-- P

PA-Values ::= ENUMERATED {
	dB-6,
	dB-4dot77,
	dB-3,
	dB-1dot77,
	dB0,
	dB1,
	dB2,
	dB3,
	...
}

PDCPChangeIndication ::= ENUMERATED {s-KgNB-update-required, pDCP-data-recovery-required,...}

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

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

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

PCI ::= INTEGER (0..503, ...)

PLMN-Identity ::= OCTET STRING (SIZE(3))

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

PRACH-Configuration ::= SEQUENCE {
	rootSequenceIndex						INTEGER (0..837),
	zeroCorrelationIndex					INTEGER (0..15),
	highSpeedFlag							BOOLEAN,
	prach-FreqOffset						INTEGER (0..94),
	prach-ConfigIndex						INTEGER (0..63)		OPTIONAL,  -- present for TDD --
	iE-Extensions							ProtocolExtensionContainer { {PRACH-Configuration-ExtIEs} }	OPTIONAL,
	...
}

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

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

PLMNListforQMC ::= SEQUENCE (SIZE(1..maxnoofPLMNforQMC)) OF PLMN-Identity


PRACH-Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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 X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-ProSeUEtoNetworkRelaying	CRITICALITY ignore	EXTENSION ProSeUEtoNetworkRelaying		PRESENCE optional},
	...
}

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

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

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

-- Q

QCI ::= INTEGER (0..255)

-- R

RadioframeAllocationOffset ::= INTEGER (0..7, ...)

RadioframeAllocationPeriod ::= ENUMERATED{
	n1,
	n2,
	n4,
	n8,
	n16,
	n32,
	...
}


RadioResourceStatus	::= SEQUENCE {
	dL-GBR-PRB-usage							DL-GBR-PRB-usage,
	uL-GBR-PRB-usage							UL-GBR-PRB-usage,
	dL-non-GBR-PRB-usage						DL-non-GBR-PRB-usage,
	uL-non-GBR-PRB-usage						UL-non-GBR-PRB-usage,
	dL-Total-PRB-usage							DL-Total-PRB-usage,
	uL-Total-PRB-usage							UL-Total-PRB-usage,
	iE-Extensions								ProtocolExtensionContainer { {RadioResourceStatus-ExtIEs} } OPTIONAL,
	...
}

RadioResourceStatus-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ID id-DL-scheduling-PDCCH-CCE-usage		CRITICALITY ignore	EXTENSION DL-scheduling-PDCCH-CCE-usage		PRESENCE optional}|

	{ID id-UL-scheduling-PDCCH-CCE-usage		CRITICALITY ignore	EXTENSION UL-scheduling-PDCCH-CCE-usage		PRESENCE optional},
	...
}

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

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

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

Registration-Request	::= ENUMERATED {
	start,
	stop,
	...,
	partial-stop,
	add
}

RelativeNarrowbandTxPower ::= SEQUENCE {

	rNTP-PerPRB							BIT STRING (SIZE(6..110, ...)),
	rNTP-Threshold						RNTP-Threshold,
	numberOfCellSpecificAntennaPorts	ENUMERATED {one, two, four, ...},
	p-B									INTEGER (0..3,...),
	pDCCH-InterferenceImpact			INTEGER (0..4,...),
	iE-Extensions						ProtocolExtensionContainer { { RelativeNarrowbandTxPower-ExtIEs} } OPTIONAL,
	...
}

RelativeNarrowbandTxPower-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-enhancedRNTP	CRITICALITY ignore	EXTENSION EnhancedRNTP		PRESENCE optional },
	...
}

ReplacingCellsList ::= SEQUENCE (SIZE(0.. maxCellineNB)) OF ReplacingCellsList-Item

ReplacingCellsList-Item ::= SEQUENCE {
	eCGI			ECGI,
	...
}

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

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

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

ReportingPeriodicityCSIR ::= ENUMERATED {
	ms5,
	ms10,
	ms20,
	ms40,
	ms80,
...
}

ReportingPeriodicityRSRPMR ::= ENUMERATED {
	one-hundred-20-ms,
	two-hundred-40-ms,
	four-hundred-80-ms,
	six-hundred-40-ms,
...
}

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

ResumeID	::= CHOICE {
	non-truncated	BIT STRING(SIZE(40)),
	truncated		BIT STRING(SIZE(24)),
	...
}

RLCMode ::= ENUMERATED {
	rlc-am,
	rlc-um
}

RNTP-Threshold ::= ENUMERATED {
	minusInfinity,
	minusEleven,
	minusTen,
	minusNine,
	minusEight,
	minusSeven,
	minusSix,
	minusFive,
	minusFour,
	minusThree,
	minusTwo,
	minusOne,
	zero,
	one,
	two,
	three,
	...
}

RRC-Context ::= OCTET STRING

RRCConnReestabIndicator ::= ENUMERATED {
	reconfigurationFailure, handoverFailure, otherFailure, ...
}
-- The values correspond to the values of ReestablishmentCause reported from the UE in the RRCConnectionReestablishmentRequest, as defined in TS 36.331 [9]

RRCConnSetupIndicator::= ENUMERATED {
	rrcConnSetup,
	...
}

RSRPMeasurementResult ::= SEQUENCE (SIZE(1..maxCellReport)) OF
	SEQUENCE {
		rSRPCellID						ECGI,
		rSRPMeasured					INTEGER (0..97, ...),
		iE-Extensions					ProtocolExtensionContainer { { RSRPMeasurementResult-ExtIEs} } OPTIONAL,
		...
	}

RSRPMeasurementResult-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

RSRPMRList ::= SEQUENCE (SIZE(1..maxUEReport)) OF
	SEQUENCE {
		rSRPMeasurementResult			RSRPMeasurementResult,
		iE-Extensions					ProtocolExtensionContainer { { RSRPMRList-ExtIEs} } OPTIONAL,
		...
	}

RSRPMRList-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-UEID	CRITICALITY ignore	EXTENSION UEID		PRESENCE optional},
	...
}

RRCContainer ::= OCTET STRING

-- S

S1TNLLoadIndicator ::= SEQUENCE {
	dLS1TNLLoadIndicator			LoadIndicator,
	uLS1TNLLoadIndicator			LoadIndicator,
	iE-Extensions					ProtocolExtensionContainer { { S1TNLLoadIndicator-ExtIEs} } OPTIONAL,
	...
}

S1TNLLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

SCGChangeIndication ::= ENUMERATED {pDCPCountWrapAround, pSCellChange, other, ...}

SecondaryRATUsageReportList ::= SEQUENCE (SIZE(1..maxnoofBearers)) OF ProtocolIE-Single-Container {{SecondaryRATUsageReport-ItemIEs}}

SecondaryRATUsageReport-ItemIEs	X2AP-PROTOCOL-IES ::= {
	{ ID id-SecondaryRATUsageReport-Item		CRITICALITY reject	TYPE SecondaryRATUsageReport-Item		PRESENCE mandatory},
	...
}

SecondaryRATUsageReport-Item ::= SEQUENCE {
	e-RAB-ID						E-RAB-ID,
	secondaryRATType				ENUMERATED {nr, ...},
	e-RABUsageReportList			E-RABUsageReportList,
	iE-Extensions				ProtocolExtensionContainer { { SecondaryRATUsageReport-Item-ExtIEs} } OPTIONAL,
...
}

SecondaryRATUsageReport-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

SeNBtoMeNBContainer ::= OCTET STRING


ServedCells ::= SEQUENCE (SIZE (1.. maxCellineNB)) OF SEQUENCE {
	servedCellInfo					ServedCell-Information,
	neighbour-Info					Neighbour-Information			OPTIONAL,
	iE-Extensions					ProtocolExtensionContainer { {ServedCell-ExtIEs} } OPTIONAL,
	...
}

ServedCell-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ServedCell-Information ::= SEQUENCE {
	pCI					PCI,
	cellId				ECGI,
	tAC					TAC,
	broadcastPLMNs		BroadcastPLMNs-Item,
	eUTRA-Mode-Info		EUTRA-Mode-Info,
	iE-Extensions		ProtocolExtensionContainer { {ServedCell-Information-ExtIEs} } OPTIONAL,
	...
}

ServedCell-Information-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-Number-of-Antennaports		CRITICALITY ignore	EXTENSION Number-of-Antennaports				PRESENCE optional}|
	{ ID id-PRACH-Configuration			CRITICALITY ignore	EXTENSION PRACH-Configuration					PRESENCE optional}|
	{ ID id-MBSFN-Subframe-Info			CRITICALITY ignore	EXTENSION MBSFN-Subframe-Infolist				PRESENCE optional}|
	{ ID id-CSG-Id						CRITICALITY ignore	EXTENSION CSG-Id								PRESENCE optional}|
	{ ID id-MBMS-Service-Area-List		CRITICALITY ignore	EXTENSION MBMS-Service-Area-Identity-List	PRESENCE optional}|
	{ ID id-MultibandInfoList			CRITICALITY ignore	EXTENSION MultibandInfoList						PRESENCE optional}|
	{ ID id-FreqBandIndicatorPriority	CRITICALITY ignore	EXTENSION FreqBandIndicatorPriority				PRESENCE optional}|
	{ ID id-BandwidthReducedSI			CRITICALITY ignore	EXTENSION BandwidthReducedSI					PRESENCE optional},
	...
}

SgNBResourceCoordinationInformation ::= SEQUENCE {
	nR-CGI							NRCGI,
	uLCoordinationInformation		BIT STRING (SIZE(6..4400, ...)),
	dLCoordinationInformation		BIT STRING (SIZE(6..4400, ...)),
	iE-Extensions					ProtocolExtensionContainer { { SgNBResourceCoordinationInformationExtIEs} }		 OPTIONAL,
	...
}

SgNBResourceCoordinationInformationExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

SgNB-UE-X2AP-ID ::= INTEGER (0..4294967295)

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

ShortMAC-I ::= BIT STRING (SIZE(16))

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

SpecialSubframe-Info ::= SEQUENCE {
	specialSubframePatterns		SpecialSubframePatterns,
	cyclicPrefixDL				CyclicPrefixDL,
	cyclicPrefixUL				CyclicPrefixUL,
	iE-Extensions				ProtocolExtensionContainer { { SpecialSubframe-Info-ExtIEs} } OPTIONAL,
	...
}

SpecialSubframe-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

SpecialSubframePatterns ::= ENUMERATED {
	ssp0,
	ssp1,
	ssp2,
	ssp3,
	ssp4,
	ssp5,
	ssp6,
	ssp7,
	ssp8,
	...
}

SubbandCQI ::= SEQUENCE {
	subbandCQICodeword0			SubbandCQICodeword0,
	subbandCQICodeword1			SubbandCQICodeword1		OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { { SubbandCQI-ExtIEs} } OPTIONAL,
	...
}

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

SubbandCQI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

SubbandCQICodeword0 ::= CHOICE {
	four-bitCQI						INTEGER (0..15, ...),
	two-bitSubbandDifferentialCQI	INTEGER (0..3, ...),
	two-bitDifferentialCQI			INTEGER (0..3, ...),
	...
}
SubbandCQICodeword1 ::= CHOICE {
	four-bitCQI							INTEGER (0..15, ...),
	three-bitSpatialDifferentialCQI		INTEGER (0..7, ...),
	two-bitSubbandDifferentialCQI		INTEGER (0..3, ...),
	two-bitDifferentialCQI				INTEGER (0..3, ...),
	...
}

SubbandCQIList ::= SEQUENCE (SIZE(1.. maxSubband)) OF SubbandCQIItem

SubbandCQIItem ::= SEQUENCE {
	subbandCQI			SubbandCQI,
	subbandIndex		INTEGER (0..27,...),
	iE-Extensions		ProtocolExtensionContainer { { SubbandCQIItem-ExtIEs} } OPTIONAL,
	...
}

SubbandCQIItem-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

SubbandSize ::= ENUMERATED {
	size2,
	size3,
	size4,
	size6,
	size8,
	...
}

SubscriberProfileIDforRFP ::= INTEGER (1..256)

SubframeAllocation ::= CHOICE {
	oneframe						Oneframe,
	fourframes						Fourframes,
	...
}

SubframeAssignment ::= ENUMERATED {
	sa0,
	sa1,
	sa2,
	sa3,
	sa4,
	sa5,
	sa6,
	...
}

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

SgNBtoMeNBContainer ::= OCTET STRING

SRBType ::= ENUMERATED {srb1, srb2, ...}
SCGConfigurationQuery ::= ENUMERATED {true,...}

SULInformation ::= SEQUENCE {
	sUL-ARFCN				NRARFCN,
	sUL-TxBW				NR-TxBW,
	iE-Extensions			ProtocolExtensionContainer { { SULInformation-ExtIEs } }		OPTIONAL,
	...
}

SULInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- T

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

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

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

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

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

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

TAI-Item ::= SEQUENCE {
	tAC					TAC,
	pLMN-Identity		PLMN-Identity,
	iE-Extensions		ProtocolExtensionContainer { { TAI-Item-ExtIEs} } OPTIONAL,
	...
}

TAI-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

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

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

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

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

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

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

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

TargetCellInUTRAN ::= OCTET STRING -- This IE is to be encoded according to the UTRAN Cell ID in the Last Visited UTRAN Cell Information IE in TS 25.413 [24]

TargeteNBtoSource-eNBTransparentContainer	::= OCTET STRING

TDD-Info ::= SEQUENCE {
	eARFCN							EARFCN,
	transmission-Bandwidth			Transmission-Bandwidth,
	subframeAssignment				SubframeAssignment,
	specialSubframe-Info			SpecialSubframe-Info,
	iE-Extensions					ProtocolExtensionContainer { {TDD-Info-ExtIEs} } OPTIONAL,
	...
}
TDD-Info-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-AdditionalSpecialSubframe-Info	CRITICALITY ignore	EXTENSION AdditionalSpecialSubframe-Info	PRESENCE optional}|
	{ ID id-eARFCNExtension					CRITICALITY reject	EXTENSION EARFCNExtension						PRESENCE optional}|
	{ ID id-AdditionalSpecialSubframeExtension-Info	CRITICALITY ignore	EXTENSION AdditionalSpecialSubframeExtension-Info	PRESENCE optional},
	...
}

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)

TraceActivation ::= SEQUENCE {
	eUTRANTraceID					EUTRANTraceID,
	interfacesToTrace				InterfacesToTrace,
traceDepth							TraceDepth,
traceCollectionEntityIPAddress		TraceCollectionEntityIPAddress,
	iE-Extensions					ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL,
	...
}

TraceActivation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-MDTConfiguration	CRITICALITY ignore	EXTENSION MDT-Configuration		PRESENCE optional}|
	{ ID id-UEAppLayerMeasConfig		CRITICALITY ignore	EXTENSION UEAppLayerMeasConfig		PRESENCE optional},
	...
}

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

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

Transmission-Bandwidth ::= ENUMERATED {
		bw6,
	 	bw15,
		bw25,
	 	bw50,
		bw75,
		bw100,
		...,
		bw1
}

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

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

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

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


-- U

UEAggregateMaximumBitRate ::= SEQUENCE {
	uEaggregateMaximumBitRateDownlink	BitRate,
	uEaggregateMaximumBitRateUplink		BitRate,
	iE-Extensions						ProtocolExtensionContainer { {UEAggregate-MaximumBitrate-ExtIEs} } OPTIONAL,
	...
}

UEAggregate-MaximumBitrate-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-extended-uEaggregateMaximumBitRateDownlink	CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional}|
	{ ID id-extended-uEaggregateMaximumBitRateUplink	CRITICALITY ignore	EXTENSION ExtendedBitRate	PRESENCE optional},
	...
}

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

UEAppLayerMeasConfig-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

UE-ContextKeptIndicator ::= ENUMERATED {
	true,
	...
}

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

UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCells)) 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 [9]

UE-S1AP-ID ::= INTEGER (0.. 4294967295)

UE-X2AP-ID ::= INTEGER (0..4095)

UE-X2AP-ID-Extension ::= INTEGER (0..4095, ...)

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 [9]

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

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

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

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

UE-Sidelink-Aggregate-MaximumBitRate-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

ULConfiguration::= SEQUENCE {
	uL-PDCP			UL-UE-Configuration,
	iE-Extensions					ProtocolExtensionContainer { { ULConfiguration-ExtIEs} } OPTIONAL,
	...
}

ULConfiguration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

UL-UE-Configuration::= ENUMERATED { no-data, shared, only, ... }

UL-GBR-PRB-usage::= INTEGER (0..100)

UL-HighInterferenceIndicationInfo ::= SEQUENCE (SIZE(1..maxCellineNB)) OF UL-HighInterferenceIndicationInfo-Item

UL-HighInterferenceIndicationInfo-Item ::= SEQUENCE {
	target-Cell-ID					ECGI,
	ul-interferenceindication		UL-HighInterferenceIndication,
	iE-Extensions					ProtocolExtensionContainer { { UL-HighInterferenceIndicationInfo-Item-ExtIEs} } OPTIONAL,
	...
}

UL-HighInterferenceIndicationInfo-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

UL-HighInterferenceIndication ::= BIT STRING (SIZE(1..110, ...))

UL-InterferenceOverloadIndication ::= SEQUENCE (SIZE(1..maxnoofPRBs)) OF UL-InterferenceOverloadIndication-Item

UL-InterferenceOverloadIndication-Item ::= ENUMERATED {
	high-interference,
	medium-interference,
	low-interference,
	...
}

UL-non-GBR-PRB-usage::= INTEGER (0..100)

UL-scheduling-PDCCH-CCE-usage::= INTEGER (0..100)

UL-Total-PRB-usage::= INTEGER (0..100)

UsableABSInformation ::= CHOICE {
	fdd					UsableABSInformationFDD,
	tdd					UsableABSInformationTDD,
	...
}

UsableABSInformationFDD ::= SEQUENCE {
	usable-abs-pattern-info				BIT STRING (SIZE(40)),
	iE-Extensions						ProtocolExtensionContainer { { UsableABSInformationFDD-ExtIEs} } OPTIONAL,
	...
}

UsableABSInformationFDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

UsableABSInformationTDD ::= SEQUENCE {
	usaable-abs-pattern-info			BIT STRING (SIZE(1..70, ...)),
	iE-Extensions						ProtocolExtensionContainer { { UsableABSInformationTDD-ExtIEs} } OPTIONAL,
	...
}

UsableABSInformationTDD-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


-- V

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

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

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

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

-- W

WidebandCQI ::= SEQUENCE {
	widebandCQICodeword0		INTEGER (0..15, ...),
	widebandCQICodeword1		WidebandCQICodeword1		OPTIONAL,
	iE-Extensions				ProtocolExtensionContainer { { WidebandCQI-ExtIEs} } OPTIONAL,
	...
}

WidebandCQI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

WidebandCQICodeword1::= CHOICE {
	four-bitCQI								INTEGER (0..15, ...),
	three-bitSpatialDifferentialCQI			INTEGER (0..7, ...),
	...
}

WTID ::= CHOICE {
	wTID-Type1			WTID-Type1,
	wTID-Type2			WTID-Long-Type2,
	...
}

WTID-Type1 ::= SEQUENCE {
	pLMN-Identity					PLMN-Identity,
	shortWTID						BIT STRING (SIZE(24)),
	...
}

WTID-Long-Type2 ::= BIT STRING (SIZE(48))

WT-UE-XwAP-ID ::= OCTET STRING (SIZE (3))

-- X

X2BenefitValue ::= INTEGER (1..8, ...)

-- Y
-- Z

END


-- **************************************************************
--
-- Common definitions
--
-- **************************************************************

X2AP-CommonDataTypes {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-CommonDataTypes (3) }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

-- **************************************************************
--
-- Extension constants
--
-- **************************************************************

maxPrivateIEs 									INTEGER ::= 65535
maxProtocolExtensions 							INTEGER ::= 65535
maxProtocolIEs									INTEGER ::= 65535

-- **************************************************************
--
-- Common Data Types
--
-- **************************************************************

Criticality		::= ENUMERATED { reject, ignore, notify }

Presence		::= ENUMERATED { optional, conditional, mandatory }

PrivateIE-ID	::= CHOICE {
	local				INTEGER (0.. maxPrivateIEs),
	global				OBJECT IDENTIFIER
}

ProcedureCode		::= INTEGER (0..255)


ProtocolIE-ID		::= INTEGER (0..maxProtocolIEs)


TriggeringMessage	::= ENUMERATED { initiating-message, successful-outcome, unsuccessful-outcome}

END


-- **************************************************************
--
-- Constant definitions
--
-- **************************************************************

X2AP-Constants {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Constants (4) }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS
	ProcedureCode,
	ProtocolIE-ID
FROM X2AP-CommonDataTypes;

-- **************************************************************
--
-- Elementary Procedures
--
-- **************************************************************

id-handoverPreparation											ProcedureCode ::= 0
id-handoverCancel												ProcedureCode ::= 1
id-loadIndication												ProcedureCode ::= 2
id-errorIndication												ProcedureCode ::= 3
id-snStatusTransfer												ProcedureCode ::= 4
id-uEContextRelease												ProcedureCode ::= 5
id-x2Setup														ProcedureCode ::= 6
id-reset														ProcedureCode ::= 7
id-eNBConfigurationUpdate										ProcedureCode ::= 8
id-resourceStatusReportingInitiation							ProcedureCode ::= 9
id-resourceStatusReporting										ProcedureCode ::= 10
id-privateMessage												ProcedureCode ::= 11
id-mobilitySettingsChange										ProcedureCode ::= 12
id-rLFIndication												ProcedureCode ::= 13
id-handoverReport												ProcedureCode ::= 14
id-cellActivation												ProcedureCode ::= 15
id-x2Release													ProcedureCode ::= 16
id-x2APMessageTransfer											ProcedureCode ::= 17
id-x2Removal													ProcedureCode ::= 18
id-seNBAdditionPreparation										ProcedureCode ::= 19
id-seNBReconfigurationCompletion								ProcedureCode ::= 20
id-meNBinitiatedSeNBModificationPreparation						ProcedureCode ::= 21
id-seNBinitiatedSeNBModification								ProcedureCode ::= 22
id-meNBinitiatedSeNBRelease										ProcedureCode ::= 23
id-seNBinitiatedSeNBRelease										ProcedureCode ::= 24
id-seNBCounterCheck												ProcedureCode ::= 25
id-retrieveUEContext											ProcedureCode ::= 26
id-sgNBAdditionPreparation										ProcedureCode ::= 27
id-sgNBReconfigurationCompletion									ProcedureCode ::= 28
id-meNBinitiatedSgNBModificationPreparation						ProcedureCode ::= 29
id-sgNBinitiatedSgNBModification									ProcedureCode ::= 30
id-meNBinitiatedSgNBRelease										ProcedureCode ::= 31
id-sgNBinitiatedSgNBRelease										ProcedureCode ::= 32
id-sgNBCounterCheck												ProcedureCode ::= 33
id-sgNBChange													ProcedureCode ::= 34
id-rRCTransfer													ProcedureCode ::= 35
id-endcX2Setup													ProcedureCode ::= 36
id-endcConfigurationUpdate										ProcedureCode ::= 37
id-secondaryRATDataUsageReport									ProcedureCode ::= 38
id-endcCellActivation											ProcedureCode ::= 39


-- **************************************************************
--
-- Lists
--
-- **************************************************************

maxEARFCN									INTEGER ::= 65535
maxEARFCNPlusOne							INTEGER ::= 65536
newmaxEARFCN								INTEGER ::= 262143
maxInterfaces								INTEGER ::= 16
maxCellineNB								INTEGER ::= 256
maxnoofBands								INTEGER ::= 16
maxnoofBearers								INTEGER ::= 256
maxNrOfErrors								INTEGER ::= 256
maxnoofPDCP-SN								INTEGER ::= 16
maxnoofEPLMNs								INTEGER ::= 15
maxnoofEPLMNsPlusOne						INTEGER ::= 16
maxnoofForbLACs								INTEGER ::= 4096
maxnoofForbTACs								INTEGER ::= 4096
maxnoofBPLMNs								INTEGER ::= 6
maxnoofNeighbours							INTEGER ::= 512
maxnoofPRBs									INTEGER ::= 110
maxPools									INTEGER ::= 16
maxnoofCells								INTEGER ::= 16
maxnoofMBSFN								INTEGER ::= 8
maxFailedMeasObjects						INTEGER ::= 32
maxnoofCellIDforMDT							INTEGER ::= 32
maxnoofTAforMDT								INTEGER ::= 8
maxnoofMBMSServiceAreaIdentities			INTEGER ::= 256
maxnoofMDTPLMNs								INTEGER ::= 16
maxnoofCoMPHypothesisSet					INTEGER ::= 256
maxnoofCoMPCells							INTEGER ::= 32
maxUEReport									INTEGER ::= 128
maxCellReport								INTEGER ::= 9
maxnoofPA									INTEGER ::= 3
maxCSIProcess								INTEGER ::= 4
maxCSIReport								INTEGER ::= 2
maxSubband									INTEGER ::= 14
maxofNRNeighbours							INTEGER ::= 1024
maxCellinengNB								INTEGER ::= 16384
--	maxnoofNRCarriers						INTEGER ::= 32
maxnooftimeperiods							INTEGER ::= 2
maxnoofCellIDforQMC							INTEGER ::= 32
maxnoofTAforQMC								INTEGER ::= 8
maxnoofPLMNforQMC							INTEGER ::= 16

-- **************************************************************
--
-- IEs
--
-- **************************************************************

id-E-RABs-Admitted-Item														ProtocolIE-ID ::= 0
id-E-RABs-Admitted-List														ProtocolIE-ID ::= 1
id-E-RAB-Item																ProtocolIE-ID ::= 2
id-E-RABs-NotAdmitted-List													ProtocolIE-ID ::= 3
id-E-RABs-ToBeSetup-Item													ProtocolIE-ID ::= 4
id-Cause																	ProtocolIE-ID ::= 5
id-CellInformation															ProtocolIE-ID ::= 6
id-CellInformation-Item														ProtocolIE-ID ::= 7
id-New-eNB-UE-X2AP-ID														ProtocolIE-ID ::= 9
id-Old-eNB-UE-X2AP-ID														ProtocolIE-ID ::= 10
id-TargetCell-ID															ProtocolIE-ID ::= 11
id-TargeteNBtoSource-eNBTransparentContainer								ProtocolIE-ID ::= 12
id-TraceActivation															ProtocolIE-ID ::= 13
id-UE-ContextInformation													ProtocolIE-ID ::= 14
id-UE-HistoryInformation													ProtocolIE-ID ::= 15
id-UE-X2AP-ID																ProtocolIE-ID ::= 16
id-CriticalityDiagnostics													ProtocolIE-ID ::= 17
id-E-RABs-SubjectToStatusTransfer-List										ProtocolIE-ID ::= 18
id-E-RABs-SubjectToStatusTransfer-Item										ProtocolIE-ID ::= 19
id-ServedCells																ProtocolIE-ID ::= 20
id-GlobalENB-ID																ProtocolIE-ID ::= 21
id-TimeToWait																ProtocolIE-ID ::= 22
id-GUMMEI-ID																ProtocolIE-ID ::= 23
id-GUGroupIDList															ProtocolIE-ID ::= 24
id-ServedCellsToAdd															ProtocolIE-ID ::= 25
id-ServedCellsToModify														ProtocolIE-ID ::= 26
id-ServedCellsToDelete														ProtocolIE-ID ::= 27
id-Registration-Request														ProtocolIE-ID ::= 28
id-CellToReport																ProtocolIE-ID ::= 29
id-ReportingPeriodicity														ProtocolIE-ID ::= 30
id-CellToReport-Item														ProtocolIE-ID ::= 31
id-CellMeasurementResult													ProtocolIE-ID ::= 32
id-CellMeasurementResult-Item												ProtocolIE-ID ::= 33
id-GUGroupIDToAddList														ProtocolIE-ID ::= 34
id-GUGroupIDToDeleteList													ProtocolIE-ID ::= 35
id-SRVCCOperationPossible													ProtocolIE-ID ::= 36
id-Measurement-ID															ProtocolIE-ID ::= 37
id-ReportCharacteristics													ProtocolIE-ID ::= 38
id-ENB1-Measurement-ID														ProtocolIE-ID ::= 39
id-ENB2-Measurement-ID														ProtocolIE-ID ::= 40
id-Number-of-Antennaports													ProtocolIE-ID ::= 41
id-CompositeAvailableCapacityGroup											ProtocolIE-ID ::= 42
id-ENB1-Cell-ID																ProtocolIE-ID ::= 43
id-ENB2-Cell-ID																ProtocolIE-ID ::= 44
id-ENB2-Proposed-Mobility-Parameters										ProtocolIE-ID ::= 45
id-ENB1-Mobility-Parameters													ProtocolIE-ID ::= 46
id-ENB2-Mobility-Parameters-Modification-Range								ProtocolIE-ID ::= 47
id-FailureCellPCI															ProtocolIE-ID ::= 48
id-Re-establishmentCellECGI													ProtocolIE-ID ::= 49
id-FailureCellCRNTI															ProtocolIE-ID ::= 50
id-ShortMAC-I																ProtocolIE-ID ::= 51
id-SourceCellECGI															ProtocolIE-ID ::= 52
id-FailureCellECGI															ProtocolIE-ID ::= 53
id-HandoverReportType														ProtocolIE-ID ::= 54
id-PRACH-Configuration														ProtocolIE-ID ::= 55
id-MBSFN-Subframe-Info														ProtocolIE-ID ::= 56
id-ServedCellsToActivate													ProtocolIE-ID ::= 57
id-ActivatedCellList														ProtocolIE-ID ::= 58
id-DeactivationIndication													ProtocolIE-ID ::= 59
id-UE-RLF-Report-Container													ProtocolIE-ID ::= 60
id-ABSInformation															ProtocolIE-ID ::= 61
id-InvokeIndication															ProtocolIE-ID ::= 62
id-ABS-Status																ProtocolIE-ID ::= 63
id-PartialSuccessIndicator													ProtocolIE-ID ::= 64
id-MeasurementInitiationResult-List											ProtocolIE-ID ::= 65
id-MeasurementInitiationResult-Item											ProtocolIE-ID ::= 66
id-MeasurementFailureCause-Item												ProtocolIE-ID ::= 67
id-CompleteFailureCauseInformation-List										ProtocolIE-ID ::= 68
id-CompleteFailureCauseInformation-Item										ProtocolIE-ID ::= 69
id-CSG-Id																	ProtocolIE-ID ::= 70
id-CSGMembershipStatus														ProtocolIE-ID ::= 71
id-MDTConfiguration															ProtocolIE-ID ::= 72
id-ManagementBasedMDTallowed												ProtocolIE-ID ::= 74
id-RRCConnSetupIndicator													ProtocolIE-ID ::= 75
id-NeighbourTAC																ProtocolIE-ID ::= 76
id-Time-UE-StayedInCell-EnhancedGranularity									ProtocolIE-ID ::= 77
id-RRCConnReestabIndicator													ProtocolIE-ID ::= 78
id-MBMS-Service-Area-List													ProtocolIE-ID ::= 79
id-HO-cause																	ProtocolIE-ID ::= 80
id-TargetCellInUTRAN														ProtocolIE-ID ::= 81
id-MobilityInformation														ProtocolIE-ID ::= 82
id-SourceCellCRNTI															ProtocolIE-ID ::= 83
id-MultibandInfoList														ProtocolIE-ID ::= 84
id-M3Configuration															ProtocolIE-ID ::= 85
id-M4Configuration															ProtocolIE-ID ::= 86
id-M5Configuration															ProtocolIE-ID ::= 87
id-MDT-Location-Info														ProtocolIE-ID ::= 88
id-ManagementBasedMDTPLMNList												ProtocolIE-ID ::= 89
id-SignallingBasedMDTPLMNList												ProtocolIE-ID ::= 90
id-ReceiveStatusOfULPDCPSDUsExtended										ProtocolIE-ID ::= 91
id-ULCOUNTValueExtended														ProtocolIE-ID ::= 92
id-DLCOUNTValueExtended														ProtocolIE-ID ::= 93
id-eARFCNExtension															ProtocolIE-ID ::= 94
id-UL-EARFCNExtension														ProtocolIE-ID ::= 95
id-DL-EARFCNExtension														ProtocolIE-ID ::= 96
id-AdditionalSpecialSubframe-Info											ProtocolIE-ID ::= 97
id-Masked-IMEISV															ProtocolIE-ID ::= 98
id-IntendedULDLConfiguration												ProtocolIE-ID ::= 99
id-ExtendedULInterferenceOverloadInfo										ProtocolIE-ID ::= 100
id-RNL-Header																ProtocolIE-ID ::= 101
id-x2APMessage																ProtocolIE-ID ::= 102
id-ProSeAuthorized															ProtocolIE-ID ::= 103
id-ExpectedUEBehaviour														ProtocolIE-ID ::= 104
id-UE-HistoryInformationFromTheUE											ProtocolIE-ID ::= 105
id-DynamicDLTransmissionInformation											ProtocolIE-ID ::= 106
id-UE-RLF-Report-Container-for-extended-bands								ProtocolIE-ID ::= 107
id-CoMPInformation															ProtocolIE-ID ::= 108
id-ReportingPeriodicityRSRPMR												ProtocolIE-ID ::= 109
id-RSRPMRList																ProtocolIE-ID ::= 110
id-MeNB-UE-X2AP-ID															ProtocolIE-ID ::= 111
id-SeNB-UE-X2AP-ID															ProtocolIE-ID ::= 112
id-UE-SecurityCapabilities													ProtocolIE-ID ::= 113
id-SeNBSecurityKey															ProtocolIE-ID ::= 114
id-SeNBUEAggregateMaximumBitRate											ProtocolIE-ID ::= 115
id-ServingPLMN																ProtocolIE-ID ::= 116
id-E-RABs-ToBeAdded-List													ProtocolIE-ID ::= 117
id-E-RABs-ToBeAdded-Item													ProtocolIE-ID ::= 118
id-MeNBtoSeNBContainer														ProtocolIE-ID ::= 119
id-E-RABs-Admitted-ToBeAdded-List											ProtocolIE-ID ::= 120
id-E-RABs-Admitted-ToBeAdded-Item											ProtocolIE-ID ::= 121
id-SeNBtoMeNBContainer														ProtocolIE-ID ::= 122
id-ResponseInformationSeNBReconfComp										ProtocolIE-ID ::= 123
id-UE-ContextInformationSeNBModReq											ProtocolIE-ID ::= 124
id-E-RABs-ToBeAdded-ModReqItem												ProtocolIE-ID ::= 125
id-E-RABs-ToBeModified-ModReqItem											ProtocolIE-ID ::= 126
id-E-RABs-ToBeReleased-ModReqItem											ProtocolIE-ID ::= 127
id-E-RABs-Admitted-ToBeAdded-ModAckList										ProtocolIE-ID ::= 128
id-E-RABs-Admitted-ToBeModified-ModAckList									ProtocolIE-ID ::= 129
id-E-RABs-Admitted-ToBeReleased-ModAckList									ProtocolIE-ID ::= 130
id-E-RABs-Admitted-ToBeAdded-ModAckItem										ProtocolIE-ID ::= 131
id-E-RABs-Admitted-ToBeModified-ModAckItem									ProtocolIE-ID ::= 132
id-E-RABs-Admitted-ToBeReleased-ModAckItem									ProtocolIE-ID ::= 133
id-E-RABs-ToBeReleased-ModReqd												ProtocolIE-ID ::= 134
id-E-RABs-ToBeReleased-ModReqdItem											ProtocolIE-ID ::= 135
id-SCGChangeIndication														ProtocolIE-ID ::= 136
id-E-RABs-ToBeReleased-List-RelReq											ProtocolIE-ID ::= 137
id-E-RABs-ToBeReleased-RelReqItem											ProtocolIE-ID ::= 138
id-E-RABs-ToBeReleased-List-RelConf											ProtocolIE-ID ::= 139
id-E-RABs-ToBeReleased-RelConfItem											ProtocolIE-ID ::= 140
id-E-RABs-SubjectToCounterCheck-List										ProtocolIE-ID ::= 141
id-E-RABs-SubjectToCounterCheckItem											ProtocolIE-ID ::= 142
id-CoverageModificationList													ProtocolIE-ID ::= 143
id-ReportingPeriodicityCSIR													ProtocolIE-ID ::= 145
id-CSIReportList															ProtocolIE-ID ::= 146
id-UEID																		ProtocolIE-ID ::= 147
id-enhancedRNTP																ProtocolIE-ID ::= 148
id-ProSeUEtoNetworkRelaying													ProtocolIE-ID ::= 149
id-ReceiveStatusOfULPDCPSDUsPDCP-SNlength18									ProtocolIE-ID ::= 150
id-ULCOUNTValuePDCP-SNlength18												ProtocolIE-ID ::= 151
id-DLCOUNTValuePDCP-SNlength18												ProtocolIE-ID ::= 152
id-UE-ContextReferenceAtSeNB												ProtocolIE-ID ::= 153
id-UE-ContextKeptIndicator													ProtocolIE-ID ::= 154
id-New-eNB-UE-X2AP-ID-Extension												ProtocolIE-ID ::= 155
id-Old-eNB-UE-X2AP-ID-Extension												ProtocolIE-ID ::= 156
id-MeNB-UE-X2AP-ID-Extension												ProtocolIE-ID ::= 157
id-SeNB-UE-X2AP-ID-Extension												ProtocolIE-ID ::= 158
id-LHN-ID																	ProtocolIE-ID ::= 159
id-FreqBandIndicatorPriority												ProtocolIE-ID ::= 160
id-M6Configuration															ProtocolIE-ID ::= 161
id-M7Configuration															ProtocolIE-ID ::= 162
id-Tunnel-Information-for-BBF												ProtocolIE-ID ::= 163
id-SIPTO-BearerDeactivationIndication										ProtocolIE-ID ::= 164
id-GW-TransportLayerAddress													ProtocolIE-ID ::= 165
id-Correlation-ID															ProtocolIE-ID ::= 166
id-SIPTO-Correlation-ID														ProtocolIE-ID ::= 167
id-SIPTO-L-GW-TransportLayerAddress											ProtocolIE-ID ::= 168
id-X2RemovalThreshold														ProtocolIE-ID ::= 169
id-CellReportingIndicator													ProtocolIE-ID ::= 170
id-BearerType																ProtocolIE-ID ::= 171
id-resumeID																	ProtocolIE-ID ::= 172
id-UE-ContextInformationRetrieve											ProtocolIE-ID ::= 173
id-E-RABs-ToBeSetupRetrieve-Item											ProtocolIE-ID ::= 174
id-NewEUTRANCellIdentifier													ProtocolIE-ID ::= 175
id-V2XServicesAuthorized													ProtocolIE-ID ::= 176
id-OffsetOfNbiotChannelNumberToDL-EARFCN									ProtocolIE-ID ::= 177
id-OffsetOfNbiotChannelNumberToUL-EARFCN									ProtocolIE-ID ::= 178
id-AdditionalSpecialSubframeExtension-Info									ProtocolIE-ID ::= 179
id-BandwidthReducedSI														ProtocolIE-ID ::= 180
id-MakeBeforeBreakIndicator													ProtocolIE-ID ::= 181
id-UE-ContextReferenceAtWT													ProtocolIE-ID ::= 182
id-WT-UE-ContextKeptIndicator												ProtocolIE-ID ::= 183
id-UESidelinkAggregateMaximumBitRate										ProtocolIE-ID ::= 184
id-uL-GTPtunnelEndpoint														ProtocolIE-ID ::= 185
id-DL-scheduling-PDCCH-CCE-usage											ProtocolIE-ID ::= 193
id-UL-scheduling-PDCCH-CCE-usage											ProtocolIE-ID ::= 194
id-UEAppLayerMeasConfig														ProtocolIE-ID ::= 195
id-extended-e-RAB-MaximumBitrateDL											ProtocolIE-ID ::= 196
id-extended-e-RAB-MaximumBitrateUL											ProtocolIE-ID ::= 197
id-extended-e-RAB-GuaranteedBitrateDL										ProtocolIE-ID ::= 198
id-extended-e-RAB-GuaranteedBitrateUL										ProtocolIE-ID ::= 199
id-extended-uEaggregateMaximumBitRateDownlink								ProtocolIE-ID ::= 200
id-extended-uEaggregateMaximumBitRateUplink									ProtocolIE-ID ::= 201
id-NRrestriction																ProtocolIE-ID ::= 202
id-SgNBSecurityKey															ProtocolIE-ID ::= 203
id-SgNBUEAggregateMaximumBitRate												ProtocolIE-ID ::= 204
id-E-RABs-ToBeAdded-SgNBAddReqList											ProtocolIE-ID ::= 205
id-MeNBtoSgNBContainer														ProtocolIE-ID ::= 206
id-SgNB-UE-X2AP-ID															ProtocolIE-ID ::= 207
id-RequestedMCGSplitSRBs														ProtocolIE-ID ::= 208
id-E-RABs-ToBeAdded-SgNBAddReq-Item											ProtocolIE-ID ::= 209
id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAckList								ProtocolIE-ID ::= 210
id-SgNBtoMeNBContainer														ProtocolIE-ID ::= 211
id-AdmittedMCGSplitSRBs														ProtocolIE-ID ::= 212
id-E-RABs-Admitted-ToBeAdded-SgNBAddReqAck-Item								ProtocolIE-ID ::= 213
id-ResponseInformationSgNBReconfComp											ProtocolIE-ID ::= 214
id-UE-ContextInformation-SgNBModReq											ProtocolIE-ID ::= 215
id-E-RABs-ToBeAdded-SgNBModReq-Item											ProtocolIE-ID ::= 216
id-E-RABs-ToBeModified-SgNBModReq-Item										ProtocolIE-ID ::= 217
id-E-RABs-ToBeReleased-SgNBModReq-Item										ProtocolIE-ID ::= 218
id-E-RABs-Admitted-ToBeAdded-SgNBModAckList									ProtocolIE-ID ::= 219
id-E-RABs-Admitted-ToBeModified-SgNBModAckList								ProtocolIE-ID ::= 220
id-E-RABs-Admitted-ToBeReleased-SgNBModAckList								ProtocolIE-ID ::= 221
id-E-RABs-Admitted-ToBeAdded-SgNBModAck-Item									ProtocolIE-ID ::= 222
id-E-RABs-Admitted-ToBeModified-SgNBModAck-Item								ProtocolIE-ID ::= 223
id-E-RABs-Admitted-ToBeReleased-SgNBModAck-Item								ProtocolIE-ID ::= 224
id-E-RABs-ToBeReleased-SgNBModReqdList										ProtocolIE-ID ::= 225
id-E-RABs-ToBeModified-SgNBModReqdList										ProtocolIE-ID ::= 226
id-E-RABs-ToBeReleased-SgNBModReqd-Item										ProtocolIE-ID ::= 227
id-E-RABs-ToBeModified-SgNBModReqd-Item										ProtocolIE-ID ::= 228
id-E-RABs-ToBeReleased-SgNBChaConfList										ProtocolIE-ID ::= 229
id-E-RABs-ToBeReleased-SgNBChaConf-Item										ProtocolIE-ID ::= 230
id-E-RABs-ToBeReleased-SgNBRelReqList										ProtocolIE-ID ::= 231
id-E-RABs-ToBeReleased-SgNBRelReq-Item										ProtocolIE-ID ::= 232
id-E-RABs-ToBeReleased-SgNBRelConfList										ProtocolIE-ID ::= 233
id-E-RABs-ToBeReleased-SgNBRelConf-Item										ProtocolIE-ID ::= 234
id-E-RABs-SubjectToSgNBCounterCheck-List										ProtocolIE-ID ::= 235
id-E-RABs-SubjectToSgNBCounterCheck-Item										ProtocolIE-ID ::= 236
id-RRCContainer																ProtocolIE-ID ::= 237
id-SRBType																	ProtocolIE-ID ::= 238
id-Target-SgNB-ID															ProtocolIE-ID ::= 239
id-HandoverRestrictionList													ProtocolIE-ID ::= 240
id-SCGConfigurationQuery														ProtocolIE-ID ::= 241
id-MCGSplitSRB																ProtocolIE-ID ::= 242
id-UENRMeasurement															ProtocolIE-ID ::= 243
id-InitiatingNodeType-EndcX2Setup											ProtocolIE-ID ::= 244
id-InitiatingNodeType-EndcConfigUpdate										ProtocolIE-ID ::= 245
id-RespondingNodeType-EndcX2Setup											ProtocolIE-ID ::= 246
id-RespondingNodeType-EndcConfigUpdate										ProtocolIE-ID ::= 247
id-NRUESecurityCapabilities													ProtocolIE-ID ::= 248
id-PDCPChangeIndication														ProtocolIE-ID ::= 249
id-ServedEUTRAcellsENDCX2ManagementList										ProtocolIE-ID ::= 250
id-CellAssistanceInformation													ProtocolIE-ID ::= 251
id-Globalen-gNB-ID															ProtocolIE-ID ::= 252
id-ServedNRcellsENDCX2ManagementList											ProtocolIE-ID ::= 253
id-UE-ContextReferenceAtSgNB													ProtocolIE-ID ::= 254
id-SecondaryRATUsageReport													ProtocolIE-ID ::= 255
id-ActivationID																ProtocolIE-ID ::= 256
id-MeNBResourceCoordinationInformation										ProtocolIE-ID ::= 257
id-SgNBResourceCoordinationInformation										ProtocolIE-ID ::= 258
id-ServedEUTRAcellsToModifyListENDCConfUpd									ProtocolIE-ID ::= 259
id-ServedEUTRAcellsToDeleteListENDCConfUpd									ProtocolIE-ID ::= 260
id-ServedNRcellsToModifyListENDCConfUpd										ProtocolIE-ID ::= 261
id-ServedNRcellsToDeleteListENDCConfUpd										ProtocolIE-ID ::= 262
id-E-RABUsageReport-Item														ProtocolIE-ID ::= 263
id-Old-SgNB-UE-X2AP-ID														ProtocolIE-ID ::= 264
id-SecondaryRATUsageReportList												ProtocolIE-ID ::= 265
id-SecondaryRATUsageReport-Item												ProtocolIE-ID ::= 266
id-ServedNRCellsToActivate													ProtocolIE-ID ::= 267
id-ActivatedNRCellList														ProtocolIE-ID ::= 268
id-SelectedPLMN																ProtocolIE-ID ::= 269

END


-- **************************************************************
--
-- Container definitions
--
-- **************************************************************

X2AP-Containers {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-Containers (5) }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	maxPrivateIEs,
	maxProtocolExtensions,
	maxProtocolIEs,
	Criticality,
	Presence,
	PrivateIE-ID,
	ProtocolIE-ID
FROM X2AP-CommonDataTypes;

-- **************************************************************
--
-- Class Definition for Protocol IEs
--
-- **************************************************************

X2AP-PROTOCOL-IES ::= CLASS {
	&id				ProtocolIE-ID 			UNIQUE,
	&criticality	Criticality,
	&Value,
	&presence		Presence
}
WITH SYNTAX {
	ID				&id
	CRITICALITY		&criticality
	TYPE			&Value
	PRESENCE		&presence
}

-- **************************************************************
--
-- Class Definition for Protocol IEs
--
-- **************************************************************

X2AP-PROTOCOL-IES-PAIR ::= CLASS {
	&id						ProtocolIE-ID 		UNIQUE,
	&firstCriticality		Criticality,
	&FirstValue,
	&secondCriticality		Criticality,
	&SecondValue,
	&presence				Presence
}
WITH SYNTAX {
	ID						&id
	FIRST CRITICALITY 		&firstCriticality
	FIRST TYPE				&FirstValue
	SECOND CRITICALITY 		&secondCriticality
	SECOND TYPE				&SecondValue
	PRESENCE				&presence
}

-- **************************************************************
--
-- Class Definition for Protocol Extensions
--
-- **************************************************************

X2AP-PROTOCOL-EXTENSION ::= CLASS {
	&id					ProtocolIE-ID 		UNIQUE,
	&criticality		Criticality,
	&Extension,
	&presence			Presence
}
WITH SYNTAX {
	ID					&id
	CRITICALITY			&criticality
	EXTENSION			&Extension
	PRESENCE			&presence
}

-- **************************************************************
--
-- Class Definition for Private IEs
--
-- **************************************************************

X2AP-PRIVATE-IES ::= CLASS {
	&id					PrivateIE-ID,
	&criticality		Criticality,
	&Value,
	&presence			Presence
}
WITH SYNTAX {
	ID					&id
	CRITICALITY			&criticality
	TYPE				&Value
	PRESENCE			&presence
}

-- **************************************************************
--
-- Container for Protocol IEs
--
-- **************************************************************

ProtocolIE-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::=
	SEQUENCE (SIZE (0..maxProtocolIEs)) OF
	ProtocolIE-Field {{IEsSetParam}}

ProtocolIE-Single-Container {X2AP-PROTOCOL-IES : IEsSetParam} ::=
	ProtocolIE-Field {{IEsSetParam}}

ProtocolIE-Field {X2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
	id				X2AP-PROTOCOL-IES.&id					({IEsSetParam}),
	criticality		X2AP-PROTOCOL-IES.&criticality			({IEsSetParam}{@id}),
	value			X2AP-PROTOCOL-IES.&Value				({IEsSetParam}{@id})
}

-- **************************************************************
--
-- Container for Protocol IE Pairs
--
-- **************************************************************

ProtocolIE-ContainerPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
	SEQUENCE (SIZE (0..maxProtocolIEs)) OF
	ProtocolIE-FieldPair {{IEsSetParam}}

ProtocolIE-FieldPair {X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
	id					X2AP-PROTOCOL-IES-PAIR.&id					({IEsSetParam}),
	firstCriticality	X2AP-PROTOCOL-IES-PAIR.&firstCriticality	({IEsSetParam}{@id}),
	firstValue			X2AP-PROTOCOL-IES-PAIR.&FirstValue			({IEsSetParam}{@id}),
	secondCriticality	X2AP-PROTOCOL-IES-PAIR.&secondCriticality	({IEsSetParam}{@id}),
	secondValue			X2AP-PROTOCOL-IES-PAIR.&SecondValue			({IEsSetParam}{@id})
}

-- **************************************************************
--
-- Container Lists for Protocol IE Containers
--
-- **************************************************************

ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, X2AP-PROTOCOL-IES : IEsSetParam} ::=
	SEQUENCE (SIZE (lowerBound..upperBound)) OF
	ProtocolIE-Container {{IEsSetParam}}

ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, X2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
	SEQUENCE (SIZE (lowerBound..upperBound)) OF
	ProtocolIE-ContainerPair {{IEsSetParam}}

-- **************************************************************
--
-- Container for Protocol Extensions
--
-- **************************************************************

ProtocolExtensionContainer {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
	SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
	ProtocolExtensionField {{ExtensionSetParam}}

ProtocolExtensionField {X2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
	id					X2AP-PROTOCOL-EXTENSION.&id				({ExtensionSetParam}),
	criticality			X2AP-PROTOCOL-EXTENSION.&criticality	({ExtensionSetParam}{@id}),
	extensionValue		X2AP-PROTOCOL-EXTENSION.&Extension		({ExtensionSetParam}{@id})
}

-- **************************************************************
--
-- Container for Private IEs
--
-- **************************************************************

PrivateIE-Container {X2AP-PRIVATE-IES : IEsSetParam} ::=
	SEQUENCE (SIZE (1..maxPrivateIEs)) OF
	PrivateIE-Field {{IEsSetParam}}

PrivateIE-Field {X2AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE {
	id				X2AP-PRIVATE-IES.&id			({IEsSetParam}),
	criticality		X2AP-PRIVATE-IES.&criticality	({IEsSetParam}{@id}),
	value			X2AP-PRIVATE-IES.&Value			({IEsSetParam}{@id})
}

END
