RANAP: Add more types/IEs to RANAP-PDU.asn and re-generate C

As asn1c cannot understand information object classes, we cannot compile
RANAP-PDU-Contents.asn but instead need to manually add the respective
infrmation elements to RANAP-PDU.asn.
diff --git a/src/ranap/Makefile.am b/src/ranap/Makefile.am
index ad86020..92ec147 100644
--- a/src/ranap/Makefile.am
+++ b/src/ranap/Makefile.am
@@ -494,6 +494,8 @@
 	RANAP_SRVCC-CSKeysResponse.c	\
 	RANAP_UeRadioCapabilityMatchRequest.c	\
 	RANAP_UeRadioCapabilityMatchResponse.c	\
+	RANAP_ProtocolExtensionContainer.c	\
+	RANAP_ProtocolExtensionField.c	\
 	RANAP_IE.c	\
 	RANAP_DataVolumeReportList.c	\
 	RANAP_RAB-ReleasedList-IuRelComp.c	\
@@ -514,7 +516,49 @@
 	RANAP_RAB-ReleasedList.c	\
 	RANAP_RAB-QueuedList.c	\
 	RANAP_GERAN-Iumode-RAB-FailedList-RABAssgntResponse.c	\
-	RANAP_RAB-ContextList-RANAP-RelocInf.c
+	RANAP_RAB-ContextList-RANAP-RelocInf.c	\
+	RANAP_RAB-SetupList-EnhRelocInfoReq.c	\
+	RANAP_RAB-SetupList-EnhRelocInfoRes.c	\
+	RANAP_RAB-FailedList-EnhRelocInfoRes.c	\
+	RANAP_RAB-ModifyList.c	\
+	RANAP_RAB-DataVolumeReportList.c	\
+	RANAP_RAB-DataVolumeReportItem.c	\
+	RANAP_RAB-ReleasedItem-IuRelComp.c	\
+	RANAP_RAB-RelocationReleaseItem.c	\
+	RANAP_RAB-DataForwardingItem.c	\
+	RANAP_RAB-SetupItem-RelocReq.c	\
+	RANAP_UserPlaneInformation.c	\
+	RANAP_RAB-SetupItem-RelocReqAck.c	\
+	RANAP_RAB-FailedItem.c	\
+	RANAP_RAB-ContextItem.c	\
+	RANAP_RABs-ContextFailedtoTransferItem.c	\
+	RANAP_RABs-failed-to-reportItem.c	\
+	RANAP_ResetResourceItem.c	\
+	RANAP_ResetResourceAckItem.c	\
+	RANAP_RAB-ReleaseItem.c	\
+	RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.c	\
+	RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.c	\
+	RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.c	\
+	RANAP_RAB-SetupOrModifyItemFirst.c	\
+	RANAP_TransportLayerInformation.c	\
+	RANAP_RAB-SetupOrModifyItemSecond.c	\
+	RANAP_RAB-SetupOrModifiedItem.c	\
+	RANAP_RAB-ReleasedItem.c	\
+	RANAP_DataVolumeList.c	\
+	RANAP_RAB-QueuedItem.c	\
+	RANAP_RAB-ReleaseFailedList.c	\
+	RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.c	\
+	RANAP_DirectTransferInformationItem-RANAP-RelocInf.c	\
+	RANAP_RAB-ContextItem-RANAP-RelocInf.c	\
+	RANAP_RAB-SetupItem-EnhRelocInfoReq.c	\
+	RANAP_TNLInformationEnhRelInfoReq.c	\
+	RANAP_RAB-SetupItem-EnhRelocInfoRes.c	\
+	RANAP_RAB-FailedItem-EnhRelocInfoRes.c	\
+	RANAP_TNLInformationEnhRelInfoRes.c	\
+	RANAP_RAB-ModifyItem.c	\
+	RANAP_MBMSSynchronisationInformation.c	\
+	RANAP_LeftMBMSBearerService-IEs.c	\
+	RANAP_UnsuccessfulLinking-IEs.c
 
 ASN_MODULE_INC=	\
 	RANAP_Criticality.h	\
@@ -1012,6 +1056,8 @@
 	RANAP_SRVCC-CSKeysResponse.h	\
 	RANAP_UeRadioCapabilityMatchRequest.h	\
 	RANAP_UeRadioCapabilityMatchResponse.h	\
+	RANAP_ProtocolExtensionContainer.h	\
+	RANAP_ProtocolExtensionField.h	\
 	RANAP_IE.h	\
 	RANAP_DataVolumeReportList.h	\
 	RANAP_RAB-ReleasedList-IuRelComp.h	\
@@ -1036,7 +1082,45 @@
 	RANAP_RAB-SetupList-EnhRelocInfoReq.h	\
 	RANAP_RAB-SetupList-EnhRelocInfoRes.h	\
 	RANAP_RAB-FailedList-EnhRelocInfoRes.h	\
-	RANAP_RAB-ModifyList.h
+	RANAP_RAB-ModifyList.h	\
+	RANAP_RAB-DataVolumeReportList.h	\
+	RANAP_RAB-DataVolumeReportItem.h	\
+	RANAP_RAB-ReleasedItem-IuRelComp.h	\
+	RANAP_RAB-RelocationReleaseItem.h	\
+	RANAP_RAB-DataForwardingItem.h	\
+	RANAP_RAB-SetupItem-RelocReq.h	\
+	RANAP_UserPlaneInformation.h	\
+	RANAP_RAB-SetupItem-RelocReqAck.h	\
+	RANAP_RAB-FailedItem.h	\
+	RANAP_RAB-ContextItem.h	\
+	RANAP_RABs-ContextFailedtoTransferItem.h	\
+	RANAP_RABs-failed-to-reportItem.h	\
+	RANAP_ResetResourceItem.h	\
+	RANAP_ResetResourceAckItem.h	\
+	RANAP_RAB-ReleaseItem.h	\
+	RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.h	\
+	RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.h	\
+	RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.h	\
+	RANAP_RAB-SetupOrModifyItemFirst.h	\
+	RANAP_TransportLayerInformation.h	\
+	RANAP_RAB-SetupOrModifyItemSecond.h	\
+	RANAP_RAB-SetupOrModifiedItem.h	\
+	RANAP_RAB-ReleasedItem.h	\
+	RANAP_DataVolumeList.h	\
+	RANAP_RAB-QueuedItem.h	\
+	RANAP_RAB-ReleaseFailedList.h	\
+	RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.h	\
+	RANAP_DirectTransferInformationItem-RANAP-RelocInf.h	\
+	RANAP_RAB-ContextItem-RANAP-RelocInf.h	\
+	RANAP_RAB-SetupItem-EnhRelocInfoReq.h	\
+	RANAP_TNLInformationEnhRelInfoReq.h	\
+	RANAP_RAB-SetupItem-EnhRelocInfoRes.h	\
+	RANAP_RAB-FailedItem-EnhRelocInfoRes.h	\
+	RANAP_TNLInformationEnhRelInfoRes.h	\
+	RANAP_RAB-ModifyItem.h	\
+	RANAP_MBMSSynchronisationInformation.h	\
+	RANAP_LeftMBMSBearerService-IEs.h	\
+	RANAP_UnsuccessfulLinking-IEs.h
 
 AM_CFLAGS = $(ASN1C_CFLAGS) -I.
 
diff --git a/src/ranap/RANAP_AuthorisedPLMNs.c b/src/ranap/RANAP_AuthorisedPLMNs.c
index 784177c..0c9db50 100644
--- a/src/ranap/RANAP_AuthorisedPLMNs.c
+++ b/src/ranap/RANAP_AuthorisedPLMNs.c
@@ -11,8 +11,8 @@
 	{ APC_CONSTRAINED,	 5,  5,  1l,  32l }	/* (SIZE(1..32)) */,
 	0, 0	/* No PER value map */
 };
-static asn_TYPE_member_t asn_MBR_Member_2[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct Member, pLMNidentity),
+static asn_TYPE_member_t asn_MBR_MemberA_2[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct MemberA, pLMNidentity),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_RANAP_PLMNidentity,
@@ -21,7 +21,7 @@
 		0,
 		"pLMNidentity"
 		},
-	{ ATF_POINTER, 2, offsetof(struct Member, authorisedSNAsList),
+	{ ATF_POINTER, 2, offsetof(struct MemberA, authorisedSNAsList),
 		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_RANAP_AuthorisedSNAs,
@@ -30,7 +30,7 @@
 		0,
 		"authorisedSNAsList"
 		},
-	{ ATF_POINTER, 1, offsetof(struct Member, iE_Extensions),
+	{ ATF_POINTER, 1, offsetof(struct MemberA, iE_Extensions),
 		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_RANAP_IE_Extensions,
@@ -40,27 +40,27 @@
 		"iE-Extensions"
 		},
 };
-static const int asn_MAP_Member_oms_2[] = { 1, 2 };
-static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
+static const int asn_MAP_MemberA_oms_2[] = { 1, 2 };
+static const ber_tlv_tag_t asn_DEF_MemberA_tags_2[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
+static const asn_TYPE_tag2member_t asn_MAP_MemberA_tag2el_2[] = {
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMNidentity */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* authorisedSNAsList */
     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
 };
-static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
-	sizeof(struct Member),
-	offsetof(struct Member, _asn_ctx),
-	asn_MAP_Member_tag2el_2,
+static asn_SEQUENCE_specifics_t asn_SPC_MemberA_specs_2 = {
+	sizeof(struct MemberA),
+	offsetof(struct MemberA, _asn_ctx),
+	asn_MAP_MemberA_tag2el_2,
 	3,	/* Count of tags in the map */
-	asn_MAP_Member_oms_2,	/* Optional members */
+	asn_MAP_MemberA_oms_2,	/* Optional members */
 	2, 0,	/* Root/Additions */
 	2,	/* Start extensions */
 	4	/* Stop extensions */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_Member_2 = {
+asn_TYPE_descriptor_t asn_DEF_MemberA_2 = {
 	"SEQUENCE",
 	"SEQUENCE",
 	SEQUENCE_free,
@@ -75,23 +75,23 @@
 	SEQUENCE_decode_aper,
 	SEQUENCE_encode_aper,
 	0,	/* Use generic outmost tag fetcher */
-	asn_DEF_Member_tags_2,
-	sizeof(asn_DEF_Member_tags_2)
-		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
-	asn_DEF_Member_tags_2,	/* Same as above */
-	sizeof(asn_DEF_Member_tags_2)
-		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
+	asn_DEF_MemberA_tags_2,
+	sizeof(asn_DEF_MemberA_tags_2)
+		/sizeof(asn_DEF_MemberA_tags_2[0]), /* 1 */
+	asn_DEF_MemberA_tags_2,	/* Same as above */
+	sizeof(asn_DEF_MemberA_tags_2)
+		/sizeof(asn_DEF_MemberA_tags_2[0]), /* 1 */
 	0,	/* No PER visible constraints */
-	asn_MBR_Member_2,
+	asn_MBR_MemberA_2,
 	3,	/* Elements count */
-	&asn_SPC_Member_specs_2	/* Additional specs */
+	&asn_SPC_MemberA_specs_2	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_RANAP_AuthorisedPLMNs_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_Member_2,
+		&asn_DEF_MemberA_2,
 		0,	/* Defer constraints checking to the member type */
 		0,	/* No PER visible constraints */
 		0,
diff --git a/src/ranap/RANAP_AuthorisedPLMNs.h b/src/ranap/RANAP_AuthorisedPLMNs.h
index 16fe12c..6bd1dff 100644
--- a/src/ranap/RANAP_AuthorisedPLMNs.h
+++ b/src/ranap/RANAP_AuthorisedPLMNs.h
@@ -24,7 +24,7 @@
 
 /* RANAP_AuthorisedPLMNs */
 typedef struct RANAP_AuthorisedPLMNs {
-	A_SEQUENCE_OF(struct Member {
+	A_SEQUENCE_OF(struct MemberA {
 		RANAP_PLMNidentity_t	 pLMNidentity;
 		RANAP_AuthorisedSNAs_t	*authorisedSNAsList	/* OPTIONAL */;
 		RANAP_IE_Extensions_t	*iE_Extensions	/* OPTIONAL */;
diff --git a/src/ranap/RANAP_DataVolumeList.c b/src/ranap/RANAP_DataVolumeList.c
new file mode 100644
index 0000000..1d14cf1
--- /dev/null
+++ b/src/ranap/RANAP_DataVolumeList.c
@@ -0,0 +1,135 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_DataVolumeList.h"
+
+static asn_per_constraints_t asn_PER_type_RANAP_DataVolumeList_constr_1 GCC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 1,  1,  1l,  2l }	/* (SIZE(1..2)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_Member_2[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct Member, dl_UnsuccessfullyTransmittedDataVolume),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UnsuccessfullyTransmittedDataVolume,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-UnsuccessfullyTransmittedDataVolume"
+		},
+	{ ATF_POINTER, 2, offsetof(struct Member, dataVolumeReference),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DataVolumeReference,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dataVolumeReference"
+		},
+	{ ATF_POINTER, 1, offsetof(struct Member, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_Member_oms_2[] = { 1, 2 };
+static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dl-UnsuccessfullyTransmittedDataVolume */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dataVolumeReference */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
+	sizeof(struct Member),
+	offsetof(struct Member, _asn_ctx),
+	asn_MAP_Member_tag2el_2,
+	3,	/* Count of tags in the map */
+	asn_MAP_Member_oms_2,	/* Optional members */
+	2, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_Member_2 = {
+	"SEQUENCE",
+	"SEQUENCE",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_Member_tags_2,
+	sizeof(asn_DEF_Member_tags_2)
+		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
+	asn_DEF_Member_tags_2,	/* Same as above */
+	sizeof(asn_DEF_Member_tags_2)
+		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_Member_2,
+	3,	/* Elements count */
+	&asn_SPC_Member_specs_2	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_RANAP_DataVolumeList_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_Member_2,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANAP_DataVolumeList_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_RANAP_DataVolumeList_specs_1 = {
+	sizeof(struct RANAP_DataVolumeList),
+	offsetof(struct RANAP_DataVolumeList, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_DataVolumeList = {
+	"RANAP_DataVolumeList",
+	"RANAP_DataVolumeList",
+	SEQUENCE_OF_free,
+	SEQUENCE_OF_print,
+	SEQUENCE_OF_constraint,
+	SEQUENCE_OF_decode_ber,
+	SEQUENCE_OF_encode_der,
+	SEQUENCE_OF_decode_xer,
+	SEQUENCE_OF_encode_xer,
+	SEQUENCE_OF_decode_uper,
+	SEQUENCE_OF_encode_uper,
+	SEQUENCE_OF_decode_aper,
+	SEQUENCE_OF_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_DataVolumeList_tags_1,
+	sizeof(asn_DEF_RANAP_DataVolumeList_tags_1)
+		/sizeof(asn_DEF_RANAP_DataVolumeList_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_DataVolumeList_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_DataVolumeList_tags_1)
+		/sizeof(asn_DEF_RANAP_DataVolumeList_tags_1[0]), /* 1 */
+	&asn_PER_type_RANAP_DataVolumeList_constr_1,
+	asn_MBR_RANAP_DataVolumeList_1,
+	1,	/* Single element */
+	&asn_SPC_RANAP_DataVolumeList_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_DataVolumeList.h b/src/ranap/RANAP_DataVolumeList.h
new file mode 100644
index 0000000..be86aaa
--- /dev/null
+++ b/src/ranap/RANAP_DataVolumeList.h
@@ -0,0 +1,52 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_DataVolumeList_H_
+#define	_RANAP_DataVolumeList_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include <asn_SEQUENCE_OF.h>
+#include "RANAP_UnsuccessfullyTransmittedDataVolume.h"
+#include "RANAP_DataVolumeReference.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+#include <constr_SEQUENCE_OF.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_DataVolumeList */
+typedef struct RANAP_DataVolumeList {
+	A_SEQUENCE_OF(struct Member {
+		RANAP_UnsuccessfullyTransmittedDataVolume_t	 dl_UnsuccessfullyTransmittedDataVolume;
+		RANAP_DataVolumeReference_t	*dataVolumeReference	/* OPTIONAL */;
+		RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+		/*
+		 * This type is extensible,
+		 * possible extensions are below.
+		 */
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} ) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_DataVolumeList_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_DataVolumeList;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_DataVolumeList_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_DirectTransferInformationItem-RANAP-RelocInf.c b/src/ranap/RANAP_DirectTransferInformationItem-RANAP-RelocInf.c
new file mode 100644
index 0000000..f67f534
--- /dev/null
+++ b/src/ranap/RANAP_DirectTransferInformationItem-RANAP-RelocInf.c
@@ -0,0 +1,93 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_DirectTransferInformationItem-RANAP-RelocInf.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_DirectTransferInformationItem_RANAP_RelocInf_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_DirectTransferInformationItem_RANAP_RelocInf, nAS_PDU),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_NAS_PDU,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"nAS-PDU"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_DirectTransferInformationItem_RANAP_RelocInf, sAPI),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_SAPI,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"sAPI"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_DirectTransferInformationItem_RANAP_RelocInf, cN_DomainIndicator),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_CN_DomainIndicator,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cN-DomainIndicator"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_DirectTransferInformationItem_RANAP_RelocInf, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_DirectTransferInformationItem_RANAP_RelocInf_oms_1[] = { 3 };
+static const ber_tlv_tag_t asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* nAS-PDU */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* sAPI */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* cN-DomainIndicator */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_DirectTransferInformationItem_RANAP_RelocInf_specs_1 = {
+	sizeof(struct RANAP_DirectTransferInformationItem_RANAP_RelocInf),
+	offsetof(struct RANAP_DirectTransferInformationItem_RANAP_RelocInf, _asn_ctx),
+	asn_MAP_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tag2el_1,
+	4,	/* Count of tags in the map */
+	asn_MAP_RANAP_DirectTransferInformationItem_RANAP_RelocInf_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	3,	/* Start extensions */
+	5	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf = {
+	"RANAP_DirectTransferInformationItem-RANAP-RelocInf",
+	"RANAP_DirectTransferInformationItem-RANAP-RelocInf",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tags_1,
+	sizeof(asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tags_1)
+		/sizeof(asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tags_1)
+		/sizeof(asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_DirectTransferInformationItem_RANAP_RelocInf_1,
+	4,	/* Elements count */
+	&asn_SPC_RANAP_DirectTransferInformationItem_RANAP_RelocInf_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_DirectTransferInformationItem-RANAP-RelocInf.h b/src/ranap/RANAP_DirectTransferInformationItem-RANAP-RelocInf.h
new file mode 100644
index 0000000..191bf04
--- /dev/null
+++ b/src/ranap/RANAP_DirectTransferInformationItem-RANAP-RelocInf.h
@@ -0,0 +1,47 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_DirectTransferInformationItem_RANAP_RelocInf_H_
+#define	_RANAP_DirectTransferInformationItem_RANAP_RelocInf_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_NAS-PDU.h"
+#include "RANAP_SAPI.h"
+#include "RANAP_CN-DomainIndicator.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_DirectTransferInformationItem-RANAP-RelocInf */
+typedef struct RANAP_DirectTransferInformationItem_RANAP_RelocInf {
+	RANAP_NAS_PDU_t	 nAS_PDU;
+	RANAP_SAPI_t	 sAPI;
+	RANAP_CN_DomainIndicator_t	 cN_DomainIndicator;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_DirectTransferInformationItem_RANAP_RelocInf_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_DirectTransferInformationItem_RANAP_RelocInf;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_DirectTransferInformationItem_RANAP_RelocInf_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.c b/src/ranap/RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.c
new file mode 100644
index 0000000..85028c4
--- /dev/null
+++ b/src/ranap/RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.c
@@ -0,0 +1,93 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item, cause),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item, gERAN_Classmark),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_GERAN_Classmark,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"gERAN-Classmark"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_oms_1[] = { 2, 3 };
+static const ber_tlv_tag_t asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* gERAN-Classmark */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_specs_1 = {
+	sizeof(struct RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item),
+	offsetof(struct RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item, _asn_ctx),
+	asn_MAP_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tag2el_1,
+	4,	/* Count of tags in the map */
+	asn_MAP_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_oms_1,	/* Optional members */
+	2, 0,	/* Root/Additions */
+	3,	/* Start extensions */
+	5	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item = {
+	"RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item",
+	"RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tags_1,
+	sizeof(asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tags_1)
+		/sizeof(asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tags_1)
+		/sizeof(asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_1,
+	4,	/* Elements count */
+	&asn_SPC_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.h b/src/ranap/RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.h
new file mode 100644
index 0000000..f299ceb
--- /dev/null
+++ b/src/ranap/RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item.h
@@ -0,0 +1,47 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_H_
+#define	_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Cause.h"
+#include "RANAP_GERAN-Classmark.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_GERAN-Iumode-RAB-Failed-RABAssgntResponse-Item */
+typedef struct RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Cause_t	 cause;
+	RANAP_GERAN_Classmark_t	*gERAN_Classmark	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_GERAN_Iumode_RAB_Failed_RABAssgntResponse_Item_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_LeftMBMSBearerService-IEs.c b/src/ranap/RANAP_LeftMBMSBearerService-IEs.c
new file mode 100644
index 0000000..a82558f
--- /dev/null
+++ b/src/ranap/RANAP_LeftMBMSBearerService-IEs.c
@@ -0,0 +1,125 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_LeftMBMSBearerService-IEs.h"
+
+static asn_per_constraints_t asn_PER_type_RANAP_LeftMBMSBearerService_IEs_constr_1 GCC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 7,  7,  1l,  128l }	/* (SIZE(1..128)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_Member_2[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct Member, tMGI),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TMGI,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"tMGI"
+		},
+	{ ATF_POINTER, 1, offsetof(struct Member, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_Member_oms_2[] = { 1 };
+static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tMGI */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
+	sizeof(struct Member),
+	offsetof(struct Member, _asn_ctx),
+	asn_MAP_Member_tag2el_2,
+	2,	/* Count of tags in the map */
+	asn_MAP_Member_oms_2,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	1,	/* Start extensions */
+	3	/* Stop extensions */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_Member_2 = {
+	"SEQUENCE",
+	"SEQUENCE",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_Member_tags_2,
+	sizeof(asn_DEF_Member_tags_2)
+		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
+	asn_DEF_Member_tags_2,	/* Same as above */
+	sizeof(asn_DEF_Member_tags_2)
+		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_Member_2,
+	2,	/* Elements count */
+	&asn_SPC_Member_specs_2	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_RANAP_LeftMBMSBearerService_IEs_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_Member_2,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANAP_LeftMBMSBearerService_IEs_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_RANAP_LeftMBMSBearerService_IEs_specs_1 = {
+	sizeof(struct RANAP_LeftMBMSBearerService_IEs),
+	offsetof(struct RANAP_LeftMBMSBearerService_IEs, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_LeftMBMSBearerService_IEs = {
+	"RANAP_LeftMBMSBearerService-IEs",
+	"RANAP_LeftMBMSBearerService-IEs",
+	SEQUENCE_OF_free,
+	SEQUENCE_OF_print,
+	SEQUENCE_OF_constraint,
+	SEQUENCE_OF_decode_ber,
+	SEQUENCE_OF_encode_der,
+	SEQUENCE_OF_decode_xer,
+	SEQUENCE_OF_encode_xer,
+	SEQUENCE_OF_decode_uper,
+	SEQUENCE_OF_encode_uper,
+	SEQUENCE_OF_decode_aper,
+	SEQUENCE_OF_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_LeftMBMSBearerService_IEs_tags_1,
+	sizeof(asn_DEF_RANAP_LeftMBMSBearerService_IEs_tags_1)
+		/sizeof(asn_DEF_RANAP_LeftMBMSBearerService_IEs_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_LeftMBMSBearerService_IEs_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_LeftMBMSBearerService_IEs_tags_1)
+		/sizeof(asn_DEF_RANAP_LeftMBMSBearerService_IEs_tags_1[0]), /* 1 */
+	&asn_PER_type_RANAP_LeftMBMSBearerService_IEs_constr_1,
+	asn_MBR_RANAP_LeftMBMSBearerService_IEs_1,
+	1,	/* Single element */
+	&asn_SPC_RANAP_LeftMBMSBearerService_IEs_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_LeftMBMSBearerService-IEs.h b/src/ranap/RANAP_LeftMBMSBearerService-IEs.h
new file mode 100644
index 0000000..1f2bbf2
--- /dev/null
+++ b/src/ranap/RANAP_LeftMBMSBearerService-IEs.h
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_LeftMBMSBearerService_IEs_H_
+#define	_RANAP_LeftMBMSBearerService_IEs_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include <asn_SEQUENCE_OF.h>
+#include "RANAP_TMGI.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+#include <constr_SEQUENCE_OF.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_LeftMBMSBearerService-IEs */
+typedef struct RANAP_LeftMBMSBearerService_IEs {
+	A_SEQUENCE_OF(struct Member {
+		RANAP_TMGI_t	 tMGI;
+		RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+		/*
+		 * This type is extensible,
+		 * possible extensions are below.
+		 */
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} ) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_LeftMBMSBearerService_IEs_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_LeftMBMSBearerService_IEs;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_LeftMBMSBearerService_IEs_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_MBMSSynchronisationInformation.c b/src/ranap/RANAP_MBMSSynchronisationInformation.c
new file mode 100644
index 0000000..325e2ff
--- /dev/null
+++ b/src/ranap/RANAP_MBMSSynchronisationInformation.c
@@ -0,0 +1,93 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_MBMSSynchronisationInformation.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_MBMSSynchronisationInformation_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_MBMSSynchronisationInformation, mBMSHCIndicator),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_MBMSHCIndicator,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"mBMSHCIndicator"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_MBMSSynchronisationInformation, iPMulticastAddress),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_IPMulticastAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iPMulticastAddress"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_MBMSSynchronisationInformation, gTPDLTEID),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_GTP_TEI,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"gTPDLTEID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_MBMSSynchronisationInformation, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_MBMSSynchronisationInformation_oms_1[] = { 3 };
+static const ber_tlv_tag_t asn_DEF_RANAP_MBMSSynchronisationInformation_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_MBMSSynchronisationInformation_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* mBMSHCIndicator */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* iPMulticastAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* gTPDLTEID */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_MBMSSynchronisationInformation_specs_1 = {
+	sizeof(struct RANAP_MBMSSynchronisationInformation),
+	offsetof(struct RANAP_MBMSSynchronisationInformation, _asn_ctx),
+	asn_MAP_RANAP_MBMSSynchronisationInformation_tag2el_1,
+	4,	/* Count of tags in the map */
+	asn_MAP_RANAP_MBMSSynchronisationInformation_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	3,	/* Start extensions */
+	5	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_MBMSSynchronisationInformation = {
+	"RANAP_MBMSSynchronisationInformation",
+	"RANAP_MBMSSynchronisationInformation",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_MBMSSynchronisationInformation_tags_1,
+	sizeof(asn_DEF_RANAP_MBMSSynchronisationInformation_tags_1)
+		/sizeof(asn_DEF_RANAP_MBMSSynchronisationInformation_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_MBMSSynchronisationInformation_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_MBMSSynchronisationInformation_tags_1)
+		/sizeof(asn_DEF_RANAP_MBMSSynchronisationInformation_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_MBMSSynchronisationInformation_1,
+	4,	/* Elements count */
+	&asn_SPC_RANAP_MBMSSynchronisationInformation_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_MBMSSynchronisationInformation.h b/src/ranap/RANAP_MBMSSynchronisationInformation.h
new file mode 100644
index 0000000..e277e27
--- /dev/null
+++ b/src/ranap/RANAP_MBMSSynchronisationInformation.h
@@ -0,0 +1,47 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_MBMSSynchronisationInformation_H_
+#define	_RANAP_MBMSSynchronisationInformation_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_MBMSHCIndicator.h"
+#include "RANAP_IPMulticastAddress.h"
+#include "RANAP_GTP-TEI.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_MBMSSynchronisationInformation */
+typedef struct RANAP_MBMSSynchronisationInformation {
+	RANAP_MBMSHCIndicator_t	 mBMSHCIndicator;
+	RANAP_IPMulticastAddress_t	 iPMulticastAddress;
+	RANAP_GTP_TEI_t	 gTPDLTEID;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_MBMSSynchronisationInformation_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_MBMSSynchronisationInformation;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_MBMSSynchronisationInformation_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_ProtocolExtensionContainer.c b/src/ranap/RANAP_ProtocolExtensionContainer.c
new file mode 100644
index 0000000..d51e0a8
--- /dev/null
+++ b/src/ranap/RANAP_ProtocolExtensionContainer.c
@@ -0,0 +1,59 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_ProtocolExtensionContainer.h"
+
+static asn_per_constraints_t asn_PER_type_RANAP_ProtocolExtensionContainer_constr_1 GCC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 16,  16,  1l,  65535l }	/* (SIZE(1..65535)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_RANAP_ProtocolExtensionContainer_1[] = {
+	{ ATF_POINTER, 0, 0,
+		-1 /* Ambiguous tag (CHOICE?) */,
+		0,
+		&asn_DEF_RANAP_ProtocolExtensionField,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANAP_ProtocolExtensionContainer_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_RANAP_ProtocolExtensionContainer_specs_1 = {
+	sizeof(struct RANAP_ProtocolExtensionContainer),
+	offsetof(struct RANAP_ProtocolExtensionContainer, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_ProtocolExtensionContainer = {
+	"RANAP_ProtocolExtensionContainer",
+	"RANAP_ProtocolExtensionContainer",
+	SEQUENCE_OF_free,
+	SEQUENCE_OF_print,
+	SEQUENCE_OF_constraint,
+	SEQUENCE_OF_decode_ber,
+	SEQUENCE_OF_encode_der,
+	SEQUENCE_OF_decode_xer,
+	SEQUENCE_OF_encode_xer,
+	SEQUENCE_OF_decode_uper,
+	SEQUENCE_OF_encode_uper,
+	SEQUENCE_OF_decode_aper,
+	SEQUENCE_OF_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_ProtocolExtensionContainer_tags_1,
+	sizeof(asn_DEF_RANAP_ProtocolExtensionContainer_tags_1)
+		/sizeof(asn_DEF_RANAP_ProtocolExtensionContainer_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_ProtocolExtensionContainer_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_ProtocolExtensionContainer_tags_1)
+		/sizeof(asn_DEF_RANAP_ProtocolExtensionContainer_tags_1[0]), /* 1 */
+	&asn_PER_type_RANAP_ProtocolExtensionContainer_constr_1,
+	asn_MBR_RANAP_ProtocolExtensionContainer_1,
+	1,	/* Single element */
+	&asn_SPC_RANAP_ProtocolExtensionContainer_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_ProtocolExtensionContainer.h b/src/ranap/RANAP_ProtocolExtensionContainer.h
new file mode 100644
index 0000000..c7870e0
--- /dev/null
+++ b/src/ranap/RANAP_ProtocolExtensionContainer.h
@@ -0,0 +1,38 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_ProtocolExtensionContainer_H_
+#define	_RANAP_ProtocolExtensionContainer_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_ProtocolExtensionField.h"
+#include <asn_SEQUENCE_OF.h>
+#include <constr_SEQUENCE_OF.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_ProtocolExtensionContainer */
+typedef struct RANAP_ProtocolExtensionContainer {
+	A_SEQUENCE_OF(RANAP_ProtocolExtensionField_t) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_ProtocolExtensionContainer_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_ProtocolExtensionContainer;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_ProtocolExtensionContainer_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_ProtocolExtensionField.c b/src/ranap/RANAP_ProtocolExtensionField.c
new file mode 100644
index 0000000..1bb5f4b
--- /dev/null
+++ b/src/ranap/RANAP_ProtocolExtensionField.c
@@ -0,0 +1,81 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_ProtocolExtensionField.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_ProtocolExtensionField_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_ProtocolExtensionField, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolIE_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_ProtocolExtensionField, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Criticality,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"criticality"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_ProtocolExtensionField, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_ANY,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANAP_ProtocolExtensionField_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_ProtocolExtensionField_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* id */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* criticality */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* value */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_ProtocolExtensionField_specs_1 = {
+	sizeof(struct RANAP_ProtocolExtensionField),
+	offsetof(struct RANAP_ProtocolExtensionField, _asn_ctx),
+	asn_MAP_RANAP_ProtocolExtensionField_tag2el_1,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* Start extensions */
+	-1	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_ProtocolExtensionField = {
+	"RANAP_ProtocolExtensionField",
+	"RANAP_ProtocolExtensionField",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_ProtocolExtensionField_tags_1,
+	sizeof(asn_DEF_RANAP_ProtocolExtensionField_tags_1)
+		/sizeof(asn_DEF_RANAP_ProtocolExtensionField_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_ProtocolExtensionField_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_ProtocolExtensionField_tags_1)
+		/sizeof(asn_DEF_RANAP_ProtocolExtensionField_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_ProtocolExtensionField_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_ProtocolExtensionField_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_ProtocolExtensionField.h b/src/ranap/RANAP_ProtocolExtensionField.h
new file mode 100644
index 0000000..2a3b119
--- /dev/null
+++ b/src/ranap/RANAP_ProtocolExtensionField.h
@@ -0,0 +1,41 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_ProtocolExtensionField_H_
+#define	_RANAP_ProtocolExtensionField_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_ProtocolIE-ID.h"
+#include "RANAP_Criticality.h"
+#include <ANY.h>
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_ProtocolExtensionField */
+typedef struct RANAP_ProtocolExtensionField {
+	RANAP_ProtocolIE_ID_t	 id;
+	RANAP_Criticality_t	 criticality;
+	ANY_t	 value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_ProtocolExtensionField_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_ProtocolExtensionField;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_ProtocolExtensionField_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ContextItem-RANAP-RelocInf.c b/src/ranap/RANAP_RAB-ContextItem-RANAP-RelocInf.c
new file mode 100644
index 0000000..3a12e37
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ContextItem-RANAP-RelocInf.c
@@ -0,0 +1,113 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-ContextItem-RANAP-RelocInf.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_ContextItem_RANAP_RelocInf_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ContextItem_RANAP_RelocInf, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 5, offsetof(struct RANAP_RAB_ContextItem_RANAP_RelocInf, dl_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_ContextItem_RANAP_RelocInf, ul_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ul-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_ContextItem_RANAP_RelocInf, dl_N_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_N_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-N-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_ContextItem_RANAP_RelocInf, ul_N_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_N_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ul-N-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_ContextItem_RANAP_RelocInf, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_ContextItem_RANAP_RelocInf_oms_1[] = { 1, 2, 3, 4, 5 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_ContextItem_RANAP_RelocInf_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ul-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* dl-N-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ul-N-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_ContextItem_RANAP_RelocInf_specs_1 = {
+	sizeof(struct RANAP_RAB_ContextItem_RANAP_RelocInf),
+	offsetof(struct RANAP_RAB_ContextItem_RANAP_RelocInf, _asn_ctx),
+	asn_MAP_RANAP_RAB_ContextItem_RANAP_RelocInf_tag2el_1,
+	6,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_ContextItem_RANAP_RelocInf_oms_1,	/* Optional members */
+	5, 0,	/* Root/Additions */
+	5,	/* Start extensions */
+	7	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf = {
+	"RANAP_RAB-ContextItem-RANAP-RelocInf",
+	"RANAP_RAB-ContextItem-RANAP-RelocInf",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_ContextItem_RANAP_RelocInf_1,
+	6,	/* Elements count */
+	&asn_SPC_RANAP_RAB_ContextItem_RANAP_RelocInf_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-ContextItem-RANAP-RelocInf.h b/src/ranap/RANAP_RAB-ContextItem-RANAP-RelocInf.h
new file mode 100644
index 0000000..6a3baf5
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ContextItem-RANAP-RelocInf.h
@@ -0,0 +1,51 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ContextItem_RANAP_RelocInf_H_
+#define	_RANAP_RAB_ContextItem_RANAP_RelocInf_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_DL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_UL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_DL-N-PDU-SequenceNumber.h"
+#include "RANAP_UL-N-PDU-SequenceNumber.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ContextItem-RANAP-RelocInf */
+typedef struct RANAP_RAB_ContextItem_RANAP_RelocInf {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_DL_GTP_PDU_SequenceNumber_t	*dl_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_GTP_PDU_SequenceNumber_t	*ul_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_DL_N_PDU_SequenceNumber_t	*dl_N_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_N_PDU_SequenceNumber_t	*ul_N_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_ContextItem_RANAP_RelocInf_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ContextItem_RANAP_RelocInf;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ContextItem_RANAP_RelocInf_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ContextItem.c b/src/ranap/RANAP_RAB-ContextItem.c
new file mode 100644
index 0000000..ac6a933
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ContextItem.c
@@ -0,0 +1,113 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-ContextItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_ContextItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ContextItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 5, offsetof(struct RANAP_RAB_ContextItem, dl_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_ContextItem, ul_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ul-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_ContextItem, dl_N_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_N_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-N-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_ContextItem, ul_N_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_N_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ul-N-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_ContextItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_ContextItem_oms_1[] = { 1, 2, 3, 4, 5 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_ContextItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_ContextItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ul-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* dl-N-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* ul-N-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_ContextItem_specs_1 = {
+	sizeof(struct RANAP_RAB_ContextItem),
+	offsetof(struct RANAP_RAB_ContextItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_ContextItem_tag2el_1,
+	6,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_ContextItem_oms_1,	/* Optional members */
+	5, 0,	/* Root/Additions */
+	5,	/* Start extensions */
+	7	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ContextItem = {
+	"RANAP_RAB-ContextItem",
+	"RANAP_RAB-ContextItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_ContextItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_ContextItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ContextItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_ContextItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_ContextItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ContextItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_ContextItem_1,
+	6,	/* Elements count */
+	&asn_SPC_RANAP_RAB_ContextItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-ContextItem.h b/src/ranap/RANAP_RAB-ContextItem.h
new file mode 100644
index 0000000..b47e65a
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ContextItem.h
@@ -0,0 +1,51 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ContextItem_H_
+#define	_RANAP_RAB_ContextItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_DL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_UL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_DL-N-PDU-SequenceNumber.h"
+#include "RANAP_UL-N-PDU-SequenceNumber.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ContextItem */
+typedef struct RANAP_RAB_ContextItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_DL_GTP_PDU_SequenceNumber_t	*dl_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_GTP_PDU_SequenceNumber_t	*ul_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_DL_N_PDU_SequenceNumber_t	*dl_N_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_N_PDU_SequenceNumber_t	*ul_N_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_ContextItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ContextItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ContextItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-DataForwardingItem.c b/src/ranap/RANAP_RAB-DataForwardingItem.c
new file mode 100644
index 0000000..9cab43c
--- /dev/null
+++ b/src/ranap/RANAP_RAB-DataForwardingItem.c
@@ -0,0 +1,93 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-DataForwardingItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_DataForwardingItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_DataForwardingItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_DataForwardingItem, transportLayerAddress),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddress"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_DataForwardingItem, iuTransportAssociation),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociation"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_DataForwardingItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_DataForwardingItem_oms_1[] = { 3 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_DataForwardingItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_DataForwardingItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* transportLayerAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iuTransportAssociation */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_DataForwardingItem_specs_1 = {
+	sizeof(struct RANAP_RAB_DataForwardingItem),
+	offsetof(struct RANAP_RAB_DataForwardingItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_DataForwardingItem_tag2el_1,
+	4,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_DataForwardingItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	3,	/* Start extensions */
+	5	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_DataForwardingItem = {
+	"RANAP_RAB-DataForwardingItem",
+	"RANAP_RAB-DataForwardingItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_DataForwardingItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_DataForwardingItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_DataForwardingItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_DataForwardingItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_DataForwardingItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_DataForwardingItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_DataForwardingItem_1,
+	4,	/* Elements count */
+	&asn_SPC_RANAP_RAB_DataForwardingItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-DataForwardingItem.h b/src/ranap/RANAP_RAB-DataForwardingItem.h
new file mode 100644
index 0000000..21356e3
--- /dev/null
+++ b/src/ranap/RANAP_RAB-DataForwardingItem.h
@@ -0,0 +1,47 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_DataForwardingItem_H_
+#define	_RANAP_RAB_DataForwardingItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-DataForwardingItem */
+typedef struct RANAP_RAB_DataForwardingItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_TransportLayerAddress_t	 transportLayerAddress;
+	RANAP_IuTransportAssociation_t	 iuTransportAssociation;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_DataForwardingItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_DataForwardingItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_DataForwardingItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-DataVolumeReportItem.c b/src/ranap/RANAP_RAB-DataVolumeReportItem.c
new file mode 100644
index 0000000..e130544
--- /dev/null
+++ b/src/ranap/RANAP_RAB-DataVolumeReportItem.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-DataVolumeReportItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_DataVolumeReportItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_DataVolumeReportItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_DataVolumeReportItem, dl_UnsuccessfullyTransmittedDataVolume),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DataVolumeList,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-UnsuccessfullyTransmittedDataVolume"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_DataVolumeReportItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_DataVolumeReportItem_oms_1[] = { 1, 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_DataVolumeReportItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_DataVolumeReportItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-UnsuccessfullyTransmittedDataVolume */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_DataVolumeReportItem_specs_1 = {
+	sizeof(struct RANAP_RAB_DataVolumeReportItem),
+	offsetof(struct RANAP_RAB_DataVolumeReportItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_DataVolumeReportItem_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_DataVolumeReportItem_oms_1,	/* Optional members */
+	2, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_DataVolumeReportItem = {
+	"RANAP_RAB-DataVolumeReportItem",
+	"RANAP_RAB-DataVolumeReportItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_DataVolumeReportItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_DataVolumeReportItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_DataVolumeReportItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_DataVolumeReportItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_DataVolumeReportItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_DataVolumeReportItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_DataVolumeReportItem_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_RAB_DataVolumeReportItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-DataVolumeReportItem.h b/src/ranap/RANAP_RAB-DataVolumeReportItem.h
new file mode 100644
index 0000000..54f815a
--- /dev/null
+++ b/src/ranap/RANAP_RAB-DataVolumeReportItem.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_DataVolumeReportItem_H_
+#define	_RANAP_RAB_DataVolumeReportItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_DataVolumeList.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-DataVolumeReportItem */
+typedef struct RANAP_RAB_DataVolumeReportItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_DataVolumeList_t	*dl_UnsuccessfullyTransmittedDataVolume	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_DataVolumeReportItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_DataVolumeReportItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_DataVolumeReportItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-DataVolumeReportList.c b/src/ranap/RANAP_RAB-DataVolumeReportList.c
new file mode 100644
index 0000000..ccfeda6
--- /dev/null
+++ b/src/ranap/RANAP_RAB-DataVolumeReportList.c
@@ -0,0 +1,145 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-DataVolumeReportList.h"
+
+static int
+memb_rabDataVolumeReportList_ies_constraint_1(asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	size_t size;
+	
+	if(!sptr) {
+		_ASN_CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	/* Determine the number of elements */
+	size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
+	
+	if((size <= 65535l)) {
+		/* Perform validation of the inner elements */
+		return td->check_constraints(td, sptr, ctfailcb, app_key);
+	} else {
+		_ASN_CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_per_constraints_t asn_PER_type_rabDataVolumeReportList_ies_constr_2 GCC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 16,  16,  0l,  65535l }	/* (SIZE(0..65535)) */,
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_rabDataVolumeReportList_ies_constr_2 GCC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 16,  16,  0l,  65535l }	/* (SIZE(0..65535)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_rabDataVolumeReportList_ies_2[] = {
+	{ ATF_POINTER, 0, 0,
+		-1 /* Ambiguous tag (CHOICE?) */,
+		0,
+		&asn_DEF_RANAP_IE,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_rabDataVolumeReportList_ies_tags_2[] = {
+	(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_rabDataVolumeReportList_ies_specs_2 = {
+	sizeof(struct rabDataVolumeReportList_ies),
+	offsetof(struct rabDataVolumeReportList_ies, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_rabDataVolumeReportList_ies_2 = {
+	"rabDataVolumeReportList-ies",
+	"rabDataVolumeReportList-ies",
+	SEQUENCE_OF_free,
+	SEQUENCE_OF_print,
+	SEQUENCE_OF_constraint,
+	SEQUENCE_OF_decode_ber,
+	SEQUENCE_OF_encode_der,
+	SEQUENCE_OF_decode_xer,
+	SEQUENCE_OF_encode_xer,
+	SEQUENCE_OF_decode_uper,
+	SEQUENCE_OF_encode_uper,
+	SEQUENCE_OF_decode_aper,
+	SEQUENCE_OF_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_rabDataVolumeReportList_ies_tags_2,
+	sizeof(asn_DEF_rabDataVolumeReportList_ies_tags_2)
+		/sizeof(asn_DEF_rabDataVolumeReportList_ies_tags_2[0]) - 1, /* 1 */
+	asn_DEF_rabDataVolumeReportList_ies_tags_2,	/* Same as above */
+	sizeof(asn_DEF_rabDataVolumeReportList_ies_tags_2)
+		/sizeof(asn_DEF_rabDataVolumeReportList_ies_tags_2[0]), /* 2 */
+	&asn_PER_type_rabDataVolumeReportList_ies_constr_2,
+	asn_MBR_rabDataVolumeReportList_ies_2,
+	1,	/* Single element */
+	&asn_SPC_rabDataVolumeReportList_ies_specs_2	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_DataVolumeReportList_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_DataVolumeReportList, rabDataVolumeReportList_ies),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		0,
+		&asn_DEF_rabDataVolumeReportList_ies_2,
+		memb_rabDataVolumeReportList_ies_constraint_1,
+		&asn_PER_memb_rabDataVolumeReportList_ies_constr_2,
+		0,
+		"rabDataVolumeReportList-ies"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_DataVolumeReportList_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_DataVolumeReportList_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* rabDataVolumeReportList-ies */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_DataVolumeReportList_specs_1 = {
+	sizeof(struct RANAP_RAB_DataVolumeReportList),
+	offsetof(struct RANAP_RAB_DataVolumeReportList, _asn_ctx),
+	asn_MAP_RANAP_RAB_DataVolumeReportList_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	0,	/* Start extensions */
+	2	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_DataVolumeReportList = {
+	"RANAP_RAB-DataVolumeReportList",
+	"RANAP_RAB-DataVolumeReportList",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_DataVolumeReportList_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_DataVolumeReportList_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_DataVolumeReportList_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_DataVolumeReportList_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_DataVolumeReportList_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_DataVolumeReportList_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_DataVolumeReportList_1,
+	1,	/* Elements count */
+	&asn_SPC_RANAP_RAB_DataVolumeReportList_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-DataVolumeReportList.h b/src/ranap/RANAP_RAB-DataVolumeReportList.h
new file mode 100644
index 0000000..1876054
--- /dev/null
+++ b/src/ranap/RANAP_RAB-DataVolumeReportList.h
@@ -0,0 +1,48 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_DataVolumeReportList_H_
+#define	_RANAP_RAB_DataVolumeReportList_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_IE.h"
+#include <asn_SEQUENCE_OF.h>
+#include <constr_SEQUENCE_OF.h>
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-DataVolumeReportList */
+typedef struct RANAP_RAB_DataVolumeReportList {
+	struct rabDataVolumeReportList_ies {
+		A_SEQUENCE_OF(RANAP_IE_t) list;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} rabDataVolumeReportList_ies;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_DataVolumeReportList_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_DataVolumeReportList;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_DataVolumeReportList_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-FailedItem-EnhRelocInfoRes.c b/src/ranap/RANAP_RAB-FailedItem-EnhRelocInfoRes.c
new file mode 100644
index 0000000..ab8491e
--- /dev/null
+++ b/src/ranap/RANAP_RAB-FailedItem-EnhRelocInfoRes.c
@@ -0,0 +1,93 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-FailedItem-EnhRelocInfoRes.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_FailedItem_EnhRelocInfoRes_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_FailedItem_EnhRelocInfoRes, cN_DomainIndicator),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_CN_DomainIndicator,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cN-DomainIndicator"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_FailedItem_EnhRelocInfoRes, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_FailedItem_EnhRelocInfoRes, cause),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_FailedItem_EnhRelocInfoRes, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_FailedItem_EnhRelocInfoRes_oms_1[] = { 3 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_FailedItem_EnhRelocInfoRes_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cN-DomainIndicator */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_FailedItem_EnhRelocInfoRes_specs_1 = {
+	sizeof(struct RANAP_RAB_FailedItem_EnhRelocInfoRes),
+	offsetof(struct RANAP_RAB_FailedItem_EnhRelocInfoRes, _asn_ctx),
+	asn_MAP_RANAP_RAB_FailedItem_EnhRelocInfoRes_tag2el_1,
+	4,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_FailedItem_EnhRelocInfoRes_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	3,	/* Start extensions */
+	5	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes = {
+	"RANAP_RAB-FailedItem-EnhRelocInfoRes",
+	"RANAP_RAB-FailedItem-EnhRelocInfoRes",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_FailedItem_EnhRelocInfoRes_1,
+	4,	/* Elements count */
+	&asn_SPC_RANAP_RAB_FailedItem_EnhRelocInfoRes_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-FailedItem-EnhRelocInfoRes.h b/src/ranap/RANAP_RAB-FailedItem-EnhRelocInfoRes.h
new file mode 100644
index 0000000..a2aa5f5
--- /dev/null
+++ b/src/ranap/RANAP_RAB-FailedItem-EnhRelocInfoRes.h
@@ -0,0 +1,47 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_FailedItem_EnhRelocInfoRes_H_
+#define	_RANAP_RAB_FailedItem_EnhRelocInfoRes_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_CN-DomainIndicator.h"
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Cause.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-FailedItem-EnhRelocInfoRes */
+typedef struct RANAP_RAB_FailedItem_EnhRelocInfoRes {
+	RANAP_CN_DomainIndicator_t	 cN_DomainIndicator;
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Cause_t	 cause;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_FailedItem_EnhRelocInfoRes_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_FailedItem_EnhRelocInfoRes;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_FailedItem_EnhRelocInfoRes_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-FailedItem.c b/src/ranap/RANAP_RAB-FailedItem.c
new file mode 100644
index 0000000..95f8b5a
--- /dev/null
+++ b/src/ranap/RANAP_RAB-FailedItem.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-FailedItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_FailedItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_FailedItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_FailedItem, cause),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_FailedItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_FailedItem_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_FailedItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_FailedItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_FailedItem_specs_1 = {
+	sizeof(struct RANAP_RAB_FailedItem),
+	offsetof(struct RANAP_RAB_FailedItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_FailedItem_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_FailedItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_FailedItem = {
+	"RANAP_RAB-FailedItem",
+	"RANAP_RAB-FailedItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_FailedItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_FailedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_FailedItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_FailedItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_FailedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_FailedItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_FailedItem_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_RAB_FailedItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-FailedItem.h b/src/ranap/RANAP_RAB-FailedItem.h
new file mode 100644
index 0000000..07ef044
--- /dev/null
+++ b/src/ranap/RANAP_RAB-FailedItem.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_FailedItem_H_
+#define	_RANAP_RAB_FailedItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Cause.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-FailedItem */
+typedef struct RANAP_RAB_FailedItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Cause_t	 cause;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_FailedItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_FailedItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_FailedItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ModifyItem.c b/src/ranap/RANAP_RAB-ModifyItem.c
new file mode 100644
index 0000000..f254689
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ModifyItem.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-ModifyItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_ModifyItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ModifyItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ModifyItem, requested_RAB_Parameter_Values),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Requested_RAB_Parameter_Values,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"requested-RAB-Parameter-Values"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_ModifyItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_ModifyItem_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_ModifyItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_ModifyItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* requested-RAB-Parameter-Values */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_ModifyItem_specs_1 = {
+	sizeof(struct RANAP_RAB_ModifyItem),
+	offsetof(struct RANAP_RAB_ModifyItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_ModifyItem_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_ModifyItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ModifyItem = {
+	"RANAP_RAB-ModifyItem",
+	"RANAP_RAB-ModifyItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_ModifyItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_ModifyItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ModifyItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_ModifyItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_ModifyItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ModifyItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_ModifyItem_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_RAB_ModifyItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-ModifyItem.h b/src/ranap/RANAP_RAB-ModifyItem.h
new file mode 100644
index 0000000..7963cfa
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ModifyItem.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ModifyItem_H_
+#define	_RANAP_RAB_ModifyItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Requested-RAB-Parameter-Values.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ModifyItem */
+typedef struct RANAP_RAB_ModifyItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Requested_RAB_Parameter_Values_t	 requested_RAB_Parameter_Values;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_ModifyItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ModifyItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ModifyItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-QueuedItem.c b/src/ranap/RANAP_RAB-QueuedItem.c
new file mode 100644
index 0000000..8777f40
--- /dev/null
+++ b/src/ranap/RANAP_RAB-QueuedItem.c
@@ -0,0 +1,73 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-QueuedItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_QueuedItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_QueuedItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_QueuedItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_QueuedItem_oms_1[] = { 1 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_QueuedItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_QueuedItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_QueuedItem_specs_1 = {
+	sizeof(struct RANAP_RAB_QueuedItem),
+	offsetof(struct RANAP_RAB_QueuedItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_QueuedItem_tag2el_1,
+	2,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_QueuedItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	1,	/* Start extensions */
+	3	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_QueuedItem = {
+	"RANAP_RAB-QueuedItem",
+	"RANAP_RAB-QueuedItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_QueuedItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_QueuedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_QueuedItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_QueuedItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_QueuedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_QueuedItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_QueuedItem_1,
+	2,	/* Elements count */
+	&asn_SPC_RANAP_RAB_QueuedItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-QueuedItem.h b/src/ranap/RANAP_RAB-QueuedItem.h
new file mode 100644
index 0000000..beed3c1
--- /dev/null
+++ b/src/ranap/RANAP_RAB-QueuedItem.h
@@ -0,0 +1,43 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_QueuedItem_H_
+#define	_RANAP_RAB_QueuedItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-QueuedItem */
+typedef struct RANAP_RAB_QueuedItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_QueuedItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_QueuedItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_QueuedItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ReleaseFailedList.c b/src/ranap/RANAP_RAB-ReleaseFailedList.c
new file mode 100644
index 0000000..1b05839
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleaseFailedList.c
@@ -0,0 +1,145 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+#include <constr_CHOICE.h>
+
+#include "RANAP_RAB-ReleaseFailedList.h"
+
+int
+RANAP_RAB_ReleaseFailedList_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	/* Replace with underlying type checker */
+	td->check_constraints = asn_DEF_RANAP_RAB_FailedList.check_constraints;
+	return td->check_constraints(td, sptr, ctfailcb, app_key);
+}
+
+/*
+ * This type is implemented using RANAP_RAB_FailedList,
+ * so here we adjust the DEF accordingly.
+ */
+static void
+RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(asn_TYPE_descriptor_t *td) {
+	td->free_struct    = asn_DEF_RANAP_RAB_FailedList.free_struct;
+	td->print_struct   = asn_DEF_RANAP_RAB_FailedList.print_struct;
+	td->check_constraints = asn_DEF_RANAP_RAB_FailedList.check_constraints;
+	td->ber_decoder    = asn_DEF_RANAP_RAB_FailedList.ber_decoder;
+	td->der_encoder    = asn_DEF_RANAP_RAB_FailedList.der_encoder;
+	td->xer_decoder    = asn_DEF_RANAP_RAB_FailedList.xer_decoder;
+	td->xer_encoder    = asn_DEF_RANAP_RAB_FailedList.xer_encoder;
+	td->uper_decoder   = asn_DEF_RANAP_RAB_FailedList.uper_decoder;
+	td->uper_encoder   = asn_DEF_RANAP_RAB_FailedList.uper_encoder;
+	td->aper_decoder   = asn_DEF_RANAP_RAB_FailedList.aper_decoder;
+	td->aper_encoder   = asn_DEF_RANAP_RAB_FailedList.aper_encoder;
+	/* The next four lines are here because of -fknown-extern-type */
+	td->tags           = asn_DEF_RANAP_RAB_FailedList.tags;
+	td->tags_count     = asn_DEF_RANAP_RAB_FailedList.tags_count;
+	td->all_tags       = asn_DEF_RANAP_RAB_FailedList.all_tags;
+	td->all_tags_count = asn_DEF_RANAP_RAB_FailedList.all_tags_count;
+	/* End of these lines */
+	if(!td->per_constraints)
+		td->per_constraints = asn_DEF_RANAP_RAB_FailedList.per_constraints;
+	td->elements       = asn_DEF_RANAP_RAB_FailedList.elements;
+	td->elements_count = asn_DEF_RANAP_RAB_FailedList.elements_count;
+	td->specifics      = asn_DEF_RANAP_RAB_FailedList.specifics;
+}
+
+void
+RANAP_RAB_ReleaseFailedList_free(asn_TYPE_descriptor_t *td,
+		void *struct_ptr, int contents_only) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	td->free_struct(td, struct_ptr, contents_only);
+}
+
+int
+RANAP_RAB_ReleaseFailedList_print(asn_TYPE_descriptor_t *td, const void *struct_ptr,
+		int ilevel, asn_app_consume_bytes_f *cb, void *app_key) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->print_struct(td, struct_ptr, ilevel, cb, app_key);
+}
+
+asn_dec_rval_t
+RANAP_RAB_ReleaseFailedList_decode_ber(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
+		void **structure, const void *bufptr, size_t size, int tag_mode) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->ber_decoder(opt_codec_ctx, td, structure, bufptr, size, tag_mode);
+}
+
+asn_enc_rval_t
+RANAP_RAB_ReleaseFailedList_encode_der(asn_TYPE_descriptor_t *td,
+		void *structure, int tag_mode, ber_tlv_tag_t tag,
+		asn_app_consume_bytes_f *cb, void *app_key) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->der_encoder(td, structure, tag_mode, tag, cb, app_key);
+}
+
+asn_dec_rval_t
+RANAP_RAB_ReleaseFailedList_decode_xer(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
+		void **structure, const char *opt_mname, const void *bufptr, size_t size) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->xer_decoder(opt_codec_ctx, td, structure, opt_mname, bufptr, size);
+}
+
+asn_enc_rval_t
+RANAP_RAB_ReleaseFailedList_encode_xer(asn_TYPE_descriptor_t *td, void *structure,
+		int ilevel, enum xer_encoder_flags_e flags,
+		asn_app_consume_bytes_f *cb, void *app_key) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->xer_encoder(td, structure, ilevel, flags, cb, app_key);
+}
+
+asn_dec_rval_t
+RANAP_RAB_ReleaseFailedList_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
+		asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->uper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
+}
+
+asn_enc_rval_t
+RANAP_RAB_ReleaseFailedList_encode_uper(asn_TYPE_descriptor_t *td,
+		asn_per_constraints_t *constraints,
+		void *structure, asn_per_outp_t *per_out) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->uper_encoder(td, constraints, structure, per_out);
+}
+
+asn_enc_rval_t
+RANAP_RAB_ReleaseFailedList_encode_aper(asn_TYPE_descriptor_t *td,
+		asn_per_constraints_t *constraints,
+		void *structure, asn_per_outp_t *per_out) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->aper_encoder(td, constraints, structure, per_out);
+}
+
+asn_dec_rval_t
+RANAP_RAB_ReleaseFailedList_decode_aper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
+		asn_per_constraints_t *constraints, void **structure, asn_per_data_t *per_data) {
+	RANAP_RAB_ReleaseFailedList_1_inherit_TYPE_descriptor(td);
+	return td->aper_decoder(opt_codec_ctx, td, constraints, structure, per_data);
+}
+
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleaseFailedList = {
+	"RANAP_RAB-ReleaseFailedList",
+	"RANAP_RAB-ReleaseFailedList",
+	RANAP_RAB_ReleaseFailedList_free,
+	RANAP_RAB_ReleaseFailedList_print,
+	RANAP_RAB_ReleaseFailedList_constraint,
+	RANAP_RAB_ReleaseFailedList_decode_ber,
+	RANAP_RAB_ReleaseFailedList_encode_der,
+	RANAP_RAB_ReleaseFailedList_decode_xer,
+	RANAP_RAB_ReleaseFailedList_encode_xer,
+	RANAP_RAB_ReleaseFailedList_decode_uper,
+	RANAP_RAB_ReleaseFailedList_encode_uper,
+	RANAP_RAB_ReleaseFailedList_decode_aper,
+	RANAP_RAB_ReleaseFailedList_encode_aper,
+	CHOICE_outmost_tag,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	0,	/* No PER visible constraints */
+	0, 0,	/* No members */
+	0	/* No specifics */
+};
+
diff --git a/src/ranap/RANAP_RAB-ReleaseFailedList.h b/src/ranap/RANAP_RAB-ReleaseFailedList.h
new file mode 100644
index 0000000..489720a
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleaseFailedList.h
@@ -0,0 +1,42 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ReleaseFailedList_H_
+#define	_RANAP_RAB_ReleaseFailedList_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-FailedList.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ReleaseFailedList */
+typedef RANAP_RAB_FailedList_t	 RANAP_RAB_ReleaseFailedList_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleaseFailedList;
+asn_struct_free_f RANAP_RAB_ReleaseFailedList_free;
+asn_struct_print_f RANAP_RAB_ReleaseFailedList_print;
+asn_constr_check_f RANAP_RAB_ReleaseFailedList_constraint;
+ber_type_decoder_f RANAP_RAB_ReleaseFailedList_decode_ber;
+der_type_encoder_f RANAP_RAB_ReleaseFailedList_encode_der;
+xer_type_decoder_f RANAP_RAB_ReleaseFailedList_decode_xer;
+xer_type_encoder_f RANAP_RAB_ReleaseFailedList_encode_xer;
+per_type_decoder_f RANAP_RAB_ReleaseFailedList_decode_uper;
+per_type_encoder_f RANAP_RAB_ReleaseFailedList_encode_uper;
+per_type_decoder_f RANAP_RAB_ReleaseFailedList_decode_aper;
+per_type_encoder_f RANAP_RAB_ReleaseFailedList_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ReleaseFailedList_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ReleaseItem.c b/src/ranap/RANAP_RAB-ReleaseItem.c
new file mode 100644
index 0000000..da16d72
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleaseItem.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-ReleaseItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_ReleaseItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ReleaseItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ReleaseItem, cause),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_ReleaseItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_ReleaseItem_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_ReleaseItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_ReleaseItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_ReleaseItem_specs_1 = {
+	sizeof(struct RANAP_RAB_ReleaseItem),
+	offsetof(struct RANAP_RAB_ReleaseItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_ReleaseItem_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_ReleaseItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleaseItem = {
+	"RANAP_RAB-ReleaseItem",
+	"RANAP_RAB-ReleaseItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_ReleaseItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_ReleaseItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ReleaseItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_ReleaseItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_ReleaseItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ReleaseItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_ReleaseItem_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_RAB_ReleaseItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-ReleaseItem.h b/src/ranap/RANAP_RAB-ReleaseItem.h
new file mode 100644
index 0000000..b0bc3b6
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleaseItem.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ReleaseItem_H_
+#define	_RANAP_RAB_ReleaseItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Cause.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ReleaseItem */
+typedef struct RANAP_RAB_ReleaseItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Cause_t	 cause;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_ReleaseItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleaseItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ReleaseItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ReleasedItem-IuRelComp.c b/src/ranap/RANAP_RAB-ReleasedItem-IuRelComp.c
new file mode 100644
index 0000000..99d3e9e
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleasedItem-IuRelComp.c
@@ -0,0 +1,93 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-ReleasedItem-IuRelComp.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_ReleasedItem_IuRelComp_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ReleasedItem_IuRelComp, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_ReleasedItem_IuRelComp, dL_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dL-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_ReleasedItem_IuRelComp, uL_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"uL-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_ReleasedItem_IuRelComp, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_ReleasedItem_IuRelComp_oms_1[] = { 1, 2, 3 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_ReleasedItem_IuRelComp_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dL-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* uL-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_ReleasedItem_IuRelComp_specs_1 = {
+	sizeof(struct RANAP_RAB_ReleasedItem_IuRelComp),
+	offsetof(struct RANAP_RAB_ReleasedItem_IuRelComp, _asn_ctx),
+	asn_MAP_RANAP_RAB_ReleasedItem_IuRelComp_tag2el_1,
+	4,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_ReleasedItem_IuRelComp_oms_1,	/* Optional members */
+	3, 0,	/* Root/Additions */
+	3,	/* Start extensions */
+	5	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp = {
+	"RANAP_RAB-ReleasedItem-IuRelComp",
+	"RANAP_RAB-ReleasedItem-IuRelComp",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_ReleasedItem_IuRelComp_1,
+	4,	/* Elements count */
+	&asn_SPC_RANAP_RAB_ReleasedItem_IuRelComp_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-ReleasedItem-IuRelComp.h b/src/ranap/RANAP_RAB-ReleasedItem-IuRelComp.h
new file mode 100644
index 0000000..d5da048
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleasedItem-IuRelComp.h
@@ -0,0 +1,47 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ReleasedItem_IuRelComp_H_
+#define	_RANAP_RAB_ReleasedItem_IuRelComp_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_DL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_UL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ReleasedItem-IuRelComp */
+typedef struct RANAP_RAB_ReleasedItem_IuRelComp {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_DL_GTP_PDU_SequenceNumber_t	*dL_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_GTP_PDU_SequenceNumber_t	*uL_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_ReleasedItem_IuRelComp_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleasedItem_IuRelComp;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ReleasedItem_IuRelComp_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ReleasedItem.c b/src/ranap/RANAP_RAB-ReleasedItem.c
new file mode 100644
index 0000000..54c1a60
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleasedItem.c
@@ -0,0 +1,103 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-ReleasedItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_ReleasedItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ReleasedItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_ReleasedItem, dl_dataVolumes),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DataVolumeList,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-dataVolumes"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_ReleasedItem, dL_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dL-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_ReleasedItem, uL_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"uL-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_ReleasedItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_ReleasedItem_oms_1[] = { 1, 2, 3, 4 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_ReleasedItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_ReleasedItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-dataVolumes */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* dL-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* uL-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_ReleasedItem_specs_1 = {
+	sizeof(struct RANAP_RAB_ReleasedItem),
+	offsetof(struct RANAP_RAB_ReleasedItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_ReleasedItem_tag2el_1,
+	5,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_ReleasedItem_oms_1,	/* Optional members */
+	4, 0,	/* Root/Additions */
+	4,	/* Start extensions */
+	6	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleasedItem = {
+	"RANAP_RAB-ReleasedItem",
+	"RANAP_RAB-ReleasedItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_ReleasedItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_ReleasedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ReleasedItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_ReleasedItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_ReleasedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ReleasedItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_ReleasedItem_1,
+	5,	/* Elements count */
+	&asn_SPC_RANAP_RAB_ReleasedItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-ReleasedItem.h b/src/ranap/RANAP_RAB-ReleasedItem.h
new file mode 100644
index 0000000..0c3db59
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ReleasedItem.h
@@ -0,0 +1,49 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ReleasedItem_H_
+#define	_RANAP_RAB_ReleasedItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_DataVolumeList.h"
+#include "RANAP_DL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_UL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ReleasedItem */
+typedef struct RANAP_RAB_ReleasedItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_DataVolumeList_t	*dl_dataVolumes	/* OPTIONAL */;
+	RANAP_DL_GTP_PDU_SequenceNumber_t	*dL_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_GTP_PDU_SequenceNumber_t	*uL_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_ReleasedItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ReleasedItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ReleasedItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-RelocationReleaseItem.c b/src/ranap/RANAP_RAB-RelocationReleaseItem.c
new file mode 100644
index 0000000..02590d2
--- /dev/null
+++ b/src/ranap/RANAP_RAB-RelocationReleaseItem.c
@@ -0,0 +1,73 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-RelocationReleaseItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_RelocationReleaseItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_RelocationReleaseItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_RelocationReleaseItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_RelocationReleaseItem_oms_1[] = { 1 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_RelocationReleaseItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_RelocationReleaseItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_RelocationReleaseItem_specs_1 = {
+	sizeof(struct RANAP_RAB_RelocationReleaseItem),
+	offsetof(struct RANAP_RAB_RelocationReleaseItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_RelocationReleaseItem_tag2el_1,
+	2,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_RelocationReleaseItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	1,	/* Start extensions */
+	3	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_RelocationReleaseItem = {
+	"RANAP_RAB-RelocationReleaseItem",
+	"RANAP_RAB-RelocationReleaseItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_RelocationReleaseItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_RelocationReleaseItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_RelocationReleaseItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_RelocationReleaseItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_RelocationReleaseItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_RelocationReleaseItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_RelocationReleaseItem_1,
+	2,	/* Elements count */
+	&asn_SPC_RANAP_RAB_RelocationReleaseItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-RelocationReleaseItem.h b/src/ranap/RANAP_RAB-RelocationReleaseItem.h
new file mode 100644
index 0000000..c429332
--- /dev/null
+++ b/src/ranap/RANAP_RAB-RelocationReleaseItem.h
@@ -0,0 +1,43 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_RelocationReleaseItem_H_
+#define	_RANAP_RAB_RelocationReleaseItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-RelocationReleaseItem */
+typedef struct RANAP_RAB_RelocationReleaseItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_RelocationReleaseItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_RelocationReleaseItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_RelocationReleaseItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoReq.c b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoReq.c
new file mode 100644
index 0000000..9bafc6f
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoReq.c
@@ -0,0 +1,163 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupItem-EnhRelocInfoReq.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupItem_EnhRelocInfoReq_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, cN_DomainIndicator),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_CN_DomainIndicator,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cN-DomainIndicator"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, rAB_Parameters),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_Parameters,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-Parameters"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, dataVolumeReportingIndication),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DataVolumeReportingIndication,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dataVolumeReportingIndication"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, pDP_TypeInformation),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_PDP_TypeInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"pDP-TypeInformation"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, userPlaneInformation),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UserPlaneInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"userPlaneInformation"
+		},
+	{ ATF_POINTER, 5, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, dataForwardingInformation),
+		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TNLInformationEnhRelInfoReq,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dataForwardingInformation"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, sourceSideIuULTNLInfo),
+		(ASN_TAG_CLASS_CONTEXT | (7 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TNLInformationEnhRelInfoReq,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"sourceSideIuULTNLInfo"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, service_Handover),
+		(ASN_TAG_CLASS_CONTEXT | (8 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Service_Handover,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"service-Handover"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, alt_RAB_Parameters),
+		(ASN_TAG_CLASS_CONTEXT | (9 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Alt_RAB_Parameters,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"alt-RAB-Parameters"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (10 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoReq_oms_1[] = { 3, 4, 6, 7, 8, 9, 10 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoReq_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cN-DomainIndicator */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rAB-Parameters */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* dataVolumeReportingIndication */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pDP-TypeInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* userPlaneInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* dataForwardingInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* sourceSideIuULTNLInfo */
+    { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* service-Handover */
+    { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* alt-RAB-Parameters */
+    { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupItem_EnhRelocInfoReq_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq),
+	offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoReq, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoReq_tag2el_1,
+	11,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoReq_oms_1,	/* Optional members */
+	7, 0,	/* Root/Additions */
+	10,	/* Start extensions */
+	12	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq = {
+	"RANAP_RAB-SetupItem-EnhRelocInfoReq",
+	"RANAP_RAB-SetupItem-EnhRelocInfoReq",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupItem_EnhRelocInfoReq_1,
+	11,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupItem_EnhRelocInfoReq_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoReq.h b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoReq.h
new file mode 100644
index 0000000..6082fa7
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoReq.h
@@ -0,0 +1,60 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupItem_EnhRelocInfoReq_H_
+#define	_RANAP_RAB_SetupItem_EnhRelocInfoReq_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_CN-DomainIndicator.h"
+#include "RANAP_RAB-Parameters.h"
+#include "RANAP_DataVolumeReportingIndication.h"
+#include "RANAP_PDP-TypeInformation.h"
+#include "RANAP_UserPlaneInformation.h"
+#include "RANAP_TNLInformationEnhRelInfoReq.h"
+#include "RANAP_Service-Handover.h"
+#include "RANAP_Alt-RAB-Parameters.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupItem-EnhRelocInfoReq */
+typedef struct RANAP_RAB_SetupItem_EnhRelocInfoReq {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_CN_DomainIndicator_t	 cN_DomainIndicator;
+	RANAP_RAB_Parameters_t	 rAB_Parameters;
+	RANAP_DataVolumeReportingIndication_t	*dataVolumeReportingIndication	/* OPTIONAL */;
+	RANAP_PDP_TypeInformation_t	*pDP_TypeInformation	/* OPTIONAL */;
+	RANAP_UserPlaneInformation_t	 userPlaneInformation;
+	RANAP_TNLInformationEnhRelInfoReq_t	*dataForwardingInformation	/* OPTIONAL */;
+	RANAP_TNLInformationEnhRelInfoReq_t	*sourceSideIuULTNLInfo	/* OPTIONAL */;
+	RANAP_Service_Handover_t	*service_Handover	/* OPTIONAL */;
+	RANAP_Alt_RAB_Parameters_t	*alt_RAB_Parameters	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupItem_EnhRelocInfoReq_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoReq;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupItem_EnhRelocInfoReq_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoRes.c b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoRes.c
new file mode 100644
index 0000000..2534392
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoRes.c
@@ -0,0 +1,103 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupItem-EnhRelocInfoRes.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupItem_EnhRelocInfoRes_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoRes, cN_DomainIndicator),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_CN_DomainIndicator,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cN-DomainIndicator"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoRes, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoRes, dataForwardingInformation),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TNLInformationEnhRelInfoRes,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dataForwardingInformation"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoRes, ass_RAB_Parameters),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Ass_RAB_Parameters,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ass-RAB-Parameters"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoRes, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoRes_oms_1[] = { 2, 3, 4 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoRes_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cN-DomainIndicator */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* dataForwardingInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ass-RAB-Parameters */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupItem_EnhRelocInfoRes_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupItem_EnhRelocInfoRes),
+	offsetof(struct RANAP_RAB_SetupItem_EnhRelocInfoRes, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoRes_tag2el_1,
+	5,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupItem_EnhRelocInfoRes_oms_1,	/* Optional members */
+	3, 0,	/* Root/Additions */
+	4,	/* Start extensions */
+	6	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes = {
+	"RANAP_RAB-SetupItem-EnhRelocInfoRes",
+	"RANAP_RAB-SetupItem-EnhRelocInfoRes",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupItem_EnhRelocInfoRes_1,
+	5,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupItem_EnhRelocInfoRes_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoRes.h b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoRes.h
new file mode 100644
index 0000000..64d5e7a
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhRelocInfoRes.h
@@ -0,0 +1,49 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupItem_EnhRelocInfoRes_H_
+#define	_RANAP_RAB_SetupItem_EnhRelocInfoRes_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_CN-DomainIndicator.h"
+#include "RANAP_RAB-ID.h"
+#include "RANAP_TNLInformationEnhRelInfoRes.h"
+#include "RANAP_Ass-RAB-Parameters.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupItem-EnhRelocInfoRes */
+typedef struct RANAP_RAB_SetupItem_EnhRelocInfoRes {
+	RANAP_CN_DomainIndicator_t	 cN_DomainIndicator;
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_TNLInformationEnhRelInfoRes_t	*dataForwardingInformation	/* OPTIONAL */;
+	RANAP_Ass_RAB_Parameters_t	*ass_RAB_Parameters	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupItem_EnhRelocInfoRes_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhRelocInfoRes;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupItem_EnhRelocInfoRes_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.c b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.c
new file mode 100644
index 0000000..bae9322
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.c
@@ -0,0 +1,103 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq, transportLayerAddressReq1),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddressReq1"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq, iuTransportAssociationReq1),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociationReq1"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq, ass_RAB_Parameters),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Ass_RAB_Parameters,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ass-RAB-Parameters"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_oms_1[] = { 1, 2, 3, 4 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* transportLayerAddressReq1 */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iuTransportAssociationReq1 */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ass-RAB-Parameters */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq),
+	offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tag2el_1,
+	5,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_oms_1,	/* Optional members */
+	4, 0,	/* Root/Additions */
+	4,	/* Start extensions */
+	6	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq = {
+	"RANAP_RAB-SetupItem-EnhancedRelocCompleteReq",
+	"RANAP_RAB-SetupItem-EnhancedRelocCompleteReq",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_1,
+	5,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.h b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.h
new file mode 100644
index 0000000..dc36157
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteReq.h
@@ -0,0 +1,49 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_H_
+#define	_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_Ass-RAB-Parameters.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupItem-EnhancedRelocCompleteReq */
+typedef struct RANAP_RAB_SetupItem_EnhancedRelocCompleteReq {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_TransportLayerAddress_t	*transportLayerAddressReq1	/* OPTIONAL */;
+	RANAP_IuTransportAssociation_t	*iuTransportAssociationReq1	/* OPTIONAL */;
+	RANAP_Ass_RAB_Parameters_t	*ass_RAB_Parameters	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteReq;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupItem_EnhancedRelocCompleteReq_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.c b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.c
new file mode 100644
index 0000000..28ddc9a
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.c
@@ -0,0 +1,123 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, rAB_Parameters),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_Parameters,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-Parameters"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, userPlaneInformation),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UserPlaneInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"userPlaneInformation"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, transportLayerAddressRes1),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddressRes1"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, iuTransportAssociationRes1),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociationRes1"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, rab2beReleasedList),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ToBeReleasedList_EnhancedRelocCompleteRes,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rab2beReleasedList"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_oms_1[] = { 1, 3, 4, 5, 6 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rAB-Parameters */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* userPlaneInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* transportLayerAddressRes1 */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* iuTransportAssociationRes1 */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* rab2beReleasedList */
+    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes),
+	offsetof(struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tag2el_1,
+	7,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_oms_1,	/* Optional members */
+	5, 0,	/* Root/Additions */
+	6,	/* Start extensions */
+	8	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes = {
+	"RANAP_RAB-SetupItem-EnhancedRelocCompleteRes",
+	"RANAP_RAB-SetupItem-EnhancedRelocCompleteRes",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_1,
+	7,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.h b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.h
new file mode 100644
index 0000000..1da1d54
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-EnhancedRelocCompleteRes.h
@@ -0,0 +1,53 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_H_
+#define	_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_RAB-Parameters.h"
+#include "RANAP_UserPlaneInformation.h"
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_RAB-ToBeReleasedList-EnhancedRelocCompleteRes.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupItem-EnhancedRelocCompleteRes */
+typedef struct RANAP_RAB_SetupItem_EnhancedRelocCompleteRes {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_RAB_Parameters_t	*rAB_Parameters	/* OPTIONAL */;
+	RANAP_UserPlaneInformation_t	 userPlaneInformation;
+	RANAP_TransportLayerAddress_t	*transportLayerAddressRes1	/* OPTIONAL */;
+	RANAP_IuTransportAssociation_t	*iuTransportAssociationRes1	/* OPTIONAL */;
+	RANAP_RAB_ToBeReleasedList_EnhancedRelocCompleteRes_t	*rab2beReleasedList	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_EnhancedRelocCompleteRes;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupItem_EnhancedRelocCompleteRes_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupItem-RelocReq.c b/src/ranap/RANAP_RAB-SetupItem-RelocReq.c
new file mode 100644
index 0000000..d6d576b
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-RelocReq.c
@@ -0,0 +1,153 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupItem-RelocReq.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupItem_RelocReq_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_RelocReq, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_RelocReq, nAS_SynchronisationIndicator),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_NAS_SynchronisationIndicator,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"nAS-SynchronisationIndicator"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_RelocReq, rAB_Parameters),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_Parameters,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-Parameters"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_RelocReq, dataVolumeReportingIndication),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DataVolumeReportingIndication,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dataVolumeReportingIndication"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_RelocReq, pDP_TypeInformation),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_PDP_TypeInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"pDP-TypeInformation"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_RelocReq, userPlaneInformation),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UserPlaneInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"userPlaneInformation"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_RelocReq, transportLayerAddress),
+		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddress"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_RelocReq, iuTransportAssociation),
+		(ASN_TAG_CLASS_CONTEXT | (7 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociation"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_RelocReq, service_Handover),
+		(ASN_TAG_CLASS_CONTEXT | (8 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Service_Handover,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"service-Handover"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_RelocReq, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (9 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupItem_RelocReq_oms_1[] = { 1, 3, 4, 8, 9 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupItem_RelocReq_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupItem_RelocReq_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* nAS-SynchronisationIndicator */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rAB-Parameters */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* dataVolumeReportingIndication */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* pDP-TypeInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* userPlaneInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* transportLayerAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* iuTransportAssociation */
+    { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* service-Handover */
+    { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupItem_RelocReq_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupItem_RelocReq),
+	offsetof(struct RANAP_RAB_SetupItem_RelocReq, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupItem_RelocReq_tag2el_1,
+	10,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupItem_RelocReq_oms_1,	/* Optional members */
+	5, 0,	/* Root/Additions */
+	9,	/* Start extensions */
+	11	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_RelocReq = {
+	"RANAP_RAB-SetupItem-RelocReq",
+	"RANAP_RAB-SetupItem-RelocReq",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupItem_RelocReq_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReq_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReq_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupItem_RelocReq_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReq_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReq_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupItem_RelocReq_1,
+	10,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupItem_RelocReq_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupItem-RelocReq.h b/src/ranap/RANAP_RAB-SetupItem-RelocReq.h
new file mode 100644
index 0000000..0f6e5d5
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-RelocReq.h
@@ -0,0 +1,59 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupItem_RelocReq_H_
+#define	_RANAP_RAB_SetupItem_RelocReq_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_NAS-SynchronisationIndicator.h"
+#include "RANAP_RAB-Parameters.h"
+#include "RANAP_DataVolumeReportingIndication.h"
+#include "RANAP_PDP-TypeInformation.h"
+#include "RANAP_UserPlaneInformation.h"
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_Service-Handover.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupItem-RelocReq */
+typedef struct RANAP_RAB_SetupItem_RelocReq {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_NAS_SynchronisationIndicator_t	*nAS_SynchronisationIndicator	/* OPTIONAL */;
+	RANAP_RAB_Parameters_t	 rAB_Parameters;
+	RANAP_DataVolumeReportingIndication_t	*dataVolumeReportingIndication	/* OPTIONAL */;
+	RANAP_PDP_TypeInformation_t	*pDP_TypeInformation	/* OPTIONAL */;
+	RANAP_UserPlaneInformation_t	 userPlaneInformation;
+	RANAP_TransportLayerAddress_t	 transportLayerAddress;
+	RANAP_IuTransportAssociation_t	 iuTransportAssociation;
+	RANAP_Service_Handover_t	*service_Handover	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupItem_RelocReq_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_RelocReq;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupItem_RelocReq_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupItem-RelocReqAck.c b/src/ranap/RANAP_RAB-SetupItem-RelocReqAck.c
new file mode 100644
index 0000000..5f9a01a
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-RelocReqAck.c
@@ -0,0 +1,93 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupItem-RelocReqAck.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupItem_RelocReqAck_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupItem_RelocReqAck, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupItem_RelocReqAck, transportLayerAddress),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddress"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupItem_RelocReqAck, iuTransportAssociation),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociation"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupItem_RelocReqAck, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupItem_RelocReqAck_oms_1[] = { 1, 2, 3 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupItem_RelocReqAck_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupItem_RelocReqAck_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* transportLayerAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iuTransportAssociation */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupItem_RelocReqAck_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupItem_RelocReqAck),
+	offsetof(struct RANAP_RAB_SetupItem_RelocReqAck, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupItem_RelocReqAck_tag2el_1,
+	4,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupItem_RelocReqAck_oms_1,	/* Optional members */
+	3, 0,	/* Root/Additions */
+	3,	/* Start extensions */
+	5	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_RelocReqAck = {
+	"RANAP_RAB-SetupItem-RelocReqAck",
+	"RANAP_RAB-SetupItem-RelocReqAck",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupItem_RelocReqAck_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReqAck_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReqAck_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupItem_RelocReqAck_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReqAck_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupItem_RelocReqAck_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupItem_RelocReqAck_1,
+	4,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupItem_RelocReqAck_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupItem-RelocReqAck.h b/src/ranap/RANAP_RAB-SetupItem-RelocReqAck.h
new file mode 100644
index 0000000..650bf72
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupItem-RelocReqAck.h
@@ -0,0 +1,47 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupItem_RelocReqAck_H_
+#define	_RANAP_RAB_SetupItem_RelocReqAck_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupItem-RelocReqAck */
+typedef struct RANAP_RAB_SetupItem_RelocReqAck {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_TransportLayerAddress_t	*transportLayerAddress	/* OPTIONAL */;
+	RANAP_IuTransportAssociation_t	*iuTransportAssociation	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupItem_RelocReqAck_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupItem_RelocReqAck;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupItem_RelocReqAck_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupOrModifiedItem.c b/src/ranap/RANAP_RAB-SetupOrModifiedItem.c
new file mode 100644
index 0000000..8904ab9
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupOrModifiedItem.c
@@ -0,0 +1,103 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupOrModifiedItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupOrModifiedItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupOrModifiedItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_SetupOrModifiedItem, transportLayerAddress),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddress"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupOrModifiedItem, iuTransportAssociation),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociation"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupOrModifiedItem, dl_dataVolumes),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DataVolumeList,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-dataVolumes"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupOrModifiedItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupOrModifiedItem_oms_1[] = { 1, 2, 3, 4 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupOrModifiedItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupOrModifiedItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* transportLayerAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* iuTransportAssociation */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* dl-dataVolumes */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupOrModifiedItem_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupOrModifiedItem),
+	offsetof(struct RANAP_RAB_SetupOrModifiedItem, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupOrModifiedItem_tag2el_1,
+	5,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupOrModifiedItem_oms_1,	/* Optional members */
+	4, 0,	/* Root/Additions */
+	4,	/* Start extensions */
+	6	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupOrModifiedItem = {
+	"RANAP_RAB-SetupOrModifiedItem",
+	"RANAP_RAB-SetupOrModifiedItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupOrModifiedItem_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupOrModifiedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupOrModifiedItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupOrModifiedItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupOrModifiedItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupOrModifiedItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupOrModifiedItem_1,
+	5,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupOrModifiedItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupOrModifiedItem.h b/src/ranap/RANAP_RAB-SetupOrModifiedItem.h
new file mode 100644
index 0000000..faf2b17
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupOrModifiedItem.h
@@ -0,0 +1,49 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupOrModifiedItem_H_
+#define	_RANAP_RAB_SetupOrModifiedItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_DataVolumeList.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupOrModifiedItem */
+typedef struct RANAP_RAB_SetupOrModifiedItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_TransportLayerAddress_t	*transportLayerAddress	/* OPTIONAL */;
+	RANAP_IuTransportAssociation_t	*iuTransportAssociation	/* OPTIONAL */;
+	RANAP_DataVolumeList_t	*dl_dataVolumes	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupOrModifiedItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupOrModifiedItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupOrModifiedItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupOrModifyItemFirst.c b/src/ranap/RANAP_RAB-SetupOrModifyItemFirst.c
new file mode 100644
index 0000000..86d142f
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupOrModifyItemFirst.c
@@ -0,0 +1,123 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupOrModifyItemFirst.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupOrModifyItemFirst_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_POINTER, 6, offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, nAS_SynchronisationIndicator),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_NAS_SynchronisationIndicator,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"nAS-SynchronisationIndicator"
+		},
+	{ ATF_POINTER, 5, offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, rAB_Parameters),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_Parameters,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-Parameters"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, userPlaneInformation),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UserPlaneInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"userPlaneInformation"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, transportLayerInformation),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerInformation"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, service_Handover),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_Service_Handover,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"service-Handover"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupOrModifyItemFirst_oms_1[] = { 1, 2, 3, 4, 5, 6 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupOrModifyItemFirst_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupOrModifyItemFirst_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* nAS-SynchronisationIndicator */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* rAB-Parameters */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* userPlaneInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* transportLayerInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* service-Handover */
+    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupOrModifyItemFirst_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupOrModifyItemFirst),
+	offsetof(struct RANAP_RAB_SetupOrModifyItemFirst, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupOrModifyItemFirst_tag2el_1,
+	7,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupOrModifyItemFirst_oms_1,	/* Optional members */
+	6, 0,	/* Root/Additions */
+	6,	/* Start extensions */
+	8	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupOrModifyItemFirst = {
+	"RANAP_RAB-SetupOrModifyItemFirst",
+	"RANAP_RAB-SetupOrModifyItemFirst",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupOrModifyItemFirst_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemFirst_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemFirst_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupOrModifyItemFirst_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemFirst_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemFirst_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupOrModifyItemFirst_1,
+	7,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupOrModifyItemFirst_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupOrModifyItemFirst.h b/src/ranap/RANAP_RAB-SetupOrModifyItemFirst.h
new file mode 100644
index 0000000..10b63ef
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupOrModifyItemFirst.h
@@ -0,0 +1,53 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupOrModifyItemFirst_H_
+#define	_RANAP_RAB_SetupOrModifyItemFirst_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_NAS-SynchronisationIndicator.h"
+#include "RANAP_RAB-Parameters.h"
+#include "RANAP_UserPlaneInformation.h"
+#include "RANAP_TransportLayerInformation.h"
+#include "RANAP_Service-Handover.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupOrModifyItemFirst */
+typedef struct RANAP_RAB_SetupOrModifyItemFirst {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_NAS_SynchronisationIndicator_t	*nAS_SynchronisationIndicator	/* OPTIONAL */;
+	RANAP_RAB_Parameters_t	*rAB_Parameters	/* OPTIONAL */;
+	RANAP_UserPlaneInformation_t	*userPlaneInformation	/* OPTIONAL */;
+	RANAP_TransportLayerInformation_t	*transportLayerInformation	/* OPTIONAL */;
+	RANAP_Service_Handover_t	*service_Handover	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupOrModifyItemFirst_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupOrModifyItemFirst;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupOrModifyItemFirst_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-SetupOrModifyItemSecond.c b/src/ranap/RANAP_RAB-SetupOrModifyItemSecond.c
new file mode 100644
index 0000000..a85346e
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupOrModifyItemSecond.c
@@ -0,0 +1,123 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-SetupOrModifyItemSecond.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_SetupOrModifyItemSecond_1[] = {
+	{ ATF_POINTER, 7, offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, pDP_TypeInformation),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_PDP_TypeInformation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"pDP-TypeInformation"
+		},
+	{ ATF_POINTER, 6, offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, dataVolumeReportingIndication),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DataVolumeReportingIndication,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dataVolumeReportingIndication"
+		},
+	{ ATF_POINTER, 5, offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, dl_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 4, offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, ul_GTP_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_GTP_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ul-GTP-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 3, offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, dl_N_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_DL_N_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-N-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 2, offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, ul_N_PDU_SequenceNumber),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UL_N_PDU_SequenceNumber,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"ul-N-PDU-SequenceNumber"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_SetupOrModifyItemSecond_oms_1[] = { 0, 1, 2, 3, 4, 5, 6 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_SetupOrModifyItemSecond_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_SetupOrModifyItemSecond_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pDP-TypeInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dataVolumeReportingIndication */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* dl-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ul-GTP-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* dl-N-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* ul-N-PDU-SequenceNumber */
+    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_SetupOrModifyItemSecond_specs_1 = {
+	sizeof(struct RANAP_RAB_SetupOrModifyItemSecond),
+	offsetof(struct RANAP_RAB_SetupOrModifyItemSecond, _asn_ctx),
+	asn_MAP_RANAP_RAB_SetupOrModifyItemSecond_tag2el_1,
+	7,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_SetupOrModifyItemSecond_oms_1,	/* Optional members */
+	7, 0,	/* Root/Additions */
+	6,	/* Start extensions */
+	8	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupOrModifyItemSecond = {
+	"RANAP_RAB-SetupOrModifyItemSecond",
+	"RANAP_RAB-SetupOrModifyItemSecond",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_SetupOrModifyItemSecond_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemSecond_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemSecond_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_SetupOrModifyItemSecond_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemSecond_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_SetupOrModifyItemSecond_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_SetupOrModifyItemSecond_1,
+	7,	/* Elements count */
+	&asn_SPC_RANAP_RAB_SetupOrModifyItemSecond_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-SetupOrModifyItemSecond.h b/src/ranap/RANAP_RAB-SetupOrModifyItemSecond.h
new file mode 100644
index 0000000..a156092
--- /dev/null
+++ b/src/ranap/RANAP_RAB-SetupOrModifyItemSecond.h
@@ -0,0 +1,53 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_SetupOrModifyItemSecond_H_
+#define	_RANAP_RAB_SetupOrModifyItemSecond_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_PDP-TypeInformation.h"
+#include "RANAP_DataVolumeReportingIndication.h"
+#include "RANAP_DL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_UL-GTP-PDU-SequenceNumber.h"
+#include "RANAP_DL-N-PDU-SequenceNumber.h"
+#include "RANAP_UL-N-PDU-SequenceNumber.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-SetupOrModifyItemSecond */
+typedef struct RANAP_RAB_SetupOrModifyItemSecond {
+	RANAP_PDP_TypeInformation_t	*pDP_TypeInformation	/* OPTIONAL */;
+	RANAP_DataVolumeReportingIndication_t	*dataVolumeReportingIndication	/* OPTIONAL */;
+	RANAP_DL_GTP_PDU_SequenceNumber_t	*dl_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_GTP_PDU_SequenceNumber_t	*ul_GTP_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_DL_N_PDU_SequenceNumber_t	*dl_N_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_UL_N_PDU_SequenceNumber_t	*ul_N_PDU_SequenceNumber	/* OPTIONAL */;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_SetupOrModifyItemSecond_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_SetupOrModifyItemSecond;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_SetupOrModifyItemSecond_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.c b/src/ranap/RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.c
new file mode 100644
index 0000000..c09f6c0
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes, cause),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_specs_1 = {
+	sizeof(struct RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes),
+	offsetof(struct RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes, _asn_ctx),
+	asn_MAP_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes = {
+	"RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes",
+	"RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tags_1,
+	sizeof(asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tags_1)
+		/sizeof(asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.h b/src/ranap/RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.h
new file mode 100644
index 0000000..fa15532
--- /dev/null
+++ b/src/ranap/RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_H_
+#define	_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Cause.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RAB-ToBeReleasedItem-EnhancedRelocCompleteRes */
+typedef struct RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Cause_t	 cause;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RAB_ToBeReleasedItem_EnhancedRelocCompleteRes_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RABs-ContextFailedtoTransferItem.c b/src/ranap/RANAP_RABs-ContextFailedtoTransferItem.c
new file mode 100644
index 0000000..c2fdac2
--- /dev/null
+++ b/src/ranap/RANAP_RABs-ContextFailedtoTransferItem.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RABs-ContextFailedtoTransferItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RABs_ContextFailedtoTransferItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RABs_ContextFailedtoTransferItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RABs_ContextFailedtoTransferItem, cause),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RABs_ContextFailedtoTransferItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RABs_ContextFailedtoTransferItem_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RABs_ContextFailedtoTransferItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RABs_ContextFailedtoTransferItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RABs_ContextFailedtoTransferItem_specs_1 = {
+	sizeof(struct RANAP_RABs_ContextFailedtoTransferItem),
+	offsetof(struct RANAP_RABs_ContextFailedtoTransferItem, _asn_ctx),
+	asn_MAP_RANAP_RABs_ContextFailedtoTransferItem_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_RABs_ContextFailedtoTransferItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RABs_ContextFailedtoTransferItem = {
+	"RANAP_RABs-ContextFailedtoTransferItem",
+	"RANAP_RABs-ContextFailedtoTransferItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RABs_ContextFailedtoTransferItem_tags_1,
+	sizeof(asn_DEF_RANAP_RABs_ContextFailedtoTransferItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RABs_ContextFailedtoTransferItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RABs_ContextFailedtoTransferItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RABs_ContextFailedtoTransferItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RABs_ContextFailedtoTransferItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RABs_ContextFailedtoTransferItem_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_RABs_ContextFailedtoTransferItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RABs-ContextFailedtoTransferItem.h b/src/ranap/RANAP_RABs-ContextFailedtoTransferItem.h
new file mode 100644
index 0000000..509385b
--- /dev/null
+++ b/src/ranap/RANAP_RABs-ContextFailedtoTransferItem.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RABs_ContextFailedtoTransferItem_H_
+#define	_RANAP_RABs_ContextFailedtoTransferItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Cause.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RABs-ContextFailedtoTransferItem */
+typedef struct RANAP_RABs_ContextFailedtoTransferItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Cause_t	 cause;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RABs_ContextFailedtoTransferItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RABs_ContextFailedtoTransferItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RABs_ContextFailedtoTransferItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_RABs-failed-to-reportItem.c b/src/ranap/RANAP_RABs-failed-to-reportItem.c
new file mode 100644
index 0000000..3e949d4
--- /dev/null
+++ b/src/ranap/RANAP_RABs-failed-to-reportItem.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_RABs-failed-to-reportItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_RABs_failed_to_reportItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RABs_failed_to_reportItem, rAB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_RAB_ID,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"rAB-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_RABs_failed_to_reportItem, cause),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_RABs_failed_to_reportItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_RABs_failed_to_reportItem_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_RABs_failed_to_reportItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_RABs_failed_to_reportItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* rAB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_RABs_failed_to_reportItem_specs_1 = {
+	sizeof(struct RANAP_RABs_failed_to_reportItem),
+	offsetof(struct RANAP_RABs_failed_to_reportItem, _asn_ctx),
+	asn_MAP_RANAP_RABs_failed_to_reportItem_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_RABs_failed_to_reportItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_RABs_failed_to_reportItem = {
+	"RANAP_RABs-failed-to-reportItem",
+	"RANAP_RABs-failed-to-reportItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_RABs_failed_to_reportItem_tags_1,
+	sizeof(asn_DEF_RANAP_RABs_failed_to_reportItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RABs_failed_to_reportItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_RABs_failed_to_reportItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_RABs_failed_to_reportItem_tags_1)
+		/sizeof(asn_DEF_RANAP_RABs_failed_to_reportItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_RABs_failed_to_reportItem_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_RABs_failed_to_reportItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_RABs-failed-to-reportItem.h b/src/ranap/RANAP_RABs-failed-to-reportItem.h
new file mode 100644
index 0000000..cedd2fb
--- /dev/null
+++ b/src/ranap/RANAP_RABs-failed-to-reportItem.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_RABs_failed_to_reportItem_H_
+#define	_RANAP_RABs_failed_to_reportItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_RAB-ID.h"
+#include "RANAP_Cause.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_RABs-failed-to-reportItem */
+typedef struct RANAP_RABs_failed_to_reportItem {
+	RANAP_RAB_ID_t	 rAB_ID;
+	RANAP_Cause_t	 cause;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_RABs_failed_to_reportItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_RABs_failed_to_reportItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_RABs_failed_to_reportItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_ResetResourceAckItem.c b/src/ranap/RANAP_ResetResourceAckItem.c
new file mode 100644
index 0000000..978b7bf
--- /dev/null
+++ b/src/ranap/RANAP_ResetResourceAckItem.c
@@ -0,0 +1,73 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_ResetResourceAckItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_ResetResourceAckItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_ResetResourceAckItem, iuSigConId),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_IuSignallingConnectionIdentifier,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuSigConId"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_ResetResourceAckItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_ResetResourceAckItem_oms_1[] = { 1 };
+static const ber_tlv_tag_t asn_DEF_RANAP_ResetResourceAckItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_ResetResourceAckItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* iuSigConId */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_ResetResourceAckItem_specs_1 = {
+	sizeof(struct RANAP_ResetResourceAckItem),
+	offsetof(struct RANAP_ResetResourceAckItem, _asn_ctx),
+	asn_MAP_RANAP_ResetResourceAckItem_tag2el_1,
+	2,	/* Count of tags in the map */
+	asn_MAP_RANAP_ResetResourceAckItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	1,	/* Start extensions */
+	3	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_ResetResourceAckItem = {
+	"RANAP_ResetResourceAckItem",
+	"RANAP_ResetResourceAckItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_ResetResourceAckItem_tags_1,
+	sizeof(asn_DEF_RANAP_ResetResourceAckItem_tags_1)
+		/sizeof(asn_DEF_RANAP_ResetResourceAckItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_ResetResourceAckItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_ResetResourceAckItem_tags_1)
+		/sizeof(asn_DEF_RANAP_ResetResourceAckItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_ResetResourceAckItem_1,
+	2,	/* Elements count */
+	&asn_SPC_RANAP_ResetResourceAckItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_ResetResourceAckItem.h b/src/ranap/RANAP_ResetResourceAckItem.h
new file mode 100644
index 0000000..4e3b83d
--- /dev/null
+++ b/src/ranap/RANAP_ResetResourceAckItem.h
@@ -0,0 +1,43 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_ResetResourceAckItem_H_
+#define	_RANAP_ResetResourceAckItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_IuSignallingConnectionIdentifier.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_ResetResourceAckItem */
+typedef struct RANAP_ResetResourceAckItem {
+	RANAP_IuSignallingConnectionIdentifier_t	 iuSigConId;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_ResetResourceAckItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_ResetResourceAckItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_ResetResourceAckItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_ResetResourceItem.c b/src/ranap/RANAP_ResetResourceItem.c
new file mode 100644
index 0000000..f4036c9
--- /dev/null
+++ b/src/ranap/RANAP_ResetResourceItem.c
@@ -0,0 +1,73 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_ResetResourceItem.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_ResetResourceItem_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_ResetResourceItem, iuSigConId),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_IuSignallingConnectionIdentifier,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuSigConId"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_ResetResourceItem, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_ResetResourceItem_oms_1[] = { 1 };
+static const ber_tlv_tag_t asn_DEF_RANAP_ResetResourceItem_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_ResetResourceItem_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* iuSigConId */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_ResetResourceItem_specs_1 = {
+	sizeof(struct RANAP_ResetResourceItem),
+	offsetof(struct RANAP_ResetResourceItem, _asn_ctx),
+	asn_MAP_RANAP_ResetResourceItem_tag2el_1,
+	2,	/* Count of tags in the map */
+	asn_MAP_RANAP_ResetResourceItem_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	1,	/* Start extensions */
+	3	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_ResetResourceItem = {
+	"RANAP_ResetResourceItem",
+	"RANAP_ResetResourceItem",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_ResetResourceItem_tags_1,
+	sizeof(asn_DEF_RANAP_ResetResourceItem_tags_1)
+		/sizeof(asn_DEF_RANAP_ResetResourceItem_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_ResetResourceItem_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_ResetResourceItem_tags_1)
+		/sizeof(asn_DEF_RANAP_ResetResourceItem_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_ResetResourceItem_1,
+	2,	/* Elements count */
+	&asn_SPC_RANAP_ResetResourceItem_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_ResetResourceItem.h b/src/ranap/RANAP_ResetResourceItem.h
new file mode 100644
index 0000000..a1f44a5
--- /dev/null
+++ b/src/ranap/RANAP_ResetResourceItem.h
@@ -0,0 +1,43 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_ResetResourceItem_H_
+#define	_RANAP_ResetResourceItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_IuSignallingConnectionIdentifier.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_ResetResourceItem */
+typedef struct RANAP_ResetResourceItem {
+	RANAP_IuSignallingConnectionIdentifier_t	 iuSigConId;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_ResetResourceItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_ResetResourceItem;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_ResetResourceItem_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_TNLInformationEnhRelInfoReq.c b/src/ranap/RANAP_TNLInformationEnhRelInfoReq.c
new file mode 100644
index 0000000..cd1d6d3
--- /dev/null
+++ b/src/ranap/RANAP_TNLInformationEnhRelInfoReq.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_TNLInformationEnhRelInfoReq.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_TNLInformationEnhRelInfoReq_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_TNLInformationEnhRelInfoReq, transportLayerAddress),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddress"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_TNLInformationEnhRelInfoReq, iuTransportAssociation),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociation"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_TNLInformationEnhRelInfoReq, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_TNLInformationEnhRelInfoReq_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_TNLInformationEnhRelInfoReq_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_TNLInformationEnhRelInfoReq_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transportLayerAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* iuTransportAssociation */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_TNLInformationEnhRelInfoReq_specs_1 = {
+	sizeof(struct RANAP_TNLInformationEnhRelInfoReq),
+	offsetof(struct RANAP_TNLInformationEnhRelInfoReq, _asn_ctx),
+	asn_MAP_RANAP_TNLInformationEnhRelInfoReq_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_TNLInformationEnhRelInfoReq_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_TNLInformationEnhRelInfoReq = {
+	"RANAP_TNLInformationEnhRelInfoReq",
+	"RANAP_TNLInformationEnhRelInfoReq",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_TNLInformationEnhRelInfoReq_tags_1,
+	sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoReq_tags_1)
+		/sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoReq_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_TNLInformationEnhRelInfoReq_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoReq_tags_1)
+		/sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoReq_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_TNLInformationEnhRelInfoReq_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_TNLInformationEnhRelInfoReq_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_TNLInformationEnhRelInfoReq.h b/src/ranap/RANAP_TNLInformationEnhRelInfoReq.h
new file mode 100644
index 0000000..6ba405c
--- /dev/null
+++ b/src/ranap/RANAP_TNLInformationEnhRelInfoReq.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_TNLInformationEnhRelInfoReq_H_
+#define	_RANAP_TNLInformationEnhRelInfoReq_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_TNLInformationEnhRelInfoReq */
+typedef struct RANAP_TNLInformationEnhRelInfoReq {
+	RANAP_TransportLayerAddress_t	 transportLayerAddress;
+	RANAP_IuTransportAssociation_t	 iuTransportAssociation;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_TNLInformationEnhRelInfoReq_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_TNLInformationEnhRelInfoReq;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_TNLInformationEnhRelInfoReq_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_TNLInformationEnhRelInfoRes.c b/src/ranap/RANAP_TNLInformationEnhRelInfoRes.c
new file mode 100644
index 0000000..43ac268
--- /dev/null
+++ b/src/ranap/RANAP_TNLInformationEnhRelInfoRes.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_TNLInformationEnhRelInfoRes.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_TNLInformationEnhRelInfoRes_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_TNLInformationEnhRelInfoRes, dl_forwardingTransportLayerAddress),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-forwardingTransportLayerAddress"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_TNLInformationEnhRelInfoRes, dl_forwardingTransportAssociation),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"dl-forwardingTransportAssociation"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_TNLInformationEnhRelInfoRes, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_TNLInformationEnhRelInfoRes_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_TNLInformationEnhRelInfoRes_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_TNLInformationEnhRelInfoRes_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dl-forwardingTransportLayerAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* dl-forwardingTransportAssociation */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_TNLInformationEnhRelInfoRes_specs_1 = {
+	sizeof(struct RANAP_TNLInformationEnhRelInfoRes),
+	offsetof(struct RANAP_TNLInformationEnhRelInfoRes, _asn_ctx),
+	asn_MAP_RANAP_TNLInformationEnhRelInfoRes_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_TNLInformationEnhRelInfoRes_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_TNLInformationEnhRelInfoRes = {
+	"RANAP_TNLInformationEnhRelInfoRes",
+	"RANAP_TNLInformationEnhRelInfoRes",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_TNLInformationEnhRelInfoRes_tags_1,
+	sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoRes_tags_1)
+		/sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoRes_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_TNLInformationEnhRelInfoRes_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoRes_tags_1)
+		/sizeof(asn_DEF_RANAP_TNLInformationEnhRelInfoRes_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_TNLInformationEnhRelInfoRes_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_TNLInformationEnhRelInfoRes_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_TNLInformationEnhRelInfoRes.h b/src/ranap/RANAP_TNLInformationEnhRelInfoRes.h
new file mode 100644
index 0000000..bef5bdd
--- /dev/null
+++ b/src/ranap/RANAP_TNLInformationEnhRelInfoRes.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_TNLInformationEnhRelInfoRes_H_
+#define	_RANAP_TNLInformationEnhRelInfoRes_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_TNLInformationEnhRelInfoRes */
+typedef struct RANAP_TNLInformationEnhRelInfoRes {
+	RANAP_TransportLayerAddress_t	 dl_forwardingTransportLayerAddress;
+	RANAP_IuTransportAssociation_t	 dl_forwardingTransportAssociation;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_TNLInformationEnhRelInfoRes_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_TNLInformationEnhRelInfoRes;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_TNLInformationEnhRelInfoRes_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_TransportLayerInformation.c b/src/ranap/RANAP_TransportLayerInformation.c
new file mode 100644
index 0000000..76ce3ee
--- /dev/null
+++ b/src/ranap/RANAP_TransportLayerInformation.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_TransportLayerInformation.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_TransportLayerInformation_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_TransportLayerInformation, transportLayerAddress),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TransportLayerAddress,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"transportLayerAddress"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_TransportLayerInformation, iuTransportAssociation),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_IuTransportAssociation,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iuTransportAssociation"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_TransportLayerInformation, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_TransportLayerInformation_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_TransportLayerInformation_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_TransportLayerInformation_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transportLayerAddress */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* iuTransportAssociation */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_TransportLayerInformation_specs_1 = {
+	sizeof(struct RANAP_TransportLayerInformation),
+	offsetof(struct RANAP_TransportLayerInformation, _asn_ctx),
+	asn_MAP_RANAP_TransportLayerInformation_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_TransportLayerInformation_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_TransportLayerInformation = {
+	"RANAP_TransportLayerInformation",
+	"RANAP_TransportLayerInformation",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_TransportLayerInformation_tags_1,
+	sizeof(asn_DEF_RANAP_TransportLayerInformation_tags_1)
+		/sizeof(asn_DEF_RANAP_TransportLayerInformation_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_TransportLayerInformation_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_TransportLayerInformation_tags_1)
+		/sizeof(asn_DEF_RANAP_TransportLayerInformation_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_TransportLayerInformation_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_TransportLayerInformation_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_TransportLayerInformation.h b/src/ranap/RANAP_TransportLayerInformation.h
new file mode 100644
index 0000000..ba50e2c
--- /dev/null
+++ b/src/ranap/RANAP_TransportLayerInformation.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_TransportLayerInformation_H_
+#define	_RANAP_TransportLayerInformation_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_TransportLayerAddress.h"
+#include "RANAP_IuTransportAssociation.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_TransportLayerInformation */
+typedef struct RANAP_TransportLayerInformation {
+	RANAP_TransportLayerAddress_t	 transportLayerAddress;
+	RANAP_IuTransportAssociation_t	 iuTransportAssociation;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_TransportLayerInformation_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_TransportLayerInformation;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_TransportLayerInformation_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_UnsuccessfulLinking-IEs.c b/src/ranap/RANAP_UnsuccessfulLinking-IEs.c
new file mode 100644
index 0000000..673b33c
--- /dev/null
+++ b/src/ranap/RANAP_UnsuccessfulLinking-IEs.c
@@ -0,0 +1,135 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_UnsuccessfulLinking-IEs.h"
+
+static asn_per_constraints_t asn_PER_type_RANAP_UnsuccessfulLinking_IEs_constr_1 GCC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 7,  7,  1l,  128l }	/* (SIZE(1..128)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_Member_2[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct Member, tMGI),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_TMGI,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"tMGI"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct Member, cause),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_RANAP_Cause,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"cause"
+		},
+	{ ATF_POINTER, 1, offsetof(struct Member, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_Member_oms_2[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tMGI */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cause */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
+	sizeof(struct Member),
+	offsetof(struct Member, _asn_ctx),
+	asn_MAP_Member_tag2el_2,
+	3,	/* Count of tags in the map */
+	asn_MAP_Member_oms_2,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_Member_2 = {
+	"SEQUENCE",
+	"SEQUENCE",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_Member_tags_2,
+	sizeof(asn_DEF_Member_tags_2)
+		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
+	asn_DEF_Member_tags_2,	/* Same as above */
+	sizeof(asn_DEF_Member_tags_2)
+		/sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_Member_2,
+	3,	/* Elements count */
+	&asn_SPC_Member_specs_2	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_RANAP_UnsuccessfulLinking_IEs_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_Member_2,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANAP_UnsuccessfulLinking_IEs_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_RANAP_UnsuccessfulLinking_IEs_specs_1 = {
+	sizeof(struct RANAP_UnsuccessfulLinking_IEs),
+	offsetof(struct RANAP_UnsuccessfulLinking_IEs, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_UnsuccessfulLinking_IEs = {
+	"RANAP_UnsuccessfulLinking-IEs",
+	"RANAP_UnsuccessfulLinking-IEs",
+	SEQUENCE_OF_free,
+	SEQUENCE_OF_print,
+	SEQUENCE_OF_constraint,
+	SEQUENCE_OF_decode_ber,
+	SEQUENCE_OF_encode_der,
+	SEQUENCE_OF_decode_xer,
+	SEQUENCE_OF_encode_xer,
+	SEQUENCE_OF_decode_uper,
+	SEQUENCE_OF_encode_uper,
+	SEQUENCE_OF_decode_aper,
+	SEQUENCE_OF_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_UnsuccessfulLinking_IEs_tags_1,
+	sizeof(asn_DEF_RANAP_UnsuccessfulLinking_IEs_tags_1)
+		/sizeof(asn_DEF_RANAP_UnsuccessfulLinking_IEs_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_UnsuccessfulLinking_IEs_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_UnsuccessfulLinking_IEs_tags_1)
+		/sizeof(asn_DEF_RANAP_UnsuccessfulLinking_IEs_tags_1[0]), /* 1 */
+	&asn_PER_type_RANAP_UnsuccessfulLinking_IEs_constr_1,
+	asn_MBR_RANAP_UnsuccessfulLinking_IEs_1,
+	1,	/* Single element */
+	&asn_SPC_RANAP_UnsuccessfulLinking_IEs_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_UnsuccessfulLinking-IEs.h b/src/ranap/RANAP_UnsuccessfulLinking-IEs.h
new file mode 100644
index 0000000..cd54d67
--- /dev/null
+++ b/src/ranap/RANAP_UnsuccessfulLinking-IEs.h
@@ -0,0 +1,52 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_UnsuccessfulLinking_IEs_H_
+#define	_RANAP_UnsuccessfulLinking_IEs_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include <asn_SEQUENCE_OF.h>
+#include "RANAP_TMGI.h"
+#include "RANAP_Cause.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+#include <constr_SEQUENCE_OF.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_UnsuccessfulLinking-IEs */
+typedef struct RANAP_UnsuccessfulLinking_IEs {
+	A_SEQUENCE_OF(struct Member {
+		RANAP_TMGI_t	 tMGI;
+		RANAP_Cause_t	 cause;
+		RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+		/*
+		 * This type is extensible,
+		 * possible extensions are below.
+		 */
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} ) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_UnsuccessfulLinking_IEs_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_UnsuccessfulLinking_IEs;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_UnsuccessfulLinking_IEs_H_ */
+#include <asn_internal.h>
diff --git a/src/ranap/RANAP_UserPlaneInformation.c b/src/ranap/RANAP_UserPlaneInformation.c
new file mode 100644
index 0000000..aed30a7
--- /dev/null
+++ b/src/ranap/RANAP_UserPlaneInformation.c
@@ -0,0 +1,83 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#include "RANAP_UserPlaneInformation.h"
+
+static asn_TYPE_member_t asn_MBR_RANAP_UserPlaneInformation_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_UserPlaneInformation, userPlaneMode),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UserPlaneMode,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"userPlaneMode"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANAP_UserPlaneInformation, uP_ModeVersions),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_UP_ModeVersions,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"uP-ModeVersions"
+		},
+	{ ATF_POINTER, 1, offsetof(struct RANAP_UserPlaneInformation, iE_Extensions),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANAP_ProtocolExtensionContainer,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		"iE-Extensions"
+		},
+};
+static const int asn_MAP_RANAP_UserPlaneInformation_oms_1[] = { 2 };
+static const ber_tlv_tag_t asn_DEF_RANAP_UserPlaneInformation_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANAP_UserPlaneInformation_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* userPlaneMode */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* uP-ModeVersions */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RANAP_UserPlaneInformation_specs_1 = {
+	sizeof(struct RANAP_UserPlaneInformation),
+	offsetof(struct RANAP_UserPlaneInformation, _asn_ctx),
+	asn_MAP_RANAP_UserPlaneInformation_tag2el_1,
+	3,	/* Count of tags in the map */
+	asn_MAP_RANAP_UserPlaneInformation_oms_1,	/* Optional members */
+	1, 0,	/* Root/Additions */
+	2,	/* Start extensions */
+	4	/* Stop extensions */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_UserPlaneInformation = {
+	"RANAP_UserPlaneInformation",
+	"RANAP_UserPlaneInformation",
+	SEQUENCE_free,
+	SEQUENCE_print,
+	SEQUENCE_constraint,
+	SEQUENCE_decode_ber,
+	SEQUENCE_encode_der,
+	SEQUENCE_decode_xer,
+	SEQUENCE_encode_xer,
+	SEQUENCE_decode_uper,
+	SEQUENCE_encode_uper,
+	SEQUENCE_decode_aper,
+	SEQUENCE_encode_aper,
+	0,	/* Use generic outmost tag fetcher */
+	asn_DEF_RANAP_UserPlaneInformation_tags_1,
+	sizeof(asn_DEF_RANAP_UserPlaneInformation_tags_1)
+		/sizeof(asn_DEF_RANAP_UserPlaneInformation_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_UserPlaneInformation_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_UserPlaneInformation_tags_1)
+		/sizeof(asn_DEF_RANAP_UserPlaneInformation_tags_1[0]), /* 1 */
+	0,	/* No PER visible constraints */
+	asn_MBR_RANAP_UserPlaneInformation_1,
+	3,	/* Elements count */
+	&asn_SPC_RANAP_UserPlaneInformation_specs_1	/* Additional specs */
+};
+
diff --git a/src/ranap/RANAP_UserPlaneInformation.h b/src/ranap/RANAP_UserPlaneInformation.h
new file mode 100644
index 0000000..3ecafd5
--- /dev/null
+++ b/src/ranap/RANAP_UserPlaneInformation.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-PDU"
+ * 	found in "../../asn1/ranap/RANAP-PDU.asn"
+ */
+
+#ifndef	_RANAP_UserPlaneInformation_H_
+#define	_RANAP_UserPlaneInformation_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "RANAP_UserPlaneMode.h"
+#include "RANAP_UP-ModeVersions.h"
+#include "RANAP_ProtocolExtensionContainer.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RANAP_UserPlaneInformation */
+typedef struct RANAP_UserPlaneInformation {
+	RANAP_UserPlaneMode_t	 userPlaneMode;
+	RANAP_UP_ModeVersions_t	 uP_ModeVersions;
+	RANAP_ProtocolExtensionContainer_t	*iE_Extensions	/* OPTIONAL */;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RANAP_UserPlaneInformation_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RANAP_UserPlaneInformation;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RANAP_UserPlaneInformation_H_ */
+#include <asn_internal.h>