diff --git a/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Common-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Common-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..267ec390051749a3d9435f36cec6988024b8b6de
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Common-Definitions.asn
@@ -0,0 +1,50 @@
+-- **************************************************************
+--
+-- 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
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Constant-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Constant-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..0b2aa2d567b202ff46c19c2157cd943b5656c765
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Constant-Definitions.asn
@@ -0,0 +1,155 @@
+-- **************************************************************
+--
+-- 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
+
+
+
+-- **************************************************************
+--
+-- Lists
+--
+-- **************************************************************
+
+maxEARFCN									INTEGER ::= 65535
+maxInterfaces								INTEGER ::= 16
+maxCellineNB								INTEGER ::= 256
+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
+
+
+-- **************************************************************
+--
+-- 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
+
+END
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Container-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Container-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..330fd686bd643c3a0da448998d90d5077b824290
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Container-Definitions.asn
@@ -0,0 +1,195 @@
+-- **************************************************************
+--
+-- 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
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Elementary-Procedure-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Elementary-Procedure-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..dee82ab4a97eebc476d06c124f5889764cdb78ee
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Elementary-Procedure-Definitions.asn
@@ -0,0 +1,293 @@
+dure 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
+
+
+
+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
+
+
+
+
+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											,
+	...
+}
+
+X2AP-ELEMENTARY-PROCEDURES-CLASS-2 X2AP-ELEMENTARY-PROCEDURE ::= {
+	snStatusTransfer						|
+	uEContextRelease						|
+	handoverCancel							|
+	errorIndication							|
+	resourceStatusReporting					|
+	loadIndication							|
+	privateMessage							|
+	rLFIndication							|	handoverReport,
+	...
+
+}
+
+
+-- **************************************************************
+--
+-- 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
+}
+
+
+END
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Information-Element-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Information-Element-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..ab1109be7eacb875286b737c88b33c654463c573
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-Information-Element-Definitions.asn
@@ -0,0 +1,1186 @@
+-- **************************************************************
+--
+-- 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,
+	maxnoofBearers,
+	maxCellineNB,
+	maxEARFCN,
+	maxInterfaces,
+	
+	maxnoofBPLMNs,
+	maxnoofCells,
+	maxnoofEPLMNs,
+	maxnoofEPLMNsPlusOne,
+	maxnoofForbLACs,
+	maxnoofForbTACs,
+	maxnoofNeighbours,
+	maxnoofPRBs,
+	maxNrOfErrors,
+	maxPools,
+	maxnoofMBSFN,
+	maxnoofTAforMDT,
+	maxnoofCellIDforMDT
+
+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 ::= {
+	...
+}
+
+DL-ABS-status::= INTEGER (0..100)
+
+AS-SecurityInformation ::= SEQUENCE {
+	key-eNodeB-star		Key-eNodeB-Star,
+	nextHopChainingCount			NextHopChainingCount,
+	iE-Extensions						ProtocolExtensionContainer { { AS-SecurityInformation-ExtIEs} } OPTIONAL,
+	...
+}
+
+AS-SecurityInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+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,
+	...
+}
+
+-- B
+
+
+BitRate ::= INTEGER (0..10000000000)
+BroadcastPLMNs-Item ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF PLMN-Identity
+
+
+-- C
+
+CapacityValue ::= INTEGER (0..100)
+
+CellCapacityClassValue ::= INTEGER (1..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
+
+}
+
+CauseTransport ::= ENUMERATED {
+	transport-resource-unavailable,
+	unspecified,
+	...
+}
+
+CellBasedMDT::= SEQUENCE {
+	cellIdListforMDT	CellIdListforMDT,
+	iE-Extensions		ProtocolExtensionContainer { {CellBasedMDT-ExtIEs} } OPTIONAL,
+	...
+}
+
+CellBasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+CellIdListforMDT ::= SEQUENCE (SIZE(1..maxnoofCellIDforMDT)) OF ECGI
+
+Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ... }
+
+
+CellType ::= SEQUENCE {
+	cell-Size						Cell-Size,
+	iE-Extensions					ProtocolExtensionContainer { { CellType-ExtIEs}}	OPTIONAL,
+	...
+}
+
+CellType-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+CompositeAvailableCapacityGroup	::= SEQUENCE {
+	dL-CompositeAvailableCapacity					CompositeAvailableCapacity,
+	uL-CompositeAvailableCapacity					CompositeAvailableCapacity,
+	iE-Extensions									ProtocolExtensionContainer { { CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL,
+	...
+}
+
+CompositeAvailableCapacityGroup-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+CompositeAvailableCapacity ::= SEQUENCE {
+	cellCapacityClassValue							CellCapacityClassValue				OPTIONAL,
+	capacityValue									CapacityValue,
+	iE-Extensions									ProtocolExtensionContainer { { CompositeAvailableCapacity-ExtIEs} } OPTIONAL,
+	...
+}
+
+CompositeAvailableCapacity-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+COUNTvalue ::= SEQUENCE {
+	pDCP-SN					PDCP-SN,
+	hFN						HFN,
+	iE-Extensions			ProtocolExtensionContainer { { COUNTvalue-ExtIEs} } OPTIONAL,
+	...
+}
+
+COUNTvalue-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+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))
+
+CyclicPrefixDL ::= ENUMERATED { 
+	normal,
+	extended,
+	...
+}
+
+CyclicPrefixUL ::= ENUMERATED { 
+	normal,
+	extended,
+	...
+}
+
+
+-- D
+
+DeactivationIndication::= ENUMERATED { 
+	deactivated,
+	...
+}
+
+DL-Forwarding ::= ENUMERATED {
+	dL-forwardingProposed,
+	...
+}
+
+DL-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-Total-PRB-usage::= INTEGER (0..100)
+
+-- E
+
+EARFCN ::= INTEGER (0..maxEARFCN)
+
+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 ::= {
+	...
+}
+
+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 ::= {
+	...
+}
+
+EUTRA-Mode-Info ::= CHOICE {
+	fDD		FDD-Info,
+	tDD		TDD-Info,
+	...
+}
+
+ECGI ::= SEQUENCE {
+	pLMN-Identity				PLMN-Identity,
+	eUTRANcellIdentifier		EUTRANCellIdentifier,
+	iE-Extensions				ProtocolExtensionContainer { {ECGI-ExtIEs} } OPTIONAL,
+	...
+}
+
+ECGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+ENB-ID ::= CHOICE {
+	macro-eNB-ID	BIT STRING (SIZE (20)),
+	home-eNB-ID		BIT STRING (SIZE (28)),
+	...
+}
+
+EncryptionAlgorithms ::= BIT STRING (SIZE (16, ...))
+
+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 ::= {
+	...
+}
+
+EUTRANCellIdentifier ::= BIT STRING (SIZE (28))
+
+EUTRANTraceID		::= OCTET STRING (SIZE (8))
+
+
+EventType ::= ENUMERATED{
+	change-of-serving-cell,
+	...
+}
+
+
+-- F
+
+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))
+
+-- 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 ::= {
+	...
+}
+
+GlobalENB-ID ::= SEQUENCE {
+	pLMN-Identity			PLMN-Identity,
+	eNB-ID					ENB-ID,
+	iE-Extensions			ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL,
+	...
+}
+
+GlobalENB-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 ::= {
+	...
+}
+
+
+
+-- H
+
+HandoverReportType  ::= ENUMERATED {
+	hoTooEarly,
+	hoToWrongCell,
+	...
+}
+
+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 ::= {
+	...
+}
+
+HFN ::= INTEGER (0..1048575)
+
+HWLoadIndicator ::= SEQUENCE {
+	dLHWLoadIndicator			LoadIndicator,
+	uLHWLoadIndicator			LoadIndicator,
+	iE-Extensions				ProtocolExtensionContainer { { HWLoadIndicator-ExtIEs} } OPTIONAL,
+	...
+}
+
+HWLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+-- I
+
+InvokeIndication ::= ENUMERATED{
+	abs-information,
+	...
+}
+
+IntegrityProtectionAlgorithms ::= BIT STRING (SIZE (16, ...))
+
+InterfacesToTrace ::= BIT STRING (SIZE (8)) 
+-- 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 ::= {
+	...
+}
+
+LastVisitedUTRANCellInformation	::= OCTET STRING
+
+LastVisitedGERANCellInformation ::= CHOICE {
+	undefined						NULL,
+	...
+}
+
+
+LoadIndicator ::= ENUMERATED {
+	lowLoad,
+	mediumLoad, 
+	highLoad,
+	overLoad,
+	...
+}
+
+
+
+LocationReportingInformation ::= SEQUENCE {
+	eventType		EventType,
+	reportArea		ReportArea,
+	iE-Extensions		ProtocolExtensionContainer { {LocationReportingInformation-ExtIEs} } OPTIONAL,
+	...
+}
+
+LocationReportingInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
+	...
+}
+
+-- M
+
+MDT-Activation		::= ENUMERATED { 
+	immediate-MDT-only,
+	immediate-MDT-and-Trace,
+	...
+}
+
+MDT-Configuration ::= SEQUENCE {
+	mdt-Activation				MDT-Activation,
+	areaScopeOfMDT				AreaScopeOfMDT,
+	measurementsToActivate		MeasurementsToActivate,
+	reportingTriggerMDT			ReportingTriggerMDT,
+	thresholdeventA2			ThresholdEventA2			OPTIONAL,
+-- Included in case of event-triggered reporting for measurement M1
+	periodicReportingMDT		PeriodicReportingMDT		OPTIONAL,
+-- Included in case of periodic reporting
+	iE-Extensions				ProtocolExtensionContainer { { MDT-Configuration-ExtIEs} } OPTIONAL,
+	...
+}
+
+MDT-Configuration-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+MeasurementsToActivate::= BIT STRING (SIZE (8))
+
+MeasurementThresholdA2 ::= CHOICE { 
+	threshold-RSRP				Threshold-RSRP,
+	threshold-RSRQ				Threshold-RSRQ,
+	...
+}
+
+MME-Group-ID	::= OCTET STRING (SIZE (2))
+
+MME-Code		::= OCTET STRING (SIZE (1))
+
+Measurement-ID	::= INTEGER (1..4095, ...) 
+
+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 ::= {
+	...
+}
+
+ManagementBasedMDTallowed ::= ENUMERATED {allowed, ...}
+
+MobilityParametersModificationRange ::= SEQUENCE {
+	handoverTriggerChangeLowerLimit		INTEGER (-20..20),
+	handoverTriggerChangeUpperLimit		INTEGER (-20..20),
+	...
+}
+
+MobilityParametersInformation ::= SEQUENCE {
+	handoverTriggerChange			INTEGER (-20..20),
+	...
+}
+
+
+-- 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 ::= {
+	...
+}
+
+NextHopChainingCount ::= INTEGER (0..7)
+
+Number-of-Antennaports ::= ENUMERATED {
+		an1,
+	 	an2,
+		an4,
+		...
+}
+
+-- O
+
+Oneframe ::= BIT STRING (SIZE (6))
+
+-- P
+
+PDCP-SN ::= INTEGER (0..4095)  
+
+PCI ::= INTEGER (0..503, ...)
+
+PeriodicReportingMDT ::= SEQUENCE { 
+	reportInterval				ReportIntervalMDT,
+	reportAmount				ReportAmountMDT,
+	iE-Extensions				ProtocolExtensionContainer { { PeriodicReportingMDT-ExtIEs} } OPTIONAL,
+	...
+}
+
+PeriodicReportingMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+PLMN-Identity ::= OCTET STRING (SIZE(3))
+
+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,
+	...
+}
+
+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)
+
+-- 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 ::= {
+	...
+}
+
+ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096))
+
+Registration-Request	::= ENUMERATED {
+	start,
+	stop,
+	...
+}
+ 
+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 ::= {
+	...
+}
+
+ReportAmountMDT ::= ENUMERATED{r1, r2, r4, r8, r16, r32, r64, rinfinity}
+
+ReportArea ::= ENUMERATED{
+	ecgi,
+	...
+}
+
+ReportIntervalMDT ::= ENUMERATED {ms120, ms240, ms480, ms640, ms1024, ms2048, ms5120, ms10240, min1, min6, min12, min30, min60}
+
+ReportCharacteristics	::= BIT STRING (SIZE (32))
+
+ReportingTriggerMDT::= ENUMERATED{
+	periodic,
+	a2eventtriggered,
+	...
+}
+
+RNTP-Threshold ::= ENUMERATED {
+	minusInfinity,
+	minusEleven,
+	minusTen,
+	minusNine,
+	minusEight,
+	minusSeven,
+	minusSix,
+	minusFive,
+	minusFour,
+	minusThree,
+	minusTwo,
+	minusOne,
+	zero,
+	one,
+	two,
+	three,
+	...
+}
+
+RRC-Context ::= OCTET STRING
+
+RRCConnSetupIndicator::= ENUMERATED {
+	rrcConnSetup,
+	...
+}
+
+-- S
+
+S1TNLLoadIndicator ::= SEQUENCE {
+	dLS1TNLLoadIndicator			LoadIndicator,
+	uLS1TNLLoadIndicator			LoadIndicator,
+	iE-Extensions					ProtocolExtensionContainer { { S1TNLLoadIndicator-ExtIEs} } OPTIONAL,
+	...
+}
+
+S1TNLLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+
+
+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 },
+	...
+}
+
+ShortMAC-I ::= BIT STRING (SIZE(16))
+
+SRVCCOperationPossible ::= ENUMERATED {
+	possible,
+	...
+}
+
+SubframeAssignment ::= ENUMERATED { 
+	sa0,
+	sa1, 
+	sa2,
+	sa3,
+	sa4,
+	sa5,
+	sa6,
+	...
+}
+
+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,
+	...
+}
+
+SubscriberProfileIDforRFP ::= INTEGER (1..256) 
+
+SubframeAllocation ::= CHOICE {
+	oneframe						Oneframe,
+	fourframes						Fourframes,
+	...
+}
+
+-- T
+
+TAC ::= OCTET STRING (SIZE (2)) 
+
+TABasedMDT::= SEQUENCE {
+	tAListforMDT		TAListforMDT,
+	iE-Extensions		ProtocolExtensionContainer { {TABasedMDT-ExtIEs} } OPTIONAL,
+	...
+}
+
+TABasedMDT-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+TAListforMDT ::= SEQUENCE (SIZE(1..maxnoofTAforMDT)) OF TAC
+
+ThresholdEventA2 ::= SEQUENCE { 
+	measurementThreshold		MeasurementThresholdA2,
+	iE-Extensions				ProtocolExtensionContainer { { ThresholdEventA2-ExtIEs} } OPTIONAL,
+	...
+}
+
+ThresholdEventA2-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+TargeteNBtoSource-eNBTransparentContainer	::= OCTET STRING
+
+Threshold-RSRP ::=  INTEGER(0..97)
+
+Threshold-RSRQ ::=  INTEGER(0..34)
+
+TimeToWait ::= ENUMERATED {
+	v1s, 
+	v2s, 
+	v5s, 
+	v10s, 
+	v20s, 
+	v60s, 
+	...
+}
+
+Time-UE-StayedInCell ::= INTEGER (0..4095)
+
+
+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},
+	...
+}
+
+TraceCollectionEntityIPAddress ::= BIT STRING (SIZE(1..160, ...))
+
+TraceDepth 		::= ENUMERATED { 
+	minimum,
+	medium,
+	maximum,
+	minimumWithoutVendorSpecificExtension,
+	mediumWithoutVendorSpecificExtension,
+	maximumWithoutVendorSpecificExtension,
+	...
+}
+
+
+
+
+Transmission-Bandwidth ::= ENUMERATED {
+		bw6,
+	 	bw15,
+		bw25,
+	 	bw50,
+		bw75,
+		bw100,
+		...
+}
+
+TransportLayerAddress			::= BIT STRING (SIZE(1..160, ...))
+
+TypeOfError ::= ENUMERATED {
+	not-understood,
+	missing,
+	...
+}
+
+
+-- U
+
+UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCells)) OF LastVisitedCell-Item
+
+
+UE-S1AP-ID					::= INTEGER (0.. 4294967295)
+
+UE-X2AP-ID					::= INTEGER (0..4095)
+
+UEAggregateMaximumBitRate ::= SEQUENCE {
+	uEaggregateMaximumBitRateDownlink	BitRate,
+	uEaggregateMaximumBitRateUplink		BitRate,
+	iE-Extensions						ProtocolExtensionContainer { {UEAggregate-MaximumBitrate-ExtIEs} } OPTIONAL,
+	...
+}
+
+UEAggregate-MaximumBitrate-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+UESecurityCapabilities ::= SEQUENCE {
+	encryptionAlgorithms				EncryptionAlgorithms,
+	integrityProtectionAlgorithms		IntegrityProtectionAlgorithms,
+	iE-Extensions						ProtocolExtensionContainer { { UESecurityCapabilities-ExtIEs} }		OPTIONAL,
+...
+}
+
+UESecurityCapabilities-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+UL-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-Total-PRB-usage::= INTEGER (0..100)
+
+UL-InterferenceOverloadIndication ::= SEQUENCE (SIZE(1..maxnoofPRBs)) OF UL-InterferenceOverloadIndication-Item
+
+UL-InterferenceOverloadIndication-Item ::= ENUMERATED {
+	high-interference,
+	medium-interference,
+	low-interference,
+	...
+}
+
+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, ...))
+
+UE-RLF-Report-Container::= OCTET STRING
+-- This IE is a transparent container and shall be encoded as the rlfReport field contained in the UEInformationResponse message as defined in TS 36.331 [9]
+
+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
+-- W
+-- X
+-- Y
+-- Z
+
+END
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-PDU-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-PDU-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..0f73510e16512a9f25873708a238d51b953b8a30
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R10.7/X2AP-PDU-Definitions.asn
@@ -0,0 +1,985 @@
+-- **************************************************************
+--
+-- 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,
+	Cause,
+	CompositeAvailableCapacityGroup,
+	COUNTvalue,
+	CriticalityDiagnostics,
+	CRNTI,
+	CSGMembershipStatus,
+	CSG-Id,
+	DeactivationIndication,
+	DL-Forwarding,
+	ECGI,
+	E-RAB-ID,
+	E-RAB-Level-QoS-Parameters,
+	E-RAB-List,
+	EUTRANTraceID,
+	GlobalENB-ID,
+	GTPtunnelEndpoint,
+	GUGroupIDList,
+	GUMMEI,
+	HandoverReportType,
+	HandoverRestrictionList,
+	InvokeIndication,
+	LocationReportingInformation,
+	MDT-Configuration,
+	ManagementBasedMDTallowed,
+	Neighbour-Information,
+	PCI,
+	PDCP-SN,
+	PLMN-Identity,
+	ReceiveStatusofULPDCPSDUs,
+	Registration-Request,
+	RelativeNarrowbandTxPower,
+	RadioResourceStatus,
+	RRCConnSetupIndicator,
+	UE-RLF-Report-Container,
+	RRC-Context,
+	ServedCell-Information,
+	ServedCells,
+	ShortMAC-I,
+	SRVCCOperationPossible,
+	SubscriberProfileIDforRFP,
+	TargeteNBtoSource-eNBTransparentContainer,
+	TimeToWait,
+	TraceActivation,
+	TraceDepth,
+	
+	TransportLayerAddress,
+	UEAggregateMaximumBitRate,
+	UE-HistoryInformation,
+	UE-S1AP-ID,
+	UESecurityCapabilities,
+	UE-X2AP-ID,
+	UL-HighInterferenceIndicationInfo,
+	UL-InterferenceOverloadIndication,
+	HWLoadIndicator,
+	S1TNLLoadIndicator,
+	Measurement-ID,
+	ReportCharacteristics,
+	MobilityParametersInformation,
+	MobilityParametersModificationRange
+
+	
+	
+	
+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-Cause,
+	id-CellInformation,
+	id-CellInformation-Item,
+	id-CellMeasurementResult,
+	id-CellMeasurementResult-Item,
+	id-CellToReport,
+	id-CellToReport-Item,
+	id-CompositeAvailableCapacityGroup,
+	id-CriticalityDiagnostics,
+	id-DeactivationIndication,
+	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-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,
+
+	maxCellineNB,
+	maxnoofBearers,
+	maxnoofPDCP-SN,
+	maxFailedMeasObjects,
+	maxnoofCellIDforMDT,
+	maxnoofTAforMDT
+	
+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},
+	...
+}
+
+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 },
+	...
+}
+
+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 ::= {
+	...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+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 },
+
+	...
+}
+
+-- **************************************************************
+--
+-- 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” -- ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+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 ::= {
+	...
+}
+
+
+
+
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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},
+...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+-- **************************************************************
+--
+-- 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},
+	...
+}
+
+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”--
+	{ 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},
+	...
+}
+
+
+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},
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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},
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+END
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Common-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Common-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..267ec390051749a3d9435f36cec6988024b8b6de
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Common-Definitions.asn
@@ -0,0 +1,50 @@
+-- **************************************************************
+--
+-- 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
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Constant-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Constant-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..393868314bb732be9ed838613ca49eb11db76787
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Constant-Definitions.asn
@@ -0,0 +1,118 @@
+-- **************************************************************
+--
+-- 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
+
+
+
+
+-- **************************************************************
+--
+-- Lists
+--
+-- **************************************************************
+
+maxEARFCN									INTEGER ::= 65535	
+maxInterfaces								INTEGER ::= 16		
+maxCellineNB								INTEGER ::= 256		
+maxnoofBearers								INTEGER ::= 256		
+maxNrOfErrors								INTEGER ::= 256		
+maxnoofPDCP-SN								INTEGER ::= 16		-- FFS Value to be checked
+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
+
+
+
+
+-- **************************************************************
+--
+-- 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
+
+
+
+END
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Container-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Container-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..330fd686bd643c3a0da448998d90d5077b824290
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Container-Definitions.asn
@@ -0,0 +1,195 @@
+-- **************************************************************
+--
+-- 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
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Elementary-Procedure-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Elementary-Procedure-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..36669acc6f36f641ce36d94ad86de58347d1f2ba
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Elementary-Procedure-Definitions.asn
@@ -0,0 +1,250 @@
+-- **************************************************************
+--
+-- 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
+
+
+	ENBConfigurationUpdate,
+	ENBConfigurationUpdateAcknowledge,
+	ENBConfigurationUpdateFailure,
+	ErrorIndication,
+	HandoverCancel,
+	HandoverPreparationFailure,	
+	HandoverRequest,
+	HandoverRequestAcknowledge,
+	LoadInformation,
+	PrivateMessage,
+	ResetRequest,
+	ResetResponse,
+	ResourceStatusFailure,
+	ResourceStatusRequest,
+	ResourceStatusResponse,
+	ResourceStatusUpdate,
+	SNStatusTransfer,
+	UEContextRelease,
+	X2SetupFailure,	X2SetupRequest,
+	X2SetupResponse
+	
+
+
+
+FROM X2AP-PDU-Contents
+
+	id-eNBConfigurationUpdate,
+	id-errorIndication,
+	id-handoverCancel,
+	id-handoverPreparation,
+	
+	id-loadIndication,
+	id-privateMessage,
+	id-reset,
+	
+	id-resourceStatusReporting,
+	id-resourceStatusReportingInitiation,
+	id-snStatusTransfer,
+	id-uEContextRelease,
+	id-x2Setup
+
+
+
+
+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									,
+	...
+}
+
+X2AP-ELEMENTARY-PROCEDURES-CLASS-2 X2AP-ELEMENTARY-PROCEDURE ::= {
+	snStatusTransfer						|
+	uEContextRelease						|
+	handoverCancel							|
+	errorIndication							|
+	resourceStatusReporting					|
+	loadIndication							|
+	privateMessage							,
+	...
+
+}
+
+
+-- **************************************************************
+--
+-- 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
+}
+
+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
+}
+
+privateMessage			X2AP-ELEMENTARY-PROCEDURE ::= {
+	INITIATING MESSAGE		PrivateMessage
+	PROCEDURE CODE			id-privateMessage
+	CRITICALITY				ignore
+}
+
+END
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Information-Element-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Information-Element-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..25381972b9f9bc931992716cc59e6d9845529a1a
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-Information-Element-Definitions.asn
@@ -0,0 +1,886 @@
+-- **************************************************************
+--
+-- 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,
+
+
+	maxnoofBearers,	maxCellineNB,
+	maxEARFCN,
+	maxInterfaces,
+	
+	maxnoofBPLMNs,
+	maxnoofCells,
+	maxnoofEPLMNs,
+	maxnoofEPLMNsPlusOne,
+	maxnoofForbLACs,
+	maxnoofForbTACs,
+	maxnoofNeighbours,
+	maxnoofPRBs,
+	maxNrOfErrors,
+	maxPools
+
+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
+
+AS-SecurityInformation ::= SEQUENCE {
+	key-eNodeB-star		Key-eNodeB-Star,
+	nextHopChainingCount			NextHopChainingCount,
+	iE-Extensions						ProtocolExtensionContainer { { AS-SecurityInformation-ExtIEs} } OPTIONAL,
+	...
+}
+
+AS-SecurityInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+AllocationAndRetentionPriority ::= SEQUENCE {
+	priorityLevel				PriorityLevel,
+	pre-emptionCapability		Pre-emptionCapability,
+	pre-emptionVulnerability	Pre-emptionVulnerability,
+	iE-Extensions				ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL,
+	...
+}
+
+AllocationAndRetentionPriority-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+-- B
+
+
+BitRate ::= INTEGER (0..10000000000)
+BroadcastPLMNs-Item ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF PLMN-Identity
+
+
+-- C
+
+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,
+	...
+
+}
+
+CauseTransport ::= ENUMERATED {
+	transport-resource-unavailable,
+	unspecified,
+	...
+}
+
+Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ... }
+
+
+
+CellType ::= SEQUENCE {
+	cell-Size						Cell-Size,
+	iE-Extensions					ProtocolExtensionContainer { { CellType-ExtIEs}}	OPTIONAL,
+	...
+}
+
+CellType-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+COUNTvalue ::= SEQUENCE {
+	pDCP-SN					PDCP-SN,
+	hFN						HFN,
+	iE-Extensions			ProtocolExtensionContainer { { COUNTvalue-ExtIEs} } OPTIONAL,
+	...
+}
+
+COUNTvalue-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+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 ::= {
+	...
+}
+
+CyclicPrefixDL ::= ENUMERATED { 
+	normal,
+	extended,
+	...
+}
+
+CyclicPrefixUL ::= ENUMERATED { 
+	normal,
+	extended,
+	...
+}
+
+
+-- D
+
+
+DL-Forwarding ::= ENUMERATED {
+	dL-forwardingProposed,
+	...
+}
+
+-- E
+
+EARFCN ::= INTEGER (0..maxEARFCN)
+
+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 ::= {
+	...
+}
+
+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 ::= {
+	...
+}
+
+EUTRA-Mode-Info ::= CHOICE {
+	fDD		FDD-Info,
+	tDD		TDD-Info,
+	...
+}
+
+ECGI ::= SEQUENCE {
+	pLMN-Identity				PLMN-Identity,
+	eUTRANcellIdentifier		EUTRANCellIdentifier,
+	iE-Extensions				ProtocolExtensionContainer { {ECGI-ExtIEs} } OPTIONAL,
+	...
+}
+
+ECGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+ENB-ID ::= CHOICE {
+	macro-eNB-ID	BIT STRING (SIZE (20)),
+	home-eNB-ID		BIT STRING (SIZE (28)),
+	...
+}
+
+EncryptionAlgorithms ::= BIT STRING (SIZE (16, ...))
+
+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 ::= {
+	...
+}
+
+EUTRANCellIdentifier ::= BIT STRING (SIZE (28))
+
+EUTRANTraceID		::= OCTET STRING (SIZE (8))
+
+
+EventType ::= ENUMERATED{
+	change-of-serving-cell,
+	...
+}
+
+
+-- F
+
+ForbiddenInterRATs ::= ENUMERATED {
+	all,
+	geran,
+	utran,
+	cdma2000,
+	...
+}
+
+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
+
+
+
+-- 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 ::= {
+	...
+}
+
+GlobalENB-ID ::= SEQUENCE {
+	pLMN-Identity			PLMN-Identity,
+	eNB-ID					ENB-ID,
+	iE-Extensions			ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL,
+	...
+}
+
+GlobalENB-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 ::= {
+	...
+}
+
+
+
+-- H
+
+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 ::= {
+	...
+}
+
+HFN ::= INTEGER (0..1048575)
+
+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)) 
+-- 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 ::= {
+	...
+}
+
+LastVisitedUTRANCellInformation	::= OCTET STRING
+
+LastVisitedGERANCellInformation ::= CHOICE {
+	undefined						NULL,
+	...
+}
+
+
+LoadIndicator ::= ENUMERATED {
+	lowLoad,
+	mediumLoad, 
+	highLoad,
+	overLoad,
+	...
+}
+
+
+
+LocationReportingInformation ::= SEQUENCE {
+	eventType		EventType,
+	reportArea		ReportArea,
+	iE-Extensions		ProtocolExtensionContainer { {LocationReportingInformation-ExtIEs} } OPTIONAL,
+	...
+}
+
+LocationReportingInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
+	...
+}
+
+-- M
+
+
+MME-Group-ID	::= OCTET STRING (SIZE (2))
+
+MME-Code		::= OCTET STRING (SIZE (1))
+
+Measurement-ID	::= INTEGER (1..4095, ...)
+
+-- 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 ::= {
+	...
+}
+
+NextHopChainingCount ::= INTEGER (0..7)
+
+Number-of-Antennaports ::= ENUMERATED {
+		an1,
+	 	an2,
+		an4,
+		...
+}
+
+-- O
+-- P
+
+PDCP-SN ::= INTEGER (0..4095)  
+
+PCI ::= INTEGER (0..503, ...)
+
+
+PLMN-Identity ::= OCTET STRING (SIZE(3))
+
+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)
+
+-- Q
+
+QCI ::= INTEGER (0..255)
+
+-- R
+
+
+ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096))
+
+Registration-Request	::= ENUMERATED {
+	start,
+	stop,
+	...
+}
+ 
+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 ::= {
+	...
+}
+
+ReportArea ::= ENUMERATED{
+	ecgi,
+	...
+}
+
+ReportCharacteristics	::= BIT STRING (SIZE (32))
+
+RNTP-Threshold ::= ENUMERATED {
+	minusInfinity,
+	minusEleven,
+	minusTen,
+	minusNine,
+	minusEight,
+	minusSeven,
+	minusSix,
+	minusFive,
+	minusFour,
+	minusThree,
+	minusTwo,
+	minusOne,
+	zero,
+	one,
+	two,
+	three,
+	...
+}
+
+RRC-Context ::= OCTET STRING
+
+
+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 ::= {
+	...
+}
+
+DL-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-Total-PRB-usage::= INTEGER (0..100)
+
+UL-Total-PRB-usage::= INTEGER (0..100)
+
+
+-- S
+
+S1TNLLoadIndicator ::= SEQUENCE {
+	dLS1TNLLoadIndicator			LoadIndicator,
+	uLS1TNLLoadIndicator			LoadIndicator,
+	iE-Extensions					ProtocolExtensionContainer { { S1TNLLoadIndicator-ExtIEs} } OPTIONAL,
+	...
+}
+
+S1TNLLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+
+
+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 },
+	...
+}
+
+SRVCCOperationPossible ::= ENUMERATED {
+	possible,
+	...
+}
+
+SubframeAssignment ::= ENUMERATED { 
+	sa0,
+	sa1, 
+	sa2,
+	sa3,
+	sa4,
+	sa5,
+	sa6,
+	...
+}
+
+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,
+	...
+}
+
+SubscriberProfileIDforRFP ::= INTEGER (1..256) 
+
+
+-- T
+
+TAC ::= OCTET STRING (SIZE (2)) 
+
+TargeteNBtoSource-eNBTransparentContainer	::= OCTET STRING
+
+
+TimeToWait ::= ENUMERATED {
+	v1s, 
+	v2s, 
+	v5s, 
+	v10s, 
+	v20s, 
+	v60s, 
+	...
+}
+
+Time-UE-StayedInCell ::= INTEGER (0..4095)
+
+
+TraceActivation ::= SEQUENCE {
+	eUTRANTraceID					EUTRANTraceID,
+	interfacesToTrace				InterfacesToTrace,
+traceDepth						TraceDepth,
+traceCollectionEntityIPAddress	TraceCollectionEntityIPAddress,
+	iE-Extensions					ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL,
+	...
+}
+
+TraceActivation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+TraceCollectionEntityIPAddress ::= BIT STRING (SIZE(1..160, ...))
+
+TraceDepth 		::= ENUMERATED { 
+	minimum,
+	medium,
+	maximum,
+	minimumWithoutVendorSpecificExtension,
+	mediumWithoutVendorSpecificExtension,
+	maximumWithoutVendorSpecificExtension,
+	...
+}
+
+
+
+
+Transmission-Bandwidth ::= ENUMERATED {
+		bw6,
+	 	bw15,
+		bw25,
+	 	bw50,
+		bw75,
+		bw100,
+		...
+}
+
+TransportLayerAddress			::= BIT STRING (SIZE(1..160, ...))
+
+TypeOfError ::= ENUMERATED {
+	not-understood,
+	missing,
+	...
+}
+
+
+-- U
+
+UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCells)) OF LastVisitedCell-Item
+
+
+UE-S1AP-ID					::= INTEGER (0.. 4294967295)
+
+UE-X2AP-ID					::= INTEGER (0..4095) -- Value FFS
+
+UEAggregateMaximumBitRate ::= SEQUENCE {
+	uEaggregateMaximumBitRateDownlink	BitRate,
+	uEaggregateMaximumBitRateUplink		BitRate,
+	iE-Extensions						ProtocolExtensionContainer { {UEAggregate-MaximumBitrate-ExtIEs} } OPTIONAL,
+	...
+}
+
+UEAggregate-MaximumBitrate-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+UESecurityCapabilities ::= SEQUENCE {
+	encryptionAlgorithms				EncryptionAlgorithms,
+	integrityProtectionAlgorithms		IntegrityProtectionAlgorithms,
+	iE-Extensions						ProtocolExtensionContainer { { UESecurityCapabilities-ExtIEs} }		OPTIONAL,
+...
+}
+
+UESecurityCapabilities-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+UL-InterferenceOverloadIndication ::= SEQUENCE (SIZE(1..maxnoofPRBs)) OF UL-InterferenceOverloadIndication-Item
+
+UL-InterferenceOverloadIndication-Item ::= ENUMERATED {
+	high-interference,
+	medium-interference,
+	low-interference,
+	...
+}
+
+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, ...))
+
+
+-- V
+-- W
+-- X
+-- Y
+-- Z
+
+END
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-PDU-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-PDU-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..a9daebc5a56413d2a3eb40e0b953bc584930a80f
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R8.9/X2AP-PDU-Definitions.asn
@@ -0,0 +1,700 @@
+-- **************************************************************
+--
+-- 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
+	
+	AS-SecurityInformation,	
+	
+	Cause,
+	
+	COUNTvalue,
+	CriticalityDiagnostics,
+	DL-Forwarding,
+	ECGI,
+	E-RAB-ID,
+	E-RAB-Level-QoS-Parameters,
+	E-RAB-List,
+	EUTRANTraceID,
+	GlobalENB-ID,
+	GTPtunnelEndpoint,
+	GUGroupIDList,
+	GUMMEI,
+	HandoverRestrictionList,
+	LocationReportingInformation,
+	Neighbour-Information,
+	PDCP-SN,
+	PLMN-Identity,
+	ReceiveStatusofULPDCPSDUs,
+	Registration-Request,
+	RelativeNarrowbandTxPower,
+	RadioResourceStatus,
+	RRC-Context,
+	ServedCell-Information,
+	ServedCells,
+	SRVCCOperationPossible,
+	SubscriberProfileIDforRFP,
+	TargeteNBtoSource-eNBTransparentContainer,
+	TimeToWait,
+	TraceActivation,
+	TraceDepth,
+	
+	TransportLayerAddress,
+	UEAggregateMaximumBitRate,
+	UE-HistoryInformation,
+	UE-S1AP-ID,
+	UESecurityCapabilities,
+	UE-X2AP-ID,
+	UL-HighInterferenceIndicationInfo,
+	UL-InterferenceOverloadIndication,
+	HWLoadIndicator,
+	S1TNLLoadIndicator,
+	Measurement-ID,
+	ReportCharacteristics
+	
+	
+	
+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-Cause,
+	id-CellInformation,
+	id-CellInformation-Item,	
+	id-CellMeasurementResult,
+	id-CellMeasurementResult-Item,
+	id-CellToReport,
+	id-CellToReport-Item,
+	id-CriticalityDiagnostics,
+	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-New-eNB-UE-X2AP-ID,
+	id-Old-eNB-UE-X2AP-ID,
+	id-Registration-Request,
+	id-ReportingPeriodicity,
+	id-ServedCells,
+	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,
+	
+
+
+	maxCellineNB,	
+	maxnoofBearers,
+	maxnoofPDCP-SN
+	
+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 },
+	...
+}
+
+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 ::= {
+	...
+}
+
+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 ::= {
+	...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+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 },
+
+	...
+}
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+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 ::= {
+	...
+}
+
+
+
+
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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},
+...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 ::= {
+	...
+}
+
+-- **************************************************************
+--
+-- 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},
+	...
+}
+
+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 ::= {
+	...
+}
+
+
+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”--
+	{ 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} ,
+	...
+}
+
+
+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,
+...
+}
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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,
+	hWOverLoadIndicator				HWLoadIndicator		OPTIONAL,
+	s1TNLOverLoadIndicator			S1TNLLoadIndicator	OPTIONAL,
+	radioResourceStatus				RadioResourceStatus	OPTIONAL,
+	iE-Extensions					ProtocolExtensionContainer { {CellMeasurementResult-Item-ExtIEs} }	OPTIONAL,
+	...
+}
+
+CellMeasurementResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+-- **************************************************************
+--
+-- PRIVATE MESSAGE
+--
+-- **************************************************************
+
+PrivateMessage ::= SEQUENCE {
+	privateIEs		PrivateIE-Container  {{PrivateMessage-IEs}},
+	...
+}
+
+PrivateMessage-IEs X2AP-PRIVATE-IES ::= {
+	...
+}
+
+END
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Common-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Common-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..267ec390051749a3d9435f36cec6988024b8b6de
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Common-Definitions.asn
@@ -0,0 +1,50 @@
+-- **************************************************************
+--
+-- 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
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Constant-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Constant-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..2109e4a35f2b23ce45e0128d8cfeb5ad9bd40895
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Constant-Definitions.asn
@@ -0,0 +1,139 @@
+--
+-- 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
+
+
+
+-- **************************************************************
+--
+-- Lists
+--
+-- **************************************************************
+
+maxEARFCN									INTEGER ::= 65535	
+maxInterfaces								INTEGER ::= 16		
+maxCellineNB								INTEGER ::= 256		
+maxnoofBearers								INTEGER ::= 256		
+maxNrOfErrors								INTEGER ::= 256		
+maxnoofPDCP-SN								INTEGER ::= 16		-- FFS Value to be checked
+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
+
+
+
+
+-- **************************************************************
+--
+-- 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
+
+END
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Container-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Container-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..330fd686bd643c3a0da448998d90d5077b824290
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Container-Definitions.asn
@@ -0,0 +1,195 @@
+-- **************************************************************
+--
+-- 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
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Elementary-Procedure-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Elementary-Procedure-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..aca9269b0981524603e616456ecbac35ae7ad140
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Elementary-Procedure-Definitions.asn
@@ -0,0 +1,294 @@
+-- **************************************************************
+--
+-- 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	
+
+
+
+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
+
+
+
+
+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											,
+	...
+}
+
+X2AP-ELEMENTARY-PROCEDURES-CLASS-2 X2AP-ELEMENTARY-PROCEDURE ::= {
+	snStatusTransfer						|
+	uEContextRelease						|
+	handoverCancel							|
+	errorIndication							|
+	resourceStatusReporting					|
+	loadIndication							|
+	privateMessage							|
+	rLFIndication							|	handoverReport,
+	...
+
+}
+
+
+-- **************************************************************
+--
+-- 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
+}
+
+
+END
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Information-Element-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Information-Element-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..f6530bd7dd3bdd9d01bff00d7ca1eb6cf729c379
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-Information-Element-Definitions.asn
@@ -0,0 +1,1000 @@
+-- **************************************************************
+--
+-- 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,
+
+	maxnoofBearers,	
+	maxCellineNB,
+	maxEARFCN,
+	maxInterfaces,
+	
+	maxnoofBPLMNs,
+	maxnoofCells,
+	maxnoofEPLMNs,
+	maxnoofEPLMNsPlusOne,
+	maxnoofForbLACs,
+	maxnoofForbTACs,
+	maxnoofNeighbours,
+	maxnoofPRBs,
+	maxNrOfErrors,
+	maxPools,
+	maxnoofMBSFN
+
+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
+
+AS-SecurityInformation ::= SEQUENCE {
+	key-eNodeB-star		Key-eNodeB-Star,
+	nextHopChainingCount			NextHopChainingCount,
+	iE-Extensions						ProtocolExtensionContainer { { AS-SecurityInformation-ExtIEs} } OPTIONAL,
+	...
+}
+
+AS-SecurityInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+AllocationAndRetentionPriority ::= SEQUENCE {
+	priorityLevel				PriorityLevel,
+	pre-emptionCapability		Pre-emptionCapability,
+	pre-emptionVulnerability	Pre-emptionVulnerability,
+	iE-Extensions				ProtocolExtensionContainer { {AllocationAndRetentionPriority-ExtIEs} } OPTIONAL,
+	...
+}
+
+AllocationAndRetentionPriority-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+-- B
+
+
+BitRate ::= INTEGER (0..10000000000)
+BroadcastPLMNs-Item ::= SEQUENCE (SIZE(1..maxnoofBPLMNs)) OF PLMN-Identity
+
+
+-- C
+
+CapacityValue ::= INTEGER (0..100)
+
+CellCapacityClassValue ::= INTEGER (1..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
+
+}
+
+CauseTransport ::= ENUMERATED {
+	transport-resource-unavailable,
+	unspecified,
+	...
+}
+
+Cell-Size ::= ENUMERATED {verysmall, small, medium, large, ... }
+
+
+
+CellType ::= SEQUENCE {
+	cell-Size						Cell-Size,
+	iE-Extensions					ProtocolExtensionContainer { { CellType-ExtIEs}}	OPTIONAL,
+	...
+}
+
+CellType-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+CompositeAvailableCapacityGroup	::= SEQUENCE {
+	dL-CompositeAvailableCapacity					CompositeAvailableCapacity,
+	uL-CompositeAvailableCapacity					CompositeAvailableCapacity,
+	iE-Extensions									ProtocolExtensionContainer { { CompositeAvailableCapacityGroup-ExtIEs} } OPTIONAL,
+	...
+}
+
+CompositeAvailableCapacityGroup-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+CompositeAvailableCapacity ::= SEQUENCE {
+	cellCapacityClassValue							CellCapacityClassValue				OPTIONAL,
+	capacityValue									CapacityValue,
+	iE-Extensions									ProtocolExtensionContainer { { CompositeAvailableCapacity-ExtIEs} } OPTIONAL,
+	...
+}
+
+CompositeAvailableCapacity-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+COUNTvalue ::= SEQUENCE {
+	pDCP-SN					PDCP-SN,
+	hFN						HFN,
+	iE-Extensions			ProtocolExtensionContainer { { COUNTvalue-ExtIEs} } OPTIONAL,
+	...
+}
+
+COUNTvalue-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+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))
+
+CyclicPrefixDL ::= ENUMERATED { 
+	normal,
+	extended,
+	...
+}
+
+CyclicPrefixUL ::= ENUMERATED { 
+	normal,
+	extended,
+	...
+}
+
+
+-- D
+
+DeactivationIndication::= ENUMERATED { 
+	deactivated,
+	...
+}
+
+DL-Forwarding ::= ENUMERATED {
+	dL-forwardingProposed,
+	...
+}
+
+-- E
+
+EARFCN ::= INTEGER (0..maxEARFCN)
+
+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 ::= {
+	...
+}
+
+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 ::= {
+	...
+}
+
+EUTRA-Mode-Info ::= CHOICE {
+	fDD		FDD-Info,
+	tDD		TDD-Info,
+	...
+}
+
+ECGI ::= SEQUENCE {
+	pLMN-Identity				PLMN-Identity,
+	eUTRANcellIdentifier		EUTRANCellIdentifier,
+	iE-Extensions				ProtocolExtensionContainer { {ECGI-ExtIEs} } OPTIONAL,
+	...
+}
+
+ECGI-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+ENB-ID ::= CHOICE {
+	macro-eNB-ID	BIT STRING (SIZE (20)),
+	home-eNB-ID		BIT STRING (SIZE (28)),
+	...
+}
+
+EncryptionAlgorithms ::= BIT STRING (SIZE (16, ...))
+
+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 ::= {
+	...
+}
+
+EUTRANCellIdentifier ::= BIT STRING (SIZE (28))
+
+EUTRANTraceID		::= OCTET STRING (SIZE (8))
+
+
+EventType ::= ENUMERATED{
+	change-of-serving-cell,
+	...
+}
+
+
+-- F
+
+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))
+
+-- 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 ::= {
+	...
+}
+
+GlobalENB-ID ::= SEQUENCE {
+	pLMN-Identity			PLMN-Identity,
+	eNB-ID					ENB-ID,
+	iE-Extensions			ProtocolExtensionContainer { {GlobalENB-ID-ExtIEs} } OPTIONAL,
+	...
+}
+
+GlobalENB-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 ::= {
+	...
+}
+
+
+
+-- H
+
+HandoverReportType  ::= ENUMERATED {
+	hoTooEarly,
+	hoToWrongCell,
+	...
+}
+
+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 ::= {
+	...
+}
+
+HFN ::= INTEGER (0..1048575)
+
+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)) 
+-- 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 ::= {
+	...
+}
+
+LastVisitedUTRANCellInformation	::= OCTET STRING
+
+LastVisitedGERANCellInformation ::= CHOICE {
+	undefined						NULL,
+	...
+}
+
+
+LoadIndicator ::= ENUMERATED {
+	lowLoad,
+	mediumLoad, 
+	highLoad,
+	overLoad,
+	...
+}
+
+
+
+LocationReportingInformation ::= SEQUENCE {
+	eventType		EventType,
+	reportArea		ReportArea,
+	iE-Extensions		ProtocolExtensionContainer { {LocationReportingInformation-ExtIEs} } OPTIONAL,
+	...
+}
+
+LocationReportingInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::={
+	...
+}
+
+-- M
+
+
+MME-Group-ID	::= OCTET STRING (SIZE (2))
+
+MME-Code		::= OCTET STRING (SIZE (1))
+
+Measurement-ID	::= INTEGER (1..4095, ...) 
+
+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),
+	...
+}
+
+
+-- 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 ::= {
+	...
+}
+
+NextHopChainingCount ::= INTEGER (0..7)
+
+Number-of-Antennaports ::= ENUMERATED {
+		an1,
+	 	an2,
+		an4,
+		...
+}
+
+-- O
+
+Oneframe ::= BIT STRING (SIZE (6))
+
+-- P
+
+PDCP-SN ::= INTEGER (0..4095)  
+
+PCI ::= INTEGER (0..503, ...)
+
+
+PLMN-Identity ::= OCTET STRING (SIZE(3))
+
+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,
+	...
+}
+
+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)
+
+-- Q
+
+QCI ::= INTEGER (0..255)
+
+-- R
+
+
+ReceiveStatusofULPDCPSDUs ::= BIT STRING (SIZE(4096))
+
+Registration-Request	::= ENUMERATED {
+	start,
+	stop,
+	...
+}
+ 
+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 ::= {
+	...
+}
+
+ReportArea ::= ENUMERATED{
+	ecgi,
+	...
+}
+
+ReportCharacteristics	::= BIT STRING (SIZE (32))
+
+RNTP-Threshold ::= ENUMERATED {
+	minusInfinity,
+	minusEleven,
+	minusTen,
+	minusNine,
+	minusEight,
+	minusSeven,
+	minusSix,
+	minusFive,
+	minusFour,
+	minusThree,
+	minusTwo,
+	minusOne,
+	zero,
+	one,
+	two,
+	three,
+	...
+}
+
+RRC-Context ::= OCTET STRING
+
+
+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 ::= {
+	...
+}
+
+DL-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+UL-non-GBR-PRB-usage::= INTEGER (0..100)
+
+DL-Total-PRB-usage::= INTEGER (0..100)
+
+UL-Total-PRB-usage::= INTEGER (0..100)
+
+RadioframeAllocationPeriod ::= ENUMERATED{
+	n1, 
+	n2, 
+	n4, 
+	n8, 
+	n16, 
+	n32,
+	...
+}
+
+RadioframeAllocationOffset ::= INTEGER (0..7, ...)
+
+-- S
+
+S1TNLLoadIndicator ::= SEQUENCE {
+	dLS1TNLLoadIndicator			LoadIndicator,
+	uLS1TNLLoadIndicator			LoadIndicator,
+	iE-Extensions					ProtocolExtensionContainer { { S1TNLLoadIndicator-ExtIEs} } OPTIONAL,
+	...
+}
+
+S1TNLLoadIndicator-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+
+
+
+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 },
+	...
+}
+
+ShortMAC-I ::= BIT STRING (SIZE(16))
+
+SRVCCOperationPossible ::= ENUMERATED {
+	possible,
+	...
+}
+
+SubframeAssignment ::= ENUMERATED { 
+	sa0,
+	sa1, 
+	sa2,
+	sa3,
+	sa4,
+	sa5,
+	sa6,
+	...
+}
+
+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,
+	...
+}
+
+SubscriberProfileIDforRFP ::= INTEGER (1..256) 
+
+SubframeAllocation ::= CHOICE {
+	oneframe						Oneframe,
+	fourframes						Fourframes,
+	...
+}
+
+-- T
+
+TAC ::= OCTET STRING (SIZE (2)) 
+
+TargeteNBtoSource-eNBTransparentContainer	::= OCTET STRING
+
+
+TimeToWait ::= ENUMERATED {
+	v1s, 
+	v2s, 
+	v5s, 
+	v10s, 
+	v20s, 
+	v60s, 
+	...
+}
+
+Time-UE-StayedInCell ::= INTEGER (0..4095)
+
+
+TraceActivation ::= SEQUENCE {
+	eUTRANTraceID					EUTRANTraceID,
+	interfacesToTrace				InterfacesToTrace,
+traceDepth						TraceDepth,
+traceCollectionEntityIPAddress	TraceCollectionEntityIPAddress,
+	iE-Extensions					ProtocolExtensionContainer { {TraceActivation-ExtIEs} } OPTIONAL,
+	...
+}
+
+TraceActivation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+TraceCollectionEntityIPAddress ::= BIT STRING (SIZE(1..160, ...))
+
+TraceDepth 		::= ENUMERATED { 
+	minimum,
+	medium,
+	maximum,
+	minimumWithoutVendorSpecificExtension,
+	mediumWithoutVendorSpecificExtension,
+	maximumWithoutVendorSpecificExtension,
+	...
+}
+
+
+
+
+Transmission-Bandwidth ::= ENUMERATED {
+		bw6,
+	 	bw15,
+		bw25,
+	 	bw50,
+		bw75,
+		bw100,
+		...
+}
+
+TransportLayerAddress			::= BIT STRING (SIZE(1..160, ...))
+
+TypeOfError ::= ENUMERATED {
+	not-understood,
+	missing,
+	...
+}
+
+
+-- U
+
+UE-HistoryInformation ::= SEQUENCE (SIZE(1..maxnoofCells)) OF LastVisitedCell-Item
+
+
+UE-S1AP-ID					::= INTEGER (0.. 4294967295)
+
+UE-X2AP-ID					::= INTEGER (0..4095) -- Value FFS
+
+UEAggregateMaximumBitRate ::= SEQUENCE {
+	uEaggregateMaximumBitRateDownlink	BitRate,
+	uEaggregateMaximumBitRateUplink		BitRate,
+	iE-Extensions						ProtocolExtensionContainer { {UEAggregate-MaximumBitrate-ExtIEs} } OPTIONAL,
+	...
+}
+
+UEAggregate-MaximumBitrate-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+UESecurityCapabilities ::= SEQUENCE {
+	encryptionAlgorithms				EncryptionAlgorithms,
+	integrityProtectionAlgorithms		IntegrityProtectionAlgorithms,
+	iE-Extensions						ProtocolExtensionContainer { { UESecurityCapabilities-ExtIEs} }		OPTIONAL,
+...
+}
+
+UESecurityCapabilities-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
+	...
+}
+
+UL-InterferenceOverloadIndication ::= SEQUENCE (SIZE(1..maxnoofPRBs)) OF UL-InterferenceOverloadIndication-Item
+
+UL-InterferenceOverloadIndication-Item ::= ENUMERATED {
+	high-interference,
+	medium-interference,
+	low-interference,
+	...
+}
+
+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, ...))
+
+UE-RLF-Report-Container::= OCTET STRING
+-- This IE is a transparent container and shall be encoded as the rlfReport field contained in the UEInformationResponse message as defined in TS 36.331 [9]
+
+-- V
+-- W
+-- X
+-- Y
+-- Z
+
+END
+
+
diff --git a/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-PDU-Definitions.asn b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-PDU-Definitions.asn
new file mode 100755
index 0000000000000000000000000000000000000000..494a89a829c2d1565c4120a187790e9abd473f88
--- /dev/null
+++ b/openair2/X2AP/MESSAGES/ASN1/R9.6/X2AP-PDU-Definitions.asn
@@ -0,0 +1,901 @@
+-- **************************************************************
+--
+-- 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
+	
+	AS-SecurityInformation,
+	Cause,
+	CompositeAvailableCapacityGroup,
+	COUNTvalue,
+	CriticalityDiagnostics,
+	CRNTI,
+	DeactivationIndication,
+	DL-Forwarding,
+	ECGI,
+	E-RAB-ID,
+	E-RAB-Level-QoS-Parameters,
+	E-RAB-List,
+	EUTRANTraceID,
+	GlobalENB-ID,
+	GTPtunnelEndpoint,
+	GUGroupIDList,
+	GUMMEI,
+	HandoverReportType,
+	HandoverRestrictionList,
+	LocationReportingInformation,
+	Neighbour-Information,
+	PCI,
+	PDCP-SN,
+	PLMN-Identity,
+	ReceiveStatusofULPDCPSDUs,
+	Registration-Request,
+	RelativeNarrowbandTxPower,
+	RadioResourceStatus,
+	UE-RLF-Report-Container,
+	RRC-Context,
+	ServedCell-Information,
+	ServedCells,
+	ShortMAC-I,
+	SRVCCOperationPossible,
+	SubscriberProfileIDforRFP,
+	TargeteNBtoSource-eNBTransparentContainer,
+	TimeToWait,
+	TraceActivation,
+	TraceDepth,
+	
+	TransportLayerAddress,
+	UEAggregateMaximumBitRate,
+	UE-HistoryInformation,
+	UE-S1AP-ID,
+	UESecurityCapabilities,
+	UE-X2AP-ID,
+	UL-HighInterferenceIndicationInfo,
+	UL-InterferenceOverloadIndication,
+	HWLoadIndicator,
+	S1TNLLoadIndicator,
+	Measurement-ID,
+	ReportCharacteristics,
+	MobilityParametersInformation,
+	MobilityParametersModificationRange
+
+	
+	
+	
+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-ActivatedCellList,
+	id-Cause,
+	id-CellInformation,
+	id-CellInformation-Item,
+	id-CellMeasurementResult,
+	id-CellMeasurementResult-Item,
+	id-CellToReport,
+	id-CellToReport-Item,
+	id-CompositeAvailableCapacityGroup,
+	id-CriticalityDiagnostics,
+	id-DeactivationIndication,
+	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-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,
+
+
+	maxCellineNB,
+	maxnoofBearers,
+	maxnoofPDCP-SN
+	
+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 },
+	...
+}
+
+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 ::= {
+	...
+}
+
+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 ::= {
+	...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+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 },
+
+	...
+}
+
+-- **************************************************************
+--
+-- 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” -- ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+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 ::= {
+	...
+}
+
+
+
+
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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} ,
+	...
+}
+
+-- **************************************************************
+--
+-- 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},
+...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+
+
+-- **************************************************************
+--
+-- 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 ::= {
+	...
+}
+
+-- **************************************************************
+--
+-- 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},
+	...
+}
+
+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”--
+	{ 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} ,
+	...
+}
+
+
+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,
+...
+}
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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,
+	hWOverLoadIndicator				HWLoadIndicator		OPTIONAL,
+	s1TNLOverLoadIndicator			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	},
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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},
+	...
+}
+
+
+-- **************************************************************
+--
+-- 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 },
+	...
+}
+
+END
+
+