diff --git a/src/ranap/RANAP_NewRAListofIdleModeUEs.c b/src/ranap/RANAP_NewRAListofIdleModeUEs.c
new file mode 100644
index 0000000..ff9ebed
--- /dev/null
+++ b/src/ranap/RANAP_NewRAListofIdleModeUEs.c
@@ -0,0 +1,59 @@
+/*
+ * Generated by asn1c-0.9.28 (http://lionet.info/asn1c)
+ * From ASN.1 module "RANAP-IEs"
+ * 	found in "../../asn1/ranap/RANAP-IEs.asn"
+ */
+
+#include "RANAP_NewRAListofIdleModeUEs.h"
+
+static asn_per_constraints_t asn_PER_type_RANAP_NewRAListofIdleModeUEs_constr_1 GCC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 16, -1,  1l,  65536l }	/* (SIZE(1..65536)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_RANAP_NewRAListofIdleModeUEs_1[] = {
+	{ ATF_POINTER, 0, 0,
+		-1 /* Ambiguous tag (CHOICE?) */,
+		0,
+		&asn_DEF_RANAP_RAC,
+		0,	/* Defer constraints checking to the member type */
+		0,	/* No PER visible constraints */
+		0,
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANAP_NewRAListofIdleModeUEs_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_RANAP_NewRAListofIdleModeUEs_specs_1 = {
+	sizeof(struct RANAP_NewRAListofIdleModeUEs),
+	offsetof(struct RANAP_NewRAListofIdleModeUEs, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_RANAP_NewRAListofIdleModeUEs = {
+	"RANAP_NewRAListofIdleModeUEs",
+	"RANAP_NewRAListofIdleModeUEs",
+	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_NewRAListofIdleModeUEs_tags_1,
+	sizeof(asn_DEF_RANAP_NewRAListofIdleModeUEs_tags_1)
+		/sizeof(asn_DEF_RANAP_NewRAListofIdleModeUEs_tags_1[0]), /* 1 */
+	asn_DEF_RANAP_NewRAListofIdleModeUEs_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RANAP_NewRAListofIdleModeUEs_tags_1)
+		/sizeof(asn_DEF_RANAP_NewRAListofIdleModeUEs_tags_1[0]), /* 1 */
+	&asn_PER_type_RANAP_NewRAListofIdleModeUEs_constr_1,
+	asn_MBR_RANAP_NewRAListofIdleModeUEs_1,
+	1,	/* Single element */
+	&asn_SPC_RANAP_NewRAListofIdleModeUEs_specs_1	/* Additional specs */
+};
+
